Моки написаны согласно пониманию программиста. А оно не всегда совпадает с реальностью. Согласно моему опыту, проблемы интеграции, по сути неверного понимания протокола, встречаются на порядок чаще чем обычные ошибки в коде. По крайней мере это верно для опытных программистов, с которыми я имел счастье по большей части работать.
Я вам отвечу из моего опыта.
1. Проблема не только в TDD, но и в юнит тестах и автоматических regression тестах вообще.
2. UT создают весьма ощутимое усложнение проекта и увеличение времени разработки.
3. От них на самом деле польза небольшая — они ловят довольно мало реальных проблем.
4. Имеется административная проблема — программистов трудно проверить, насколько качественные тесты они написали. Вы не можете проверить, написан тест «для галочки» или «по существу». И, разумеется, взывать к сознательности в среднем бесполезно.
Об этом я как-то написал заметку тут же на хабре.
Будьте добры, поясните.
1. Допустим, темной энергии нет, и вселенная эволюционирует по одному из 3 первых сценариев. В такой ситуации, первоначальное расширение вселенное аналогично кинетической энергии тела, которое мы подбросили вверх (оставим в стороне вопрос, откуда эта кинетическая энергия взялась). Так вот, если кинетической энергии было мало по сравнению с гравитацией, то тело упадет обратно, или наоборот, сумеет оторваться и улететь. Я повторюсь, скорость расширения вселенной аналогична привычной нам кинетической энергии. Так?
2. Когда мы поднимаем книгу, сила тяготения и направление движения разнонаправлены. Соответственно, мы нашей рукой совершили работу и увеличили гравитационную потенциальную энергию книги, использовав некий запас энергии из наших мышц.
Когда вселенная расширяется, она увеличивает потенциальную энергию гравитационного взаимодействия материи. То есть нечто (назовем это ТЭ) совершает работу против гравитации и должно затрачивать энергию. Ну хорошо, чтобы разнести на бесконечное расстояние какие-то два гравирующих объекта, нужно вполне конечное количество энергии, то есть потенциальная энергия гравитации конечна. Но при ускоренном расширении, вселенная наращивает и «кинетическую энергию», из пункта 1.
Причем, в отличие от гравитации, кинетическая энергия системы возрастает неограниченно. Откуда берется эта бесконечная энергия?
Когда мы поднимали книгу или бросали мяч, мы черпали энергию из запасов в мышцах нашей руки. И если нам удалось разогнать мяч до второй космической, то вся кинетическая и потенциальная гравитационная энергия мяча изначально содержалась в нашей руке.
Когда темная энергия разгоняет вселенную до бесконечных скоростей, это означает что вся эта энергия изначально должна существовать в «руке». То есть в существующем в данный момент вакууме (если мы решили, что ТЭ это свойство вакуума). То есть, знакомый нам вакуум прям сейчас содержит в себе бесконечную энергию.
Норма прибыли майнеров не слишком большая и основная часть денег из награды идет именно на оплату электричества. Так что можно посчитать сколько эта сеть жгет энергии в соответствии с нынешними ценами. Сейчас расходуемая мощность выходит примерно ГигаВатт. А на одну транзакцию расходуется примерно 77 кВт*ч. Это существенно более чем до хрена. Такая вот антизеленая технология.
Биткоин, как и любая прочая валюта выполняет 2 функции:
1. Платежное средство. Обеспечение какой-то экономической деятельности.
2. Средство накопления.
Чем больший процент валютной массы используется именно как средство платежа, в обычном для экономической деятельности темпе, тем более валюта стабильна и предсказуема.
Чем больший процент валютной массы используется как средство накопления, тем более она подвержена движениям с положительной обратной связью (дорожает -> выгодно покупать -> растет спрос -> дорожает).
Так что там у биткойна как у платежного средства?
«Стоимость» транзакции зависит от цены биткойна. Известно, что практически вся награда майнерам тратится ими на электричество. При нынешних ценах, каждая транзакция, попавшая в блокчейн, «стоит» не менее 77 кВт*ч. Для сравнения, емкость батареи машины «Тесла» — 85 кВт*Ч.
Это очень паршивое платежное средство. На порядок хуже традиционных средств расчета.
То есть, биткойн практически исключительно является средством накопления. И как следствие, его динамика имеет положительную обратную связь. В какой-то момент возрастающий тренд сменится на отрицательный, и биткойн ринется вниз так же стремительно, как и летит сейчас вверх. Пузырь.
Вы совершенно правы. Я в шоке от публики, которая глотает и не выплевывает такую фигню.
Добавлю, что время суток во время прохождения оределенной точки орбиты «гуляет» всвязи с високосными годами — 3 года ошибка накапливается и затем исправляется. А прецессия на это время суток имеет совершенно ничтожное значение, гораздо меньшее чем фишка с високосными.
Прецессия может сдвигать полночь туда-обратно на величину, принципиально не большую чем день. А на самом деле, речь идет о секундах, максимум минутах. Кстати, астрономический год (время оборота по орбите) не совпадает с календарным годом примерно на 6 часов, что корректируется добавлением дня в високосные годы. Так что время суток в момент прохождения границы между созвездиями в любом случае «гуляет» на те самые часы (ошибка накапливается в течение 3 лет, потом исправляется). Так что прецессия _не_ может тут что-то серьезного означать.
Абсолютно согласен. В каждом проекте собственный набор понятий.
Более подходящяя анология — общий алфавит.
Например, в языках с латинницей, буковки те же самые, но используемые понятия и их обозначения — разные.
Единый алфавит, разумеется, хорошее дело — глазу привычней и все такое (я, например, до сих пор испытываю нелюбовь к ивритским буквам), но это просто базовый алфавит. Когда дело доходит до «слов» — они все равно разные. А поскольку на С и С++ библиотеки мягко говоря бедны, то каждый изобретает свой собственный язык даже для базовых понятий.
Допустим, кабель порвался на глубине.
При сращивании он должен получиться длиннее чем исходный. Причем разница может составлять километры.
Как его потом обратно укладывают? Как-то расправлют или не парятся на эту тему и он там кольца на дне вырисовывает?
Вообще-то аллергия — штука приобретенная.
В генах может быть только повышенная настороженность имунной системы. Что совсем не всегда оказывается плохо.
Я вот добавлю, на своем личном опыте. У меня была очень сильная аллергия на кошачью шерсть. И прошла, без шуток.
Я же не мутировал, правда?
Вообще-то, то что вы написали определяется очень просто: «отсутствие паталогий и предрасположенностей к оным».
И таких вот «норм» бесконечное количество. Так что в этом получается мало смысла.
А попытка представить образец навевает вспоминания о словосочетании «Истинный Ариец».
1. Зачем противотанковому средству куча патронов?
Так и представил себе, выходит такой солдат с этой фиговиной на охоту. Настрелял десяток-другой танков, и довольный возвращается…
2. Совершенно неважно, какое оружие самое популярное. Для каждого оружия свое предназначение, дополняющее другие. Предложенный вами выбор — это как выбирать вам нужны руки или ноги. Без одного не сможете ходить, без другого работать.
3. Как я уже сказал в соседнем комментарии, конфликты последнего времени характерны тем, что все чаще и шире используется тактика живого щита. Высокоточное оружие с минимальным сопутствующим ущербом в некоторой степени решает проблему. Я к тому, что и раньше на расстоянии 1-3 километра поразить цель было не проблемой. Только боеприпас был тяжелый (а значит много на спине не принесешь), а во-вторых, поразить одного человека не удастся. А иногда (отнюдь не всегда, разумеется) надо.
2. Опыт появляется гораздо быстрее, если код регулярно подвергается code review и конструктивной критике со стороны более опытных программистов.
Я лично много для себя понял и многому научился в процессе код ревью. Причем слышал и приведенные в статье замечания.
3. Вместе с тем, у меня лично при программировании временами есть чувство творчества и красоты созданного кода. И такие моменты лично для меня очень ценны в моей работе и жизни.
Забавно на эту тему выглядит недавно появившийся мессенджер 4Talk.
На основном сайте нет упоминания о том, чья это компания, но подпись к Win инсталятору от «Russkie Internet Resheniya».
При этом мессенджер:
1. Хранит все данные в облаке
2. Скачивает на серваера всю адресную книгу пользователя. О чем, кстати, честно предупреждает в политике конфиденциальности.
4talk будет периодически получать доступ к Вашей адресной книге или к списку контактов на мобильном телефоне
Я повторю, что не только контакты, с которыми вы через эту программу общаетесь, а вообще, все кто внесен в телефон.
Я вот добавлю, что специфика современных конфликтов в действенности живых щитов. Один главнокомандующий большой страны даже заявил, что будет использовать эту тактику.
Так вот, оружие, которое может поражать цели на большом расстоянии без сопутствующего ущерба, в некоторой степени решает проблему.
Поражать цели на таком расстоянии можно и сейчас. Но для этого нужно иметь неподалеку орудие или притащить управляемую ракету. Все это сложнее по логистике, сопутствующему ущербу, весу, а может и по стоимости.
Такая вот штука легкой тоже не будет (калибр .50 таки), но явно легче чем другие варианты. То есть, мощь развед-диверсионных групп повышается кардинально.
1. Проблема не только в TDD, но и в юнит тестах и автоматических regression тестах вообще.
2. UT создают весьма ощутимое усложнение проекта и увеличение времени разработки.
3. От них на самом деле польза небольшая — они ловят довольно мало реальных проблем.
4. Имеется административная проблема — программистов трудно проверить, насколько качественные тесты они написали. Вы не можете проверить, написан тест «для галочки» или «по существу». И, разумеется, взывать к сознательности в среднем бесполезно.
Об этом я как-то написал заметку тут же на хабре.
1. Допустим, темной энергии нет, и вселенная эволюционирует по одному из 3 первых сценариев. В такой ситуации, первоначальное расширение вселенное аналогично кинетической энергии тела, которое мы подбросили вверх (оставим в стороне вопрос, откуда эта кинетическая энергия взялась). Так вот, если кинетической энергии было мало по сравнению с гравитацией, то тело упадет обратно, или наоборот, сумеет оторваться и улететь. Я повторюсь, скорость расширения вселенной аналогична привычной нам кинетической энергии. Так?
2. Когда мы поднимаем книгу, сила тяготения и направление движения разнонаправлены. Соответственно, мы нашей рукой совершили работу и увеличили гравитационную потенциальную энергию книги, использовав некий запас энергии из наших мышц.
Когда вселенная расширяется, она увеличивает потенциальную энергию гравитационного взаимодействия материи. То есть нечто (назовем это ТЭ) совершает работу против гравитации и должно затрачивать энергию. Ну хорошо, чтобы разнести на бесконечное расстояние какие-то два гравирующих объекта, нужно вполне конечное количество энергии, то есть потенциальная энергия гравитации конечна. Но при ускоренном расширении, вселенная наращивает и «кинетическую энергию», из пункта 1.
Причем, в отличие от гравитации, кинетическая энергия системы возрастает неограниченно. Откуда берется эта бесконечная энергия?
Когда мы поднимали книгу или бросали мяч, мы черпали энергию из запасов в мышцах нашей руки. И если нам удалось разогнать мяч до второй космической, то вся кинетическая и потенциальная гравитационная энергия мяча изначально содержалась в нашей руке.
Когда темная энергия разгоняет вселенную до бесконечных скоростей, это означает что вся эта энергия изначально должна существовать в «руке». То есть в существующем в данный момент вакууме (если мы решили, что ТЭ это свойство вакуума). То есть, знакомый нам вакуум прям сейчас содержит в себе бесконечную энергию.
Что не так?
Норма прибыли майнеров не слишком большая и основная часть денег из награды идет именно на оплату электричества. Так что можно посчитать сколько эта сеть жгет энергии в соответствии с нынешними ценами. Сейчас расходуемая мощность выходит примерно ГигаВатт. А на одну транзакцию расходуется примерно 77 кВт*ч. Это существенно более чем до хрена. Такая вот антизеленая технология.
1. Платежное средство. Обеспечение какой-то экономической деятельности.
2. Средство накопления.
Чем больший процент валютной массы используется именно как средство платежа, в обычном для экономической деятельности темпе, тем более валюта стабильна и предсказуема.
Чем больший процент валютной массы используется как средство накопления, тем более она подвержена движениям с положительной обратной связью (дорожает -> выгодно покупать -> растет спрос -> дорожает).
Так что там у биткойна как у платежного средства?
«Стоимость» транзакции зависит от цены биткойна. Известно, что практически вся награда майнерам тратится ими на электричество. При нынешних ценах, каждая транзакция, попавшая в блокчейн, «стоит» не менее 77 кВт*ч. Для сравнения, емкость батареи машины «Тесла» — 85 кВт*Ч.
Это очень паршивое платежное средство. На порядок хуже традиционных средств расчета.
То есть, биткойн практически исключительно является средством накопления. И как следствие, его динамика имеет положительную обратную связь. В какой-то момент возрастающий тренд сменится на отрицательный, и биткойн ринется вниз так же стремительно, как и летит сейчас вверх. Пузырь.
Добавлю, что время суток во время прохождения оределенной точки орбиты «гуляет» всвязи с високосными годами — 3 года ошибка накапливается и затем исправляется. А прецессия на это время суток имеет совершенно ничтожное значение, гораздо меньшее чем фишка с високосными.
Прецессия может сдвигать полночь туда-обратно на величину, принципиально не большую чем день. А на самом деле, речь идет о секундах, максимум минутах. Кстати, астрономический год (время оборота по орбите) не совпадает с календарным годом примерно на 6 часов, что корректируется добавлением дня в високосные годы. Так что время суток в момент прохождения границы между созвездиями в любом случае «гуляет» на те самые часы (ошибка накапливается в течение 3 лет, потом исправляется). Так что прецессия _не_ может тут что-то серьезного означать.
Правильный ответ:
Я к тому, что разница между Асинхронностью и многопоточностью имеется. Понятия взаимосвязанные, но разные.
Более подходящяя анология — общий алфавит.
Например, в языках с латинницей, буковки те же самые, но используемые понятия и их обозначения — разные.
Единый алфавит, разумеется, хорошее дело — глазу привычней и все такое (я, например, до сих пор испытываю нелюбовь к ивритским буквам), но это просто базовый алфавит. Когда дело доходит до «слов» — они все равно разные. А поскольку на С и С++ библиотеки мягко говоря бедны, то каждый изобретает свой собственный язык даже для базовых понятий.
При сращивании он должен получиться длиннее чем исходный. Причем разница может составлять километры.
Как его потом обратно укладывают? Как-то расправлют или не парятся на эту тему и он там кольца на дне вырисовывает?
В генах может быть только повышенная настороженность имунной системы. Что совсем не всегда оказывается плохо.
Я вот добавлю, на своем личном опыте. У меня была очень сильная аллергия на кошачью шерсть. И прошла, без шуток.
Я же не мутировал, правда?
И таких вот «норм» бесконечное количество. Так что в этом получается мало смысла.
А попытка представить образец навевает вспоминания о словосочетании «Истинный Ариец».
Так и представил себе, выходит такой солдат с этой фиговиной на охоту. Настрелял десяток-другой танков, и довольный возвращается…
2. Совершенно неважно, какое оружие самое популярное. Для каждого оружия свое предназначение, дополняющее другие. Предложенный вами выбор — это как выбирать вам нужны руки или ноги. Без одного не сможете ходить, без другого работать.
3. Как я уже сказал в соседнем комментарии, конфликты последнего времени характерны тем, что все чаще и шире используется тактика живого щита. Высокоточное оружие с минимальным сопутствующим ущербом в некоторой степени решает проблему. Я к тому, что и раньше на расстоянии 1-3 километра поразить цель было не проблемой. Только боеприпас был тяжелый (а значит много на спине не принесешь), а во-вторых, поразить одного человека не удастся. А иногда (отнюдь не всегда, разумеется) надо.
2. Опыт появляется гораздо быстрее, если код регулярно подвергается code review и конструктивной критике со стороны более опытных программистов.
Я лично много для себя понял и многому научился в процессе код ревью. Причем слышал и приведенные в статье замечания.
3. Вместе с тем, у меня лично при программировании временами есть чувство творчества и красоты созданного кода. И такие моменты лично для меня очень ценны в моей работе и жизни.
На основном сайте нет упоминания о том, чья это компания, но подпись к Win инсталятору от «Russkie Internet Resheniya».
При этом мессенджер:
1. Хранит все данные в облаке
2. Скачивает на серваера всю адресную книгу пользователя. О чем, кстати, честно предупреждает в политике конфиденциальности.
Я повторю, что не только контакты, с которыми вы через эту программу общаетесь, а вообще, все кто внесен в телефон.
Вот не удивлюсь, если их те же ФСБ спонсируют.
Больше уже на руках не перенести.
Так вот, оружие, которое может поражать цели на большом расстоянии без сопутствующего ущерба, в некоторой степени решает проблему.
Такая вот штука легкой тоже не будет (калибр .50 таки), но явно легче чем другие варианты. То есть, мощь развед-диверсионных групп повышается кардинально.