Microservices, The bad parts
If your team is considering microservices, you should be aware of the challenges associated with them. Microservices are a great way to scale your application, but they come with a lot of overhead. In this article, I will talk about the challenges and considerations associated with microservices. Local Development Developing and testing a monolith is straightforward as developers can run the entire application on their workstation. However, with a microservices architecture, developers need to run each service individually or together depending on the coupling between the services....
Better Fetch API with Decorators
Introduction Like most full stack JavaScript developers, I have come to love the web Fetch API. It is a simple and elegant way to make HTTP requests. However, the Fetch API lacks some features that are essential for making HTTP requests in a production environment. Here are some of those features: Retry Timeout Logging Headers In this post, I will show how to use the decorator pattern to enhance the Fetch API and add some of these features without modifying the Fetch API itself....
Seven Ideas for creating a highly productive development team
Introduction I have been a member of a development team for a while now and I have seen what works and what doesn’t work. I have seen what makes a development team highly productive and what makes a development team unproductive. Consistent Development Environment The development environment should be consistent across all developers. This is important because it reduces the time it takes to onboard new developers and it also makes it easier for developers to collaborate with each other and debug issues when they arise....
HTTP Refresher
As a full stack engineer, you will be dealing a lot with the ubiquitous HTTP protocol. In this article I will cover various aspects of HTTP that you should know about. By the end of this article, you should have a good understanding of HTTP. This article will server as a reference for you to come back to when you need to brush up on HTTP. I hope you find this article useful and learn something new about HTTP....
isNaN is like gambling
isNaN is a nice function that checks if a value is not a number but has been the source of many sleepless nights and wasted weekends for developers. The reason for this is that isNaN is not a reliable way to check if a value is not a number. Let me show you some examples: Example 1 This is the expected behavior of isNaN. It returns true if the value is not a number and false if it is a number....
My 1st post
In this post, I will discuss different deployment patterns that you can use to deploy your application into production. The point of these deployment patterns is reduce downtime and provide easy rollbacks incase of a defective deployment. The effect of these patterns can be observed using application telemetry data. Recreate Deployment With this deployment pattern, you deploy a new version of your application and delete the existing version of the application....
Progressive Delivery In this post, we will be looking at what progressive delivery is, why it is important and how to do it. we will also compare it with a traditional deployment strategy often referred to as Big Bang Deployment. Traditional Delivery Traditional Deployment or often referred to as Big Bang Deployment is a deployment strategy where the entire application is deployed at once. This is the most common deployment strategy used in the industry today....