Story pointy - bezsens i robienie przedszkola

Story pointy - bezsens i robienie przedszkola

Wątek przeniesiony 2024-01-26 23:49 z Kariera przez flowCRANE.

Miang
  • Rejestracja:prawie 7 lat
  • Ostatnio:minuta
  • Postów:1659
1

o takie rzeczy powinni pytać analitycy i architekci na początku, przed rozpoczęciem pracy, bo od tego zależy np. wybór bazy danych, Klient nie musi wiedzieć że powinien to powiedzieć, oni powinni wiedzieć że muszą zapytać. No ale jak decyzje podejmuje mityczny zepół, juniorów po bootkampie. Widziałam przy pracy ludzi którzy zbierali założenia z poważnej w miarę firmy, z SAS, i dopiero po pół roku zrozumiałam że mieli rację w pewnych przypadkach gdy upierali się że data zmiany zapisu rekordu w bazie musibyć im też przekazana


dzisiaj programiści uwielbiają przepisywać kod z jednego języka do drugiego, tylko po to by z projektem nadal stać w miejscu ale na nowej technologii
piotrpo
  • Rejestracja:ponad 7 lat
  • Ostatnio:4 dni
  • Postów:3277
3
brzezmac napisał(a):

Czytam z zapartym tchem ten wątek, bo nie dalej jak w piątek (dwa dni temu) rozmawiałem z człowiekiem z biznesu, który nic nie rozumie z tych story pointów. Jest właścicielem firmy budowlanej (sporej), potrafi wydać pieniądze na IT/systemy, tyle że mówi że wyceniają mu w tych story pointach, później mówią, że story point kosztuje XXX USD. Tylko, że ma problem z tym, że coś zrobili, myślał, że dostał wycenę za zrobienie całego procesu, a otrzymał jakiś półfunkcjonalny kawałek softu i informację, że dokończenie tego wszystkiego to kolejnych ileś story points i kolejna kasa.

Story pointy to miara, która obowiązuje wyłącznie wewnątrz zespołu. Jak ktoś rozmawia z klientem / biznesem nie-IT używając tej miary, to popełnia błąd.

I ja wiem, że zaraz się dowiem, że chv**wo dostawca robi itd. Ale ten człowiek ma prosty temat - chce wiedzieć, że dostanie obsługę pełnego procesu + informację ile to kosztuje i na kiedy.

I taką informację powinien dostać od biznesu dostawcy, a nie od zespołu deweloperskiego. Jak widzisz budowę autostrady, to idziesz do operatora walca pytać "na kiedy będzie", czy raczej do zarządu firmy, która to robi? Operator walca ma jedynie odpowiedzieć zarządowi, że te 100m to do fajrantu wywalcuje na błysk, chyba, ze mu asfaltu nie dowiozą. Na pytanie o całość projektu odpowie "uuu kierowniku, to jeszcze zejdzie w p...du". To zarząd przed inwestorem odpowiada za to kiedy będzie i za ile, bo to zarząd podpisał umowę.

Dla mnie "ruch no estimates" to jest jakieś podejście zdejmujące odpowiedzialność z osoby, która ma robić robotę. Rozumiem, że jest to wygodne, powoduje niższy stres, ale podejście, że na pytanie kiedy będzie za każdym razem odpowiadamy - "będzie kiedy będzie" jest dla mnie nieprzekonujące i na maksa trudne w komunikacji ze światem zewnętrznym (poza zespołem developerskim).

Bo świat zewnętrzny albo jest agile i rozumie takie podejście, albo co częstsze nie jest i wtedy "biznes" ma to oszacować, ocenić ryzyko i dowalić taką marżę, żeby nie stracić.

Dajmy na to, ten właściciel zapytany przez inwestora na kiedy będzie wyremontowany ten budynek jakby odpowiedział tak jak mu developerzy odpowiadają, to go wyjebią z tej budowy od jutra, albo lepiej - wjadą kary umowne i realizacja zastępcza na koszt developerów.

A ten właściciel, to lata z łopatą, czy jednak bierze na siebie ryzyko podpisania umowy z konkretną datą, za konkretną kasę?

Story Pointsy to mam wrażenie coś, co sprawia, że znowu "trudno dogadać się z programistami", a po drugie jest narzędziem komunikacji dosyć hermetycznym, elementem żargonu, ergo nie jest wg. mnie DOBRYM narzędziem komunikacji ze światem poza zespołem developerskim (wewnętrznie jeśli wszyscy rozumieją jak działa i PO CO ono jest to cytując wieszcza "jak się kochają to *uj z nimi").

SP's nie są dobrym narzędziem do komunikacji z deweloperami. One kompletnie nie powinny być wykorzystywane w tym celu. Nikt nie powinien (by the book) kazać deweloperom używać SP. To zespół (czyli te kilka osób przy klawiaturach) może sobie w ten sposób ułatwiać pracę.

No i analogia z budownictwem jest mocno naciągana. Budując dom dokładnie wiesz co masz zbudować, bo powstał za grubą kasę projekt specyfikujący jak ten dom ma wyglądać, gdzie są przyłącza, jakich materiałów, w którym miejscu użyć, masz specyfikację tych materiałów i wiesz, że beton w fundamentach musi poleżeć w spokoju przez 2 tygodnie zanim pójdziesz dalej, Na podstawie tego projektu, możesz zbudować terminarz prac, upewnić się, że masz kim te prace wykonać i masz prawie całkowitą pewność, że ten projekt nie zostanie zmieniony. Jeżeli będzia jakaś potrzeba zmiany, to będzie ona dotyczyła innych kafelków w łazience, a nie tego, że com trzeba obrócić o 90 stopni.

Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
2
Miang napisał(a):

