yUML

Just linked yUML to my blog. I like that service.
There are also few articles about it here.

There are next few yUML samples:
[Document]<0..*-1[DocumentTemplate],[DocumentTemplate]-^[Template]

[DocumentTemplate]-^[Template],[ReportTemplate]-^[Template|-name;-author;-location|open();save();remove()],[FigureTemplate]-^[Template]

[Administrator]-(Create Template),[Administrator]-(Create Document)

And now Scruffy variant:
[Document]<0..*-1[DocumentTemplate],[DocumentTemplate]-^[Template],[ReportTemplate]-^[Template],[FigureTemplate]-^[Template],[Template]->[Author|firstName;lastName],[Template]->[Resource|fileName;type;version]

[Ruslan]-(Create Article), [Ruslan]-(Edit Article),
[Ruslan]-(Write Comments)


Looks great, isn't it?

Linus about Git

Перше серйозне знайомство з Git було в мене після перегляду відео презентації Лінусом Торвальдсом, на якій він розсказував наскільки Git крутий, а майже все інше близьке до лайна. Як на мене, занадто він впевнено про це заявляв, але і мені Git сподобався тоже.

Відео було на англійській мові, але не давно знайшов переклад цього відео. Точніше, переклад слів Торвальдса.
http://lib.custis.ru/index.php/Линус_Торвальдс_о_GIT_на_Google_Talks

Git and Subversion works together

I like the idea to use Subversion central repository with a Git local "stub" repository. With having local Git repository I have access to the all history of some branch or trunk, as I have a local copy of Subversion repository. Local commits and easy branching is a big plush for me too.

Most of us are working with Subversion repositories, as they are wide used and popular nowadays. These tool gives us advantages to work with branches, setup security, transaction commits and many more. While Git proposes easy and low cost branching, decentralized storing and low coupling developers interaction. Yes, I said low coupling, as 2 developers that are working on the same thing in parallel now are able to synchronize code locally, without central repository.

I don't know what is your experience with merging branches using Subversion, but for me it's a hell. With a few different branches, that are ready to be merged into trunk but is not, because "we don't need it in trunk now, but maybe in 2 weeks we will". Sometimes merging takes the same time as new feature development.

Now Git can help us with it, as has new operation git svn.
It's currently working fine on Linux, but you should be ready to get some unpredictable behavior on Windows. Expecting that with 1.6.3 and latest versions git-svn will work much better that with Git-1.6.2.2-preview20090408.

Git Advantages

Побавився сьогодні трохи з Git. Досі я в основному працював з SVN, і тільки із централізованими системами контролю версій.
В Git знайшов кілька цікавих речей, які мені ясно сподобалися, а саме:

  1. Розприділені SCM дозволяють мати локальний репозиторій, з яким працювати є набагато зручніше. Адже він
    завжди зі мною, я можу виконувати кілька незалежних комітів, які просто потім відправляти в публічний репозиторій, коли є необхідність і можливість. Розприділені репозиторії дозволять мені також синхронізуватися з іншими програмістами без необхідності внесення змін в публічний репозиторій.
  2. Можливість створювати декілька commit lists, для того щоб комітити різні зміни із різними коментарями. Дуже корисно для підтримки порядку.
  3. Можливість вибудовувати ієрархію репозиторіїв. Розприділення відповідальності між програмістами тепер може бути на рівні окремого репозиторію. Річ цікава і корисна, і якщо коли-не-будь доводилося працювати із репозиторіями, що знаходяться на іншому кінці світу, заховані за тучою файерволів і взагалі частенько є недоступними, тоді мене можна буде зрозуміти.
  4. Можливість вносити зміни в історію комітів, наприклад, видалити зайвий файл або підкорегувати коментар.
  5. Зручна та швидка робота із бренчами.
  6. Message при коміті є обов'язковим.
  7. Зручна робота із git в консолі.
  8. Нема необхідності виконувати бекапи публічного репозиторію, якщо є декілька програмістів, що мають його локальну копію.

Це тільки декілька можливостей. Мені вони здалися найкориснішими.
Звичайно, частину з них можна добитися і від SVN, але для цього треба докласти чимало часу, а інколи і грошей.

P.S.
Знайшов гарну статтю про переваги Git над SVN: http://git.or.cz/gitwiki/GitSvnComparsion і навпаки.

ClearFont setup tool for WinXP

Не великий секрет - я користуюся Windows XP і наразі для мене це найкраща ОС. А заради відчуття красивого вмикаю я згладжування шрифтів ClearType.
Ось тільки кілька місяців тому змушений був відмовитися, адже на новому моніторі це згладжування виглядало просто огидно. Але не так давно знайшов прикольну тулзу від майкрософта http://www.microsoft.com/typography/ClearTypePowerToy.mspx.
Після вельми простої конфігурації, я отримав хорошу якість згладжування шрифтів.