avva: (Default)
[personal profile] avva
О ценности исходников вне конкретного проекта:
Is your code worthless?

...There is extraordinarily little code theft in this industry (even though we’re in the era of burnable DVDs and USB keys) because most code - above and beyond the industry-wide frameworks and libraries - has no value at all outside of a specific project with a specific group of developers. Trying to use it for other projects is often worse than starting with nothing at all.


Верно подмечено, и мне приходилось об этом не раз задумываться.

Вот взять например код ЖЖ, над которым я работал почти три года. Все это время он был open-source. Любой мог взять его, построить свой клон ЖЖ, причем LiveJournal.com это не просто приветствовал, а еще и помогал советами, подсказывал, где что починить, если не работало, итд.

Казалось бы, готовая система для блог-сайта, с комментариями, с френдлентами, весь код уже написан, все работает. Бери и делай что хочешь: вставляй в свой сайт, меняй на свой вкус, добавляй новые возможности. И какое-то время многие пытались! Где-то в конце 2001 и на протяжении 2002 было довольно много сайтов и проектов, основанных на коде ЖЖ, судя по тому, сколько людей к нам обращались за советами и предложениями. Довольно много - больше десятка, скажем. И это те, о которых мы знали, ведь никто не обязан доложиться, а если сайт внутрикорпоративный, так его снаружи и не видно.

Но постепенно количество таких сайтов уменьшилось и почти сошло на нет. Почему? Потому что трудно оказалось на основе кода ЖЖ построить что-то, что не является идентичной копией ЖЖ (плюс-минус оформление). Для того, чтобы какие-то мелочи заменить, можно немного покопаться в исходниках, и все. Но предположим, вам захотелось бы сделать, чтобы комментарии шли не деревом, а линейным списком, как во многих других системах. Или ввести новую систему стилей для пользователей, чтобы у них было столь же много контроля над видом дневника, как в MySpace. Или еще что-то относительно глубокое. Для этого надо долго, долго сидеть над исходниками, разбираться; сделаться специалистом в MySQL и его репликации; изучить memcached и perlbal; перелопатить тонны перловского кода. Но для этого всего нужно столько вложить усилий, что за то же время, ну или не за то же, но за тот же порядок времени, можно было бы свою систему с нуля написать. А свою, ясно, с многих точек зрения привлекательней получается.

И это ведь не следствие, скажем, того, что мы плохо код писали. Код ЖЖ очень хорошо разбит на модули, библиотеки, итд. Хорошему программисту его легко читать и изучать. Это хороший код. Но ничего не поделаешь - его много. И ничего не поделаешь - он заточен под тот набор возможностей, которые LJ хотел дать своим пользователям. И вместе - выходит большая сложная система, которую тебе дают бесплатно, а все равно брать ее оказывается невыгодно. В результате что осталось из всех сайтов, основанных на ЖЖ? Deadjournal, GreatestJournal, и Lj.Rossia.org. Кажется, больше никого заметного и нет.

И это не какой-то особый случай, редкий. Нет, с почти любой сложной системой так обстоят дела.

Есть, наверное, исключения. Пожалуй, важность исходников больших проектов чаще заключается не в том, чтобы их использовать в другом месте, а в том, чтобы изучить их и выяснить какие-то подробности имплементации. Скажем, исходники Windows полезны тем, кто хочет найти дырки в Windows и написать вирусы; или тем, кто хочет написать эмуляцию Windows под Линуксом; но вряд ли они полезны тем, кто пишет само ядро Линукса. Исходники поисковой системы Гугла, над которыми я работаю сейчас, если бы их украли, вряд ли пригодилось кому-то для создания конкурентной поисковой системы; но тщательное их изучение могло бы принести многомиллионные прибыли какому-нибудь веб-спаммеру или SEO (Search Engine Optimizer - люди, которые за деньги стараются поднять посещения на вашем сайте из поисковых систем; я был совершенно поражен, узнав, насколько это большой бизнес). И так далее.