o takie rzeczy powinni pytać analitycy i architekci na początku, przed rozpoczęciem pracy, bo od tego zależy np. wybór bazy danych, Klient nie musi wiedzieć że powinien to powiedzieć, oni powinni wiedzieć że muszą zapytać.

Po pierwsze - na pewno nie powinni wybierać bazy danych na początku projektu. Początek projektu to jest czas kiedy wiesz najmniej, więc to nie jest mądre żeby na początku podjąć tak istotną decyzję.

Po drugie - Klient nie musi wiedzieć że powinien to powiedzieć klient też nie wie czego chce, klienci są bardzo słabi w precyzowaniu tego co chcą. Jedyne co klient może zrobić, to zobaczyć wersję aplikacji i powiedzieć czy mu się podoba czy nie.

Po trzecie - oni powinni wiedzieć że muszą zapytać. taki proces wytwarzania oprogramowania po prostu jest droższy i dużo wolniejszy.

edytowany 1x, ostatnio: Riddle
Miang
  • Rejestracja:prawie 7 lat
  • Ostatnio:minuta
  • Postów:1659
0
Riddle napisał(a):
Miang napisał(a):

o takie rzeczy powinni pytać analitycy i architekci na początku, przed rozpoczęciem pracy, bo od tego zależy np. wybór bazy danych, Klient nie musi wiedzieć że powinien to powiedzieć, oni powinni wiedzieć że muszą zapytać.

no ale dlaczego to na mongo tak wolno działa ;)


dzisiaj programiści uwielbiają przepisywać kod z jednego języka do drugiego, tylko po to by z projektem nadal stać w miejscu ale na nowej technologii
BR
  • Rejestracja:ponad 6 lat
  • Ostatnio:4 miesiące
  • Postów:50
4

@Riddle nie kupuję argumentu, że budowanie domu to za każdym razem to samo, a budowanie softu to za każdym razem co innego. To nie jest tak, że na jednym projekcie budujesz drugiego netflixa, na drugim obsługę pasu bagażowego, na trzecim system workflow w telco, a na czwartym oprogramowanie wahadłowca. Większość z nas robi te apki biznesowe, która mają sekwencje formularzy, jakieś integracje (których koncepcyjnie jest skończona ilość), bazę danych. Jeśli wszystko za każdym razem jest inne, to jaka jest korzyść z frameworków, które w sposób dosyć "zopiniowany" (dogmatyczny?? - szukam odpowiednika "opinionated") dają zestaw domyślnych rozwiązań, które mają przyspieszyć dostarczanie systemów?

Odnośnie tez tego co w ramach projektu należy budować (wymagania), to bujamy się już trochę z tym zagadnieniem i jest to osobne wątek (inżynieria wymagań), który jest jakoś rozpracowany. Na poziomie procesu jest już parę koncepcji jak podchodzić do kolejnych projektów tworzenia oprogramowania. Nie rozumiem więc, dlaczego całe agile'owe środowisko stara się to wszystko wyrzucić do śmieci i budować narrację, jakby każdy kolejny projekt to było odkrycie na miarę stworzenia internetu.

Z mojego doświadczenia najlepiej sprawdzało się - setup projektu zgodnie z metodyką sztywniejszą (waterfall, v-model, pmp), który pozwala też biznesowi się zastanowić co chce zrobić i dać też jakieś ramy, w których się poruszamy. Sama realizacja to już jak najbardziej agileowo, bo dynamika na projekcie jest taka, że jeden zespół już by chciał integrację robić, a drugi jeszcze jej nie dostarczył, albo implementujemy obsługę generowania PDFów, ale słabo z zakresem pól do szablonu, itd. .... A na tym etapie, to już z grubsza wiemy w czym się musimy zmieścić (budżet).


Prowadzenie firmy, zarządzanie, programowanie, randomowe narzekanie, wiele melanży, dwie dekady w branży - dzielę się tym co jeszcze pamiętam: https://brzezmac.io
Miang
w każdym jest nowa ekipa świeżaków zaraz po bootkampie wiec dlatego dla nich to nowości ;)
arczinosek
Było już powiedziane wcześniej - analogia do budowania domów jest słaba / nieprawidłowa. To jak bardzo różne są to procesy w zasadzie nie ma znaczenia, dlatego nie ma znaczenia jak bardzo budowanie dwóch takich samych domów się różni. W Agile jest trochę jak w TDD - metoda małych kroków.
marian pazdzioch
  • Rejestracja:ponad 6 lat
  • Ostatnio:13 minut
  • Postów:719
0
brzezmac napisał(a):

rozmawiałem z człowiekiem z biznesu, który nic nie rozumie z tych story pointów. Jest właścicielem firmy budowlanej (sporej), potrafi wydać pieniądze na IT/systemy

Hm, ale co człowiek od biznesu, a niedajbosz właściciel firmy, robi w piwnicy z ludźmi rozmawiającymi storypointami?

Te dwa światy się przecież nie powinny spotykać.

A na serio to jakie systemy firma budowlana chce mieć takie customowe że aż zleca pisanie softu od zera. Nie ma czegoś gotowego?

BR
  • Rejestracja:ponad 6 lat
  • Ostatnio:4 miesiące
  • Postów:50
0

