41554 blogs · [ { "id": "01a087d6-e992-7329-bbab-68f040bfac00", "title": "Envío as a reincarnation of GenEvent²", "url": "https://rocket-science.ru/hacking/2018/07/30/envio-as-genevent-2-0", "published_at": "2018-07-30T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f040f96a2d", "title": "Ruby Challenges as QotD", "url": "https://rocket-science.ru/hacking/2018/05/31/qotd-ruby-challenges", "published_at": "2018-05-31T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f04124d01e", "title": "These Weird Accents", "url": "https://rocket-science.ru/hacking/2018/05/29/these-weird-accents", "published_at": "2018-05-29T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f041b1583f", "title": "To IF Or Not To IF—That’s The Conditional Statement", "url": "https://rocket-science.ru/hacking/2018/05/21/to-if-or-not-to-if", "published_at": "2018-05-21T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f04258435c", "title": "Interview on Senior Poet Position", "url": "https://rocket-science.ru/jokes/2018/05/17/interview-on-senior-poet-position", "published_at": "2018-05-17T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f04346ca1e", "title": "Elixir Iteraptor :: Iterating Nested Terms Like I’m Five", "url": "https://rocket-science.ru/hacking/2018/04/06/iteraptor-for-elixir", "published_at": "2018-04-06T00:00:00+00:00" }, { "id": "01a087d6-e992-7329-bbab-68f043ec5425", "title": "Iteraptor :: Iterating Nested Terms Like I’m Five", "url": "https://rocket-science.ru/hacking/2018/03/29/iteraptor-for-the-rescue", "published_at": "2018-03-29T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b015ec6b95", "title": "Elixir Pipeline Operators", "url": "https://rocket-science.ru/hacking/2018/03/16/elixir-pipeline-operators", "published_at": "2018-03-16T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b015fad6f2", "title": "Beware of YAGNI", "url": "https://rocket-science.ru/tips/2018/03/06/beware-of-yagni", "published_at": "2018-03-06T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b016854bb4", "title": "Pattern matching on dynamic struct types", "url": "https://rocket-science.ru/hacking/2018/02/23/pattern-matching-on-dynamic-struct-types", "published_at": "2018-02-23T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b016c59f77", "title": "Real applications of flip-flop in ruby", "url": "https://rocket-science.ru/hacking/2018/02/22/flip-flop-real-application", "published_at": "2018-02-22T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b0175aa3eb", "title": "Why immutability rules", "url": "https://rocket-science.ru/hacking/2018/02/20/why-immutability-rules", "published_at": "2018-02-20T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01775fef8", "title": "Pattern matching on binaries takes over Regex", "url": "https://rocket-science.ru/hacking/2018/01/12/parse-cumbersome-data", "published_at": "2018-01-12T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b017cc6d82", "title": "Automate pattern matching for structs", "url": "https://rocket-science.ru/hacking/2018/01/08/automate-struct-pattern-matching", "published_at": "2018-01-08T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b018ca12a9", "title": "Pattern matcher for Protocols", "url": "https://rocket-science.ru/hacking/2018/01/03/pattern-matcher-for-protocols", "published_at": "2018-01-03T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01907d11c", "title": ".iex.exs to the rescue", "url": "https://rocket-science.ru/hacking/2017/12/29/iex.exs-to-the-rescue", "published_at": "2017-12-29T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b0194f54e9", "title": "Idiomatic function memoization in Elixir", "url": "https://rocket-science.ru/hacking/2017/11/23/idiomatic-function-memoization-in-elixir", "published_at": "2017-11-23T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b019a02d0b", "title": "Clarity Over Verbosity Everywhere", "url": "https://rocket-science.ru/culture/2017/11/15/clarity-over-verbosity-everywhere", "published_at": "2017-11-15T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01a7553c2", "title": "Timeo Juniors et ideas ferentes", "url": "https://rocket-science.ru/culture/2017/11/13/juniors-and-ideas", "published_at": "2017-11-13T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01abf1195", "title": "Unveil Erlang Code of Your Elixir Project", "url": "https://rocket-science.ru/hacking/2017/09/01/unveil_erlang_code_of_your_elixir_project", "published_at": "2017-09-01T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01ad78250", "title": "Workflow as FSM: lost transitions", "url": "https://rocket-science.ru/hacking/2017/07/27/workflow-as-fsm", "published_at": "2017-07-27T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01b81f40d", "title": "StringNaming to call UTF8 by name", "url": "https://rocket-science.ru/hacking/2017/06/20/string-naming-module", "published_at": "2017-06-20T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01c7a3dc4", "title": "Define module in Elixir with initial binding", "url": "https://rocket-science.ru/hacking/2017/05/12/defmodule-with-binding-implementation", "published_at": "2017-05-12T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01c95a0ad", "title": "Use `credo` Linter in Git `pre-commit` Hook", "url": "https://rocket-science.ru/hacking/2017/04/24/git-commit-credo-linter-hook", "published_at": "2017-04-24T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01cf90feb", "title": "`is_empty` Guard for Binaries in Elixir", "url": "https://rocket-science.ru/hacking/2017/03/28/is-empty-guard-for-binaries", "published_at": "2017-03-28T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01debfff4", "title": "Hack vs Kludge", "url": "https://rocket-science.ru/hacking/2017/03/08/hack-vs-kludge", "published_at": "2017-03-08T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01ec25558", "title": "Either Monad in Elixir", "url": "https://rocket-science.ru/hacking/2017/02/17/either-monad-in-elixir", "published_at": "2017-02-17T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01f1366e7", "title": "Iterating Tuples in Elixir", "url": "https://rocket-science.ru/hacking/2016/12/27/iterating-tuples-in-elixir", "published_at": "2016-12-27T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01f155c8c", "title": "Queso al Romero", "url": "https://rocket-science.ru/hobby/2016/12/25/queso-al-romero", "published_at": "2016-12-25T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b01f42ea11", "title": "Open Graph Protocol …and Her Friends", "url": "https://rocket-science.ru/hacking/2016/12/22/open-graph-protocol-and-friends", "published_at": "2016-12-22T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b0203d6103", "title": "Fixing Broken Lightbulbs in a Nutshell", "url": "https://rocket-science.ru/fun/2016/12/21/fixing-broken-lightbulbs-in-a-nutshell", "published_at": "2016-12-21T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b020c0029f", "title": "Dry Behaviour aka Protocol Pattern in Ruby", "url": "https://rocket-science.ru/hacking/2016/12/19/dry-behaviour", "published_at": "2016-12-19T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b021176413", "title": "Struct With Hash-like Default Proc", "url": "https://rocket-science.ru/hacking/2016/12/13/struct-with-default-proc", "published_at": "2016-12-13T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b021ff0c5d", "title": "Progress Bar in Console for Rake Tasks", "url": "https://rocket-science.ru/hacking/2016/11/24/progress-bar-for-dummies", "published_at": "2016-11-24T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b02280dac2", "title": "Use Hooks in Riak to Create Views", "url": "https://rocket-science.ru/hacking/2016/09/09/riak-hooks-for-quick-views", "published_at": "2016-09-09T00:00:00+00:00" }, { "id": "01a087d6-e993-73d2-a6a0-55b022a3a240", "title": "Howto Read Stack Overflow Comments", "url": "https://rocket-science.ru/culture/2016/08/11/how-to-read-so-comments", "published_at": "2016-08-11T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d26ba40f6", "title": "Thou shalt not make unto thee any graven image", "url": "https://rocket-science.ru/culture/2016/07/30/thou-shalt-not-make-unto-thee-any-graven-image", "published_at": "2016-07-30T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d27b67d2f", "title": "Monkeypatch It!", "url": "https://rocket-science.ru/hacking/2016/06/27/monkeypatch-it", "published_at": "2016-06-27T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d28b409df", "title": "StackOverflow Achievements", "url": "https://rocket-science.ru/hacking/2016/04/22/stack-overflow-achievements", "published_at": "2016-04-22T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d28d47a1d", "title": "New Hash Syntax for the Rescue", "url": "https://rocket-science.ru/hacking/2016/03/09/new-hash-syntax-for-the-rescue", "published_at": "2016-03-09T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d29abe80b", "title": "Testing migrations", "url": "https://rocket-science.ru/hacking/2015/11/19/testing-migrations", "published_at": "2015-11-19T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d29c0acaf", "title": "Recursion Without Explicit Method", "url": "https://rocket-science.ru/hacking/2015/10/29/recursion-without-explicit-method", "published_at": "2015-10-29T00:00:00+00:00" }, { "id": "01a087d6-e994-729b-a224-f77d2a2a85a5", "title": "Two ways to write ruby code", "url": "https://rocket-science.ru/hacking/2015/10/14/two-ways-to-write-ruby-code", "published_at": "2015-10-14T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e909ed3cb", "title": "Quotation Marks in XXI Century", "url": "https://rocket-science.ru/hacking/2015/10/13/quotation-marks-in-XXI-century", "published_at": "2015-10-13T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e91736c57", "title": "Pry :: breakpoint or ARGF?", "url": "https://rocket-science.ru/hacking/2015/09/02/pry-and-stdin", "published_at": "2015-09-02T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e91d8b4cf", "title": "CASE-WHEN :: another trick for N+1 problem", "url": "https://rocket-science.ru/hacking/2015/08/29/active-record-case-when", "published_at": "2015-08-29T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9246f95e", "title": "YAML Parser Tuning", "url": "https://rocket-science.ru/hacking/2015/04/14/yaml-parser-tuning", "published_at": "2015-04-14T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e92f39394", "title": "Log With Pleasure", "url": "https://rocket-science.ru/hacking/2015/04/11/log-with-pleasure", "published_at": "2015-04-11T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e93aa1fe2", "title": "Don’t be a language slave", "url": "https://rocket-science.ru/hacking/2015/03/03/dont-be-a-language-slave", "published_at": "2015-03-03T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9410c9e4", "title": "Using local sources in Gemfile", "url": "https://rocket-science.ru/hacking/2014/01/24/using-local-sources-in-gemfile", "published_at": "2014-01-24T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e950e63d9", "title": "Ruby Memory Pitfalls", "url": "https://rocket-science.ru/hacking/2013/12/17/ruby-memory-pitfalls", "published_at": "2013-12-17T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9569a4c6", "title": "StackOverflow questions ⇒ Diverse Worlds", "url": "https://rocket-science.ru/fun/2013/12/09/stackoverflow-questions-diverse-worlds", "published_at": "2013-12-09T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e957f7abc", "title": "Command line application wrappers problem", "url": "https://rocket-science.ru/hacking/2013/11/06/command-line-application-wrappers-problem", "published_at": "2013-11-06T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e96366bb4", "title": "Debug inplace", "url": "https://rocket-science.ru/hacking/2013/11/04/debug-inplace", "published_at": "2013-11-04T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e96a885fa", "title": "EMACS SHIT", "url": "https://rocket-science.ru/fun/2013/10/24/emacs-shit", "published_at": "2013-10-24T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e96dc5b40", "title": "Sequentional execution: example of Reactor pattern impl", "url": "https://rocket-science.ru/hacking/2013/09/05/sequentional-execution-example-of-reactor-pattern-impl", "published_at": "2013-09-05T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e978df104", "title": "Collage directory preview with RMagick", "url": "https://rocket-science.ru/hacking/2013/08/15/collage-directory-preview-with-rmagick", "published_at": "2013-08-15T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e97a5257f", "title": "Developer Omniboxes for Chrome", "url": "https://rocket-science.ru/hacking/2013/04/26/developer-omniboxes-for-chrome", "published_at": "2013-04-26T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9806f7a4", "title": "ABC for Fluent Speakers (NM Level)", "url": "https://rocket-science.ru/fun/2013/04/06/abc-for-fluent-speakers-nm-level", "published_at": "2013-04-06T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9862a774", "title": "YADR for Dummies", "url": "https://rocket-science.ru/shell/2013/04/04/yadr-for-dummies", "published_at": "2013-04-04T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e98de3699", "title": "Ruby 2.0 Refinements: Totally Useless Crap", "url": "https://rocket-science.ru/hacking/2013/03/06/ruby-20-refinements-totally-useless-crap", "published_at": "2013-03-06T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e99922e78", "title": "Ruby Shorthand to Yield Within Blocks", "url": "https://rocket-science.ru/hacking/2013/03/03/ruby-shorthand-to-yield-within-blocks", "published_at": "2013-03-03T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e99e3a476", "title": "Ruby Predefined Globals", "url": "https://rocket-science.ru/tips/2013/02/26/ruby-predefined-globals", "published_at": "2013-02-26T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9ae01d95", "title": "Ruby Blocks: Do-end vs. Braces", "url": "https://rocket-science.ru/tips/2013/02/21/ruby-blocks-do-end-vs-braces", "published_at": "2013-02-21T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9b511c77", "title": "Traceroute to Episode IV", "url": "https://rocket-science.ru/fun/2013/02/11/traceroute-to-episode-iv", "published_at": "2013-02-11T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9c124bbd", "title": "Match or Not Die", "url": "https://rocket-science.ru/hacking/2013/02/11/match-or-not-die", "published_at": "2013-02-11T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9cadd904", "title": "Oll Korrect Cartoon", "url": "https://rocket-science.ru/fun/2013/02/11/all-correct-cartoon", "published_at": "2013-02-11T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9d157f10", "title": "Delightful Logging", "url": "https://rocket-science.ru/hacking/2013/02/09/delightful-logging", "published_at": "2013-02-09T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9d3b97f4", "title": "Make Hash Element Access Painless", "url": "https://rocket-science.ru/hacking/2013/02/05/make-hash-element-access-painless", "published_at": "2013-02-05T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9db2eead", "title": "Ruby Logger :: Temporary Enable Debug for One Class", "url": "https://rocket-science.ru/hacking/2013/02/04/ruby-logger-temporary-enable-debug-for-one-class", "published_at": "2013-02-04T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9de8324a", "title": "Shorthands in Ruby Code Blocks", "url": "https://rocket-science.ru/hacking/2013/02/03/shorthands-in-ruby-code-blocks", "published_at": "2013-02-03T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9e14a865", "title": "Multiple Match in Ruby", "url": "https://rocket-science.ru/hacking/2013/02/02/multiple-match-in-ruby", "published_at": "2013-02-02T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9e51f8cb", "title": "Internet Explorer vs Murder Rate", "url": "https://rocket-science.ru/fun/2013/01/27/internet-explorer-vs-murder-rate", "published_at": "2013-01-27T00:00:00+00:00" }, { "id": "01a087d6-e995-7357-85ae-465e9f228e0d", "title": "Zsh :: Weird Right Prompt", "url": "https://rocket-science.ru/shell/2013/01/20/zsh-weird-right-prompt", "published_at": "2013-01-20T00:00:00+00:00" }, { "id": "01a087d6-e996-70e1-b753-3da84dcc323a", "title": "256 Color Term (Nightmare Level)", "url": "https://rocket-science.ru/shell/2013/01/20/256-color-terminal", "published_at": "2013-01-20T00:00:00+00:00" }, { "id": "01a087d6-e996-70e1-b753-3da84e18e87e", "title": "EventMachine :: Nested Calls", "url": "https://rocket-science.ru/hacking/2013/01/19/event-machine-nested", "published_at": "2013-01-19T00:00:00+00:00" } ] posts Claim your blog
Back to rocket-science.ru
Blog · corpus.blog/blogs/rocket-science.ru/posts

rocket-science.ru

rocket-science.ru

2018

2017

2016

2015

2014

2013