Home
Boroda place
Заметки программиста

Boroda aka Hamster
Date: 2036-04-28 22:23
Subject: Добро пожаловать или посторонним В.
Security: Public

Здравствуйте! Рад Вас видеть.

В этот журнал я пишу заметки о компьютерах, софте, его разработке и разработке под веб на PHP. Поскольку это персональный журнал он также содержит некоторые сопутствующие заметки касающиеся меня лично, каких-то моих увлечений или заморочек. Стараюсь делать посты в ленте краткими, остальное прятать под кат, чтобы не раздражать читателя.

Я разрабатываю программу BullDoc, которая позволяет делать документацию в виде текстовых файлов в формате html, держать их в одном SVN-репозитории с кодом. Возможна правка тектса через вебинтерфейс, где сразу виден результат без сборки проекта. Во время релиза собирается статичная книжка-документация. Имеется экспорт в CHM с индексом
Статья на хабре про программу
Можно посмотреть тюториал

Некоторые постинги делаются в виде статей, я бы не хотел что бы они со временем уезжали в далекий архив, поэтому вынесу их сюда. Мне будет приятно, если Вы их прочитаете и они Вам понравятся.

Дейкстра, Смиренный программист
Про изобретение велосипеда и Not-Invented-Here Syndrome
Метрики производительности
Слишком простые уязвимости, чтобы их не замечать
Apache php4+php5 на девелоперской машине
Книга Э. Голдратта "Цель"

Подробности: Статьи, Ссылки, Браузер Опера, Рубрикатор )

Тексты публикуются под Creative Commons License: разрешается свободное копирование, распространение и демонстрация объектов авторского права (в том числе и в коммерческих целях), а также создание на их основе производных объектов авторского права. Чтобы воспользоваться этой лицензией, третьему лицу достаточно лишь указать автора работы, а также указать, что работа распространяется на условиях CC.

Creative Commons License
This work is licensed under a Creative Commons Attribution 2.5 License.

22 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-03 22:49
Subject: Удивительные встречи и открытия
Security: Public

Я писал диплом в ИППИ РАН. И была там у меня не очень веселая история. Я сначала отправился в лабораторию обработки изображений. Мне там очень нравилось, поскольку был самый настоящий программинг. И обработка изображений штука интересная. Однако в то время у меня был церковный период жизни, и я параллельно с физтехом работал при храме и учился в Богословском Институте (хм, теперь это уже университет, т.е. предыдущая ссылка имеет исторический интерес). Конечно, результаты моей работы в области обработки изображений не слишком радовали моего шефа. В общем мы сним расстались в конце 5 курса. Т.е. за год до сдачи диплома.

Схватившись за свою бородатую голову, я в срочном порядке пошел искать с кем бы диплом все же написать. И пошел к Ю.Л. Сагаловичу, который читал нам лекции по многочленной алгебре и полям Галуа. В то время я посетил их все. И он меня взял. Правда ничего не обещал :) Однако я хорошенько поднапрягся летом после сборов. И к декабрю было понятно, что диплом я напишу. Ну в общем так оно и случилось. Хороший он человек, этот мой шеф.

Сейчас наткнулся на его книгу 59 лет жизни в подарок от войны, и узнал его с совсем неизвестной для меня стороны.

Воспоминания и размышления фронтовика — пулеметчика и разведчика, прошедшего через перипетии века. Со дня Победы прошло уже шестьдесят лет. Несоответствие между этим фактом и названием книги объясняется тем, что книга вышла в свет в декабре 2004 г. Когда тебе 80, нельзя рассчитывать даже на ближайшие пять месяцев.

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-03 19:31
Subject: Finereader online
Security: Public
Tags:links

Finereader теперь доступен бесплатно в онлайн. Можно распознать 50 страниц. Кстати и сам продукт изрядно подешевел по сравнению с 2000 годом, когда я им пользовался.

Файнридер удобно применять и для доставания текста, особенно с таблицами и картинками из PDF. Казалось бы неуклюже, но на практике очень удобно.

Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-03 18:37
Subject: Basic, игра 10-20
Security: Public
Tags:computer history, games

Почему-то вспомнился рассказ-байка времен моего школьного возраста. О том, что среди программистов популярна игра 10-20. Т.е. нужно написать программу на бэйсике из двух строчек. 10 и 20. Поскольку в строке можно было ставить разделитель выражений ":", то в общем-то видимо что-то было можно запрограммировать пользуясь if и goto. Байка гласила, что самая лучшая программа была игрушка "слалом" в которой даже различался рыхлый и утрамбованный снег.

Хотел найти шедевр и что-то не нашел. Может правда фольклер?

Зато нашел массу ностальгического. Когда я был школьником программы на бэйсике обычно не публиковались в виде файлов. Зато их было в избытке в виде листингов. Вот уж воистину Open Source! Помню, как выписывал из книжки такие программы. У кого-то в гостях видел Atari. И к ней прилагалась книжка с играми (книжка, а не диск, блин!). Помню, как набивал како-то примитивный арканоид.

