Хрум

Июль 14, 2011 under Моё

Около десяти лет назад на уроках программирования я знакомился со Схемой (Scheme) — диалектом Лиспа (LISP). К тому времени я уже неплохо ориентировался в C и C++, что в один прекрасный день привело меня к такой мысли: что если бы губы Никанора Ивановича да приставить к носу Ивана Кузьмича, а к синтаксической строгости Лиспа добавить объектную ориентированность Плюсов, должна получиться конфетка. Мысль сию рискнул я поведать в одной из программерских комнат какой-то IRC-сети, и в ответ был послан читать про Смолток (Smalltalk). Я до сих пор не уверен, что мне в тот момент именно Смолток мог помочь, лучше бы тогда попался в руки СИКП (SICP).

Через пару лет, уже учась в МИФИ, я вспомнил, куда меня послали, и попробовал поискать что-нибудь про этот дивный язык в университетской библиотеке. А там в те времена уже была электронная картотека с кучей полезных возможностей. Например, по запросу «Smalltalk» она мне выдала единственную книжку — «Паттерны проектирования» Банды четырёх. Тогда я ещё не знал, что это за великий труд, для меня это была единственная доступная на расстоянии нескольких минут и бесплатно книга, в аннотации к которой упоминалось, что она содержит примеры кода на Smalltalk и COBOL.

Про Смолток я из этой книги почти ничего не узнал, да и про паттерны далеко не всё понял…

…но идея о создании своего компьютерного языка жива во мне до сих пор. Несколько месяцев назад она всплыла очередной раз, когда я наткнулся на страницу «Грамотное программирование». Нет, мой Хрум пока не реализует эту концепцию, просто статья натолкнула на размышления. Размышления эти ещё долго варились в моей волосатой голове, пока, наконец, не стали кристаллизоваться в строгие грамматические конструкции.

Кристаллизации этой мощным катализатором послужила книга СИКП (Структура и интерпретация компьютерных программ). В первые же часы чтения получил ответы на пару вопросов, донимавших меня последние дни.

В общем, сегодня я допридумывал основные грамматические правила, понял, как обеспечить единообразие элементов кода с элементами данных, а присваивание выразить через подстановку, и начал писать парсер-интерпретатор. То есть я его ещё неделю назад начал, но сегодня появилось представление о том, что должно в итоге получиться.

Да, зваться он будет, как вы уже догадались, Хрумом.

Вовремя мне СИКП попалась.

Хорошие книги

Июль 20, 2010 under Моё

Ставлю «Дисциплину программирования» Эдсгера Дейкстры на одну виртуальную полку с популярными книгами про время и Вселенную Стивена Хокинга и «Что такое математика?» Рихарда Куранта и Герберта Роббинса.

Все они дают замечательное понимание самой сути, самых основ своей области знаний.

Рекомендуются тем, кому надоели всякие скучные учебники.

Снова о руках и головах

Февраль 28, 2010 under Руки и головы

Итак, пришло время вернутся к теме совместной разработки, соединения «золотых рук» и «светлых голов», обмена работы на знания и т. д., и т. п.

Давайте обсудим, как мы с вами это всё себе представляем. Потому что у меня в голове это пока только в самых общих чертах. Возможно, к концу поста будет больше.
Click here to read more.. »

Вы не видите моих рук

Февраль 9, 2010 under Руки и головы

Спасибо всем, кто откликнулся на мой зов.

К сожалению, я немного не рассчитал свободное время, мне пришлось ненадолго оторваться от Интернета и бросить все силы на подготовку к экзаменам. Через недельку должно быть уже посвободнее, тогда и расскажу, чем и как мы с вами будем заниматься.

Я не вижу ваших рук!

Январь 25, 2010 under Руки и головы

Итак, на начало 2010 года у меня 2 начатых и 15 непочатых проектов. (Непочатые — это просто идеи, которые было бы здорово реализовать.)

Над чем сейчас пытаюсь работать (в перерывах между написанием дипломной работы и сдачей одиннадцатой сессии)

  • Погружение в Python 3 — перевод с английского книги про Python 3
  • Эпиzод — программка для учёта просмотренных тайтлов любимых фильмов и сериалов с точночтью до эпизода (с прицелом на Windows, Mac OS X, Linux [desktop], Android)

Можно набигать и принимать участие.

15 интересных идей

Очень-очень секретные идеи. Никому не скажу. Разве что если хорошо попросите.

  • Избавлю от безделья скучающего программера.
  • Подкину идею для курсовой (с целью реализации в конечном счёте моих проектов).
  • Обучу программированию (C, C++/Qt, Java, Python…) удалённо (почта, жабер) с целью реализации в конечном счёте, как вы уже догадались, моих проектов. Вам скиллы и опыт участия в опенсорсных проектах, мне — бесплатная рабочая сила.
Декабрь 28, 2009 under Моё

Read more about this..

в ответ на запись в дневнике ?Qw354

Кстати, интересная идея — использовать подход тайловых менеджеров (tiling window managers) в компоновке интерфейса приложения. У меня тут как раз есть на чём испытать…

Декабрь 14, 2009 under Моё

Read more about this..

Оказывается, IBM не только нежно любит нас, линуксоидов, но и всячески помогает программировать в этой системке, даже статьи интересные и полезные пишет, даже иногда про Qt (интересно, Nokia им за это платит?). Вносят, так сказать, свой вклад в сообщество. Ну молодцы, чо.

Почему Mono суть зло

Ноябрь 8, 2009 under Моё

в ответ на комментарий в дневнике greatperson

Во-первых, оно тормозит.

Во-вторых, пока Мигель вылизывает вторую версию Додиеза, его сюзерен уже выпускает четвёртую.

Кому-то этих субъективных впечатлений достаточно, иные же просят объективных причин. Ладно, их есть у меня.

Третье. CLI запатентован Микрософтом. Корпорация официально обещала [Microsoft Community Promise], что не будет никого преследовать за его использование. Но это сейчас. Завтра они в своём Дотнете придумают новый интерфейс, и что вы будете делать с устаревшим к тому моменту Mono?

А интерфейсы они любят менять. Вспомните OLE, DDE, ATL, MFC, COM, DCOM, COM+… Не вспоминается? Мне тоже нет. А кто-то их долго и упорно изучал, программы по десять раз переписывал.

Четвёртое. Кто хоть немного писал что-нибудь не очень высокоуровневое на чистом Win32 API и под .NET согласится, интерфейсы эти поразительно схожи. Просто взяли все абстрактные сущности и сделали их реальными классами языка, а функции при этом превратились в методы. (Ещё есть самосвал совершенно новых вещей, но они совсем высокоуровневые.) То есть .NET просто предоставляет очень красивый и удобный интерфейс к Windows. Зачем мне в Линуксе нужны виндузовские концепции? Может, мне больше по душе принципы Позикса? Хотя этот пункт тоже большей частью субъективный. Но не полностью.

Странный, странный Subversion…

Июнь 13, 2009 under Моё

Сыр Российский поделился ссылкой

Странный, странный Subversion…

Чтоб вам не пришлось гуглить так же долго, как мне.

Проблема:
svn: Server sent unexpected return value (403 Forbidden) in response to PROPFIND request for '/test'

Решение:
Order allow,deny
Allow from all


Спасибо Артуру Као и Бену Вейнеру (заглавная ссылка).

Матрица компетентности программиста

Апрель 9, 2009 under Моё

Сыр Российский поделился ссылкой

Матрица компетентности программиста

Очень интересная штучка.

(русский вариант)