15 October 2021

The Interface Follows the Function

The COVID-19 pandemic took the world by surprise. Although we were technologically prepared to meet the challenge, it’s evident that the world economy, societies, and probably the mental health of many weren’t quite as prepared as we would have liked. […]
10 September 2021

Generating GitHub Releases from Azure DevOps

Introduction While working with version control systems, a common need is to identify a specific set of changes in our repository (what is usually called commit or check-in, depending on the tool) and give that set of changes a special […]
27 August 2021

Conceptual Modeling

Introduction To create a logical and physical relational data model, and a class design model, that is flexible and extensible enough to allow applications to evolve without major changes, we must start by modeling business. Specifically, modeling entities and their […]
13 August 2021

Planning zero-downtime deployments with Azure App Services and Azure DevOps

Introduction Every web application at some point of its life cycle has to be updated for some reason: it may be changes in business requirements, rebranding, bug fixes, adopting new versions of the libraries it depends on, etc. If all […]
23 July 2021

Database models in Azure

As it is widely known maintaining different types of on-premise infrastructure can be a tedious task and could need a fully dedicated resource that could increment costs and times for the IT department. It is due diligence to properly recognize […]
21 July 2021
Unit Testing

Testing: To unit or not to unit

It’s been almost 15 years since I started working as a developer. Twelve of those were spent writing unit tests and something I asked myself several times during those years is: “Are all these unit tests worth it?“ I’m willing […]
16 July 2021

Android Room: Persistence in local databases

Information is perhaps one of the most important resources for users of an application. It can be sensitive and contain the user’s private data. That’s why it’s important to properly manage an application’s data, so as to guarantee adequate integrity, […]
2 July 2021

Executing serverless background tasks in Azure using WebJobs

Introduction A need that often emerges while working on cloud solutions is to execute background tasks. That is, tasks that are executed without user intervention. These types of tasks may involve parsing and converting files, doing some batch processing on […]
25 June 2021

Let me estimate that for you

How long would it take to run to the gas station nearest your house to buy bread, and return home? This question has an answer that we all know — likely 5-10 minutes. We know where to find what we’re […]
4 June 2021

Circuit Breaker: What to do when a service fails constantly?

As a project grows, it’s common that each service communicates with a variety of others. For example, a checkout process to reserve a hotel room might include the following steps: Verify availability of the resource we want to reserve Validate […]
16 May 2021

Basic Data Structures in Python: Internal details

There are many options available when implementing basic data structures, knowing at least some of them allows us to write better and more efficient code. In this article, we will cover some potentially unknown aspects of tuples, dictionaries, and lists. […]
14 May 2021

Any one of us could be GAFA’s next victim. So, what can we do?

The approaching shadows About a year ago I got the chance to speak at an event on digital transformation organized by Manetch in Santiago, Chile. Confidently, I spoke about the brilliance and achievements of our innovation in the digital content […]
7 May 2021

Port of Hamburg

Stories have the power both to help us reinforce our beliefs and to appreciate different points of view. The failure depicted in the story I’m about to tell you is quite graphic, and therefore it’s easier to understand what went […]
23 April 2021

Critical vulnerabilities exist in more than half of Docker Hub images

An analysis published by Prevasio revealed that more than half of the 4 million images in Docker contain at least one critical vulnerability. Published near the end of last year, the investigation revealed that only about 20 percent of the […]
16 April 2021

Keeping credentials secure with Azure DevOps

Introduction Every application needs to use different credentials and other sensitive information to access different resources such as Azure SQL databases, Azure Storage accounts, REST APIs, SFTP locations, etc. On top of that, there’s usually a set of credentials per […]
9 April 2021
AWS vs Azure

Cloud Providers comparison: AWS vs Azure

AWS vs Azure It has been known for some years now that a large number of companies with large infrastructures started migrating their on-premises services to the cloud, be it Azure or AWS (Amazon Web Services). In most cases, security […]
4 February 2021
ux ba innovation chart

UX & BA: Who they are, what they do, and how they add value to the product

To create digital products that will be finally adopted and used successfully, it is key for the team to have a clear understanding and focus in solving both the formal business needs with its technological limitations, as well as the […]
8 January 2021

Native vs Flutter vs React Native

Introduce In this article we are going to give an idea when choosing to develop natively (Android or iOS) or cross-platform (Flutter and React Native). We will cover the basics, advantages, disadvantages and a conclusion to help you to take […]
18 December 2020

Agile boards: A DIY Guide for newbies

Have you heard about SCRUM? To start speaking about team boards, first we need to get acquainted with agile frameworks like SCRUM. The purpose of these frameworks is to help teams work together, learn from experiences, self-organize tasks and at […]
27 November 2020

Microservices, and nothing else matters!

After reading My microservices hurt I felt so distressed that inspired me to write this. In my short experience I have worked with different architectural styles: desktop applications, web services, SOA and Microservices, cloud native apps and many things in […]
20 November 2020

DevOps – Out of the box

As part of development teams for more than 5 years, I have had to explain my role in that team more than once to my colleagues. In fact, there was a large part of history in which that answer was […]
3 November 2020

