Category: Статии

Мина EU Code Week Varna 2017

И ето, че мина Code Week Варна 2017.

Презентацията си я направих на 90% Петък вечерта стоейки до около 2:00., а сутринта отидохме два часа по-рано от старта на Code Week-а в Costa Coffee, изсмуках едно flat white (което съдържа три къси еспресота) за отрицателно време и пренаписах 80% от презентацията.

Качихме се в презентационната зала на хотел “Черно Море” и останах много доволен – имаше мек килим под нас (който е от съществено значение да се изчисти кънтенето в залата), страхотни столове, тюлени пердета, които не пропускат светлина за да може да се вижда какво презентирам на проектора.
Малко преди старта оставих малките изненадки, които Немечек любезно ми предоставиха (отварачки за бира, които са и поставки за такава, весели химикалчета с ръчички и тефтерчета със скрити в тях бонбонки (казващи се “Plan B – creativity boosters”)) и беше крайно време за първи контакт с хората (и тест на това дали всички ме чуват добре. Побърборихме си малко с всички (докато все още влизаха хора) и си личеше от тогава, че презентацията ще е приятна – средната възраст беше под 27, хората бяха разговорливи и не се притесняваха да комуникираме открито.

Презентацията започна в 10:10, Галин Желелязков, организатора на EU Code Week Varna, започна с всъпателни слова за Code Week, разказа с лекота за организацията и идеята на събитието и дойде моя ред като първи лектор.

Залата събира по думи на организацията 120 човека и беше почти пълна, което беше много приятна гледка (особено и за първа лекция). Говорихме на дълго и на широко за всякакви неща, хората се включваха от време на време, имаше и кикотене при някои от меметата, които бяха в презентацията.
Силно се надявам някой да се е вдъхновил и да е почел малко повече по темата.
На Александър Тодоров дължа извинение, че обърках къде работеше. Правилния отговор е Red Hat Enterprise.

И на IT бога Светлин Наков на който му обърках името.

Останалите лекции бяха на:

Страхотни лекции. Юлиан по навик е харизматичен и надъхващ, Преслав Михайлов с който се запознахме преди началото на събитието беше приятен и с лекота разказа нещата, които очевидно са му доста интересни, Жан говори със страстта на човек, който се кефи супер много на това, което прави, Галина Момчева отново демонстрира класа с нейните идеи, а накрая Aaron събра всички около себе си и демострира колко е интересно човек да се занимава с 3D Printing.

 

И малко линкове:
Линк към събитието във Фейсбук;

Медийна подкрепа на събитието имаше от moreto.net, БНР Варна, kmeta.bgyouthub.bg, Информационна агенция “Черно Море” и интервю с Галин Желязков. Искаше ми се информационните агенции и “информационните агенции” да имат малко въображение и да си пишат новините сами, а не да copy/paste директно от събитието.

Презентацията ми:


(Ако се чудите как се embed-ва Google Slides в WordPress (и не само) можете да прочетете тук)

Моите видеа:

Част първа:

Част втора:

Част трета:

 

 

Всички видеа можете да намерите тук:

 

И малко снимки :)

Как да изтрием WordPress (spam) коментари директно от базата

Никой не е защитен от спама под всякаквата му форма – email, в коментарите или по друг начин.

И понеже на marvin живее сравнително посещаван сайт секцията му с коментари беше катастрофална. Не бях го поглеждал от няколко месеца и като влязах в админ панела му ме побиха тръпки – над 12 000 коментара.

Проблема – Как ще разгранича кои коментари са спам и кои не са?

Решението – изпозлвах (с малко скептицизъм) плъгина, който идва при нова инсталация на WordPress – Akismet. За да заработи трябва да се регистрираме в сайта akismet.com (с WordPress.com или Google.com акаунтите си) и да вземем API кода от сайта. След това активираме плъгина и в настройките му бухаме API key-а). След като всичко беше конфигурирано и казах на плъгина да маркира съмнителните коментари като SPAM отидох да проверя и нищо не се случи. Оказа се, че плъгина е по-умен отколкото очаквах – беше си сложил всички коментари в опашка и асинхронно анализираше всеки. След час имах около 14 500 коментара маркирани като спам. Проверих на random стотина и всичко изглеждаше да е ок.

 

