Category Archives: Програмиране

Учене чрез примери

В книгата, която чета напоследък, има хубава теза: учим се да кодим като гледаме чужд код. Всъщност, това е валидно за всички сфери на изкуството (композиция, рисуване, литература) и другите, не изцяло художествени занаяти (архитектура, спорт, компютърни игри). Това което ние, като програмисти, рядко правим, е да се учим от чужд код.

Пластелин

Установих че имам бая различен спрямо познатите си подход като пиша код. Силно напомня игрите с пластелин от детската. Първо натрупваш няколко буци, докато се задържат заедно и постепенно добавяш детайли, променяш конструкцията и премахваш излишното. Докато не получиш крайната цел. Предполагам художниците правят същото – започват с най-обща скица, после постепенно добавят конкретни и […]

Преди магия, сега…

Понякога се изненадвам на собствените си мисли. Има доста идея. Трябва да напиша есе по въпроса…

Абстракция, енкапсулация и индиректност

Ах, абстракцията. Излезте от дома, влезте в първия програмистки бар и кажете на някой “абстракция”. Това може да се развие само по два начина. Или ще се абстрахира от вас и ще продължи да си пие latte-то или (по-лошо) ще събере момчетата, ще ви издърпат навън и итеративно ще ви разработят час при зъболекаря. Ако […]

Разбиране, сложност и мисъл

Последния ми пост предизвика повече емоции, отколкото бях приготвен да поема. Очаквах да подразня доста хора, които в последствие да ме заклеймят като краен фундаменталист и да престанат да ме занимават с наивните си разсъждения по ICQ-та и GTalk-ове. Обаче не стана точно така. Като го написах, очаквах да остане неразбран. Сега ще направя допълнение, […]

Кога да търсим нова професия?

Събудих се със сравнително добра идея как да помогна на толкова много объркани хора в избора им на кариера. Позанимавали са се малко с програмиране, учили са малко в университета, поработили са няколко месеца. Дали това е правилни житейски път? Как да разберем?
Ето класически проблем, който илюстрира много. Искаме да изпратим писмо до всички активни […]

svn ci -m …

Малко парче код, което ми се струва достатъчно интересно че да го постна.

Интересно програмиране

Програмирането не ми е интересно.
Чувал съм горните думи редица пъти. Сред всякакви мои познати – ученици, биолози, музиканти, техническа поддръжка и дори програмисти. Докато смятам, че последните трябва да се преквалифицират във водопроводчици, то думите на първите леко ме учудват. Пръв ще кажа, че програмирането изобщо не е за всеки, но понякога ми е трудно […]

Грешки, изключения и assert-ове

Assert-овете трябва да се изключват за версията в продукция.
Не, не, не. Три пъти по три не. Assert-овете не трябва да се изключват за нищо на света. Все едно акробатите да тренират със спасителна мрежа, а на живото представлението да са без нея. Отвъд драматичен ефект друго не постигат. Ако ви сърбят пръстите да изключите assert-ите, […]

3 design pattern-а в ruby

Често чувам от люде, които уважавам, че design pattern-ите са начини да се решат ограничения в статичните езици. И че няма нужда от тях в динамичните – ruby, python и perl. Че са напълно излишни “ООП глупости”, от които един истински програмист няма нужда. Силно несъгласен съм.
Шаблоните представляват различни начини да си организираш идеите за […]