Pull to refresh
6
0
Данила @Old_tutor

User

Send message

Лёгкая, гибкая, производительная обёртка над Web Animations API — @okikio/animate

Reading time9 min
Views2.7K

В 2020 году автор оригинальной статьи решил написать более эффективную библиотеку PJAX, похожую на проект Rezo Zero — Starting Blocks, но так, чтобы легко работать с barbajs. Он понимал, что Starting Blocks легче расширить с помощью настраиваемых функций и их можно сделать более плавными, быстрыми и простыми в использовании. Со временем намерения автора изменились, и он начал замечать, как часто сайты с awwwards.com используют PJAX, но также часто мешают естественному восприятию сайта и браузера.

Многие сайты на первый взгляд выглядели круто, но если вы работали с ними долго, то это была другая история — полосы прокрутки часто переопределялись, предварительное извлечение часто было слишком активным и не оптимизированным для людей без мощного подключения к Интернету, ЦП и/или графических процессоров. К старту курса о Fullstack-разработке на Python делимся переводом обзора библиотеки @okikio/animate от её автора. На КДПВ вы видите первый кадр любопытной анимации из демо к библиотеке, эта анимация работает в закреплённой шапке сайта.

Читать далее
Total votes 9: ↑7 and ↓2+5
Comments0

Как совмещать работу и учебу? Опыт студентов онлайн-магистратуры

Reading time6 min
Views5.7K

Привет, Хабр! Несмотря на такой заголовок, начать хочется не с лайфхаков, а с личной боли. Думаю, многие хабровчане меня поймут. Эта боль — нехватка времени. Думаю, её вполне можно назвать одной из основных проблем современных специалистов. Из-за неё мы забрасываем пет-проекты, обучение чему-то новому, а статьи для Хабра пишутся годами. Как итог, откладывается личный прогресс. Интернет просто переполнен различными лайфхаками, как всё успеть, методиками от Маска, Безоса и иже с ними, но сегодня хотелось бы уделить внимание личному опыту куда более земных людей. Я побеседовала со студентами онлайн-магистратуры «Наука о данных» НИТУ МИСиС и Zavtra.Online о том, как им удаётся совмещать работу и учёбу.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments1

В закладки: репозитории с книгами, шпаргалками, ресурсами по дизайну и не только

Reading time5 min
Views6.2K

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

Читать далее
Total votes 7: ↑5 and ↓2+3
Comments2

Sparkplug — неоптимизирующий компилятор JavaScript в подробностях

Reading time10 min
Views5.3K

Создать компилятор JS с высокой производительностью означает сделать больше, чем разработать сильно оптимизированный компилятор, например TurboFan, особенно это касается коротких сессий, к примеру, загрузки сайта или инструментов командной строки, когда большая часть работы выполняется до того, как оптимизирующий компилятор получит хотя бы шанс на оптимизацию, не говоря уже о том, чтобы располагать временем на оптимизацию. Как решить эту проблему? К старту курса о Frontend-разработке делимся переводом статьи о Sparkplug — свече зажигания под капотом Chrome 91.

Читать далее
Total votes 8: ↑7 and ↓1+9
Comments1

Биография основателя DEF CON и Black Hat Джеффа Мосса (Dark Tangent)

Reading time10 min
Views2.4K

К старту курса об этичном хакерстве мы перевели размещённую на сайте Black Hat биографию основателя этой серии мероприятий по кибербезопасности. Джефф Мосс родился в Калифорнии, США, в январе 1975 года, он — эксперт по компьютерной и интернет-безопасности, хакер. Первый опыт работы с компьютером он получил в возрасте 10 лет и был восхищён возможностью общаться и вести взрослые разговоры с людьми по всему миру. У него ещё не было водительских прав, Джефф не мог голосовать, но мог общаться с людьми намного старше его, которых нисколько не волновали ни его возраст, ни внешность.

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments0

Как новый алгоритм преодолевает ограничение скорости решения линейных уравнений

Reading time9 min
Views7.9K

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

Читать далее
Total votes 16: ↑10 and ↓6+7
Comments8

Как преобразовать текст в речь с использованием Google Tesseract и Arm NN на Raspberry Pi

Reading time9 min
Views4.4K

Привет, Хабр! Сегодня специально к старту нового потока курса по Maсhine Learning делимся с вами постом, автор которого создаёт устройство преобразования текста в речь. Такой механизм преобразования текста в речь (TTS) — ключевой элемент систем, которые стремятся сформировать естественное взаимодействие между людьми и машинами на основе встроенных устройств. Встроенные устройства могут, например, помочь людям с нарушениями зрения читать знаки, буквы и документы. В частности, устройство может, используя оптическое распознавание символов, дать понять пользователю, что видно на изображении. Впрочем, приступим к крафту…

Приятного чтения!
Total votes 11: ↑10 and ↓1+12
Comments0

Как предотвратить появление неверных данных в ваших идеальных конвейерах

Reading time6 min
Views2K

