scoon: (Default)
2008-02-05 10:51 pm
Entry tags:

Scratch: первая сессия

Показал дочери Scratch. Read more... )
scoon: (droid)
2008-02-03 04:38 am
Entry tags:

Scratch it!

Попалось на глаза упоминание о Scratch. Оглядевшись вокруг увидел, что появилось неожидано много материалов, касающихся его.

И меня это беспокоит. Поскольку пиар не соответствует уровню этого пока еще сырого продукта. Характерный пример:
При этом обратим внимание, что графические эффекты там сравнимы с фотошопом, плавность движения и управляемость - с флеш.
Ссылку на источник не даю. Поскольку так мог написать только человек, который невовремя зафанател от Scratch, но не видел ближе пяти метров ни фотошоп, ни флэш. К примеру, я сегодня сознательно воздержался от того, чтобы показывать scratch дочери. Она работает в фотошопе что-то около трех лет и я опасаюсь, что может стошнить на клавиатуру от вида scratch'евого графредактора. Так что придется заранее заготовить спрайты -- а уж потом показывать среду. Флэш она с пары метров видела, так что про плавность и управляемость я тоже говорить не буду, чтобы не ронять свой авторитет.

Но дам ребенку попробовать, непременно дам.
scoon: (Default)
2008-01-21 03:06 pm
Entry tags:

Mythical Agile Shortcuts

Добрая статья повествует о типичных граблях, на которые наступают при небрежном внедрении agile-стиля разработки: Mythical Agile Shortcuts.
scoon: (droid)
2007-12-26 02:21 pm

Refactoring is a Necessary Waste

Добрая заметка: Refactoring is a Necessary Waste:
By seeing Refactoring as a necessary waste, then a developer will minimize refactoring; that is only refactor code that no longer meets the requirements of the user. This means, when you are coding away and you see a method in the class you are modifying that "smell's bad" but has no direct connection to the requirement you are working on, you leave it alone.
Здравый смысл в этом есть...
scoon: (droid)
2007-09-28 01:07 pm
Entry tags:

Исключительный код

Читаю код и плачу:
} catch (Exception e) {
  System.out.println(...текст поскипан по определенным соображениям...);
  return "-1";
}
Серверное приложение. Mission critical.
scoon: (droid)
2007-09-19 02:42 pm
Entry tags:

Тактика

Очень добрая статья о программировании: tactics, tactics, tactics.
Tactics, in chess, are present in every single game, just as coding is present in all software projects. Tactics are what makes or breaks most games of chess, just as coding is what makes or breaks most software projects. Gambling on a chess game? Put your money on the tactical whiz who has never studied openings over the master of the English opening -- even in an English game! In the same way: hire people who can read, write and talk about code over those with sloppy code and really deep knowledge of J2EE.
scoon: (droid)
2007-09-14 03:38 pm
Entry tags:

Thread Local: A Convenient Abomination

Добрый человек предает анафеме ThreadLocal-объекты: " Thread Local: A Convenient Abomination".

Логично, не правда ли?
scoon: (droid)
2007-09-06 12:48 pm
Entry tags:

Позитивный взгляд на Code Review

Весьма рекомендую короткую и добрую статью "Learning from Code Reviews". Просто одна цитата для примера:
It’s important for you, a developer, to realise that code reviews aren’t for discussing your bad code. See it more are an effort to increase the level of quality in the entire code.
Это радикально отличается от распространенного подхода "прочитай код и аргументированно докажи кодеру, что он дебил"...
scoon: (tarakan)
2007-08-14 12:51 am
Entry tags:

Откомпилируйте меня, кто-нибудь...

Все же форум uml2.ru является хорошим видом душеспасительного чтения:
Разница между БД и объектно-ориентированым приложением в том, что объект инициализируется кодом и изменение его структуры и поведения воспринимается при перекомпиляции и новом запуске приложения.
...никто так и не сообщил человеку, что компиляция -- не абсолют. И есть ОО-системы, в которых изменение поведения существующего объекта -- штатная операция.

P.S. Надо будет продвинуть в массы новую концепцию ООП: "ООП есть три слона -- полиморфизм, инкапсуляция и наследование -- стоящие на спине черепахи под названием 'компиляция'". Ну а сверху, понятное дело, земной диск, небесная твердь и иже с ними...
scoon: (droid)
2007-05-28 02:18 pm
Entry tags:

Знания умножают скорбь

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

Характерный пример попался на форуме PHPClub'а...
scoon: (droid)
2007-05-10 01:26 pm
Entry tags:

JavaFX

Вот за что я люблю Sun'овских маркетоидов -- так за то, как виртуозно они выдают затасканные банальности за новейшие достижения технологии...
scoon: (droid)
2007-05-04 01:17 pm
Entry tags:

Оптимизация

Нахожусь в филологическом ступоре. Как по-русски, причем не матерно, назвать человека, который в процессе, занимающем 8 секунд и требующем оптимизации до 4, упорно предлагает заняться фрагментом, который занимает менее 100 миллисекунд?

Слов в голове много, но все либо неточные, либо матерные... :)
scoon: (droid)
2007-03-28 02:28 pm
Entry tags:

Rethink the view

Довольно добрая статья: Pure servlets: Rethink the view. У автора местами тараканы в голове, но этот подход действительно работает, я пробовал. Вот только Java -- очень неудачный язык для такого использования.
scoon: (Default)
2007-02-16 03:18 pm
Entry tags:

Why it’s so Hard for Imperative Programmers to Learn Functional Languages

Разумная точка зрения:
The only people who can write a Haskell tutorial are the people who know Haskell. Ironically, someone who knows Haskell won’t be able to write a tutorial for the average programmer. They’ll focus too much on the features that make Haskell cool, rather than how to do practical things with it; which is just what the average programmer wants. Haskell gurus have spent so much time in their theoretical wonderlands, they’ve forgotten what it’s like to be an outsider.
scoon: (droid)
2007-02-07 11:16 am
Entry tags:

Apache vs IIS

Ругать безопасность Windows и хвалить Linux -- это уже как речевой штамп. Никто уже особо и не задумывается, почему это происходит, поскольку классическое "Microsoft suxx" как бы объясняет все и сразу.

Но добрый человек Richard Stiennon подошел к этому более серьезно. На примере одной и той же несложной задачи -- отдача веб-сервером HTML-страницы с картинкой -- он построил карту системных вызовов.Read more... )
scoon: (droid)
2007-01-31 02:20 pm
Entry tags:

CloseGrok

Продолжая копаться в коде попробовал использовать OpenGrok. Установка и индексирование исходников заняли всего минут 10, а вот результат разочаровал: эта фиговина в действительности не понимает Java. Т.е. работает исключительно на уровне продвинутого grep'а. Не различает комментариев. Не отличает вызов функции от ее описания.

С горя проверил, не вышла ли новая версия любимого SourceNavigator'а. Не вышла. А та, что имеется, опять таки не понимает типы Java и работает только в режиме grep'а.

Пришлось вернуться к Eclipse'у как к средству анализа исходников. :(
scoon: (droid)
2007-01-30 09:27 pm
Entry tags:

Жизнь прекрасна, ибо коротка

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

Read more... )