Видеото е много добро и забавно, наистина! Но…. Колкото и шум да има около RoR, поне аз няма да предам фронта. Ruby on Rails има някой сериозни бонуси от сорта на MVC разделението, което вярвам е на доста по високо ниво от това на който и да е PHP фреймуорк, готината темлпейт система, __autoload, което предотвратява нуждата от include, require и т.н. Сигурно има още доста готини неща… само, че аз ще ви кажа, защо няма да мина на руби. Основните причини са 3: SQL, дългогодишен опит с PHP, мисля като PHP developer, дори и когато програмирам на Java или C++, Rails не може нещо, което PHP да не може. За мен няма причина да мигрирам, макар и да е много модерно, макар и да има адски много, поне за мен „измислени“ причини, защо RoR е по-добро от PHP. Това е като нещата, които чета че CakePHP бил по-добър от… <фреймуорк>. И там абстракните им причини…
Всеки трябва да спре да гледа само от неговата си камбанария ами да тества и алтернативните решения. Ама след близо 6 години да се откажа от PHP? WTF? По-добре php guru от колкото Rails beginner Някой ако иска да спориме готов съм, не може да ме убедите, че Rails има повече преимущества от „грозното“, „мръсно“ PHP, но освен със забавни видео клипчета едва ли ще стане по друг начин. Между другото продължавам да твърдя, че не може да се сравнява език с феймуорк. Rails vs Zend Framework – ок. Rails vs CodeIgniter – ok. Rails vs PHP – wtf? Rails бил по-бърз от PHP… глупости на таркалета. Единствено startup времето му е по-добро. Ако говорим за бързодействие и трябва да сме обективни ASP.NET ги бие всичките (с изключение на великата Java, според някой независими източници, но пак е спорно) ) Така, че ако това е най-голямата гордост на един Rails developer не е много обоснована, макар и масово в интернет да има твърдения като гореспоменатото. Бла бла Нямам нищо против Rails, даже изглежда като много добра алтернатива, но все пак няма да мигрирам или ако стане, то ще съм се отказал от 90% от принципите ми на тоя етап
Иначе колко Advenced PHP developers познавате, които са минали на RoR? 1? 2?
„Уважаеми Илиан Йорданов! Като участник на миналогодишния Уеб фестивал в Албена…“ (надолу има още 30 реда)
Моя отговор:
„Поне да не ми бяхте объркали името и можеше и да участвам…“
След 30 минути отново отговор от тях:
„Уважаеми Веселин Тодоров! Молим да ни извините, за допуснатата грешка в предното писмо! Като участник на миналогодишния Уеб фестивал в Албена…“ и надолу абсолютно същия спам.
Драги мои,
Не съм тънкоубден, НО…. в т.нар минал уеб фестивал в Албена, не само че участвах, не само че бих път до Албена за цялата програма, ами и награда спечелих. Отделно… като пращате мейл на veselin@veselin.us мисля, че е логично да не се казвам Илиан, нз какво смятате вие. Ако имате нужда от нов аутосендър мога да ви напиша един нов – за мен ще бъде чест!
Другото ми специално отношение към BWA е породено от факта как след миналогодишната Албена ПОКАНИХТЕ ОФИЦИАЛНО ФИРМАТА МИ ДА СТАНЕ ЧЛЕН. Вие… не аз да се поканя сам…. След като се свързах с вас, попълвах документи изпращах кво ли не, лъгахте ме по телефона знам ли и аз какво. Така и не се свързахте с мен след второто заседание на BWA, което щяло да бъде само формалност. Щяхме среща да провеждаме за кандидастването не помните ли? Очуди ве че бях на 18 ли или какво? Очудва ви, че баща ми не е виден политик/мафиот ли? Драги мои нещата в страната ни се променят и ако не може да свикнете… лошо за вас И не си правете труда да ми пращате още 1 мейл… Няма и да споделям колко коретно беше от MediaMixx да ми наспамиха мейла за тяхния си конкурс… Ще кажете пишеше го в документите за участие. Аз ще ви питам морално ли е, не къде какво пише?
Мерси за поканата, няма да присъствам.
Стига толкова, не искам пак да мислите, че мразя някой. Само споделям.
Така… това го пиша, защото в последните две седмици ме попитаха 3 пъти за това нещо и явно, че хората не го знаят или по-скоро не правят разлика между двете функции. Разлика има и то съществена. Това, което прави двете функции толкова различни, че require() генерира fatal error, а include() ще генерира warning. С други думи при първото положение страницата няма да се отвори, а при второто ще се изпише само грешка на съответното място и останалата част от страницата ще се покаже. Практиката е следната, всички файлове, коит са от съществено значение за страницата, например бази данни, логини, пароли и всичко, без което сайтът ви не може да съществува и функционира правилно, то тогава се използва require(). При всички останали положение include(). Да речем че имате скрипт, който ви показва последните tweetове, за него ще е добра практика да го include-нете, защото и без него сайтът ви ще е ОК. Но ако имате db.inc.php съдържащ функции за връзка с базата данни, най-добре би било да го require()-нете. Просто е, макар и реално начинаещите да не виждат голям смисъл в тази разлика, но с практиката ще се убедите, че и двете функции са полезни и най-вече на места изключително нужни.
N.B.!! Във всички версии преди 4.0.2 всички файлове които се require()-ват трябва да са достъпни, без значение дали редът се изпълнява или не се изпълнява. Да речем, че имате IF условие, което не е истина в дадение случай, но въпреки това, файлът, който require()-вате трябва при всички положения да е достъпен иначе ще получите fatal error и страницата няма да се изпълни. След 4.0.2 всичко вече е ок, но ако при някакво стечение на обстоятелствата пишете на по-предишна от гореспоменатата версия, го имайте на предвид.
Малко в детайли и тънкости – include() е по бърз от двете функции, но пък може да ви създаде големи главоболия. Аз лично съветвам да се ползвате require() навсякъде, където е необходимо, което е в 90% от положенията, като не се притеснявайте чак толкова много за бързодействието, разликата е минимална.
Между другото днес официално направих първия проект – визуалната част на клиентски сайт посредством CodeIgniter и останах колкото доволен, толкова и разочаровн. Доволен от бързината на писане на код и от сравнително големите възможностите на фреймуорка. Разочарован – защото борбата с url адресите е повече от сериозна и се налагат доста хватки за да постигнете желания ефект, който цели един SE оптизатор – като при едно положение така и не разбрах как точно да направя това, което искам, освен на ръка, което си е… недопустимо, защото може и да не знам кое точно трябва да се пренапише в определената ситуация, и то не от незнания, а от динамични възможности на cms-а, а и във форума на CodeIgniter не се намери, кой да ми помогне, май сериозни ги затапих и хвърлих в размисли . Общи впечатления и оценка: 5 от 6, наистина има какво още да се желае за да го провъзглася за ултимално решение.
И един въпрос към всички хостинг доставчици – как може да няма един Ruby хостинг в България?!?!?!?!?!?!?!? В праисторическата ера ли живеем или е 2009та година??
След малко по сериозно ровене и малко повече търсене (по блоговете, в серп нищо не се намери) се оказа, че icn и space.bg поддържат Ruby. С извинения за прибързаните изводи! Утре земем от space.bg пък да видим…. Благодарение на този чуден сайт се образовах, за което благодаря
Точно толкова са дните от раждането ми Днес правя 20 и вече се чувствам остарял Мерси на всички за пожеланията! Най-вече на тези, които не ме оставиха да спя и ми запалиха телефона от обаждания, определено съм трогнат (и малко сънен )! . Мерси на всички, които се сетиха – надявам се, всички пожелания да ви се върнат тъпкано.
Ако сте PHP разработчик, то най-вероятно мразите JavaScript Шегувам се, добре де не съвсем, защото аз лично го мразя. Просто не е това, което искам да бъде. Както и да е, това е тема, която няма общо с това, което искам да кажа. Важното е, че вече всеки един PHP developer може да използва някой (на този етап са 408, което е около 81%) функции на PHP в JavaScript приложенията си. Пълен списък може да намерите тук, като в списъка са включени md5(), file_gets_content(), utf8_encode/decode, mktime() и още доста. В момента се работи по някой пробно, а други пък чакат да бъдат направени, но най-вероятно всички функции на PHP ще бъдат включени рано или късно, поне организаторите са си го поставили за цел. На страницата на PHP JS може да намерите и различни пакети, включващи различни функции, като имате възможност да си правите свои собствени такива.
Честно казано цялата идея и концепция ми е доста интересна. Най-вероятно ще се възползвам от някой от възможностите, които се предоставят, но гледам малко негативно на нещата, от гледна точка на бързодействие, като се има напредвид, че една част от функциите имат по-добра алтернатива. Но ще видим…
Между другото , прочетох някъде за интересна идея как да се отървем от спама без да ползваме капча. Идеята беше следната -> правите едно поле, което е скрито, даже е добре да има име от сорта на URL или e-mail или нещо такова, което обикновено се използва винаги от роботите. След което, като правите проверка, ако някой е писал нещо в него просто не събмитвате коментара и готово! Обаче практически няма никаква гаранция, че няма да бъдете наспамени пак, но пък вярвам, че по-голямата част от „боклука“ ще се „изхвърли“ по този начин.