Если вы не знаете, что такое Google Code-in, возможно, вам стоит прочитать мой первый пост об этом.



Сегодня 16 января 2018 года. На моей панели управления Code-in есть строка о том, что до окончания конкурса остался один день. Завтра крайний срок подачи студенческих работ. Послезавтра - крайний срок, когда наставники его рассмотрят. 24 числа организации должны были выбрать финалистов и обладателей главных призов Google Code в 2017 году. И, наконец, 31 января будут официально объявлены победители.

Вы бы подумали, что это конец, не так ли?

Мой ответ - нет. На самом деле, последние пятьдесят дней я очень усердно работал. Это было головной болью для моих школьных оценок, для моих биологических часов, иногда для меня самих. Я ежедневно ложился спать в 4 утра и просыпался в 6:40 в школу, чтобы после школы я мог снова поспать от 2 до 5 часов. Да, за это время мне не пришлось так сильно потеть. Но я хотел. Стоит отметить тот факт, что это была моя третья версия Code-in, в которой я участвовал. Предыдущие были в 2014 и 2015 годах. Я хотел выложиться по максимуму на этом конкурсе.

Хорошо, но это касалось самого конкурса. Я хочу сказать больше. Викимедиа. Что такое Викимедиа? Я бы сказал, что это очень, очень дружелюбная организация, в которой люди делают все с любовью. Я встретил множество добровольцев на его каналах IRC, которые посвящали свое свободное время разработке и CR для Викимедиа совершенно бесплатно. Я каким-то образом знаю, что они думают об этом и почему они это делают. «Продукты» Викимедиа, то есть MediaWiki и приложение Wikipedia, например, - это то, что вряд ли кто-то не узнает (по крайней мере, в моем окружении). Представьте, сколько людей пользуются этими услугами ежедневно, а может быть, и ежечасно! Миллионы пользователей? Я бы предположил что-то в этом роде. А теперь представьте, что ваша работа, то, что вы обычно делаете в любом случае, предназначена для этого программного обеспечения, для этих услуг. Чтобы ваша работа служила этим людям. Те сотни тысяч человек. И это им хорошо послужило. Это помогло им решить проблему. Это помогло им получить необходимые знания. Вы представляете себе это чувство? Потому что я это знаю и чувствую. В 2013 году выполнил 4 задания. Если я правильно помню, только один имел какое-либо влияние, которое можно было так или иначе заметить. Эта задача заключалась в замене одного значка шестеренки в некоторой всплывающей подсказке на аналогичный, SVG-значок. Вы не представляете, как я гордился этим маленьким изменением. я был как

Смотреть! Вы видите этот винтик ?! Я сделал это!

тогда. И теперь, с таким количеством исправленных проблем, с множеством новых функций, с множеством улучшений, которые я внес в эту организацию ... напишите окончание этого предложения самостоятельно.

Я действительно хотел бы, я очень надеюсь и постараюсь принять активное участие в жизни этой замечательной организации. Скажу честно, у меня не так много времени. В течение этих пятидесяти дней я работал над этим почти на 100%. Но иногда я постараюсь исправить какую-нибудь проблему, дать отзыв или принять участие в более крупных изменениях.

Таков был мой опыт работы с Викимедиа в прошлый раз. Если это каким-то образом побудило вас принять участие в любом проекте с открытым исходным кодом, продолжайте! Свяжитесь с владельцами, сопровождающими, другими участниками, спросите, чем вы можете помочь, посмотрите на эту доску проблем OSS, будь то GitHub, Trello, Phabricator или что-то еще, заявите или прокомментируйте, что вы хотели бы поработать над этим, и приступайте к делу! Активно общайтесь с другими людьми, имеющими отношение к этому программному обеспечению.

Ого, этот текст выше исходит из моего сердца, сердца молодого разработчика, который нашел способ выразить свои навыки программирования в чем-то, что может помочь людям.

Но переходя к другому пункту этой статьи, я хочу подвести итоги своей работы, как и в самом конкурсе Google Code-in.

Я выполнил 43 задачи за сорок девять дней. Подавляющее большинство из них относятся к категории «Код». Также были некоторые задачи по документации и пользовательскому интерфейсу.

