All streams
Search
Write a publication
Pull to refresh
-23
0
Артем Шпынов @FYR

User

Send message
Киллер фича тут только в одном — в политике Apple в области разработки USB устройств/аксессуаров.
Передавать цифровой сигнал по аналоговой системе это из области 80-90х, еще и при наличии доступных цифровых каналов для подключения перефирии — это костыль для обхода всяких патентных других искуственных ограничений.
Ну если специалист такой, что на одну страницу помещается, то может 7 секунд и много.
А если человек реально специалист то рекрутер часы тратит чтобы его скайп достать да просто «пообщаться пригласить». У тагого резюме может из трех строчек состоять: имя, цена, адрес для предложений :)
Вообще да это и есть аналог рейда, но только на уровне частей файлов. И размазаный по датацентру, а не на одном контроллере.
Избыточное кодирование как альтернативный репликации способ обеспечить отказоустойчивость? Если требование «отказоустойчивость» является обязательным то 2х и 1,4х к размеру файла вполне себе профит.
Странная однако у вас позиция. Дать комерции самой разобраться что к чему? Давали уже вон в 90 годы. В итоге ежу понятно что «купи там продай тут» в разы выгодней и надежнее.
Теперь поди найди «бизнесмена» который занимается не перепродажей, а производством.
Вас не напрягает что «кристалы растят» товарищи в Китае. И не потому что там дешевле (как это делают США) а потому что у нас вырастить кристалл да можно, но это сродни постройки если не самолета, то уж точно спорткара. А почему? А потому что «а зачем нам учиться растить кристаллы? в китае же вырастят дешевле в 10 раз».
Благодяря 90-м 2000-м у нас нету элементной базы от слова «совсем». В советские то годы процентов 90 были клонами импортных аналогов. А сейчас даже резисторы покупать в китае приходиться и не потому что там дешевле, а потому что у нас их штучно делают.
Вот поэтому мы вместо полета к Марсу, исследования земных глубин и прочих «высоких целей» тратим деньги на разные шоу «Биланов», очередные iPhone c экранами побольше и феррари с колесами покруглее. Маркетолухи убедили что это как раз то что нужно «заинтересованному заказчику».

А ребята молодцы — действительно ищут что то новое, и я уверен найдут!
да так можно и adBlock или аналоги какие (есть для мобильного интернета такие аналоги?) настроить, или на роутере заблокировать адрес скрипта. Сам факт такого вмешательства неприятен.
Кто мне там про MITM и кровавый КГБ следящий за всеми заливал?
Вот вам факт несанкционированного, нерегламентированного, никакими законами и внутренними инструкциями не регулирумого вмешательства в аббонентский трафик.
более того они не «искажали» они просто добавили свой… ну да content-size поправили только чутка :)
Пороговое напряжение это для полевых транзисторов только? Просто к биполярным оно вроде как отношение не имеет. Там уже токи насыщения и т.д.

Номер два — если правильно помню курс то ВАХ униполярных/канальных транзисторов на допороговых напряжениях это вообще очень сложная тема и ее не просто сложно смоделировать, ее смоделированную потом очень сложно повторить в «железе».

И номер три — боюсь даже представить как выглядит обычный триггер на допороговых напряжениях. А как расчитывать это все?
Я это к тому что спидометр откалиброван ± лапоть для некого стандартного размера профиля колес/шины (от которого зависит реальная скорость авто относительно земли). Он кстати может меняться в достаточно широких пределах tyres.spb.ru/tirecalc

Сюда мы еще можем записать проскальзывание колес / юз и работу дифференциалов.

Вообще сюдя по десятку страниц «куча замечаний, когда автопарковка может работать не правильно» в руководстве на мою машинку — не такое это плевое дело определить положение машинки в пространстве.
Спидометр покеазывает не скорость автомобиля, а нечно пропорциональное скорости вращения колеса и его радиуса. При этом еще и имеет искусственно заданную погрешность.
Насчет доступа к данным на CAN-шине: их во первых может быть две, а во вторых протокол общения устройств проприетарный проприетарный. Автопроизводитель не заинтересован в публикации этого протокола. Он может меняться даже в зависимости от года выпуска модели. Плюс доступ к управлению двигателем/аппаратурой/электронным газом/электроусилителем. Плюс проблемы с электрическим подключением к не самым дешевым устройствам чревато потерей гарантии…
Нет спасибо — не надо ничего такого подключать к моей машине.
«Ну как дети чесн слово». Можно подумать для того, чтобы выяснить, имея на руках всю переписку пользователя, что он это он, нужно обязательно знать его IP адрес.

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

Тут ключевой момент — никаким imaker не нужен ваш ip-адрес. Им нужна информация о вас. типа для рекламы.