Но настоящее использование большой и сложной системы в другом месте, без команды, которая ее создала и поддерживает - редкое и почти невозможное явление.
Page 1 of 2 << [1] [2] >>

Date: 2007-07-15 12:52 am (UTC)
From: [identity profile] breqwas.livejournal.com
Контрпример - Mac OS X на ядре FreeBSD
Хотя это всё же чуть другое

Date: 2007-07-15 12:54 am (UTC)
From: [identity profile] avva.livejournal.com
OSX основана на BSD, не на FreeBSD.

(no subject)

From: [identity profile] breqwas.livejournal.com - Date: 2007-07-15 01:01 am (UTC) - Expand

freebsd!

From: [identity profile] jerom.livejournal.com - Date: 2007-07-15 05:28 am (UTC) - Expand

Re: freebsd!

From: [identity profile] alogic.livejournal.com - Date: 2007-07-16 11:44 am (UTC) - Expand

(no subject)

From: [identity profile] egorfine.livejournal.com - Date: 2007-07-15 06:56 am (UTC) - Expand

(no subject)

From: [identity profile] squadette.livejournal.com - Date: 2007-07-15 09:43 am (UTC) - Expand

Date: 2007-07-15 01:04 am (UTC)
From: [identity profile] ygam.livejournal.com
Меня когда-то поразили исходники ядра Майкрософт Оффиса (Оффис не использует mvscXX.dll). Если я когда-нибудь буду заниматься интернационализацией, то я не премяну воспользоваться Тайным Знанием того, как по-настоящему переводить строку в верхний реестр и т. д.

(например, верхний реестр "istanbul" будет "ISTANBUL" везде, кроме Турции и Азербайджана, где он будет "İSTANBUL")

Date: 2007-07-15 01:15 am (UTC)
From: [identity profile] itman.livejournal.com
Дык, это известная фишка, что перевод в верхний регистр является языкозависимым. И турецкое i тоже очень известный пример :-)
По теме: дело в том, что любой коммерческий продукт - это не только и не столько исходники, сколько пользователи + инфраструктура.
Вот сейчас Гугл бьется в Китае и России за долю рынка. И практически бестолку. Поможет ему знание исходников Яндекса? А ни фига. В принципе, он и сам ищет не хуже.
Кроме того, любой продукт нужно держать "в тонусе". Это требует не только рабочей команды, но и больших финансовых затрат.

(no subject)

From: (Anonymous) - Date: 2007-07-15 08:28 am (UTC) - Expand

(no subject)

From: [identity profile] itman.livejournal.com - Date: 2007-07-15 03:24 pm (UTC) - Expand

(no subject)

From: [identity profile] itman.livejournal.com - Date: 2007-07-15 03:31 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-15 06:13 pm (UTC) - Expand

(no subject)

From: [identity profile] itman.livejournal.com - Date: 2007-07-15 07:12 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-15 08:43 pm (UTC) - Expand

(no subject)

From: [identity profile] itman.livejournal.com - Date: 2007-07-16 01:42 am (UTC) - Expand

(no subject)

From: [identity profile] itman.livejournal.com - Date: 2007-07-16 01:43 am (UTC) - Expand

(no subject)

