January this year was a good month, the truth is that coming back to work after taking time off is always difficult. However I still believe January 2017 was productive, both personally and professionally.
I was able to spend a significant amount of time Dockerizing some of our Ruby (and Ruby on Rails) applications. My personal goal was to:
- Prepare automated Docker images to be built during CI for our QA to verify, I used templenv and the Gitlab API to connect everything. It was a success.
- Have a Docker-based development environment. It sort of worked, but I will not call it a success.
Sadly having a Docker-based development environment on Mac is currently a painful experience, specially because of the following two bugs:
- File access in mounted volumes extremely slow this is the blocker issue to me, because not having shared volumes means not having a clean way to share your changes with your container. There are workarounds like d4m-nfs, but still it’s annoying:
- Docker.qcow2 never shrinks - disk space usage leak in docker for mac, not a real blocker, unless you forget to remove the file from time to time; also it seems to be sort of fixed in the most recent version, so it’s getting better.
Surprisingly, I tried our generated docker-compose.yml files on Windows, and it worked even better! Microsoft Windows did not disappoint this time.
Let's play with Docker on Windows for a bit pic.twitter.com/pcsHrIGRjX— Mario Carrion (@mariocarrion) February 1, 2017
Besides that I was able to research a bit about writing shared libraries in Go for loading them in Ruby (with FFI), for some our compute-intensive tasks; R&D worked nicely, I just need to actually write the legit version of this, make sure memory is freed accordingly and profit.
I was able to finish reading four books:
- Ruby Performance Optimization
- Monitoring Docker
- Getting Started with Kubernetes
- Docker Networking Cookbook
And I’m currently reading my first Internet of things book called Building the Web of Things, also I got a haircut:
I got a haircut therefore I need a new gopher pic.twitter.com/xgafvqcOP4— Mario Carrion (@mariocarrion) February 1, 2017
What am I planning for February 2017?
Finish reading Building the Web of Things and at least 3 more books, I’m planning to finish the other two books I mentioned in my previous post: Go Design Patterns and Go Programming Blueprints - Second Edition, as well as my first AWS Lambda book, surprisingly titled: AWS Lambda in Action.
I will be updating templenv to add a new function to be used in the templates, and blog more often about technical stuff, I have a few drafts already waiting to be published. Good times.