Вот полный список всех задач, которые я сделал:

  1. Мобильное приложение Kiwix на Android: предупреждать пользователей при открытии внешнего контента - https://github.com/kiwix/kiwix-android/pull/294
  2. Войдите в Интернет-ретрансляционный чат (IRC)
  3. Мобильное приложение Kiwix на Android: улучшите ночной режим до верхней кнопки - https://github.com/kiwix/kiwix-android/pull/295
  4. Мобильное приложение Kiwix на Android: запретить активацию меню с несколькими боковыми панелями - https://github.com/kiwix/kiwix-android/pull/296
  5. Приложение Wikipedia для Android: долгое нажатие на кнопку поиска на странице со стрелками вверх / вниз должно перейти к первому / последнему совпадению - https://gerrit.wikimedia.org/r/#/c/394365/
  6. [[MediaWiki: Botpasswords-deleted-body / en]] не поддерживает ГЕНДЕРНУЮ поддержку - https://gerrit.wikimedia.org/r/#/c/394761/
  7. Сообщения OAuth, которые указывают на описания ошибок на mediawiki.org, необходимо упростить - https://gerrit.wikimedia.org/r/#/c/394860/
    Кроме того, я сделал последующую фиксацию этого изменения. в более позднее время добавить недостающие сообщения об ошибках.
  8. Добавьте отступ между кнопками в Special: Undelete - https://gerrit.wikimedia.org/r/#/c/395037/
  9. wfWaitForSlaves устарел, замените использование № 3 - https://phabricator.wikimedia.org/T181673#3811093
  10. Расширение всплывающих окон не должно использовать устаревший метод jQuery.fn.hover () - https://gerrit.wikimedia.org/r/#/c/395651/
  11. Сделайте пять строк в расширении MassAction переводимыми - https://gerrit.wikimedia.org/r/#/c/395817/
  12. Повторно включите некоторые снифферы кодов, отключенные в расширении MobileFrontend MediaWiki - https://gerrit.wikimedia.org/r/#/c/396296/
  13. Удалите ссылки на удаленную $ this- ›отладку в установщике - https://gerrit.wikimedia.org/r/#/c/396547
  14. Исправьте недостаточную разницу между цветами фона для уведомлений о непрочитании / отключении во всплывающем меню Эхо - https://gerrit.wikimedia.org/r/#/c/396554/
  15. Удалите числа из макета содержания в режиме печати, так как они отображаются некорректно - https://gerrit.wikimedia.org/r/#/c/396932/
  16. Напишите справочную страницу, объясняющую, как использовать визуальный редактор Викимедиа для создания сложных ссылок - https://www.mediawiki.org/wiki/Help:VisualEditor/User_guide/Links
  17. Исправлена ​​автозагрузка сценариев обслуживания, связанных с дампами баз данных, в ядре MediaWiki - https://gerrit.wikimedia.org/r/#/c/398074/
  18. Добавьте параметры для фильтрации удаленных страниц в инструмент Созданные страницы Викимедиа - https://github.com/x-tools/xtools/pull/143
  19. 7x Добавить поддержку MinusX в один скин MediaWiki и одно расширение MediaWiki
  20. В библиотеку addwiki / mediawiki-api добавить регистрацию предупреждений, которые возвращаются после попытки загрузки - https://github.com/addwiki/mediawiki-api-base/pull/41
  21. Плагин securitycheckplugin обнаруживает двойное экранирование (сложная задача) - https://gerrit.wikimedia.org/r/#/c/399776/
  22. [Модульное тестирование] Модульный тест addPublisher в файле includes / NewsletterDb.php бюллетеня - «https://gerrit.wikimedia.org/r/#/c/400075 женщина/
  23. Исправьте jQuery.fn.hover () устарел в Переводе контента - https://gerrit.wikimedia.org/r/#/c/400175/
  24. Добавьте якоря к заголовкам в CXStats - https://gerrit.wikimedia.org/r/#/c/400260/
  25. [Модульное тестирование] Модульный тест updateName в файле Newlsetter includes / NewsletterDb.php - https://gerrit.wikimedia.org/r/#/c/400420/
  26. Отдельные страницы информационных бюллетеней должны иметь визуальную иерархию - https://gerrit.wikimedia.org/r/#/c/400451/.
  27. Создайте всплывающее окно для музыкальных партитур с дополнительными функциями - https://gerrit.wikimedia.org/r/400834 + https://gerrit.wikimedia.org/r/401093
  28. Преобразуйте три изображения нот в теги партитуры в Википедии (I) - https://en.wikipedia.org/wiki/St_Paul%27s_Suite
  29. Определите wgRestrictionEdit (как пустой массив) на страницах образовательной программы - https://gerrit.wikimedia.org/r/#/c/401411/
    И вот мой комментарий к GCI веб-сайт:
    Может показаться, что это было легко, потому что от запроса задачи до отправки патча у меня ушло 3 часа, но нет! В течение этих трех часов я был на 100% сосредоточен на коде и проблеме, как вы можете видеть на Phabricator (T133289). Я практиковал резиновый утенок и, наконец, нашел проблему. Думаю, это лучшее решение проблемы. Это было непросто, но мне понравилось!
  30. Вкладка Обсуждение на вики-страницах должна иметь указание на несуществующую целевую страницу (кроме цвета) - https://gerrit.wikimedia.org/r/#/c/401733/
  31. Удалите значок языка, отображаемый на Wikidata.org и MediaWiki.org в мобильном Интернете (так как он ничего не делает)
    Небольшой журнал из IRC:
    20:18 ‹jdlrobson› Albert221: проверял себя и выглядит хорошо!
    20:18 ‹jdlrobson› (также проверил enwiki, чтобы убедиться, что он все еще там отображается)
    20:19 ‹thcipriani› круто, буду жить везде :)
  32. Замените span.mw-editButtons-pipe-separator только для макета на CSS - https://gerrit.wikimedia.org/r/#/c/403066/
  33. Сделайте отсутствующие области Query.Wikidata.org переводимыми - https://gerrit.wikimedia.org/r/#/c/402391/
  34. Добавьте параметры диапазона дат в инструмент История страниц Викимедиа - https://github.com/x-tools/xtools/pull/149
  35. Мобильное приложение Kiwix для Android: переместите кнопку закладки в нижнюю панель, когда она включена - https://github.com/kiwix/kiwix-android/pull/338
  36. Мобильное приложение Kiwix на Android: переместите не менее 30 констант в отдельный пакет - https://github.com/kiwix/kiwix-android/pull/339
  37. Блог о вашем опыте (открытиях и знаниях) GCI с Викимедиа - этот пост

