Achieving Continuous Delivery. Part 1. What are the CI/CD?

This will be the start of the series of blog posts with the title “Achieving Continuous Delivery”, which I plan to write about in the upcoming few months. Topics I plan to cover are:

  1. What is the difference between CI and CD? Two meanings of CD. What is the business value in it? The tooling we will be using in the series
  2. Dockerization of a basic application
  3. Dockerization of an application, which has external dependencies (we will have just a database)
  4. Build service preparation. I will definitely cover TravisCI and probably some others for a comparison
  5. Preparing Staging and Production environments, using Heroku and integrating them into the CI pipeline
  6. Getting closer to the Continuous Delivery with feature toggles

After that, if I will still have an interest, I will also cover the AWS way of going from classical ELB+EC2 to the containerized approach, but won’t commit for this for now. Also, as you know, along the way people tend to change their mind and forgotten steps may appear or in the opposite, some steps will be too easy, so they will be merged with one another. Otherwise, all our estimations would be perfectly precise %)

However, let’s get started with the definitions, to understand, what we’re trying to tell and achieve when we’re talking about CI/CD.

Continue reading

Go for Rubyists. Part 8. Concurrency in Go, Ruby and Elixir

Hey folks, hope you had a great weekend and it’s time to learn something new!
Today we will observe the concurrency topic, and since it’s not such a fair comparison for Ruby, who’s forte is definitely not a concurrency, I will add Elixir to today’s article. However, still, since the series is about Go, the main focus will be on it. Don’t expect performance comparison, I believe it’s not fair to compare these languages since they all have slightly different focuses.

Continue reading

Golang for Rubyists. Part 7. Ruby and Golang, methods comparison

Hello, my dear friends. We all love Ruby (you too, right?) for its expressiveness and a set of useful methods out of the box. It would be a pleasure if when start using a new language, you had the similar methods or at least familiar ways to achieve same goals. Let’s try to pick a few useful methods from Ruby and find out, are there any equivalents in Golang for them.

Continue reading

Golang for Rubyists. Part 5. How to start applying Golang to AWS Lambda

In the company I work for, we recently started using Golang for lambda functions development, to replace domination of Node.js ones and with a hope of getting better performance and development speed. I can just say that so far things run smoothly, and I will have a more thorough post about lambdas development on Go on the company blog. And here I will help you get started with it, create your first function and deploy it to the cloud.
Continue reading