Днес, покрай една асоциация на Царевна на морето с вечността, се сетих за един цитат на Голдинг от “Повелителят на мухите“:
Джек отново поведе край ослепително блесналото море, което продължаваше да се надига и снишава, сякаш дишаше.
и за това, че заради него, винаги, когато стане дума или гледам (особено от високо) океан или море, имам усещането, че то прилича на нещо живо, дишащо, на огромен воден кит, толкова необятен, че заради големината си, времето, в което живее е съвсем различно от нашето (бавно, почти спряло навярно) и за него ние сме просто искрици, които проблясват за миг и изчезват безследно…
]]>Та всичко това накуп ме накара да се замисля колко грешна е цялата концепция за чистенето. Не казвам, че не трябва да се чисти, тъкмо обратното, аз съм маниак на тема чистота и смятам, че чистенето трябва да е постоянно, но това, което ми се струва не на място, е отношението на хората към околната (градска) среда, а от тук, косвено и към обществото. Това, че касовата бележка, хвърлена небрежно през прозореца на колата, ако не бъде събрана при утрешното почистване, ще се разгради след един-два валежа е вярно, но това не бива да е успокоение на съвестта, а тъкмо обратното – сигнал е, че нещо не е наред в идеята ти за живот в цивилизовано общество. Ако приемеш, че това е нормално, и не се самокоригираш, утре ще хвърлиш не касова бележка, а нещо по-голямо (в България сме свидетели и на крайности като хвърляне на торбички с боклуци през прозореца на апартамента, така че, схванахте идеята…).
Нямам намерение да мрънкам или морализаторствам. Просто си мислех, че за да има някаква промяна към по-добро в едно общество, трябва да се започне от промяна на дребните нередности, които се случват постоянно около нас.
Защо толкова се обяснявам? Единият от случаите вчера, който ме накара да се замисля за всичко това, бе момче, което мина покрай мен хапвайки сандвич увит в алуминиево фолио. Без да искам видях, че когато приключи вървейки смачка фолиото, “незабелязано” го пусна на земята и продължи нататък. Тъй като беше прекалено далече и имаше прекалено много хора между нас, не успях да реагирам и да го настигна, за да му кажа, че си е изпуснал опаковката на сандвича (“навярно неволно”, казано с наивна усмивка, тиквайки му я в ръцете :p ), както обикновено правя в такива случаи, така че си замълчах и продължих да чакам началото на карнавала. Навярно щях да забравя за случката, ако в чакането скучаейки не оглеждах хората наоколо и не ми направи впечатление, че много хора, минавайки покрай мястото на изхвърлянето на опаковката, сякаш стъпваха накриво и постоянно поглеждаха надолу. В един момент, се отвори процеп в тълпата и видях, че това е тъкмо алуминиевата опаковка бе причината за това – младежът я бе смачкал добре и я бе направил доста твърда и обемна.
Емпатия. Та се замислих, ако имаше начин този младеж да застане наоколо и да види колко пъти хората (най-вече жени, предполагам заради обувките на токчета) изкривяваха лице стъпвайки върху “творението” му, дали това нямаше да го накара да осъзнае, че макар и малка нередността, засегна толкова много хора, които минаха от там и другият път в подобна ситуация, да потърси кошче. Лошото е, че не можеш да накараш някой да направи това – промяната пак била “силова”, най-малкото заставяйки го да наблюдава страдащите или пък поставяйки го в ситуация, в която той ще изпита същото, каквото е причинил(а) на хората. Промяната трябва да дойде “отвътре”.
Личен пример. Най-доброто, но предполагам и най-бавно и изискващо усилия, е друго решение за корекция на поведение като това, е личния пример. Когато някой си хвърли боклука, ти да го вдигнеш и да го хвърлиш заради него без да му/ѝ казваш нищо. Въпросът е, че това трябва да стане отново без агресия (била тя мълчалив укор или нещо такова). Ако той/тя продължава с неуважението на обществените порядки, но достатъчно много хора коригират щетите нанесени от него и той/тя вижда това, рано или късно ще престане да го прави, т.к. ще се чувства неловко.
Ако все повече и повече хора започнат да нанасят такива корекции при нарушения чрез личен пример, това ще има два благоприятни резултата:

Update: току що осъзнах, че след толкова писане, до известна степен съм обяснил теорията на счупените прозорци… 
Update 2: макар и да съм срещал из нета материали на български за нея, май няма статия в българската Уикипедия за това (а ми се струва, че е нужно).
]]>“Вълшебница”, Яворов
]]>от Мария Донева
Случи се за минути.
Построена накриво,
тишината се срути
върху чувството живо.
После нямаше нищо.
Нито прах. Нито рана.
Отчаяние хищно
за ръката ме хвана.
И къде ме заведе?
И защо ме заключи?
Гълтам въздуха леден.
Гледам с поглед на куче.
И тъгата горчива
като цвят се разпаква.
И кого ще обичам.
И какво ще очаквам.
След първата организационна сбирка (която се състоя на 19.12.20011) и края на първата итерация от проекта за написването на книга за класически шаблони за (софтуерен) дизайн, екипът на книгата реши да се събере отново и втората сбирка ще се състои на 17.03.2012 (събота) от 10 ч, в учебен център “SoftAcad”, намиращ се на следния адрес:
ул. Проф. Кирил Попов 27, кв. Студентски град, гр. София [карта]
Някои от по-важните теми на сбирката ще са следните:
Целта на проекта е да се създаде оригинална българска книга с отворен код, по подобие на книгите “Въведение в програмирането с Java” и “Въведение в програмирането със С#”, която предоставя изчерпателна и актуална информация за шаблоните за софтуерен дизайн (design patterns), служейки еднакво добре, както за въведение в материята, така и като справочник. Като евентуално начало на поредица от книги за шаблони за софтуерен дизайн, тази книга ще обхваща най-често използваните (“класически”) шаблони за софтуерен дизайн (GoF patterns). Ако всичко приключи добре, инициативата може да продължи с други поредица от проекти за написване на книги за архитектурни шаблони, интеграционни шаблони, шаблони за конкурентно програмиране и т.н. Друга цел на проекта е да предостави безплатен достъп до електронната версия на книгата. Цената на хартиеното копие ще бъде в размера на разходите за отпечатване и дистрибуция, като сумата събрана от продажбата ще се преизползва за следващи тиражи
Тъй като се опитваме да ръководим проекта, следвайки модифициран вариант на Scrum методологията, това ни дава възможност да сме гъвкави, относно присъединяването на нови автори и редактори към екипа. В този ред на мисли, ако някой има желание да се включи в проекта, ще бъде добре дошъл(а), стига да е сериозен/сериозна и да има желание да отдели част от свободното си време за създаването на тази книга
За целта, моля присъединете се към дискусионната група на книгата и чрез нея се свържете с нас. Връзката с организационния екип на проекта можете да осъществите също, като ни пишете на design.patterns.book.team [кльомба] gmail.com. Естествено, ако имате желание да се включите, можете да дойдете директно на сбирката и да обсъдим включването Ви 
Книга за софтуерни шаблони за дизайн се състои от няколко части. Първата част представлява кратко въведение в основните принципи на софтуерен дизайн. Втората излага трите групи “класически” шаблони, а именно за създаване на обекти, структурни и поведенчески. Третата част е своеобразен преход към евентуална книга за архитектурни шаблони и представя многослойната архитектура и шаблона MVC. Четвъртата част евентуално ще съдържа материал, който е важен за изложението но не се вписва в контекста на нито една от предходните три части. Книгата ще следва до някъде класическите концепции от GoF, но няма да е превод на тяхната книга, а ще дава съвременно виждане за шаблоните с имплементация на Java и примери от практическия опит на авторите. Следва планираното съдържание на книгата по глави:
Глава 1. Основни етапи при разработката на софтуер Глава 2. Принципи и техники на ООП Глава 3.1. Принципи на обектно-ориентиран дизайн Глава 3.2. Принципи SOLID Глава 4. Кратко въведение в UML
Глава 5. Шаблони за дизайн – въведение
Глава 6. Абстрактна фабрика (Abstract Factory) Глава 7. Строител (Builder) Глава 8. Метод фабрика (Factory Method) Глава 9. Прототип (Prototype) Глава 10. Сингълтон (Singleton)
Глава 11. Адаптер (Adapter) Глава 12. Мост (Bridge) Глава 13. Композиция (Composite) Глава 14. Декоратор / обвивка (Decorator / Wrapper) Глава 15. Фасада (Façade) Глава 16. Миниобект (Flyweight) Глава 17. Прокси (Proxy)
Глава 18. Верига от отговорности (Chain of Responsibility) Глава 19. Команда (Command) Глава 20. Интерпретатор (Interpreter) Глава 21. Итератор (Iterator) Глава 22. Посредник (Mediator) Глава 23. Спомен/Мементо (Memento) Глава 24. Наблюдател (Observer) Глава 25. Състояние (State) Глава 26. Стратегия (Strategy) Глава 27. Шаблонен метод (Template Method) Глава 28. Посетител (Visitor)
Глава 29. Многослойна архитектура (Multilayer Architecture) Глава 30. Модел-презентация-контролер (MVC)
* в процес на изясняване
Официалният сайт на книгата за шаблони за софтуерен дизайн за момента е в Google Code: http://code.google.com/p/design-patterns-book. Дискусионна група на проекта е: http://groups.google.com/group/design-patterns-book. Всички активи по проекта са публично достъпни от неговото SVN хранилище: http://design-patterns-book.googlecode.com/svn/trunk/. Следващата итерация (за редакция на написаното до момента) ще започне най-вероятно идната седмица, а тази, за писане на глави, най-вероятно – след две седмици, така че не е късно да се включите.
Забележка: Фонът на картинката е от творба на Ешер, взета от този сайт: http://www.wikipaintings.org/en/m-c-escher/symmetry-watercolor-55-fish