@piotrpo "masz prawie całkowitą pewność" - taką samą jak w projekcie developerskim. I w jednym i w drugim pojawiają się zmiany, którymi trzeba zarządzać. I w jednym i w drugim pojawiają się wyzwania (jak się wkopałeś w ziemię i coś jest nie tak jak planowałeś, to musisz przeplanować cały proces), czasami sypie się łańcuch dostaw (w budowlance materiały, w software inny zespół, od którego zależysz nie dowiózł), etc.
W podejściu, które opisujesz odpowiada tylko "biznes", "zarząd", etc. - a ci co fizycznie robotę robią to nie odpowiadają za nic?

I taką informację powinien dostać od biznesu dostawcy, a nie od zespołu deweloperskiego.

Tutaj ewidentnie developerzy są biznesem. Ale to jest kwestia umiejętności komunikacji, a nie biznesu, czy niebiznesu.


Prowadzenie firmy, zarządzanie, programowanie, randomowe narzekanie, wiele melanży, dwie dekady w branży - dzielę się tym co jeszcze pamiętam: https://brzezmac.io
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
1
brzezmac napisał(a):

@Riddle nie kupuję argumentu, że budowanie domu to za każdym razem to samo, a budowanie softu to za każdym razem co innego. To nie jest tak, że na jednym projekcie budujesz drugiego netflixa, na drugim obsługę pasu bagażowego, na trzecim system workflow w telco, a na czwartym oprogramowanie wahadłowca. Większość z nas robi te apki biznesowe, która mają sekwencje formularzy, jakieś integracje (których koncepcyjnie jest skończona ilość), bazę danych. Jeśli wszystko za każdym razem jest inne, to jaka jest korzyść z frameworków, które w sposób dosyć "zopiniowany" (dogmatyczny?? - szukam odpowiednika "opinionated") dają zestaw domyślnych rozwiązań, które mają przyspieszyć dostarczanie systemów?

Odnośnie tez tego co w ramach projektu należy budować (wymagania), to bujamy się już trochę z tym zagadnieniem i jest to osobne wątek (inżynieria wymagań), który jest jakoś rozpracowany. Na poziomie procesu jest już parę koncepcji jak podchodzić do kolejnych projektów tworzenia oprogramowania. Nie rozumiem więc, dlaczego całe agile'owe środowisko stara się to wszystko wyrzucić do śmieci i budować narrację, jakby każdy kolejny projekt to było odkrycie na miarę stworzenia internetu.

Z mojego doświadczenia najlepiej sprawdzało się - setup projektu zgodnie z metodyką sztywniejszą (waterfall, v-model, pmp), który pozwala też biznesowi się zastanowić co chce zrobić i dać też jakieś ramy, w których się poruszamy. Sama realizacja to już jak najbardziej agileowo, bo dynamika na projekcie jest taka, że jeden zespół już by chciał integrację robić, a drugi jeszcze jej nie dostarczył, albo implementujemy obsługę generowania PDFów, ale słabo z zakresem pól do szablonu, itd. .... A na tym etapie, to już z grubsza wiemy w czym się musimy zmieścić (budżet).

Okej, może się za bardzo pospieszyłem z tym "budowanie domu to jest zawsze to samo".

Ale jest prawdą, że stawianie kolejnych domów wymaga większej produkcji (chcesz postawić 2x więcej domów == 2x więcej pracy). W programowaniu tego nie ma. Raz wytworzone oprogramowanie można kopiować do woli. Z tego powodu w budownictwie domów siłą rzeczy jest powtarzalność, której w programowaniu nie ma.

Powiedziałbym, że budowlaniec z 20 letnim doświadczeniem, jest w stanie lepiej przewidzieć ile zajmie budowanie domu, niż programista z 20 letnim doświadczeniem przewidzi ile zajmie napisanie oprogramowania. I nie wynika to z niewiedzy, tylko z natury pracy jaką wykonują. Moim zdaniem zbudowanie domu posiada mniejszą ilość zmiennych czynników niż programowanie. Dlatego estymacja czasu oprogramowania jest bardzo niemiarodajna, i nie warto na niej polegać.

Dlatego uważam że budowanie domów nie jest dobrą analogią do wytwarzania oprogramowania. To co działa w budownictwie, nie koniecznie musi zadziałać w softwarze.

edytowany 2x, ostatnio: Riddle
arczinosek
Nie pamiętam już gdzie, ale gdzieś czytałem, że lepszą analogią jest uprawianie ogrodu :)
DM
  • Rejestracja:ponad 4 lata
  • Ostatnio:około godziny
  • Postów:220
2

Jak zrobisz estimate w dniach, to nijak nie wepchną więcej do sprintu.

A tak ogólnie co jest złego w estymacji w koszulkach, potem w story pointach a potem definiowanie długości sprintu w dniach? To wszystko ma głęboki sens.

KamilAdam
Wyjaśnisz ten sens? bo nie wiem czy to sarkazm czy nie XD
KamilAdam
Jak sarkazm to masz plusa
DM
Nie kolekcjonuje, ale dzięki xD
ledi12
  • Rejestracja:ponad 5 lat
  • Ostatnio:23 dni
  • Lokalizacja:Wrocław
1

Wracając do estymatów czasowych to powiem tak. Jeśli w projekcie estymuje się w dniach / godzinach itp i estymacja nadal jest tylko estymacją a nie realnym terminem dowiezienia, to nadal jest to akceptowalne. Trochę to co mówi @Riddle - Albo 30h przeciągnie się na 50h albo skróci do 10h.

Dla developera nie robi to żadnej różnicy.


Robię http response status cody w martwych ciągach
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
2
ledi12 napisał(a):