Другия проблем – По някаква причина се оказа, че не мога да трия коментарите през admin панела. Трябваше да намеря решение в което да взема всички коментари маркирани като SPAM и да ги изрия през базата данни.

Другото решение – За работа с базата данни използвах mysql console, но можете да използвате и phpMyAdmin (след като проключите работа с него го изтрийте или забранете достъпа до него, че става страшно ако до забравите).
Следните заявки ще ви свършат работа (имайте предвид, че префикса, който съм използвал е wp_, но на вашата инсталация може да е нещо различно):

Изтриване на всички неодобрени от администратора коментари:

DELETE from wp_comments WHERE comment_approved =  '0';

Изтриване на всички ОДОБРЕНИ коментари:

DELETE from wp_comments WHERE comment_approved =  '1';

Всички изтрити коментари, които стоят в статус Trash:

DELETE from wp_comments WHERE comment_approved = 'trash';

И накрая и най-важното – всички коментари маркирани като SPAM:

DELETE from wp_comments WHERE comment_approved = 'spam'; 

 

Tip – Ако искате да видите съдържанието на таблиците можете да направите това със select. Например ако искам да видя всички SPAM коментари ще пусна тази заявка:

SELECT * from wp_comments WHERE comment_approved = ‘spam’;

Със здраве и гледайте да не затриете нещо важно. Ако имате въпроси можете да ме питате тук преди да действате. Ако мога ще помогна.

Преживях втория си дуатлон

(Пиша този пост преди да съм забравил детайлите. Като излязат официалните снимки ще редактирам поста и ще добавя повече информация, за сега ще е сухо четиво :)

Както писах преди няколко дни участвах в Зеления Маратон в Аладжа Манастир (много близо до Варна). Единствената дуатлонова дисциплина беше от 20 км. горско каране и 10 км бягане.

По-голямата част от маршрута изкарахме с Нора (Злати и тя участва, но с мое старо и много тежко колело и логично се забави повече).
Трака беше много по-лек от предия дуатлон, денивелацията също беше доста по-малка и се справих за час и половина с 440 м положителна денивелация за 20-те км. Имаше една-две инфарктни ситуации, но като цяло мина доста добре.

Финиширахме (чакам 2-3 епични снимки), сложих шортите и хукнахме към десетте километра. Като цяло вървяхме бързо и около 1/3 тичахме, но като цяло усещането беше, че се движихме бързо. За час и половина направихме 230 метра положителна денивелация за десет километра.

И двата финиша беше епичен, Злати беше там и ме чакаше. След това хапнахме набързо, вървяхме на въже, на канго джъмп обувки и стреляхме с лък.

Като цяло усещането беше за по-интензивна тренировка отлкото от самоубийствена мисия като предния път.

 

 

Нямаше как да не споделя и паметните кадри на БНР, които за малко да заколят 5-6 човека с тоя дрон. Та има едноминутно видео и там (0:35 секунда) един идиот вика:
“ДАВАЙ, НОРО, ДАВАЙ, НОРО”.
Това беше на финала на колоезденето и минута преди началото на бягането. Реших да мотивирам малко Нора с която карахме и май ми се получи. Същото беше и на финала на бягането, но явно репортерите са си тръгнали. Беше още по-епично :D

WordCamp Варна 2017

Добро утро от WordCamp Варна 2017, което се проведе в Икономически Университет – Варна.

