Maksym Prokopov personal blog
Idea is a something worth sharing

Два древних языка, которые нужно изучить программисту

08.01.2019
Почему нужно проинвестировать время в изучение двух древних языков Lisp и SmallTalk? Я уверен, что это сделает вас на шаг ближе к стадиям развития специалист и эксперт. Nikita Prokopov сделал отличный talk о стадиях компетентности программиста. Идея в том, что каждый программист на своем пути развития проходит пять стадий развития: Новичек Продвинутый Компетентный Специалист Эксперт Никита ближе к концу доклада на примере собственного опыта сравнивает два языка: Java и Clojure и выдвигает предположение о том, что Java хорош для новичков, а Clojure это глоток свежего воздуха для уставших опытных программистов.
Read More…

How to improve ruby code with dup and tap methods

06.06.2018
Here is a piece of my old code, but it’s definitely could be improved. def to_params h = ticket_params h[:activity] = extract_activity if extract_activity h[:event] = extract_event if extract_event h.delete(:state_event) h.delete(:activities_attributes) h end As you can see here, ‘h’ variable name is quite uncommunicative. Could it be refactored? Let’s see, h=ticket_params. We call this because we don’t want to modify ticket_params. Is there any method which creates a copy? It turns out we have dup method which creates a copy of an object, this is exactly what we wanted.
Read More…

Введение в Prolog

29.05.2018
Хочу такой туториал, с которым все понятно, куда коней запрягать. А его нет. Напишу тогда свой. Итак, Пролог это не обычный язык программирования. Самый лучший пример использования это решение логической задачи типа 5 разных человек в 5 разных домах разного цвета, курят 5 разных марок сигарет, выращивают 5 разных видов животных, пьют 5 разных видов напитков. Вопрос: кто выращивает рыбок? Подсказки: Норвежец живет в первом доме. Англичанин живет в красном доме.
Read More…

Пожалуй, самым точным определением будет слово «осознанность».

27.05.2018
Пожалуй, самым точным определением будет слово «осознанность». Нон-конформизм это тоже своего рода крайность, так как бывает сопротивление ради сопротивления, особенно в пубертатном возрасте. Уметь оценивать и признавать противоположную точку зрения, вот что по-настоящему ценно. Некоторые мои знакомые приходят к осознанности разными путями, кто-то через стремные духовные практики, кто-то через упражнения с ножом или бритвой. Но всегда осознанность означает правильно настроенный жизненный компас.

Brief introduction to the Kubernetes.

26.05.2018
Kubernetes is a winner in docker cloud orchestration, so let’s get a brief introduction in what it is and what kind of problems it solves. Kubernetes is a set of tools designed to solve a problem of deployment of your lovely tailor-made application to a cloud. It does not matter which cloud you choose, AWS, Azure or Google, or even IBM, because Kubernetes provides you with a set of tools which are platform independent.
Read More…

Согласен по всем пунктам!

28.03.2018
Согласен по всем пунктам! Я для себя выделил ещё один признак, это умение проводить собственные размышления над проблемой, особенно если они противоположны общепринятой точке зрения. И, конечно, умение вести дискуссию пользуясь логическими построениями, вместо «ойнувсе».

Noteworthy Clojure projects

18.01.2018
Recently I again dived deeply into Clojure development with my Bank Statements — ERP sync tool and started to investigate what’s new in Clojure world. It appears a lot of great things happend in 2017! Every of following tools drops my jaw down. Here is my list: Lightmod and Nightcode really great editors for Clojure/Clojurescript beginners. Zach Oakes included useful examples to jump into Clojure development train. Dynadoc, documentation exploration tool which makes your work with documentation more effective and interactive.
Read More…

Вещи в веб-деве, которые меня действительно впечатлили

16.01.2018
Lightmod и Nightcode редактор с подсветкой синтаксиса, где Clojure и ClojureScript работают из коробки и есть несколько хороших примеров кода прямо в той же коробке. Удивительно, какие вещи может сделать один человек. Проекты также содержат интерактивный REPL прямо на странице ClojureScriptа. Впрочем, это лучше показать. ClojureScript REPL right in your Google Chrome Dirac. Лучше всего за себя скажет сам скриншот Dirac. Отличная поддержка ClojureScript прямо в вашем браузере! В этом же контексте имеет смысл посмотреть на paren-soup онлайн редактор для Clojurescript.
Read More…

Про редакторы и IDE

10.01.2018
Я люблю время от времени тыкать палочкой в различные редакторы и пробовать их в своей работе. Сейчас появилось очень много интересных и быстрых штук типа Sublime, Atom, LightTable. Ребята из Jetbrains создают отличные (но медленные и прожорливые) IDE типа WebStorm, RubyMine, PyCharm. Также небезынтересно было посмотреть, что и как используют сейчас в качестве редактора другие программисты https://github.com/A/code-screenshots. И, конечно, незабвенные Vim и Emacs. Уверен, что постигнуть нужно оба редактора. Первый, обязательно, за дружелюбность к пальцам, которая перерастает при помощи двигательной памяти в такую производительность управления текстом, которую очень непросто достигнуть конкурентам.
Read More…

Моноколесо Ninebot One S2: Ремонт прокола камеры своими руками

01.11.2017
Однажды ехал вечером домой и не заметил достаточно глубокую яму. После обследовал колесо: включается-выключается, крутится, но шина спущена. Взял в руки потерпевшего и понес 🙂 Насмотрелся видео с разбором колеса до хорошего доступа к шине, также посмотрел видео, где кто-то умудрился заклеить колесо не разбирая. Но у меня не настолько хороши навыки гинеколога, чтобы повторить подобную процедуру. Что понадобилось мне для ремонта: шестигранники, маленький чтобы открутить небольшой винт снизу педали, побольше для раскрутки основных винтов, которые держат крышку и еще чуть больше, чтобы открутить педали.
Read More…