Pull to refresh
-22
0
Send message

Cello — язык программирования живой клетки

Reading time4 min
Views31K
Приветствуем вас на страницах блога iCover! Технология программного кода «Cello», разработанная совместной группой ученых Массачусетского технологического института (MIT), Бостонского университета и Национального института стандартов и технологий позволяет прописывать в ДНК клеток бактерий требуемый набор свойств и создавать биологические схемы с нужными логическими параметрами, работающие прямо внутри живой клетки.

image
Подробнее

ДНК глазами программиста

Reading time15 min
Views93K
От переводчика: Так как я не являюсь биологом, возможны неточности в переводе терминов (и не только :). Оригинал находится здесь.

Если ты – молоток, то во всём увидишь гвоздь


Это всего лишь размышления программиста о ДНК. Я не являюсь молекулярным генетиком.

Исходный код


Находится здесь. Это не шутка. Исходники можно просмотреть с использованием замечательного набора скриптов Perl под названием "Ensembl". Геном человека занимает приблизительно 3 гигабайта, которые можно сократить до 750 мегабайт, если отбросить шелуху. Немного печалит, что это всего лишь 2.8 браузеров Mozilla Firefox.

ДНК похожа скорее не на исходники на языке C, а на байт-код для виртуальной машины под названием «ядро клетки». Крайне сомнительно, что существуют исходники, которые можно скомпилировать в этот байт-код: то, что мы видим, – это всё, что у нас есть.
Читать дальше →

Модульный ПК PocKit: универсальная система-конструктор для DIY-проектов и не только. Теперь с Raspberry Pi на борту

Reading time3 min
Views7.9K

Модульная техника всем хороша, при условии качественной сборки, конечно. Преимуществ много, основное: нет нужды менять свое устройство раз в 2-3 года. Не устраивает какой-то блок — апгрейдишь его и все. Аналогичным образом обстоит дело и с ремонтом: вышедший из строя элемент можно заменить быстро и без помощи сервисных центров.

К сожалению, разработка модульных устройств — дело не самое простое и, скорее всего, не самое выгодное. Об этом можно судить по большому количеству проектов модульных смартфонов и ноутбуков, которые были на слуху, а потом внезапно закрылись. Самый яркий пример — Project Ara от Google. Но идея создания модульного устройства жива. Более того, недавно появился проект «компьютера-Lego», который реализован в виде миниатюрного устройства Project PocKit. А еще оно работает на базе Raspberry Pi.

Архитектурные паттерны в iOS: страх и ненависть в диаграммах. MV(X)

Reading time15 min
Views30K

Каждый iOS разработчик в своей жизни уходил с собеседования в расстроенных чувствах и мыслью “это что еще за новая аббревиатура?” Архитектурами пугают и джунов, и миддлов, и синьоров (и наверное даже синьорит). Важно не просто знать что стоит за названием, но ещё и в каком случае какую использовать. Литературы по этому вопросу преступно мало, редкие обсуждения в интернете ограничиваются собственным опытом и какими-то поделками на гитхабе.

В этом цикле из трёх статей я кратко разберу все популярные архитектурные паттерны, использующиеся в iOS разработке: устройство, плюсы и минусы, а также когда и где их лучше применять. Собеседующим — хитрые вопросы, собеседуемым — клёвые ответы!

Первая часть посвящена MV(X) паттернам: самым известным и распространенным практикам в индустрии.

Читать далее

Поиск замены депозита в облигациях с учетом того, что с 1 января 2021 года все выплаты облагаются налогами

Level of difficultyMedium
Reading time4 min
Views39K

Полгода назад, летом 2020 года я написал скрипт поиска ликвидных облигаций на Мосбирже (статья в закладках у 194 человек, рейтинг +45). Скрипт нужен для поиска облигаций, которые можно купить прямо сейчас с доходностью гораздо выше банковского вклада.

Сейчас, в начале 2021 года модифицировал прошлогодний скрипт, потому что проценты по вкладам так и остаются на очень низких уровнях, а с началом 2021 года ещё и изменения в налоговом кодексе РФ подоспели. 

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

Облигации как замена вклада в 2021 году

Разбор медицинского случая, в котором пациент потерял 2 зуба: что дают технологии

Reading time10 min
Views27K
Во время занятий спортом пациент получил сильнейший удар в район верхней челюсти и потерял сознание. Я подозреваю сноуборд и дерево, но это только мои подозрения. Пациента эвакуировали в ближайшую клинику примерно стандартного уровня ОМС, где убрали осколки костей, зашили рану и вообще грамотно оказали помощь. Грамотно — это не трогая корни зубов, потому что пациент знал, что скоро вернётся в Москву и пойдёт в нашу клинику. Хирург на месте не обладал ни нужным оборудованием, ни материалами, но принял очень правильные профессиональные решения, за что ему спасибо.

Поскольку многих из вас пугают обычные снимки с увеличением, сверху поста 3D-модель — результат фотограмметрии, полученной внутриротовым сканером:

