7 multi-threading and concurrency deadly sins

Let’s see what kind of pitfalls are common in multi-threading & concurrency world. This kind of code is simply hard to write and even harder to maintain. I’m going to share what can go wrong and how to avoid many traps.

Czytaj dalej 7 multi-threading and concurrency deadly sins

Security through obscurity: antywzorzec czy przemysłowy standard?

Security through obscurity to oczywiście angielskie określenie, które można przetłumaczyć jako bezpieczeństwo przez niejawność. Ale o co chodzi? Czy jest to antywzorzec czy może przemysłowy standard? I co ma z tym wspólnego immobilizer w Twoim aucie? Jeśli chcesz poznać odpowiedzi na te pytania – zapraszam do czytania.

Czytaj dalej Security through obscurity: antywzorzec czy przemysłowy standard?

Microkernel – wzorzec architektoniczny

Wzorce architektoniczne stanowią bardzo ważną część inżynierii oprogramowania. Są niejako instrukcją postępowania podczas rozwiązywania pewnych powtarzających się problemów. Dzisiaj weźmiemy na pulpit wzorzec architektoniczny, który jest związany głównie z (ale nie tylko) architekturą systemów operacyjnych – microkernel (nie mylić z kernelem systemu operacyjnego!).  Podam ogólny zarys tego wzorca i zrobię krótką analizę uwzględniając różne kryteria. Ta ostania rzecz jest szczególnie bardzo ważna dla programistów i architektów oprogramowania – zobaczymy jakie należy przyjąć kryteria oceny i na co zwracać uwagę podczas analizy wzorców projektowych.

Czytaj dalej Microkernel – wzorzec architektoniczny

SOLID czyli zestaw solidnych reguł

Jednym z najbardziej rozpoznawalnych akronimów w inżynierii oprogramowania jest SOLID. Jednak po przeprowadzeniu setek rozmów rekrutacyjnych mogę stwierdzić, że z tą rozpoznawalnością bywa bardzo różnie. A szkoda, bo jest to zestaw reguł o dużym znaczeniu, warto więc wyjaśnić co to jest i dlaczego na rozmowach kwalifikacyjnych tak często pada pytanie o SOLID.

Powstało wiele opracowań na temat SOLID (możesz je bez problemu znaleźć w sieci) w odróżnieniu natomiast od znakomitej ich części my zastanowimy się czy można przedawkować SOLID i jakie będą tego efekty.

Czytaj dalej SOLID czyli zestaw solidnych reguł

Behind the scenes: Bitcoin

Cryptocurrencies are really hot and attract attention of the broader public. But a few of us really know what sits behind the curtain. Today I’m going to give you a short overview of the technological side of Bitcoin.  However, I’m not going to focus on economics or social impact of cryptocurrencies.

The whole concept is build on the top of several interesting technologies, some of them are innovative, some of them are well know for decades. This article contains a list of some technologies which are leveraged in the majority of current cryptocurrencies. However, this is not a deep study and you won’t find here much details, only a sort of guidance and reference to corresponding documentation.

Although the future cryptocurrencies in a shape as we can see today might not be so bright, I’m pretty sure that used technologies will be more and more important in the future. Especially blockchain is something you should be familiar with.

Czytaj dalej Behind the scenes: Bitcoin