Классические дистрибутивы Linux теряют свою консистентность в общем смысле сразу после установки на файловую систему.
Современные дистрибутивы стремятся так или иначе перенять подход мобильных систем: чтобы был некий rootfs, поставляемый дистрибутивом, который монтируется в неизменяемом виде, поверх него при необходимости монтируются overlay-файловые системы (с драйверами и другими системными изменениями), либо же «разработческий» слой при необходимости внесения изменений в rootfs.
Приложения все устанавливаются в пользовательские директории. Конфигурационные файлы хранятся на отдельной ФС (покрывающей /etc и /var), либо же у пользователя.
Преимущества: возможность нормального аудита, возможность сброса настроек как на телефонах, атомарные обновления, понимание состояния/консистентности системы.
В моей деревне были таксофоны а-ля АМТ 69 (не уверен, что именно эта модель), модернизированные под карту, без монетоприёмника.
Абсолютно все, кого я знаю, звонили с них бесплатно, сначала набирая 01/02/03, а затем опуская рычаг трубки не до конца (или очень быстро), чтобы линия сбросилась, а мозги таксофона это не обнаружили.
Похожий трюк, только ровно наоборот, я делал позже на вот таком: опусканием рычажка не до конца сбрасывал мозги телефона, но не линию, и набирал номер сбросом целиком (у нас везде был импульсный набор). Еще у него голосом проговаривался остаток минут на карте, и если его прогличить, можно было заставить его произнести: «остаток: 4 миллиарда, 294 миллиона…» (но звонить всё равно не получалось).
Вопреки всем задокументированным публично ресурсам, которые утверждают, что связь через человека-коммутатора исчезла в восьмидесятых-начале девяностых, в другом посёлке такая связь сохранялась как минимум до начала нулевых.
Какие для вас деньги — деньги, и насколько быстрыми они должны быть? Когда жил в Москве, у меня было ощущение, что деньги отовсюду рекой льются, успевай только руки подставлять. Подработки по 4-5 часов по субботам 1-2 раза в месяц, приносящие +60-120 тысяч, были в порядке вещей. Если чуть мыслить out-of-the-box, разумно анализировать индустрию в целом и потребности людей в тех областях, в чём разбираешься, и ставить целью заработок, думаю, можно было делать +300 тысяч к основной зарплате не сильно напрягаясь, а рвя зад и миллион в месяц по ощущениям был реален. Для меня мои подработки были существенными и быстрыми (в смысле затрачиваемого времени) деньгами. Речь про 2021-2022 годы.
Ходил, к слову, через патрики на работу каждый день, и угорал с местной богемы :D Тем не менее, там было много интересных людей.
Сделать что-то крутое, открытое и значимое, типа ядра Linux, чем будет пользоваться весь мир, что будет топ-1 в своем классе. Желательно еще по пути получить 1-2 награды от ACM.
Ха-ха, вот это настоящий, живой ответ, а не какие-то робкие попытки :D
Если вы хотите full-time заниматься опенсорсом при вашей модели, нужно же на что-то жить. Секрет успеха Linux:
Доступен бесплатно, в отличие от UNIX'ов того времени
Лицензия GPLv2, обязывающая всех вовлеченных делиться кодом под страхом судебного преследования из-за нарушения авторского права, и реальное преследование крупных нарушителей с взысканием финансовых потерь
Stable API nonsense, делающая модель разработки драйверов вне ядра очень неудобной, заставляющая разработчиков отправлять все изменения в ядро
Серьёзные намеренные ограничения для не-GPL-кода в модулях ядра, чтобы неповадно было
Как зарабатывает:
Фонд Linux Foundation, за взносы обеспечивающий приоритетное общение с разработчиками напрямую, и в какой-то мере предоставляющий защиту от нарушения GPL (в обоих смыслах).
Возможность нанять разработчиков, чтобы они решали ваши проблемы или писали код для ваших устройств
Всё это стало возможно благодаря лицензии GPLv2 и осмысленной установки палок в колёса для минимизации трагедии общин.
А теперь рассмотрим тоже большие, известные, значимые проекты, но которые не накладывают таких ограничений с точки зрения бизнеса. NetBSD в этом году набрал умопомрачительные $22155 из запрашиваемых $50000. Не конкретный разработчик, а вообще весь проект. FreeBSD, на основе ядра которого построены Sony PlayStation 4 и 5, получил какие-то абсолютные крохи в плане кода и финансовых вливаний за все эти годы от Sony, потому что лицензия не накладывает ограничений.
и как можно зарабатывать в open source знаю, как минимум двух ребят, кто уже несколько лет как живет той жизнью, о которой я мечтаю
Мне, увы, непонятно это из статьи, ваша лицензия не накладывает ограничений (не «предоставляет свобод»), что меня как потребителя вашего продукта мотивирует платить вам деньги, если я могу получить то же самое, от вас же, бесплатно? Если вы хотите зарабатывать деньги, очень важно уметь отказываться от бесплатной работы и требовать их! Это основополагающая вещь.
В опенсорсе денег просто слёзы. Если не брать топ-10 самих известных мировых проектов, которые так же хорошо реализовали бизнес-план, как Linux, а опуститься совсем чуть ниже, картина, которую все ожидают, вообще ни разу не соответствует реальности.
Я уже третий год вовлечён в разработку и исправление ошибок стека печати и сканирования, и когда лидер проекта CUPS, с 1 миллиардом установок и наверняка 100 миллионами ежедневных пользователей (он не только в Linux, но и в macOS) заявляет, что шестой год не может наладить отношение с Linux Foundation и живет на периодические консультации производителей принтеров, разработчика фильтров одним днём увольняют из Canonical, а всё это время новые функции, добавленные не основными 4 (че-ты-ре-мя) людьми в команде, были только в рамках программы Google Summer of Code, где студентам Google платил пару сотен долларов раз в год, мне хочется удушиться.
Поэтому, прошу вас, трижды подумайте бизнес-стратегию, прежде чем просто верить в светлое будущее.
Я в основном исправляю те или иные ошибки, за которые некому взяться, чтобы хотя бы мой компьютер работал нормально. Я не разработчик по профилю (хоть и занимаюсь программированием так или иначе 19+ лет), и мне программирование не доставляет удовольствия — это инструмент для решения задач.
Обычно у меня выбор между: разобраться с надоедливой проблемой самостоятельно, потратив на погружение в совершенно неизвестную мне подсистему/язык/стек от нескольких дней до недели, с негарантированным результатом, в большинстве случаев без какой-либо сторонней помощи (потому что некому), либо сделать то же самое, но с ассистентом, который банально может быстрее читать, программировать и экспериментировать — он хотя бы попробует разобраться в проблеме не отнимая моё время, потому что мне в любом случае нужно как-то что-то подготовить для начала диагностики в том или ином виде, будь то человек или ассистент.
А если проблема не устранена, но хотя бы стали понятны её корни — корректно ее описать и отправить разбирающимся людям, чтобы в issue был высокий signal to noise ratio.
В современном мире решение тех. проблемы — дисциплина, требующая технических навыков для её диагностики и документации, коммуникативных навыков для донесения информации через всю цепочку поставки ответственному лицу, и в каком-то смысле социально-экономических: если не обращают внимания и не исправляют, куда и как давить, чтобы добиться своего.
у меня только один вопрос — а не легче ли нанять джуна?
За ≈$200 в месяц вы получаете 5× absolute junior unit, готовых выполнять работу в любое время дня и ночи, без перерыва, на порядок быстрее человека. Год назад это стоило ≈$2000 и работало значительно хуже и медленнее.
Если вам привычно декомпозировать и делегировать задачи, в особенности те, за которые вам так влом браться, но когда-то всё-таки их стоит сделать, и область вашей деятельности хорошо изучена и обильно присутствует в интернете (популярный язык программирования/стек, чтобы нейросеть была натренирована на этом корпусе), и в целом деятельность реально осуществить по телефону (как техподдержка по телефону, как программирование на бумажке, или как обзор на мир через разбитый триплекс в танке), то отдавать подобные задачи нейронке — самое оно.
Причем эти absolute unit'ы не совсем оболтусы, а вполне себе ученики профильных лицеев.
Однако если ваша деятельность не присутствует в интернете широко (не прямо it-it, нейронка плохо обучена, или результат не столь детерминирован), то не стоит, вы как пользователь нейросеть обучить своими данными не сможете (сможете в пределах десятков килобайт, не более). Ну и, конечно же, речь идёт о лучших моделях на текущий момент, их штук 5. Всё, что можно запустить локально, даже на компьютерах за $4000, не подходит для продуктивной работы.
Вы неправильно воспринимаете инструмент. AI-ассистент это забывчивый школьник старших классов, который не хочет ничего делать, а хочет вас надурить, получить высокую оценку и побыстрее сбежать с уроков. Чтобы эффективно работать с детьми, нужно:
получить педагогическое образование (внимательно прочесть документацию к инструменту, посмотреть обучающие материалы и лучше практики, поискать, как другие делают)
понимать ученика для того, чтобы привить ему желание учиться (поэкспериментировать и найти собственный подход)
предоставить детальные учебные материалы, написанные на понятном для школьника языке (максимально детальная справка по проекту, чтобы не нужно было смотреть в код для выяснения, как работает та или иная функция, при этом логически разделённая на категории и каталогизированная)
самому быть профессионалом в области, чтобы всецело помогать со школьным проектом, указать на ошибки и недочёты во время выполнения, и разъяснить, как нужно делать правильно
Не, это как раз предельно ясно, но для человека с длительным и, надеюсь, хоть чуть значимым вкладом в опенсорс такая формулировка звучит так: «у меня есть мечта: стать профессиональным бомжом. Проект я вижу как начало своей карьеры перед заражением ВИЧ и смертью от СПИДа».
Процитирую ваш параграф целиком из другой статьи:
У меня есть мечта: я хочу стать фултайм open source разработчиком. Проект я вижу как начало своей карьеры в этом деле и "разминку перед большой игрой". Добавлю, что у меня нет цели "захватить мир" с mlut или "убить" Tailwind. Я прекрасно понимаю, что инструмент скорее нишевый и не имеет такого потенциала by design. Но мне хотелось бы уверенно зайти на рынок, пободаться с топовыми аналогами, найти свою аудитории и принести этим людям пользу!
Я теперь еще больше недоумеваю. Понял бы вашу мотивацию, если бы у вас была цель убить Tailwind и захватить мир. Вы либо упускаете основополагающую цель, из-за (или благодаря) которой люди занимаются опенсорсом, либо вы недоговариваете и вас нужно понимать меж строк.
И да, в этой жизни можно делать что-то не только ради денег
Разумеется!
Люди помогают другим людям на волонтёрских началах для того, чтобы развивать общество вокруг себя и оказывать помощь нуждающимся. Мотивация: получение похвалы, создание общественного блага, ощущение себя нужным
Люди решают свою проблему, для которой ранее существовали решения хуже или не существовали, и делятся с ней на весь мир. Мотивация: позволить другим решать эту же проблему (общественное благо без поддержки проекта), получение похвалы и узнаваемости (собственный бренд)
Люди (пара человек-команда) решают заново уже решенную многими способами проблему, чтобы сделать хорошо с нуля. Мотивация: устранение существующего хаоса (устойчивое развитие), устранение любительских/низкокачественных альтернатив (занять нишу), заработок на сертификации/поддержке/консультации.
У меня есть мечта: я хочу стать фултайм open source разработчиком
Давай, Валентин, я знаю, ты сможешь! Ты личность! Посмотри, сколько людей собралось в этом зале сегодня, чтобы тебя поддержать! Давай, действуй, покажи нам, на что ты способен! Нужно только, ну, сесть за компьютер и провести полный рабочий день над проектом, а потом следующий, не получая ничего взамен.
Нет, серьёзно, опен-сорс проекты в социальном смысле, подразумевающие развитие и поддержку, это в абсолютном большинстве случаев большая обуза, которой занимаются исключительно в силу того, что мотивации выше перевешивают. А опен-сорс в техническом смысле, не подразумевающий создание сообщества и поддержку проекта, либо не доступный публично (только за деньги) очевидно, не ваш случай.
Помните знаменитую картинку с XKCD?
Вот неподписанные крупные блоки выше стрелочки это тоже 2-5 unpaid volunteers, если начать спрашивать людей. Многомиллиардные компании спят и видят очередной проект, который они могут не просто использовать бесплатно, но еще и требовать бесплатной и своевременной поддержки со стороны разработчиков! Исследователь безопасности нашел опасную уязвимость в вашем проекте, который в течение многих лет стал зависимостью у крупных сайтов? Отличная работа, исследователь, спасибо, что делаете наш мир безопасней, вот вам $100000 bug bounty! Эй, автор зависимости, почему не занимаешься исправлением, когда будет готово?
Настоятельно рекомендую всем прочитать вот эту статью: https://zedshaw.com/blog/2022-02-05-the-beggar-barons/ Она описывает реальное положение дел в опенсорсе. Я глубоко сомневаюсь, что в самой высококонкурентной и стандартизированной области, как веб-разработка, что-то отличается.
За последние год-два появились многие программы, фонды, инициативы, даже законы в ЕС, обратившие внимание на эту проблему, но маховик только начинает раскручиваться, и всё, что я видел, по большей части готовы предоставляьть только материальную поддержку (а не людскими ресурсами в виде мейнтейнеров, например). Разве что Cyber Resilience Act приписывает производителей устройств относится к зависимостям как к своему коду, и обязывает публиковать патчи исправлений безопасности, если они у производителя появились быстрее, чем их сделал автор.
У вас-то какая настоящая мотивация? Может, вы на деле стремитесь стать знаменитым и узнаваемым специалистом, а проект это инструмент продвижения? Или, может, всё-таки хотите составить настоящую конкуренцию существующим проектам, но боитесь нам в этом признаться? Не бойтесь, это совершенно нормально и ни разу не постыдно, а как раз один из идеалов социального опенсорса — сделать лучше, чем у других, в том или ином аспекте.
Ни разу не фантазия, почти наверняка так бы и было.
Если вы последний раз использовали подобные инструменты больше полугода назад — попробуйте снова. А если не использовали, и пытались что-то сделать через чат-окно условного ChatGPT — попробуйте нормальные инструменты (Claude, Roo Code, Kilo Code), сперва изучив, как с ними эффективно работать.
Год назад это было уровня «ха-ха, штучка написала неработающий код и галлюционирует, ну и тупенькая», а сейчас я Roo Code подготавливаю физическое рабочее место и отдаю железо, а она исправляет ошибки в драйверах аппаратуры без моего участия.
Hidden text
Я дал ассистенту доступ к одноплатнику, к которому подключён принтер, чтобы он нашел и исправил баг в USB-подсистеме ядра(!), и он справился в течение часа за несколько итераций. Он сам выдвигал гипотезы, правил код, компилировал ядро, загружал его на одноплатник, перезагружал его, проверял, смотрел, что изменилось, читал kernel log из uart’а в случае проблем (пару раз сломал DMA).
Справился бы я самостоятельно? Однозначно, я примерно знал куда копать, где отлаживать, на какие вещи обратить внимание. Но я только поверхностно знал причину проблемы и систему USB в целом, у меня на это ушло бы несколько полных рабочих дней (и чтение много-сотен-страничных спецификаций USB), а у ассистента ушел час.
Справился бы ассистент без моих знаний и подготовки оборудования? Очень вряд ли — он работает примерно как обычный junior или студент, т.е. ему нужно организовать «рабочее место» и составить ТЗ, он не может просто так взять и написать целиком рабочий код в один пресест.
Я теперь могу исправлять реальные баги в FOSS на языках и в проектах, которые не знаю в полной мере, чтобы решить проблему с наскока. Иными словами, вместо заведения issue и ожидания дней-недель-месяцев для не сильно глубоко технической проблемы, я могу решить ее сам с помощью ассистента в течение минут.
То же самое с реверс-инжинирингом — анализировать чужой скомпилированный код, алгоритмы и прочее теперь еще значительно проще, произошла вторая революция (первой был Hex-Rays).
Open-source-проект, который не решает какую-то уникальную задачу каким-то кардинально другим, быстрым или удобным методом, а, похоже, просто один из возможных вариантов (могу ошибаться — не фронтендер);
MIT-лицензия, не ограничивающая коммерческое использование и не накладывающая обязанностей, т.е. стрясти денег с больших компаний (или хотя бы обязать контрибьютить), если они воспользуются фреймворком в будущем, не получится;
Разработка passion project передаётся стороннему человеку, у которого не горят глаза, а он просто делает задачи
Метрикой определяется количество звёздочек, вкладываются деньги в продвижение, словно по заветам рансомварщиков
Выглядит как какое-то библейское истязание себя и ближнего своего. Если только ради опыта и первых денег — для студента нормально, спору нет, но вам-то в чём прикол?
На соответствующей странице есть карта и актуальный адресный перечень всех таксофонов в России.
Увы, совсем не актуальный. Даже по состоянию на 2020 год не были отмечены многие на деле существующие и работающие таксофоны — я делал список всех с нанесением на карту.
В Сибири они еще кое-где встречаются, в 2023 даже в центре городов оставались (а в 2020 были в центре Петербурга), но сейчас демонтировали. Из тех, что остались, подавляющее большинство в рабочем состоянии. В основном в посёлках и ПГТ.
Он описывает стандарт, он за это время не поменялся и работает так же. Информация актуальна.
Ага, но вот незадача, есть колоссальная разница между безопасностью WPA и WPA2
Речь о WPA/WPA2 Mixed Mode, который не привнесёт прям супер проблем с безопасностью в домашней среде. PMK сломается, наверняка роуминг тоже, multicast/broadcast в TKIP заинжектить могут, это да, но в чём колоссальная разница?
Я не знаю, в курсе ли вы или нет, но уже давно является хорошим тонов выделять под IoT отдельный SSID с WPA2 и заворачивать его в отдельный VLAN
VLAN с изоляцией? А пользоваться принтером и Chromecast'ом как, каждый раз переключаться в изолированную сеть?
Давать ссылки на разбор 11-и летней давности и дрова Unifi тех же годов - тоже смело
Исправленная прошивка вышла в 2021 году. Точки UAP-AC-Lite, UAP-AC-LR и другие, для которых она предназначена, всё ещё продаются. О каких 11 годах речь?
Советовать WPA в 2025 году - это смело
Дофига и больше устройств не поддерживают WPA3, и уж наверняка этот стандарт поддерживает меньшинство IoT-техники, которое в основном использует 2.4 ГГц.
Да еще и бесполезно ибо пофикшенно
О, обожаю такие упрёки.
У нормальных людей цикл смены оборудования, если оно работает и отвечает требованиям (и требования не менялись с момента установки) — пока не сломается. Как правило, это 10+ лет. Asus RT-AC68U из 2013 всё ещё маршрутизирует несколько сотен мегабит, раздаёт Wi-Fi по относительно скоростному Wi-Fi 5, 5 ГГц, и всё ещё поддерживается производителем — последнее обновление прошивки вышло 4 дня (!) назад. В рамках домашнего использования с домашними задачами нет совершенно никакого резона менять его на что-то другое.
Я постоянно натыкаюсь на различные баги и проблемы в технике, и это меня заколебало до такой степени, что покупаю только оборудование, где либо производитель предоставляет прямую поддержку частным лицам, либо серии бизнес-класса, где срок поддержки в 10 лет считается нормальным явлением. И мне регулярно приходится сообщать производителям о проблемах в их оборудовании.
Для примера возьмём обычную, совершенно типичную ситуацию: именитый производитель, тот же Asus, берёт чип, скажем, Broadcom, и делает Wi-Fi-роутер на его основе. Системная часть ПО написана Broadcom'ом, Asus вносит только свои коррективы, интерфейс, пользовательские функции, и т.п.
Если обнаруживается низкоуровневая проблема, как из этой статьи, на её диагностику могут уйти годы.
Она проявляется только в отдельном сценарии использования
Она плавающая
Для её воспроизведения требуются особые условия и время (включите точку и IoT-устройство — все будет работать до смены GTK)
Для её диагностики требуется разбирающийся технический специалист со стороны Asus, чтобы задокументировать и передать информацию в Broadcom — сами они её решать не будут
Сообщения о проблемах от среднестатистического покупателя роутера будет а-ля «у меня не работает», без необходимых подробностей (т.к. пользователи не понимают, какие данные важны, а какие нет), и без технических деталей (потому что пользователь — не технический специалист). Как правило, такие сообщения целиком бесполезны. И это в лучшем случае! А скорее всего письмо будет направлено сперва производителю принтера — ваш принтер сломан, пропадает из сети, не могу печатать, и Asus получит письмо, если производитель попытается разобраться в проблеме и укажет на дефективный роутер. Письмо, конечно же, от пользователя, а не от производителя принтера — ведь производитель принтера не клиент компании Asus и не может получить тех. поддержку, даже если его сообщения в разы полезней.
Поэтому, ни много ни мало, в современном мире решение тех. проблемы — дисциплина, требующая технических навыков для её диагностики и документации, коммуникативных навыков для донесения информации через всю цепочку поставки ответственному лицу через сотрудника первой линии поддержки, и в каком-то смысле социально-экономических: если не обращают внимания и не исправляют, куда и как давить, чтобы добиться своего. И в особенности для модулей Wi-Fi, которые один другого хуже.
Если для вас информация неактуальна и бесполезна, не утруждайте себя чтением и комментированием этой и других статей. Я сам так делаю, временами одёргивая себя прямо во время написания комментария, когда сильно бомбит. А я продолжу пополнять запасы модулей на старом AR9271 — сильно устаревшей, но единственной известной мне полноценной работающей Wi-Fi-карте, и с открытой прошивкой. Их у меня несколько сотен.
Классические дистрибутивы Linux теряют свою консистентность в общем смысле сразу после установки на файловую систему.
Современные дистрибутивы стремятся так или иначе перенять подход мобильных систем: чтобы был некий rootfs, поставляемый дистрибутивом, который монтируется в неизменяемом виде, поверх него при необходимости монтируются overlay-файловые системы (с драйверами и другими системными изменениями), либо же «разработческий» слой при необходимости внесения изменений в rootfs.
Приложения все устанавливаются в пользовательские директории. Конфигурационные файлы хранятся на отдельной ФС (покрывающей /etc и /var), либо же у пользователя.
Преимущества: возможность нормального аудита, возможность сброса настроек как на телефонах, атомарные обновления, понимание состояния/консистентности системы.
Самое толковое видение, что я читал — у Леннарта Поттеринга, разрабтчика systemd: https://0pointer.net/blog/fitting-everything-together.html
Да вроде прямо с классическим был, уже не помню. Либо с цифровым по 3 в ряд, но точно не с этим.
В моей деревне были таксофоны а-ля АМТ 69 (не уверен, что именно эта модель), модернизированные под карту, без монетоприёмника.
Абсолютно все, кого я знаю, звонили с них бесплатно, сначала набирая 01/02/03, а затем опуская рычаг трубки не до конца (или очень быстро), чтобы линия сбросилась, а мозги таксофона это не обнаружили.
Похожий трюк, только ровно наоборот, я делал позже на вот таком: опусканием рычажка не до конца сбрасывал мозги телефона, но не линию, и набирал номер сбросом целиком (у нас везде был импульсный набор). Еще у него голосом проговаривался остаток минут на карте, и если его прогличить, можно было заставить его произнести: «остаток: 4 миллиарда, 294 миллиона…» (но звонить всё равно не получалось).
Вопреки всем задокументированным публично ресурсам, которые утверждают, что связь через человека-коммутатора исчезла в восьмидесятых-начале девяностых, в другом посёлке такая связь сохранялась как минимум до начала нулевых.
Какие для вас деньги — деньги, и насколько быстрыми они должны быть?
Когда жил в Москве, у меня было ощущение, что деньги отовсюду рекой льются, успевай только руки подставлять. Подработки по 4-5 часов по субботам 1-2 раза в месяц, приносящие +60-120 тысяч, были в порядке вещей. Если чуть мыслить out-of-the-box, разумно анализировать индустрию в целом и потребности людей в тех областях, в чём разбираешься, и ставить целью заработок, думаю, можно было делать +300 тысяч к основной зарплате не сильно напрягаясь, а рвя зад и миллион в месяц по ощущениям был реален.
Для меня мои подработки были существенными и быстрыми (в смысле затрачиваемого времени) деньгами. Речь про 2021-2022 годы.
Ходил, к слову, через патрики на работу каждый день, и угорал с местной богемы :D
Тем не менее, там было много интересных людей.
Ничего себе как корейцы свободно из музыки в it входят
Я на бизнес-тарифе с оплатой по количеству мест, не знаю, какая сейчас стоимость с оплатой по факту использования api/токенов у Anthropic.
Ха-ха, вот это настоящий, живой ответ, а не какие-то робкие попытки :D
Если вы хотите full-time заниматься опенсорсом при вашей модели, нужно же на что-то жить.
Секрет успеха Linux:
Доступен бесплатно, в отличие от UNIX'ов того времени
Лицензия GPLv2, обязывающая всех вовлеченных делиться кодом под страхом судебного преследования из-за нарушения авторского права, и реальное преследование крупных нарушителей с взысканием финансовых потерь
Stable API nonsense, делающая модель разработки драйверов вне ядра очень неудобной, заставляющая разработчиков отправлять все изменения в ядро
Серьёзные намеренные ограничения для не-GPL-кода в модулях ядра, чтобы неповадно было
Как зарабатывает:
Фонд Linux Foundation, за взносы обеспечивающий приоритетное общение с разработчиками напрямую, и в какой-то мере предоставляющий защиту от нарушения GPL (в обоих смыслах).
Возможность нанять разработчиков, чтобы они решали ваши проблемы или писали код для ваших устройств
Всё это стало возможно благодаря лицензии GPLv2 и осмысленной установки палок в колёса для минимизации трагедии общин.
А теперь рассмотрим тоже большие, известные, значимые проекты, но которые не накладывают таких ограничений с точки зрения бизнеса. NetBSD в этом году набрал умопомрачительные $22155 из запрашиваемых $50000. Не конкретный разработчик, а вообще весь проект.
FreeBSD, на основе ядра которого построены Sony PlayStation 4 и 5, получил какие-то абсолютные крохи в плане кода и финансовых вливаний за все эти годы от Sony, потому что лицензия не накладывает ограничений.
Мне, увы, непонятно это из статьи, ваша лицензия не накладывает ограничений (не «предоставляет свобод»), что меня как потребителя вашего продукта мотивирует платить вам деньги, если я могу получить то же самое, от вас же, бесплатно?
Если вы хотите зарабатывать деньги, очень важно уметь отказываться от бесплатной работы и требовать их! Это основополагающая вещь.
В опенсорсе денег просто слёзы. Если не брать топ-10 самих известных мировых проектов, которые так же хорошо реализовали бизнес-план, как Linux, а опуститься совсем чуть ниже, картина, которую все ожидают, вообще ни разу не соответствует реальности.
Я уже третий год вовлечён в разработку и исправление ошибок стека печати и сканирования, и когда лидер проекта CUPS, с 1 миллиардом установок и наверняка 100 миллионами ежедневных пользователей (он не только в Linux, но и в macOS) заявляет, что шестой год не может наладить отношение с Linux Foundation и живет на периодические консультации производителей принтеров, разработчика фильтров одним днём увольняют из Canonical, а всё это время новые функции, добавленные не основными 4 (че-ты-ре-мя) людьми в команде, были только в рамках программы Google Summer of Code, где студентам Google платил пару сотен долларов раз в год, мне хочется удушиться.
Поэтому, прошу вас, трижды подумайте бизнес-стратегию, прежде чем просто верить в светлое будущее.
Я в основном исправляю те или иные ошибки, за которые некому взяться, чтобы хотя бы мой компьютер работал нормально. Я не разработчик по профилю (хоть и занимаюсь программированием так или иначе 19+ лет), и мне программирование не доставляет удовольствия — это инструмент для решения задач.
Обычно у меня выбор между: разобраться с надоедливой проблемой самостоятельно, потратив на погружение в совершенно неизвестную мне подсистему/язык/стек от нескольких дней до недели, с негарантированным результатом, в большинстве случаев без какой-либо сторонней помощи (потому что некому), либо сделать то же самое, но с ассистентом, который банально может быстрее читать, программировать и экспериментировать — он хотя бы попробует разобраться в проблеме не отнимая моё время, потому что мне в любом случае нужно как-то что-то подготовить для начала диагностики в том или ином виде, будь то человек или ассистент.
А если проблема не устранена, но хотя бы стали понятны её корни — корректно ее описать и отправить разбирающимся людям, чтобы в issue был высокий signal to noise ratio.
В современном мире решение тех. проблемы — дисциплина, требующая технических навыков для её диагностики и документации, коммуникативных навыков для донесения информации через всю цепочку поставки ответственному лицу, и в каком-то смысле социально-экономических: если не обращают внимания и не исправляют, куда и как давить, чтобы добиться своего.
У Roo Code есть хорошая модель Grok Code Fast, на данный момент доступна бесплатно через их облако, и вроде бы даже без ограничений.
За ≈$200 в месяц вы получаете 5× absolute junior unit, готовых выполнять работу в любое время дня и ночи, без перерыва, на порядок быстрее человека. Год назад это стоило ≈$2000 и работало значительно хуже и медленнее.
Если вам привычно декомпозировать и делегировать задачи, в особенности те, за которые вам так влом браться, но когда-то всё-таки их стоит сделать, и область вашей деятельности хорошо изучена и обильно присутствует в интернете (популярный язык программирования/стек, чтобы нейросеть была натренирована на этом корпусе), и в целом деятельность реально осуществить по телефону (как техподдержка по телефону, как программирование на бумажке, или как обзор на мир через разбитый триплекс в танке), то отдавать подобные задачи нейронке — самое оно.
Причем эти absolute unit'ы не совсем оболтусы, а вполне себе ученики профильных лицеев.
Однако если ваша деятельность не присутствует в интернете широко (не прямо it-it, нейронка плохо обучена, или результат не столь детерминирован), то не стоит, вы как пользователь нейросеть обучить своими данными не сможете (сможете в пределах десятков килобайт, не более).
Ну и, конечно же, речь идёт о лучших моделях на текущий момент, их штук 5. Всё, что можно запустить локально, даже на компьютерах за $4000, не подходит для продуктивной работы.
Первый результат в поисковике
https://claudelog.com/claude-code-mcps/twitter-mcp/
Вы неправильно воспринимаете инструмент. AI-ассистент это забывчивый школьник старших классов, который не хочет ничего делать, а хочет вас надурить, получить высокую оценку и побыстрее сбежать с уроков. Чтобы эффективно работать с детьми, нужно:
получить педагогическое образование (внимательно прочесть документацию к инструменту, посмотреть обучающие материалы и лучше практики, поискать, как другие делают)
понимать ученика для того, чтобы привить ему желание учиться (поэкспериментировать и найти собственный подход)
предоставить детальные учебные материалы, написанные на понятном для школьника языке (максимально детальная справка по проекту, чтобы не нужно было смотреть в код для выяснения, как работает та или иная функция, при этом логически разделённая на категории и каталогизированная)
самому быть профессионалом в области, чтобы всецело помогать со школьным проектом, указать на ошибки и недочёты во время выполнения, и разъяснить, как нужно делать правильно
Это ассистент, а не работник.
Не, это как раз предельно ясно, но для человека с длительным и, надеюсь, хоть чуть значимым вкладом в опенсорс такая формулировка звучит так: «у меня есть мечта: стать профессиональным бомжом. Проект я вижу как начало своей карьеры перед заражением ВИЧ и смертью от СПИДа».
Процитирую ваш параграф целиком из другой статьи:
Я теперь еще больше недоумеваю. Понял бы вашу мотивацию, если бы у вас была цель убить Tailwind и захватить мир. Вы либо упускаете основополагающую цель, из-за (или благодаря) которой люди занимаются опенсорсом, либо вы недоговариваете и вас нужно понимать меж строк.
Разумеется!
Люди помогают другим людям на волонтёрских началах для того, чтобы развивать общество вокруг себя и оказывать помощь нуждающимся. Мотивация: получение похвалы, создание общественного блага, ощущение себя нужным
Люди решают свою проблему, для которой ранее существовали решения хуже или не существовали, и делятся с ней на весь мир. Мотивация: позволить другим решать эту же проблему (общественное благо без поддержки проекта), получение похвалы и узнаваемости (собственный бренд)
Люди (пара человек-команда) решают заново уже решенную многими способами проблему, чтобы сделать хорошо с нуля. Мотивация: устранение существующего хаоса (устойчивое развитие), устранение любительских/низкокачественных альтернатив (занять нишу), заработок на сертификации/поддержке/консультации.
Давай, Валентин, я знаю, ты сможешь! Ты личность! Посмотри, сколько людей собралось в этом зале сегодня, чтобы тебя поддержать! Давай, действуй, покажи нам, на что ты способен!
Нужно только, ну, сесть за компьютер и провести полный рабочий день над проектом, а потом следующий, не получая ничего взамен.
Нет, серьёзно, опен-сорс проекты в социальном смысле, подразумевающие развитие и поддержку, это в абсолютном большинстве случаев большая обуза, которой занимаются исключительно в силу того, что мотивации выше перевешивают. А опен-сорс в техническом смысле, не подразумевающий создание сообщества и поддержку проекта, либо не доступный публично (только за деньги) очевидно, не ваш случай.
Помните знаменитую картинку с XKCD?
Вот неподписанные крупные блоки выше стрелочки это тоже 2-5 unpaid volunteers, если начать спрашивать людей.
Многомиллиардные компании спят и видят очередной проект, который они могут не просто использовать бесплатно, но еще и требовать бесплатной и своевременной поддержки со стороны разработчиков!
Исследователь безопасности нашел опасную уязвимость в вашем проекте, который в течение многих лет стал зависимостью у крупных сайтов? Отличная работа, исследователь, спасибо, что делаете наш мир безопасней, вот вам $100000 bug bounty! Эй, автор зависимости, почему не занимаешься исправлением, когда будет готово?
Настоятельно рекомендую всем прочитать вот эту статью: https://zedshaw.com/blog/2022-02-05-the-beggar-barons/
Она описывает реальное положение дел в опенсорсе. Я глубоко сомневаюсь, что в самой высококонкурентной и стандартизированной области, как веб-разработка, что-то отличается.
За последние год-два появились многие программы, фонды, инициативы, даже законы в ЕС, обратившие внимание на эту проблему, но маховик только начинает раскручиваться, и всё, что я видел, по большей части готовы предоставляьть только материальную поддержку (а не людскими ресурсами в виде мейнтейнеров, например). Разве что Cyber Resilience Act приписывает производителей устройств относится к зависимостям как к своему коду, и обязывает публиковать патчи исправлений безопасности, если они у производителя появились быстрее, чем их сделал автор.
У вас-то какая настоящая мотивация? Может, вы на деле стремитесь стать знаменитым и узнаваемым специалистом, а проект это инструмент продвижения? Или, может, всё-таки хотите составить настоящую конкуренцию существующим проектам, но боитесь нам в этом признаться? Не бойтесь, это совершенно нормально и ни разу не постыдно, а как раз один из идеалов социального опенсорса — сделать лучше, чем у других, в том или ином аспекте.
Ни разу не фантазия, почти наверняка так бы и было.
Если вы последний раз использовали подобные инструменты больше полугода назад — попробуйте снова. А если не использовали, и пытались что-то сделать через чат-окно условного ChatGPT — попробуйте нормальные инструменты (Claude, Roo Code, Kilo Code), сперва изучив, как с ними эффективно работать.
Год назад это было уровня «ха-ха, штучка написала неработающий код и галлюционирует, ну и тупенькая», а сейчас я Roo Code подготавливаю физическое рабочее место и отдаю железо, а она исправляет ошибки в драйверах аппаратуры без моего участия.
Hidden text
Что-то я вообще не врубился.
Open-source-проект, который не решает какую-то уникальную задачу каким-то кардинально другим, быстрым или удобным методом, а, похоже, просто один из возможных вариантов (могу ошибаться — не фронтендер);
MIT-лицензия, не ограничивающая коммерческое использование и не накладывающая обязанностей, т.е. стрясти денег с больших компаний (или хотя бы обязать контрибьютить), если они воспользуются фреймворком в будущем, не получится;
Разработка passion project передаётся стороннему человеку, у которого не горят глаза, а он просто делает задачи
Метрикой определяется количество звёздочек, вкладываются деньги в продвижение, словно по заветам рансомварщиков
Выглядит как какое-то библейское истязание себя и ближнего своего. Если только ради опыта и первых денег — для студента нормально, спору нет, но вам-то в чём прикол?
TKIP для GTK, а PTK — CCMP.
Увы, совсем не актуальный. Даже по состоянию на 2020 год не были отмечены многие на деле существующие и работающие таксофоны — я делал список всех с нанесением на карту.
Список находился на сайте Россвязи, в формате xlsx.
https://web.archive.org/web/20220213022950/https://rossvyaz.gov.ru/deyatelnost/universalnye-uslug-svyazi/taksofony-pkd-i-tochki-dostupa/perechen-adresov-mest-ustanovki-taksofonov-pkd-i-tochek-dostupa
В Сибири они еще кое-где встречаются, в 2023 даже в центре городов оставались (а в 2020 были в центре Петербурга), но сейчас демонтировали. Из тех, что остались, подавляющее большинство в рабочем состоянии. В основном в посёлках и ПГТ.
Он описывает стандарт, он за это время не поменялся и работает так же. Информация актуальна.
Речь о WPA/WPA2 Mixed Mode, который не привнесёт прям супер проблем с безопасностью в домашней среде. PMK сломается, наверняка роуминг тоже, multicast/broadcast в TKIP заинжектить могут, это да, но в чём колоссальная разница?
VLAN с изоляцией? А пользоваться принтером и Chromecast'ом как, каждый раз переключаться в изолированную сеть?
Исправленная прошивка вышла в 2021 году. Точки UAP-AC-Lite, UAP-AC-LR и другие, для которых она предназначена, всё ещё продаются. О каких 11 годах речь?
Дофига и больше устройств не поддерживают WPA3, и уж наверняка этот стандарт поддерживает меньшинство IoT-техники, которое в основном использует 2.4 ГГц.
О, обожаю такие упрёки.
У нормальных людей цикл смены оборудования, если оно работает и отвечает требованиям (и требования не менялись с момента установки) — пока не сломается. Как правило, это 10+ лет.
Asus RT-AC68U из 2013 всё ещё маршрутизирует несколько сотен мегабит, раздаёт Wi-Fi по относительно скоростному Wi-Fi 5, 5 ГГц, и всё ещё поддерживается производителем — последнее обновление прошивки вышло 4 дня (!) назад. В рамках домашнего использования с домашними задачами нет совершенно никакого резона менять его на что-то другое.
Я постоянно натыкаюсь на различные баги и проблемы в технике, и это меня заколебало до такой степени, что покупаю только оборудование, где либо производитель предоставляет прямую поддержку частным лицам, либо серии бизнес-класса, где срок поддержки в 10 лет считается нормальным явлением.
И мне регулярно приходится сообщать производителям о проблемах в их оборудовании.
Для примера возьмём обычную, совершенно типичную ситуацию: именитый производитель, тот же Asus, берёт чип, скажем, Broadcom, и делает Wi-Fi-роутер на его основе. Системная часть ПО написана Broadcom'ом, Asus вносит только свои коррективы, интерфейс, пользовательские функции, и т.п.
Если обнаруживается низкоуровневая проблема, как из этой статьи, на её диагностику могут уйти годы.
Она проявляется только в отдельном сценарии использования
Она плавающая
Для её воспроизведения требуются особые условия и время (включите точку и IoT-устройство — все будет работать до смены GTK)
Для её диагностики требуется разбирающийся технический специалист со стороны Asus, чтобы задокументировать и передать информацию в Broadcom — сами они её решать не будут
Сообщения о проблемах от среднестатистического покупателя роутера будет а-ля «у меня не работает», без необходимых подробностей (т.к. пользователи не понимают, какие данные важны, а какие нет), и без технических деталей (потому что пользователь — не технический специалист). Как правило, такие сообщения целиком бесполезны. И это в лучшем случае!
А скорее всего письмо будет направлено сперва производителю принтера — ваш принтер сломан, пропадает из сети, не могу печатать, и Asus получит письмо, если производитель попытается разобраться в проблеме и укажет на дефективный роутер. Письмо, конечно же, от пользователя, а не от производителя принтера — ведь производитель принтера не клиент компании Asus и не может получить тех. поддержку, даже если его сообщения в разы полезней.
Поэтому, ни много ни мало, в современном мире решение тех. проблемы — дисциплина, требующая технических навыков для её диагностики и документации, коммуникативных навыков для донесения информации через всю цепочку поставки ответственному лицу через сотрудника первой линии поддержки, и в каком-то смысле социально-экономических: если не обращают внимания и не исправляют, куда и как давить, чтобы добиться своего.
И в особенности для модулей Wi-Fi, которые один другого хуже.
Если для вас информация неактуальна и бесполезна, не утруждайте себя чтением и комментированием этой и других статей. Я сам так делаю, временами одёргивая себя прямо во время написания комментария, когда сильно бомбит.
А я продолжу пополнять запасы модулей на старом AR9271 — сильно устаревшей, но единственной известной мне полноценной работающей Wi-Fi-карте, и с открытой прошивкой. Их у меня несколько сотен.
Multicast/broadcast-трафик передается с минимальной скоростью, чтобы его получили все подключённые к точке устройства.