Archive for the ‘Web development’ Category

Lines Of Code (aka Лайна От Код) :-)

May 19th, 2012   

Заради предстоящата презентация пред инвеститори днес седнах да генерирам малко статистика за мегаломанския проект, по който работя последните 12+ месеца. При все уговорката, че нещата са писани с доста бързане, все пак, кода е в изтествано и добро състояние (поне за PHP частта гарантирам, че е по-добра от 90% от проектите, които съм виждал (както open source, така и proprietary)). Java (android) приложенията, не са толкова добре направени -- имам само година и половина опит в тази област (сравнено с PHP: 8+ год), а и доста бързах(м) с нещата и тук-там минавам напряко… Интересното е, че и за двата програмни езика производителността ми като LOC на ден е почти една и съща: ~250 непразни, некоментирани реда.

За HTML, CSS и javascript умишлено не се опитвах да правя статистика, защото там термина LOC е много (по-)непоказателен.

Фрапиращото в случая е, че когато съм си мерил производителността при работа в средно голям екип (5-6 човека), никога не съм преминавал границата от (more…)

Новите неща в PHP 5.4 -- I-ва част http://goo.gl/kJ9Ph

March 4th, 2012   

В другият ми блог, който е само за прорамистки неща съм публикувал:

Новите неща в PHP 5.4 -- I-ва част

 

PHP: Алгоритъм за проверка на Единен идентификационен код (ЕИК) на фирма – БУЛСТАТ

December 4th, 2011   

Покрай суперсекретния ми И публичен мега-мегаломански проект ми трябваше да валидирам ЕИК номера на фирми. Питах чичо Гугъл да ми каже къде мога да намеря PHP реализация, но за моя голяма изненада се оказа, че точно за PHP няма (или поне аз не успях да намеря, но не съм се ровил след 1-ва страница). В най-добрите традиции на синдрома NIH написах един клас за проверка за валидност. Надявам се да е полезен на някой и да му спести време.

Важна забележка: тестван е само с 9-цифрови ЕИК, защото не можах да намеря примери за 13-цифрени, така че ако ще го използвате с такива е необходимо да проверите дали работи ОК с тях.

 

WordPress убил бизнеса с фирмените сайтове?

August 24th, 2011   

Наскоро пихме бира с колеги web developer-и и общо взето целия разговор се въртеше около това колко тегава е станала бизнес средата, как били паднали цените за изработка на фирмени сайтове и че за това бил виновен WordPress, защото всеки пикльо вече можел да го инсталира, да качи някой плъгин и те ти фирмен сайт за 200-300 лева.

Бях твърде зает да флиртувам с преразкошната сестра на Миро и не можах да се включа в този разговор, затова сега ще компенсирам и ще изложа "некои съображения" и моля да ме "изслушате по-подробно" :-) :

Айн. Тази работа с обвиняването на WordPress е малко като с кривата ракета и космоса. Преди него беше Joomla-та и пак нея псувахме, че келеши работят за по 150-250 лева на парче. Още по-преди това пък беше статичния HTML и келешите с DreamWeaver (работещи в design view (omg, извратеняци, ламери))  даже и за по 100 лева правеха сайт с 5 странички (home, за фирмата, за контакти, продукти, услуги) (този тип сайтове бяха наричани "5 стинки" (идваше от съкращението 5ст. (пет статични))). В този ред на мисли, както виждате, има подобрение в нивата на заплащане ;-).

Цу цвай. Явно винаги ще има хора, които да подбиват цените и това е така, защото просто (more…)

Senior PHP Developer's Skillset

August 2nd, 2011   

Преди около 2 години бях направил долната схема, която представя един от възможните комплекти необходими познания, за да може един PHP developer  да бъде класифициран като "Senior". Включва само базови неща, един пълен осъвременен набор би включвал и няколко различни framework-а / системи като например Zend framework, Cake, Simphony, WordPress и т.н.

Вчера случайно попанах на нея и ще използвам случая специално да поздравя PHP екипа на TRS: Пичове, спрете за  5 секунди да се мислите за господ, прегледайте схемата и вземете да учите и отмятате едно по едно. Със сегашното си поведение се излагате и пред колегите си, и пред клиентите си…

Отделно, надявам се схемата да е полезна на начинаещите PHP developer-и, които тепърва навлизат и искат след време да станат "Senior".

Размерът на "балоните" съответства грубо на размера на знанията и колко време отнема да се научат на "достатъчно ниво". Примерно ако PHP балона е 20 пъти по-голям от CSS балона, това означава, че ще е необходимо 20 пъти повече време да се отдели на PHP.

(click за пълен размер)

Съкращаване на URL с http://goo.gl/

October 1st, 2010   

Понякога се налага да пращам дълги URL-та и все не мога да запомня сайтовете, които предлагат тази услуга (даже и сега не се сещам да дам пример). Google  са пуснали техен сайт за тази цел, който е на адрес: http://goo.gl/.

