Добрый вечер!
Долго думал в какую ветку написать и решил, что тут будет самое подходящее место.
Я просмотрел достаточно большое количество исходников колибри и заметил одну особенность: небольшой бардак в "шапках" файлов
Думаю, что всем известна такая хорошая практика, как помещение, в самом начале файла с кодом, небольшого заголовка-комментария, в котором указывается, например:
ревизия файла, автор, дата создания, лицензия, назначение файла.
Тут же я наблюдая плачевную картину в этом плане, шапки если и присутствуют (далеко не всегда) - то они как правило не подчиняются какой либо системе, каждый пишет так, как ему нравится. Бывает, что встречаются файлы притянутые из других проектов, соответственно такие файлы оснащены своими заголовками. Это добавляет еще больше беспорядка и поднимает вопрос о лицензионной чистоте.
Не знаю, поднимался ли этот вопрос ранее, я всего первый день тут, но считаю, что это очень важный момент. Это прежде всего культура разработки + различные удобства, как та же ревизия (которая проставляется автоматически, по специальному тегу). Может я конечно глубоко заблуждаюсь, тогда простите
Вообщем хотелось бы обсудить немного этот вопрос и услышать различные мнения.
Спасибо.
Оформление файлов исходного кода
Заголовки правим по мере необходимости и желания. Просто делать ревизию ради того чтобы поправить исключительно заголовок это лишнее действие.
Насчет штампа с ревизией SVN идея хорошая. Пока такое реализовано только для ядра.
Насчет штампа с ревизией SVN идея хорошая. Пока такое реализовано только для ядра.
oleg_kutkov
привет,
Вы - второй человек (за 8 лет!), который поднимает вопрос о лицензионной чистоте кода.
Первым был корнет Турьянмаа, которого красиво направили по известному азимуту.
И он сразу дружно построился и пошёл...
По сабжу - да, кое-где кое-что оформлено (на свежий взгляд) кривовато и даже неумно.
Имхо - ну и фиг с ним.
Я - старый самогонщик. И никогда не променяю рюмку своего фирменного сливового первача на бутыль "Абсолюта".
Потому что при тройной отгонке теряется букет и послевкусие, одна толькодурь функциональность и остаётся.
привет,
Вы - второй человек (за 8 лет!), который поднимает вопрос о лицензионной чистоте кода.
Первым был корнет Турьянмаа, которого красиво направили по известному азимуту.
И он сразу дружно построился и пошёл...
По сабжу - да, кое-где кое-что оформлено (на свежий взгляд) кривовато и даже неумно.
Имхо - ну и фиг с ним.
Я - старый самогонщик. И никогда не променяю рюмку своего фирменного сливового первача на бутыль "Абсолюта".
Потому что при тройной отгонке теряется букет и послевкусие, одна только
Last edited by art_zh on Tue Dec 06, 2011 12:36 am, edited 1 time in total.
ИМХО, проблем с шапками, правильно решается eдинственным методом - отказ от всех видов шапок (может быть кроме короткий комментар что именно содержит данный файл).
в шапке - дисклэймер от Менуэта (там, где еще остались рудименты Ме-кода).
И еще - авторская подпись. У каждого - индивидуальная.
Пока не научился различать авторов по стилю регистровой аллокации в коде - приглядывайся к шапкам. Ну и SVN в помощь...
И еще - авторская подпись. У каждого - индивидуальная.
Пока не научился различать авторов по стилю регистровой аллокации в коде - приглядывайся к шапкам. Ну и SVN в помощь...
Почти согласен с johnfound, думаю что очень большие шапки не нужны. Заграницей очень следят за правами, потому и пишут большие шапки, пытаясь учесть все возможные варианты. Бывает что файл не большой и размер кода примерно равен размеру шапки
Лицензия GPL вроде как требует именно полных заголовков. Нужно уточнить у юристов. Добавить заголовки - дело минутное практически, нужно только у авторов программ спросить, какие лицензии они хотят использовать. Большая часть кода сейчас GPL, некоторое количество - BSD.
Лицензионная чистота - штука хорошая, буржуины оценят.
Лицензионная чистота - штука хорошая, буржуины оценят.
Если автор не озаботился указанием лицензии значит Public domain
В newlib шапки не везде есть, хотя исходники на 99% соответствуют оригинальным.
В newlib шапки не везде есть, хотя исходники на 99% соответствуют оригинальным.
Так нельзя. Одно дело если автор недоступен длительное время или вообще сложил свои жизненные полномочия. Совсем другое если он по ошибке выложил или вообще поторопился и не подумал. Мне кажется что BSD-MIT гораздо лучше подходит.
И всё-таки нужно спросить авторов программ, и узнать их мнение. По законам нашей страны, авторское право остается закрепленным за авторами программ. Вроде бы "всё, что не запрещено, то разрешено", и, следовательно, можно делать всё, что угодно, кроме удаления упоминаний об авторе.Mario wrote:Так нельзя. Одно дело если автор недоступен длительное время или вообще сложил свои жизненные полномочия. Совсем другое если он по ошибке выложил или вообще поторопился и не подумал. Мне кажется что BSD-MIT гораздо лучше подходит.
Если никто не против, пожалуйста, уважаемые авторы, выскажитесь по поводу лицензий для своих программ, входящих в состав Колибри.
Если возражений не поступит, я напишу письма всем тем авторам программ, кто уже не участвует в проекте, но чей код еще активно используется на сегодняшний день.
У меня до поры только KFM был без заявленной лицензии, теперь я весь исходный код выкладываю под BSD подобной лицензией.
Все портированные (и исправленные) мной приложения разумеется сохраняют лицензию. Если это Apache или GPL - я выдам исходные коды патчей к программам по первому запросу, если они у меня сохранились, конечно же.
Единственная программа, которая написана мной - это @notify. Пусть будет GPL v2. Мне не жалко, если программу будут использовать во всяких там прошивках без возможности эти прошивки заменить
Программа job фактически переписана Asper'ом, поэтому вопросы по поводу лицензии - к нему.
Ждем остальных авторов.
Единственная программа, которая написана мной - это @notify. Пусть будет GPL v2. Мне не жалко, если программу будут использовать во всяких там прошивках без возможности эти прошивки заменить
Программа job фактически переписана Asper'ом, поэтому вопросы по поводу лицензии - к нему.
Ждем остальных авторов.
Мою версию преобразования Хартли можно свободно использовать любым боком, менять (всё кроме заголовка и копирайта) и адаптировать любой кусок кода как вздумается, продавать и использовать в закрытых приложениях - но только в Колибри и в ее версиях, непосредственно отпочковавшихся от основного транка.
В МеОС - однозначно нельзя (ибо нефиг хамить).
В других ОСях - пишите письма, договоримся.
То же относится к утилитам, новым "полувекторным" шрифтам и их парсеру.
В МеОС - однозначно нельзя (ибо нефиг хамить).
В других ОСях - пишите письма, договоримся.
То же относится к утилитам, новым "полувекторным" шрифтам и их парсеру.
Не спора ради... Что такое это самое преобразование Хартли, я понятия не имею, поэтому речь не столько о Вашем коде, сколько "вообще". Интересно узнать, какой смысл Вы вкладываете в накладываемые ограничения и как с ними предполагаете бороться, если такое будет возможно в принципе? Тут ведь возможны три основных варианта:art_zh wrote:Мою версию преобразования Хартли можно свободно использовать любым боком, менять (всё кроме заголовка и копирайта) и адаптировать любой кусок кода как вздумается, продавать и использовать в закрытых приложениях - но только в Колибри и в ее версиях, непосредственно отпочковавшихся от основного транка.
В МеОС - однозначно нельзя (ибо нефиг хамить).
В других ОСях - пишите письма, договоримся.
То же относится к утилитам, новым "полувекторным" шрифтам и их парсеру.
1. Прямое использование Вашего кода в МеОС;
2. "Адаптация" Вашего кода путём косметических переделок (изменение имён меток, перестановка регистров и т.п.);
3. Самостоятельная и не зависящая от Вас реализация той же самой идеи, в результате чего был получен код, принципиально совпадающий с Вашим.
Понятно, что первые два случая будут нарушением Ваших требований (удастся ли это доказать или нет -- другой вопрос), а вот третий случай нарушением не является, поскольку человек реализовывал ту же задачу совершенно самостоятельно, ну а получил принципиально тот же результат в силу объективных причин. (Например, две реализации одного и того же алгоритма для процессоров одной и той же архитектуры могут не иметь принципиальных отличий в силу того, что имеется лишь один оптимальный способ такой реализации, и именно он был избран обоими разработчиками). Тем не менее, подобная полностью независимая разработка формально может выглядеть как реализация пункта 2. Как быть в таком случае? Или Вы просто с этим не заморачиваетесь, поскольку изначально предполагаете, что единственным контролёром исполнения Ваших требований будет совесть пользователя?
По поводу копирайтов вообще. Когда-то где-то читал, что копирайты со своим именем (ну или названием конторы) надо указывать всегда, даже если автору абсолютно пофиг, что кто-то будет его кодом пользоваться: делать это надо для того, чтобы некто не слишком высоких моральных качеств не приписал авторство себе и не обвинил впоследствии реального автора в воровстве. Правда, не знаю, насколько обоснованны подобные опасения, но за что купил, за то и продаю
Да, это главная причина. Дармоедов много, но это еще полбеды. Хуже всего - агрессивные падлы, которые не только твой код (схему, патентную заявку) своруют, но еще тебя самого потом по судам затаскают. За то, что у них IP стырил!SII wrote:По поводу копирайтов вообще. Когда-то где-то читал, что копирайты со своим именем (ну или названием конторы) надо указывать всегда, даже если автору абсолютно пофиг, что кто-то будет его кодом пользоваться: делать это надо для того, чтобы некто не слишком высоких моральных качеств не приписал авторство себе и не обвинил впоследствии реального автора в воровстве. Правда, не знаю, насколько обоснованны подобные опасения, но за что купил, за то и продаю
А реально - за то что твой товар лучше работает (или дешевле продается), чем ихний. Прижатый к ногтю конкурент ни перед какой пакостью не остановится.
Так что (С) дешево ценится, да дорого стоит.
Если же кому-то захочется перелопатить код до неузноваемости ("from scratch") - то тут конечно претензий уже не будет. Только хлопотно это...
Who is online
Users browsing this forum: No registered users and 11 guests