Цъфнах час по-рано и имах време да поговоря с организаторите и спонсорите на събитието. Говорихме си със SuperHosting (с тяхната marketing expert Цвети и придобиването на Host.bg и HostBularia.com, техния security platform и ограничението им по inodes), JetPack и приятен разговор с екипа, FastComet (хостинг компания, имат интересна игра с едни хартиени роботчета и бая сериозни цени за VPS услугите си, но иначе с млад и доста надъхан колектив), Yoast ( и техните супер странни формички за кукита с тяхното лого), ICN (и странния разговор с дамата, която не се представи), Siteground (и техните #басияките bibs), dmarcian (и техните тениски и странно слабата им активност, но пък говорих с един от българсите служители, който имаше доста сериозен technical background), GraphicMama (които имат супер яките стикер дизайни. Също се оказа, че са бранч на 2create, което ме изненада много).

Залата се напълни до горе, доброволците са навсякъде и помагат (Злати и тя е сред тях). Видях доста познати лица и се запознах с още повече :)

И така:

 

Лекция първа – Петър Николов – WordPress API – минало, настояще и бъдеще.

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

Петър говори за WordPress API. И се оказа, че не е едно както мислих до сега, а цели 18! Повече инфо можете да видите тук.

Последва редица примери за валиден и невалиден WordPress код и как се използват правилно WordPress APIs. И още нещо – WP API е еднонишков и има достъп до всичко (няма нужда от authentications към другите API-та).
Петър говори за вече архаичното XML-RPC API и споделям радостта си, че спряха да го използват. Все пак е създадено Февруари 2005… :D Още помня как изтръпнах като се оказа, че като пуснаха REST API-то можех да листна всички добавени потребители в системата по елементарен начин. Бррр.

И една малка вметка – user enumeration през REST API е възможен през следния линк:
https://nedko.info/wp-json/wp/v2/users

Резултата е JSON списък с всички потребители добавени в системата. Моя блог ще върне следните резултати:
[{“id”:1,”name”:”\u041d\u0435\u0434\u043a\u043e”,”url”:”https:\/\/www.nedko.info”,”description”:”Author, writer, cyclist and a passionate QA engineer that love to share his knowledge with everyone.”,”link”:”https:\/\/www.nedko.info\/author\/nedko\/”,”slug”:”nedko”,”meta”:[],”_links”:{“self”:[{“href”:”https:\/\/www.nedko.info\/wp-json\/wp\/v2\/users\/1″}],”collection”:[{“href”:”https:\/\/www.nedko.info\/wp-json\/wp\/v2\/users”}]}}]

И отплесвайки се (както обикновено) мога да задълбавя с това как се прави user enumeration и по друг начин (Нико, благодаря за напомнянето).

Линка е този

https://www.nedko.info/?author=1

При съществуващо ID ще резолвне потребителя по следния начин:

https://www.nedko.info/author/nedko/

Плюса е, че знаем, че зад това ID съществува и какъв е той, но минуса е, че трябва да обходим ръчно или да напишем един цикъл да извърти всички ID-та да някое голямо число и да покаже всички, които не връщат 404.

 

API №2 – AJAX API – Пешо говори за навлизането на AJAX в ИнтернеДа. даде пример с GMail през далечната 2005, когато въпросните изкъртиха с много яки за времето си  drag’and’drop/right click/etc интеракции с потребителя. От тогава стана ясно, че AJAX ще живее дълго. BTW абревиатюрата на AJAX ако сте се чудили е asynchronous JavaScript and XML.

И накрая дойде реда на REST API (Representational State Transfer), който има възможността да се използва с различни програмни езици, почти няма ограничения за използването му в WordPress. Показва и примери с curl.

WPTavern и ManageWP са част от местата от които черпи нова информация за екосистемата на WordPress.

Говори също така и за релийза на WordPress 5.0 – промените ще са скандални, включително новия редактор Gutenberg, 3rd party tools, Woo 3rd party tools и т.н. Лека полека е стане headless.

Доста добра лекция.

 

Лекция втора – Vanina Ivanova – A WordPress blog as a MVP for starting a business