image

Ниже будут фотографии, так что аккуратнее.

С порога пациент сказал, что у него три важные деловые встречи завтра и послезавтра, и он хотел бы на них уверенно улыбаться.

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

Для начала обратим внимание на то, в каком состоянии пациент поступил.
Читать дальше →

Введение в моделирование динамики квадро-, гекса- и октокоптеров

Reading time14 min
Views15K

Что бы разбавить зубодробительную математику лекций Козлова Олега Степановича "Управление в технических системах", публикуем здесь пример применения знаний из этих лекций на практике.


В данной статье, Александр Щекатуров, ученик Олега Степановича описывает создание модели октокоптера, попутно раскрывая секреты и демонстрируя приемы работы в среде структурного моделирования физических систем.




В настоящей статье приведено описание логически завершённой, но всего лишь части полной работы по моделированию, но этой части достаточно для введения в тему динамического моделирования БПЛА коптерного типа.


Здесь опущено моделирование эффектов прецессии, принимается что и реактивный момент каждой ВМГ равен нулю, а именно: каждая ВМГ имеет два двигателя и винта, вращающихся с одинаковой скоростью в противоположные стороны. Не моделируются отказы оборудования и предполагается что объект находится только в воздухе (в штатном режиме полёта), режимы посадки и взлёта, аварийные ситуации, захват груза и разгрузка — в приведённой модели не реализованы, а также не рассматриваются вопросы подробного моделирования датчиков, фильтрации сигналов и шумов, изгиб рамы коптера и/или винтов, работа на запредельных нагрузках, написание драйверов к той или иной аппаратуре и т.д. и т.п., — всё это темы более расширенной статьи или даже книги.


Читать дальше →

Работа сознания: что такое пятна Габора?

Reading time9 min
Views94K
На одном из первых занятий на первом моём курсе по нейровизуализации произошёл сбивающий с толку диалог.

Профессор: в этом эксперименте люди смотрят на крестик в центре экрана, в то время как слева или справа от крестика им показывают пятно Габора…
Студент: извините, а что такое пятно Габора?
Профессор: А, ну это свёртка синусоиды с гауссовой кривой.

Он улыбался нам, не обращая внимания на то, что позади него на экране как раз было изображение пятна Габора. Он выжидающе поднял брови. Вся его поза говорила: «Ну что, теперь понятно?»

Студент: Эмм…
Профессор: Нет? Вот, давайте я вам покажу.

Всё ещё игнорируя экран с презентацией, он повернулся к доске. На ней он нарисовал синусоиду, а под ней — гауссову кривую.

«А теперь вы проводите над ними операцию свёртки!» [по мнению некоторых специалистов в комментариях, данная функция является произведением гауссианы и синусоиды, а не свёрткой / прим. перев.]

Студент сдался. Возможно, у него были некие представления по поводу математической операции свёртки, но не было нужной интуиции. Ему требовалось, чтобы кто-нибудь просто указал пальцем на нужное место на экране: вот, это пятно Габора.


Читать дальше →

Наука и рациональность на YouTube (авторские плейлисты)

Reading time2 min
Views15K

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

Делюсь тем, что из этого вышло.

Оценить подборку

7 полезных расширений VS Code для Python-разработчиков

Reading time4 min
Views96K
Наиболее важные и полезные расширения VS Code для Python-разработчиков в нашем новом переводе.

Я пользуюсь PyCharm, и меня всё устраивает. Скорее всего, я не буду менять редактор в ближайшее время. Но вокруг VS Code столько шумихи, столько людей в Reddit и Twitter советовали мне перейти на VS Code, что я просто не мог его не попробовать.
Читать дальше →

Почему линукс использует swap-файл

Reading time8 min
Views105K

Жажда тюнинга может завести в неведомые дебри. И, пожалуй, едва ли не самая частая неправильная оптимизация - отключение swap-файла. Если прикинуть частоту, с которой эта ошибка встречается, то, наверное, она входит в негласный top-10 (а может и top-5) самых распространенных, самых бесполезных и самых вредных оптимизаций - потому что swap-файл это одна из самых интересных, сложно понимаемых и недооцененных  сущностей в подсистеме управления виртуальной памятью.

Читать далее

Насколько маленьким может быть ядро linux?

Reading time5 min
Views39K
Некоторое время назад я научился конвертировать виртуальные машины в oracle cloud из ubuntu 20.04 в gentoo. Машины предоставляемые в рамках always free tier весьма маломощны. Это в частности приводит к тому, что перекомпиляция ядра превращается в достаточно длительный процесс. У исходного ядра ubuntu 20.04 в конфиге было 7904 параметра. После того, как я сделал:

make localmodconfig && make localyesconfig

число параметров уменьшилось до 1285. Мне стало интересно попробовать выбросить из ядра все лишнее и посмотреть, что получится.
Читать дальше →

