Поддержка целостности проекта в Python требует усилий

Опубликовано 06 October 2017 в Python • Помечено python

Python позволяет программисту довольно много. Это очень выразительный язык. Его динамическая природа даёт возможность делать элегантные решения, которые довольно сложно представить, к примеру, в Java.

Тем не менее за все надо платить. При росте кодовой базы, проекты на Python начитают требовать всё больше и больше ресурсов на поддержание своей целостности. Без некоторых усилий проект начинает разваливаться на куски.


Продолжить чтение

Хэш-функция для функции в Python

Опубликовано 12 September 2017 в Python • Помечено python, cpython

Пару недель назад один из моих коллег задал вопрос: можно ли использовать функцию в качестве ключей словаря? Да, можно. У каждой функции в Питоне есть хеш. Но как он считается? На основе имени функции? На основе байт-кода? В действительности, хэш считается трансформацией над указателем на объект функции. Тем не менее, не так-то легко отыскать эти расчеты в коде CPython.


Продолжить чтение

Success in Programming. Обзор Книги

Опубликовано 17 August 2017 в Обзоры • Помечено брендинг, книга, индустрия

Персональный бренд - тема не так часто обсуждаемая среди программистов. В действительности, я знаю всего несколько людей, обладающих сильным персональным брендом, и всего двоих, кто рассказывает о построении личного бренда программистам. Один из них - Фредерик Харпер (Frederic Harper) с его книгой “Success in Programming.”


Продолжить чтение

Структуры данных и алгоритмы в Java (2-е издание)

Опубликовано 15 August 2017 в Обзоры • Помечено java, лафоре, алгоритмы

Для меня основное достоинство книги "Структуры данных и алгоритмы в Java" - язык которым автор описывает алгоритмы. Он не использует сложный академический язык, приправленный тонной высшей математики. Роберт Лафоре использует простой язык и пытается дать максимально простое объяснение, какое только возможно, каждому алгоритму.


Продолжить чтение

Горячие клавиши Emacs в русской раскладке

Опубликовано 10 June 2017 в Редакторы и IDE • Помечено emacs, layout

Думаю вы как и я не можете позволить себе пользоваться только английской раскладкой клавиатуры. Так или иначе для работы приходится использовать обе: и русскую, и английскую. В целом, это не доставляет никаких проблем, пока дело не касается Emacs. Не знаю почему, но в нем горячие клавиши в русской раскладке просто перестают работать. Видимо, сказывается страшное наследие "ASCII - единственно возможный набор символов для всех языков мира". Возможно, есть какие-то другие причины. Тем не менее, в Emacs есть свой довольно странный способ переключение раскладок (Input Method в терминах Emacs): C-\. Я никогда не находил этот вариант приемлемым и переключался на английскую раскладку каждый раз. Но я все-таки нашел способ как избежать этого и заставить горячие клавиши работать вне зависимости от раскладки клавиатуры.


Продолжить чтение