Wracając do estymatów czasowych to powiem tak. Jeśli w projekcie estymuje się w dniach / godzinach itp i estymacja nadal jest tylko estymacją a nie realnym terminem dowiezienia, to nadal jest to akceptowalne. Trochę to co mówi @Riddle - Albo 30h przeciągnie się na 50h albo skróci do 10h.

Dla developera nie robi to żadnej różnicy.

Myślę że trafiłeś w sedno. Czyli "estymacje to estymacje", ale biznesy traktują je jak obietnice. Wymagają pewności tam gdzie jej nie ma.

ledi12
  • Rejestracja:ponad 5 lat
  • Ostatnio:23 dni
  • Lokalizacja:Wrocław
2

I tutaj wszystko tak na prawdę zależy od warstwy pośredniej pomiędzy developerami a biznesem, czyli TL, PM, PO itp. Jeśli odciąża zespół z takich konfrontacji i bierze na klatę rozmowy z biznesem i faktycznie pozwala na taką kolej rzeczy (normalną), że estymata to tylko estymata, to już połowa sukcesu. Z tego co zauważyłem, najczęściej takie coś można spotkać w firmach produktowych. Z doświadczenia wiem, że takie środowiska bardziej stawiają na jakość niż ilość i faktycznie estymata to tylko pewna orientacja i nikt nie traktuje tego jako termin dowozu. Ale wiadomo, firma firmie nie równa.


Robię http response status cody w martwych ciągach
Miang
bo w produktowych częściej jednak w kierownictwie są osoby chociaż trochę techniczne
WeiXiao
  • Rejestracja:około 9 lat
  • Ostatnio:około 21 godzin
  • Postów:5108
1

@Riddle

Druga rozbieżność to to, że taki budowlaniec budował pewnie podobne domy w przeszłości, więc wie ile poszczególne elementy mogą zacząć. Programiści którzy piszą oprogramowanie dla niego, za pewne pierwszy raz piszą taką aplikację.

Już kolejny raz piszę post że imo to są brednie.

Chyba że raz pracujesz w web devie, innym razem klepiesz kompilator, innym robisz patcha do linóxa, a jeszcze innym piszesz firmware do GPU.

Ale jeżeli nawalasz od 5 lat cały czas tą webówkę i miałeś ekspozycje na różne tech i architektury, no to chyba nie powinno być to cały czas czyms nowym, lol.

Zostaje jeszcze złożoność biznesowa/domenowa, i tutaj trzeba usiąść, włożyć dużo wysiłku w analizę i zrozumienie tego co chce klient.
Nie twierdzę że da się to idealnie wyestymować, ale sugerowanie że za każdym razem robi się coś innego, a więc nie idzie estymować to przesada.

Ale jest prawdą, że stawianie kolejnych domów wymaga większej produkcji (chcesz postawić 2x więcej domów == 2x więcej pracy). W programowaniu tego nie ma. Raz wytworzone oprogramowanie można kopiować do woli. Z tego powodu w budownictwie domów siłą rzeczy jest powtarzalność, której w programowaniu nie ma.

A 2x więcej featuresów? no bo przecież każdy dom jest inny (może mniej przy hurtowym budowaniu).

edytowany 10x, ostatnio: WeiXiao
piotrpo
  • Rejestracja:ponad 7 lat
  • Ostatnio:4 dni
  • Postów:3277
2
brzezmac napisał(a):

@piotrpo "masz prawie całkowitą pewność" - taką samą jak w projekcie developerskim.

O jakim projekcie mówimy, takim za 10l, 100k, bańkę, czy takim za 100 baniek? Jeżeli robiłeś 10 sklepów internetowych, przychodzi klient i chce 11, to dokładnie wiesz czego użyjesz, jak użyjesz, ile to będzie trwało, na jakiej infrastrukturze to postawisz i ile to będzie wymagało pracy. Jak przychodzi klient i chce czegoś poważniejszego, to musisz to zaprojektować, rozpisać funkcje, pomyśleć o środowiskach dev, test, prod, CI/CD, na jakich systemach to ma chodzić, jakie przeglądarki / urządzenia obsługiwać, jak sobie poradzić ze skalą projektu, ochroną danych, security, testami, monitoringiem, alarmingiem, wsparciem użytkownika, rodo, backupach, wymaganej dostępności. Później rozpisać to na zadania deweloperskie, tak, żeby dawało się je oszacować, czyli w przypadku jakiegokolwiek UI, potrzebujesz designów. Ktoś musi jeszcze ten projekt zweryfikować. Mogą pojawić się rzeczy o których nie masz pojęcia i trzeba to pojęcie zdobyć. Czasami wystarczy poczytać, czasami trzeba się upewnić jakimś PoC.
Wtedy możesz zaprosić zespoły dev. na dyskusję o estymatach.

Całość kosztuje w cholerę kasy i czasu i dopiero wtedy teoretycznie możesz iść do klienta z ofertą. Problem w tym, że on może mieć już całkiem sporą część systemu dostarczoną przez innego dostawcę, który oszacował zgrubnie wartość projektu, dorzucił 20% marży i zaczął robić, przy okazji zdobywając informację o tym, czego klient naprawdę potrzebuje.

Tutaj ewidentnie developerzy są biznesem. Ale to jest kwestia umiejętności komunikacji, a nie biznesu, czy niebiznesu.

To popełniają błąd komunikując się z klientem za pomocą mistycznych SP, których klient nie rozumie, bo nawet programiści tego nie rozumieją.

