Понятия

Наскоро ми разказаха за едно островно племе, което няма в езика си думи за числа. Когато им показвали снимки с по пет и с по седем камъка, те не правели разлика – за тях купчините представлявали едно и също. Във френския език има две различни думи за стол и стол с облегалки за ръце. Ако един французин ви дойде на гости, има много по-големи шансове да запомни какви са били столовете в къщата ви. Все симптоми на един интересен факт – думитете с които боравим моделират начина ни на мислене и на възприемане на света. А когато става въпрос за софтуерно разработване, моделират и начина ни на работа… Continue reading

Софтуерни метафори

Наскоро започна твърде често да ми се налага да обяснявам процеса на разработка на „нетехнически лица“. И тъй като е бая сложно да говориш за рефакторинг, редизайн и итерации на хора, които просто мигат на тези думички, си припомних мъдростта на Стив МакКонъл. В Code Complete имаше цяла глава, посветена на метафори за софтуерното разработване – бе го сравнил с писане на жудожествен текст, градинарство, игра и прочее. Безспорно най-доброто сравнение беше с изграждането на някаква постройка. Наистина, „сградостроенето“ е доста сходно до това което ние правим като програмисти. И на двете места си говорим за „архитектура“ и „инженери“, планирането е адски важно и има огромна разлика между строенето на лятна кухня и небостъргач… Continue reading