StackOverflow: Developer Survey Results 2019

This year’s results for StackOverflow Developer Survey are in. This is probably the largest survey of IT professionals, with nearly 90,000 participating this year.

As always, there are plenty of insightful findings and correlations in the results. But one that I was somewhat glad to see was the attitude towards Blockchain technology.

While the mainstream media continues to confuse Blockchain with cryptocurrencies, technical people do understand the difference. And the majority (29.2% + 26.2% = 55.4%) of the survey respondents think it is useful for a variety of things outside of the cryptocurrency.

And with all the hype around cryptocurrencies and Blockchain, the majority of the organizations are not working with the technology just yet. Furthermore, of those that do work with Blockchain, the majority is NOT using it for the cryptocurrency.

That is pretty close to my mental picture of what’s going on.

Chrome Extensions: PHP Console and JavaScript Errors Notifier

Here are a couple of handy Google Chrome extensions that I came across the other day.

PHP Console

PHP Console can display PHP errors and var dumps in the Google Chrome Developer Console and notification popups. It can also execute PHP code remotely, with the help of this server side library.

JavaScript Errors Notifier

JavaScript Errors Notifier lets you know of any JavaScript errors either with an icon highlight, or with a popup window. This makes things a lot easier to notice.

You Don’t Need jQuery

You Don’t Need jQuery is a GitHub repository with a collection of code snippets that show how to do the most common jQuery bits in native JavaScript. The collection covers a whole range of subjects, like:

  • Query selector
  • CSS and style
  • DOM manipulation
  • AJAX
  • Events
  • Promises
  • Animations
  • … and more.

All examples should work just fine in all modern browsers.

Additionally, have a look at the You Might Not Need jQuery website.

Programmer migration patterns

Programmer migration patterns” is an interesting attempt to identify where programmers start and how move from one programming language to another. This is not precise science, obviously. But I have to say that I mostly agree with the findings.

The first language that I learned (back in school) was BASIC, which then gave me some legs with Visual Basic later in college. Also in college, I’ve learned assembler, C, and Pascal, which guided me to some amateur and professional development with Delphi.

Soon after that I discovered Linux, which meant shell scripting. I played with awk, but I didn’t have to dive deep, as Perl was already available. Perl was probably my first true programming language, which I learned outside of school and college, and which I have been using for years to build all kinds of things. I still love Perl dearly, but the last few years I have been mostly using PHP, with some occasional Python.

JavaScript, however, is where I draw the line. I’ve been scarred by JavaScript back in the 90s, so I can’t force myself to go back. And then again, I don’t really have to. I’ll leave JavaScript, TypeScript, and node.js for the younger generations.

Let the source be with you!

Searching DynamoDB: An indexer sidecar for Elasticsearch

One thing that I like about the modern world is that large technology companies are a lot more open than they were in the previous century. Many of them contribute to the Open Source ecosystem and frequently share their wisdom on how to use and not to use a particular technology.

Have a look at the recent post from Bitbucket blog: Searching DynamoDB: An indexer sidecar for Elasticsearch, for example.

It’s not your usual marketing nonsense about introducing a new needless service or self-praising review of a product. It’s a rather deep dive into a technical topic that has been getting a lot of attention for the last few years – NoSQL databases. Not only the blog post itself is interesting, but it provides plenty of useful links to other resources. Like this one, which covers database partitioning in depth. Or this one, which lists some of the best practices for designing and using partition keys effectively.

I wish more companies shared their technical insights like this.