Najbardziej poszukiwane umiejętności IT w świecie post-pandemicznym

Początek nowego roku to dobry moment na refleksję nad kierunkami rozwoju branży IT i jej zapotrzebowaniem na specjalistów. Przejrzałem sporą ilość raportów mniej lub bardziej znanych ośrodków analitycznych i w niniejszym wpisie chciałbym zarysować pewien wyłaniający się obraz najbliższej przyszłości w świecie technologii informatycznych.

Czytaj dalej Najbardziej poszukiwane umiejętności IT w świecie post-pandemicznym

Witaj w piekle: C & C++ – niejawne konwersje i promocje typów

Nie jest tajemnicą, że C i C++ zawiera sporo różnych pułapek czyhających nawet na doświadczonych programistów. Chciałbym przedstawić kilka wyjątkowo wrednych, trudnych do wykrycia, czasem subtelnych i prawie zawsze bardzo niebezpiecznych niespodzianek jakie zaserwuje nam kompilator. Co gorsza, na pierwszy rzut oka wszystko wygląda logicznie…

Czytaj dalej Witaj w piekle: C & C++ – niejawne konwersje i promocje typów

Architektura serwerów – wydajność przetwarzania zapytań cz.3

Ostatnio udało nam się zrównoleglić przetwarzanie naszych zapytań. Jednak wydajność tego rozwiązania okazała się mocno rozczarowująca. Dzisiaj sprawdzimy co nie zagrało i jak przybliżyć rezultaty do oczekiwań. Użyjemy narzędzia VTune od Intela – od niedawna można z niego korzystać za darmo.

Czytaj dalej Architektura serwerów – wydajność przetwarzania zapytań cz.3

Architektura serwerów – wydajność przetwarzania zapytań cz.2

Kontynuujemy nasze zmagania z przetwarzaniem zapytań. W pierwszej części zdefiniowaliśmy problem i podjęliśmy pierwsze próby implementacji rozwiązania. Szybko jednak okazało się, że istnieją lepsze metody. Dzisiaj będziemy eksperymentować z wielowątkowością. Oczywiście nie obejdzie się bez problemów…

Czytaj dalej Architektura serwerów – wydajność przetwarzania zapytań cz.2

Architektura serwerów – wydajność przetwarzania zapytań cz.1

Ten wpis rozpoczyna krótką serię na temat architektury serwerów. Będzie to analiza różnych podejść skupiająca się na badaniu wydajności poszczególnych taktyk. Eksperymenty będą wykonywane na systemie Linux z użyciem różnych narzędzi jak np. Intel VTune, perf, dtrace itp. Pokażę różnorakie triki aby wydobyć poszczególne metryki. Artykuły będą raczej trudne, przydatne głownie dla programistów i inżynierów zajmujących się tematyką wydajności aplikacji sieciowych i serwerowych.

Czytaj dalej Architektura serwerów – wydajność przetwarzania zapytań cz.1

Protokoły sieciowe – fundamenty Internetu cz.1

Jak działa internet? To niewinnie wyglądające pytanie jest w rzeczywistości bardzo trudne. Internet to właściwie zbiór niezliczonej ilości technologii, które to jakimś cudem razem współdziałają. Ta współpraca jest możliwa dzięki (w miarę) dobremu dogadywaniu się, za co odpowiadają tzw. protokoły sieciowe. Liczba protokołów sieciowych może przyprawić o zawrót głowy. Wiele z nich działa na różnych poziomach i w różnych sytuacjach, co na pewno nie ułatwia zadania polegającego na sprawnym nawigowaniu w tym pogmatwanym świecie. Spróbujmy zatem skatalogować kilka najbardziej popularnych protokołów wraz z ich krótkim opisem i wybranymi cechami.

Czytaj dalej Protokoły sieciowe – fundamenty Internetu cz.1