Yegor Bugayenko's Blog, page 13
November 19, 2018
Tech Journalism Sucks
This July, just four months ago, I submitted an article to InfoQ, a popular online tech magazine. In the article I suggested that in order to improve our projects we must not make programmers worry about the quality of code they write, but instead let them focus mostly on the speed of delivery. The quality, I argued in the article, must be the concern of the delivery pipeline. You have most probably already read the blog posts where I mention this idea, especially this one: Don���t Aim for Qu...
November 12, 2018
Beware of Bigotry
Bobby Fischer, the eleventh World Chess Champion, was one of the best chess players of the last century. Did you know that, along with anti-Semitic statements, he also said that women chess players ���aren���t creative and are all fish���? Did you also know that he publicly described the 9/11 events as ���wonderful news���?
[image error]Better Call Saul (TV Series 2015---) by Vince Gilligan et al.Henry Ford, the founder of the Ford Motor Company, was one of the greatest American entrepreneurs. Did you k...
November 5, 2018
Do You Test Ruby Code for Thread Safety?
Are you a Ruby developer? If you are, I���m pretty sure you have a very vague idea of what concurrency and thread safety are. No offense, but this is what I���ve figured out after dealing with Ruby code and speaking with Ruby programmers over the last half a year. I���ve been writing in Ruby pretty actively recently and I do like the language and the ecosystem around it. Zold, the experimental cryptocurrency we are creating, is written almost entirely in Ruby. What does that tell you? I like...
October 29, 2018
Mailanes.com Helps Manage Newsletters and Mailing Lists
There are other products doing something similar, including MailChimp, AWeber, and many others. They are great. Maybe. I don���t really know. I tried some of them, some time ago. And I was frustrated. They are expensive, clumsy, and heavy. That���s my experience. I wanted something lightweight, where I can upload a list of emails, create a simple HTML/text letter, configure my SMTP outbound server, and call it a day. I spent a few days and created Mailanes. It���s free (for all of you), it���...
October 15, 2018
Don���t Make Me Guess
It���s Sunday. I���m at home, drinking tea and writing a new document for one of our future investors. One of my contacts in Telegram all of a sudden shoots me a message. I haven���t talked to this guy for at least two months. He is a software developer. I know him because he works at Zerocracy. His name is Paul.
[image error]�������������� (1979) by ������������ ��������������������Paul: ���Hey, it���s broken!���
Me: ���What exactly?���
Paul: ���The link.���
Me: ���What link?���
Paul sends me the link....
October 8, 2018
You Think You Can Control Us?
I was explaining how Zerocracy works to one of our prospective clients yesterday. He texted me today: ���[At Zerocracy] there is no commitment and anybody is free to leave any time, so the risk of entrusting a highly important project to such a platform and failing to deliver it on time is very high. We will develop it on our own with hired developers who will have salaries, and I���ll be architect and project manager, that way it will be under our entire control.��� I think this word ���cont...
September 29, 2018
Software Quality Award, 2019
This is the fifth year of the Software Quality Award. The prize is still the same���$4,096. The rules are still the same. Read on. Previous years are here: 2015, 2016, 2017, 2018.
Fill out THIS FORM to submit your project.
Rules:
One person can submit only one project.
Submissions are accepted until September 1, 2019.
I will check the commit history to make sure you���re the main contributor to the project.
I reserve the right to reject any submission without explanation.
All subm...
September 17, 2018
Fear of Decoupling
Objects talk to each other via their methods. In mainstream programming languages, like Java or C#, an object may have a unique set of methods together with some methods it is forced to have because it implements certain types, also known as interfaces. My experience of speaking with many programmers tells me that most of us are pretty scared of objects that implement too many interface methods. We don���t want to deal with them since they are polymorphic and, because of that, unreliable. It�...
September 11, 2018
Code Must Be Clean. And Clear.
There is a famous book by Robert Martin called Clean Code. The title is an obvious call to all of us: the code must be clean. Clean, like a kitchen, I suppose---there are no dirty dishes, no garbage on the floor, no smelly towels. Dirt to be cleaned in a code base, according to Martin, includes large methods, non-descriptive variable names, tight coupling, lack of SOLID and SRP compliance, and many other things. Read the book, it's worth it. However, there is yet another aspect of source...
September 4, 2018
Monolithic Repos Are Evil
We all keep our code in Git version control repositories. The question is whether we should create a new repository for each new module or try to keep as much as possible in a single so called "monolithic" repo. Market leaders, like Facebook and Google, advocate the second approach. I believe they are wrong.
[image error]Funny Games (2007) by Michael HanekeLet's use the following JavaScript function as an example. It downloads a JSON document from a Zold node (using jQuery) and places part...