Лекцията е на (доста добър) английски, говори за това как писането на блог може да ни помогне със последващо стартиране на собствен бизнес. Точно за това писах и аз сутринта в темата за блогването. Дизайна на презентацията ѝ е страхотен и доста минималистичен, btw си мислих, че MVP значи Most Valuable Player, а то е било Minimum Viable Product. В случая това е блог.

Започнала е да опипва територията със свой блог за маркетинг на български. Интересно е, че говори за това на английски :) Проекта е MarketingRebels.club.

Казва, че след няколко седмици и точно $41 назад вече са вдигнали блога и са започнали да слагат съдържание. В презентацията си има и меме на Тръпм. Йеей.

Лекцията на Ванина е добър начин да се покаже, че с много малко начален бюджет можем да стартираме ресурс с който да станем разпознаваеми.

 

Лекция трета – Kat Christofer – How WordPress and working remotely helped me see the world – truly, nomadly, deeply

Кат Кристофър работи в екипа на Woo от десет години и се занимава основно с документацията на продуктите. Азиатката е обиколила впечатляващите 49 държави работейки отдалечено.

Казва, че с отдалечената работа или не работиш изобщо или работиш постоянно. Работата е, че за да работи човек отдалечено трябва да е много стриктен към себе си и много отдаден на това, което прави.

Говори за продуктивност – да познаваме себе си и къде сме най-концентрирани, да работим на спринтове (agile sprints), без значение дали сме програмисти, QA или се занимаваме с писане на документация.

 

“Loneliness is not seeing people constantly , but missing the communication with people.” Kat Christofer

“People are happier spending money on experiences, not things” Kat Christofer

Част от лекцията с Кат, на английски:

 

Pros and Cons to be remote worker:

Pros:

  • Exposure to world;
  • Expand perspective;
  • Push boundaries;
  • Already packed;
  • Freedom;
  • Be with people you love (all over the world);
  • Personal growth.

Cons:

  • Residency required for contracts, insurance, etc;
  • Immigration laws;
  • Forget where you are;
  • Difficult to explain your life;
  • Goodbyes (sucks);
  • Dating and relationships issues;
  • Fragmented chapters, not part of your entire personal life;
  • Detained for truth.

 

Is the digital nomad life right for you?

  • Do you know the difference between tolerance vs acceptance?
  • Are you OK with unknown and unexpected?
  • Are you okay to wear the exact same clothes for months or a year?
  • Challenges;
  • Start and stop;
  • How you do on emergency situations?
  • Ready to test yourself and relationship(s)?
  • Organization and details.

Изключителна лекция. Кат ни разказа през сълзи за нейната свобода и за това как е била в Северна Африка при нейн колега, пак от Woo, който я е закарал на изненадващо сафари. Имаше снимки на слонове в пустошта и ни показа какво е да бъдеш свободен.

 

Лекция четвърта – Боян Йорданов – Automated testing for WordPress

Боян говори за типовете автоматизирано тестване – unit , integration & acceptance (end-to-end) testing.  Говори за BDD (behavior driven development) където от особено значение е да мислим за поведението на продукта/функционалността, срещите с клиенти и project managers. Инструмент за тестване на BDD – Behat и Gherkin.

Всъщност това за контакта с клиента и management-а е много важно за всеки аспект в project delivery-то.

Боян влезе в детайли за автоматизираното тестване, които изглеждат яко, а посланието му накрая за комуникацията с клиента и екипа беше страхотна.

Линк към презентацията можете да намерите тук.

“The only way to go fast is to go well” Uncle Bob

И последно – Боян напомня, че автоматизираните тестове са код, а той трябва да се поддържа. Worst case е да имаме стар unit test, който да връща false positive и да свети в зелено, докато отдолу всичко е натрошено.

 

Лекция пета – Radka Nacheva – Emotional Design in WEB

С Радка се познаваме от WordPress meetup-а, където говорихме и двамата. Темата ѝ е отново в нейната специалност – Емоционален дизайн.

