My ¢2

My name is Alexei Matyushkin. I was born on October 0, 1973, in Saint-Petersburg, Russia. Nowadays I got used to a nickname “mudasobwa,” proudly granted by rwandian linguists:

Kinyarwanda, the language spoken by most Rwandans, has no words for many basic technical and computing terms, including the very word “computer,” explained Steve Murphy, organizer of the project. After debating whether to borrow English or French terms or come up with their own native word, the group settled on “mudasobwa,” which roughly translates to “something or someone that does not make mistakes.”

Se habla open source?

In One Fell Swoop

I have an experience in C/C++ pointing, Ruby railing, SQL querying, Java threads woodoo magic (and woodoo pleasure since 6.0), Perl crypting, Javascript handling, AJAX inplacing, Python tabbing, LISP bracketing. I have been working with so many unix variants (HP-UX, Solaris, Minix, Linux) that I finally learned the proper plural form ‘unices’. I have managed the jabber client-server apps in Yandex, led warehouse management apps for US customers, developed the metamodelling tool in Berlin and created the medical apps in Saint-Petersburg.


  1. Go drunk solitary. In fine fettle call friends to drink.
  2. Flirt with everyone. Sleep alone.
  3. Know there is somebody around. Forget who.
  4. Do all things in time. Set the deadlines yourself.
  5. Once realized—do approx. Once approxed—forgive.
  6. Got things done?—Dismiss. Fail?—Dare.
  7. Accept the past. Fix a future.
  8. Don’t be afraid of a hate. Fear the indifference.
  9. Believe feelings. Trust in reason.
  10. Bear in mind: you are wiser, hence you are guilty.
  11. P.S.Don’t dodge to supplement.


  • I don’t dread to appear: smart, stupid, arrogant, humble, a womanizer, a misogynist, a chatterbox, a taciturn, a teetotaler, an alcoholic, a dictator, a democrat, reliable, unreliable, white, black and purple.
  • I am affraid to show myself: a bore.

sins (and coss)

  • indifference
  • partiality
  • intellectual laziness
  • envy

Below are the notes I do write when occasionally find smth interesting during hacking (and lamering.)


23 Feb 2018Pattern matching on dynamic struct types
22 Feb 2018Real applications of flip-flop in ruby
20 Feb 2018Why immutability rules
12 Jan 2018Pattern matching on binaries takes over Regex
08 Jan 2018Automate pattern matching for structs
03 Jan 2018Pattern matcher for Protocols
29 Dec 2017.iex.exs to the rescue
23 Nov 2017Idiomatic function memoization in Elixir
15 Nov 2017Clarity Over Verbosity Everywhere
13 Nov 2017Timeo Juniors et ideas ferentes
01 Sep 2017Unveil Erlang Code of Your Elixir Project
27 Jul 2017Workflow as FSM: lost transitions
20 Jun 2017StringNaming to call UTF8 by name
12 May 2017Define module in Elixir with initial binding
24 Apr 2017Use `credo` Linter in Git `pre-commit` Hook
28 Mar 2017`is_empty` Guard for Binaries in Elixir
08 Mar 2017Hack vs Kludge
17 Feb 2017Either Monad in Elixir
27 Dec 2016Iterating Tuples in Elixir
25 Dec 2016Queso al Romero
22 Dec 2016Open Graph Protocol …and Her Friends
21 Dec 2016Fixing Broken Lightbulbs in a Nutshell
19 Dec 2016Dry Behaviour aka Protocol Pattern in Ruby
13 Dec 2016Struct With Hash-like Default Proc
24 Nov 2016Progress Bar in Console for Rake Tasks
09 Sep 2016Use Hooks in Riak to Create Views
11 Aug 2016Howto Read Stack Overflow Comments
30 Jul 2016Thou shalt not make unto thee any graven image
27 Jun 2016Monkeypatch It!
22 Apr 2016StackOverflow Achievements
09 Mar 2016New Hash Syntax for the Rescue
19 Nov 2015Testing migrations
29 Oct 2015Recursion Without Explicit Method
14 Oct 2015Two ways to write ruby code
13 Oct 2015Quotation Marks in XXI Century
02 Sep 2015Pry :: breakpoint or ARGF?
29 Aug 2015CASE-WHEN :: another trick for N+1 problem
14 Apr 2015YAML Parser Tuning
11 Apr 2015Log With Pleasure
03 Mar 2015Don’t be a language slave
24 Jan 2014Using local sources in Gemfile
17 Dec 2013Ruby Memory Pitfalls
09 Dec 2013StackOverflow questions ⇒ Diverse Worlds
06 Nov 2013Command line application wrappers problem
04 Nov 2013Debug inplace
24 Oct 2013EMACS SHIT
05 Sep 2013Sequentional execution: example of Reactor pattern impl
15 Aug 2013Collage directory preview with RMagick
26 Apr 2013Developer Omniboxes for Chrome
06 Apr 2013ABC for Fluent Speakers (NM Level)
04 Apr 2013YADR for Dummies
06 Mar 2013Ruby 2.0 Refinements: Totally Useless Crap
03 Mar 2013Ruby Shorthand to Yield Within Blocks
26 Feb 2013Ruby Predefined Globals
21 Feb 2013Ruby Blocks: Do-end vs. Braces
11 Feb 2013Traceroute to Episode IV
11 Feb 2013Match or Not Die
11 Feb 2013Oll Korrect Cartoon
09 Feb 2013Delightful Logging
05 Feb 2013Make Hash Element Access Painless
04 Feb 2013Ruby Logger :: Temporary Enable Debug for One Class
03 Feb 2013Shorthands in Ruby Code Blocks
02 Feb 2013Multiple Match in Ruby
27 Jan 2013Internet Explorer vs Murder Rate
20 Jan 2013Zsh :: Weird Right Prompt
20 Jan 2013256 Color Term (Nightmare Level)
19 Jan 2013EventMachine :: Nested Calls