продолжая беседу
Mar. 9th, 2018 08:34 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Т.к. есть такое европейское мнение, что рефакторинг - это метросексуальный аджальный метод продажи навоза юзерам, то я вдруг задумался - а что в Европе делают, когда их хакают и информацию воруют? Ну понятно, против воровства в Европе есть законы, например, GDPR; а в Швейцарии так даже масс шутинги запрещены (это мне швейцарцы когда-то сказали); но вот если случилось, так что тогда? Компьютеры сжигают на свалке, покупают новые, и пишут для них новые программы?
Ведь, я слышал, в Европе сначала на Z-notations и на Rational Rose весь дизайн правильно напишут, так что европейская программа не может быть неправильной, так что и рефакторить там нечего. Она совершенна.
И вот если она сломалась, то чо. Неужели с нуля переписывают?
Тесты-то понятное дело что не нужны; программист выполняет приказ менеджера, а менеджер не может ошибаться; и только плохой программист пишет код с ошибками. Немецкий код работает везде и без ошибок. Ой, тут сразу вспоминается Энигма, и три ушлых поляка, которые ее кракнули как раз перед Второй Мировой.
Ведь, я слышал, в Европе сначала на Z-notations и на Rational Rose весь дизайн правильно напишут, так что европейская программа не может быть неправильной, так что и рефакторить там нечего. Она совершенна.
И вот если она сломалась, то чо. Неужели с нуля переписывают?
Тесты-то понятное дело что не нужны; программист выполняет приказ менеджера, а менеджер не может ошибаться; и только плохой программист пишет код с ошибками. Немецкий код работает везде и без ошибок. Ой, тут сразу вспоминается Энигма, и три ушлых поляка, которые ее кракнули как раз перед Второй Мировой.
no subject
Date: 2018-03-11 02:41 pm (UTC)no subject
Date: 2018-03-11 02:48 pm (UTC)That's the thing with German Engineers, they are unaware that the world is changing all the time.
no subject
Date: 2018-03-11 02:50 pm (UTC)no subject
Date: 2018-03-11 03:26 pm (UTC)Когда на немецком ICE перезапускают систему - это тоже все видят. Поезд стоит и ждёт, пока всё снова не запустится.
no subject
Date: 2018-03-11 03:26 pm (UTC)Говно.
>хром с андроидом
Дважды говно.
1.
Все мы знаем сайты с бесконечной прокруткой. Началось это безобразие с твиттера, потом дошло до Tumblr и далее везде. Пользователь докручивает страницу до низа, она снизу подгружается, и так без конца. Обычно это сопровождается отсутствием поиска по дате и вообще какого бы то ни было поиска.
Рано или поздно любая подобная страница начинает тормозить, потому что элементов в ней становится больше, чем способен вовремя обработать движок браузера и какие-то промежуточные скрипты на странице. Внимание, вопрос — а почему никто вместе с добавлением элементов в конец страницы не удаляет их из начала? То есть, после определённого количество "разрастаний" страницы, добавление каждого следующего элемента ленты влечёт за собой еще и удаление элемента из начала. В результате, страница будет иметь хоть и большой, но всё же конечный размер.
2.
Проблема: в некоторых случаях браузер жрёт немерянно много памяти. С недавних пор Firefox стал 64битным и не ограниченным адресным пространством в 2гб. Вдобавок, он еще и многопроцессный. Иногда, видимо из вредительских целей, вкладки с google translate на некоторых сайтах отжирают по 6 ГБ, а все процессы браузера - больше 12ГБ, и через некоторое время вся система уходит в жесткий своппинг.
В браузере такой настройки "не жрать, сука!" почему-то нет. Job objects, которые виндовые ограничения, не могут быть вложенными (начиная с Win 8 могут, но у меня Win 7), а Firefox уже использует оные job'ы для своих дочерних процессов, и еще одно ограничение наложить не получается.
Какая же дрянь это современное айти.
no subject
Date: 2018-03-11 03:31 pm (UTC)Doesn't web scale?
>We can start selling AWS service at the beginning of its lifecycle.
И это явление нужно засунуть обратно, туда, откуда оно вылезло. И еще добавить к софту гарантийные требования, вместо "AS IS".
no subject
Date: 2018-03-11 03:36 pm (UTC)Да, не требует, в отличие от.
no subject
Date: 2018-03-11 03:36 pm (UTC)no subject
Date: 2018-03-11 04:56 pm (UTC)to the same level of completeness? ("nothing else left to fix" level)
yes, obviously.
"нет "market pressure for bug-free" code"
Of course. There is market pressure for MTTF and MTTR.
Intel doesn't have a production line for i5. They only have i7. Then i5 are those i7 that didn't pass the test (and subsequently the connections to the second thread of each core is burned out before packaging). Do you blame them for not sufficiently perfecting their i7 production line? It is the same thing as knowing how to sell bugs in the code.
no subject
Date: 2018-03-11 05:11 pm (UTC)no subject
Date: 2018-03-11 05:24 pm (UTC)no subject
Date: 2018-03-11 06:54 pm (UTC)no subject
Date: 2018-03-11 07:14 pm (UTC)Вы вообще представляете себе технологические проблемы чипмейкров и стоимость оборудования, к примеру, для фотолитографии (а также то, что их до сих пор выпускают всего три фирмы в мире, две из которых - японские, а третья - голландская)? Сравнить wafer production и программирование можно только при полном отсутствии хотя бы минимального инженерного кругозора.
no subject
Date: 2018-03-11 08:07 pm (UTC)no subject
Date: 2018-03-11 08:08 pm (UTC)no, the parser some team spent the same amount of time making as that box you are talking about. Why would you suggest to compare 200*2 year project and 1*2 weeks project, and then laugh about how clever you are?
"MTTF и MTTR"
is the real metric people care about. A lay owner of a hard drive has no interest in knowing how they achieve that: through man-hours spent on perfecting the design, or through quaruply-redundant hardware.
"при полном отсутствии хотя бы минимального инженерного кругозора."
that's a projection.
You can't seem to even discern the example of a wafer production line is exactly that: the production line actually utilizes redundancy to account for errors in the process. By no means am I comparing the quality. I am only pointing out that you think one of them as a feat of engineering worthy of worship, and the other - it's just engineers being lazy.
PS I don't even see why you choose to argue. In the other thread above you admit the same thing - different business requirements is the cause of a different development process, and a different way of achieving the necessary reliability. (More error-prone RoR twitter can be mitigated through higher redundancy, once it scales horizontally by design - there is no business need to perfect the design; it is even against the business goals, as perfecting the design extends the time to market.)
no subject
Date: 2018-03-12 03:50 am (UTC)no subject
Date: 2018-03-12 03:52 am (UTC)no subject
Date: 2018-03-12 06:01 am (UTC)no subject
Date: 2018-03-12 06:05 am (UTC)Some fun bits here:
https://www.itworld.com/article/2823083/enterprise-software/88716-8-famous-software-bugs-in-space.html
no subject
Date: 2018-03-12 07:17 am (UTC)Сейчас начнётся обсуждение того, какой фундамент фундаментальнее.
no subject
Date: 2018-03-12 07:54 am (UTC)Нет, среднестатистических людей интересует то, сколько они скорости и надёжности получают за вложенный доллар. В мире финансового софта и компаний, получающих деньги от рекламы и социальной аналитики, ситуация иная, очень много лишних денег, поэтому в Гугле, Фейсбуке, Твиттере, Линктине и прочих аналогичных сервисах столько говнокода и плохих архитекторов системы, а нормальные программисты после нескольких лет работы там бегут оттуда, сломя голову, в другие конторы и персональные проекты.
Это не projection, а выводы на основе безграмотности Ваших комментариев, а уж являются ли они осознанной неправдой или незамутнённым отсутствием кругозора - я разбираться не буду.
Я спорю не с тем, что сущствуют разные потребности бизнеса, - это очевидно, - а с тем, что измерять удовлетворением локальных потребностей некомпетентного в кухне написания софта заказчика объективное качество создаваемого для него кода - это полное безумие; это всё равно как если бы на основе мнения человека, покупающего USB-флешку, которую он сломает или потеряет через месяц, делать вываоды о износостойкости используемой в ней MLC NAND.
no subject
Date: 2018-03-12 08:26 am (UTC)no subject
Date: 2018-03-12 08:26 am (UTC)no, you didn't
no subject
Date: 2018-03-12 08:31 am (UTC)no subject
Date: 2018-03-12 08:45 am (UTC)Люди озабочены тем, за что им платят деньги. Теоретики должны постоянно двигать новые теории и придумывать новые трюки. На утверждении, что старые технологии прекрасно работают, научную карьеру не сделаешь. Потому практика их не интересует. Если и интересуют, то они пытаются искать какое-нибудь необычное решение.
код должен быть максимально производительным для используемого железа и максимально надёжным.
Код должен решать задачу. После достаточно малозатратного достижения оптимальных величин стоимость дальнейшего увеличения как производительности, так и надёжности начинает расти экспоненциально.
А с нынешним уровнем разработчиков на многих задачах точка перелома достигается на таком уровне качества, что становится стыдно за человечество.