Create AWS Cloudfront invalidations upon CodePipeline release
For a project, we are using AWS CloudFront to host and serve static files like images and CSS. These assets are deployed to CloudFront through AWS Codepipeline. But, Cloudfront caches these assets to serve them faster through their Edge locations. The ...
Polymorphic Associations in Elixir
If you're coming from Ruby on Rails, you're probably familiar with the polymorphic associations between resources and you probably miss them in Elixir. We recently had to migrate a Rails functionality to Elixir without making any changes to our database, so ...
We are not a technology company
I often speak to non-technology company leaders about the endless possibilities technology offers and how it can practically solve any of their business problems. One of the most common objections I get is: #### *“We are not a technology company!”* That ...
How much does AWS cost and is it worth
When I talk to clients about cloud services and AWS the topic about pricing always comes up and even though people have actually no idea how much AWS will cost for their project, they have this notion that AWS would be ...
Set an SSL certificate (HTTPS) on an AWS Elastic Beanstalk environment without a load balancer
1. Concatenate the SSL files 2. Prepare private key 3. Upload to certificate files to S3 4. Configure the proxy server to use the SSL certificates
This guide illustrates how to set ...
Potential obstacles for implementing Machine Learning in your company
Machine Learning is getting more and more popular and accessible, but implementing it is still not a trivial task.
There are a few vital things in the process of introducing Machine Learning that might turn out to be thorns in your ...
Why your software project is failing
Everybody is building software nowadays. Companies of all sizes and industries are afraid of getting left behind so the innovation hype is stronger than ever.
Speaking to companies, I realize there's one thing they all share - stories of failed/late/expensive projects, ...
Advanced database seeding in Rails applications
By default, Rails ships with a built-in feature for seeding initial data into a database. You can learn more about it here. It’s a great way to set initial data in development, staging or even in some production cases. ...
Antipaterns to avoid for building microservices-based systems
We are proponents of the idea that if you want a scalable software system, there’s no other path, but the microservices one. The idea behind microservices is simple - instead of building a monolithic application, break down your logic into small ...
Common traps with message queues based communication (AWS SQS)
Message queues are a great way to distribute data across microservices and for asynchronous communication. Our team uses queues to handle the following:
- communication between microservices;
- for extracting long running jobs and decoupling;
- to handle request spikes;
- pub-sub.
5 tips for becoming a better software developer
Many new programmers believe that being a good software developer is all about deep technical knowledge and having years of experience writing complex algorithms. That might be true to an extent, but having the right mindset and understanding the essence of ...
How to install PDFtk on an AWS Elastic Beanstalk environment
If you need help installing PDFtk on an ElasticBeanstalk instance, this post will help you out. Although EB is an awesome service when it comes deploying, provisioning, load-balancing and scaling applications, installing additional packages can be a little tricky from time ...