xFES.ru и Ul-LUG вместе с 2010-го года!
Начну издалека.
Вчера через портал PowerDeveloper.org я отправил свою заявку на портирование kexecboot на платформу Efika MX. В настоящее время на данном портале действует программа для разработчиков СПО, в рамках которого одобренным проектам предлагается оборудование на базе последней платформы компании Genesi - Efika MX. В основе платформы - "система-на-чипе" (SoC) Freescale i.MX515, базирующаяся на чипе ARM Cortex A8 800Mhz.
На базе этой платформы сейчас созданы два устройства - неттоп Efika MX Smarttop и нетбук Efika MX Smartbook. Их и рассылают отобранным участникам проекта.
Приятной неожиданностью стало то, что сегодня со мной в irc связался один из организаторов проекта по поводу моего предложения. Если вкратце, то в kexecboot они не нуждаются, и их аргументы убедительны. Но их очень впечатлила сама заявка (пишите хорошие заявки!), и они почему-то решили, что я - талантливый разработчик. У них появилась другая идея. Эти устройства планируются к поставке под управлением CromiumOS, использование которой, по сути своей, сводится к использованию браузера. Для людей, которым нужны другие приложения, предлагается реализовать такую опцию, как быстрая "софтверная" перезагрузка в другой дистрибутив. Собственно, программа-минимум - всячески протестировать работу механизма kexec на этой платформе, поскольку там возможны нюансы с firmware SoC. Программа-максимум - реализовать эту самую "софтверную" перезагрузку.
Обсуждение деталей пока решили перенести на понедельник. Между делом спросил, можно ли получить Smartbook. Оказалось, что их сейчас всего около 10 штук в рамках данной программы, и они стараются без особой надобности их не раздавать. Поэтому, если проект в итоге будет одобрен, скорее всего, мне вышлют Smarttop.
Это не единственный подобный портал и не единственная "раздача слонов". Например, Nokia довольно часто раздавала N900 активным разработчикам (в частности, из проектов Qt и KDE). Они же часто проводят конкурсы на лучшее приложение на Qt или лучшее приложение для Maemo.
Некоторые проекты имеют свой фонд "пожертвованного" (но, обычно, уже устаревшего) оборудования, которое может быть выслано человеку для работы над какой-то частью данного проекта. Так, например, проект OpenEmbedded высылает мне Zaurus SL-5500 с пачкой различной CF- и SD-периферии, а также Zaurus SL-6000 в Санкт-Петербург разработчику, который занимается поддержкой этой модели в ядре Linux. Я, в свою очередь, буду заниматься поддержкой модельного ряда Sharp Zaurus в OpenEmbedded и дистрибутиве Angstrom (такой особый вид некрофилии, поскольку линейка Sharp Zaurus уже больше года закрыта).
Более того, вашу работу над открытым проектом могут финансировать. Но об этом я напишу в следующий раз :)
К чему я все это написал? К тому, что участие в разработке СПО - это не только способ интересно проводить время, учиться и общаться. Активная работа над открытыми проектами позволяет вам совершенно бесплатно получить современное оборудование для вашего проекта, а также завязать знакомства с далеко не последними людьми из весьма серьезных компаний.
хм... очень интересно. А можешь коротко (или не очень) написать, грубо говоря, как стать разработчиком, для тех кто загорелся идеей? Поясню... скажем, как выглядит процесс разработки, какие знания нужны, какими материалами и ресурсами лучше воспользоватся...
P.S. Тока не в виде нужен Мозг и гугл))))
Мозг и гугл, конечно, тоже нужны.. Но главное не это.
По своему опыту (который я опубликовал следующим постом) я могу сказать следующее.
Во-первых, надо получать удовольствие от того, что ты делаешь.
Во-вторых, браться нужно за то, чем ты пользуешься, либо за то, чего тебе не хватает. Браться за абстрактный проект только ради славы и, потенциально, денег - весьма плохой старт. "Топлива" не хватит.
В-третьих, не обязательно быть разработчиком в проекте. Можно быть писателем, переводчиком или дизайнером. Можно даже просто генерировать мысли по развитию проекта или поддерживать его инфраструктуру (править вики, вычищать документацию, тестировать). Можно помогать новичкам. Все зависит от знаний/умений и желания.
Так что, вопрос "как стать разработчиком" некорректен, на мой взгляд. Необходимые роли, знания и процессы зависят от проекта, над которым идет работа. Например, чтобы помогать проекту OpenStreetMap, достаточно разобраться с редакторами GPS-треков и иметь GPS-приемник. А чтобы участвовать в разработке ядра Linux нужно знать C и уметь разбираться в чужом коде, а то и в "железе". Хотя и там есть работа для не-программистов.
В общем, главное - желание. Если его нет, то найдется масса отмазок вида "я не умею", "это сложно" и т.д.