Nieznane's awatar

Wpisy, których autorem jest Teo Vincent Artur Wincenciak

Software engineer writing code in .NET and a conference organizer leading the Cracow .NET Developers Group. I have also been a university teacher as an additional activity. In my free time, I develop open-source projects and enjoy skiing, table tennis, and snooker as my big hobby. I am a fan of Ronnie O'Sullivan and Judd Trump. .NET, C#, C++, SOLID

Kalkulator napisany z pomocą behavior-driven development (BDD)

Postawiłem sobie za cel napisanie kalkulatora przy użyciu metody BDD a wynikami mojej pracy chcę się z wami podzielić.

Kalkulator ten będzie zachowywać się jak ten z lat dziewięćdziesiątych, pokazany poniżej na obrazku. Mam jeszcze taki sam w domu — ma już chyba 20 lat. Ten, który tutaj zaimplementuje, będzie posiadał, tak samo, jak ten oryginalny, kilka dziwnych zachowań. Na przykład, przy każdym ponownym wciśnięciu „=”, liczba na wyświetlaczu będzie się zwiększać o jeden, jeśli wcześniej wykonaliśmy działanie „1+1”.

Continue reading →

Scrum a błędy na produkcji

Klasyfikacja błędów

Bugi klasyfikujemy ze względu na DOLEGLIWOŚĆ oraz ZŁOŻONOŚĆ. Każda z tych klasyfikacji może osiągnąć poziom WYSOKI lub NISKI. Każdy bug możemy przyporządkować do jednej z czterech kombinacji tej klasyfikacji.

  • Wysoka złożoność i wysoka dolegliwość.
  • Niska złożoność i wysoka dolegliwość.
  • Wysoka złożoność i niska dolegliwość.
  • Niska dolegliwość i niska złożoność.

Continue reading →

Osiąganie najwyższych tonów & Odnajdywanie świetnych programistów

To czy firma programistyczna osiągnie sukces na rynku zależy od warunków pracy.

Najlepsze warunki pracy,

przyciąga najlepszych programistów,

którzy piszą najlepszy kod,

który przynosi zysk.

Nawet bardzo liczna grupa przeciętnych programistów, niezależnie od czasu jaki poświęci na tworzenie kodu zawsze napisze oprogramowanie, które jest tylko przeciętne podczas gdy zaledwie kilku bardzo dobrych programistów w krótkim czasie jest wstanie napisać bardzo dobre oprogramowanie.

Continue reading →

Szybciej, wolniej, wolniej

Poniższy fragment książki jest brutalną prawdą, esencją strasznej zarazy panującej w firmach, która z zimną krwią wyniszcza wszystko, co jej stanie na drodze.

Systematyczne lekceważenie planowania i projektowania prowadzi do rozwoju w cyklu „szybciej, wolniej, wolniej”.

Wygląda to mniej więcej tak:

  1. Błyskawicznie dostarczasz wersję 1.0, pisząc cały kod na kolanie.
  2. Budujesz wersję 2.0, na bieżąco rozwiązując problemy stwarzane przez uciążliwy bałagan w kodzie.
  3. Wraz z kolejnymi wersjami rozwiązywanie problemów ze starym kodem „na bieżąco” sprawia, że bałaganu przybywa, a praca staje się coraz wolniejsza. Wyrzyscy stopniowo tracą wiarę w system, programistów i całą sytuację, w której się znaleźli.
  4. Gdzieś w okolicach wersji 4.0 zdajesz sobie sprawę, że nie wygrasz. Zaczynasz rozważać opcję przepisania systemu od podstaw.

„Refaktoryzacja do wzorców projektowych” Joshua Kerievsky

Continue reading →

Rozmowa telefoniczna

Podczas rekrutowania programisty rozmowa telefoniczna pełni funkcję filtrującą. Jeśli podczas takiej rozmowy nie możemy się dogadać, to jest to wystarczający powód do tego aby już na tym etapie zdecydować, że danej osoby nie zatrudnimy. Przed zaproszeniem kandydata na właściwą rozmowę kwalifikacyjną zwykle dzwonimy do niego, aby się upewnić, że organizacja spotkania nie będzie zwykłą stratą czasu i pieniędzy.

Rozmowa telefoniczna jest tania. W krótkim czasie eliminujemy masę kandydatów, którzy na papierze sprawiali wrażenie na prawdę dobrych.

Rozmowa kwalifikacyjna powinna składać się z trzech etapów.

Continue reading →