Радка малко ме изненада и ме изкара да тества на мен няколко бутона пред публиката – трябваше да изразя малко емоции – гняв, радост и изненада. Беше забавно. Показа ни как цветовете водят до определни очаквания в нас, например сутрешна аларма, Елвис Пресли, рок музика и единия бутон не работеше.
Опита за разговор пред хора и масивния опит в сферата си личат. Аз може малко да съм се притеснил, но да кажем, че се чувствах конфортно. Успяхме да разсмеем доста голяма част от публиката, а аз си тръгнах с малък подарък от нея.

Говори ни и за връзката между емоция и чувствата ни, ментални модели и доста психология. Освен това разказа за колелото на емоциите на което залагат изключително дизайнерите за да предизвикат определена емоция:

Сега се чудя моя блог какви емоции води във вас :D

Един интересен инструмент, който ползва Радка е Palloton.

 

Обяд: Хапнахме в стола на ВИНС-а едни малко измислени сандвичи и сега кибичим докато стане 14:30.

Поговорихме с хората от FastComet и за all-in-SSD и техния SSD failure rate. Един любезен тип ми разказа, че по 3-4 SSD-та при тях заминават на месец. Но сподели нещо друго – за роботизираната ръка в datacenter-а на Google, която на средно всеки 37 секунди fail-вал по един диск. Та тази ръка обикаляла и сменяла дисковете за супер кратно време. Повече информация ще потърся довечера.

Имахме разговор с Любомир Русанов и Методи Дреновски от SuperHosting.bg и поговорихме наново за придобиването на HostBulgaria и Host.BG, за сигурност, за морето и за WordPress. Приятна и интересна компания са, а най-интересното беше, че ме помнят по име при все, че последния път в който се видяхме беше преди поне четири години.

Извън предния разговор – щендера на ICN.BG беше най-малко посещавания. Двете жени там нямаха никаква връзка с хората, които подминаваха щанда, в началото раздаваха рекламни торби с някакви неща вътре, но след това не видях повече от 10 човека за 3 часа пред тях.

Edit – видях в техния профил, че са писали следното:

“Днес сме на Wordcamp Varna 2017 и естествено си говорим с всички за WordPress Management. Всичко за неговите полезни функционалности научете в блога ни https://www.icn.bg/…/configure-wordpress-with-wp-management/“.

С цялото ми уважение, но това не беше така. Отговорът ми, малко по-долу беше:
За съжаление не беше така. Не си говорихте с всички. Щанда на ICN беше най-слабо посещаван, а това се дължи много и на специфичното настроение на двете дами, които представяха компанията.
Нищо лошо, но проактивността е супер важна а тя просто липсваше. Сигурно са били изморени от пътя.

Не мисля, че ще ми изтрият поста, но все пак нека го имам и тук.

Проведохме страхотен разговор и с Kat Christofer. Разказа малко повече за пътешествието си, за вдъхновението и за това какво носи в куфара си, за това как иска да вземе един Ford Mustang и да шофира 7000 мили из цяла Америка. Видях безкрайната свобода в нея и безкрайната самота в очите ѝ. Тази жена знае как да вдъхновява.

Закъсняхме за

Лекция шеста: Luc Princen – Not Your Grandpa’s CSS: Working with CSS Grid.

Говори за CSS Grid. Демонстрира възможностите му с codepen.io. Тук гледах като голям камък. Не хващам нищо от CSS, а това не е никак ок.
Примера, който използваше Luc можете да намерите тук.

 

Лекция седма:  Йордан Хлебаров – “Изграждане на използваеми WP интерфейси за клиенти” или “User-friendly администрацив на WordPress сайтове”

Йордан Хлебаров дооправяше лекцията си до последния момент. Нещо, което правя и аз твърде често. Само два-три часа по-рано му репортнах на мейла малко vulnerabilities за hlebarov.com. Като видя WordPress инсталация имам едни определени навици да сканирам… но пък за сметка на това репортвам на собствениците :)

