Pull to refresh
81
0

Пользователь

Send message

Основы управления памятью в JavaScript: как это работает и какие проблемы могут возникнуть

Reading time8 min
Views36K


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

Но рано или поздно разработчикам все же приходится разбираться с проблемами, связанными с памятью — например, утечками. Ну а разобраться с ними получится лишь тогда, когда есть понимание механизма выделения памяти. Эта статья и посвящена объяснениям. В ней также есть советы о самых распространенных видах утечек памяти в JavaScript.
Читать дальше →

CORS для чайников: история возникновения, как устроен и оптимальные методы работы

Reading time17 min
Views501K


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

Если вы давно хотели разобраться в CORS и вас достали постоянные ошибки, добро пожаловать под кат.

Ошибка в консоли вашего браузера


No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://example.com/

Access to fetch at ‘https://example.com’ from origin ‘http://localhost:3000’ has been blocked by CORS policy.


Я уверен, вам уже доводилось видеть похожие сообщения об ошибках в консоли вашего браузера. Если нет, не волнуйтесь, скоро увидите. Все программисты достаточно часто натыкаются на CORS-ошибки. 

Эти всплывающие ошибки в процессе разработки просто раздражают. Но на самом деле, CORS — это невероятно полезный механизм в мире неправильно настроенных веб серверов, злоумышленников, орудующих в интернете и организаций, продвигающих веб-стандарты.

Но давайте-ка пойдем к истокам…
Читать дальше →

Вавилонская башня из миллиона печенек. Как мы делали игру в VK mini app

Reading time12 min
Views4.3K

Весной 2020 года KTS вместе с командой спецпроектов ВКонтакте придумали концепцию и механику игры к 5-летию Oreo в России.

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

В этой статье мы расскажем про визуальную составляющую (почти)бесконечной башни на TS + React + MobX + react-spring + styled-components и как мы решали задачи отображения и оптимизаций, чтобы добиться максимально плавного игрового взаимодействия.

Как мы это сделали

Простой способ спрятаться от популярных систем распознавания лиц

Reading time6 min
Views81K

Прошлым летом, когда миллионы людей вышли на улицы, протестуя против полицейского произвола после убийства Джорджа Флойда, государственные учреждения, не теряя времени, обратились к системам распознавания лиц для отслеживания участников протестов. В то же время власти стали призывать носить маски для сдерживания эпидемии Covid-19, и многие обнаружили в этой мере свои преимущества. Масштабное исследование, опубликованное Национальным институтом стандартов и технологий в июле 2020 года, установило, что при помощи маски можно обмануть некоторые системы распознавания лиц почти в половине случаев – это позволяло предположить, что протестующие в масках получают некоторую защиту от массовой слежки.

Это навело меня на мысль: как наиболее эффективно использовать маски и прочие повседневные аксессуары, чтобы запутать системы распознавания лиц? Я решил это выяснить.
Читать дальше →

Хакатоны Зима 2020

Reading time3 min
Views1.6K

Недавно мы с друзьями поучаствовали в хакатоне Агрокод, прошедший в течении выходных с 11 по 13 декабря. Хакатон проводил Россельхозбанк. В хакатоне мы участвовали командой из 5 человек. Мы выбрали трек – ‘Нейросеть для обнаружения заболеваний листьев яблони по фотографии’. В этом посте мы описали как прошел хакатон, какая у нас была модель, какая методика файн-тунинга, какой был веб интерфейс.

Читать далее

ИИ итоги 2020-го года в мире машинного обучения

Reading time3 min
Views11K

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

Поехали!

Что нужно знать о популярных JS-фреймворках

Reading time22 min
Views85K

Привет! Меня зовут Дима Чудинов, я наставник на веб-факультете Яндекс.Практикума, Head of Group, Front-end, ABBYY.


Студенты недавно задали мне вопрос: «Что лучше: Angular или React?». Я начал отвечать и понял, что мне понадобится для этого статья. Позже я понял, что и одной статьи не хватит.


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


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