Този постинг e най-вече с цела самият аз да запомня този сайт, а ако не успея -- отивам на операция да ми ампутират мозъка.

Tangra Framework достигна ранг 161 от 100к+ в sourceforge

April 3rd, 2010   

В деня на шегата 01.04. излезе версия 2.3.0 на Tangra framework. На следващия ден се изкачи то позиция 161 в класацията на проектите в sourceforge. Предишния най-добър резултат беше ~363. По важното е, че напоследък стабилно се задържа в top2000.

Загуба на обратна съвместимост в PHP 5.3

March 19th, 2010   

Тия дни експериментирам с PHP в областта на тестване на бързодействието и profiling. Покрай това инсталирах xampp на win машината, който идваше с PHP 5.3.1 (на линукса съм с 5.2.х). В един момента забелязах, че някой файлове гърмят, защото били използвани deprecated функции (примерно ereg()). Отне ми известно време да разбера, защо, аджеба, става така и ето резултата:

По някое време са въвели error_reporting флага E_DEPRECATED (вероятно в 5.3), който сега участва в E_STRICT. При мен (в tangra framework) има два режима на работа -- нормален E_ALL | E_STRICT и php4 режим (използва се, когато се включват php4 или просто калпаво написани външни библиотеки), който е само E_ALL. По подразбиране в 5.3.1 в php.ini (поне в xampp пакета) error_reporting е E_ALL & ~E_NOTICE & ~E_DEPRECATED. Получава се така, че с моята настройка E_ALL | E_STRICT аз де факто активирам E_DEPRECATED и оттам ми идват проблемите.

Това, което ме дразни е, че PHP пичовете са включили E_DEPRECATED в E_STRICT и изненадват неприятно всички, които го използват. Доста приложения ще поизгърмят и ще съсипят съня на не един и двама php developer-и. В интерес на истината, проблемът се оправя относително лесно и бързно, ама може ли така безхаберно да чупят обратната съвместимост. Да бяха направили E_DEPRECATED независим флаг, а не да го включват в E_STRICT… :-(

Допълнителни инструменти за PHP програмисти

October 7th, 2009   

php_nekoiВ предишния постинг говорих за основните инструменти като редактори за PHP код, HTML и изображения. Освен тях всеки PHP програмист използва и други tool-чета с които си улеснява живота и тук ще стане дума за тях. Ще стане дума като за stand-alone продукти, така и за плъгини. Ориентацията основно е към Windows, но ще се радвам ако постнете в коментарите алтернативи и за Linux.

1. SSH клиент

SSH клиента е необходим, когато искате да се логнете в Linux/*BSD сървър. По принцип на много PHP developer-и рядко им се налага да го правят, но ако си поддържате ваш линукс сървър вкъщи или трябва от време на време да свършите нещо на служебния, за да не губите времето на сисадмина ще ви е необходим.

Аз съм се спрял на PuTTY. Има всичко, което ми е необходимо (т.е. достатъчно настройки за разни дреболии). Единствения недостатък, който съм открил е, че не върви кажеш на някоя колежка: "Отвори си путито, за да ми влезеш в сървъра" ;-).

2. Администрация на БД

(more…)

Избор на редактори / IDE-та за PHP, HTML, изображения или "Майсторът се познава по инструментите"

October 6th, 2009   

php_nekoiС годините работата на PHP програмистите започна да става все по-сложна и обемиста. Ако едно време обичайния проект беше да се направи проста регистрационна форма и няколко динамични странички и всичко това подплатено с 4-5 DB таблици, то днес нерядко се сблъскваме с проекти, които имат 30-40 форми, 50-60 динамични страници, 30-40 DB таблици, cron job-ове, ajax-и, CVS-и, XML-и и т.н. Накратко казано: нещата загрубяха и вече не можем да си позволим да губим време за глупости. Един от проблемите, който забелязвам доста често е, че много developer-и използват "кекави" текстови редактори за работа с PHP код и по този начин си "спестяват" възможността да си ускорят работата, като едновременно с това я направят по-лесна и като страничен резултат -- по-качествена.

Има един принцип в удобството за използване и той гласи "На човек най-удобно му е това с което е свикнал". Макар, че е донякъде казано на майтап, всъщност, до голяма степен това изречение описва защо много хора са изключително негативно настроени към смяна на редактора, който използват. Когато си "копал" примерно  UltraEdit в продължение на 2 години после и най-доброто IDE като Zend Studio Client ти се струва тегаво и досадно и трябва да мине поне месец, за да свикнеш с него. Една от най-добрите мотивации, които може да получи човек за смяна на досега използвания продукт е да липсват в него полезни / удобни функции, които са налични в друг. По-долу ще бъдат изброени различни продукти заедно с кратко описание на "изкушенията", които могат да ви накарат да си "смените вярата".

(more…)