Comments 36
Более эпический пример… Хм, не очень эпично, но из моего личного опыта:
Использовал я в своё время один не очень известный и распространённый дистрибьютив Linux-а. Тогда у меня безлимитом и не пахло, тариф был с платным трафиком. Обновляться выходило дороговато. И тогда я выцепил разработчика в чате и предложил реализовать delta-обновления. Ах, да, дело было в 3 часа утра =) Некоторое время мы совместно обсуждали вопросы реализации, занимались гуглением, в итоге был откопан bdiff, для которого я сваял 3-х строчный патч, чтобы он не сегфолтился на больших файлах. Таким образом примерно через 24 часа в svn-е лежала версия пакетного менеджера с поддержкой дельта-обновлений и был создан специальный репозитарий с дельта-пакетами.
Использовал я в своё время один не очень известный и распространённый дистрибьютив Linux-а. Тогда у меня безлимитом и не пахло, тариф был с платным трафиком. Обновляться выходило дороговато. И тогда я выцепил разработчика в чате и предложил реализовать delta-обновления. Ах, да, дело было в 3 часа утра =) Некоторое время мы совместно обсуждали вопросы реализации, занимались гуглением, в итоге был откопан bdiff, для которого я сваял 3-х строчный патч, чтобы он не сегфолтился на больших файлах. Таким образом примерно через 24 часа в svn-е лежала версия пакетного менеджера с поддержкой дельта-обновлений и был создан специальный репозитарий с дельта-пакетами.
какое-то сообщество хабрачеловек?
«казнить нельзя помиловать» (с)
В самом начале жизни nginx помогал в его дебаженье и отладке. :) Недавно скинул багфикс разработчикам компоненты Indy для Delphi и Lazarus. Не эпично, но тем не менее. :)
Как-то беседовали с коллегой об open-source проектах, которые ведем и он сказал фразу, которая мне запомнилась:
— Мы, просто, понемногу отдаем долг…
— Мы, просто, понемногу отдаем долг…
как-то помню три дня убеждал разработчиков pthread-win32 в том что у них есть баг и что прога отжирает хэндлы. Пишу пример, они придираются к какой-то фигне и просят переписать. Переписываю и заново. В конце концев таки мне поверили, проверили и нашли багу.
Но наверное суть в том что без этого стояла моя тогдашняя работа — по работе проще убедить себя заниматься подобными вещами, а не плюнуть и пройти мимо ( читай взять более стабильную библиотеку )
Но наверное суть в том что без этого стояла моя тогдашняя работа — по работе проще убедить себя заниматься подобными вещами, а не плюнуть и пройти мимо ( читай взять более стабильную библиотеку )
ну как, как. Я вот взял и написал рабочий опенсорсный видеостриминговый сервер =)
я на Убунтовском сайте перевёл несколько хороших программ на русский, после того, как заметил, что отсутствие русефекаторов мешает друзьям и знакомым пользоваться линупсом
Вы «русефецировали» хорошие программы? Вот, наверное, почему многие предпочитают английский интерфейс.
я перевёл
пе-ре-вёл
ПЕЕЕЕ-РЕЕЕЕ-ВЁЁЁЛ
читайте внимательно
вы хотели подъебнуть, а получилось только продемонстрировать вашу собственную некомпетентность
в линупсах «русефекацея» не возможна в принципе:
1) все приложения открыты, локализация и интернационализация продуманы и стандартизированы
2) используется вся мощь распределённой модели разработки — централизованый сервер, простые и удобные инструменты
3) контроль сообщества — мои варианты были либо приняты, либо исправлены (в большинстве случаев доведены почти до идеала) — за это я и люблю open source
пе-ре-вёл
ПЕЕЕЕ-РЕЕЕЕ-ВЁЁЁЛ
читайте внимательно
вы хотели подъебнуть, а получилось только продемонстрировать вашу собственную некомпетентность
в линупсах «русефекацея» не возможна в принципе:
1) все приложения открыты, локализация и интернационализация продуманы и стандартизированы
2) используется вся мощь распределённой модели разработки — централизованый сервер, простые и удобные инструменты
3) контроль сообщества — мои варианты были либо приняты, либо исправлены (в большинстве случаев доведены почти до идеала) — за это я и люблю open source
школота минусуе
;-D
вот интересный обзор, полный примеров того, как осуществляется интернационализация и локализация в мире проприетарного ПО: russo.ag.ru/reviews/79/ РУСЕФЕКАЦИИ: ОБЗОР
;-D
вот интересный обзор, полный примеров того, как осуществляется интернационализация и локализация в мире проприетарного ПО: russo.ag.ru/reviews/79/ РУСЕФЕКАЦИИ: ОБЗОР
Это топик, чтобы хвастаться? :)
Ну, поехали:
— доводка Linux-драйвера (sane) для сканера HP ScanJet 2400 до статуса «complete».
— доводка Linux-драйвера TV тюнера BeholdTV M6 до состояния поддержки аппаратного кодирования в MPEG2 с поддержкой режима захвата «Streaming IO».
— benchmark mode, репозиторий и перевод на русский язык для 3D видеоплеера Bino.
— плагин для биллинга Stargazer для работы напрямую с линуксовым pppd; а также патчи и упаковка в репозиторий.
— переработка GUI для WinFF (скриншоты на сайте почему-то старые остались) — надеюсь, мне больше не придется работать с Lazarus.
— небольшой патч в самый шустрый NetFlow коллектор под Linux ipt-netflow, а также его упаковка в DEB-пакет.
— SSE2 оптимизация плагина стабилизации видеоряда для проекта transcode; очень жаль кстати, что transcode потихоньку умирает… но есть шанс, что этот плагин переедет в ffmpeg; правда разработчик плагина очень занятой человек.
— PHP-класс для отсылки SMS через Mail.Ru транспорт для Jabber'а. О.о
— пачка патчей в проект miniupnpd — простой UPnP сервер для домашнего фаервола.
— небольшая утилитка в подарок для бывшей подруги.
— небольшая утилитка reink для собственных нужд.
— ну и так, по мелочи, багрепорты, багрепорты, багрепорты…
Ну, поехали:
— доводка Linux-драйвера (sane) для сканера HP ScanJet 2400 до статуса «complete».
— доводка Linux-драйвера TV тюнера BeholdTV M6 до состояния поддержки аппаратного кодирования в MPEG2 с поддержкой режима захвата «Streaming IO».
— benchmark mode, репозиторий и перевод на русский язык для 3D видеоплеера Bino.
— плагин для биллинга Stargazer для работы напрямую с линуксовым pppd; а также патчи и упаковка в репозиторий.
— переработка GUI для WinFF (скриншоты на сайте почему-то старые остались) — надеюсь, мне больше не придется работать с Lazarus.
— небольшой патч в самый шустрый NetFlow коллектор под Linux ipt-netflow, а также его упаковка в DEB-пакет.
— SSE2 оптимизация плагина стабилизации видеоряда для проекта transcode; очень жаль кстати, что transcode потихоньку умирает… но есть шанс, что этот плагин переедет в ffmpeg; правда разработчик плагина очень занятой человек.
— PHP-класс для отсылки SMS через Mail.Ru транспорт для Jabber'а. О.о
— пачка патчей в проект miniupnpd — простой UPnP сервер для домашнего фаервола.
— небольшая утилитка в подарок для бывшей подруги.
— небольшая утилитка reink для собственных нужд.
— ну и так, по мелочи, багрепорты, багрепорты, багрепорты…
О! Ну а плохое, что нибудь плохое в жизни вам приходилось делать?
Мне приходилось! Я как-то решил спереть кусок кода из проекта sqlitestudio для своей утилиты «для собственных нужд». Когда же прогнал тесты, обнаружил ошибку. Исправил. Не пропадать же добру — отправил патч автору.
Зачем нужен этот transcode, если есть ffmpeg?
В ffmpeg нету возможности стабилизировать трясущееся изображение, снятое, например, с велошлема.
Ну а так — мне понравилась структура кода в transcode, всё чисто и аккуратно. Что представляет собой ffmpeg изнутри — не знаю, не доводилось ковырять.
Но доводилось пользоваться его библиотеками libavformat и libavcodec. Заметил, что в основном все примеры в инете показывают, как на их основе написать плеер, а вот как написать рекордер — нигде ничего не сказано. Пришлось самому разбираться, в результате чего возник собственный example.
ЗЫ. Ну вот, снова о хорошем приходится говорить. :)
Ну а так — мне понравилась структура кода в transcode, всё чисто и аккуратно. Что представляет собой ffmpeg изнутри — не знаю, не доводилось ковырять.
Но доводилось пользоваться его библиотеками libavformat и libavcodec. Заметил, что в основном все примеры в инете показывают, как на их основе написать плеер, а вот как написать рекордер — нигде ничего не сказано. Пришлось самому разбираться, в результате чего возник собственный example.
ЗЫ. Ну вот, снова о хорошем приходится говорить. :)
Надо всё таки понимать, что стабилизатор (кстати, работает действительно шикарно), это всё таки не фишка transcode, а именно плагин. Который можно с тем же успехом вставить и в ffmpeg.
Примеры в инете — это, конечно мило и классно, но сырцы открыты и рекордер вполне себе пишется.
Примеры в инете — это, конечно мило и классно, но сырцы открыты и рекордер вполне себе пишется.
Да, можно, и автор нацелен на интеграцию своего плагина в ffmpeg. Однако, пока этого не сделано, у transcode есть хотя бы одно неоспоримое преимущество для тех, кому нужно стабилизировать изображение. Поэтому он нужен.
О да, чтобы воспользоваться API ffmpeg, я должен ковыряться в исходниках и пытаться понять, как работает каждая API функция, вместо того, чтобы прочесть в нормальной документации, что она делает и просто воспользоваться.
О да, чтобы воспользоваться API ffmpeg, я должен ковыряться в исходниках и пытаться понять, как работает каждая API функция, вместо того, чтобы прочесть в нормальной документации, что она делает и просто воспользоваться.
Естественное состояние для любого развивающегося опенсорсного проекта — документация в исходниках.
Если есть документация трехлетней давности и она работает, скорее всего этот кусок кода стагнировал и не развивается.
Странно вам это рассказывать, возникают серьезные сомнения в послужном списке и в вашей квалификации, если вы привыкли работать с опенсорсным кодом по документации, которую, как вы считаете, обязаны для вас писать другие люди. Очень большие сомнения.
Если есть документация трехлетней давности и она работает, скорее всего этот кусок кода стагнировал и не развивается.
Странно вам это рассказывать, возникают серьезные сомнения в послужном списке и в вашей квалификации, если вы привыкли работать с опенсорсным кодом по документации, которую, как вы считаете, обязаны для вас писать другие люди. Очень большие сомнения.
Если есть документация трехлетней давности и она работает, скорее всего этот кусок кода стагнировал и не развивается.Либо: этот кусок кода достиг того состояния, когда он хорошо решает возложенную на него задачу, и стабилизировался.
если вы привыкли работать с опенсорсным кодом по документации, которую, как вы считаете, обязаны для вас писать другие людиВ мире свободного ПО никто ничего не обязан. Но:
1. Если у меня будет выбор между двух в остальном идентичных проектов, я выберу тот, у которого лучше документация. Просто потому, что это сэкономит мое время.
2. Если для разработки с использованием некоторого инструментария мне необходимо читать его исходники — у меня должна быть веская причина для использования именно этого инструментария (например, какие-нибудь эксклюзивные плюшки).
3. Разработчик свободного ПО, как правило, заинтересован в том, чтобы его ПО использовалось другими разработчиками. А один из естественных способов понизить входную планку для других разработчиков — написать вменяемую документацию.
4. Мне кажется это хорошим тоном: сделал продукт, будь добр напиши как его использовать.
А сомневаться — ваше право.
спасибо, Кэп, но это всё нытье какое-то.
Ни по одному продукту документация не заменить рабочих исходников. Я ещё больше убедился в том, что весь этот ваш «послужной список» скорее всего обычные докпатчи или поди-подай помощь программистам.
Вы не создаете впечатления программиста.
Ни по одному продукту документация не заменить рабочих исходников. Я ещё больше убедился в том, что весь этот ваш «послужной список» скорее всего обычные докпатчи или поди-подай помощь программистам.
Вы не создаете впечатления программиста.
Ни по одному продукту документация не заменить рабочих исходников.А я и не говорил, что она может их заменить. Я говорил, что хорошая документация может существенно упростить их понимание. А в некоторых случаях и вовсе избавить от необходимости разбираться в реализации.
Посмотрел интерфейс, прочёл документацию — воспользовался. Profit.
Что вы наделали !? Теперь остальным будет стыдно хвастаться :-)
Помогать сообществу, это естественно. Мы же сделали эту работу, как правильно говорили выше, не пропадать же добру.
Мы используем open source продукты, и только мы можем сделать их лучше.
Предлагаю не останавливаться только на баг-репортах, мы знаем некоторую open source систему.
мы много чего знаем о том, как должно строиться приложение.
что нам мешает предлагать(добавлять) новый функционал, новые идеи, если они реально нужны?
А если есть время, то можно и самому по участвовать.
PS: хорошая идея в нужное время тоже дорого стоит. За нее тоже скажут спасибо.
Мы используем open source продукты, и только мы можем сделать их лучше.
Предлагаю не останавливаться только на баг-репортах, мы знаем некоторую open source систему.
мы много чего знаем о том, как должно строиться приложение.
что нам мешает предлагать(добавлять) новый функционал, новые идеи, если они реально нужны?
А если есть время, то можно и самому по участвовать.
PS: хорошая идея в нужное время тоже дорого стоит. За нее тоже скажут спасибо.
Выше уже говорили — «отдавать долг» — это наш с вами долг, как пользователей open source'а. Разве может быть иначе? На мой взгляд, это так естественно, что я даже не фиксирую и не запоминаю, куда именно и какие патчи посылал… Когда больше работал сис.админом — слал много связанного с FreeBSD: апдейты версий портов в основном, даже в ipfw что-то… Сейчас большей частью в модули Друпала… В общем, возвращать свои патчи в основные ветки опенсорса — это нормально и ничего эпичного тут по-моему нет.
Составляю баг репорты и фичереквесты, провожу тестирование патчей и оставляю фидбэк, иногда занимаюсь локализацией или выступаю в роли переводчика. Делаю это практически для каждого открытого (а иногда и закрытого) софта, которым я пользуюсь: начиная от QTTabBar, Media Player Classic — Home Cinema, AnVir Task Manager (жаль, что проект умер), Miranda (и отдельные плагины для неё), Mozilla Firefox (+десятки дополнений, тем, скриптов и стилей для него), пишу CSS стили для всякого (от морды браузера, до изменения облика сайтов).
Если честно — делаю это больше из личной выгоды: этим софтом я пользуюсь и часто выявляются какие-то баги, недоделки и хотелки, которых пока нет.
Если честно — делаю это больше из личной выгоды: этим софтом я пользуюсь и часто выявляются какие-то баги, недоделки и хотелки, которых пока нет.
в свое время плотно работал с libevent под php. вернее с ее екстеншеном для php. писали демонов для MMORPG игры. в процессе работы были найдены ошибки екстеншена. связался с автором (Тони). в течении дня он аккуратно правил баги, а я ему слал на почту отчеты наших тестов, которые не проходили.
на следующий день был выложен новый релиз.
все довольны.
на следующий день был выложен новый релиз.
все довольны.
Постоянно юзаю бета версии программ и ОСей и честно сабмичу фичереквесты и багрепорты.
Sign up to leave a comment.
А как ты помог какому-нибудь сообществу хабрачеловек?