А так да: «история не сохраняется» — мы просто не запоминаем дату посещения сайта, «переписка не сохраняется» — мы просто декодируем MIME и храним чистый текст, без тегов и стопслов, нормализованный до базовых форм.

А вы говорили, что СОРМ — зло. Там хоть какое то оправдание есть: госбезопасность, спецслужбы, ограниченный круг лиц.

Поддержу: мультимастер на РСУБД, только если синхронный. Иначе возможна потеря целостности и транзакционности. Ту же транзакционность обеспечивает какой либо GlobalTransactionManager.
А асинхронный мультимастер на связанных данных — в общем случае просто невозможен (хотя в принципе можно придумать асинхронную мультимастерность путем связного партиционирования связанных данны, но это очень частный случай). И как после брейнсплита востанавливаться после транзакций?
Насчет highload не соглашусь. Highload для всех разный. У кого-то это база несколько десятков гиг и 100500 запросов клиентов в секунду. Или пару тысяч клиентов, но каждый должен быть отработан за миллисекунду.

Бывает Хайлоад и когда клиентов мало и база не шибко большая, вот только запросы с листингом на пару страниц текста с парой тройкой JOIN между таблицами фактов.

А бывает Highload когда клиентов пару десятков, но сама база террабайты. Где нельзя просто накатить хотфикс, потому что в случае чего даже восстановление недельного снапшота займет день-другой. Тут уже не прокатит «накатить фикс минорный» или «быстро запдейтить базейку, так как вместе с очень ожидаемым вами бакфиксом мы еще пару совсем не опасных фич прикрутили».

Так что «сферический» это только если с дефолтовыми настройками. У нас слон работает на очень тяжелом Highload c «мультимастером на пару десятков терр.

Лично мое мнение такое — что выбирать разница не большая. Если все, кроме нагрузки вас в вашем PostgreSQL или MySQL устраивает. Если все советы из серии „20 способов увеличить производительность PostgreSQL / MySQL“ вы выполнили, то не имеет смысл смотреть в сторону оппонента, скорее используемая вашим приложением схема работы с реляционной БД неправильная или вообще вам не подходит реляционная модель, и стоит обратить внимание на модные NoSQL.
Странно написано. Ничуть не выгораживаю PG. Скажем так: в определенной специфике его использования я знаю как оно работает в итоге лучше разработчиков ;), а с MySQL знаком довольно таки поверхностно. Но уж прямо какой то откровенный наезд на MySQL.
По мне так ничем они друг от друга не отличаются. Ни каких вот прямо технологических прорывов ни у того ни у другого нет. Да где то одно реализовано лучше «master-slave репликация» или например in-memory движок хранения. Где то хуже, например SELECT count(*) FROM large_table.

По мне так основное отличае в том что MySQL более «прогрессивные» ребята: вм нужен Update OR Insert? Щас мы забацаем вам UPSERT и пофиг что нет такого пока в SQL стандартах. Правда при смене релизов такая «проактивность» иногда выходит боком.

Ребята из PG более консервативны, следуют стандартам языка, то что MySQL «наговнокодят» за месяц и выкатят новую фичу, тут будут писать пару тройку лет с кучей ревью и переписок в почте, это даже тупо по количеству версий видно.

Хорошо это или плохо зависит от вашего проекта. Если у вас небольшой сайтик то наверное плохо, нужную вам фичу вы будете ждать годами, прикручивать велосипеды. Таже самая хваленая репликация выросла из откровенного костыля, ну и на мой взгляд, до сих пор выглядит как нечто инородное.
А если у вас БД на пару десятков терр, хитровывернутые клиенты, оптимизированные до уровня эксплуатации особенностей реализации, и сама процедура обновления даже хотфиксного билда превращается в эпопею сроком на несколько месяцев, то консервативность именно, то что вам нужно.
ОК ей, наш проект большой:

6 миллионов строк. Возраст кода до 8 лет. Авторов 3/4 кода давно в проекте нет. Документация вида «код — лучшая документация». В проекте огромное число вот таких вот ошибок зачастую в OutOfCoverage. Куча макросов из соображений «надоело писать одинаковый код». Некоторые файлы тысяч на 80 строк. В принципе не существует людей которые бы знали весь код. Никто не сможет гарантировать как одно повлияет на другое. Ну и прочие прелести проприетарного промышленного кода с огромным багажом.

Но при этом качество работы продукта заказчика устраивает. Более того 24/7.

Поробовал PVS — упал. Убрав особо-изощренные файлы PVS отработал. Среди найденного количества ошибок (оно в демке вроде ограниченно было сотней) самое страшное что нашлось — присвоение в if в том месте которое не используется вообще. Остальное разный мусор из серии депрекатов.
Вывод: да что-то откровенное оно нашло, но только не в полезном коде. Тратить время разработчиков на разбор ложноположительного — глупо, а его там откровенно много. Риск исправлением внести новый дефект — очень высокий. Зачастую «это жжж тут не спроста».