Для команд специалистов DS сломанные конвейеры данных, шаткие информационные панели и пожарные учения в 5 часов утра – это норма, особенно потому, что рабочие процессы принимают всё больше и больше данных из разрозненных источников. Черпая вдохновение в разработке программного обеспечения, мы называем это явление простоем данных – но как упреждающе, в первую очередь предотвратить появление плохих данных?

В этой статье я поделюсь тремя ключевыми стратегиями, которыми пользуются некоторые лучшие компании Data Science, чтобы восстановить доверие к своим данным.
Приятного чтения!
Total votes 17: ↑16 and ↓1+18
Comments0

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

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

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


Приятного чтения!
Total votes 46: ↑40 and ↓6+49
Comments71

Хабравыжимка #1: Софт скилы для разработчика

Reading time9 min
Views19K
Современный специалист подобен швейцарскому ножу — владения только одним навыком всегда будет недостаточно. Но если с хард-скилами более-менее понятно, для каждой специальности они известны, то с софт скилами всё не так очевидно. Но мы же на Хабре — тут пишут про всё, правда, в этом потоке контента несложно и запутаться. Поэтому, чтобы облегчить жизнь всем и составить представление о том, какие же «мягкие навыки» наиболее актуальны, я собрал подборку лучших постов про них. А помогли мне в этом руководитель Центра карьеры SkillFactory Юлия Пушкина и наш карьерный консультант Эльмира Салимова.


Приятного чтения!
Total votes 25: ↑17 and ↓8+13
Comments40

Как отслеживать производительность веб-приложения с JavaScript и Performance API

Reading time5 min
Views8.6K
В сентябре этого года у меня была возможность присоединиться к Forest Admin, компании, которая выполняет всю тяжёлую работу по созданию панели администратора любого веб-приложения и предоставляет платформу на основе API, чтобы реализовать все ваши конкретные бизнес-процессы. Моей первой задачей было реализовать мониторинг времени загрузки приложения, а также мониторинг времени запросов, сделанных нашими клиентами в их административном бэкенде, который я разработал.

Цель такой функции – иметь возможность ориентироваться на проекты, работая с которыми пользователи сталкиваются с длительной загрузкой, чтобы оптимизировать конфигурацию своего интерфейса. Это делает навигацию и взаимодействие с приложением плавнее и, таким образом, улучшает взаимодействие с пользователем. Для этого первым делом нужно выяснить, как мы собираемся реализовать такую функцию.


Приятного чтения!
Total votes 23: ↑23 and ↓0+23
Comments0

Разговор с дата-сайентистом — гроссмейстером Kaggle

Reading time6 min
Views13K
Ранее у нас в блоге уже был материал про лучших в Kaggle, а сегодня представляю вам интервью с признанным дата-сайентистом и гроссмейстером Kaggle Филиппом Сингером, который поделится своим опытом, вдохновением и и достижениями. Беседа призвана мотивировать и воодушевить других людей, которые хотят понять, что нужно, чтобы стать гроссмейстером Kaggle. Также в этом интервью мы узнаем больше об академическом прошлом Филиппа, его увлечении Kaggle и о его работе в качестве дата-сайентиста.


Приятного чтения
Total votes 23: ↑18 and ↓5+18
Comments11

Как сделать Data Science приложение для Windows (и не только) с графическим интерфейсом с помощью PySimpleGUI

Reading time6 min
Views33K
Работать с Data Science в Jupyter, конечно, очень приятно, но если вы хотите пойти дальше и развернуть свой проект или модель на облачном сервере, то здесь есть много отличных решений — с помощью Flask, Django или Streamlit. Хотя облачные решения по-прежнему самые популярные, часто хочется создать быстрое приложение с графическим интерфейсом. Например:

  • Модель ML тестируется на различных наборах данных. Вы можете перетащить файлы CSV в модель и отрисовать кривую AUS/ROC. Здесь GUI проявит себя прекрасно, правда?
  • Построить случайную переменную или статистическое распределение в заданном диапазоне и динамически управлять параметрами с помощью графического интерфейса.
  • Быстро запустить некоторые задачи обработки или предварительной обработки данных в наборе с помощью GUI вместо того, чтобы писать кучу кода.

В этой статье мы покажем, как создать такой графический интерфейс, потратив минимум усилий на изучение библиотеки Python.


Приятного чтения!
Total votes 23: ↑21 and ↓2+24
Comments10

Разрабатываем и развёртываем собственную платформу ИИ с Python и Django

Reading time11 min
Views24K
Взлёт искусственного интеллекта привёл к популярности платформ машинного обучения MLaaS. Если ваша компания не собирается строить фреймворк и развёртывать свои собственные модели, есть шанс, что она использует некоторые платформы MLaaS, например H2O или KNIME. Многие исследователи данных, которые хотят сэкономить время, пользуются этими инструментами, чтобы быстро прототипировать и тестировать модели, а позже решают, будут ли их модели работать дальше. 