Анонс: как российская компания создает кибер-протезы рук для детей

Reading time2 min
Views3.6K



Завтра, в 20:00 в наших соцсетях выступит Данил Емелин, инженер-протезист в компании Моторика. Они занимаются созданием протезов верхних конечностей, 80% их пациентов — дети.

Ребята делают два вида протезов:

  • обычную механику, которая работает через натяжение нитей,
  • и бионические протезы: работают от аккумулятора, внутри плата и программируемые драйверы

На бионический протез информация передается датчиками, расположенными на поверхности кожи культи, в местах сгибателей и разгибателей мышц. Владелец совершает движение, мышцы напрягаются, пролетают милливольты и датчик понимает, что сигнал подан на него и мыщцы сократилась. Дальше сигнал поступает в контроллер, контроллер передает его на плату-микросхему, оттуда идет на двигатели и протез совершает нужный жест — например, сжимает робо-кисть.

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

Протезы полностью оплачивает государство


Протезы довольно дорогие — обычный протез кисти (механика без компьютеризации) стоит 150-200 тысяч рублей. Компьютеризированный протез — 2-2,5 миллиона рублей. Но самое замечательное то, что пациенты получают его бесплатно по ОМС — ребята из Моторика добились того, чтобы протезы выдавались за счет государственной компенсации.

Тестируем ruGPT-3 на новых задачах

Reading time9 min
Views52K

Рекомендательные системы с нуля, чат-боты и многое другое


Погрузившись в пучину текстовых данных, в октябре этого года мы обучили модели ruGPT-3 — модели для русского языка на основе архитектуры от OpenAI. Но на что же способны эти модели? В этой статье мы соберем первые примеры применения модели — и попробуем новые.

Мы представляем первые результаты самой большой из обученных моделей — ruGPT-3 Large, разработанной совместно с командами SberDevices, Sber.AI и SberCloud. Изучим границы ее применения вместе с вами.

image

В этом году на AI Journey мы подготовили соревнование применений ruGPT-3 — в трек можно сдать любое решение с использованием модели, оцениваемое по трем шкалам — инновационность, эмоциональное вовлечение и бизнес-применимость.

Спойлер:
1 млн рублей за первое место

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

Как оптимизировали экономику СССР и что из этого вышло

Reading time11 min
Views67K

Я работаю специалистом по обработке и анализу данных (data scientist), поэтому большая часть моей работы включает в себя подбор оптимизируемых метрик и размышления о том, как выполнять процессы с максимальной эффективностью. Недавно я обнаружил совершенно удивительную книгу об экономических проблемах в СССР и о коллективе экономистов и компьютерных учёных, стремившихся решить их на основе данных. Книга называется Red Plenty. На самом деле она написана в жанре романа, что странно, однако представляет собой точную экономическую историю СССР. Автор активно заимствует информацию из книги 1973 года под названием Planning Problems in the USSR, которую я тоже приобрёл. При чтении этих книг я не мог не обратить внимания на параллели с планированием в любой современной организации. Факт, который покажется сегодня знакомым каждому data scientist: во второй книге есть цитата исследователя, жалующегося на то, что 90% своего времени он потратил на очистку данных, и только 10% — на само моделирование!

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

Можно ли воссоздать полную нейросеть мыши из тонких послойных разрезов мозга?

Reading time13 min
Views24K
image
Источник фото
Карликовая многозубка, самое маленькое млекопитающее по массе. Внутри маленький целостный сложный мозг, который уже принципиально можно картировать

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

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

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

Военный нейроанатом Джек Стил стал одним из людей, заметно повлиявших на дальнейший прогресс в области технологий, в том числе в области ИИ, где развитие получили такие направления, как нейроморфная инженерия и биоинспирированные вычисления. Стил был медиком, разбирался в психиатрии, увлекался архитектурой, умел управлять самолётом и сам чинил свою технику, то есть был вполне неплохим прикладным инженером. Научная работа Стила стала прообразом сценария фильма «Киборг». Так что с некоторой натяжкой можно назвать его прадедушкой Терминатора. А где Терминатор, там и Скайнет, как известно.