Лекцията е насочена към ползваемостта на WordPress backend – нещо, което може да не ни се струва кой знае колко важно, но ако имаме клент, който има някакъв достъп до backend-а става страшно.

Стана дума и за website builders като Motopress и VisualComposer (към който имам много голям неприязън!). След това разказа за потребителските полета като Advanced Custom Fields и WP Toolset. Проблема им е, че са доста по-малко гъвкави, но пък ограничава дейността на клиента и възможностите да строши нещо.

При въпросите попитах за това как се отразява използването на подобни иструменти (като VisualComposer) на производителността. Оказа се, че впечатленията ни съвпадат. Long story short – ако можете не използвайте тези инструменти, защото (нетипично за този блог няма да изругая) просто носят със себе си прекалено много допълнителен JS, прави много повече заявки към базата данни.

 

Лекция осма – Noel Tock – Product-Driven Websites

Noel Tock говори за mindset-а на хорта, които са включени в процеса на създаването и поддържането на проекта и че трбява да е насочен към продукта, а не да използваме някакви методики, които просто не работят.

Например това, че не трябва да сме контрактори, а да виждаме проекта в аспекта на product owner.

Спомена и инструментите, които той ползва често – Google Analytics, mixpanel, Optimizely, Hotjar. Определено ще тествам HotJar на блога. Има безплатна версия и изглежда обещаващо.

 

Лекция девета – Верослав Ценов – “WordPress – Не е страшно да кешираш!”

Верослав говори за кеширането. Ето и какви според него са ползите от кеширането:

  • Скорост
  • Сървърни ресурци
  • Потребителско изживяване (UX)
  • Продажби
  • Google/Facebook ранкинг (SEO)

Разговора по-долу е в аспекта на W3TC – Page cache:

Говори за disk basic и disk enhanced режими на кеширане. За това ще прочета повече, че е доста интересна материя.
Един интересен минус в кеширането е, че не поддържа query strings (от тиша на nedko.info/index.php?postID=5). Другото е, че при purge/invalidation на кеша при много файлове процеса може да е много ресурсоемък.
Якото е, че кеширането порръжа отделен кеш за мобилна версия и по реферер.

Идва ред на memcache/redis режимите. Нещо, което смятам да направя скоро на marvin. За това ще си прочетете сами :)

Плюсовете да използвате memcache/redis режим:

  • Кеша се пази в паметта;
  • Поддържа адреси с query strings (по примера по-горе);
  • Mоже да прави мониторинг (phpMemcachedadmin);
  • Не създават файлове и няма дисков достъп.

 

Минуси:

  • Нужна е memcache/redis от хостинг провайдъра или ако имате VPS да си го инсталирате сам;
  • PHP се стартира винаги и добавя latency
  • Ако имате ограничения в използването на паметта поставено от хоситинг провайдъра.

 

TTFB (Time To First Byte) е нещо ново за мен. Това е времето в което получаваме първия отговор от сървъра.

 

Важни настройки за page caching във W3TC:

  • Front page кеширане
  • SSL/https кеширане
  • Изключени страници за кеширане (например wp-admin няма нужда от кеширане);
  • Cookies (ако имаме функционалност, която добавя кукита трябва да ги  exclude-нем)
  • Мобилна версия на кеша (W3TC) Performance –> User Agent Groups

 

Говори за Proxy / web server кеширане (с varnish/nignx).

 

Винаги е удоволствие да слушам истории от системни администратори/technical aware persons. Просто се вижда болката в очите им като разказват как са се борили с някой проблем дълго време.

 

Зададох въпрос за това какви практически са ползите в пускане на page cache в  “големи сайтове” хоствани в superhosting.bg и резултатите в някои проекти стигали по 5-6 пъти ускорение на проекта. Not bad, not bad :)

 

В заключение – WordCamp Varna 2017 са продали 263 билета, което е впечатляващо, особено за първо издание.

Тази статия съдържа малко под 2000 думи и има точно 60 ревизии започващи от 9:15 до 17:40 часа, опитвайки да споделя с вас всичко интересно, което съм чул днес. Надявам се съм бил полезен.

