Четиво за 9 минути

Отблизо: WordPress vs. Ghost

Този пост е провокиран разговор с приятел, изкушен да опита Ghost. Любопитно му бе какви са впечатленията ми и защо се върнах обратно към WordPress. Покрай този разговор се поразмислих какво наистина ми харесва и какво не в двете платформи и съответно реших да споделя, доколкото може разсъжденията ми да са от полза още за някого.

Първо няколко уточнения:

  • Директните сравнения между двете платформи биха били някак несправедливи, понеже Ghost е твърде млад проект и се е прицелил в ниша, която WordPress по-скоро изглежда като да оставя леко встрани.
  • Технологично двете платформи разчитат на доста различен приложен stack.
  • И макар и да харесвам различни белези и при двете, използвам WordPress още от първите му версии и трябва да отчитам влиянието на свикването и симпатиите, които са се натрупали у мен към него с времето.
  • И още едно уточнение. Понеже съм гърмян заек, аз не спрях WordPress сайта си, а само го свалих offline. Иначе казано миграцията обратно беше доста лесна, защото имах recovery point към който да се върна, като само трябваше да изравня натрупалото се междувременно съдържание в Ghost към старата си WordPress база. Това е важно, понеже обратният път е доста каменист.

Какво ме накара да опитам Ghost?

Любопитството на първо място. Работата ми е свързана с непрекъснати тестове на един или друг софтуер или платформа. А най-добри впечатления се трупат, когато са на собствен гръб. Допълнително Ghost засили това любопитство с различния си фокус (чиста блог платформа), технологии (от долу Node.js, а откъм потребителя Markdown) и семплост, от една страна характерна за всеки млад проект, а от друга – това е водещ принцип при разработката на Ghost

Какво ме накара да оглеждам алтернативи на WordPress?

Използвам WordPress от времето, когато беше някакви двеста и нещо килобайта код. Преди това ползвах Movable Type. WordPress тогава ме спечели с пъргавина, семплост и… подреденост. Да, да – знам, че сега някой ще каже, че тогава беше много по-неподреден от сега, plugin-ите бяха хакове, сигурността беше леко условна в някои отношения и въобще имаше известна каша, но проектът беше обозрим и вършеше прекрасно работата си, въпреки грешките на младостта и растежа.

С времето WordPress от блог-машина се превърна в универсален боец и излезе от рамката на основната си идея – блогването. То, разбира се, остана в базиса му, но новата посока към CMS и publishing платформа от една страна добавиха много удобства, без които признавам си трудно си представям свой проект, но от друга кодът набъбна и започна да изисква доста – и ресурси, и време, и внимание. Дори при мен, макар отдавна да не съм толкова активен блогър и сайтът ми да не провокира толкова трафик, колкото в най-силните му периоди, често имах грижи, свързани най-вече с производителността и натоварването, които трудно се вместваха в стандартните споделени хостинг оферти и дори малките VPS-и.

В София миналата година Matt каза нещо като (цитирам по памет): да, WordPress вече има нужда от повече ресурси, не може да очакваме след толкова време да работи върху хостинг за $5. И не мога да отрека, че е прав, защото в крайна сметка, ако някой иска просто да блогва и да не рови под капака – има wordpress.com като услуга. Ако претендираш за нещо повече, то има цена. Но… все пак… все си мисля, че една WordPress mini версия, прицелена в доброто старо блогване и до днес щеше да има своя вярна публика. Особено при текущия мащаб на общността около Automattic. Btw със същите мисли John O’Nolan подхвана Ghost.

Другото нещо – Markdown. Във времето, когато мигрирах към Ghost, WordPress още не поддържаше официално Markdown. Буквално само седмица или две по-късно бях изненадан приятно да чуя анонс и за това. Обожавам Markdown! Точка. Не! Удивителна! Считам Markdown за своеобразна революция! И макар да нямам никакъв проблем да пея на HTML (аз пея ужасно, така че наличието на HTML в пеенето ми направо спасява нещата), когато пиша, при всички случаи, от много време насам използвам Markdown. Той заслужава побутване из нашите „географски“ интернет ширини, защото все още е незаслужено непопулярен, но това е тема за някой друг нарочен пост.

Какво ми хареса и какво не толкова при Ghost?

Започвам с плюсовете. Ghost е ужасно, ама ужасно пъргаво животинче. Ползването на семплия му интерфейс е удоволствие, особено заради комфорта на писането без почти никакво разсейване. Отляво текстът (с Markdown), отдясно форматиращият се в реално време краен вид на публикацията. Долу ляво tags, дясно бутон save или submit. И малко опции скрити в отлистващ се панел. Това е. Семпло, фокусирано в съдържанието решение за блогване.

Цената на удоволствието – изисква node.js под себе си, което означава, че е нужен хостинг с node.js или VPS, респ. собствен сървър, където човек да си подкара каквото му е нужно. Пускането му изисква известно усилие, което е детска игра за средно грамотен администратор, но вероятно ще е трудно до невъзможно за технически неизкушени представители на човешката раса. Но за тях пък Ghost се предлага като платена услуга (всъщност идеята на проекта е да се издържа от платените си потребители). При този вариант (има и пробен период) се плаща месечна такса, срещу която екипът се грижи за техническите неща, обновленията се случват автоматично, а потребителят само твори на воля.

