Bitcoin: mity i legendy wrogów

Dzisiaj weźmiemy pod lupę mity chętnie powielane przez wrogów Bitcoina. Poprzednio zajmowaliśmy się obalaniem mitów tworzonych przez entuzjastów, a teraz zajmiemy zgoła odmienne stanowisko. A więc do roboty…

Czytaj dalej Bitcoin: mity i legendy wrogów

Bitcoin: mity i legendy wyznawców

Technologia Bitcoin, czyli wirtualna waluta jest dzisiaj odmieniana przez wszystkie przypadki. Budzi wiele emocji i jest przedmiotem wielu płomiennych dyskusji. Co więcej, nierzadko dochodzą do tego pieniądze, czasami bardzo duże pieniądze. To mieszanka wybuchowa, która przyczyniła się do powstania wielu zwalczających się frakcji. Chyba najłatwiej je podzielić na: obóz wyznawców wirtualnej waluty, obóz zdeklarowanych wrogów, a gdzieś pomiędzy znajdują się wszyscy inni. Jak nietrudno zgadnąć powstało mnóstwo mitów, propagowanych zarówno przez jedną jak i drugą stronę. Mity te znalazły bardzo podatny grunt, ponieważ zasada działania kryptowalut jest bardzo trudna do zrozumienia dla kogoś, kto nie zna podstaw kryptografii, systemów rozproszonych i matematyki wyższej.  Czyli, nie oszukujmy się, zdecydowanej większości użytkowników internetu.

Będzie to cykl trzech wpisów, podzielony na mity wyznawców Bitcoina, mity zagorzałych przeciwników i kilka interesujących faktów na koniec.

Czytaj dalej Bitcoin: mity i legendy wyznawców

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

Syndrom wybitej szyby

 

Drogi Czytelniku chciałbym Ci opowiedzieć o bardzo ciekawym zjawisku z branży IT, określanym, dosyć zresztą zagadkowo, jako syndrom wybitej szyby. Zastanawiasz się zapewne: co to takiego..? Jakie są Twoje pierwsze skojarzenia? Być może staje Ci przed oczami stary, opuszczony dom na uboczu, albo grupa łobuzów rzucających kamieniami w wystawy sklepowe. Dobrze! Jesteś bardzo blisko! Jeśli twoja wyobraźnia poprowadzi Cię jeszcze o krok dalej, do mrocznych, owianych złą sławą zakamarków miasta znajdziesz się u celu. Rzeczywiście geneza tego syndromu bierze się z badań kryminalistycznych dotyczących dzielnic i przedmieść, gdzie panuje duża przestępczość, a wybijanie szyb jest ulubioną rozrywką stałych bywalców. Ulubioną, ale zapewne nie jedyną, należałoby dodać. Zastanawiasz się zapewne jaki związek ma kryminalistyka z branżą oprogramowania i czy w IT jest tak źle, że trzeba się uciekać do doświadczeń stróżów prawa, i to tych najgorszych? No cóż, może tak źle nie jest, ale zacznijmy od początku.

Czytaj dalej Syndrom wybitej szyby

Pierwszy wpis

To mój pierwszy wpis po polsku. Poprzednio umieściłem kilka artykułów w języku angielskim, w kolejce na publikacje czekają kolejne.
Jednak zdecydowałem się rozszerzyć działalność pisarską na język polski, poniekąd na prośbę kolegi a częściowo z chęci komentowania i opisywania spraw, które są związane z naszym podwórkiem.

Czytaj dalej Pierwszy wpis

std::vector vs sorted std::vector vs std::set

In this short article I’m going to make a comparison between std::vector, sorted std::vector and std::set. However, I’m going to focus only on one aspect – which collection is faster during lookup.

Looks like the answer is rather trivial – std::map and sorted std::vector offer access to any element in O(log n) time while unsorted std::vector offers linear finding. To be precise – std::vector + std::find as std::vector doesn’t have built-in find function. Indeed, sorted collections are winners… Or maybe the answer is not so trivial? Czytaj dalej std::vector vs sorted std::vector vs std::set

New word order – sorting

Almost every modern language comes with sorting procedures. Is there any reason to dive into?

Very often it doesn’t matter which sorting procedure we select. Especially when we’re sorting a relatively small set of data, say, less than 1000 records, and the performance is not critical. Moreover, some languages give no options but one sorting procedure (taking into consideration only basic language facilities).

But what if we have gigabytes to be sorted? Let’s check out that case. Czytaj dalej New word order – sorting

Ethereal stuff – volatile

In this article I’m going to share some details about the volatile keyword available in a number of programming languages like C++, C, Java. During my professional career, I have found out that the volatile type qualifier is frequently misunderstood and, what is even worse, incorrectly used (leading to nasty bugs).

I’ll show the differences between C/C++ and Java languages and present some examples. However, this is not a definitive guide. The main purpose of this article is to give some overview and highlight potential problems.

The volatile keyword differs from language to language, thus we can’t just write one definition for all. Fortunately, the volatile type identifier serves the same purpose in C and C++ (albeit C++ slightly extends the definition). Czytaj dalej Ethereal stuff – volatile