Image for post
Image for post

What the hell do you mean with business logic and configuration logic? I swear I have not coined the term and I did read it somewhere that was not Clean Code, but I can’t for my life find it. Yet, with time I have come to see that this piece of info is one of the most useful one liners I usually give for advice.

Business logic tells our program what we want to do. It tells the story of the use case we are implementing. It’s usually very top level, follows a flow of function calls, and can almost…


Image for post
Image for post

If you have read my articles, you will know I love maps. They allow to let us transform data into some other related data. They are fast, optimized, usually easy to set up, easily readable … many boons and stuff. Maybe also a bit of fanboyism.

But we (or, rather, I) forget its main use. And that is storing arbitrarily accessible data by identifier. But what good is storing data that are not supposed to be used in a vacuum? It has many uses, actually. One of them is what we will be talking about today: caching.

Disclaimer: I use…


Something that should work, doesn’t work as expected. Everyone is faced with this situation from time to time in software development. Our decisions and mental schemas depend on understanding a series of rules so we can chain them together and build, and code, our logic, falls apart.

Some would say that programmers could be classified depending on how they face these problems. Actually, I think this is kind of a harsh and naïve comparison, because facing these mishappennings can go from wishful finding (doing exploration testing) to absolute terrifing nightmares (edge case in production that you can’t reproduce for the…


First of all, welcome to my #100DaysOfContent. After being told to JFDI and reading an increible post about How Game Programming Patterns was born, I realized that if I wanted to start doing something and get some consistency, I had to get on it heads on. And, so, here we are. I dont know how the hell I’ll be doing 100 articles and how much of them will be utter shit, but I’ll try my best.

Onto the topic, today I bring another in-work lesson. The story is quite simple:

  • We had some logic in an Angular component. But that…


Image for post
Image for post

This is mostly a dissertation I realized while playing with enums, as a way to make discrete set of behaviours more maintenable. You can find what it looks like to use an Enum to refactor a switch in Beating the switch smell.

I get to no conclusions. I just want to show what I find a interesting equivalence that can be used to juggle with some of the language restrictions.

I had to rename many times this article, because I couldn’t reach to any conclusion as to “what” I wanted to say. …


Image for post
Image for post

Doing Katas is fun! Is a nice way to improve oneself with sample problems, where you can challenge yourself with you might not find normally, experiment with new ideas or techniques, or just a nice excuse to start coding!

In this ocassion, I got myself with a nice little Kata about price calculations. I thought it was a good chance to start learning Ruby, so… why not? It was a language I had never used, I might need it sometime in the future and the sooner the better.

So I spent 1–2 days toying with the Ruby interpreter, trying Ruby…


Image for post
Image for post
Photo by Tirachard Kumtanom from Pexels

A recent conversation on Twitter, sparked by famous software dev and writer Uncle Bob, left me thinking. It has been a long while since I last used a Switch. I usually don’t feel the need to implement them, and I wondered about the reasons.

The tweet that sparked the article

Conciseness and maintenability is the main concern. Personally, I think switchs are terrible to read, easy to mess up, and a clear violation of the single responsibility principle. Some people will usually leave switches in some sort of factory pattern in the depths of the system, but I think we…


Image for post
Image for post

If you have read my other articles, The Programmer puzzle and Data Homogenization, you should know by now that Data Manipulation and Higher Order Functions are some of my preferred topics.

So with the huge hiatus I had (sorry!) and seeing that I was going to make some notes and exercises for a colleague that recently joined our team about this… what better idea than creating a new article just about that!

So let’s get with it.

How many times have you dealt with huge serialized data that comes from an external source. …


Image for post
Image for post
Tl;dr of the post

Recently, I was undergoing a interviewing process for Ximdex, a product-oriented company in Seville. Their main product is a format-agnostic CMS so it was predictable that their technical interview would be a data manipulation test.

I was right. Heavily simplified, the test was to apply to some data a JSON with arithmetic functions to get the final value. The data example was short, but it was implied that it could be very long (as one has to expect from almost any data coming from a file, actually).

My first approach was a typical OOP approach: create an object containing the…


Image for post
Image for post

Programming is hard. That’s the complain I hear the most whenever I talk with other programming students, technicians or engineers, or while giving private lessons. Whether trying to understand memory, data structures, or just why you need a variable; people struggle.

But I think that this shouldn’t be the case. Programming is not inherently hard: it can get really complex, but not at the entry level. The issue I think lays in what we teach as programming. We teach coding, but we don’t teach what programming actually is.

This is sometimes known as understanding the programming paradigm, What a word…

José 'Joshi' Ráez Rodríguez

(Trying to be a) Software crafter, T shaped knowledge. Any technology is a tool to be used in the right circumstances. Our power lies in our decisions.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store