За мен опцията да ползвам Ghost as-a-Service не е приемлива, защото не мога да си поиграя както обичам с нещата под повърхността. Затова изпратих дарение на екипа, възлизащо на няколко месечни такси и си свалих безплатната опция, която инсталирах върху VPS от DigitalOcean. Между другото, в момента е много лесно да се подкара Ghost върху DigitalOcean, понеже последните вече предлагат готов template за него и всичко се вдига с едно щракване за няколко секунди.

Каква обаче е цената да се поддържа жива една Ghost инсталация? Проектът е още доста суров, развива се от много малък екип и меко-казано ужасно бавно. Например, едва наскоро потребителите бяха зарадвани с възможността да имат previous и next post линкове 🙂 Обновяванията добавят доста скромна функционалност, но пък са чести, което не е проблем ако се ползва като услуга, но ако човек си го дундурка сам, това означава доста често (примерно на около 2 седмици) да минава през ръчно-крачна процедура по обновяване, която може да се скриптира лесно и не боли, но изисква някои съобразявания и последващи проверки дали всичко работи, особено ако човек не ползва темата по подразбиране. А така или иначе за ползване на новите благинки се налага човек сам да си ги добави в темплейта, ако не иска да чака дизайнера на неговия темплейт да се натутка. Много от тях чакат 5-6 ъпдейта накуп за да обновят темплейтите си – и няма как да им се сърди човек. Добрата новина е, че темплейтите на Ghost са базирани на Handlebars и не е нужно да си гений за да си ги хакваш сам, достатъчна е много базова web dev грамотност.

Друг недостатък е, че SEO-то на проект с Ghost е от никакво (доскоро) до средна хубост (към момента). Едва от няколко месеца има автоматично генериране на sitemaps и meta description (с ръчна редакция при желание) на публикациите.

На опашката за бъдещите версии все още чакат доста ключови неща – като може би едни от най-основните са локализацията, архивите, related posts, управлението на съдържанието отвътре, което е доста базово и създава грижи при по-голям сайт, публикувани и чернови са смесени в един поток, заедно със статичните страници за още по-весело. Картинки и изобщо мултимедийното съдържание засега се управлява малко тромаво и куцо. Коментари Ghost си няма по замисъл – ползват се външни услуги за това като Disqus.

На фона на всичко това, очаквам вече въпроса – и защо всичкия този мазохизъм? Но всъщност няма такъв. Ghost прави малко неща, но идеята му е да ги прави по един конкретен (и правилен според авторите му) начин, да работи пъргаво и да работи добре. И каквото може да прави Ghost наистина го прави бързо и добре. Просто още е в периода на нулевите си версии. За някого, който само ще блогва и предимно текст е прекрасно решение, особено ако се ползва като услуга, което ще разтовари блогъра от техническите детайли по поддръжката на платформата му. Но Ghost не е за всеки, особено като stand-alone инсталация. Бих го препоръчал като as-a-service само за блогъри, които тепърва започват и нямат амбиции да растат твърде много, което пък няма как да се отгатне в началото.

От чисто бизнес гледна точка – няма достатъчно инструменти за задържане на вниманието на посетителя или те не са достатъчно развити. Иначе казано – няма удобни архиви, няма подсказвания за подобни други публикации и т.н.

Ghost (поне засега) според мен е силно неподходящ за сайтове с повечко съдържание или такива, които дори с малко излизат от рамката на обичайното лично блогване.

Миграцията към него е относително лесна, но от него към нещо друго (включително към WordPress) си има особености и не е лъжица за всяка уста. Ghost трудно ще впечатли повечето потребители на WordPress, свикнали със зрелостта и богатата функционалност на платформата си.

Та…

Защо се върнах към WordPress?

Започнах с отговора на този въпрос още в предходния абзац. А и целият пост донякъде обяснява защо. Отделно, че това бе тест с планирано завръщане, което почти бях сигурен, че ще направя. Наясно бях, че много неща ще ми липсват без WordPress, а и съм свикнал ужасно много с него, за да не отчитам тежестта на емоционалната си привързаност.

Допълнително към това, моят сайт е натрупал толкова съдържание с времето, че имам нужда от гъвкавостта, зрелостта и функционалността на WordPress и като CMS за да ми бъде лесно и удобно.

И нещо, за което не говоря, но yovko.net винаги е бил тестова площадка за други мои и чужди WordPress-базирани проекти и имам нужда тя да продължи да бъде такава.

И накрая, нещо което ще прозвучи като реклама, но наистина е важно… Имах късмета наскоро, покрай един друг проект, да пробвам услугите на SiteGround и останах много приятно изненадан. Бях чувал много добри отзиви, но досега не се беше случвало да имам преки впечатления. И понеже този пост стана наистина ужасно дълъг, ще спестя технически детайли и подробности, но момчетата и момичетата от екипа на SiteGround, само на първо четене изглеждат като обичайна хостинг компания, защото истината е, че са необичайна и различна хостинг компания, а в предлаганите от тях услуги е вложено сърце и много свежи и оригинални идеи. А това прави нещата съвсем различни като краен резултат. Особено по посока производителност, включително извън България. Силно ги препоръчвам! Най-вече за WordPress проекти. От няколко дни и този сайт преместих там, защото макар и да претеглих други опции, балансът между удобството, цената и производителността, която получавам нямат равни на нищо друго, което съм опитвал до тук. А и са компания с български корени, която си е отвоювала своето място на глобалния пазар, за което заслужава и адмирации и подкрепа.

Засега ми е уютно с WordPress, но ще опитам Ghost отново.