Телеграм бот для поддержки своими руками

Reading time6 min
Views103K

Представьте, что у вас есть свой канал в телеге. Допустим, вы высказываете непопулярную политическую точку зрения и, соответственно, ловите хейт в личку со стороны читателей и проходящих мимо. Или вы продаете что-то через свой канал, но клиентов так много, что один продажник не справляется.

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

Я расскажу, как запустить такого бота бесплатно в 1 клик, и поделюсь кодом.

Читать далее

Нейронная Сеть CLIP от OpenAI: Классификатор, который не нужно обучать. Да здравствует Обучение без Обучения

Reading time18 min
Views56K

Можете представить себе классификатор изображений, решающий практически любую задачу, и который вообще не нужно обучать? Это новая нейросеть CLIP от OpenAI. Разбор CLIP из рубрики: Разбираем и Собираем Нейронные Сети на примере Звездных Войн!

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

Готов и туториал: Собираем нейросети. Классификатор животных из мультфильмов.
Без данных и за 5 минут. CLIP: Обучение без Обучения + код

Подробно и доступно разбираем что такое "обучение без обучения" и саму нейросеть CLIP от OpenAI. Стираем границы между Текстом и Изображением. Внимание: статья подходит под любой уровень: от нулевого до профи. Приятного прочтения!

Поехали!

Как я искал нормальный RDP-клиент и нашел целых три

Reading time5 min
Views247K


Remote Desktop Protocol — один из самых распространенных протоколов для удаленного управления, потому что он используется для работы с операционными системами Windows, которые часто незаменимы в корпоративной среде. Естественно, самый распространенный способ подключения к удаленной системе — использование средств встроенных в саму систему, но он не единственный и, более того, совершенно неприменимый, если используется другая ОС или сильно устаревшая Windows.

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

Как я изучал структуры данных и алгоритмы для собеседования в FAANG

Reading time12 min
Views67K
Продолжая тему устройства в FAANG, которую уже мы поднимали в нашем блоге, и специально к старту нового потока нашего курса по алгоритмам сегодня делюсь описанием пути Эско Обонга, старшего инженера-программиста Uber.

Эта история началась в 2015 году, когда стартап, к которому я присоединился как «сотрудник-основатель», закрылся через шесть месяцев после первого раунда инвестиций, и я искал новую работу. Первое моё собеседование было с  Codecademy, где на этапе телефонного разговора меня заверили: «Не волнуйтесь, мы не задаём сумасшедших вопросов об алгоритмах или что-то в этом роде». И я им поверил…


Приятного чтения!

3D ML. Часть 4: дифференциальный рендеринг

Reading time15 min
Views8.4K


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


Мы поговорим о том, почему традиционный пайплайн рендеринга не дифференцируем, зачем исследователям в области 3D ML потребовалось сделать его дифференцируемым и как это связано с нейронным рендерингом. Какие существуют подходы к конструированию таких систем, и рассмотрим конкретный пример — SoftRasterizer и его реализацию в PyTorch 3D. В конце, с помощью этой технологии, восстановим все пространственные характеристики “Моны Лизы” Леонардо Да Винчи так, если бы картина была не написана рукой мастера, а отрендерена с помощью компьютерной графики.

Читать дальше →

Фантастические книги, которые вы могли пропустить в 2020 году

Reading time7 min
Views66K

Что делать, когда хочется писать о книгах, но рубеж года уже пройден, а 2021 пока не радует новинками? Можно еще раз вспомнить достойные фантастические романы, которые вышли на русском в 2020, и заслуживают внимания, хотя их авторы, по крайней мере пока, не могут похвастаться большой популярностью в России. Поэтому хочу рассказать о нескольких фантастических книгах прошлого года, которые произвели на меня хорошее впечатление. 

Буду рад, если в комментариях поделитесь своими фантастическими находками.

Читать далее

Изучение data science c нуля: этапы и вехи

Reading time9 min
Views80K

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

Читать далее

ARM и программирование без блокировок

Reading time7 min
Views19K


Выпуск ARM-процессора Apple M1 вдохновил меня на то, чтобы написать в Твиттер про опасности программирования без блокировок (lock-free). Этот твит вызвал бурную дискуссию. Обсуждение прошло довольно неплохо, учитывая то, что попытки втиснуть в рамки Твиттера обсуждениие такой сложной темы, как модели памяти центрального процессора, — в принципе бессмысленны. Но у меня осталось желание немного раскрыть тему.

Этот пост задуман не только как обычная вводная статья про опасности программирования без блокировок (о которых я в последний раз писал около 15 лет назад), но и как объяснение, почему слабая модель памяти ARM ломает некоторый код, и почему этот код, вероятно, не работал изначально. Я также хочу объяснить, почему стандарт C++11 значительно улучшил ситуацию в программировании без блокировок (несмотря на возражения против противоположной точки зрения).
Читать дальше →

Information

Rating
Does not participate
Registered
Activity