From: [identity profile] v743.livejournal.com - Date: 2007-07-17 04:10 am (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-15 08:52 pm (UTC) - Expand

(no subject)

From: [personal profile] stas - Date: 2007-07-15 07:17 pm (UTC) - Expand

Date: 2007-07-15 01:18 am (UTC)
From: [identity profile] a7sharp9.livejournal.com
Это не беспрецедентное положение вещей. Даже авторессы женского ироничного детектива гонят собственный код вместо того, чтобы рефакторить имеющийся, хотя, казалось бы, в этом жанре вполне сошло бы и прямое копирование целыми классами и иерархиями.

Собственно, о чем говорить, если в каждом более или менее развитом приложении, написанном на C, всегда имелось по меньшей мере с десяток собственных доморощенных версий функций работы со строками (аналогов strХХХ из стандартной библиотеки). Некоторые пишут их от незнания, некоторые - от недоверия, некоторые - из тщеславия, некоторые - потому что проще написать, чем смотреть в документацию, но результат тот же самый.

Date: 2007-07-15 01:35 am (UTC)
From: [identity profile] breqwas.livejournal.com
Ну почему сразу от незнания? Скажем, если в коде приходится постоянно работать, например, с датой формата YYYYMMDD в виде числа, то вполне логично написать парочку обёрток вокруг библиотечных функций работы с датами. Хотя - да, велосипеды.

(no subject)

From: [identity profile] a7sharp9.livejournal.com - Date: 2007-07-15 01:44 am (UTC) - Expand

(no subject)

From: [personal profile] nine_k - Date: 2007-07-15 11:09 am (UTC) - Expand

Date: 2007-07-15 01:58 am (UTC)
From: [identity profile] bazarny.livejournal.com
На мой взгляд, все зависит от масштаба и цели. Да, практически нет смысла брать готовый продукт и пытаться из него сделать что-то сильно от него отличающееся. С другой стороны, часто можно найти полезные идеи, которые сделают жизнь легче. Но это далеко не весь код. Возвращаясь к гугловскому коду--на самом деле весь код поиска оптимизатору не к чему, достаточно алгоритма рассчета рейтинга.

Date: 2007-07-15 11:10 am (UTC)
nine_k: A stream of colors expanding from brain (Default)
From: [personal profile] nine_k
А система распределённых вычислений и деплоймента ничего не стоит? %))

Date: 2007-07-15 02:07 am (UTC)
From: [identity profile] msh.livejournal.com
Низкий уровень воровства кода связан с двумя факторами

1. Подавляющее большинство кода пишут в странах, где люди с университетским образованием вообще очень редко воруют. В тех районах, где они живут можно оставлять открытые машины и посылки на крыльце. В крайнем случае они могут скачать фильм с торрента, но потому что искренне не считают это воровством

2. Воровство кода очень опасно и если вскроется - то убытки перекроют прибыль многократно. Просто не стоит риска

А так, в большинстве проектов, над которыми я работал, я бы с интересом почитал код конкурентов и партнеров. При том, что вряд ли стал его использовать

Date: 2007-07-15 02:54 am (UTC)
From: [identity profile] itman.livejournal.com
А что есть страны, где люди с университетским образованием часто воруют?

(no subject)

From: [identity profile] kray-zemli.livejournal.com - Date: 2007-07-15 11:16 am (UTC) - Expand

(no subject)

From: [identity profile] v743.livejournal.com - Date: 2007-07-17 04:17 am (UTC) - Expand

(no subject)

From: [identity profile] kray-zemli.livejournal.com - Date: 2007-07-18 03:18 am (UTC) - Expand

(no subject)

From: [identity profile] v743.livejournal.com - Date: 2007-07-18 01:04 pm (UTC) - Expand

Date: 2007-07-15 02:57 am (UTC)
From: [identity profile] nhura.livejournal.com
Ну теперь понятно, кто виноват в появлении вот таких скриптов
http://lj.setia.ru/threader
AVThreader
Скрипт для разворачивания комментариев в длинных тредах в ЖЖ.
From: [identity profile] dm-lihachev.livejournal.com
ну в смысле это к этому - "Хорошему программисту его легко читать и изучать. Это хороший код. Но ничего не поделаешь - его много."

ну вобщем код ЖЖ я читал. ну не целиком, целиком ни асилил - и как-то он мне не понравился..

ну м.б. я не являюсь Хорошим программистом? ;)