Наков и колектив - Въведение в програмирането със С#
Снощи научих, че официално е излязла и втората книга, в чието писане взех участие – “Въведение в програмирането със С#”.
Малко данни за нея:
Книгата е подробно ръководство по основи на програмирането, структури от данни и алгоритмично мислене. Информацията в нея е изцяло базирана на материала от предшестващата я “Въведение в програмирането с Java”, като на местата, където бе нужно, материалът бе преработен и разширен. Както се подразбира от заглавието на книгата, за илюстрация на концепциите и съпровождащите ги примери, са използвани платформата .NET и езикът C#. Ето и по-синтезирано описание на съдържанието от самият сайт на книгата:
В нея се разглеждат серия уроци по програмиране – от основите на програмирането, среда за разработка, променливи, оператори, масиви и цикли до по-сложни концепции като рекурсия, фундаментални структури от данни и класически алгоритми, списъчни структури, дървета и дървовидни структури, графи, хеш-таблици, оценяване сложността на алгоритми, принципи на обектно-ориентираното програмиране (ООП), LINQ заявки, конструиране на качествен програмен код и решаване на изпитни задачи.
Всяка глава от книгата, следвайки традицията на “Въведение в програмирането с Java”, е съпътствана с много примери и задачи за упражнение в края на урока. Също така, към книгата има допълнителни материали:
Книгата с отворен код, като електронното издание е безплатно и може да бъде свалено както от официалния сайт – http://www.introprogramming.info/, така и от работния – http://code.google.com/p/introcsharpbook. Книгата може да бъде четена и онлайн на следния адрес – http://www.introprogramming.info/intro-csharp-book/read-online/. По последни данни, хартиеното издание се очаква да излезе в края на септември.
Въпреки, че “Въведение в програмирането с Java” ми е по-любима книга (защото беше първата и защото е свързана с Java), мисля, че “Въведение в програмирането със С#” в доста отношения е по-добра, тъй като наследените печатни грешки от “Въведение в програмирането с Java” са изчистени и с съдържанието е разширено. Въпреки това, намирам мнението на Светлин, че “Въведение в програмирането с Java” “като цяло не се препоръчва” за начинаещи програмисти, за прекалено крайно. Естествено, той си има своите мотиви да препоръчва новата книга, но според мен и старата книга е изключително качествено четиво и е чудесно ръководство (самоучител) за въведение в програмирането.
Да се надяваме, че с появата на проекти, като тази книга, които събират хора със сходни идеи, интереси и желание да допринасят за обществото без да очакват нещо в замяна, ще се превърнат от единични събития в тенденция и то не само в областта на програмирането. Току виж, все повече хора спрат да се оплакват от състоянието на страната ни, събудят съзидателните сили в себе си и разберат, че единствената надежда да си стъпим на краката като общество и да тръгнем напред се крие в самите нас.
]]>
Когато в началото на 2005 спрях да водя упражненията във факултета, си мечтаех да напиша две ръководства – едното за въведение с програмирането с Java и едно за работа със структури от данни.
Започнах да ги пиша паралелно, но всичко вървеше много бавно. След престоя в Шефилд, може да се каже, че замразих дълбоко работата по тази идея, поради тривиалното “липса на време”.
Миналата година, в един късен юлски следобед Светлин прати писмо до всички желаещи да се включат в писането на книга за въведение в програмирането с Java. Прочитайки още първите редове на писмото знаех, че ще участвам. 
Естествено, не съм я писал само аз. Включих се само с две глави, но съм доволен. От избора на главите и от работата си
Дадох всичко от себе си и мисля, че се получи много добре 
От няколко месеца, окончателния вариант на книгата е свободен за сваляне в интернет, а от няколко дена и книгата е вече факт и на хартия 
Да се надяваме, че ще е полезна на хората, които се интересуват от програмиране с Java 
И така
Макар и с частично лично участие в инициативата, мечтата ми се сбъдна! Коя е следващата подред 

Пижо и Пенда
]]>
Снежко
Мммм, жалко, че не успях да намеря изпълнение на люобимата песничка:
Шаро и първия сняг
***********************
Автор: Цветан Ангелов
***********************
Тихо се сипе първият сняг,
галено щипе бузките пак.
Где е на двора старият пън?
Снежко затрупа всичко навън.
*
Плевникът вдига снежен калпак.
Сняг е затрупал къщния праг.
Шаро тревожно тръска глава:
“Как е възможно? Що е това?”
*
Шаро е още малко кутре.
Може ли Шаро да разбере?
Колко си глупав, Шаро, сега!
Колко страхливо гледаш снега!
**
Е, нищо :)) Поздрав на всички :))))
]]>