Этот пост написан на основе материалов будущей книги нашего коллеги Сергея Маркова «Охота на электроовец: большая книга искусственного интеллекта».
Читать дальше →

Boston Dynamics: магия или имитация?

Reading time25 min
Views58K

Ссылка на первоисточник — здесь больше порядка с оформлением, особенно, для видеороликов.


Содержание



Магия — это могия. Кто могёт, тот и Маг!
Александр Шевцов
Магия и культура в науке управления


Введение


Рассуждая о роботах, не упомянуть такое «наше всё» в робототехнике как компания Boston Dynamics — это ведь как-то… непрофессионально, да? Но и говорить о ней профессионально уже не так-то просто (а в двух словах точно не получится), в силу приобретённой компанией широкой известности и рождённых этой известностью стереотипов, сложившихся в среде неспециалистов, в частности, неанглоязычных. И всё же, будем вести речь именно с профессиональной точки зрения, по возможности, минимально отвлекаясь на шумиху и домыслы. Ну… разве что несколько слов о стереотипах… а дальше — только профессионально!


Сразу предупреждаю: под катом очень много букв. Будьте осторожны, чтобы не завалило!

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

Как я IF на Twine писал

Reading time3 min
Views11K
Привет Хабр! Это мой первый пост, и я хотел бы поделиться опытом создания IF-игры на Twine. Рассказать о преимуществах и недостатках инструмента, которые заметил во время работы, ну и немного о самой игре.

image

Началось все пять месяцев назад, когда мне предложили сделать IF-игру.
Читать дальше →

Нейросеть на патентах: интервью с разработчиками Awtor

Reading time10 min
Views11K
Awtor — нейросетевой генератор технических решений, базой для обучения которого послужил архив советских патентов. По сути, это утилитарный инструмент для поиска настоящих и будущих способов преодоления технологических барьеров. Говоря совсем простым языком — генератор изобретений.

Наткнулась я на него, разбирая заявки на акселератор AI-проектов «Архипелаг 20.35». И возникло чувство, что либо мимо нас прошло незамеченным что-то крутое, пусть пока еще и в начальной форме развития, либо это что-то непонятное, которое само потом «отвалится».


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

Подборка статей о машинном обучении: кейсы, гайды и исследования за сентябрь 2020

Reading time5 min
Views4.4K


Сентябрьскую подборку мы начнем с кейса. В этот раз он всего один, но зато какой!

Мы не устаем восхищаться возможностями GPT-3 и рассказывать о сферах ее применения, но многие при этом видят в алгоритме угрозу своей профессии.
И компания VMO, которая занимается A/B тестированием, решила провести соревнование — профессиональные копирайтеры против GPT-3.

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

Почему это так интересно?
Читать дальше →

Разработка и тестирование на платформах Эльбрус программы для томографической реконструкции Smart Tomo Engine (+2 видео)

Reading time14 min
Views11K

Сегодняшняя статья будет посвящена сразу двум нашим любимым темам: компьютерной томографии (КТ) и отечественному процессору Эльбрус. Мы расскажем, чем отличается рентгенограмма от результатов КТ и объясним, зачем такой большой и серьезной машине, как томограф, был бы кстати специализированный вычислитель. Несмотря на то, что томографы используются уже почти 50 лет (создание первого томографа было анонсировано в 1972 году [1]), это не означает, что все проблемы KT сегодня решены. Наоборот, существует острая потребность в новых томографических алгоритмах, которые были бы быстрее и точнее используемых, позволили бы уменьшить лучевую нагрузку на объект, что, в свою очередь, существенно расширило бы и сферу применения метода КТ. Понимая все это, мы создали такое программное обеспечение Smart Tomo Engine. О нем речь пойдет ниже. Рассказав ранее о борьбе с ортотропными артефактами и об оценке “эффекта чаши”, в данной статье мы опишем несколько тестов, проведенных с использованием синтетических и собранных на отечественном томографе реальных томографических датасетах и покажем работу нашей программы на процессоре Эльбрус нового поколения (видео прилагается ниже). Результат работы программы приоткроет внутренний мир майского жука, причем значение слова “внутренний” здесь следует понимать буквально.


