Астрологи оголосили тиждень Вікіпедії: як я потрапив у веб

Україномовна Вікіпедія з’явилася 2004, на рік пізніше за РуВікі, але мала короткий період, коли в ній було більше статей :) Я цього не застав, наткнувся на вікіпедію десь на початку 2007, і як дитина з купою вільного часу і задротськими зацікавленнями, застряг. УкрВікі мала 50К статей, РуВікі 130К, а АнглВікі вже 1,5М.

Пішов 2009 рік. Я займався в основному тим, що не потребувало багато розуму й творчости: інфраструктурою шаблонів і категорій. Усіх активних дописувачів можна було перелічити напам’ять, серед них було небагато програмістів з вільним часом, тому боти для виконання рутинних завдань були рідкістю. Вирішив створити одного для двох технічних проблем: привітання нових користувачів на їхній сторінці обговорення і щоденне оновлення статистики вікіпедій різними мовами. Я трохи знав Delphi.

Як всі нормальні люди, я зацікавився Delphi, щоб писати ігри. Натхнення на ігри швидко вивітрилось, але навчився швидко робити GUI-утиліти, Form1.Button1.Click і все готово.

Вікіпедія вже мала на той час API, але на ранній стадії. Тому пам’ятаю, що принаймні деякий час мій бот просто відтворював запит браузера, з multipart/form-data чи application/x-www-form-urlencoded вмістом. Бавитися з API і HTTP-протоколом на Delphi було, чесно кажучи, жахливо. Delphi сама по собі була відносно низькорівнева мова з ручним вивільненням пам’яті і без динамічних асоціативних масивів, які би спрощували роботу зі структурованими даними, а бібліотека для роботи з інтернетом, здається, теж була досить низькорівнева за сучасними мірками. Зате я мав красиве GUI віконце, в якому я міг прапорцями позначати користувачів з матюкливими іменами і не вітати їх. Якщо ви в ті роки зареєструвалися в УкрВікі, то скоріш за все отримали привітання від мене.

Для оновлення статистики вікіпедій бот копіював сторінку зі статистичного сервера Фонду Вікімедії і за словником перекладав назви мов українською.

Якщо ви самі використовували Delphi, то можливо знаєте компонент SynEdit — текстове поле з підсвіткою синтаксису (нині цей компонент існує у двох версіях — один форк від Eric Grange і один від IDE Lazarus для FreePascal). У 2005 польський програміст Пйотр Бузька (Piotr Buźka) випустив на його основі текстовий редактор з підсвіткою вікірозмітки Wikipeditor. Проєкт був відкритим, я взяв із нього плагін синтаксису і створив власний редактор під свої потреби, який називався, ясна річ, WikiEditor for Rich. Приставка for Rich означала, що користуватись функціоналом світового класу могло тільки вузьке коло щасливчиків, а саме мій брат, який писав статті про футбол, і деколи використовував редактор для форматування тексту. Був орієнтовно 2010 рік.

На жаль, навряд чи якісь з тих Delphi-кодів збереглися, бо моїм репозиторіїєм були флешки.

Я вчився у Львівській Політехніці, але, чесно кажучи, саме в програмуванні мало чого вивчив. Як казав один викладач, універ існує, щоб забрати дітей з вулиць і помістити їх поближче до кмітливих дітей.

Десь перед 2012 я вступив у фронтенд. Вікіпедія має jQuery (на його основі MediaWiki зробила бібліотеку OOjs, але зараз планують переходити на Vue.js) і можливість зберігати й ділитися користувацькими жабаскриптами. Намагався їх покращувати, і зрештою вирішив написати свій супер-додаток, кастомізований toolbar для поля редагування. Коли UI став складним, вирішив, що мені простіше повністю перемальовувати компонент, коли міняється стан, так я майже дійшов до винайдення реактивного UI xD Пізніше я став рубістом у черкаській InterLink, і переписав код на CoffeeScript, яким тоді користувалися всі рубісти, тепер треба буде знайти час, щоб переписати на ES6 і модулі.

Крім вікіпедії, мав на Delphi утиліту для опрацювання текстових файлів гри Fallout, щоб легше витягувати й запихати назад переклади. На жаль, я залінивий й так і не просунувся далеко в перекладі. З роботою стало обмаль вільного часу.

Тепер Вікіпедія має також скрипти на Lua, щоб описувати складну логіку рендерингу шаблонів, але я не мав багато досвіду з нею.

Так я отримав базу, яка закинула мене у веб, хоча в універі мріяв займатись десктопною розробкою. Але не шкодую, особливо якщо подивитися, якими потужними стали серверні рішення. Зараз мій домашній проєкт теж опосередковано пов’язаний з вікіпедією, тому можна вважати, що вона досі є рушієм моїх зацікавлень :)

👍НравитсяПонравилось5
В избранноеВ избранном3
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Стаття про вікіпедію здорової людини :)

Знову ці астрологи, поверніть будь-ласка англійських вчених

вони на місці, як мінімум один біолог час від час дописує УкрВікі з Британії :)

Подписаться на комментарии