Цього місяця відзначається друга річниця Open edX. З ювілеєм усіх! 🙂
Проект edX було запущено в травні 2012 року перша фіксація починаючи з грудня 2011 року. Але для користувача платформи 1 червня 2013 року виглядало як Різдво. Код, який використовував edx.org, був відкритим!
Звичайно, зміна ліцензії та публікація коду були лише невеликою частиною роботи, пов’язаної з перетворенням Open edX на успішний проект вільного програмного забезпечення. Крім того, необхідно було залучити та залучити спільноту користувачів і співавторів — таких, як я, які нічого не знали про технічні частини проекту, але повинні були вміти ним користуватися. Раніше ці знання були потрібні лише внутрішній команді, а коли хтось приєднувався до команди, новачок міг просто отримати підказку від колеги.
До 1 червня 2013 року вже було зроблено багато роботи, щоб допомогти новачкам освоїтися. Крім того, а веб-сайт зі списком доступних сховищ, це був README з інструкціями та ан сценарій установки. Тому я спробував. І, ну… Це не зовсім спрацювало з коробки. Те, що, як я думав, займе 5 хвилин, щоб запустити сценарій встановлення, перетворилося на досить складний сеанс злому, який тривав цілий день. Пізніше доповнення значно спростили початкове налаштування та підключення, особливо введення devstack за допомогою Vagrant, (повністю перевірено) іменовані випуски, А Проектна документація. Але тоді майже все, що могло зазнати невдачі, зазнало невдачі.
Після роботи над проектом деякий час може стати важко згадати, з якими труднощами нам довелося зіткнутися спочатку. Нам, новачкам, не вистачає більшості знань і контексту предметної області, які старі учасники сприймають як належне. Це досить незручно, тому ми зазвичай зосереджуємося на тому, щоб якомога швидше вийти з цього, вивчаючи трюки інсайдерів. Часто ми не усвідомлюємо, наскільки цінним є око новачка. Оскільки ми мало знаємо про проект, коли починаємо, ми часто думаємо, що нам потрібно дізнатися більше, перш ніж ми зможемо зробити цінний внесок. Але це неправильно; як новачки, ми зазвичай можемо помітити проблеми, які не помічають більш досвідчені учасники. Коли ми стикаємося з проблемою, ми можемо бути впевнені, що інші новачки також зіткнуться з нею пізніше.
Коли мій екземпляр Open edX запустився, я спробував дотримуватись власної поради. Я витратив кілька хвилин, щоб зібрати деякі зміни, які мені довелося внести протягом дня в інструкції зі встановлення та сценарій, і надіслав пара of PR. Якщо ви подивитесь на них, ви побачите, що вони досить незначні: додавання рядка до README та кілька змін у сценарії встановлення. Зрештою, це стало першим внеском у проект і причиною, чому я сьогодні напишу цю публікацію в блозі. Але, що важливіше, вони були хорошим способом дізнатися про процес внеску в проект і позбавити інших новачків від проблем. Це також був дуже корисний досвід, який допоміг мені більше залучитися до проекту. Це створює тепле нечітке відчуття, коли ваш код приносить користь проекту в цілому, замість того, щоб сидіти як технічний борг у гілці. :)
Отже, навіть якщо ви новачок у Open edX або ще не робили жодного внеску, немає такого поняття, як «недосить добре». Якщо ви бачите щось, що потребує виправлення або що ви можете покращити, спробуйте надіслати це! Або просто виберіть один із байтового розміру квитки для нових учасників. Не весь ваш код може врешті-решт приземлитися, але якщо ви будете дотримуватися процесу перевірки, це, ймовірно, так і буде. Крім того, рецензенти доброзичливі, і ви дізнаєтеся багато нового.
До зустрічі в запитах на отримання!
Ксав’є Антовіак — розробник і учасник Open edX. Він також є засновником OpenCraft, яка надає послуги з розробки та консультації для державних установ і компаній, що використовують платформу Open edX, включаючи HarvardX, саму організацію edX, Академію McKinsey та французький уряд (FUN), серед інших. Він давній учасник спільнот вільного програмного забезпечення: він був співавтором безкоштовної гри Card Stories, ініціював кампанію Ryzom.org і є колишнім членом правління April, головної організації захисту вільного програмного забезпечення у Франції.
![]()