Официален хаштаг за социалките – #WCVAR

Как да разберем кой сървис е отворил порт на нашия сървър

Има лесен начин да намерим кой сървис е отворил порт на нашата машина.
Стъпките са следните:

0. Ако нямате nmap инсталиран:

nedko@marvin: sudo aptitude install nmap

nedko@marvin:/home/nedko# nmap localhost

Starting Nmap 7.01 ( https://nmap.org ) at 2017-08-16 23:41 EEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000060s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 995 closed ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
1022/tcp open exp2
3306/tcp open mysql

Nmap done: 1 IP address (1 host up) scanned in 1.60 seconds

  1. lsof -i :3306

nedko@marvin:/etc/mysql/conf.d# lsof -i :3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 30190 mysql 25u IPv4 9345387 0t0 TCP localhost:mysql (LISTEN)

2. ps -fp 4486

nedko@marvin:/etc/mysql/conf.d# ps -fp 30190
UID PID PPID C STIME TTY TIME CMD
mysql 30190 1 0 00:26 ? 00:00:01 /usr/sbin/mysqld

 

As simple as that.

How to fix: “Briefly unavailable for scheduled maintenance”

Днес ъпдейтвах qualityassurance.pro и явно нещо се счупи, backend-а ми върна “Briefly unavailable for scheduled maintenance” и до там.

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

Обаче в моя случай вероятно защото се опитах да ъпдейтна 4-5 плъгина, ядро и темата едновременно ми е timeout-нало (мога само да предполагам) и остана така.

Решението

  • В основната директория на сайта има един файл, който се казва .maintenance. Единственото, което трябва да направите е да го изтриете;
  • Ако горния метод не сработи има и още един вариант – отворете файла wp-activate.php в основната директория на сайта и сменете стойността на променливата WP_INSTALLING на false.

Хиляди Microsoft книги – безплатно

Макар и рядко се случва да пиша за Microsoft днес ми попадна линк от една много тенденциозна статия написана от от Eric Ligman в който обещава, че ще сподели хиляди книги на Microsoft тематика for free.
Линка можете да намерите тук, а книгите, макар и малко изненадващо за мен могат съвсем свободно да се свалят. Тествах с няколко и няма ядове.

Файл с всичките линкове можете да намерите тук, а ако искате да изтеглите всички наведнъж можете да използвате wget (got the irony?) след като изтеглите файла с линковете:
wget -i ligman-books-links.txt

 

Enjoy.

Как да намерим незатворен HTML таг с прост скрипт

Проекта

Вчера ми се наложи да намеря незатворен HTML таг в една страница и се оказа приключение. Първо започнах да търся някакъв начин да го направя през Sublime, но бързо преустанових и реших да потърся някакво WEB решение.

И се оказа, че има. Автора е Jon Aquino, а скрипта му е прост и върши само това, което очаквах от него.

Как се използва?

Използването на скрипта е елементарно – копираме вече генерирания HTML от браузъра (за Chrome – ctrl+u) и после просто paste-ваме тук.
Разбира се можем да сложим и HTML от наши сайтове ако имаме достъп.

 

Притеснението ми е, че проекта е стар (2013 г.) и не съм сигурен, че има добра поддръжка на HTML5/CSS3, но за основни неща ще свърши добра работа.

It’s even harder now – R.I.P. Chester

Още едно от малкото останали парченца, които направиха моето детство и мен се отчупи днес – Честър от Linkin Park се самоуби. Като Крис Корнел, на неговия рожден ден, който щеше да бъде днес, по същия начин – с въже.

Именно Честър изпя Hallelujah на Ленард Коен, който почина преди почти година, на погребението на Крис Корнел.

Много хейтиха Linkin Park, включително и аз за новия им албум, но истината е, че ако си на върха от толкова много години хоризонта се замъглавя, депресията те хваща за гърлото и започва да те дърпа надолу, а ако с това има и алкохол с наркотици нещата просто продължават по извесния за всички ни начин.

 

Честър няма да е нито първия, нито посления, който ще си замине от този свят с тяло обляно от сълзите на неговите фенове. Няма да е и първия за който ще тръгнат някакви кофти слухове, няма да е първия, който ще остави шестте си деца и вдовица.

Но ще е този за който като чуем, че си е отишъл нещо ще ни опъне душата и ще заболи. Ще си спомням как като чух Linkin Park за пръв път преди около 15 години не си признавах пред приятелите, защото си мислих, че ще ми се смеят, че слушам толкова “лек” метъл. Много неща се промениха от тогава.

Детството ми си отиде отдавна, но под вече побеляващата ми коса и изморените очи винаги ще има място за шепа неща, които ще са старателно опаковани в светлосин станиол с панделка. И всеки път, когато се случи нещо такова като днешния тъжен повод едно от тях ще започва да избледнява и накрая сигурно ще изчезне. И така докато последното добре опаковано нещо от детството ми изчезне. Тогава ще изчезна и аз.

 

Почивай в мир, Честър Бенингтън.

 

И за да заболи повече намерих запис на Linkin Park и Chris Cornell:

 

И още едно мое любимо видео с невероятната английска публика

Arch Enemy с нова песен!

Ся, признавам си, че ми е трудно да се развълнувам мощно като ви разказвам за това. Причините са три и може би повечето, които са чували Arch Enemy, но не са мега фенове ще се съгласят:

  • Анджела за мен беше гласа на Arch Enemy. Алиса изглежда добре, добра е в това, което прави, но имам чувството, че melodic-а ѝ е повече от death-a в нея. Не, че е нещо лошо де, но за някоя друга банда;
  • Arch Enemy е melodic death metal (мелодичен умрял метъл, както биха го превели от man.bg) банда и това, което могат беше силно концентрирано в далечната 2005 година с техния потресаващ албум “Doomsday Machine” и главорезници като Enter the Machine, TAKING BACK MY SOUL (която се превърна в емблема на мелодичния дет метъл), която Анджела изръмжа жестоко пред трудната токийска публика преди няколко години и ме спечели като техен фен, Carry the cross, My Apocalypse и разбира се Slaves of yesterday са камъните, които построиха Arch Enemy и устояха на времето и претенциите на публиката;
  • Струва ли ми се или китарите вече не са толкова прогресивно-агресивни както в първите албуми? Имам чувството, че слушам няколко ритъм китари без душата, която се носеше преди от тях?

 

Та за новата песен от предстоящия албум на групата – The world is yours. Можете да видите официалното ѝ видео тук:

Текста, взет от genius.com, на The world is yours:

[Verse 1]
Rise into the light and fade to the night
Sick of being told how to run your life
Their rules
They’re fools
Empty words they promise so much
The present status quo remains untouched

[Chorus]
If you want the world
Use your mind
Take control
Feel the strength
Rise from within
If you really want it the world is yours

[Verse 2]
Every empire was raised by the slain
Built through the age and you can destroy it in a day
Turn the page
Unleash your rage
Burn your golden cage and walk away
On your path toward ultimate power

[Chorus]
If you want the world
Use your mind
Take control
Feel the strength
Rise from within
If you really want it the world is yours

[Bridge]
Striking at the leash
Foaming at the mouth
No more subservience
Justice will be done

There was only so much
You could take
There was only so much
You could tolerate
When the bough breaks, the empire will fall

[Chorus] (whispered)
If you want the world
Use your mind
Take control
Feel the strength
Rise from within
If you really want it the world is yours

[Chorus]
If you want the world
Use your mind
Take control
Feel the strength
Rise from within
If you really want it the world is yours.

 

 

И без помпозност и някакъв ненужен хейт ще оставя това тук – изпълнението на Arch Enemy в Токио за което говорих по-горе.
Btw препоръчвам да слушате целия концерт.