Более крупные задачи я выделил жирным шрифтом.

Я хочу поблагодарить всех людей из Викимедиа, на которых повлиял Google Code-in. Они делали все это бесплатно, в свободное время и заслуживают за это действительно больших аплодисментов!

Я также хочу поблагодарить andre__, Zppix, d3r1ck, mhutti1, Kelson, musikanimal, FlorianSW, Jonas_WMDE, Legoktm, Ebe123, Reedy, bawolff, Volker_E, tonythomas, jdlrobson в произвольном порядке за их помощь, большую или меньшую через меня в наставничестве выполнение задач либо в моих проблемах, проблемах и вещах, с которыми я боролся при написании кода. Вы действительно молодцы! Вы делаете то, что любите, и делаете это очень хорошо! Что я могу сделать, так это поучиться у вас! Вы все великие и лучшие в своей области интересов, и я действительно завидую некоторым из этих вещей. Надеюсь, что когда-нибудь мои навыки приблизятся к твоему.

Я также хочу поблагодарить некоторых сокурсников, то есть divadsn, refeed и Phantom42, за несколько хороших шуток и хорошее времяпрепровождение в IRC.

И в четвертый раз я также хочу поблагодарить своих родителей и мою девушку за то, что они поддерживали меня, подбадривали меня и не обращали внимания на мой зомби-образный образ жизни на время конкурса.

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

Несколько последних слов тебе, мой читатель. Если вы хотите узнать что-то новое, получить прекрасный опыт в своей жизни или просто хорошо провести время в вещах, связанных с написанием кода и созданием программного обеспечения, 28 ноября - это дата, которую вы должны сохранить в своем календаре. Вам обязательно стоит принять участие в конкурсе Google Code-in и самостоятельно прочувствовать все, что я здесь написал! Удачи.