Учиться тяжело
Хорошее обучение - это выход за границы возможного, делание того, чего не делал раньше. Можно каждый день бегать 3 километра в комфортном режиме и не особо прогрессировать (иногда это нормально, если цель - расслабление после дневной "вахты" за компьютером), а можно каждый раз стараться пробежать немного быстрее и это непросто ...
Сегодня мне очень удачно попался замечательный комментарий про ощущение себя самым умным и про то, как решать действительно сложные задачи. Эти два вопроса очень важны для меня в последнее время, поэтому воспользуюсь таким прекрасным поводом поделиться своими находками.
Быть "самым умным"
Я закончил школу с отличием. И институт тоже. Побеждал ...
Этой осенью я обычно просыпаюсь в 5-6 часов утра, чтобы учиться в ai-class.com и ml-class.org. Позади 6 из 10-ти учебных недель. Уже десяток раз я восклицал "Ну почему же я не начал так учиться год назад?!". Эти курсы изменили меня - открыли новые интересные предметные области и помогли вспомнить ...
С большим удовольствием читаю книгу "Programmers at work", выпущенную в 1989 году. Думаю, что она понравится всем тем, кому понравилась книга "Coders at work" (также известная как "Кодеры за работой"). Ниже - некоторые цитаты, которые я уже подчеркнул (а я еще в самом начале книги).
SIMONYI:
I think the listing gives ...

Понедельничной ночью 1-го августа, примерно в 03:30 пять человек потихоньку укладывали ноутбуки в свои рюкзаки и выходили из офиса чтобы разъехаться по домам. Кто-то на такси, кто-то на своей машине. Еще трое ушли несколькими часами раньше. Закончились двое суток напряженного труда над созданием проектов в рамках конкурса Django Dash ...
Вчера Лев рассказывал про то, что отличает Силиконовую долину от России-Украины и что нам делать чтобы появилась среда, благоприятная для стартапов.
Горизонтальная коммуникация
Первым большим сдерживающим фактором на постсоветском пространстве является остутствие горизонтальной коммункации.
Вертикальная коммуникация: разработчик - менеджер - сейлз - клиент.
Горизонтальная: программист компании Luxoft - программист компании Grammarly - студент университа - программист ...
Вчера ходили с @vseloved и @matveym на выступление Льва Валкина про функциональное программирование в целом и Erlang в частности. Кратко запишу основные тезисы, которые мне очень актуальны.
Новый набор инженерных принципов, непривычных для императивных языков
Функциональные языки дают возможность поработать с другими способами построения программных систем. Эти новые способы позволяют ...
Меня давно интересует вопрос "Стоит ли мне работать руководителем?". В прошлую пятницу я был в Москве и разговаривал там с моим одноклассником Костей Кузнецовым. Много лет назад он был для меня проводником в мир компьютеров. Костя сам является отличным программистом, а сейчас руководит командой из 20 человек и скоро станет ...
Вчера начал работать над новым большим проектом. В нем понятно что нужно получить на выходе, но совершенно не понятно как это сделать. Очень много нетехнических задач, исследований, экспериментов. И я чувствую страх. Страх, что "вот, блин, непонятно что-именно программировать, нужно самому все придумывать".
Но у меня есть опыт таких проектов ...
Django Dash - международный конкурс, в котором компактные спецназ-команды за 48 часов создают полноценный проект. Правила простые:
- бОльшая часть кода должна использовать django
- никакого кода до соревнования (только идеи и бумажные прототипы)
- команда не больше 3 человек
- git или mercurial для хранения исходных кодов
- ваш проект должен быть open source
- можно ...
Интересные ссылки
3 августа с 6 до 9 вечера. Лев - редактор журнала "Практика функционального программирования" и CTO компании Echo
Простое и четкое объяснение механизма __slots__ (via @raymondh)
Tom Preston-Werner (сооснователь и CTO github.com) рассказывает про git, показывая в консоли как он сам пользуется гитом. Я скоро два года как пользователь git'a, но все же узнал интересные вещи.
"The biggest rule is that the point of code review is to find problems in code before it gets committed - what you're looking for is correctness. The most common mistake in code review - the mistake that everyone makes when they're new to it - is judging code by whether it's what the reviewer would have written."
Замечательная бесплатная Khan Academy начала издавать видео-лекции по Computer Science с примерами на Python. И как они пишут в комментариях к одному видео "Google uses it [Python] for a lot of their development (I believe it is their language of choice). Khan Academy's server side code is all Python."
"Wikipedia says software erosion is "slow deterioration of software over time that will eventually lead to it becoming faulty [or] unusable" and, importantly, that "the software does not actually decay, but rather suffers from a lack of being updated with respect to the changing environment in which it resides."
Если еще не читали 2 статьи на близкую тему в блоге Ивана Сагалаева, рекомендую прочитать: Вместе или врозь, Вместе или врозь: новая идея
А вот и видео с DjangoCon Europe подоспели. Их по традиции выложили на blip.tv (в отличии от Europython, которые выложили на амазоновский cloudfront).
Видеозаписи выложены на страничках с выступлениями. (via reddit)
Обновил в соответствии с новыми фичами Django 1.3, подчистил и выложил в открытый доступ код этого блога.
Очень простое django app, которое делает "Sign in with Twitter".