ну вобщем, судя по динамике жизни клонов ЖЖ, кол-во Хороших программистов сокращается довольно быстро (ну это понятно почему - "они не очень активны, по ряду причин, в ДЕМОГРАФИЧЕСКОМ ВОСПРОИЗВОДСТВЕ,..." - http://encyclopedia.dekanat.ru/?a=a&b=2401 ;)


м.б. там все-таки какие-то свои, архитектурные были ошибки? т.е. какие-то здоровенные конгломераты очень хорошо разбитые на модули, библиотеки, итд. - ну типа даже ЦПАНа - живут себе и не вымирают

а ЖЖ, оно да, несколько раз, когда приспичило блоги сочинять - все-таки останавливался на других вариантах, конкурирующих или самопальных
From: [identity profile] avva.livejournal.com
Ну не знаю, какие ошибки? Как-то это туманно весьма. Насчет качества кода - о вкусах итд.

цпан и проч. подтверждают именно мой point. Самые процветающие модули цпана - небольшие, делающие какую-то конкретную работу хорошо. А огромные системы из кучи модулей вымирают, потому что оказывается слишком неудобно под них подстраиваться. Например, Mail::Box - это ж просто удавиться можно. Почитайте readme Email::Simple и зачем он вообще существует.

итого

From: [identity profile] dm-lihachev.livejournal.com - Date: 2007-07-15 04:46 am (UTC) - Expand

Re: итого

From: [identity profile] haraz-bey.livejournal.com - Date: 2007-07-15 08:45 am (UTC) - Expand

Плагины

Date: 2007-07-15 05:13 am (UTC)
From: [identity profile] mikkim08.livejournal.com
Эклипс -- система большая и сложная и писать плагины для нее непросто, однако люди все же добавляют к ней свои плагины, расширяя ее функции, но не переписывая весь Эклипс заново.

Видимо дело все-таки во входном барьере и в том, насколько хороша ил плоха встроенная в аппликацию система плагинов.

Re: Плагины

Date: 2007-07-15 05:25 am (UTC)
From: [identity profile] cmm.livejournal.com
есть, упрощённо говоря, три уровня сложности программистского дизайна:

- написать работающую программу

- написать пригодную для использования другими людьми библиотеку

- написать пригодный для использования другими людьми язык программирования/"фреймворк"/операционную систему

скачки сложности и цены при переходе между этими тремя уровнями нелинейные.

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-15 05:47 am (UTC) - Expand

Re: Плагины

From: [identity profile] cmm.livejournal.com - Date: 2007-07-15 07:31 am (UTC) - Expand

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-15 07:42 am (UTC) - Expand

Re: Плагины

From: [identity profile] cmm.livejournal.com - Date: 2007-07-15 07:49 am (UTC) - Expand

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-15 08:58 am (UTC) - Expand

Re: Плагины

From: [identity profile] cmm.livejournal.com - Date: 2007-07-15 09:26 am (UTC) - Expand

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-15 10:14 am (UTC) - Expand

Re: Плагины

From: [personal profile] nine_k - Date: 2007-07-15 11:19 am (UTC) - Expand

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-15 08:23 pm (UTC) - Expand

Re: Плагины

From: [personal profile] nine_k - Date: 2007-07-15 08:34 pm (UTC) - Expand

Re: Плагины

From: [identity profile] mikkim08.livejournal.com - Date: 2007-07-16 04:58 am (UTC) - Expand

Date: 2007-07-15 05:20 am (UTC)
From: [identity profile] kot-ivanovich.livejournal.com
Это всё правильно, но некоторое воровство кода все же происходит, только в другой плоскости. Очень многие программисты, хранят (иногда зашифрованные) исходники всех проектов, над которыми они когда-либо работали, аккуратно попёртые при увольнении. Зачем? А жизнь программистская полна déjà vu. Мне дают задачу, и я вспоминаю, что N лет назад я (мой приятель Вася) делал что-то ну очень похожее... Лезем в старый код, находим, и, ну не то что прём – это обычно невозможно – но идеи используем.

ne po teme

Date: 2007-07-15 05:22 am (UTC)
From: (Anonymous)
Izvinite ne po teme
menia muchaet vopros i net otveta.
Otkuda berutsa fruit flies ( ne znaiu kak po russki- vrode muxi drozofilli)
Ya prigotovil kvas - ostavil na 2 chasa otkrytim - i uzhe vezde mushki melkie eti letaiut. To zhe samoe esli ostavit' ochistki apel'sina - mushki tam budut nezamedlitel'no- dazhe zimoi.
Otkuda oni berutsa?

Date: 2007-07-15 05:43 am (UTC)
From: [identity profile] msh.livejournal.com
Но настоящее использование большой и сложной системы в другом месте, без команды, которая ее создала и поддерживает - редкое и почти невозможное явление.

Советский CS, например ЕС ЭВМ

Date: 2007-07-15 07:41 am (UTC)
From: [identity profile] cmm.livejournal.com
теперь ясно, на чём именно Советский Союз надорвался.

(no subject)

From: [identity profile] vinopivets.livejournal.com - Date: 2007-07-15 08:27 am (UTC) - Expand

(no subject)

From: [identity profile] msh.livejournal.com - Date: 2007-07-15 01:20 pm (UTC) - Expand

(no subject)

From: [identity profile] vinopivets.livejournal.com - Date: 2007-07-15 09:36 pm (UTC) - Expand

(no subject)

From: [identity profile] msh.livejournal.com - Date: 2007-07-15 11:33 pm (UTC) - Expand

(no subject)

From: [identity profile] vinopivets.livejournal.com - Date: 2007-07-15 11:44 pm (UTC) - Expand

Date: 2007-07-15 06:57 am (UTC)
From: [identity profile] sleeping-death.livejournal.com
имхо, вопрос немного в другом: насколько изначально проект ориентируется на то, что будет использован кем-то на стороне.
Ну и потом, самое очевидное - это вопрос инвестиций и интеллекта. Какие деньги надо заплатить специалистам какого уровня (минимум - не ниже уровня тех, кто систему писал), чтобы они смогли полностью в ней разобраться за короткий промежуток (допустим, половину времени, потраченного на создание своей аналогичной системы).

Date: 2007-07-15 07:19 am (UTC)
From: [identity profile] ex-simanyay.livejournal.com
Согласен.

Не далее, чем вчера, смотря техтолк «How to design a good API and why it's matters» как раз думал над тем, что гораздо полезнее выпускать с исходниками библиотеки и фреймворки, чем большие, готовые проекты (особенно веб-бейзд).

Мне когда-то очень пригодился исходник libgaim, но мне абсолютно до фонаря код Adium X. Также, как код Ruby on Rails гораздо полезнее исходника, скажем, Basecamp (если вдруг его откроют). И т. д.

Date: 2007-07-15 11:23 am (UTC)
nine_k: A stream of colors expanding from brain (Default)
From: [personal profile] nine_k
Модуляризация рулит.

Думаю, код обработчиков протоколов из miranda тоже может быть полезен, поскольку он ещё более модульный.

А хорошие фреймворки нередко целиком составлены из готовых, прежде существовавших компонентов -- пример тому pylons :)

