Yegor Bugayenko's Blog, page 10

September 9, 2019

How to Motivate Kids to Code

I got an email a few days ago. ���I���m not a programmer. I���m a mom of two kids: 9 and 14. They both seem to be interested in computers, but they mostly play games. What would you recommend I do to help them make a career in tech?��� I���m not an expert in parenting, but I���m getting similar requests rather often. It���s great to see that some people realize the difference between playing GTA and Java coding. It���s very sad to see that they don���t know how to motivate their kids. I don��...

2 likes ·   •  0 comments  •  flag
Share on Twitter
Published on September 09, 2019 17:00

September 2, 2019

Daily Stand-up Injection of Guilt

A few years ago I wrote a blog post about the daily stand-up meetings many software teams are doing regularly. Since then, the article has been getting comments from both sides. Readers either 1) strongly agree with me or 2) accuse me of having no idea what morning stand-ups are for.

My point was: only weak managers need such meetings to coordinate the team, while strong ones use more formal instruments to organize the flow of information. However, as someone noted, morning meetings are not s...

 •  0 comments  •  flag
Share on Twitter
Published on September 02, 2019 17:00

July 29, 2019

The Joy of Programming

Yesterday I was working with a slide deck for one of my future talks about Java and object-oriented programming and got stuck at finding convincing arguments for the transparency of logic. I was going to say that it is important for programmers to be able to understand how everything they do works, even if they don���t see it or never want to see it. But then I realized that maybe not everybody thinks that way. Maybe some programmers prefer to stay in the dark about the majority of things, as...

1 like ·   •  0 comments  •  flag
Share on Twitter
Published on July 29, 2019 17:00

July 9, 2019

Inversive Management

If you are a manager in a software team, your job is to make your people get things done. This is obvious. The question though is how exactly you make it happen. How do you make them do what you want, according to your plans, achieving your objectives, to your quality standards, and within the borders of your requirements and expectations? Some of you may say that these are our objectives, our mutual plans, our quality standards, and our requirements. This may be true, but initially they are...

 •  0 comments  •  flag
Share on Twitter
Published on July 09, 2019 17:00

July 1, 2019

TDD Misbeliefs

While I was working with a previous article about Test-Driven Development (TDD) I read many blog posts and a few books on the subject and found out that I disagree with a few of them; even some that are pretty important. It seems that most software experts simply misunderstand how software development works. Maybe because they are not really programmers, but are instead book authors and conference speakers.

[image error]La V��nus �� la fourrure (2013) by Roman Polanski

Robert Martin (@unclebobmartin) in...

 •  0 comments  •  flag
Share on Twitter
Published on July 01, 2019 17:00

June 25, 2019

SyncEm: Thread-Safe Decorators in Ruby

I wrote some time ago about thread-safety in OOP and how it can be achieved with decorators. It was also said that it���s very important to make sure objects are thread-safe (in Ruby and in Java), especially in web apps, which are multi-threaded (well, in most cases anyway). Well, here is SyncEm, a primitive Ruby gem which makes the above possible with a single decorator.

Look at this simple Ruby web app, which increments the internal counter on every web click:

require 'sinatra' cla...
 •  0 comments  •  flag
Share on Twitter
Published on June 25, 2019 17:00

June 18, 2019

How Much Do They Suffer?

Remember the famous article Who���s Got the Monkey? The gist of it is simple: good managers always make their subordinates responsible for their own results. When they attempt to send the monkey back to the manager���s shoulders by making excuses, the manager has to be on the alert and not accept the monkey, always keeping workers fully accountable and responsible for what they are doing. It���s a terrific principle, but it doesn���t work for most managers. Here is why. Let me tell you a stor...

 •  0 comments  •  flag
Share on Twitter
Published on June 18, 2019 17:00

June 10, 2019

Where Do You Seek Help First?

Just a few days ago a friend of mine, who is not a developer but a co-founder of a software startup, asked me to help his programmers with a technical problem they got stuck with. I said ���Why not?��� and asked them what was going on. They told me that their PostgreSQL server was running slow because it was doing this and that, and when they restarted it it was repeating this and that��� Long story short, I had no idea what they were talking about, even though I was a user of PostgreSQL for...

 •  0 comments  •  flag
Share on Twitter
Published on June 10, 2019 17:00

May 27, 2019

Trust Them to Get the Job Done, Not!

There are twelve principles in the Agile Manifesto. The fifth one says: ���Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.��� I disagree. Strongly. This formula suggests treating people in a binary way: they are either motivated and trusted or ��� what? They have to be let go? This mindset is very typical, according to my observations, and leads to poor management and project failures. Instead, our people manage...

 •  0 comments  •  flag
Share on Twitter
Published on May 27, 2019 17:00

May 20, 2019

Please, Don���t Improvise

We all know what happens when a programmer decides how a web site or a mobile app should look. It ends up looking ugly. And why is that? I don���t know exactly, but my best bet is on the left-brained nature of programmers, who mostly are rigid and logical mathematicians. UI design, to the contrary, requires creativity and intuition, which reside in the right side of our brain. Some recent studies are skeptical about that, but my personal experience tells me that you should never expect a prog...

 •  1 comment  •  flag
Share on Twitter
Published on May 20, 2019 17:00