Miang
to nie tak działa, współpracujesz z klientem zbierając juz te założenia, masz jakąś wstępną umowę. Cfaniaczek co niby zaczął robić projekt na pałę w połowie projektu zrezygnuje i zostawić klienta z niedokończonym szajsem o który się będzie w sądach wykłócać potem
piotrpo
@Miang: Na co masz tę wstępną umowę? Że klient się zgodzi na cenę jaką mu zaproponujesz?
somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Wrocław
0
Althorion napisał(a):

To była połowa zaproponowanej alternatywy. Drugą było, że skoro nie ma potrzeby, żeby velocity było stałe, to nie musimy tracić czasu na estymację. Wszędzie wpiszmy to samo, albo w ogóle zróbmy losowo z góry na dół. Jaka oszczędność czasu!

Ale oszczędność czasu na czym? Zadania są różnej wielkości i trudności, kogo w ten sposób się oszuka? Samych siebie?

Z tego, że mnie rozliczają w pracy. Nie mogę sobie robić jednego taska do końca roku — bo bym zaniżał velocity. A jakbym mógł mieć takie velocity, jakie mi się podoba, to mógłbym nie robić z goła nic.

Wydawało mi się, że dyskutujemy o estymowaniu zadań, nie o silent quittingu.

Co, gdzie, jak?

Zadałeś pytanie z tezą, więc ja też. Że to głupie, to nie moja wina. ;-]

A po co mają to zrozumieć zawczasu? Co mi to da, że będę rozumiał pół roku, rok, dwa wcześniej? Dlaczego, nawet jakby to miała być jakaś wartość, to miałoby być skodyfikowane przez narzucanie jakiejś obiektywnej wartości na to, i kłócenie się o to, jakie te wartości być powinny?

Ale skąd się nagle wzięła perspektywa lat?
Planuje się jeden, góra kilka sprintów naprzód, czyli 2-10 tygodni.

Po co rozumieć? No cóż, jest część ludzi, która nie chce rozumieć, co robi, zazwyczaj potem narzekają na forach, że mają w pracy jakieś głupie rozmowy o zdaniach, estymowanie i planowanie. Jest też część ludzi, która wie, co robi, a potem na forach nie narzeka.

piotrpo napisał(a):

Jeżeli masz gruboziarniście zdefiniowany projekt (bo niektóre faktycznie nie są zdefiniowane "do końca"), to można zrobić zgrubną koszulkową estymację całości i po zrobieniu MVP mieć jakąś tam możliwość odpowiedzenia "mamy 2-7% projektu zrobione". Czyli planujesz resztę projektu, ale na wysokim poziomie.

Chyba się nie zrozumieliśmy. Dla mnie MVP czegokolwiek to jest projekt, jak każdy inny. MVP ma jakiś cel i zakres, nie widzę powodu, dla którego nie można tego zaplanować, zaprojektować i wykonać w normalny sposób.

piotrpo
Ja widzę MVP jako część projektu, najprostsza forma docelowego rozwiązania, która pokazuje jego charakterystyczne cechy i da się rozwijać/przerabiać zbliżając się w każdej iteracji do tego co klient sobie wymarzył (definicja własna).
somekind
To, że w IT definicja projektu jest zgwałcona, nie jest dla mnie powodem, aby nie używać jej prawidłowo.
arczinosek
  • Rejestracja:prawie 7 lat
  • Ostatnio:około rok
  • Lokalizacja:Warszawa
  • Postów:86
3

Dla mnie wygodniejsze jest wycenić storkę na 5SP zamiast zastanawiać się czy to zajmie mi 10h czy 8h a może 12h? A tutaj mają problem, bo jest łatwiej?

A może każą Wam wyceniać w SP i jednocześnie deklarować, kiedy to będzie zrobione?

ON
  • Rejestracja:ponad rok
  • Ostatnio:około 11 godzin
  • Postów:16
1

Już lepiej wyceniać w SP niż w Man Dayach, jak w pewnym smutnym korpo na S z siedziba w Katowicach, gdzie jak się pomyliłeś o dzień czy dwa to potem wielki płacz był na retro, a w dżirce bieda i rozpacz, bo tylko team lider chodził na wszelkie spotkania dotyczące ficzerow i pustka w tickecie, a na groomingu "no siema elo muszę lecieć na inne spotkanie", a po groomingu to też się nie pytaj co ma być zrobione bo nie mam czasu

HA
  • Rejestracja:około 6 lat
  • Ostatnio:około 11 godzin
  • Postów:1006
2

Dla mnie SP są całkiem spoko z punktu widzenia developera. Zespół składa się z osób o różnej wydajności, więc wyceny w czasie są trochę bez sensu. SP mają ten plus, że w zazwyczaj w 2 tygodniowym sprincie zespół dowozi podobną ilość SP i łatwo dzięki temu określić capacity a przy wycenianiu też można sobie pozwolić na pewne uogólnienie bo finalnie się to w miarę uśredni. Jak w zespole jest zawodnik, który notoryczne zaniża wyceny to to też się z czasem uśredni bo po prostu zespół będzie dowoził mniej SP.

Problem zaczyna się, gdy klient chce wyceny rozbite na poszczególne taski i PM zaczyna przeliczać SP na czas.

Ogólnie metodologie Agile zostały stworzone raczej z myślą o pracy dla klienta wewnętrznego, gdzie rozwija się produkt. W software housach wszyscy wszystkim patrzą na ręce i ważniejsze od jakości staje się czas bo czas to pieniądz.

Moim zdaniem żadna metodologia wycen nie jest zła ani dobra, bo każda ma swoje wady i zalety - grunt aby z klientem grać do jednej bramki i dobrze sobie wytłumaczyć zasady, a to nie jest proste.