Date: 2007-07-15 07:24 am (UTC)
From: [identity profile] mikkim08.livejournal.com
Интересно было бы порассуждать, а _как_ должна быть построена система, чтобы она позволяла отчуждение, развитие, кастомизацию, а также построение на ее основе новых отличных от оригинальной систем, без участия оригинальной команды.

Таких программ довольно много (хотя можно спорить об уровне их сложности, способности к развитию/кастомизации и т.п.)

Кстати вот еще пример - Unix (http://vak.ru/doku.php/unix-history/unix-v6). Исходники которого можно было в принципе прочесть за пару-тройку вечеров.

У Steve Yegge было (http://steve-yegge.blogspot.com/2007/01/pinocchio-problem.html) такое рассуждение про "хорошие" системы (система включает язык или plugi-in system для наращивания, должна быть интроспективна, в системе должен быть command shell и т.д.), но как-то я с ним не на 100% согласен.

Date: 2007-07-15 08:13 am (UTC)
From: [identity profile] vvagr.livejournal.com
объём воровства несвободного кода оценить практически невозможно.

а про использование открытого кода - ваше утверждение тавтологично. если код используется - это "тот же проект". если написан новый - "другой проект". как показывает опенсорсный мир, проекты бывают очень большими, с форками, и с обратным заходом в проприетарку даже, если лицензия позволяет.

почему код жж не стал основой большого опенсорсного проекта блогодвижка - вопрос очень интересный, разумеется.

Перловая каша

Date: 2007-07-22 07:03 pm (UTC)
From: [identity profile] trurle.livejournal.com
вопрос очень интересный, разумеется.
Вопрос интересный, а ответ очевидный.
Perl is write-only language.

Re: Перловая каша

From: [identity profile] avva.livejournal.com - Date: 2007-07-22 10:32 pm (UTC) - Expand

Date: 2007-07-15 08:26 am (UTC)
From: [identity profile] plakhov.livejournal.com
Вот здесь: http://vitaly-b.livejournal.com/3624.html был довольно интересный разговор о качестве кода Unreal Engine 3 - самого известного и успешного современного движка для компьютерных игр.

Интересно то, что упомянутое Вами явление, похоже, не зависит от качества кода. UE3, судя по словам тех, кто его "щупал", ужасен, но используется "на ура" десятками команд. Несмотря на свою совершенно чудовщиную стоимость.

Date: 2007-07-15 11:30 am (UTC)
nine_k: A stream of colors expanding from brain (Default)
From: [personal profile] nine_k
Потому что выхода другого особо нет, наверное: другие хуже по каким-нибудь параметрам (производительности, фичам, условиям лицензирования), не имеющим прямого отношения к красоте кода.

(no subject)

From: [identity profile] plakhov.livejournal.com - Date: 2007-07-15 11:57 am (UTC) - Expand

(no subject)

From: [personal profile] nine_k - Date: 2007-07-15 12:11 pm (UTC) - Expand

(no subject)

From: [identity profile] plakhov.livejournal.com - Date: 2007-07-15 12:25 pm (UTC) - Expand

Date: 2007-07-15 09:27 am (UTC)
From: [identity profile] mynine.livejournal.com
Скорее всего, движок ЖЖ, как и большинства других проектов, действительно оказался слишком сложным для модификаций. Он мощный, возможно, легкий для чтения, работающий, но это исключительно блог ЖЖ. Он делает _свою_ задачу максимально хорошо, но шаг в сторону и он уже не подходит.

Как в известном анекдоте про верблюдов - Ну и зачем нам все эти навороты в зоопарке !?

оффтоп

Date: 2007-07-15 10:26 am (UTC)
From: [identity profile] pfiksman.livejournal.com
Не совсем по теме, но хотел вот у Вас спросить - как Вы относитесь к идее Seed AI и организации Singularity Institute?

Date: 2007-07-15 10:50 am (UTC)
From: [identity profile] ilyabo.livejournal.com
Если бы украли исходники Гугла, из них можно было бы получить точную формулу ранжирования, которая, я думаю, конкурентам очень бы пригодилась.

А вообще, это, по-моему, здорово, что есть столько открытого кода, и можно посмотреть и узнать, "а как они это сделали?".

Date: 2007-07-15 12:26 pm (UTC)
From: [identity profile] cryinstone.livejournal.com
Большие системы несут в себе сложность объема.
Однако, их как правило не поддерживает один человек. Соответсвенно, отпадает нужда в одном универсальном сверх-специалисте. То есть, кто-то будет хорошо знать MySQL, кто-то Perl или C++ - так создается команда "комплиментарных профессионалов"... Точно так же отдельный человек специализируется в конкретном модуле системы, при этом зная остальные части лишь в общем, необходимом для интеграции виде.

Когда код хорошо разбит на модули и библиотеки - практически всегда можно вынести тот общий знаменатель для следуещого поколения продукта... "Можно" не означает "тривиально", но собственно reusability - наверное, одна из главных objectives такой специальности, как Software Engineering.

Новичкам в освоении кода должны помочь такие вещи, как комментирование и документация, которыми - жаль - часто пренебрегают. Кроме того, для ориентирования в чужом коде очень хорошо помогает отладчик, наличие в системе лога, а также на первый взгляд банальный поиск по правильно подобранным ключевым словам.

Касательно не-использования существуещого кода, мы забыли один фактор: программисту чаще куда приятней "ваять" свой код, чем копаться и разбираться в чужом. Отсюда, команда сознательно или не-сознательно попытается настоять на том, чтобы зарубить код старый, и найдет для этого тысячу реальных и надуманных причин.:)

Date: 2007-07-15 09:01 pm (UTC)
From: [identity profile] execve.livejournal.com
Контрпример:
Наш продукт. Сильно изменённый FreeBSD + свой код примерно сопоставимого объёма поверх.
Ни одного разработчика FreeBSD в команде нет.

Что там в случае ЖЖ - х.з.
Может нашли что-то удобнее?

Date: 2007-07-15 09:19 pm (UTC)
From: (Anonymous)
А что за продукт?
Что-то известное?

(no subject)

From: [identity profile] execve.livejournal.com - Date: 2007-07-15 10:31 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-18 07:49 am (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-18 07:57 am (UTC) - Expand

(no subject)

From: [identity profile] avva.livejournal.com - Date: 2007-07-18 09:06 am (UTC) - Expand

(no subject)

From: [identity profile] execve.livejournal.com - Date: 2007-07-18 09:25 am (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-07-15 09:23 pm (UTC) - Expand

Date: 2007-07-15 11:03 pm (UTC)
From: [identity profile] runixonline.livejournal.com
На моей памяти код ( длиной более 1- 2 млн срок) авторы давли без проблем... По принципу - сумевший в нем разобраться достоин этого занания

Date: 2007-07-16 07:54 am (UTC)
From: [identity profile] http://users.livejournal.com/malfet_/
По моемому, пример с кодом ЖЖ не очень удачен - ЖЖ ценен не кодом, а коммьюнити. Человек желающий вести блог вне ЖЖ обычно использует ВордПресс.

Но в целом проблема известная - разработчики кода с открытыми исходниками очень часто уделают недостаточно внимания документированию архитектуры разрабатываемогого проекта.

Но везде есть свои исключения - например код гцц успешно используется Эппл и Нокия, уже упомянутый выше Эклипс кем только не используется.Ну и бум домашних раутеров показывает что код ядра линукса тоже хорошо используется сторонними разработчиками.
From: [identity profile] nuns-islander.livejournal.com
Анатолий,

Раз вы разрабатывали ЖЖ, значит вы наверняка сможете мне объяснить, почему он так странно работает со временем. Вот у меня во френд-ленте есть люди и из Москвы, и из Нью-Йорка. Когда после 16:00 монреальского времени в Москве наступает следующий день, то в ленте появляется отбивка с завтрашней датой. Потом кто-то постит в Нью-Йорке, и снова появляется отбивка с датой, которая возвращает меня в сегодня. И так может продолжаться очень долго. Спрашивается, зачем тогда вообще в profile я указал свой timezone?

С другой стороны, в заголовке любого комментария прописаны полностью дата и время в UTC, но для того чтобы они пересчитались в локальное время нужно обязательно логинться? Неужели после логина Windows перестроит свои настройки timezone в соответствии с ЖЖшными?

Короче, или я чего-то не додумал, или вы там что-то перемудрили.

Date: 2007-07-18 07:47 am (UTC)
From: (Anonymous)
Юникс, однако
Page 1 of 2 << [1] [2] >>

January 2026

S M T W T F S
    1 2 3
4 5 6 7 8 910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 9th, 2026 08:02 pm
Powered by Dreamwidth Studios