И вот такие книжки для Атари есть в сети. Более того, они разбиты по играм:

BASIC Computer Games, Edited by David H. Ahl, published 1978
More BASIC Computer Games, Edited by David H. Ahl, published 1979

Сканированные картинки передают весь ностальгический привкус.

Вот еще:
Big Computer Games, Edited by David H. Ahl, published 1984
Глава из нее How To Write An Adventure Game - Techniques for writing and playing adventure games (by Greg Hassett)

Ну и все книжное добро для Atari

Эти игрушки можно наверное погонять на многочисленных эмуляторах, взять которые можно например тут:
1. AtariAge
2. Atari Emulators
3. Atari - 2600 Emulators
Ну и далее гуглом, если мало.

Интересно попробовать забить такую игрушку в JavaScript компилятор Бэйсика, хватит ли производительности интересно? Работает же эмулятор ZX Spectrum на JavaScript.

Иллюстрацию взял из блога Joey Hess: saved my atari programs.

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-02 21:28
Subject: Электронные книги от NASA
Security: Public

Космические книжки в PDF,

от [info]kouzdra

Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-02 21:26
Subject: PHP 5.3 — примечания
Security: Public
Tags:php

Все уже отписались про эпохальный релиз.

Пожалуй содержательный пост на эту тему у Алексея Захлестина.

Что меня беспокоит, так это пропавшие win сборки модулей.

Также пишут, что PEAR из коробки не всегда работает и надо ему помочь.

Про то, что в 5.3 много вкусностей вроде писали уже, так, что вышеупомянутые неприятности надо будет пережить :)

4 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-07-02 21:01
Subject: Проектирование фломастером
Security: Public

Любопытная мысль у 37 сигналов. — чем толще фломастер, которым ты рисуешь схему приложения, тем меньше ты заморачиваешься низкоуровневыми деталями.

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-29 12:37
Subject: Победная спешка
Security: Public
Tags:business, development

Хорошая заметка у Боба Мартина о разнице между "работает" и "сделано"

http://blog.objectmentor.com/articles/2009/06/26/the-rush

Когда у Вас все работает, Вы торопитесь показать работающий проект заказчику. Вроде задача решена, все работает, ошибок нет и мы торопимся вычеркнуть задачу из планировщика.

Однако в спешке зарелизить проект, сдать его мы, как правило оставляем после себя много обломков. Особенно на финишной прямой. И спагетти-код, и на скорую руку принятые решения. После того, как "все работает" обычно остается еще много работы. И вот тут надо убирать мусор. Работа неблагодарная, т.к. никто это оплачивать не хочет. Но если не подчистить грязный код будет жить и мутировать.

Это еще одна вещь, которую обычно не учитывают, когда устанавливают сроки.
Read more... )

2 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-28 16:36
Subject: Запуск приложений через VirtualPC
Security: Public
Tags:tech, virtualization

У Бэна Армстронга постинг о установке и запуске приложений под разными операционками с помощью MS VirtualPC. Приложения запускаются через меню Старт, причем два приложения могут жить в одной виртуальной машине, а запускаться отдельными ярлыками.

http://blogs.msdn.com/virtual_pc_guy/archive/2009/06/25/multiple-seamless-applications-with-windows-virtual-pc.aspx

Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-28 16:30
Subject: Приемы разработки autoload классов
Security: Public
Tags:development, php

Серия статей про автолоад в PHP.

Раньше я скептически относился к автолоаду вообще. Однако во-первых автоподргузку можно делать не только напрямую вычисляя имя файла по имени класса, а во-вторых в хотя бы на уровне ORM очень удобно, когда достаточно написать $ride=new car(), и никаких инклюдов.

http://www.devshed.com/c/a/PHP/Working-Out-of-the-Object-Context-to-Build-Loader-Apps-in-PHP/

2 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-28 16:22
Subject: Флэш листалка для книги
Security: Public
Tags:books, links

Опенсорц листалка страниц.

Страницы должны быть в виде картинок.

Для изготовления примитивного примера не нужно ничего, кроме картинок.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE book SYSTEM "http://megazine.mightypirates.de/megazine.dtd">
<book>
  <chapter pages="pages/p[2].jpg"/>
</book>

Такая конструкция загрузит две страницы в книгу — p1.jpg и p2.jpg

Можно играть с размерами, но довольно много пространства надо оставить управляющим элементам (по крайней мере в настройках по умолчанию).

Попробовал сделать небольшой пример.

Текстуры для эксперименов можно брать на www.cgtextures.com
в разделе Textures \ Paper \ Plain Paper

Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-27 20:36
Subject: скриптовые движки для interactive fiction
Security: Public
Tags:games, interactive fiction

Interactive fiction, — это такой жинр игрушек — текстовые адвенчуры.

Для их написания авторы используют движки — интерпретаторы игровых скриптов. Например есть русский TADS.

Наткнулся тут на движки, выполненные на языках, используемых в веб-разработке:

Ruby
Python

Интересно, есть что-то такое на PHP?

