Category: Programming

A big part of my work has to do with code. I’ve worked as system administrator – installing, patching, and configuring someone else’s code. I’ve worked as independent programmer, writing code on my own. I also programmed as part of the team. And on top of that, I worked as Team Leader and Project Manager, where I had to interact a lot with programmers. Programming world on its own is as huge as the universe. There is always something to learn. When I find something worthy or something that I understand enough to write about, I share it in this category.

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.

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:

The project has achieved its major goal with the establishment of a continuous timeline from 1970 until today. The repository contains:– snapshots of PDP-7, V1, V2, V3, V4, V5, V6, and V7 Research Edition,– Unix/32V,– all available BSD releases,– the CSRG SCCS history,– two releases of 386BSD,– the 386BSD patchkit,– the FreeBSD 1.0 to 1.1.5 CVS history,– an import of the FreeBSD repository starting from its initial imports that led to FreeBSD 2.0, and– the current FreeBSD repository.The files appear to be added in the repository in chronological order according to their modification time, and large parts of the source code have been attributed to their actual authors.

This is mind-blowing! So much work, so many people, so little recognition. The world wouldn’t be the same without all that, and yet the masses think that Steve Jobs or Bill Gates were the greatest computer geniuses in the history of mankind. Sad…

“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.

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.

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.

Logging, I think, is one of the least debated subjects in the software development. Everyone does it at least to some degree. Everyone agrees that good logs are important. But beyond that, there’s enough debate on what are the best practices, tools, and options. We need more of blog posts like this one and slides like these.

“The JavaScript Developer’s Reading List” is yet another hand-picked collection of books and resources for web developers in general and JavaScript programmers in particular. The selection is mostly focused around React and GraphQL, but there are plenty of more generic resources about JavaScript, software development, and Computer Science.