Если исходить из возможностей и предпочтений программистов, а не от идеи, то можно выработать план определения области идей.
Предлагаю план:
1. Платформа / кросс платформенный
2. Язык
3. Тип(системный софт, софт решающий насущную проблему людей, специализированный, развлекательный и т.д.)
4. Возможные затраты(для онлайн ресурсов это может быть актуально)
Предлагаю развить план, а потом устроить митинг в он-лайне на эту тему.
1) Кросс платформенность я бы сделал бонусом, а не обязательным условием.
2) Основное: CPP. Дополнительно: C#, DB, Web, Python
3) Было бы интересно поработать над нужным людям продуктом и решить, может быть, уже решенную проблему.
4) Готов какие-то средства выделить на первое время.
Во-вторых, Chicken and egg. Проекты в зачаточном состоянии мало кому интересны именно по причине зачаточности; привлекать людей получится в тот проект, который им (этим людям) уже чем-то помог.
Да, система непростая. VampirTrace (компонент, который собирает статистику) open source и формат файлов открыт. А вот визуализатор — нет. Чтобы инструмент был полезным, достаточно реализовать хотя бы основной таймлайн (там где показано, какие процессы когда сообщения отправлали). Основные проблемы это большие файлы трейсов и необходимость быстрой перерисовки графиков, основанных на больших объёмах данных. Потянем ли — не знаю (как обычно, время — основной фактор).
Мне кажется, что это — не вполне верный подход к делу. Зачем нужен собственный проект, если устраивают существующие? По-моему, надо подумать: «Какой программы мне не хватает?», и начать такой проект. А Вы даже задачи среди интересов не указали, только инструменты.
Ну, собственно, идеи + готовность к их воплощению (возможно, от разных людей) я и ожидал услышать. Может, действительно, странновато, думаю, если прям уж никаких идей не будет, то я попробую предложить свои, но они врядли кому-либо понравятся, с фантазией у меня не очень )
Бред какой-то. Давай-те сделаем что-нибудь, но пока не знаю что. Да и присоединяться к open-source проекту ради записи в резюме — даже не знаю, как это назвать. Подумайте, какими open-source инструментами вы пользуетесь и ищите их багтрекеры, подумайте, что вас в них не устраивает, каких фич не хватает и шлите патчи.
Например пользуюсь я Linux, NetBeans и Firefox для программирования на PHP. Навскидку год учить C/Java/C++ (или на чём там фокс) и год в коде разбираться, чтобы хотя бы сообразить куда баг относится. Я даже для gedit баг неправильно запостил, оказывается gedit синтаксис не подсвечивает, а это делает какая gtk (если память не изменяет) либа.
Ну не все так сложно, не обязательно начинать с огромных проектов уровня, netbeans и firefox. Наверняка, вы используете, что-то поменьше, web-framework какой-нибудь. Опять же, учить язык только для того чтобы патчить фаерфокс — наверно не самое лучшее вложение времени, хотя, с какой стороны посмотреть. И чтобы добавлять функциональность в большие проекты не обязательно знать весь его код, достаточно представлять структуру проекта и хорошо разбираться в той части кода, которую собираетесь точить. Как-то так.
Утрировал, конечно. Но насчёт точения замечу ещё одно (сам несколько раз сталкивался) — видишь два фреймворка, нравится в одном одно, в другом другое — точишь, грубо говоря делаешь идеальный фреймворк :), отправляешь патч, а тебе говорят «это не ...-way, у нас всё на (вариант — никакой) магии»… Вот и делаешь свой идеальный велосипед just for fun, используя just for money что-то что делают другие.
В свободное время (которого, к великому сожалению, немного) пишу торрент-трекер и веб обвязку для него на Play Framework. В будущем, когда проект дойдет то того, что не стыдно людям показать, планирую выложить исходники в общий доступ.
Кому было бы интересно этим заниматься, пишите в ЛС/аську/жаббер — обсудим ваше участие =)
Понимаю ваш порыв. У себя такой иногда замечаю. Я just for fun пытаюсь сделать github like приложение (или gitorious like) на scala + jgit + mina sshd.
5Копеек: быстродейственный ORM под python (Си, Python). Издалека может быть похож на LINQ, с построением за счет _только_ python синтаксиса, с последующей возможностью компиляции представления через AST в оптимизированное представление на том же python коде. Цель: кроссплатформенность; межсредность — под SQL и NoSQL решения; сделать из python оптимальную среду для веб>=20кодинга. Плюсы: минимум графики — вообще нет, поэтому не нужны труъ-математики Бамбея; в первом приближении — выполнимо; важен именно суп из разработчиков, поскольку то что уже есть иногда очень даже хорошо, но недостаточно — необходима многократная переработка и многостороний взгляд.
Библиотеки лучше создавать и параллеьно применять для какого-то конкретного проекта, примером может быть Ruby on Railes. Без этого сложно понять их сильные и слабые стороны и в каком направлении вести разработку.
Согласен. Иначе итог оказывается не очень жизнеспособен. Единственное «но», что ORM является основой сайтов, и разрабатывать его синтаксис + внутреннюю оснастку на этапе формирования динамики получалось бы еще хуже — замкнутый круг.
А есть какие-то наброски? Или хотя бы общее представление как оно должно работать? Я в эту сторону думал и даже ковырял немного. По-моему на сложных запросах получится не сильно читаемо и удобно.
Есть, но не много — затыки случались на каждом шагу: может и тому что есть потребуется переделка. Так, оно будет иметь много общего с sqlalchemy и sqlobject, особенно на простых запросах-выборках. Неудобство возникает, когда к строкам требуется применять не такие уж и сложные преобразования, вклинивать пользовательский код, устраивать поддержку транзакций в нетранзакционных средах. Адрес jabber-а указан в конце статьи, и оставшиеся вопросы думаю имеет смысл перенести туда. К вечеру пятницы попробую увязать все наработки в один пучок. Кстати, открытый jabber канал уже работает?
У меня давно была идея сделать сайт-биржу для опенсорс проектов. Такой себе аналог фри-ланс ру, но без коммерческих начинаний и состоящий не только из биржи но и включающий в себя сообщество опенсорс разработчиков и менеджеров подобных проектов. Хотя программную часть я могу обеспечить самостоятельно, один я не справлюсь из-за нехватки времени. Но если ко мне присоединятся хотя бы пару человек, я с удовольствием бы занялся разработкой.
То есть вы хотите сделать более социализированный проект? Сделать акцент на связях, участниках, а не проектах. Было бы интересно посмотреть на результат.
Я хочу написать в этот топик, так как постоянно сталкиваюсь с данной проблемой. Вот например появилась библиотека LevelDB, хочется попробовать ее, а возможности нету на Java. Приходится в одиночку сражаться github.com/osmandapp/JLevelDB пока что.
Другой вопрос, что большие проекты типа Android/Chromium, настолько большие, что присоединится просто нереально имеется в виду не один патч отправить, а действительно работать. А маленькие типа утилит очень быстро устаривают, кто-то написал для себя и проект по тихоньку умер. У самого такое бывает возьму какой-то маленький opensource, а он уже 10 лет не поддерживается, полезный, правда и багов хватает.
Слава богу, сейчас появился Github с социальными функциями, которые просто необходимы для opensource. Не думаю, что мы должны создавать какое-то специальное ПО для каталогизации opensource, а начать хотя бы с самого простого!
Завести на Github проект или в Wikipedia страницу, где мы начнем каталогизировать существующие opensource. Главное мне кажется в этом каталоге ввести 2 уровня сортировке заинтересованность людей и количество разработчиков на данном проекте. Существует куча проектов, которые загнулись по причине ведущего человека, но если у людей сторонних будет возможность отсортировать по заинтересованности и минимальной поддержке, то люди смогут проще найти что-то для себя. Не всем же надо включаться в группы Apache/Eclipse, некоторым достаточно будет попасть в комманду VLC :)
На Кьюте реализован весь управляющий софт. Код кроссплатформенный и работает в Win, Lin и OSX. У нас все программисты предпочитают работать из Линуксов, так что разницы из под какой платформы вы пишете код нет.
Платформозависимые куски (в основном это источники захвата и GUI), разумеется, тестируются на живых машинах с необходимой ОС и потом оборачиваются в условную компиляцию. Но это считаные исключения.
Если интересно, то дальше лучше в личку, или почту.
Можно взять какой-нибудь движок и накатать игрушку на pc/linux/mac/iphone/android/etc. Как раз C++, математика, скиллы в мобильных платформах, 3д моделинг и т.д. Интересно, поучительно.
Если кто надумает — можем собрать команду.
А я всё никак не могу отогнать от себя идею про чат-im, с моментальной отправкой набираемых символов. Т.е. собеседник видит не готовое сообщение, а то как другой печатает, и как буковки появляются на экране.
The Matrix has you…
Скажите мне что это идиотская идея/такое уже есть/ничего не получится, чтобы я успокоился :)
аська такое умела при многопользовательском чате. пишу в прошедшем времени, так как последний раз пользовался ей очень давно и не в курсе последних версий.
ещё, кажется, в unix-овская программа talk так умеет (консольная), как раз почувствуешь себя в матрице :)
Мне кажется, людей имеет смысл звать, когда уже есть что-то законченное. Т.е. ядро любого проекта — сугубо авторская работа, иначе начинается как в известной басне Крылова… Сам сейчас в подобном положении, даже proof of concept не готов, не говоря уже о полноценно работающем прототипе. Людей звать смысла пока нету…
Раз такой топим, мне интересно мнение желающих участвовать в open source проектах — для вас важно чтобы продукт был бесплатным? У меня например есть одна идея основанная на моих (и не только) реальных потребностях. В том числе я думаю о том чтобы результирующий продукт был с открытыми исходниками. Но продукт платный для коммерческого использования, для использования исходников в коммерческих целях так же их нужно купить (хотя возможно просто купить продукт). Т.е. это будет open source software — программное обеспечение с открытым исходным кодом, но платная и с соотвествующей лицензией на исходники.
С одной стороны отталкивает, с другой — кому может быть не интересен коммерческая выгода? Вобщем, все зависит от интересности проекта. Можете рассказать?
Тут речь идет о доверии участников, о некотором их равноправии, что ли. Когда дело заходит о деньгах, сразу можно ставить крест о совместном проекте: частью сознания сразу же начинаешь считать дивиденты, если изначально не оговорено о свободности этого проекта для всех его участников.
Периодически в свободное время работаю над своим движком сайтов S2 (PHP, GPL). Если бы к проекту присоединились заинтересованные разработчики, дело бы пошло быстрее.
Думал написать на Хабре небольшой обзор, когда движок будет в более доработанном состоянии, а тут очень кстати пришелся этот топик :)
В последнее время группой энтузиастов активно пилится так называемый QtDesktop (название говорит само за себя: Desktop Environment на Qt, без привязки к КДЕ-либам). Проект призван собрать разрозненные Qt-приложения под единое крыло. Для того, чтобы именоваться «десктопным окружением», не хватает ключевого звена: реализации виртуальной файловой системы для прозрачного доступа всеми программами к ftp/smb/ssh/подставить своё/etc-ресурсам.
С одной стороны это — часть более крупного проекта, с другой — вполне самостоятельный проект, требующий разработки с полного нуля.
Могу предложить желающим участие в двух небольших проектах. Мне было бы интересно получить опыт работы в команде. Проекты не абстрактные, пишутся под конкретные нужды.
1) Катологизатор видео. Пишу для себя, т.к. ни одна из существующих программ не устраивает. Проект находится на стадии идеи.
2) Визуализация численных рассчетов термогравитационной конвекции. Программа будет использоваться в лабораторных работах студентов НГТУ (но пишется она именно как хобби, это не служебное задание). Первая версия программы уже используется пару лет.
> Визуализация численных рассчетов термогравитационной конвекции.
Смотрели на SALOME? Может вам просто нужно написать конвертер данных из вашего формата в один из тех, которые он понимает?
Глянул бегло. Оно под винду не заточено. Официальных бинарников нет. В официальном списке поддерживаемых платформ винды нет. Посмотрел на список зависимостей — даже просто для сборки предвидятся продолжительные танцы с бубном. Так что не вариант.
Мне ведь не «визуализация в принципе» нужна, а так, несколько типов графиков под конкретную задачу. И чтобы все было интегрировано в одну программу с минимумом настроек под конкретные физические результаты.
Если есть желание поизучать хаскели, есть тут у меня один могильничекнебольшой проект.
Проект сугубо прикладной.
У меня имеется также желание реализовать некоторые более грандиозные идеи, но пока нет времени. Например, дедуктивную субд с интерфейсом на даталоге, надмножестве sql.
есть небольшая заготовка проекта по мониторингу сайтов code.google.com/p/moniweb/ на питоне
проект можно развивать до бесконечности — запустить веб сервис по мониторингу и т.д.
У меня есть идея не опен-сурс проекта, а даже несколько шире. Опен-сурс интернет-сервиса. Некий восстребованный проект с continuous deployment. Ты делаешь вклад не в абстрастный файл, а работу полноценного сервиса. Кто-то делает pull request, изменения интергрируются, автоматически проходят тесты, изменения видны на сайте.
Как пример — сайт расчета стоимости доставки с API. Потянуть такое одному человеку сложно, и не из-за сложности калькуляторов, а скорее из-за количества перевозчиков, их уникальных калькуляторов и постоянно меняющихся тарифов. Но если бы этот калькулятор сервиса мог поменять любой желающий, сделав pull request — было бы куда проще.
Могу подкинуть пару идей ) Мне вот нужен web-фреймворк для интерактивного общения с чем-то вроде экспертной системы. а именно нужна паттернизация/шаблонизация ответов и вопросов. Нужно, чтобы при ответе показывалась, в зависимости от паттерна, некоторая web-форма и в нее подтягивались данные из БД. А то люди ленятся руками что-то вбивать, а тут им в зависимости от типа вопроса, то список выбора, то набор галочек подсунут… Я немного покопался — не нашел такого. Чем вам не идея? Могу описать в виде ТЗ.
p.s. Да, я тоже считаю, что сначала надо решить ЧТО и ЗАЧЕМ делать, а потом уже решать КАК и НА ЧЕМ и В КАКОМ ФОРМАТЕ. Это очень часто следует из постановки задачи.
Изначально проект задумывался как подопытный кролик для изучения шаблонов проектирования. Сейчас проект содержит более 50 классов, имеет очень наглядный и приятный ОО дизайн (для желающих изучить паттерны и увидеть реальные примеры).
Opensource-проект с нуля