Например есть классическая адвенча Zork (порт Colossal Cave Adventure), портированная на PHP. Но вот именно движка, я не нашел.

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-27 11:31
Subject: scripty2 — переписанный script.aculo.us
Security: Public
Tags:links

Scripty2 — альфа версия нового script.aculo.us

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-27 11:29
Subject: Оценка времени на выполнение проекта, от А. Иванова
Security: Public
Tags:business, development

Прямо вслед обсуждению на хабре статьи 37 сигналов, Андрей Иванов написал весьма правильный пост.

О том, что часто ни заказчик, ни, что более странно, исполнитель, не пытаются предусмотреть, что что-то при выполнении проекта пойдет не так.

"Надеюсь у Вас не будет форс-мажоров", говорит обычно заказчик. Надо бы ответить "конечно будут!", но обычно так не делают.

К перечисленным Андреем примерам подводных камней можно добавить еще, что никто не ждет того, что придется переписывать результат недельной разработки, которая получилась в следствие ошибочно выбранного пути или предположения о структуре данных или чего-то еще.

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-25 14:17
Subject: Выпендрежная статья
Security: Public
Tags:business

Кто-то таки перевел статью о бриллиантовой мечте каждого заказчика (источник).

Коротко звучит так: "я позвал исполнителя. я сказал ХОЧУ! он без дополнительных вопросов ответил: конечно сделаем за xxx денег и yyy часов. Ну и сделал ровно как пообещал".

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

4 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-21 16:23
Subject: Борланд, оказывается, умер.
Security: Public
Tags:business

Я не знал, что он совсем умер. Однако в журнале [info]aivanov, которого многие мои френды читают прочитал о том, что разработку софта Борланд уже давно продал за $25 миллионов Embarcadero, а то, что сейчас совсем уже почти умерло к средам разработки софта отношения совсем не имеет.

Т.е. Дельфи и Borland C++ Builder вроде как продают, но совсем неизвестная компания. Под эти продукты много чего написано, но они не развиваются совсем. Интересно выживет ли софтинка?

Страница компании в википедии

9 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-21 09:03
Subject: Эволюция. Слепой часовщик.
Security: Public
Tags:fun

[info]schegloff поделился интересной ссылкой



Иллюстрация эволюции на примере часов. Стрелки, шестеренки, пружинки случайным образом сочетаются и дают потомство. Получаются периоды эволюции и механизмы.

Не очень понятно, как программа считала критерий "точно показывать время". Видимо, этапы эволюции программировались вручную. Т.е. если у часов есть маятник, то они показывают время. Если есть стрелка, то более точно показывают время. Про пружинку не понятно — она на точность не влияет, но без нее часы остановятся... К сожалению точного описания программы нет. Есть сама программа на МатЛабе.

UPD. На хабре тоже появился топик на эту тему
UPD2. Ага там же пишут в комментарии, что точность оценивалась по близости к нашим обычным часовым-минутным-секундным стрелкам.

2 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-19 11:45
Subject: Microsoft жжет!
Security: Public
Tags:fun, internet

Если зайти любым браузером, кроме IE8, вас ждет улыбка и теплые чувства к макретологам Микрософт:
http://www.microsoft.com/australia/ie8/competition/

Ну и в комплекте, еще один прикол от них же:
Windows Internet Explorer 8: Get the facts, где в таблице сравнительной крутизны Опера даже не упоминается.

Хе. Апдейт.
Michael Yoshitaka Erlewine обнаружил, что домен www.tengrandisburiedthere.com не занят и быстро сделал там пародию.

7 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-18 15:02
Subject: BullDoc 1.0 Released
Security: Public
Tags:bulldoc, development

Фиксил-чистил свою документоводственную программу. Добавил кривую-косую документацию на английском. Сделал релиз 1.0. Просто потому, что нездорово так долго сидеть в 0.хх, программа ведь вполне стабильная.

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

Зато теперь смог написать о себе на SitePoint.

Единственное добавление, это возможность показывать картинки книг на книжной полке
см. под кат )

Реквизиты проекта, как всегда такие:
www.bulldoc.ru
Статья на хабре про программу
Скачать!

4 Comments | Post A Comment | Add to Memories | Tell a Friend | Link



Boroda aka Hamster
Date: 2009-06-18 11:04
Subject: Игра Сибирь-3
Security: Public
Tags:games

Я уж думал с уходом автора первых двух версий Сибири (Б. Сокаль), компания Микроидс загнется, т.к. после выхода Still-life даже сайт у них перестал отвечать.

Ан нет. Живы, и даже выпустили не слишком удачный Stillife-2.

Собираются выпустить Сибирь 3, чем заинтриговали. У игры будет тот же самый автор.
Первые две сибири проходились на одном дыхании и оставили очень положительные эмоции.

Новость на AG
Статья в блоге My best quests
Даже в википедии уже заначили страничку под эту игру

Рецензия AG на Сибирь
Рецензия AG на Сибирь 2

1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link



browse
my journal
links
July 2009