Each developer has his own style, vices and manias… And this can lead to problems, inconsistencies, poor scalability, etc. in shared projects. Fortunately, there are a number of principles, rules, and standards that help a team run like clockwork.
More than recommended, it should be a must for all development teams. And as the rule of the 4Cs (Clean Code, Clever Code) says: Clean Code, Intelligent Code.
Writing clean code is smart, and with it we will get many benefits. Failure to do so could result in tangled, confusing, inconsistent, and unreadable code, and every time something has to be touched, a lot of time will be spent researching and understanding it. …
A “microservices architecture” is an approach to developing a software application as a series of small services, each running autonomously and communicating with each other, for example, through HTTP requests to their APIs.
Typically, there are a minimum number of services that handle things common to others (such as database access), but each microservice is small and corresponds to a different area of the application.
Furthermore, each one is independent and its code must be able to be deployed without affecting the others. Even each of them can be written in a different programming language, since they only expose the API (a common interface, which does not care about the programming language in which the microservice is programmed below) to the rest of the microservices. …
When we are designing, it may be customary to want to place a large amount of content in the smallest possible space. We want to give our visitors a lot of information at a glance, with hardly any blank spaces in our design. But this can become counterproductive, and supersaturation causes an unwanted effect. Even leaving the web because it is not pleasant to visit it.
And, although many people believe that white space is a lost space, this element must be the great backbone in our web designs. Visual clarity in a design is what keeps readers interested in the content. …
One of the main reasons why documenting is a task that is perceived as “expensive” in time and effort lies in our concept of generating it. This is linked to bad experiences we may have suffered when creating or consuming it.
When we think about documentation, we associate in our mind the need to receive or create a document. This document will be a “deliverable” in docx, pdf or similar format.
If said document is written with care, that is, without an obvious hurry to finish it after having left it for the final phase of the project, we will ensure that said document is kept updated in time. …
The concept of productivity is being taken to an extreme that I don’t like at all. I agree that time is very valuable and we should not waste it. But I don’t agree that we should lose our essence as human beings so as not to take a second for lost.
Software developers have our share of guilt. Productivity programs are designed for the user to save a couple of clicks here and there, to write as little as possible, to make it faster when it comes to working. Saving a couple of clicks or spending 30 seconds less to type a text will only generate a false sense of productivity. …
SOAP vs REST is a comparison that many programmers or even software architects usually ask themselves when developing APIs for their systems, but what is really the difference between them? Is it that one is superior to the other? Could it be that REST came to replace SOAP? Well, in this article we will try to solve this great doubt.
SOAP, acronym for Simple Object Access Protocol, has been for many years the dominant focus in Service Oriented Architecture (SOA) for many organizations. It became the preferred protocol to achieve interoperability between applications.
However, its expansion has been delayed by a second alternative of distributed computing called REST (Representational State Transfer) that although it exists since the HTTP protocol appeared (that is, by the year 1991), has taken much relevance in the last decade, being used in almost 70% of public API’s. …
When we are stuck with a problem, a usual strategy is to start over from scratch. Redoing the problem from the beginning allows us to avoid possible previous errors that may have gone unnoticed and have a better perspective of how and why the problem occurs.
In the field of technology, this strategy also applies.
Is your computer going slow or does it not respond? Try restarting the computer.
Doesn’t work the program? Kill it and run it again.
Let’s talk about why restarting the computer is such an effective solution.
First, a computer has two different types of memory:
REST, REpresentational State Transfer, is a type of web development architecture that is fully supported by the HTTP standard.
REST allows us to create services and applications that can be used by any device or client that understands HTTP, so it is incredibly simpler and more conventional than other alternatives that have been used in the last ten years as SOAP and XML-RPC.
REST was defined in 2000 by Roy Fielding, co-author also of the HTTP specification. We could consider REST as a framework to build web applications respecting HTTP.
Therefore REST is the most natural and standard type of architecture to create APIs for Internet-oriented services. …
The vagueness of the “it doesn’t work” report means less than nothing — the issue could be literally anything — the website could be down, the signup screen could be broken, the app could unwittingly be taking naked selfies of the user and e-mailing it to all their friends — there’s just no way of being able to tell.
Like it or not, mistakes are an inevitable part of all software.
Many mistakes can take hours to be corrected and it is impossible to deduce what the problem is without a good report of the problem.
So here is how to write a bug report that helps narrow down the problem, makes developers happy and streamlines the process of making your software just… work. …
The loading speed of a website has become one of the most important factors in recent years in web design and, although there are many elements that can be optimized to lighten the total weight of downloaded files, in this article we are going to focus on optimizing CSS files, more specifically when writing CSS.
That a website weighs little and loads fast is an obvious improvement of the UX (user experience), because visitors get to reach the content before and interact with it. …