Top 3 Python Libraries for Data Science

Python is the most used programming language among data scientists. Data scientists need to deal with complex problems, and the problem-solving process basically involves four major steps – data collection and cleaning, data exploration, data modeling and data visualization. Python […]
16 October 2020

Advanced async programming with Kotlin Android Coroutines

Since the beginnings of mobile programming, developers have always had to be careful about resource optimization when processing multiple tasks in parallel but without blocking the main thread of our application. To make a small review of basic concepts, it […]
9 October 2020

Inheritance and Composition in Python

Inheritance is a widely used technique in almost any project, but if it is not well applied it can lead to poor designed code with unnecessary coupling between classes.Composition usually offers more flexibility combining objects of other types.Learning the key […]
8 October 2020

Couchbase, (not) another NoSQL

NoSQL has grown a lot, and won spaces usually reserved for relational DBs. IoT, e-commerce, gaming among others demand speed and scalability, both among the strengths of most NoSQL databases. So the offer has grown too, MongoDB used to be […]
2 October 2020

Top 3 Deep Learning Frameworks for iOS

Introduction Artificial Intelligence has been a hot topic on recent years and there are strong reasons for that.  For starters, in the next decade around 40% of current job positions will be automated or replaced by artificial intelligence systems. Then […]
1 October 2020

Why EKS?

Living in the year 2020 we cannot deny that the demands and needs have changed in the development sector compared to past times (perhaps decades). Today there are projects, platforms, solutions, applications that often have the need to grow exponentially […]
10 September 2020

Barking up the RIGHT tree: user stories basics

In Agile Software development, a user story is the artifact that specifies the software need to fulfill a very specific business goal or benefit. Some authors say (and I subscribe) that a user story is the promise to allow a […]
9 September 2020

Dependency Managers for iOS: a comparison of current alternatives

The need for a dependency manager Including third party libraries in your project (most of them widely available via generous open source licenses) not only will help your team to be more productive. It also provides better maintainability as the […]
27 July 2020

A new kind of mobile applications: Super Apps

Have you ever heard the term Super App? Have you ever wondered what a Super App is? What are they and, are they taking over the world of mobile applications? In this article, we are going to learn a little […]
24 July 2020

ADT with Typescript

The last days I found myself reliving my youth, and my days in college, playing with ADT (abstract data type) and coding. It was so fun that I wanted to share it with everyone.First time I saw a linked list […]
22 June 2020

All that developers wanted to know about testing but never dare to ask

Historically developers have this love-hate relationship with testers, not realizing that they are both on the same side, sometimes due to ignorance and possibly because they didn’t dare to ask some of the following questions that we will try to […]
12 June 2020

Android Data Binding

I started a little research about the antipatterns and bad practices around Databinding library; to my surprise, most of the developers agreed that the library is powerful but can be misused due to the official documentation. Databinding library has been […]
17 April 2020

Data Leakage in Machine Learning

Introduction Data leakage (or leakage) happens when your training data contains information about the target, but similar data will not be available when the model is used for prediction. This leads to high performance on the training set (and possibly […]
21 February 2020

Divan-proof productive retrospectives

In our industry, infected by all kinds of solutions that promise to solve almost anything, we have a perfect example of what “waste of time” means: the ceremony of retrospectives popularized by the use of Scrum. What a way to […]
21 January 2020

Pugh’s Matrix for the evaluation of alternatives

The Englishman Stuart Pugh (1929-1993) had the good will to create a matrix to help us make decisions in a practical way. Like a good mechanical engineer, the matrix is extremely simple to use, from its creation to the present. […]
21 January 2020

Think different: The holes of Abraham Wald

There’s an obsession over examining what works better than something else, whether it’s good practices, methodology, the logic by which money is made (a business model), types of services we desire to offer, etc. This obsession might be driven by […]
21 January 2020

My microservices hurt

Humor me for a second and let me know if this works: Open your favorite IDE, go to the menu and try the sequence “File → New Microservice” (or similar commands). With luck, if you installed possessed plugins or use […]
21 January 2020

Look like a Software Architect with distinction and elegance

Suppose you find yourself alone in a room, tired from standing, where you only have 2 chairs. You take one of them and sit down, experiencing an embarrassing fall to the floor due to the unforeseen “decomposition” of the chair. […]
21 January 2020

Instructions on how to make significant contributions to the organization

A brief reflection on how to make significant contributions to the organization. Know where the value is Climb Repeat Know Where The Value Is Find out where the value is to measure your contribution. What is important (or valuable for […]
21 January 2020

Management of time – The Eisenhower Matrix

Eisenhower’s matrix (Yes, yes, the Eisenhower hero of the second world war and president of the United States) is a technique of management popularized by the famous Stephen Covey in his book “The Seven Habits of Highly Effective People” to […]
20 January 2020

The Seven Wastes of Software Development

In productive industrial processes, there are extensive studies about how to recognize and eliminate waste since it entails costs that effect the profitability of production. Nevertheless, in areas of services like software development, waste is intangible. That makes us incapable […]