Asynchronous programming is not a new concept and has been around for several years and it is nowadays a new standard in modern frameworks like AspNetCore. This framework is now fully asynchronous and it's not easy to avoid using its async keyword.
I think there is a certain cloud of fear when it comes to asynchronism, developers sometimes feel afraid of using it because they don’t understand how to use it and its best practices.
Another reason for this sense of fear is due to the fact that in the past asynchronous programming was not easy at all indeed. …
Documentation has a bittersweet flavor for many Engineers, even though many acknowledge the benefits of documentation people usually don’t like to do it.
I respect that, as Engineers, we like to get our hands dirty, built new software, refactor existing software, everything but documentation, no one has time for documentation many might say.
“Finding patterns is the essence of wisdom.” Dennis Prager
You have already heard of Design Patterns before for sure if you are into Software Engineering. The sole concept of a pattern is captivating for Engineers since a pattern is the repeated or regular way in which something happens or is done.
The original concept of Design Patterns was originated in the late 70s being composed by Christopher Alexander and colleagues. …
Today we’ll talk about one of the central pieces of the everyday work of Software Engineers, the Code Reviews. As you already noticed I’m a strong advocate of asynchronism and not only when we talk about code development.
Usually in these modern days of Software Development when we finish some new implementation the next step submit that code for a peer review by opening a new merge request (depending on your source control manager).
As many of you already know, Code Reviews are a quality assurance activity that consists of the validation of source code modifications by others. Through the…
Alright alright alright! (Yes, its a Matthew McConaughey reference)
As you might already notice, I really like asynchronism and its intrinsics. I love a hard challenge and understanding deeply asynchronism was a challenge.
The beauty of asynchronism is that it can be sweet and bitter at the same time, depending on how you implement it. But, if you understand how it works under the hood and its syntactic sugar do you'll be able to master it and enjoy its full potential.
In my last blogpost, .NET Async Programming in a Nutshell, we looked at some concepts of asynchronism in .NET…
“Your habits will determine your future”
What makes a good Software Engineer? I could start enumerating lots of qualities that most consider being crucial on a good Software Engineer but I won’t do that.
I won’t do that because the field of Software Engineering is enormous and some things that make a good Software Engineer will depend upon in the context where he's. So one cannot simply establish with certainty what qualities define the ideal Software Engineer without having the full picture.
What I will try to come up with this article is an abstraction of some key practices that…
During the Covid-19 pandemic, our Todos Juntos value, a Portuguese phrase meaning ‘all together’ has shown it’s true strength and meaning.
Todos Juntos is defined by the belief that our goal is always to act for the greater good of all teams, even when it’s beyond our area of expertise. Now, more than ever, we are living our Todos Juntos value, working closely with our colleagues and celebrating our shared achievements.
Following the World Health Organisation and Governments recommendations, most of our teams have been working from home for the past few months. This new reality brings with it new…
Over time the Farfetch platform evolved and grew, developing every day to ensure that our users have the best experience possible.
From a single customer to having over two million marketplace consumers in 2019, the Farfetch platform started as a monolithic architecture and has evolved into a geo-distributed service-oriented architecture. In this blog article, we will talk about two very important concepts: Authorization and Authentication. These two concepts are essential for the protection of our customers and their data. …
As an Engineer, I strongly believe that standardization has lots of benefits and we should always follow the industry standards for good. One case where I believe that the standards should be followed is when modeling a REST API HTTP response codes for its endpoints.
In this blog post, I’ll talk about HTTP methods, HTTP response codes, and present a simple REST API response code modeling for the most commonly used HTTP methods.
The HTTP response code modeling in an API is like making a puzzle, you need to make be sure that in each endpoint the returned response code…
According to the Cambridge dictionary History is “the study of or a record of past events considered together, especially events of a particular period, country, or subject”. Software applications are iterated over time, suffering changes to its structure and behavior. Each one of these iterations can be considered an event in the software application history and, this history, can be recorded in different ways either with documentation, commit history, changelogs, etc.
“Those Who Do Not Learn History Are Doomed To Repeat It.”
- George Santayana
Every time I read this sentence somewhere I think about war and previous disasters that…