Качество продукта устраивает, при этом существуют известные дефекты, которые имеют конкретный сценарий.

Предположим я куплю продукт и он найдет мне 1000 косяков, мы потратим X человекочасов разработчиков на исправление. Потом X*K человекочасов тестеров на полную перепроверку ВСЕГО функционала ибо эти косяки будут размазаны ровным слоем по всему коду. Итого: потраченные деньги, потраченное время, сомнительная выгода по качеству продукта.

Вопрос зачем мне платить деньги за это?
Проблема статьи? Наверное в том, что это пиар коммерческого софта на популярном OpenSource проекте, и даже не на одном, а на многих, причем этим даже хвастаются.

Лично я предпочитаю не находить ошибки, я предпочитаю их исправлять. Я больше ценю багрепорт юзера нашедшего ОДИН сценарий при котором чтото упадет. Чем такой вот отчет о том что мы нашли кучу косяков в коде из-за которого «МОЖЕТ» упасть, а может и не упасть, ибо код просто недостижим или вообще заброшен и лежит тут для истории.

Вот если бы автор и компания вместо «Обновляемый список open-source проектов, которые мы проверили с помощью PVS-Studio» вела «Обновляемый список КОММИТОВ и PULL-REQUEST в open-source проекты, которые мы НАШЛИ с помощью PVS-Studio и ИСПРАВИЛИ» или «Обновляемый список open-source проектов в которых наша компания из супер-пупер продвинутых с++ разработчиков выполняет премодерацию патчей» тогда да, вот тогда это громко.

А так — ну да какието проблемы в коде нашли, но «их много — разбираться не будем». Спасибо конечно, но нам то толку мало. Все равно что ходить по улице и орать «вот смотрите тут окурок валяется, и вообще грязно» и звать уборщицу. Окружающим от этого проку то немного будет и чище врядли станет.
Не понял сарказма. Для меня разницы нет между PVS (за который надо платить деньги) и warning Visual Studio (за который деньги уже плачены) или warning gcc или clang (за которые платить не надо).

Да это инструмент, который может решить какую то задачу. Беда в том, что инструмент ничего не гарантирует, в том что -W4 решит ее лишь немногим хуже. Зато инструмент гарантированно добавляет работы: надо же разобраться корректно ли его предупреждение в данном конкретном случае, не повлечет ли исправление изменений в логике работы ибо даже здесь в комментах были проблемы двойных ошибок. Технически анализвтор вторую мог не найти и код после исправления ошибки начал бы падать в другом месте, а так как ошибка довольно специфическая падал бы он еще «иногда» редко и при невыясненных сценариях.

Лучше стоимость этого продукта и свои силы на его внедрение вложить в совершенствование процесса разработки (проектирование, ревью кода, юнит тестирование, ТДД, ), дополнительное обучение сотрудников (теже паттерны, стандартные библиотеки, ООП), найм более опытных сотрудников, лишний сервер под юнит тестирование.

А присвоение в if мне и grep найдет.
За «персонажа» личное спасибо :)
И про подход к разработке у «персонажа» несколько отличается для свободного OpenSource, для коммерческого OpenSource, и для проприетарного кода.
И кстати «персонаж» уже 4 года никакого отношения (ну кроме моральной поддержки) ни к проекту Miranda IM, ни к проекту Miranda NG не имеет.
Кстати автор уже дважды пиариться на одном коде. В 2011 году же была серия статей по анализу кода миранды. Я даже ради комментов к этим статьям зарегистрировался тут.

Andrey2008, вы действительно расчитывали, что в OpenSource проекте с более чем 14 летним кодом, с максимум десятком активных разработчиков к настоящему моменту, с отсутствием «правильных» подходов к процессу разработки ваш анализатор найдет что то новое?

Кстати новая статья намного хуже. Первый цикл все таки выглядел как «давайте я научу вас как не стоит писать код», «избегайте популярных косяков». Та статья действительно учила и лишь немного выглядела рекламой (такая скрытая и ненавязчивая «Выставляйте высокий уровень предупреждений у компилятора и используйте статические анализаторы» в шестом и последнем разделе статьи).

Новая же «глядите как наш анализатор умеет клево находить очевидные косяки» часть из которых явно наследие копипасты, а уж вещи типа new[] / delete / free c головой выдают начинающих программеров, увы я не поверю что кто то может как вы сказали «забыть» квадратные скобки у delete или случайно использовать free. Вы бы хоть объяснили почему так не надо делать.

P.S. Кстати удивлен отсутствием пиара фичи «мы можем находить оператор присвоения в условиях под if»

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity