Перейти до вмісту

Wikimedia Hackathon 2019

Матеріал з Вікімедіа Україна
Учасники заходу з України

Відвідання мною хакатону допомогло мені заповнити деякі білі плями в технічних знаннях, яких мені не вистачало для внеску в розвиток Вікіпедії і супутніх проектів:

  • Я почав розробку свого першого інструмента на Wikimedia Toolforge - Cite web helper. В цьому інструменті користувач вводить URL-адресу статті в інтернет-газеті і отримує повністю заповнений шаблон {{Cite web}}, який може скопіювати і вставити до статті, замість того, щоб заповнювати його вручну. Наразі, інструмент ще знаходиться в зародковому стані, працює лише для Укрінформ, Української правди та Європейської правди, але початкову стадію, яку я не міг подолати самостійно (отримання SSH-ключа, купа складних команд в терміналі Linux, що і як розмісти в кореневій папці інструменту тощо), вже подолано і надалі я зможу продовжувати роботу над інструментом самостійно або ж створювати нові інструменти. Також, окрім створення інструменту на мові PHP, що є варіантом за замовчуванням, можу перевести його на мову Python. Крім того, можу створювати на Toolforge бази даних, які можна використовувати в інструментах. Вважаю це найкориснішим, що я отримав від хакатону.
  • Вільний картографічний проект OpenStreetMap тісно пов'язаний із проектами Вікімедіа, особливо із Вікіданими. Зокрема, мапи саме з OSM використовуються в розроблених мною ще торік шаблонах на основі Lua - {{Mapframe для карток}}, {{Mapframe маркери}} та {{Mapframe_маркери}}. Але, на великий жаль, OSM має непомірно високий поріг входу. Мені на хакатоні допомогли частково його подолати. Зараз я можу робити найпростіші редагування в OSM. Декілька редагувань зробив під час хакатону.
  • Дізнався про Wikimedia Cloud Services, до якого належить і Toolforge, які дозволяють робити багато речей не локально, а "в хмарі". Поглибленіше розібрався в тому, як запускати ботів в хмарі, як налаштовувати їх так щоб вони запускалися на постійній основі через певні проміжки часу. Це корисно якщо є бот, який має працювати постійно або який використовує великі ресурси (процесорний час, оперативну пам'ять або місце на диску).
  • Їдучи на хакатон мав план трохи більше розібратися в рушії MediaWiki. Я тоді недооцінив наскільки він величезний. Але все ж, пару сніжинок з вершини айсберга я вивчив.
  • Відвідав деякі сесії що підвищили мій рівень обізнаності про деякі технічні речі, наприклад Phabricator або Wikibase.
  • Дрібниця, але теж результат відвідування хакатону: створив статтю про Чеську національну технічну бібліотеку, в якій проходила ця подія.

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

  • На хакатоні була присутня команда Commons app . То ж я підняв питання перед менеджером про пам*ятки noFOP. В результаті був створений баг. Схоже питання піднімалося ще рік тому, але баг не був зареєстрований.
    Поговорив з Lucasом і він допоміг створити скрипт, щоб виявляти чи є пам*ятка під NOFOP
  • Відвідав презентацію проекту Growth. Це спеціальний додаток, який дозволяє краще мотивувати новачків. вже використовується у чеській та корейській вікі. Поділився з ними ідеями щодо новачків :).
Проект Growth
  • Опісля обговорив з Benoît Evellin (user:Trizek). Він сказав, що цей проект можна проінсталювати і в нас. Поділився тим, що для цього потрібно. Найперше потрібна згода спільноти.
  • Розробив проект "Вікіпедія:Статті полвікі про Україну без українських інтервік".
  • Відвідав збори Wikidata. Дізнався про Wikibase. Також задав питання і дізнався, що можна у вікі генерувати списки базуючись на вікідаті. Це може згодитися в поточних, або майбутніх моїх розробках. Також можливо це може використовуватися в WikiGAP, щоб зменшити навантаження на сервер.
  • Відвідав "Вступ в локальну розробку з кубернетс". Серед іншого визнали, що для віндовс в них поки що нема інструменту.
  • Відвідав TechCom office hour. Обговорювали divercity в техкомі і розробці.
  • Серед іншого цікавого можу зазначити: Чеська Wikimedia має програму "Вікіпедія для літніх людей", де вони навчають редагуванню вікіпедії. Думаю в нас таке теж можна запровадити. --Alex Blokha (обговорення) 12:55, 28 травня 2019 (UTC)[відповісти]

WikiGrade

[ред.]

На гакатоні я зосередився, насамперед, на роботі над WikiGrade. За основне завдання я собі ставив:

  1. Щоб инші люди зможуть легко долучитися до його розробки. У рамках цього пункту, під час підготовки до гакатону і під час гакатону я зробив таке:
    1. Налаштував contiunous integration на gitlab для автоматичного запуску тестів і звіту про покриття проєкту тестами на сервері;
    2. Написав вступну документацію для розробників: CONTRIBUTING.md;
    3. Застосував у проєкті автоматичне форматування коду з допомогою black для підтримки уніфікованого стилю;
  2. Щоб його змогли використовувати инші афіліяти та спільноти без потреби «ручного» керування з мого боку. Цей ще не повністю втілено, але зроблено значний шмат роботи в цьому напрямку:
    1. Поліпшив процес імпорту статей з адміністративної панелі — тепер адмінка слідкує за станом імпорту і показує дату останнього імпорту статей, не дозволяє призначати рецензентів і дискваліфіковувати статті членів журі, поки не завершено імпорт;
    2. Все ще як TODO залишається можливість мати адмінів, чиї права обмежуться тільки певними конкурсами;
  3. Також я робив загальні поліпшення якости коду і виправляв блохи. Окрім того, завдяки тому, що на Tool Forge'і під час гакатону зробили доступним python 3.5, я «відправив у минуле» гілку для непідтримуваної версії django (2.0) і python (3.4).

Загалом я зробив 18 комітів безпосередньо під час конкурсу і 27 включно з підготовкою.

Презентація Wikigrade на Showcase

[ред.]

На закритті гакатону я презентував Wikigrade у рамках Showcase.

Внесок до python-mwapi

[ред.]

Я також познайомився з maintainer'ом бібліотеки-адаптера для mediawiki python-mwapi і подав успішний pull request до файлу README цієї бібліотеки, у якому написав приклад використання цієї бібліотеки для запитів з продовженням.

Відвідані сесії

[ред.]

Я відвідав кілька сесій, які мене зацікавили. Зокрема — сесії про Wikimedia Cloud Services, де можне було поспілкуватися з адміністраторами цієї інфраструктури. Також був на презентації PAWS, про який раніше не чув, який можна справді дуже цікаво застосовувати для роботи з даними і презентацій.