Wpisy woolfik na mikroblogu

    woolfik

    To uczucie kiedy próbujesz w pythona, a ten cię męczy, że brak ci kompilatora C++ na kompie:

    screenshot-20241116121645.png

    Załącznik 0
    woolfik

    Z cyklu #AbsurdyKorpo

    Dawno nie było ale dzisiaj mi mózg rozpi..ło więc się z wami tym podzielę.

    Firma, w której pracuję prowadzi równolegle wiele projektów, a co za tym idzie pozatrudniali mnóstwo nowych osób. Jako, że pracuję tam już sporo czasu to poproszono mnie o udział w projekcie z dwoma nowymi developerami aby przez jakiś czas ich nadzorować. Sęk w tym, że projekt bardzo duży ilość wiedzy dla kogoś nowego ogromna zatem część ustaleń (np architektonicznych) omówiłem bezpośrednio z PM'em oraz architektem zanim tych nowych ludzi pozatrudniali.

    Abyście lepiej zrozumieli poziom absurdu opowiem wam też nieco o procesie wydawniczym, który z takich czy innych przyczyn nie jest dobry ale jest to pewien kompromis między potrzebami biznesu i git flow, który chcielibyśmy mieć. Mianowicie dev robią zmiany na środowisku DEV, jak są gotowi idą z tą zmianą na środowisko TEST1. Tam znęca się nad tym zespół QA. Następnie jak QA klepnie idziemy na TEST2 i tam znęca się nad tym biznes i dopiero jak biznes klepnie, że jest ok to idziemy na prod. Każde środowisko TEST1, TEST2 oraz PROD ma odwzorowanie w GIT tak aby kody z GIT pokrywały się z bazą. No i dochodzimy do sedna problemu. Nowy projekt to nowy biznes, który z przyczyn niezależnych od nas nie ma dostępu do TEST2 i mieć nie będzie. Zatem jakaś mądra głowa wymyśliła kolejne środowisko TEST3. Zupełnie niezależne od wszystkiego z dostępem dla nowego biznesu. Środowisko z pełnymi testami E2E. No dobra ale jak to wpiąć w normalny nasz proces wydawniczy aby sobie kodów potem na prod nie nadpisywać?

    Ustaliłem z PM'em i architektem, że Ci 2 nowi developerzy będą developować na tym środowisku TEST3. Jak im biznes potwierdzi, że działa poprawnie to te zmiany dev przeniosą na nasze normalne środowiska czyli DEV (tylko dla formalności), TEST1 (do testów QA) oraz TEST2 ale tu już biznes nic nie robi bo mamy potwierdzenie na TEST3 i idziemy na PROD. Nie jest idealnie ale tak jak wspomniałem wcześniej nie da się inaczej kompromis nigdy nikogo nie zadowala w pełni.

    Po mniej więcej pół roku to środowisko TEST3 w końcu powstało. Ja się z projektu już urwałem bo były inne pilniejsze tematy, a dziś na spotkaniu zespołowym (wszyscy developerzy PL/SQL z całego zespołu) mówią nam, że od teraz po testach na TEST2 mamy te zmiany z TEST2 (nie związane z powyższym projektem) wgrywać też na TEST3 tak aby na TEST3 były wszystkie zmiany i pokrywało się to z prodem. No to pierwsze 15 min wytykałem im dziury w tym podejściu, że jeden projekt będzie musiał czekać na drugi, że retesty, że rozjazd kodów, że brak nawet repo pod TEST3 i gdy w końcu się już wystarczająco "wyżyłem" pytam kto to tak spier...lił? No i odzywa się mój kierownik, że przecież było spotkanie i było ustalone. No to pytam kto był na tym spotkaniu i dostaję listę:

    • Dyrektor całego działu IT
    • 5 kierowników: z zespołu IT (mój kierownik), z zespołu QA (kierownik testerów), kierownik PM'ów, kierownik działu JAVA (wtf), kierownik działu systemu księgowo - płacowego - żaden nie ma bladego pojęcia jak działa proces wydawniczy od a do z
    • 2 developerów od .NET z zupełnie innego niepowiązanego systemu
    • 3 javowieców
    • i tylko 2 oracle developerów ale TYLKO tych 2 nowych, których w dodatku w tym dniu nie było w pracy więc nie byli na spotkaniu.

    I tak o to 11 osób bez absolutnie ŻADNEJ wiedzy na temat procesu przyszło i wymyśliło nowy proces nowe flow i jeszcze nas poinformować zapomnieli. Serio rozglądam się czy gdzieś jakaś kamera nie wisi i ktoś nie ciśnie ze mnie beki w jakiejś ukrytej kamerze

    slsy

    ma odwzorowanie w GIT tak aby kody z GIT pokrywały się z bazą.

    Nie potrafię sobie wyobrazić czemu tak to działa i jaki problem to rozwiązuje, ale to chyba klucz do tego problemu

    kelog

    Padły terminy pl/sql i oracle, więc zakładam, że w gicie trzymany jest kod jakichś procedur bazodanowych.

    woolfik
    andrzejlisek

    @superdurszlak: Wygląda na to, że sama gra to zaledwie ok. 10k, na początku myślałem, że bufor ekranu jest zrobiony na tradycyjnej pamięci, a procesor kwantowy po prostu emituje obraz, ale oczywiście mogę się mylić. Skoro jest, jak jest, to starszy Wolf3D, czy jeszcze prostsza gra, jaką jest np. Mario Bros lub Tetris będzie podobnie wymagająca, o ile zrealizowana w podobnej rozdzielczości.

    andrzejlisek

    Zupełnie przez przypadek trafiłem na to , ktoś zrobił wersję tej gry w trybie tekstowym. Jak dobrze liczę, jeden znak to 16 bitów, bo 8 bitów na znak, 4 bity pierwszego kolory i 4 bity drugiego koloru. W czasie, gdy rozdzielczość 320x200x1 wymaga 64k bitów, rozdzielczość 40x25x16 wymaga tylko 16k bitów. A jak się ograniczy zestaw znaków i kolorów, to jeszcze mniej. Ciekawe, jaki komputer kwantowy jest potrzebny, żeby uruchomić wersję Doom z tego filmiku.

    woolfik

    Witajcie,

    Czasami wrzucam tu na bloga #AbsurdyKorpo ale dzisiaj moje spostrzeżenie podyktowane nowym doświadczeniem. Mianowicie nie należę do ludzi, którzy często zmieniają pracę. Jestem dość wybredny jeśli chodzi o pracodawcę ale wynika to głównie z mojej wiedzy, doświadczenia i sporej ilości ofert na rynku w moim zakresie umiejętności. Ponadto jak już rzucam papierem to nagle pieniądze się znajdują, warunki daje się zmienić i przeważnie w danej firmie siedzę po > 5lat. Natomiast jak już wspominałem mam ciepłą posadkę w korpo gdzie jest... jak to w korpo... natomiast poproszono mnie o pomoc w innej firmie. Tu musiałem otworzyć już działalność i miała to być tylko kilkumiesięczna współpraca w konkretnym projekcie dla zewnętrzengo klienta. Praca indywidualna prosta i przyjemna choć czasochłonna żadnych PM'ów, anali czy choćby innych developerów. Bezpośredni kontakt z technicznym ziomkiem od klienta, testy automatyczne, docker, gradle zintegrowane z gitlabem wszystko gotowe wystarczyło kody do repo wrzucać. Po prostu marzenie kontakt międzyludzki zminimalizowany do absolutnego minimum czyli dla introwertyka jak ja ideał. Projekt robiłem głównie po godzinach i w weekendy ale klienta interesował efekt, a nie godziny pracy więc robota niemal idealna (trochę był problem z czasem bo ziomki siedziały w Australii więc różnica czasu spora). Projekt się udał klient był zadowolony, robota skończona, a firma wniebowzięta ... no i tak mnie podeszli ($$$), że sam nie wiem kiedy ale zgodziłem się na pomoc w innym projekcie.

    No i tu się zaczęło komplikować. Po pierwsze trafiłem już do projektu kręconego od kilku ładnych lat, zespół kilkanaście osób. Cała struktura scrumowa niby hurtownia danych (pewnie na samym początku tak było) ale teraz to już potężny rozproszony system z terabajtami danych. Kilka ładnych tygodni mi zajęło pokapowanie się co i jak się tu dzieje. Dostałem tylko jeden moduł pod opiekę i byłem tylko ja i analityczka w tym temacie także pierwsze kilka miesięcy mimo mojego zdziwienia co do niektórych elementów udawało się to kręcić do przodu. Do czasu aż główny developer poszedł na 3 tygodnie urlopu i musiałem przejąć jego obowiązki na ten czas. Te obowiązki to głównie reanimowanie produkcji 😐 no i się zaczęło... szczegółów wam tu nie będę opisywał bo musiałbym z tydzień opisu robić ale w kodzie i strukturze bazy były / są tak absurdalne błędy, że to się w pale nie mieści.

    No i dochodzimy do wątpliwej przyjemności nabycia nowego doświadczenia, a mianowicie pierwszy raz trafiłem do zespołu gdzie ludzie bezpośrednio nade mną mają dużo mniejszą wiedzę techniczną ale wyznaczają kierunki. Nie trafiają do nich żadne argumenty bo są przyzwyczajeni do tego co jest i żaden nowy nie będzie im tu nic zmieniał. Ci na równi ze mną (stanowisko) mimo, iż przyznają mi rację to są na etapie quiet quitting więc się nie odzywają i robią to co im się każe tworząc totalnie bezrefleksyjnie kod. PM i PO nastawieni są tylko na zysk więc o żadnym refactorze nie może być mowy bo klient za to nie zapłaci i tylko nowe featury.

    Podsumowując:
    Nie do końca wiem jak się w tej sytuacji zachować. Z jednej strony chciałoby się zawalczyć aby tego potwora postawić na nogi bo potencjał jest, z drugiej strony jeśli o wszystko mam się bić i tłumaczyć np architektowi jak działa optymalizator SQL to mi się chyba nie chce. Normalnie bym takiej firmy nie wybrał ale sęk w tym, że osoba, która mnie rekrutowała czyli mój bezpośredni przełożony to bardzo bardzo dobry programista z ogromną wiedzą. Niestety on jest w innym projekcie, a ja początkowo też byłem w innym. Powolutku dochodzę do wniosku, że trzeba skończyć to co zacząłem i grzecznie się pożegnać bo szkoda życia na takie projekty.

    woolfik
    woolfik

    Na tyle bagniste, że czuję się jak shrek :D ma swoje plusy i minusy natomiast minusów nie ma, aż tylu abym się zwalniał. Poza tym posiadając JDG i pracując na UoP odpada mi część kosztów związanych z JDG także przechodzić nie mam zamiaru tym bardziej patrząc w którym kierunku to zmierza. Dokończę projekt i spróbuję albo przejść do innego projektu albo po prostu odpuszczę i poszukam czegoś innego.

    marian pazdzioch
    marian pazdzioch

    zaczynało się ciekawie ale potem już jest nieciekawie - co masz zrobić? nic, przecież jesteś tam devem, robisz co masz robić i morda w kubeł, jak się nie podoba to a) kopiesz się z koniem (czy warto za te $$$?) albo b) odchodzisz bo nie warto za te $$$

    woolfik

    Z cyklu #delphi

    Dzisiaj dostałem info, że Delphi 12.2 jest już gotowe. Będzie webinar więc jak ktoś jest zainteresowany to zapraszam:
    https://register.gotowebinar.com/register/111554692095880031?source=news_ticker

    itou123

    @Drunky:
    Odpowiadając na test:
    "To może dla testu zadaj to swoje pytanie jakiemuś AI i zobacz co odpowie, w jaki sposób, jakim stylem, na czym się skupił, czy jest to odpowiedź ogólnikowa, czy będzie to jednak tak szczegółowa odpowiedź jak moja."

    Wypowiedź ChatGPT 4o:

    • Delphi to środowisko programistyczne oparte na języku Object Pascal, które umożliwia szybkie tworzenie aplikacji desktopowych, mobilnych i webowych, szczególnie dla systemów Windows.
      Tworzenie aplikacji ERP (np. Comarch ERP XL w Polsce)
      Aplikacje CRM do zarządzania relacjami z klientami
      Programy księgowe (np. Insert GT)
      Oprogramowanie medyczne (np. systemy HIS dla szpitali)
      Systemy POS dla sieci handlowych i restauracji (np. niektóre aplikacje Sodexo)
      Narzędzia do zarządzania magazynami i logistyką
      Systemy do obsługi rezerwacji hoteli i linii lotniczych
      Aplikacje dla instytucji finansowych, np. banki (mBank miał niektóre systemy w Delphi)
      Oprogramowanie dla ubezpieczeń
      Programy do zarządzania flotą pojazdów
      Narzędzia do analizy danych finansowych
      Aplikacje edukacyjne dla szkół i uczelni
      Systemy do zarządzania produkcją i monitorowania procesów przemysłowych
      Oprogramowanie do zarządzania nieruchomościami
      Aplikacje do fakturowania i prowadzenia działalności gospodarczej
      Systemy zarządzania serwisem technicznym i naprawami
      Oprogramowanie dla sektora energetycznego (np. narzędzia do zarządzania sieciami)
      Programy do automatyzacji produkcji (np. w przemyśle spożywczym)
      Narzędzia wspierające obsługę klienta (np. systemy helpdesk)
      Tworzenie customowych narzędzi do monitorowania i analizy danych w korporacjach
      Delphi ciągle żyje, szczególnie tam, gdzie firmy mają rozbudowane, starsze systemy, które działają jak złoto i nikt nie chce ich przepisywać od nowa!"

    Prompty:

    • "Czym jest Delphi (w konteksćie programowania, napisz w jednym zdaniu)? Jakie ma zastosowanie komeryjne (wymień 15-20 zastosowań, każde w osobnej linii)?
      Napisz to tak, jakby to użytkownik forum programistycznego pisał taki komentarz odpowiadając na czyjeś pytanie, czyli w miarę luźno, możesz w niektórych przykładach podać prawdziwe nazwy firm"
    • "Napisz to luźniej"

    Jeśli sam to napisałeś to spoko i dobrze, że wnosisz wkład w forum. Moją wypowiedź potraktuj po prostu jako test generowania komentarzy przez ChatGPT.

    Drunky

    @itou123
    Spoko - dziękuję za test generowania komentarzy w ChatGPT. Fajnie, że Ci się chciało z tym eksperymentować.
    Co do odpowiedzi jaką uzyskałeś i wkleiłeś, to wypisał sporo zastosowań.

    Co do nazw konkretnych firm (czyli klientów), to ja w mojej odpowiedzi ich nie podawałem i bym ich nie podawał na publicznym forum, bo to są jakby nie było dane poufne i tajemnica firmy.

    Z ciekawości też przeprowadziłem taki test i na przeklejone bezpośrednio pytanie @WhiteLightning, ChatGPT odpowiadał bardziej ogólnie, z laniem wody, formatowaniem, listowaniem itp.

    Odnośnie podejrzenia @WhiteLightning, jakoby to nie była moja wypowiedź, tylko napisana przez AI, to mnie zdziwiło. Zacząłem się zastanawiać: po co ktoś, zakładając, że sam nie znałby prawidłowej odpowiedzi na pytanie, miałby chcieć się wypowiadać w danym temacie i pytać o to np. ChatGPT i potem przeklejać to na forum programistycznym jako swoją odpowiedź? Przecież ChatGPT nie jest ani rzetelnym, ani wiarogodnym źródłem wiedzy i często ma tzw. "halucynacje" i zmyśla coś, co mu się wydaje. Oczywiście, może się zdarzyć, że poda prawdziwe informacje, jednak często podaje nieprawdziwe lub mieszane (częściowo prawdziwe + halucynacje). Zatem przeklejanie odpowiedzi z ChatGPT byłoby niezbyt sensowne i dosyć ryzykowne w kwestii dalszej dyskusji (gdyby coś z przeklejonych informacji okazało się nieprawdą).

    woolfik

    Z cyklu #AbsurdyKorpo

    Rozmowa na chat między mną i nowym kolegą:

    • Łukasz, 10:01
      oooo fajne rzeczy mi piszesz na ogólnym
      a są gdzieś takie rzeczy spisane? Tak dla potomnych?
      chętnie dodałbym ewentualnie to co napisałeś do jakiej sensownej wiki, by się trzymać wytycznych

    • Ty, 10:03
      niestety u nas jak w czasach kamienia łupanego historie i mądrości przekazywane są przez starszyznę dla potomnych słownie 😀

    • Łukasz, 10:04
      to jest piękne, dzięki temu to i jest tak jak kiedyś
      przeżywamy historię w czasach smartfonów xD

    • Ty, 10:04
      coś w ten deseń 😛

    • Ty, 10:08,
      ma to też swoje minusy np:

    Sytuacja dzieje się w klasztorze, młody mnich zaraz po seminarium wchodzi do opactwa i pyta opata:
    * Opacie co wy tu cały dzień robicie? Czym się zajmujecie?
    * No młody bracie przepisujemy głównie stare księgi, które już się rozsypują tak aby zostało dla potomnych
    * Ale jak to tak ręcznie linijka po linijce strona po stronie?
    * No tak
    * No ale przecież możecie się pomylić? 
    * Nie bo robimy to bardzo dokładnie i skrupulatnie
    * Nie wierzę na bank się gdzieś pomyliliście
    * No dobrze młody niedowiarku przyniosę Ci nasz najstarszy wolumen z przed 1000 lat i zobaczysz, że zasady spisane wtedy są identyczne jak aktualnie
    Poszedł nie ma go godzinę, dwie w końcu młody zszedł na dół do katakumb, a tam stary opat siedzi nad bardzo starą księgą i płacze
    * Opacie dlaczego płaczecie?
    * Widzisz bo tu jest napisane: "żyj w celi bracie" 😀
    

    A jak pomyślę ile takiej wiedzy przepadło z ludźmi, którzy się pozwalniali w ostatnim czasie to wolę nawet nie myśleć 😛

    Miang
    Miang

    zapomniałeś wspomnieć co było w nowej księdze

    Aktywność

    5 pkt za Ocena postu
    2024-12-27 21:21

    CREATE TABLE Wlasciciel (Name nvarchar(32)); INSERT INTO Wlasciciel VALUES ('Arek');...

    5 pkt za Ocena postu
    2024-12-27 12:53

    CREATE TABLE Wlasciciel (Name nvarchar(32)); INSERT INTO Wlasciciel VALUES ('Arek');...

    5 pkt za Ocena postu
    2024-12-27 12:35

    CREATE TABLE Wlasciciel (Name nvarchar(32)); INSERT INTO Wlasciciel VALUES ('Arek');...

    5 pkt za Ocena postu
    2024-12-27 12:10

    Natomiast jak miałbym Ci coś podpowiedzieć i chciałabyś coś bardziej "fancy' to prop...

    5 pkt za Ocena postu
    2024-12-27 11:55

    CREATE TABLE Wlasciciel (Name nvarchar(32)); INSERT INTO Wlasciciel VALUES ('Arek');...

    5 pkt za Ocena postu
    2024-12-18 14:54

    Dobra moi drodzy rozsiądźcie się wygodnie bo będzie jazda bez trzymanki. Kilka mc te...

    5 pkt za Ocena postu
    2024-11-30 16:19

    W GetIt jest gotowy moduł do tego jakby coś

    5 pkt za Ocena postu
    2024-11-30 10:14

    W GetIt jest gotowy moduł do tego jakby coś

    5 pkt za Ocena postu
    2024-11-22 06:32

    AssignFile(We,Src,CP_UTF8); AssignFile(Wy,Dest,CP_UTF8);

    5 pkt za Ocena postu
    2024-11-22 02:06

    AssignFile(We,Src,CP_UTF8); AssignFile(Wy,Dest,CP_UTF8);

    Historia reputacji

    8824 punkty

    Uprawnienia

    • 1
      użycie chińskich znaków w tekście
    • 10
      używanie wspomnień użytkowników
    • 50
      oddawanie głosów na wpisy innych
    • 50
      publikacja URL do strony WWW w profilu
    • 50
      dodanie URL do strony WWW w sygnaturze na forum
    • 300
      dodawanie nowych tagów
    • 1000
      publikacja wątków z krótkim tytułem
    • 10000
      brak reklam banerowych oraz na mikroblogu
    • 10000
      edycja własnych postów do 1 miesiąca od daty napisania

    Sprawdź czym są punkty reputacji i jak możesz je zdobyć