Но не бойтесь всей этой инфраструктуры; чтобы понять эту статью, достаточно минимума знаний языка Python и фреймворка Django.  Специально к старту нового потока курса по машинному обучению в этом посте покажем, как быстро создать собственную платформу ML, способную запускать самые популярные алгоритмы на лету.


Портрет Орнеллы Мути Джозефа Айерле (фрагмент), рассчитанный с помощью технологии искусственного интеллекта.
Приятного чтения!
Total votes 23: ↑19 and ↓4+19
Comments3

Как я готовился к собеседованию в Google

Reading time9 min
Views49K
Каждый инженер-программист стремится впечатлить людей своим техническим мастерством. Технологические гиганты этого мира — прекрасное место для работы технарей, которые могут предоставить услуги миллиардам пользователей. На моём недавнем собеседовании было несколько раундов, я получил предложения от Google и Amazon. В последние несколько лет онлайн-сообщество очень помогло мне в подготовке к собеседованиям. В этом посте я поделюсь всем о моём пути к собеседованию и верну вклад общества в моё обучение.


Приятного чтения!
Total votes 40: ↑35 and ↓5+45
Comments77

Почему вы никогда не должны соглашаться на собеседования с программированием

Reading time5 min
Views75K
Собеседование инженера программиста сегодня часто включает в себя некий тест или упражнение на программирование, и я думаю, что это очень плохая вещь. Вот почему.


Приятного чтения!
Total votes 74: ↑53 and ↓21+52
Comments283

Как новые квантовые алгоритмы решили нелинейные уравнения

Reading time6 min
Views8K
Иногда компьютеру легко спрогнозировать будущее. Простые явления, например, когда сок стекает по стволу дерева, прямолинейны и фиксируются в нескольких строках кода при помощи линейных дифференциальных уравнений. Но в нелинейных системах взаимодействия могут влиять сами на себя: когда воздушные потоки протекают по крыльям реактивного самолёта, поток воздуха изменяет молекулярные взаимодействия, которые, в свою очередь, изменяют воздушный поток, и так далее. Эта петля обратной связи порождает хаос, где небольшие изменения в начальных условиях позже приводят к крайне изменчивому поведению, что делает прогнозы практически невозможными, каким бы мощным ни был компьютер.


Приятного чтения!
Total votes 21: ↑20 and ↓1+26
Comments3

В 40 я всё ещё разработчик?

Reading time6 min
Views29K
Если вам кажется, что 40 — это уже слишком, вы ошибаетесь. Представьте: вы рано приходите в офис. Бросаете рюкзак и отправляетесь на кухню. Вы полночи уговаривали детей уснуть, и они рано разбудили вас. Теперь вам нужен кофе. С кружкой кофе в руке вы замечаете, что на кухне разговаривают три разработчика. Сейчас 9 утра. Они просто пришли пораньше, — решаете вы. Но замечаете на них ту же одежду, что и вчера. Они были здесь всю ночь. Вот чёрт! Что-то не получилось?! И что теперь?! CEO, улыбаясь до ушей, проносится мимо вас. Она перескакивает к группе, даёт ребятам пять и издаёт победный вопль.

«Ребята, вы его добили», — произносит она.

Ваша первая мысль: «Я никак не мог остаться прошлой ночью». Случилась предсказуемая неприятность, иногда жизнь так складывается, дети делали уроки. А вы ощущаете себя объектом шуток. В банду вы не попали, потому что не можете протянуть всю ночь. Многие из нас переживают этот ужасный кошмар. Страшно уйти с работы по старости. Индустрия посвятила молодых людей в рыцари — стюарды технологий? Естественно сомневаться в себе и думать, сможете ли вы заниматься своим делом. Руководство вознаграждает героические ночные усилия, но как насчёт продуктивного труда? Что насчёт опыта, который привносите вы? Вы хотите потягаться с молодёжью, но не за счёт своей семьи. Но как тягаться с ними, спящими в офисе?

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


Приятного чтения!
Total votes 43: ↑35 and ↓8+36
Comments83

10 полезных книг: от разработчиков и для разработчиков

Reading time5 min
Views27K
Чтение книг — по-прежнему прекрасный способ открыть нечто новое или научиться чему-то, особенно если вы разработчик, чтобы оставаться востребованным в изменчивой индустрии.
В этой подборке я представлю 10 фантастических книг для разработчиков, которые написали разработчики. Здесь не будет привычных общепринятых книг, которые вы найдете в любой подборке «мастрид для программистов», в этой статье — вручную отобранные сокровища от экспертов с проверенным послужным списком.


Приятного чтения!
Total votes 41: ↑25 and ↓16+15
Comments9

Строим надёжную конкурентность с FSP и моделированием процессов

Reading time5 min
Views1.9K

Делаем систему параллелизма надёжнее


Сегодня посмотрим как смоделировать программу с конкурентностью на FSP. Сначала давайте разберемся, зачем вообще нужна конкурентность. Вот что можно сделать с её помощью:

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


Сгенерированная инструментом LTSA диаграмма состояний
Приятного чтения!
Total votes 21: ↑21 and ↓0+21
Comments0

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity