Wpis z mikrobloga

Pozwolę sobie zacytować cały wpis Mirka @Senex bo wydaje mi się, ze trafia w punkt.
......
: UX to jedno, ale nie wiem kto tam jest release managerem (tak, jest taka funkcja), ale sposób uruchomienia to po prostu kpina ze sztuki.

Pomijam wielogodzinne okienko serwisowe. No dobra - chłopaki chcieli przyoszczędzić na zasobach. Ok. Łapię. Ale.

Pewne rzeczy da się osiągnąć bezkosztowo. Poważnie. I nie robi się tego obecnie tylko w bankach (a nawet tam się to robi lepiej i to pomimo tego, że też mają okienka serwisowe, ale tam to na ogół z reguły z powodu potężnej infrastruktury "legacy").

Podpowiadam:
- Komunikujesz nadchodzącą zmianę (np. "Dnia XX.YY.ZZZ wprowadzamy nową wersję")
- Udostępniasz developerom aplikacji trzecich stron nowe API (lub informujesz ich, że ich aplikacje przestaną działać)
- Jeżeli chcesz przyoszczędzić na testach to uruchamiasz coś co się zowie "canary release" - https://blog.getambassador.io/cloud-native-patterns-canary-release-1cb8f82d371a. A są nawet i książki opisujące strategie wejścia na produkcję (A/B, canary, blue-green). To nie jest "wiedza tajemna". To co odwalił wypok to amatorka za wpisy do CV
- Jeżeli jesteś pewien zmian (bo podobno, że przez 3 lata je testowałeś) i chcesz je wprowadzić to je... komunikujesz. Powaga. Coś w stylu: "Dnia XX.YY.ZZZ wprowadzamy zmianę - możecie się spodziewać następujących zmian: ... i tu wymieniasz ..."

Pomijając to, że ni #!$%@? nie wierzę, w 3 lata testów. Kuźwa - w 3 lata to można postawić serwis od kompletnego zera, a nie testować.

Wg mnie to to co zaszło:
- Wypok dostał kasę z dotacji więc zatrudnił "skończoną ilość stażystów" do zrobienia nowego wypoka
- Chłopaki wzięli dump bazy danych ze starego wypoka, podnieśli na nowej bazie i zaczęli developerkę. Dość swobodną, bez specjalnych wytycznych od klienta, z bardzo ogólnymi "wskazówkami" zrobionymi na zasadzie "zróbcie coś, a jak nam się nie spodoba to wam powiemy". Czyli najgorszy model współpracy.
- Wyszli z z panalinusowego paradygmatu: "jeżeli się kompiluje to jest dobrze, jeżeli się nie wywala zaraz po uruchomieniu to sukces"
- Sądzę, że nie było zespołu próbującego "pracować" na nowym wypoku. Testy jednostkowe i e2e? Może. Testy przeprowadzone przez "użytkowników" - ni #!$%@? - nie uwierzę. Nie wierzę, że ktokolwiek nawet próbował tego używać. Podejrzewam, że panel administracyjny/moderatorski to dopiero musi być rozpierdziel obecnie. Ktoś stwierdził, że nie ma sensu poświęcić jednego moderatora na moderowanie pogaduszek developerów na nowym portalu.
- Dnia X zatrzymano serwis, zrzucono bazę, wczytano na nową instancję, przekierowano load balancery i jechane. I mamy to co mamy.

Za tym, że mam rację przemawia obecne zachowanie się "Wykop Mobilny". Wcześniej po prostu się nie łączył. Obecnie się łączy, lecz pokazuje stan serwisu sprzed migracji.

Panie od rogali - robi się to tak, że stawiasz nowy release (szczególnie tak znaczący) OBOK starego. Najprościej jest zrobić "canary" poprzez np. zrobienie wpisu w DNS "www.wykop2.pl" i zachęcać ludzi do używania i zgłaszania uwag (nie wiem - paczka rogali wysyłana raz na miesiąc za największą ilość wyłapanych błędów?).

Jeżeli ilość zgłoszeń spadnie do poziomu "a tam jęczą, że przyciski im się nie podobają" to zamykasz oryginalny serwis, a ruch do wykop2 staje się obowiązkowy.

Jeżeli nowy wykop wymaga zmigrowania bazy danych to ją najpierw migrujesz - czyli - stary frontend i nowy backend.

A to co zostało zrobione wygląda jak konieczność rozliczenia dotacji (bo tam są daty do kiedy ma coś zostać wdrożone).

I, pardon my french, ale zostało to po prostu koncertowo #!$%@?.

W IT pracuję ponad 20 lat. Brałem udział w około 10 "major releases". I nawet nie wiem w ilu małych. W bankach, w firmach ubezpieczeniowych, w usługach rządowych (nie tylko polskich) w komórkach, a nawet w jednym ogólnopolskim portalu (który nie cieszy się na wypoku szczególną estymą). Sądzę, że coś tam na ten temat wiem. Ludzie na wygląd zawsze jojczyli. To nie jest problem. Problemem jest zachowanie ciągłości. A to tutaj po prostu #!$%@?.
#moderacja #moderacjacontent #wykop #wykop20 #nowywykop @wykop @m__b #zalesie #afera #oswiadczenie
  • 8
Zastanawiam się, po co ludzie piszą takie wysrywy - żeby pochwalić się podstawową wiedzą z IT? I jeszcze to "Podpowiadam". XDD No na pewno Białek przeczyta post jakiegoś randoma o canary release i będzie jak w tym gifie. Release został totalnie spartolony, ale zawsze beka z typów, dla których jest to pretekst do połechtania ego i wypisywania jakichś oczywistości, bo od lat pracują w IT, więc muszą o tym wspomnieć.
@Iwasawa: Skoro zostałem wywołany to odpiszę. Piszę takie wysrywy bo jestem stary i zamiast kręcić jakieś laski na imprezie, co by zaliczyć, siedzę na wykopie.

Dokładnie tak samo jak Ty.

Tylko Ty, najprawdopodobniej, nie jesteś tak stary jak ja. ( ʖ̯)

To może napiszesz dlaczego komentujesz na wykopie w nocy z piątku na sobotę zamiast roztaczać swój nimb ogólnej zajebistości na jakiejś imprezie?
Jeżeli nowy wykop wymaga zmigrowania bazy danych to ją najpierw migrujesz - czyli - stary frontend i nowy backend.


@Aguirre_gniew_brzozy: a co jeżeli to było wszystko monolitem? Z 15 latami długu technologicznego (czytaj php przemielony z htmlem i zapytaniam sql), bez dokumentacji, bez typowania, z mało komercyjnym budżetem? Bo ja takie robiłem i sobie nie wyobrażam robić front do starego backendu, gdy alternatywą jest 2-3 godziny downtime. Banki też mają downtime.
@ujdzie: pewnie tak było, szczególnie biorąc pod uwagę podawany oficjalnie wiek tego kodu (10+ lat).
Tylko wtedy buduje się infrastrukturę do odświeżania portalu strona po stronie.
Mimo wszystko nie zdecydowałbym się na tak drastyczną zmianę bez A/B testów. Można było zacząć z całkowicie nowym kodem, ale UI zbliżonym do poprzedniej edycji. Tutaj z dnia na dzień całkowicie zmieniło się doświadczenie użytkowników, a to nigdy nie kończy się dobrze