Plans for 2017

Personal

  • Brush up (most probably by starting from the basics) my German language skills
  • Start tracking expenses, again
  • Pass a Polish language exam
  • Teach Kira how to ride a bicycle, finally
  • Run a marathon
  • Play 2 etudes with Kira
  • Draw a vector banner
  • Read 20 books

Technical

  • Learn Python
  • Learn either Rust or Go, presumably both
  • Improve my data skills, implement at least 2 data-concerned apps as side projects
  • Migrate this website to Jekyll
  • Teach my wife a programming language that has a lean learning curve to the level at which she could write her own scripts
  • Improve my TopCoder/HackerRank profile, finish reading at least 2 algorithms-related books throughout the year

2016 Year Resolution

GENERAL

  • Read 12 books
  • Gave a talk regarding Akka Persistence
  • Went from a role in management to a technical developer/DevOps role

TECHNICAL

Languages I’ve used and abused throughout the year:

  • Scala – 6/10 Nice language, though it needs too much attention in comparison with other languages I know and the code is less beautiful than in Clojure/Lisp, some parts are clunky
  • Javascript – 7/10 Easy to use, refreshed my knowledge of ES6 in a couple of hours, enormous ecosystem, ugly
  • Bash – 4/10 – After I’ve started to use bash more it has become a huge disappointment for me as its capabilities are very limited
  • Python – can’t really put a score for it since I haven’t really learned it. However, that didn’t stop me from using it. Nice language, but some parts are really lame and disputable.

Technologies:

  • React/Redux – 7/10 Nice framework, its ubiquitous usage of FP paradigms helps are lot to educate the newcomers. Though I find it less productive than Angular. Nevertheless, it was just this year’s JS framework that got most of the hype
  • Docker – 10/10 Initially, I was diminishing its importance due to its apparent simplicity and my shallow knowledge of it. But after I wrap by head around it and saw some of its features in integration with other products my mind was blown. It’s the technology of the year for me. I’m not going ever to install anything on a Vagrant machine myself since there’s Docker for Mac since this year.
  • AWS – 7/10 Worked with RDS, Dynamo, CloudFormation, S3 (Scala driver written by enthusiasts sucks), Route53, EC2, ECS, Elastic BeansTalk. I have no idea why would anyone build their own private cloud whatsoever since Amazon has most of the features you need, though at a price.
  • Couchbase – 6/10 Mongo-like in-memory database, works fast, search/aggregation/API is ugly.
  • PostgreSQL – 8/10 Solid as a rock, has rightfully claimed a space in my heart as a default relational DB I’d use for my projects. JSON integration works there. Makes MySql irrelevant.
  • Spark/AKKA – 8/10 Cool tech, though sometimes have unpredictable behavior due to inherited complexity from other technologies they’re built upon
  • SBT/AKKA.NET – 5/10 Both are having a steep learning curve, though after you’ve spent your time on learning them are nice. Unfortunately, there’re other tools/technologies much friendlier/productive for their users.
  • Mesos/Marathon – 8/10 Hard to understand, though unbelievably powerful. Gives you autoscaling/loadbalancing out of the box

Personal

  • Went to a swimming pool once per week
  • Taught my daughter swimming
  • Went to see 8 countries
  • Started to play piano
  • Learned a new foreign language – Polish
  • Bought an apartment
  • Went to see how my son was born
  • Rode a bicycle throughout the year
  • Swam in Adriatic Sea

Bash for beginner book review

As my previous attempts to fully learn Bash had been short-living and sporadic I’ve decided that this time I’m going to fully master it in order to prevent myself from writing one-off scripts on high-level languages to do simple stuff that can be easily lifted by Bash.

This book is a great introduction for those who are real new comers, though I thought of myself as of the same kind.

Turns out that’s not the right book for me as it’s not focused on particular aspects I’m interested in (networking, IO). However, it’s nicely written and it will definitely help if you want to have a high-level view on the most important Bash features.

n-lingual

First, I need to confess. I know a half of a dozen of different languages, among them I use 3 of them on a daily basis. Even though I’ve started to learn most of them relatively early due to lack of practice and absence of communication with native speakers my accent is thick. I also do a lot of typical mistakes influenced by my native Slavic language (i.e. I miss the nouns most of the time when I use Germanic-based languages).

But what has recently struck me is that if you know more that one foreign language and you use them day-to-day some tumbler in your head switches and suddenly you’re able to absorb new languages by means of pure anticipation and understanding of common principles that all languages are based upon.

Interestingly, the same idea has struck my daughter who’s already multilingual even though she’s only 5. I wonder how many languages will she be able to speak whilst she’ll be my age.

Next year’s summer trip

This year we were on the beautiful Adriatic coastline as well as we toured most of magnificent Italy, astonishing Croatia, and most importantly Slovenia that completely stole my heart as it’s the most beautiful country I’ve been so far.

Next year the plan is to meet our peers in Bulgaria along with visiting the birthplace of Slavic culture in Greece, not to mention checking out Macedonian wine and probably Belgrade will look better while the sun is shining there.