Преди доста време вече бях споменал тук, че ще започна нов проект за джабер-клиент, който да запълни личните ми усещания за празнотите в използваемостта на наличните клиенти. Бях казал, че в кратко време ще има повече информация за софтуера, както и че ще публикувам нахвърляните ми записки (някои от тях – нахвърляни само наум;) по проблема какъв трябва да бъде джабер-клиентът на близкото бъдеще.
Това обещание така и не успях да спазя – прекалената ми заетост с глупости в бившата ми служба не ми позволи да се захвана с Yasenger. Сега, преглеждайки и подреждайки файловете си, най-вече тези, които си прибрах от работната ми домашна папка, попаднах на няколкото незавършени започвания на писането на проекта с работно име Yasenger. Да, знам, името може да е глупаво, но за мен това не беше най-важното, а функционалността, която трябва да има, когато е готов. Името винаги може да се смени, а пък от друга страна има толкова безумни имена на програми, които хората използват в разговори без неудобство.
Нека да кажа с две думи най-накрая особеното в моя проект. Че ако пак оставя нещата с обещание “някой ден да го направя както трябва”, кой знае дали няма да прашаса и тази мисъл нейде. ;)
Основното беше независимостта от конкретна графична библиотека. За целта бях започнал да си пиша код, който да превежда графичните обекти на езика на съответната библиотека – Qt, Gtk+ и т.н. И тази независимост трябваше да се простира и до независимост от конкретен HIG – ако човек пуска програмата под GNOME, се спазва GnomeHIG, ако се пуска под KDE – препоръките на KDE за интерфейса. Но HIG-независимостта беше на втори план, първо ми трябваше независимост от графичните библиотеки.
Скоро открих това, което ми трябва вече написано – TwilightGUI. Не бях проверявал отдавна как и дали се е развивал и този проект и сега ще чета и там. Интересно ще ми е, ако е имало развитие; когато реших да го използвам, поддържаше прекалено малко графични обекти и дълго време се опитвах да правя най-различни дизайни на списъка с контакти. И имах все по-малко време и ищах да се занимавам със същинското програмиране на работата на клиента.
Другите особености бяха някои идеи, които горе-долу по това време или малко след това се появиха в пощенските списъци jdev и psi-devel. Например едното от тях беше да преобмисля изцяло наново концепцията за списъка с контакти, каквато я виждаме във всеки обикновен клиент за моментни съобщения. Моят стимул за това беше най-вече настъпващата поддръжка на PubSub. А такава промяна на дизайна си е необходима, защото в PubSub възел могат да се съхраняват най-различни данни, съответно с най-различни начини за показване на потребителя и за работа с тях.
След това, когато поизоставих скоро започнатия код, с радост и интерес следях дискусиите в големите списъци за подобен re-design, завихрен около PubSub. Хората мислеха за по-конкретни неща, като управление на логовете, хранилища за файловете, замяна на SMTP. Все още очаквам с надежда промените в клиентите, но нещо изостават май. Нормално е, може би – след такъв шум винаги се кара по-бавно. Но пък и друго е вярно – Peter Saint-Andre беше писал преди време (година и половина – две някъде) за лошото състояние сред клиентите. Горе-долу тогава и Justin Karneges (авторът на Psi) писа подобни неща. Изводът беше, че ни трябват повече проекти, повече идеи, повече ентусиазъм.
По-точно трябва тези нови проекти да бъдат правени, идеите да бъдат изпробвани, а ентусиазмът – показван.
Така че, дори и да няма много смисъл, ще започна да ровичкам пак по моя си код. Най-малкото, за да се уча на Python и джабер-програмиране.
Между другото, свежи джабер-нещица се намират. Следя колкото мога по-отблизо и подробно развитието на интересните проекти в света на джабер. Замайващо развитие претърпя например клиентът Gajim, който от трудноизползваема програма стана един от най-добрите в момента. Вярвам, благодарение на двама българи – програмиста Митко Киров и преводача Явор Доганов.
Момчета, страхотна работа, наистина ;)