• Что вас на самом деле ждёт на курсе про алгоритмы в Яндекс.Практикуме
    +2
    Тестирование или/и доказательство корректности алгоритма является неотъемлемой частью решения алгоритмической задачи.
    Всё-таки, в алгоритмических задачах тестирование «на минималках»: тут нет ни внешних сервисов, ни некорректных данных, ни многих других проблема реальной разработки.
  • Что вас на самом деле ждёт на курсе про алгоритмы в Яндекс.Практикуме
    +2
    Есть немало причин и за ручной ввод/вывод, и за ввод/вывод посредством передачи данных в функцию. В любом случае, это точно не главная сложность в решении большей части задач (кроме задач, где именно ввод-вывод является лимитирующим фактором; да, такое тоже бывает).

    В реальной жизни нужно ещё заметить, что баг произошёл. И, если он произошёл давно, то с вероятностью, воспроизвести его уже никак не получится.
    Представьте себе, что вы разрабатываете базу данных и сажаете баг, который проявляется в очень редких случаях, но при этом портит данные.
  • Что вас на самом деле ждёт на курсе про алгоритмы в Яндекс.Практикуме
    +2
    >Так вот, не обязательно сразу раскрывать непосредственно данные, а в индивидуальном порядке намекнуть, мол у вас нет проверки на отрицательные числа. И только через некоторое время, если уж совсем никак, открыть входные данные.

    Так и происходит. Наставник смотрит на тест, на код и пытается навести на мысль о том, что могло пойти не так. Иногда может задать наводящий вопрос. Иногда может прокомментировать ошибку в коде программы, когда проблема не связана с основным алгоритмам, а касается каких-то частностей. В редких случаях может выдать тест. Ещё бывает, что наставник придумывает сходный тестовый пример и обсуждает со студентом, как программа будет работать на нём. Всё зависит от конкретной задачи и конкретной ошибки.
  • Что вас ждет на курсе Алгоритмов в Яндекс.Практикуме
    +1
    Это зависит от того, какой стиль учёбы вам подходит. Кому-то лучше заходит самообразование. Другим требуется групповая работа, дедлайны и возможность задать вопрос преподавателю (Яндекс.Практикум как раз из этой категории). Некоторых держит себя в тонусе учёба в процессе работы над реальным проектом.
  • Что вас ждет на курсе Алгоритмов в Яндекс.Практикуме
    +1
    Оценка памяти тоже может описываться в терминах О-нотации.
    В разных языках отличается и потребление памяти, и скорость вычислений, и скорость IO. И время исполнения тоже плавает от запуска к запуску.
    Но лимиты, же для разных языков тоже возможно выставить различные.
  • Что вас ждет на курсе Алгоритмов в Яндекс.Практикуме
    +3
    Оба подхода имеют право на жизнь.
    Безусловно, проще писать код в предположении, что данные уже лежат в переменных.
    Но в некоторых задачах нетривиально придумать, как правильно считать данные. Например, понять, что данные вообще не нужно сохранять в памяти, а нужно обрабатывать на лету. Или понять, нужно ли вам хранить данные графа в виде матрицы или списков смежности.
    Впрочем, признаю, что это не самый частый кейс.
  • Трансформеры в Поиске: как Яндекс применил тяжёлые нейросети для поиска по смыслу
    0
    Спасибо за статью!
    У меня вопрос по первой части. Вы пишете, что из документов делаете стримы. А нет ли у вас среди генерируемых стримов текстов вопросов, которые мог бы задать пользователь к этой статье? Кажется, задача генерации вопросов к тексту должна очень хорошо решаться сетями — и тогда вы получаете супер-релевантный мэтч.
  • Как НЕ надо начинать изучать программирование
    +2
    1) Изучать математику для программиста очень полезно, но это не обязательная программа. Знание вышмата увеличит ваш горизонт в несколько раз. Но всё равно существует много работ, где это не требуется.
    2) Java — плохой язык в качестве первого. Возьмите что-то более простое. Питон, паскаль (PascalABC вполне норм) или хотя бы javascript (хотя там свои сложности). Когда освоитесь с базовыми вещами и получите опыт с какими-нибудь пет-прожектом, возвращайтесь к джаве.
    3) Не пытайтесь сразу постичь все сто слоёв абстракции. Выбрали один уровень — посмотрите два слоя вглубь и один вверх. Этого на первом этапе достаточно.
    Вот изучаете вы массивы. Вам точно нужно изучить, как с ними работать. Если копнуть, тут же всплывут вопросы: как их хранит в памяти ваш компилятор/интерпретатор; сколько времени выполняются разные операции и почему; есть ли отличие в массивах между разными языками, и почему. Если копнуть ещё чуть глубже, вам придется изучать выделение памяти и системные вызовы, устройство оперативной памяти и кэшей процессора, привлекать понятие амортизированной сложности алгоритма итд; а ещё глубже — и вот вы уже углубились в электронику, а затем и в физику. Это как чтение википедии — заныриваешь в одном месте, всплываешь в двадцати ссылках от исходной статьи. Остановитесь на одном-двух «хопах» и обучение пойдет быстрее.
  • Как НЕ надо начинать изучать программирование
    +1
    Вы не учитываете одну важную вещь. Большинство людей, которые начинают изучать программирование (это обычно 5/7/9 класс обычной средней школы) не планируют становится программистами. И совершенно не готовы погрузиться в изучение нюансов. Поэтому главный признак, которым должен обладать первый язык — он должен давать возможность быстро сделать что-то содержательное, чтобы хоть пробудить интерес. Я по этой причине топлю за питон: простой и позволяет в 5 строк сделать очень многое: хоть график построить, хоть сервачок написать. И наличие REPL-а позволяет очень быстро проверять гипотезы, когда не знаешь, как правильно.
    Да, явная типизация может помочь в обучении, но жить без неё вполне можно (тем более, что в современном питоне есть опциональные аннотации типов). А вот без быстрого старта язык непригоден для большинства.
  • Как НЕ надо начинать изучать программирование
    +1
    Сейчас в школе или паскаль, или питон обычно.
    Учить java первым языком — глупая затея. С одной стороны это слишком низкоуровнево, с другой стороны много концепций приходится объяснять сразу. У меня был буквально один урок, когда школьница попросила её обучить джаве. И на том моменте, когда для чтения числа с клавиатуры нужно сделать обёртку из буфферизованного потока, а потом из ридера, я понял, что затея провальная.
    И это мы ещё опускаем заклинания public static void main (но они не только в джаве, конечно). Даже на плюсах проще стартовать, имхо.
  • Главная причина, почему не Linux
    0
    Вспоминаю, сколько суток моего времени убито на танцы с бубном вокруг винды — и плачу.

    Все-то программы там ставятся сходу. Антивирус на винде говорит исключительно успокаивающие вещи, пока я пытаюсь решить свою цель «пообщаться с другом».
    А у дикарей с других операционных систем небось и браузера-то нет (а браузер, наверное, 90% потребностей в компе закрывает). А когда мне нужно отправить файл, контекстное меню на двадцать пунктов «отправить селфи» и «может все-таки отправить селфи (аутлук спешит на помощь)» меня отговорит от этих глупостей. Тем более, что мои файлы и так уже в майкрософтовском облаке; ой, там не хватило места, но давайте мы посмотрим ещё раз, вдруг место освободится (нам понадобится для этого всего три ядра вашего ноутбука из четырех).

    Нет, я не фанат линукса; с ним у меня тоже было много проблем. Но все проблемы, которые вы описываете, абсолютно универсальны. Единственное место, где линукс проигрывает винде в простоте и удобстве — это офисные программы.

    // Есть ещё, конечно, мак. Но я так и не осилил тамошний графический интерфейс и раскладку клавиатуры, так что мне про него особо нечего сказать, кроме того, что интуитивность его переоценена.
  • Хорошо, что создатель вашего любимого инструмента не слушал ослов, когда изобретал велосипед
    0
    Мы платим вам за то, чтобы вы косили траву. Времени на заточку косы в вашем трудовом договоре не предусмотрено.
    Бизнесу с таким подходом — удачи, она ему понадобится.
  • Вычисление центра масс за O(1) с помощью интегральных изображений
    0
    Но на каждой итерации объекты меняют положения и скорости, а значит и интеральное изображение меняется. Как вы его обновляете, чтобы не тратить O(M*N) на каждом шаге по времени?
  • Сети для начинающего IT-специалиста. Обязательная база
    0
    Если бы голосовую связь делали через TCP, даже очень быстрый, случалась бы такая ситуация: соединение прервалось по какой-то причине, десять секунд разговора пришли к вам с опозданием. И что вам с ними теперь делать, слушать на удвоенной скорости, пока разговор идет дальше и люди ждут вашего ответа?
  • Рейтинг в Яндекс.Такси: короткий пост на серьёзную тему
    0
    Дополню это несколько утверждением, вступающим отчасти в противоречие с вашим.
    Система голосования не выявляет реальных предпочтений голосующего (насколько я понимаю, в теории игр такого типа вопросы рассматриваются). Например, если вы считаете, что человек заслуживает тройки, вам следует ставить ему кол, ведь вы понимаете, что ваша оценка усреднится с оценками тысяч других людей, которые голосуют не столь экстремально.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    0

    Оу, фигню написал. :( Четность всё-таки не важна, конечно.

  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    0
    Я верю, что если вам это хоть немного нужно, вы справитесь самостоятельно. Мой лимит LMGTFY-коинов на сегодня исчерпан.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +1
    Да чего мне волноваться. Я-то не просто «знаю о», но и практикую иногда.

    Здорово, что вы умеете читать цифры. Жаль, что не смогли прочесть в комментарии ни одного слова и кликнуть ни на одну ссылку.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +2
    Ну так залезьте в поисковик сами и поищите больше статей, если эта вас не устраивает. Статей подобной тематики явно десятки, если не сотни. Вы же предпочитаете терроризировать всех своим шарлатаном Савельевым, который, видимо, даже не упомянул, что исследования такие проводились (даже если ему чем-то не нравится методика).
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +1
    Вы просите невозможного, мышь 10 лет не живет. Но вот вам 73 тысячи исследований того, как мобильное излучение влияет на мышей. Я, правда, начинаю сомневаться в том, что есть хоть какой-то смысл давать вам ссылки, если «1.3М результатов в поиске Гугл говорит ни о чём» (причем не просто в гугле, а в google scholar).

    И да, там есть и результаты, которые говорят, никаких изменений не видим (в частности, онкологических). Специально для CYBERPRESENT, да там была и гистопатологическая экспертиза.
    Есть и результаты, которые говорят, что обнаружили какое-то влияние на экспрессию генов в мозге и на память, и на поведение мышей от долговременного воздействия (в частности, влияние в процессе беременности).
    Что гораздо интереснее и страньше, кажется, таки есть какое-то влияние излучения на некоторых частотах на частоту всплесков ионов кальция; правда, не зависящее от интенсивности сигнала. Впрочем, они говорят, что в своих результатах сами сомневаются, т.к. механизма действия такой штуки никто придумать так и не смог и прямым текстом пишут, мол, мы старались избежать утечки низкочастотных токов, но хз, получилось ли все bias'ы устранить. Через пять лет был обзор в котором говорят, что «кажется, какой-то эффект на кальциевые каналы есть, но всё ещё хз из-за чего».
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    0
    Да, вы правы. Впрочем, это не сильно повлияет на результат. Любая медленно меняющаяся нечетная (сорри, в прошлом комменте упустил этот важный момент) функция типа ускорения всё равно усреднится в ноль, потому что модуляция меняет амплитуду опять же медленно. Вы можете взять вольфрам-альфу и убедиться в том, что и функция типа x*sin(2e9 x), и функция типа x*sin(200x)*sin(2e9 x) интегрируются в очень небольшую величину, ограниченную по модулю примерно как x*2e-9. Мы в любом случа гасим эффект в два миллиарда раз.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +2
    Суммарная сила Ампера едва ли имеет хоть какое-то отношение к процессу. Она мала даже при сильных токах. Кроме того, чтобы нейрон начал воздействовать на межклеточное пространство, вам достаточно пошевелиться, и вы увидите гораздо более сильное механическое взаимодействие.

    Мне кажется, вы исходите из неверного представления, что влияние микроволнового излучения на живую материю никто не изучал. Это, разумеется, не так. То что конкретный учебник эту информацию не указывает не говорит ни о чём. Достаточно сказать, что устройства с антенной при сертификации обязательно тестируют на предмет количества энергии, которое поглощается живой материей. Google scholar по запросу «microwave radiation cell» показывает порядка 1.3M результатов.

    Я прекрасно понимаю, что в биологии «всё сложно», намного сложнее, чем в физике; в конце концов, окончил я физический вуз, но последние 9 лет я занимаюсь анализом биологических данных и have seen some shit. Мой опыт подсказывает, что в биологии может происходить всё, что угодно, для чего удается придумать хоть какую-то механистическую модель процесса, но здесь её не видно.

    Взаимодействие ЭМ-излучения с веществом — это по биологическим меркам сравнительно простой процесс. Я бы разложил его влияние на несколько компонент. (а) Непосредственное механическое перемещение — я показал, почему это несостоятельная теория. И да, я считаю, что порядок верхней границы силы эффекта я оценил достаточно разумно. (б) Поглощение энергии веществом — это исследовали вдоль и поперек и показали безопасность десятки тысяч раз при сертификации техники. (в) Влияние на химический состав — ну там образование каких-нибудь свободных радикалов. Но это по сути означало бы, что есть поглощение энергии, а оно слабое. Кроме того, такой процесс влиял бы не только на нейроны + он едва ли дал бы быструю реакцию, настолько чтобы почувствовать смску в момент её прихода.

    Обнаружив некоторый экспериментальный артефакт, исследователи обычно не бросаются проверять необоснованные гипотезы — десяток таких гипотез кто угодно может нагенерить, это ж не мешки ворочать; на нормальные-то эксперименты и то времени не хватает. Обычно всё-таки пытаются для начала выбрать ту гипотезу, которая имеет хоть какие-то основания и шансы объяснить эффект.
    Более того, сначала исследователи пытаются объяснить эффект в рамках устоявшихся теорий; даже если эффект есть, это в любом случае придется делать, чтобы очистить эффект от конфаундеров.
    Хотя нет, я всё вру. Первое, что подозревает человек, анализирующий странные данные — что они получены криворуким экспериментатором, не выдержавшим протокол (и чаще всего таки оказывается прав).

    Что тут нужно было бы проверить как возможные объяснения, прежде чем бросаться исследовать (список на минималках). Например, как тут уже замечали, телефон в момент прихода смски может издавать малозаметный звук, а проводка так и вовсе шумит на 50Гц. Паралич для человека с признаками чего-то типа рассеянного склероза — тоже так себе новость, возможно, что это проявление давно известной болезни. Эффект психосоматики может быть весьма мощным; это я знаю по себе, у меня как-то раз случалось отключение мышц — и не от мобильника, а от обычного стресса. А раз так, то пока не проведено двойное слепое рандомизированное исследование, мы не можем даже сказать, есть ли эффект на самом деле, или это просто слишком буйная фантазия (предполагаемого) больного. А люди тут уже берутся строить теории для объяснения этого «эффекта».
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +1
    На первый вопрос очень просто ответить. На частицу действует периодически меняющееся поле. Любая медленно меняющаяся функция, которую вы проинтегрируете с быстрым синусом (по которому изменяется поле), даст не очень большое значение, потому что к моменту как синус прошел полпериода, медленно меняющаяся функция измениться не успела (ибо полпериода на высоких частотах проходят очень быстро).

    За второй вопрос спасибо, дали повод хоть немного повспоминать физику, которую я не трогал со времен института. Поехали…
    Вы верно заметили, что у нас медленные заряды. Поэтому нас вообще не волнует зависящая от скорости частицы сила Ампера. А вот сила, создаваемая электрическим полем, нам всё ещё важна, и от скорости зарядов она никак не зависит. Ускорение, действующее на частицу: qE/m. Масса ионов натрия/калия отличается от массы электрона в десятки тысяч раз, так что и ускорение отличается в десятки тысяч раз.
    Если посчитать пробег свободного электрона за 0.5*10^-9 секунды (2Ghz) при (постоянном) напряжении ~2кВ/м (тут я полагаюсь на electronics.stackexchange.com/a/357612), то получим, что его может носить туда-сюда на ~0.05мм.
    /* В микроволновке, впрочем, не от этого металл искрит. См. ссылку на которую ссылается тот ответ на стэкэксчендж. */
    Для переменного тока должно быть, кажется, в два раза меньше (извините, сейчас нет времени на аккуратные выкладки). Но давайте, например, учетверим эту оценку за счёт того, что в конце периода заряд продолжает двигаться по инерции лишний период (опять же, грубая оценка, реально меньше)

    Значит, ион натрия массой в 40 тысяч масс электрона может носить в микроволновке туда-сюда на ~2нм.
    Толщина клеточной мембраны, кстати, 7-8нм.
    А теперь давайте учтём, что излучатель мобильника — это не киловат в замкнутом пространстве, а не более чем единицы ватт, рассеиваемых во всех направлениях. Ну собственно мы не первые, кто заинтересовался величиной электрического поля от телефона. Согласно странице на портале института производственной медицины Рейнско-Вестфальского технического университета Ахена, средние значения поля от GSM/WiFi итп — порядка 0.1В/м, т.е. в десять тысяч раз меньше, чем в микроволновке. Эти цифры для GSM и для WiFi примерно совпадают.
    Я достаточно подробно объяснил, почему я не верю, что ЭМ-излучение телефона не может повлиять на то, как нерв проводит ток?
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +4
    Знаете, я действительно какие-то научные исследования провожу, и именно поэтому различаю, когда человек высказывает научную идею, а когда — «идею» из анекдота про то, как ребе кур лечил (ваш предыдущий комментарий ровно такой). Беспочвенная ажиотация с внезапными «научными прозрениями» как у автора статьи, меня не пронимает, сорри.
    Исследования сделанные на десяти людях — тоже, извините. Мне по долгу службы — я занимаюсь биоинформатикой в НИИ — приходится знать, как статистикой пользоваться можно, и как нельзя; в частности, в биологии.

    Автор представил не интересную информацию, а фантастический рассказ, основанный на разыгравшемся воображении, и щедро приправленный эмоциональной окраской. Я такое много раз видел в разговорах как раз с людьми типа новообращенных «плоскоземельщиков».
    Про качество информации красноречиво говорит тот факт, что пока комментаторы не намекнули, автор не обнаружил информацию о том, что разрушение миелиновой оболочки зовется рассеянным склерозом (и это не такое уж редкое заболевание). // Но к его чести, он пошел про это читать и даже дополнил статью.

    Я вообще без понятия, с чего вы тут бьёте копытом. После трех моих коротеньких вопросов, нацеленных на прояснение тех предположений, на которые автор опирается при описании своей модели, (отправленных, кстати, автору статьи, а не вам) и одной короткой реплики вам, вы стали меня обвинять в том, что я у вас требую каких-то доказательств — и безо всякого моего участия стали сыпать странными идеями. Валерьяночки?
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    0
    >Если в той или иной клетке наводиться ток это не может не повлиять на ее работу.
    А ещё на неё не может не повлиять фаза луны и чётность суммы цифр в паспорте. Без механизма, это из разряда досужих домыслов.

    Я полагаю, что на такой частоте влияние ЭМ-излучения на механический перенос тяжелого заряда усреднится в ноль.
    Вы тут демонстрируете свои познания в физике, так оспорьте меня или приведите другой механизм, на который почему-то должна влиять поглощающая способность или проводимость вещества.
    И не забывайте, что мы обсуждаем маломощное воздействие; это и близко не мощность микроволновки, которая греет ткани на десятки градусов — да и то за счет попадания в спектр поглощения конкретной воды.

    > Например хотя бы так: www.science-education.ru/ru/article/view?id=20513
    Открыл статью, прочитал «в группу обследования были включены 10 человек», закрыл статью. Дал вторую попытку и открыл снова, попытался найти слова «поправка на множественное тестирование», в очередной раз разочаровался в русскоязычной науке, закрыл статью. Вы когда выбираете себе союзников, делайте минимальный «due diligence», чтобы не оказаться в одной лодке с фриками.

    Эти две реплики точно написаны одним человеком?
    > И глупо и некрасиво просить у оппонентов не занимающихся исследованиями в данном направлении, ответов на столь глубокие вопросы…
    > Вот пожалуйста изучайте пишите научные статьи.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +2
    Я тоже не биолог, но… Наш организм в значительной степени состоит из воды с электролитами. Какая-нибудь кровь едва ли проводит ток сильно хуже нервов.
    Нервные клетки характерны не тем, что они проводят ток, а тем, что они могут направленно передавать сигнал.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +1
    «Причем, наши нервы это больше проводник»
    Равно как и любая другая часть нашего тела.
  • История человека, чувствительного к электромагнитному излучению, или как мы щупаем край обрыва… UPD: +FAQ
    +2
    — Объясните, каким образом сверх-высокочастотный ток может как-либо повлиять на передачу сигнала по нерву? Как свербыстрые изменения поля должны повлиять на движение довольно-таки медленных ионов?
    — С чего вы взяли, что миелиновая оболочка непроницаема для ЭМ-излучения на такой частоте?
    — Каков по вашему мнению механизм работы миелина? За счет чего он улучшает проводимость нерва?
  • Что на самом деле значит наезд Rambler Group на Nginx и к чему готовиться онлайн-индустрии
    +6
    В нормально работающей государственной системе никакой олигархат не имеет технической возможности задействовать siloviki без очень веских причин. То, что государственную репрессивную машину можно использовать в личных целях — это огромная проблема именно государства. В произошедшем, пожалуй, даже больше вины государства, чем Рамблера (что не делает последних меньшими негодяями).
  • Variational Inference — что это такое и с чем это едят?
    0
    Могли бы вы пояснить вот этот переход?
    «Но во-первых заметим что выражение под логарифмом не зависит от z, значит можно взять математическое ожидание от логарифма по z от любого распределения и это не изменит значения функции и под знаком логарифма умножить и поделить на это же распределение».
    И само q(z), и произведение q(z)*q(x|z), оба зависят от z, поэтому как вы их поставили под интеграл по dz — неясно.

    Еще небольшая просьба по оформлению. Там в получившемся интеграле не хватает dz и, что хуже, без скобок вокруг подынтегрального выражения складывается ощущение, что это не двойной интеграл, а произведение одинарных.
  • Просто деление, или как создать математическую теорию и заработать на этом 400К$
    0
    Я не знаю, о каких книгах вы пишете; большая часть математической литературы, что я читал, написана без ляпов на пустом месте. Да ещё и гораздо более простым языком.
    Если вы считаете, что алгебраическое число — это число, составленное из корней, да ещё и максимально топорным образом, возможно вам не стоит рассказывать людям о математике?
  • Просто деление, или как создать математическую теорию и заработать на этом 400К$
    0
    До абсолютной строгости тут очень далеко.
    1) "… а иррациональные (с бесконечной длиной периода) получаются при вычислении корня некоторой степени из целого числа"
    Вот тут вы ввели читателя в заблуждение; а человека, который хоть немного помнит школьную математику — поставили в ступор, а вовсе не сделали текст доступным.
    2) «И было решено разделить иррациональные на два класса — алгебраические (то есть растущие от корней) и ...»
    Так… теперь от корней растут уже не все иррациональные, а их подмножество — алгебраические.
    3) $\sqrt(3-\sqrt(7))$ это число алгебраическое? Корнем какого целого числа оно является?
    Корни многочленов пятой степени являются алгебраическими числами? Что там с их представлением при помощи корней, и как это соотносится с теоремой Абеля о неразрешимости таких уравнений в радикалах?
  • Семь «абсолютных истин» джуниора, от которых пришлось отучиваться
    0

    Я не понимаю, с чего вы взяли, что нормально — это с вынесенной константой? В некритичном участке кода читабельность гораздо важнее скорости, поэтому нормально — это так, чтобы связанный логически код не расползался по отдаленным местам программы.
    В свете комментария (чуть нижев треде) о том, что это вообще toy-project на пару сотен строк, считаю этот спор вообще лишним, а исходный наброс — глупостью.

  • Семь «абсолютных истин» джуниора, от которых пришлось отучиваться
    0
    Premature optimization. В огромном числе программ пересоздание массива не является сколько-нибудь существенной проблемой. Это играет хоть какую-то роль только если приложение вызывает эту функцию сотни тысяч раз.
  • Введение в геномику для программистов
    0
    Тут всё-таки не было сказано, что это повреждения соматических клеток.
  • Введение в геномику для программистов
    +1
    (disclaimer: я никоим образом не специалист в эволюции, так что не претендую тут на научность высказываемых идей и предположений).
    Кажется, можно ставить два вопроса: либо считать изменчивость генотипов на множестве всех живущих людей — тогда архиватором сжать генотипы всего человечества, наверное можно, и наверное вы правы, что неважно.
    Либо можно пытаться оценить потенциальную изменчивость генотипов — тогда мы очерчиваем множество геномов по фенотипу: организм должен быть жизнеспособен и всё ещё оставаться человеком.

    Возможно, вот эта статья вас заинтересует. На первый взгляд кажется, что статей по теме не очень много, но они всё же есть.
  • Темная сторона хакатонов
    0
    Первый хакатон — это, видимо, Tele2 Hack?
    Действительно худший хакатон из десятка, в котором я участвовал: чатбота компания уже самостоятельно делала, а все вменяемые задумки требовали интеграции в общую систему службы поддержки. Посмотрев на датасет и пообщавшись с менторами, подумал ещё часок над вариантами — и ушёл. Победители, сумевшие выкрутиться, — молодцы, но соревноваться на этой поляне было совершенно неинтересно.
  • Введение в геномику для программистов
    +4
    Информационное содержание генома относительно референса посчитать полезно, но не думаю, что архиватор справится.

    Замены происходят на всех позициях генома. Они не вполне независимы по разным причинам. В первую очередь из-за того, что варианты из поколение в поколение передаются большими «батчами» — целыми хромосомами. Соответственно сцепление вариантов зависит от расстояния между ними (кроссинговеру сложнее разделить близко расположенные варианты, так что близко расположенные варианты образуют гаплотипы — наборы вариантов, которые передаются между поколениями более-менее целиком).
    Некоторые участки просто мутируют чаще, чем другие (например, участки активной транскрипции могут мутировать сильнее плотно замотанных участков) — это тоже даст вам зависимость вариантов на уровне расположения. Причем не по близости, а по функциональным характеристикам участков.
    Некоторые виды мутаций случаются чаще других, причем это зависит от типа воздействия (например, ультрафиолет и табачный дым дают различающиеся мутационные подписи; всего подписей — десятки).
    Ну и давление отбора, конечно, защищает определенные позиции от изменения (так синонимичные замены — т.е. изменения кодона, которые не меняют аминокислоту — случаются чаще несинонимичных).
    Иногда варианты зависимы в самом банальном смысле, без скрытых параметров; например, по отдельности варианты могут встречаться, а когда они вместе — это летально.
    При этом скорее всего все эти факторы немного отличаются в разных популяциях.

    Стоит ещё отметить, что генетические варианты — это не всегда замены; иногда это инсерции или делеции (индели); размножение участка, перенос из хромосомы на хромосому итд. Ну и индель длины не кратной 3 может натворить куда больше проблем, чем сотня точечных замен: удаление/добавление одной буквы ломает рамку считывания — и белок будет абсолютно неправильным. Для архиватора же выкинуть 1 букву или 3 имеет мало разницы.

    Добавлю, что VCF-ка, выдаваемая некоторыми популярными методами, не всю изменчивость в состоянии поймать. Это ведь часто не полногеномное секвенирование, а просто «чип», который определяет некоторые популярные варианты (разумеется не фазированно), предполагая, что остальные можно додумать по расположению.

    И говоря откровенно мы пока довольно плохо понимаем, какие детали организации генома важны, а какие не слишком. Например, насколько важно, на какой хромосоме расположен ген, или важно только, что он есть. А ведь от таких вопросов вычисленная изменчивость может зависеть очень сильно.
  • Введение в геномику для программистов
    0
    Вы ведь знаете, какой именно комикс я процитирую? ;)
    У нас есть как минимум два способа нумерации координат. Ген и имя гена — это отношение много-ко-многим. А про большинство файлов неясно, на какой вариант референсного генома опираются данные там описанные ;) И как минимум у первых двух проблем есть не только исторические причины. Так что всё плохо, но как это исправить — совершенно неясно. У нас проблемы не столько форматов, сколько онтологии: слишком много есть не вполне взаимозаменяемых типов объектов. Часто приходится пользоваться не тем, который идеально подходит, а тем, для которого есть данные — со всеми присущими логическими проблемами при «конвертации».
  • Введение в геномику для программистов
    0
    Оптимальность на уровне числа байт и даже скорости чтения далеко не во всех задачах нужна. А вот то, что вы можете работать с помощью cut, grep etc — весьма полезно. И вы невооруженным глазом видите данные, вам не нужно их открывать в специальной программе — это очень удобно.
    Там где всерьез нужна скорость, разумеется, есть более сложные форматы. Это, например, бинарные форматы типа bam для хранения выравниваний ридов. Или вот bgzf (blocked gzip) — сжатие с поддержкой индексирования.