Function naming is hard (even PHP-FIG gets it wrong)

Craft, Programming, Uncategorized

There’s a famous saying that two of the hardest problems in computer science are cache invalidation and naming things. When it comes to defining standards, there’s no cache involved, but there is a lot of naming of things. It should come as no surprise, but I recently was shocked to see that the folks who create […]

Continue Reading

Simple, lightweight Rust tutorials


So I finally decided to write some tutorials. For Rust. I’ve kept myself from writing any tutorials before, but this time I made an exception. Here’s why. Be advised, though. There’s nothing special in these tutorials. I write them as I learn Rust from the only excellent book online, and the content and structure of […]

Continue Reading

Learning Rust – One tutorial at a time


I never wrote any programming tutorial before. That’s a paradox for those who know me, because I absolutely love to learn and teach. Why not a tutorial till now, then? To put it briefly, I haven’t been sufficiently excited about a programming language before. Sure, there’s Python, Go, Elixir, Kotlin, and many other elegantly designed […]

Continue Reading

Enjoy Those Lights!

Showcase, Uncategorized

Today I have taken an important step towards unchaining the designer in me. And it has to do with the choice of color scheme for coding. Now, most developers will agree that color-coding is extremely important in programming (it allows us to quickly discern parts of the code we want, and improves focus and readability) […]

Continue Reading

Is MVC a Three-Tiered Architecture?

Architecture, Software

No. Many (senior) MVC developers think that because they have “M”, “V” and “C” (three things), they have a three-tiered architecture. That is a very misguided opinion. Here’s what the actual difference is (though it’s an apples-to-oranges comparison) that I came across on a StackOverflow discussion (as usual, the accepted answer is not the best answer […]

May 25, 2019

Why ready made solutions (almost always) suck

Laravel, Tools

There are many pre-built solutions in our software world that promise the end of all troubles — WordPress for content management, Magento/WooCommerce for e-commerce, and so forth. People are looking for “survey plugins”, “ready-made front-ends”, “animation libraries”, and what not all the time. When you first visit these sites, they sound so incredibly amazing that […]

May 23, 2019

PHP vs. Python isn’t even a debate

Craft, PHP

When it comes to Web development debates, many experienced developers say there’s no practical difference between PHP and Python (and Ruby, Perl, etc.). I used to hold the same opinion. Until I had to work on some projects to extract TLS information from a website’s SSL certificate. The PHP libraries sucked so hard and were […]

April 25, 2019

From MySQL to MariaDB


I’ve long see-sawed on the question of MariaDB vs. MySQL, but today I think I’ve crossed the border. It came about when reading up a blog post on MySQL that contained an interesting topic — data masking. The important applications are limited access to the database, GDPR compliance, etc. Fun part? It’s not possible to […]

April 25, 2019

How not to build a freelance career

Advice, Career

Having been freelancing for over 4 years now, I believe I can offer some practical advice. Here’s what not to do (at all) when pursuing a freelancing career: Pick up too many skills: This just means, sadly, that you know none of them very well. Work in a hurry: Except for finalizing details and people, […]

April 23, 2019

It depends

Advice, Career, Craft

Decisions in software–and life, actually–are rarely straightforward. Should you learn a new tech stack or stick to the boring, old, solid one? Is WordPress better or JAMStack? Should you stick to plain old Bootstrap 3 or move on to Bootstrap 4? Will it be a good idea to move from MySQL to MariaDB permanently? And […]

April 23, 2019

A new blog post format


There’s a lot I want to write about. But the whole thought of structuring, expanding, connecting, and what not, when it comes to fleshing out a post, makes me weep. Unless the post is vast in scope, there’s no reason to make it too long. This applies to most of the posts out there, where […]

April 22, 2019

The stack is rarely the concern

Advice, Career

Much is made of the tech stack in the startup world. “Work with a world-class team of engineers working on the XYZ platform and shape the future of mankind” — so goes a typical hiring pitch for developers. And for good reason. Good developers and talents engineers are driven by the desire to improve. So […]

February 20, 2019

this, that, and everything else


One of the most puzzling things in JavaScript is this. We could begin by explaining what it is, what it does, and what makes it complicated, but this is not a tutorial. This is a rant, and like all good rants, it should begin with an example. 🙂 Let’s write some code for an object […]

November 24, 2018