Miang
klient gra do Twojej bramki , Ty strzelasz se samobója?
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 2 godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4707
9

Chyba z 10 lat pracowałem w różnych projektach gdzie były story pointy.
Nie kojarzę jednej sytuacji żeby to było coś innego niż bezsensowna strata czasu.

W dużych projektach biznes planuje ficzery na kwartały i to co zespół pieprzy o planie na następny tydzień lub dwa nie ma żadnego znaczenia.
Jak trzeba coś zaplanować większego to bierze ludzi, którzy mają pojęcie (zazwyczaj max 2 w zespole) i pyta co się da zrobić za miesiąc, a co za pół roku.

W małych projektach wystarcza, że PO ustala priorytety i jest pod ręką. Jak ficzer okazuje się problematyczny (wydawało się proste, ale to bagno) to po prostu podejmuje decyzję w minutę czy brnąć czy robić coś innego. Żadne planowanie sprintów nie jest do niczego potrzebne.

I pomimo Story pointów, SCRUMów, policji agilowej itp. tak to się właśnie (przeważnie) rozsądnie odbywało. Byłem w projekcie gdzie pół dnia układało się sprint, który zwykle już po dwóch dniach był nieaktualny :-) A projekt i tak był całkiem spoko - PO był kompetentny, szybko ustalał priorytety, po prostu dużo się działo i dużo było niewiadomych (jebane mikroserwisy plus działająca produkcja).

Często ktoś pisze, że to planowanie i szacunki i tak zajmują mało czasu - np. paręnaście minut. Nadal to czas stracony. Poza tym zajmuje to może kilkanaście minut w tygodniu, ale poczucie zażenowania wysysa mi energię na pół dnia.


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 2x, ostatnio: jarekr000000
YA
  • Rejestracja:prawie 10 lat
  • Ostatnio:minuta
  • Postów:2368
7

Tak mi się skojarzyło dlaczego zespoły robią wyceny w SP:

Kopiuj
Mąż zauważył, że żona obcina kiełbasę z obu stron przed smażeniem.
- Czemu tak robisz? - pyta.
- Nie wiem, moja mama tak robiła.
Dzwonią do teściowej.
- Obcinałam, bo twoja babcia tak robiła.
W słuchawce słychać głos babci:
- Jeszcze nie kupiliście se, k..rwa, większej patelni?`

Kto jest u Was głównym konsumentem informacji o ilości SP ?

piotrpo
  • Rejestracja:ponad 7 lat
  • Ostatnio:4 dni
  • Postów:3277
1
onomatopej napisał(a):

Już lepiej wyceniać w SP niż w Man Dayach, jak w pewnym smutnym korpo na S z siedziba w Katowicach, gdzie jak się pomyliłeś o dzień czy dwa to potem wielki płacz był na retro, a w dżirce bieda i rozpacz, bo tylko team lider chodził na wszelkie spotkania dotyczące ficzerow i pustka w tickecie, a na groomingu "no siema elo muszę lecieć na inne spotkanie", a po groomingu to też się nie pytaj co ma być zrobione bo nie mam czasu

Szacowanie pracochłonności w czasie jest jeszcze większym bezsensem niż te SP. Szacuje zespół, za zadanie zawsze wykonuje konkretny człowiek, więc:

  • szacujemy ile komuś powinno zająć zrobienie czegoś
  • nie wiemy ile HR'y zaplanują tzw. "szkoleń", a Scrum Commando retro-planning-refinement-**uje-muje-dzikie-węże
  • Czy to powinno już uwzględniać czas na 1 i 2'kę

Na koniec tak jak już napisałeś, robota trwała 2 dni dłużej i tracimy dzień, bo trzeba zrobić root cause analysis dlaczego ktoś się spóżnił o 10% z zadaniem i jakie akcje powinniśmy wdrożyć, żeby uniknąć tego w przyszłości. W ramach tych akcji przyjdzie jakiś Uberscrumfuhrer i zacznie robić serię pogadanek o tym jak ważne jest estymowanie, bo gdybyśmy mieli zaplanowaną kampanię marketingową (ch... że nie mamy i nie będziemy mieć), to przecież biznes musi wiedzieć, bo byłby pieniądze wydane i może zmarnowane nawet.

KO
  • Rejestracja:prawie 2 lata
  • Ostatnio:około 3 godziny
  • Postów:140
3

W pewnym czasie firma próbowała wdrożyć XP (Extreme Programming), co ostatecznie nie wyszło, ale fajną rzeczą tam było estymowanie. Nie mieliśmy typowych SP, ale proste estymaty:

  • 0 -> coś trywialnego, np zmiana configu
  • 1 -> coś prostego, każdy w zespole już robił coś podobnego
  • 2 -> coś bardziej skomplikowanego lub nowego, mogą być niewiadome, ale ogólnie wiadomo co zrobić
  • 3 -> coś skomplikowanego, dużego, całkiem nowego, dużo niewiadomych, do rozbicia na mniejsze tickety lub najpierw do inwestygacji

Potem firma przeszła na typowego scruma i się zaczęły typowe SP. Jak dla mnie powyższe estymaty były najlepsze, bo każdy wiedział, o co chodzi i nie było debaty, czy coś powinno mieć X czy Y SP.

mrxormul
  • Rejestracja:około rok
  • Ostatnio:11 miesięcy
  • Postów:248
2

W globalnym korpo w którym spędziłem jakiś rok prowadzono eksperymenty w obszarze delivery. W projekcie do którego trafiłem było sporo rzeczy tworzonych od podstaw. Białe kołnierzyki doszły do wniosku, że do nowych ficzerów najlepszy będzie pair programming. Efektywność pracy w parach dało się utrzymać może przez tydzień czy dwa, a może w niektórych przypadkach trzy. Potem zaczęły się typowe sytuacje jak w każdym projekcie.

Co do planowania. Kto ma wiedzieć ten wie, że procesy pgoodowe da się przewidzieć dla danego obszaru z pewnym prawdopodobieństwem na dwa czy trzy dni do przodu. Potem złożoność tak rośnie, że możemy mówić o bardzo ogólnych przypuszczeniach. Dowolny projekt z zakresu software jest równie złożonym tematem, a my wciąż chcemy zaklinać rzeczywistość.

edytowany 1x, ostatnio: mrxormul
99xmarcin
Możesz powiedzieć jak się ten eksperyment z pair programming ostatecznie skończył?
bagietMajster
  • Rejestracja:ponad rok
  • Ostatnio:około 19 godzin
  • Postów:434
5
jarekr000000 napisał(a):

Często ktoś pisze, że to planowanie i szacunki i tak zajmują mało czasu - np. paręnaście minut. Nadal to czas stracony. Poza tym zajmuje to może kilkanaście minut w tygodniu, ale poczucie zażenowania wysysa mi energię na pół dnia.

To chyba wtedy rzucają wyceny bez sprawdzenia co to za task i co trzeba zrobić. U mnie wycena taska zajmuje od 2 minut do nawet 20-30 przy złożonych rzeczach. Ale pamiętajmy, to nie był prawdziwy agile, kolejnym razem się uda xD

SP to jest jednostka trudności zadania (takie jest oficjalne tłumaczenie) więc polecam zrobić sobie takie ćwiczenie: wy-estymować zadanie na 3sp a potem robić je dwa tygodnie bo przecież trudność jest na 3 tylko zajmuje tyle czasu. Zanotujcie sobie co powiedzą wasi koledzy i SM i PM/PO na taki stan rzeczy 😀 . Myślę że w dużej części poproszą was o reestymację taska na więcej SP a w dosłownie każdym przypadku będą pytać czemu to tyle zajmuje. Tyle jest z teorii, ale możemy sobie wmawiać że to nie był prawdziwy agile.

Tu jeszcze chciałbym poruszyć temat tego że 2 w projektach w których byłem mnóstwo czasu zostało przepalone na to żeby zespoły zdefiniowały kto jest ich klientem bo jak się okazuje jest to trudne. Finalnie wyszło na to że kasę na dniówki kilkudziesięciu osób zostały wydane, klient ustalony a potem wróciliśmy do tego samego backlogu który ustala jednak nie klient tylko góra xD

1000 razy powtórzone kłamstwo staję się prawdą a na 1000 wprowadzonych scrumów tylko jeden z nich obniża koszty.


Praktyczna implementacja TDD zaczyna się od ciebie.
edytowany 1x, ostatnio: bagietMajster
99xmarcin
  • Rejestracja:prawie 5 lat
  • Ostatnio:4 miesiące
  • Postów:2420
4

pair programming to dobra technika do rozwiązywania bugów (debugowania) czy dzielenia się wiedzą ale pod następującym warunkiem:

  • Osoba która chce się parować robi to dobrowolnie, oraz osoba proszona o sparowanie robi to dobrowolnie.
  • Osoba prosząca może wybrać z kim się sparuje.
  • Szanujemy wzajemnie swój czas, a sama praktyka jest ograniczona czasowo (dla mnie do max 2h na dzień).

Natomiast wszelkie wymuszanie tego typu pracy traktuje jako poważną ingerencje w prywatność oraz samodzielność pracownika.

Na koniec wy wszyscy apologeci technik XP pomyślcie sobie że jest upalny sierpniowy poniedziałek a wy musicie siedzieć sparowani z tym tłuściochem który przyjechał rano na rowerze lecz nie wziął prysznica, a na dodatek z japy jedzie mu czosnkiem...


Holy sh*t, with every month serenityos.org gets better & better...
Miang
coś jak seks dwóch dorosłych osób .... oj chyba za dużo z @cerrato gadam ;)
cerrato
Chociaż tak formalnie rzecz biorąc - nie trzeba być dorosłym, byłe mieć skończone 15 lat (art. 200KK :P )
marian pazdzioch
Ładnie opisane, sam stosuję, choć kiedyś poproszony przez Leada "zróbmy pair prog." odczułem ze chce mnie sprawdzić a nie pomoc.
Miang
@marian pazdzioch: nie, chciał się podpiąć pod Twoją pracę , ewentualnie pomysł jakiś Ci podebrać
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
0
0xmarcin napisał(a):

pair programming to dobra technika do rozwiązywania bugów (debugowania) czy dzielenia się wiedzą ale pod następującym warunkiem:

  • Osoba która chce się parować robi to dobrowolnie, oraz osoba proszona o sparowanie robi to dobrowolnie.
  • Osoba prosząca może wybrać z kim się sparuje.
  • Szanujemy wzajemnie swój czas, a sama praktyka jest ograniczona czasowo (dla mnie do max 2h na dzień).

Zgadzam się, aczkolwiek nie tylko. Do standardowego developmentu też jest bardzo dobre.

0xmarcin napisał(a):

Natomiast wszelkie wymuszanie tego typu pracy traktuje jako poważną ingerencje w prywatność oraz samodzielność pracownika.

Takie opinie słyszę tylko od ludzi którzy nigdy nie stosowali PP. Jak ktoś tak popracuje przez kilka tygodni, to zaczyna to preferować (w większości).

0xmarcin napisał(a):

Na koniec wy wszyscy apologeci technik XP pomyślcie sobie że jest upalny sierpniowy poniedziałek a wy musicie siedzieć sparowani z tym tłuściochem który przyjechał rano na rowerze lecz nie wziął prysznica, a na dodatek z japy jedzie mu czosnkiem...

I rozwiązaniem na to jest odsunięcie się od niego? Czy może lepszym rozwiązaniem byłoby poprosić go o prysznic w pracy. Poza tym, nie musisz parować z kimś z kim nie chcesz - bylebyś parował z kimkolwiek.

99xmarcin
"Jak ktoś tak popracuje", dowód na N=1 czy może twoi koledzy też to podzielali?
bagietMajster
  • Rejestracja:ponad rok
  • Ostatnio:około 19 godzin
  • Postów:434
2
Riddle napisał(a):

Poza tym, nie musisz parować z kimś z kim nie chcesz - bylebyś parował z kimkolwiek.

Czyli wychodzi że jednak muszę.


Praktyczna implementacja TDD zaczyna się od ciebie.
Miang
tylko ze jak do wybory w robocie na stalówce jest syf to z domu se przynosisz jedzenie
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
0
bagietMajster napisał(a):
Riddle napisał(a):

Poza tym, nie musisz parować z kimś z kim nie chcesz - bylebyś parował z kimkolwiek.

Czyli wychodzi że jednak muszę.

No nie musisz, kazać nikt Ci nie będzie.

Ale są twarde statystyki które pokazują że zespoły które regularnie dzień w dzień stosują Pair Programming dostarczają więcej feature'ów i mniej bugów, rzędu kilkudziesieciu procent.

Zobacz pozostałe 2 komentarze
Miang
@0xmarcin: +1, 99.5 procent naukowców zgadza się ze sponsorami ich badań, reszta jest wyzywana od szurów
99xmarcin
Kto jest autorem tego artykułu? Alistair Cockburn - gwiazdeczka Agile i XP...
Riddle
@0xmarcin: Możesz wskazać gdzie się myli?
99xmarcin
Mogę wykazać że sprzedaje szkolenia: https://alistaircockburn.com/Courses a więc ma motyw żeby wychwalać swój snake oil...
Riddle
@0xmarcin: Nie prezentujesz żadnych argumentów za tym że PP nie jest wydajne. Jedyne co od Ciebie padło to że "nie chce siedzieć ze spoconym gościem" i "odbieranie wolności", czyli to są bardziej powody czemu Ty osobiście nie masz ochoty tego spróbować, ale w żaden sposób to nie jest argument przeciwko PP.
99xmarcin
  • Rejestracja:prawie 5 lat
  • Ostatnio:4 miesiące
  • Postów:2420
0

Consequently, there was no evidence of an "assembly bonus effect," where the performance of a collaborating pair exceeds the performance of its best member working alone. While this finding may appear counterintuitive due to the general perception of two heads being better than one, it is consistent with the findings in small group research

https://www.jstor.org/stable/20650280


Holy sh*t, with every month serenityos.org gets better & better...
Miang
daj coś co można przeczytać darmowo bez logowania sie
99xmarcin
SciHub...
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:4 minuty
  • Lokalizacja:Laska, z Polski
  • Postów:10056
0
0xmarcin napisał(a):

Consequently, there was no evidence of an "assembly bonus effect," where the performance of a collaborating pair exceeds the performance of its best member working alone. While this finding may appear counterintuitive due to the general perception of two heads being better than one, it is consistent with the findings in small group research

https://www.jstor.org/stable/20650280

No wiadomo że dwie osoby nie napiszą szybciej tego co jedna osoba, powiedzmy w ramach jednego zadania - ale nie po to stosuje się Pair Programming.

Owszem - para piszę jeden dany feature trochę wolniej niż jedna osoba, i to jest prawda. Czyli dwie osoby osobno napiszą po jednym tasku szybciej, niż dwie osoby w parze napiszą te same dwa taski razem. Także Twój cytat jest prawdziwy. I gdyby firmy wynajmowały nas na ten jeden task to miałbyś 100% rację.

Tak jednak nie jest - jak pracujemy w firmie, to robimy task, za taskiem. Często dostarczamy ich kilkaset. I teraz problem jest taki, że taski dostarczone przez jedną osobę są dużo niższej jakościi, mają niższe pokrycie testami, są gorzej zaprojektowane, i często mają więcej bugów. Przez co task dowieziony przez taką jedną osobę jest mniej warty, bo i tak ktoś potem będzie musiał to poprawić - np. buga, albo zapłacić dużo dłuższy debugging żeby się przeżreć przez ten kod.

Także owszem - stosując PP robimy każdy task trochę wolniej, tak. Ale za to mamy dużo lepszy software, który w niedalekiej przyszłości okaże się dużo łatwiejszy, prostszy, tańszy i szybszy do zmian. Przez co np. zespół który stosuje PP przez pierwszych kilka tasków będzie wolniejszy, ale nie zostanie zatrzymany przez mess który osoby pracujące samemu zrobią. Np za miesiąć lub dwa wyjdzie bug, którego naprawienie zajmie 2 tygodnie, ale w zespole stosującym PP czegoś takiego nie będzie (a przynajmniej szansa na to jest bardzo mała).

Miang
mamy gorsze, bo każdy boi się wychylić coś proponując
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)