не понятно откуда такие выводы: меня тут некоторые тоже относят к любителям проприетарщины, ибо nvidia, flash, acestream. я же просто выбираю то, что лучше отвечает моим требованиям: нуво? - спасибо, мне нужен драйвер, а не бесполезный огрызок открытые флеш-плеера? - туда же. acestream - не вижу аналогов вообще.
Я не знаю сколько самый дешёвый vds со 100 гигами, то если брать только owncloud, то на том же owncube 100 гигов за 7$ в месяца https://owncube.com/single-premium-en.php
«Бесплатной» это неканонично, «открытой». Нет, тут самая прямая аналогия с открытым софтом - раз вы в нем требуете предоставить открытый код, то попробуйте в магазине открыть банку пива :)
Вы честно скажите, если вы настолько долюбанутый что считаете что термин «открытый софт» аналогичен к «открытая банка пива в магазине», так вот, так и скажите. Я тогда с вами разговаривать не буду - вы уже минимум третий полностью и окончательно шизанутый недавно зарегистрировавшийся на ЛОР товарищ, с которым я имел несчастье беседовать. :D
От того, что корпорации начнут бесплатно раздавать свой софт, он от этого более прибыльным не станет :)
А при чем тут некий «он». Более прибыльной от раздачи софта как части комплекса еще других мероприятий станет корпорация же.
Суть не в открытости, а в избавлении корпорациями от производства софта и переноса его на других.
Которым другим они это производство и оплачивают же. А открытость действительно суть, потому что это механизм этого «избавления производства». А подругому неработает, а «открыл» этот механизм «великий Столлман»(С)(тм).
Отсюда и всякие линукс центры IBM - культивирование армии «борцов за швабоду» и продвижение светлой идеи в ширнармассы.
А эти центры «механизмы». «Борцы же за швободку» же, которые «культивированные», ничего не делают же. Это всплывшее говно.
Оно «на раз» обходится законодательными запретами, что мы и наблюдаем сейчас в России применительно к мелкософту.
Оно «на раз» не обходится. Оно обходится очень дорогими в исполнении и опасными для свобод населения развитых стран законодательными запретами. За которые тоже ктото платит. В России мы же наблюдаем очередное обложение крепостных поборами. Тут налог на воздух можно брать - все утрутся а половина попросит еще.
Чисто экономическая модель там была вполне рабочая,
У вас тут нацпольный бред - но замечу что от того что вы назвали экономическую модель абсолютизма-феодализма коммунизмом никакой «рабочей модели» там не появилось.
Это была именно первые попытки комидеи
Библия вам первая попытка комидей, дорогой товарисч.
Если посмореть по статистике гитхаба, то почти 80% софта там вообще без лицензий, а в остальных с огромным преимуществом лидирует бздяшная.
Гитхаб - электронная записная книжка школоты которая выбрала гитхаб потому что «гитхаб111». Ну то есть мерять тут что-то кроме средней температуры по психбольнице - это ссзб.
То, что сообщество бескорыстно подготовило платформу, с помощью которой выкачивают деньги. С помощью рекламы, например. Ты вроде и не платишь за баннер, а его стоимость уже в ценнике на прилавке. Вот и получается, что написал, например ты, какой-нибудь кусочек, патч на пару строк, а теперь переплачиваешь за «батарейки для фонарика».
То, что сообщество бескорыстно подготовило платформу, с помощью которой выкачивают деньги.
Сообщество не бескорыстно подготовило эту платформу. А потом еще часть сообщества как нормальные разумные люди создали свои фирмы и поучаствовали в «выкачивании». Понастроив интернет провайдеров, вебхостингов, порнобизнесов и дотком-бабблов. Кстати как гуглооснователи например - «заработали на линуксе». Сообщество оно же из нормальных западных людей состоит - а не из невнятных фанатичных упырков. А у нормальных людей бизнес это нормальный, годный вид деятельности.
Вообще конечно рисовать сообщество FOSS толпой фанатиков бомжей едящих мозолей работающих «даром»... В общем за этот образ я реально очень «благодарен» всей этой набежавшей в линупс в поисках плюсов перед самками и прочей швободке мразошколоте. «поувбывалбы»(С) Суть любой коммунити во ВЗАИМОВЫГОДЕ. А не в том что «мыбесплатноработаем заидею111»
С помощью рекламы, например. Ты вроде и не платишь за баннер, а его стоимость уже в ценнике на прилавке.
А сейчас в «стоимости» платформы больше половины денег уже давно внесли разнообразные «выкачивателити».
Вот и получается, что написал, например ты, какой-нибудь кусочек, патч на пару строк, а теперь переплачиваешь за «батарейки для фонарика».
А с чего ты взял что переплачиваешь? Для одного патча все равно хрен посчитаешь(и по этому в том числе выгоден опенсорс). Для всего же линукса положительный эффект в плане «платим меньше» налицо - и не заставляй меня перечислять все те экономические эффекты от FOSS, начиная от домашних роутеров за 50$. Ты бы за такой девайс без FOSS как явления платил бы совсем другие деньги.
Ну, хорошо, давайте разберёмся в приведённом вами быдлокоде.
Во-первых, огромная портянка немного намекает на плохую архитектуру. Не могу сказать, чтобы хорошая архитектура портянки полностью исключала, но тем не менее.
Во-вторых, мы говорим о приложениях, не относящихся к классу хеллоуворлдов. Где обёртка массива шаблоном, либо задание размера через именованую константу? Красивая архитектура влечёт за собой красивый код, и наоборот. Ну и где он? Данный код следует писать, например так:
const int buf_sz = 1024;
const int buf_max_el = buf_sz-1;
char buf[buf_sz];
/*....
огромная портянка
....*/
buf[buf_max_el] = 0
Обратите внимание, что даже если требование к размеру буфера изменится, простое изменение константы buf_sz не приведёт к ошибке. Для простоты я привёл примитивное решение: если этот массив в длинющей портняке часто передаётся на вход функциям(методам), надо использовать обёртку шаблоном. В итоге, единственное, что доказывает ваш пример, это то, что использование «магических чисел» является быдлокодом.
И да, для особо одарённых, если таковые найдутся: точку с запятой я не поставил не потому, что не заметил, а потому, что бережно перенёс ошибку из исходного сообщения.
Любая взаимовыгода прекрасно описывается простейшей формулой деньги-товар-деньги Для реализации взаимовыгоды согласно этой формуле нет никакой надобности вырезать гланды через зад и изобретать опенсурс :)
И вы не заметите при первом же беглом просмотре такой косячище?
Оу.
Во-первых, это некрасиво
Да, магачиские числа, конечно изящнее, я понял.
во-вторых, не на всех компиляторах заработает
серьёзно? назовите мне это уг, которое не поддерживает константы
в-третьих, к архитектуре это не относится
Как вы представляете себе человека, разработавшего отличную архитектуру, но пишущего быдлокод?
Или вот еще пример.
Вы используете С на платформе, для которой доступен С++? или используете uint64_t на платформе, которая нормально не держит 64-битные числа? что-то вы явно делаете не так.
Дело не в том сколько ты платишь, а в том сколько с тебя имеют.
Очуметь.
Вы забываете про то, что вы лично пользуясь линуксом, в который вложили 2.5 строчки, используете кода написанного бизнесами на мульярды долларов. То есть когда корпы на вас тратят мульярды, и вы эту халявку потребляете во всех видах это типа «ништячок», свабодка, а когда ваш мизерный вклад используют бизнесы это «офигеть цинизм» :D
Нюню ;D
Цинизм все же присутствует.
Это точно, присутствует - когда вы оплаченные корпами тонны кода использщуете. ;D
И вы не заметите при первом же беглом просмотре такой косячище? Оу.
В портянке кода, которая работает? Нет конечно, я не супермен.
Такое станешь только искать когда программа работать вдруг перестанет и такие ошибки приводят к таким спецэффектам, что даже не ясно бывает где искать проблему (ога, кода может быть десятки и сотни тысяч строк ...)
Да, магачиские числа, конечно изящнее, я понял.
В pure-Си принято делать #define в начале функции и #undef в конце.
Как вы представляете себе человека, разработавшего отличную архитектуру, но пишущего быдлокод?
Где быдлокод? Одна ошибка, даже опечатка, это уже быдлокод?
Вы используете С на платформе, для которой доступен С++?
Использую, а что в этом такого?
или используете uint64_t на платформе, которая нормально не держит 64-битные числа?
А это тут при чем? Суть не в этом, если не нравится uint64_t, то помести туда 16 полей типа char :)
Любая взаимовыгода прекрасно описывается простейшей формулой деньги-товар-деньги Для реализации взаимовыгоды согласно этой формуле нет никакой надобности вырезать гланды через зад и изобретать опенсурс :)
Чуток встряну в ваше обсуждение. Никакая взаимовыгода вышеприведённой формулой не описывается. Правильно формула звучит так: деньги-товар-деньги-товар. Согласитесь, товар-товар, или даже просто товар, как-то попроще звучит. Это я так, безо всяких призывов к коммунизму.
Любая взаимовыгода прекрасно описывается простейшей формулой деньги-товар-деньги Для реализации взаимовыгоды согласно этой формуле нет никакой надобности вырезать гланды через зад и изобретать опенсурс :)
Фейспалм. «И эти люди еще говорят не ковырять в носу»(С) :D
Марш читать учебник экономики, например «Экономикс» Макдоннела & Брю. Прочитаете, особенно уделяя внимание разделу market fallacy, приходите - поговорим.
Классиков надо знать :) Эту формулу никто не отменял, никакие отдельные ошибки отдельных экономических агентов, которые, к тому же, общие что для рынка, что для опенсурса :)
Классиков надо знать :) Эту формулу никто не отменял, никакие отдельные ошибки отдельных экономических агентов, которые, к тому же, общие что для рынка, что для опенсурса :)
Повторюсь - марш читать учебник, весь б****ь целиком. А потом поговорим.
Изготовители наверное вложили дофига средств и сил для написание прошивок, без которых никому их железяка не нужна
Отказ от написания своих велосипедов сэкономил им деньги и позволил продавать свою технику дешевле. В частности, и поэтому твой роутер стоит N денег, а не N + q.
В итоге все довольны: у разработчиков допиленный инструмент, у изготовителей прибыли, у тебя дешевый роутер. По поводу чего рейдж-то? %)
Понятно, ответ в стиле «в гугель» :) Ну и напоследок - эти учебники создавали для описания рыночной экономики, но я не видел ни одного учебника или хотя бы монографии (учебники появляются уже потом) типа «Новая экономика Столлмена» Сказать почему? Ее просто не существует :) Есть какое то далеко не самое массовое производство узкой группы товаров со своей спецификой,которое, тем не менее, действуют в рамках рыночной экономики и по ее правилам и законам.
Значит, все с кем я работал, исключительно супермены. Хм, включая меня самого, кстати. Спасибо за комплимент.
ога, кода может быть десятки и сотни тысяч строк ...
Э-э а разве бывает иначе? Миллионников-то не так много, на самом деле.
В pure-Си принято делать #define в начале функции и #undef в конце.
pure-Cи уг. Писал бы на плюсах, да под платформу нет плюсового компилятора. Кроме того, все нормальные компилеры С вполне держат константы. Впрочем, на крайняк и дефайн вполне себе решение, если не считать определённые оговорки, я не против.
Где быдлокод? Одна ошибка, даже опечатка, это уже быдлокод?
К опечаткам никогда не придираюсь. Даже наоборот, считаю такое маразмом. У вас сплошные магические числа, они и есть быдлокод. Я конечно, понимаю, опять же, в реальности вы так программы не пишете, но пример-то это, в данном случае, портит.
Использую, а что в этом такого?
Ну например, если переписать ваш пример с new вместо malloc код станет более читабельным.
Суть не в этом, если не нравится uint64_t, то помести туда 16 полей типа char :)
И получи sizeof(entry) в обоих случаях 16. Ожидаемо, вообще-то. На плюсах-то этот опять же быдлокод (называть объект тем же именем, что и класс) не заработает.
Опять же, нормальные прогеры следуют определённым соглашениям, в частности именование классов(структур) с большой буквы, а переменных с маленькой. Как при этом может сложиться вышеописаная ситуация, не совсем ясно.
Ну и напоследок - эти учебники создавали для описания рыночной экономики.... тем не менее, действуют в рамках рыночной экономики и по ее правилам и законам.
И именно об этом я вам и говорю - если бы вы прочитали учебник, вы бы поняли что большая часть того что я вам пытаюсь тут втолковать там описано. И если бы вы понимали бы экономику на уровне этого учебника, то вы бы и не несли чуши про столлмана.
Нет! Вот ты сам и не увидел ошибку. sizeof(entry) == 4 на x86 и 8 на x86-64.
На С, да. На С++ данный код вообще не запустится, только после некоторых изменений, в результате которых мы именно что и увидим 16. Почему? (entry*)malloc(sizeof(entry)) — а вот поэтому. Ругаться начнет на (entry*), да. Нет конечно, можно написать и так: (struct entry*) и получить искомые 4-8 байт. Но тогда уже программер знает, что творит, ну или сам себе злобный баклан.
В Си это ok.
О чём речь, но даже на С нужно следовать соглашениям именования переменных и структур, а тогда такие ошибки просто невозможны.
Великолепно. Вы получили (по вашей формуле) деньги, на которые нельзя ничего купить. Ну можете ими печку топить или что там немцы со своими деньгами в 20-х годах делали.
Этот пример написан в соответствии с соглашениями ядра и многих других проектов :) Всё ok. В общем, в чем ты меня хочешь убедить? Что средства автоматизации не нужны и надо все делать только руками? Попробуй, например, рассказать это разрабам гугла и хрома у которых целый кластер собран для автоматического поиска ошибок в хроме (с помощью инструментария clang'а, естественно).
Очень жаль, что разработчики ядра и многих других проектов следуют таким соглашениям. Впрочем, мне что-то кажется, что у разработчиков ядра своя специфика, на которой они и выезжают. Поэтому, не надо брать с них пример.
Попробуй, например, рассказать это разрабам гугла и хрома у которых целый кластер собран для автоматического поиска ошибок в хроме
Чем бы гугль не тешился...
Что средства автоматизации не нужны и надо все делать только руками?
Не совсем так. Средства автоматизации могут помочь там, где нужно работать руками. Если писать код грамотно, то никакой лишней работы руками просто не потребуется, подобного рода ошибки не то чтобы будут находится при первом же прочтении кода, а скорее, вообще перестанут появляться. Соответственно раз руками работать (в данном контексте) больше не надо, то и средства автоматизации не нужны: автоматизировать-то становится нечего.