Programming is a craft honed through both theoretical knowledge and practical application. This skill, cultivated through countless hours of coding and problem-solving, is essential for…
In today’s technologically-driven world, there is a significant amount of hype surrounding Large Language Models (LLMs) and artificial intelligence (AI). However, it’s essential to take…
Summary The vim that is installed by default when installing arch does not support neither clipboard nor python. The same applies to the vim version…
As a professional who works on various tech fields, including AI and machine learning, my main goal is to solve the real issues we see…
When it comes to accessing databases, the go-to option for many Python developers is SQLAlchemy, a popular SQL toolkit and Object-Relational Mapping (ORM) system. Based…
A few words about the title of the blog The term ‘Software Engineer’ has widely been used in the last decades to describe those who…
Picture yourself as the best locksmith who can unlock any door in the world. You’ve spent many years, hard work, and money to become an…
Summary This posting continues the discussion about algorithmic thinking solving a well know problem that is known as Best Time to Buy and Sell Stock…
Solving a programming problem that requires a custom algorithm can be broken in several steps which can be summarized in the creation of testing data,…
In this posting we will discuss algorithmic thinking and try to propose a way of thinking that might become helpful when trying to solve a…
Python provides a rich programming paradigm providing the ability to the programmer to express his solutions in a very concise and elegant way. One of the…
NASA’s Mars Climate Orbiter was launched on December 11 1998 with the ambitious mission of studying Martian climate; the cost of the program was more…
Like in any other activity that requires expertise, software developers can be classified based on their productivity and ability to innovate and create new approaches…
Last week I presented a lecture as part of the Business Intelligence Analytics and Data Science course in the School of Professional Studies of NYU…
Without a doubt, Test Driven Development (TDD) lies in the core of my software development approach. I have been a very early adapter of automated…
It is my impression that the vast majority of new developers, tend to underestimate the importance of design and implementation details as they struggle…
One of the common discussions I have had with my colleagues over the last years was about the creation of metrics to express the productivity…
Please, do not make any evening plans until the end of the sprint I remember being a member of a project that was obviously going…
A few thousand years ago in the desert of Giza, the construction of one of the most ambitious constructions ever was initiated. Hundred of thousands…
A very common metaphor used when we talk about software development is to compare it with home building. Although there are some commonalities, software development…
If it looks like a duck, quacks like a duck and walks like a duck, it’s a duck Probably the greatest feature of python is…
Introduction to decorators Decorators introduce a programming paradigm that is not found in statically linked languages, like C++ or Java. Taking advantage of closures and…
This might sound a bit axiomatic but it has to be true: software that remains alive while still expanding the number of it users as…
As a professional programmer, I spend thousands of hours in front of a computer screen every year and without a doubt the two tools I…
A great way to learn a new language is to simulate a game using it. Implementing a solution for something that seems so simple as…
I do not see how can anyone disagree with The McDonald Theory which states that initiating a process is more important than finding the ultimate…
Technical recruiters give me the impression that their shallow knowledge about the craft of programming almost always is paired with strong opinions about it. Most…
Starting a new project involves several decisions, the most important of which is the selection of the technologies to be used. The technologies used can…
Sometimes when developing a solution I stop my coding for a several minutes visualizing my work as a battle between abstractions and specializations. The contrast…
Over the last years of the twentieth century we witnessed the browser wars with more important incitement the antitrust case of the United States vs.…
I have fallen in love with several programming languages in the past, with C++ being the most dominate of them. During the last years though,…