Мелкая питонячая радость #10: конечные автоматы и глубокое обучение в несколько строк

Reading time3 min
Views24K

Конечно, самая большая радость этих дней — python 3.9. Но кроме этой радости кто-то должен ворошить github в поисках мелких приятностей, которые несут добро и свет тем, кто пишет на python.


Transitions


Тем, кому приходилось писать реализацию какого-нибудь сложного информационного процесса, знает эту проблему.


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


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

Опенсорсные альтернативы Google Analytics на своём хостинге

Reading time5 min
Views25K

Веб-интерфейс опенсорсного сервиса аналитики Matomo

Дегуглификация онлайновой жизни требует внедрения свободных альтернатив во всех областях. Защитники приватности ведут списки таких продуктов по категориям.

С точки зрения системного администратора в этих списках отдельно выделяется категория веб-аналитики — замена сервису Google Analytics, который собирает детальную статистику о посетителях сайта. Все знают, как работает такой сервис. Внедряете на страничках JS-код отслеживания, и если человек не установил блокировщик следящих скриптов, то каждый раз при открытии страницы будет срабатывать этот скрипт. Дальше статистика по вашим пользователям отправляется на хранение в корпорацию Google.

К счастью, есть ряд свободных, опенсорсных альтернатив Google Analytics, которые к тому же работают быстрее, поскольку скрипты меньше по размеру и загружаются с вашего собственного хостинга, а не со стороннего сервера. Информация о пользователях никуда не отправляется, а многие сервисы не используют куки и соответствуют законодательству GDPR о защите личных данных.
Читать дальше →

Оптимизация производительности фронтенда. Часть 2. Event loop, layout, paint, composite

Reading time11 min
Views65K

Ночь. Стук в дверь. Открыть. Стоят двое. "Верите ли вы в Event loop, нашу главную браузерную цепочку?" Вздохнуть. Закрыть дверь. Лечь досыпать. До начала рабочего дня еще 4 часа. А там уже ивент лупы, лейауты и прочая радость…


В первой части мы говорили о первой загрузке и работе с ресурсами. Сегодня я расскажу о второй части оптимизации производительности фронтенда. О том, что происходит с нашей страницей, когда она загружена, на что уходит процессорное время и что с этим делать. Ключевые слова: event loop, paint \ repaint, layout \ reflow, composite.


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

История ошибки 2000 года

Reading time13 min
Views30K
В конце девяностых мир переживал за компьютерные системы, которые обещали вот-вот отказать. Эксперты запугивали, что при наступлении 2000 года софт не сможет корректно обработать дату, и мир погрузится в хаос: отключатся платёжные системы, биржи встанут, откажет любая электроника. В реальности новый век наступил без каких-либо проблем, переживания оказались напрасны.

Именно так ошибку 2000 года восприняло общественное сознание. К примеру, британский политик-брекзитёр заявил, что опасения о влиянии роли Брекзита на экономику похожи на панику бага Y2K.

Об ошибке тысячелетия забыли почти сразу после наступления 2000 года. Даже в непрофильных изданиях месяцами обсуждали баг Y2K, но уже в первые дни нового года внимание к теме угасло. Завораживающая смена числа с 1999 на 2000 не создала катастроф, которыми так пугали. Скептики объявили, что деньги на устранение бага потратили впустую.

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

Information

Rating
7,808-th
Location
Россия
Registered
Activity