Protože jsem byl pár let tak trochu „zalezlý v díře“, tak bych nejprve rád uvedl kdo jsem. Jmenuji se Mirek Marek a mám za sebou více jak 20 velice zajímavých let praxe v oblasti vývoje online aplikací. Pamatuji si dřevní pionýrské časy a jsem v oboru aktivní do dnes.
Jako většina mých vrstevníků jsem se s počítači skamarádil ještě v doznívající osmibitové éře a programuji vlastně od dětství. Na přelomu století jsem se dostal k problematice internetu a logicky jsme tak nemohl minout PHP se kterým (mimo jiné) byla spojena má další profesní dráha. A samozřejmě také s Linuxem, Apache, MySQL a s tím vším co k tomu patří. (Krom PHP umím například i jazyk C a jeden čas jsem si rád „hrál“ přímo uvnitř PHP a Apache.)
Prvních pár let jsem se hlavně učil a poznával tento nový svět, který byl a stále je a bude tak „trochu“ odlišný od vývoje offline aplikací. A já bych řekl, že je to dobrodružnější práce, protože vyvíjíme něco, co je vystaveno „větru a dešti“ internetu a co je určené pro opravdu mnoho lidí. Na samém začátku jsem byl u pár zajímavých projektů, ale ty už z dnešního pohledu nestojí za řeč. Ovšem dost jsem se toho naučil praxí.
Zlom přišel po vojně, kdy jsem nastoupil k hostingové firmě Forpsi. Byl jsem u největšího rozmachu této firmy a byl jsem to právě já, kdo se postaral o klíčovou automatizaci řady věcí v této firmě.
V roce 2008 jsem se jako šéf vývojového oddělení přesunul do formy MEDIA FACTORY a poznal jsem slasti a strasti práce v tom čemu se říká digitální agentura. A musím říct, že se nám dařilo. Realizovali jsme malé i velké (hodně velké) projekty pro řadu velice zajímavých klientů.
V té době primárně mým (ale samozřejmě ne pouze mých) přičiněním vzniklo toto:
Byl to velice zajímavý projekt, který kupodivu i po té spoustě let stále někde žije.
Ovšem já, i když jsem byl hlavní autor tohoto nástroje a věnoval jsem tomu obrovské množství svého soukromého času, jsem s tím projektem a jeho kvalitou nebyl spokojený. A v rámci agentury nebyl na systematický vývoj produktu v pravém smyslu slova prostor. Však to asi znáte …
Díky opravdu široké škále projektů od malých webů, přes velké portály až po intranety a interní systémy jsem získal opravdu velkou zásobu poznatků a zkušeností. A to i z pozice šéfa – člověka zodpovědného za chod oddělení, ale i prezentace u klientů a tak dále.
Postupně jsem si ujasňoval co je užitečné a důležité a co je naopak slepá ulička. Pro zajímavost Baseon měl UI administrace jako JavaScript aplikaci postavenou na tenkrát slibném frameworku Dojo a Dijit. Během následujících let jsem se však utvrdil v názoru, že to není úplně ideální model jak takový druh online aplikace vyvíjet. Pochopitelně jsme používali i PHP famework a to Zend řady 1. Ovšem postupně se ukázalo, že z tohoto frameworku je použita pouze minimální část a z Baseonu se stává framwork sám o sobě.
Proto cca v roce 2011 začalo vznikat něco, z čeho se postupně stal PHP8 framework Jet i když se to tenkrát ani Jet nejmenovalo a od dnešního Jetu se to z počátku odlišovalo. Každopádně jsem chtěl udělat něco na zelené louce a pořádně. Něco co by nebylo šité horkou jehlou a pod tlakem. Chtěl jsem něco, co by agregovalo všechny mé zkušenosti a to nejen rozličné zkušenosti vývojáře, ale i zkušenosti manažerské. Proč manažerské? Protože o čas a peníze (tedy efektivitu) jde samozřejmě až v první řadě.
V roce 2013 se změnil můj osobní život. Narodil se mi syn, ale také agenturní stres a mé až přehnané pracovní nasazení – to vše mi dalo signál ke změně života. Stal se ze mě tak zvaný freelancer, ale především svobodný a šťastný člověk a táta.
Na svou práci a obor jsem pochopitelně nezapomněl a nezanevřel. Naopak. Aby ne, stále mě živí – momentálně se „motám“ nejvíc kolem e-shopů. I když teď už bez agenturního stresu, s důrazem na spokojený život. Ale i jako freelancer stále potřebuji efektivity. Krom technologií možná o to víc potřebuji manažerský přístup. Na Jetu jsem tedy pracoval a pracuji dál a především jsem tento framowork začal používat v praxi pro mé projekty a zakázky, ale i čistě hobby projekty a experimentální projekty. Mimo jiné na základě tohoto frameworku chystám například e-commerce řešení nové generace. Ale o tom třeba jindy.
A teď už se dostávám konečně k té základní otázce, která je v nadpisu tohoto článku: Proč?
Proč jsem nesáhl po nějakém existujícím framworku? Pozornému čtenáři jistě neunikl fakt, že je to naopak. Hned jak to bylo možné jsem před lety po framworku sáhl. Ale nebyla to úplně ideální zkušenost… I nadále jsem zkoumal trh. Ale nenašel jsem nic, co by mi doopravdy plně vyhovovalo a co by mi umožňovalo pracovat tak efektivně jak potřebuji.
Určitě by bylo dobré si říct, co od framworku jakožto základního stavebního kamene projektů čekám:
Že vám v prioritách chybí „zaklínadla“ jako MVC, ORM, Dependency injection a další? Ale jistě, to vše a mnohé další PHP Jet zahrnuje a umí také. A mě to všechno opravdu hodně baví. Ale to všechno jsou nástroje a prostředky, ne cíl. Razím heslo, že naším cílem má být toto:
A ano, i technologie mě stále baví. Velice mě baví. Ale primárně mě baví tvořit něco co je užitečné a prospěšné. Nerad řeším to, co nepřinese žádný reálný efekt.
Proto jsem si vytvořil PHP Jet, který je sám o sobě zajímavá technologie. Proto jsem si vytvořil framework, jehož základní návrh a filozofie je vlastně dlouhé roky stejná a nemusím se bát, kdo se kdy z jakého důvodu rozhodne „překopat“ framework, který používám a udělá z něj téměř (nebo úplně) něco jiného. Nemusím se bát toho, že narazím na problém, v jehož řešení mi framework bude spíše překážet než pomáhat a budu hledat „nestandardní“ řešení. Vytvořil jsem něco co má v sobě i „klikátka“ velice usnadňující život a dosti eliminující rutinu (a to jsem prosím přes 20 let linuxám :-D ). Vytvořil jsem něco, co mi umožňuje perfektně kontrolovat co vlastně aplikace dělá. Vytvořil jsem něco co mi dává svobodu používat různé přístupu pro různé typy online aplikací a jejich komponent. Vytvořil jsem něco, co mi umožňuje pracovat rychle a efektivně a zábavně. A v neposlední řadě jsem vytvořil něco, co společně s PHP a jeho moc fajn verzí 8 již dozrálo a je čas pustit to do světa.
A mimochodem … Znáte skvělou knihu „Co programátory ve škole neučí“ od Petra Palety? Starší, ale opravdu dobrá kniha. A z ní si nejvíce pamatuji pasáž, kde autor píše o tom, jak by se programátoři na škole měli učit nejen naše řemeslo, ale i základy ekonomie, ale i psychologie a tak dále. Zlatá slova. A já na to hledím stejně. Hledím na to jako člověk, který roky nejen programoval a programuje (což mě stále strašně baví), ale i jako člověk který nesl a nese přímou zodpovědnost za projekty – který nosil a nosí kůži na divoký trh. Z toho důvodu v tomto úvodním článku nejsou žádné kusy zdrojáků, žádné popisy technologií. Proto zdůrazňuji můj spíše manažerský pohled proč jsem dal vzniknout PHP Jet. Protože pro mne je primárně důležité, aby technologie byla dobrým parťákem pro realný život. A proto Jet vznikl a právě tato myšlenka je základem jeho návrhu a filozofie.
A v tomto duchu bych chtěl psát i svůj blog, zde na root.cz – tedy na místě které je také spojeno s mým profesním životem (kolik informací jsem se tu dočetl jako zelenáč už nikdy nespočtu) a vlastně i mou srdeční záležitostí. Chtěl bych více popsat pro proč je důležitá dlouhodobá stabilita. A proč je důležitá svoboda, ale zároveň i řád a tak dále. A ukázat, jak s tím právě PHP Jet umí pomoci, nebo jaký je obecně přesah na technologie. (Ostatně čistě o technologii PHP Jet je toho napsáno již poměrně dost v dokumentaci.)
Tak díky za přečtení a nashle u dalšího dílu a třeba na viděnou ve světě PHP a PHP Jet.
Baseon... No, už jsem se setkal se spoustou CMS a některé jsem si i zkoušel nějakou dobu provozovat, případně je i nějak rozšižovat. Baseon jsem tedy poznal jen z uživatelského hlediska - pracuji v jedné instituci, která na něm měla postavený web. Ale byla to zkušenost poměrně frustrující - divná logika celého systému, všechno bylo tak pomalé, některé věci nefungovaly, k nahrávání souborů či obrázků to chtělo FLASH... Některé celkem triviálně vypadající úpravy obsahu si v tom správci mého zaměstnavatele udělat nemohli a firma za to prý chtěla dost peněz...
No, je možné, že některé věci by nějak omluvitelné byly - systém samotný třeba tak špatný nebyl, šlo jen o špatnou implementaci pro nás, možná to jelo na pomalém železe (a proto to bylo tak líné), možná FLASH pro upload už dávno potřeba nebyl, jenom my jsme měli nějakou starou verzi - no ale zase jelikož implementaci dělala asi přímo ta agentura, co za tím systémem stála a jak jsem pochopil, tak ten můj zaměstnavatel za to celé platil asi taky docela dost (a asi nejen jednorázově na začátku), tak stejně je má zkušenost značně negativní...
Ale tak chybami se člověk naučí nejvíc, tak jestli jste pak začal tenhle nový framework psát na zelené louce a s těmito zkušenostmi, tak to nakonec může být docela fajn. :-)
Já už ale od PHP před pár lety také utekl a nyní jsem celkem spokojený s Pythonem a jeho frameworky (Django, něco jsem si zkusil i ve Flasku). Ještě něco svého udržuji v PHP (a taky ještě s pokusem o vlastní framework) a je to spíš za trest, tak snad se mi v tomhle případě povede PHP také zbavit. Ale spoustu věcí se na tom tehdy člověk naučil a pak právě o to víc oceňuje, že v nějakém frameworku jsou už ty základní věci implementované. A taky člověka potěší, když pak zkoumá tu implementaci někoho jiného a zjistí, že na to před lety šel třeba celkem podobným způsobem...
Máte pravdu, že to (Baseon) nebylo úplně ideální (sám jsem s tím nikdy nebyl plně spokojen). A některé implementace byly povedené více, jiné méně.
Ostatně to je také důvod, proč jsem chtěl jít dál a udělat něco lepšího.
Baseon byl CMS. A to má výhody i nevýhody. Díky této kapitole mé kariéry jsem to poznal. A spoustu věcí bych řešil (a řeším) jinak.
Ostatně to je důvod proč jsem teď tady a nemotám se v kruhu ;-)
Přečteno 20 709×
Přečteno 18 548×
Přečteno 17 777×
Přečteno 17 521×
Přečteno 16 219×