Как стать автором
Обновить
-29
@Tetrakronosread⁠-⁠only

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

Отправить сообщение

70 вопросов по JavaScript для подготовки к собеседованию

Время на прочтение43 мин
Количество просмотров997K
Доброго времени суток, друзья!

Надеюсь, эта статья будет полезна как начинающим разработчикам, так и опытным.

В вопросах, которые показались мне сложнее прочих, приведены ссылки на дополнительную литературу.

Буду признателен за развернутые комментарии. Все замечания будут учтены при редактировании статьи.

Итак, поехали.
Читать дальше →

Работаем с аудио: прогресс и визуализация данных

Время на прочтение6 мин
Количество просмотров18K


Доброго времени суток, друзья!

Хочу поделиться опытом работы с аудио. Под «аудио» я подразумеваю HTMLAudioElement и Web Audio API.

Что будем делать?

Мы создадим нечто вроде плеера для одного трека (о полноценном проигрывателе — в одной из следующих статей).

Условия:

  • Возможность загрузки файла из любого места на жестком диске как по нажатию кнопки, так и перетаскиванием.
  • Круговой графический и текстовый индикаторы прогресса.
  • Текстовый индикатор громкости звука.
  • Визуализация аудио данных.
  • Управление плеером с помощью клавиатуры.

В сети полно материалов как по HTMLAudioElement, так и по WAAPI, поэтому я сделаю акцент на практической составляющей. Кроме аудио, мы будем работать с drag-drop и canvas.

Без дальнейших предисловий…
Читать дальше →

TDD для микроконтроллеров. Часть 1: Первый полет

Время на прочтение10 мин
Количество просмотров16K
TDD для микроконтроллеров. Часть 1: Первый полет
TDD для микроконтроллеров. Часть 2: Как шпионы избавляют от зависимостей
TDD для микроконтроллеров. Часть 3: Запуск на железе


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


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


Одной из наиболее популярных методологий улучшения качества разрабатываемых приложений является Test-driven development (TDD). Но эффективна ли методология TDD для разработки встраиваемых систем? Ответ на этот вопрос будем искать под катом.

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

Работаем с двумерной графикой в JavaScript

Время на прочтение5 мин
Количество просмотров13K
Доброго времени суток, друзья!

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

Хотите узнать, как эти алгоритмы реализуются в JS?



Примеры можно посмотреть здесь.

Исходный код находится здесь.
Читать дальше →

Как максимальной единицей передачи информации в интернете стали 1500 байт

Время на прочтение3 мин
Количество просмотров45K


Ethernet повсюду, и десятки тысяч производителей выпускают оборудование с его поддержкой. Однако почти у всех этих устройств есть одно общее число – MTU:

$ ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP 
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

MTU (Maximum Transmission Unit) [максимальная единица передачи] определяет максимальный размер отдельного пакета данных. В общем случае, когда вы обмениваетесь сообщениями с устройствами вашей LAN, MTU будет иметь размер порядка 1500 байт, а весь интернет почти целиком тоже работает с размером 1500 Б. Однако это не означает, что эти технологии связи не могут передавать пакетов большего размера.
Читать дальше →

5 вопросов по SQL, которые часто задают дата-сайентистам на собеседованиях

Время на прочтение6 мин
Количество просмотров144K
Хотя составление SQL-запросов — это не самое интересное в работе дата-сайентистов, хорошее понимание SQL чрезвычайно важно для того, кто хочет преуспеть в любом занятии, связанном с обработкой данных. Дело тут в том, что SQL — это не только SELECT, FROM и WHERE. Чем больше SQL-конструкций знает специалист — тем легче ему будет создавать запросы на получение из баз данных всего, что ему может понадобиться.



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

  1. Изучение механизмов, которые выходят за пределы базового знания SQL.
  2. Рассмотрение нескольких практических задач по работе с SQL.

В статье рассмотрено 5 вопросов по SQL, взятых с Leetcode. Они представляют собой практические задачи, которые часто встречаются на собеседованиях.
Читать дальше →

Bloody hell, или Как ругаться на английском, чтобы тебя приняли за культурного человека

Время на прочтение6 мин
Количество просмотров118K
Ругательства — это неотъемлемая часть любого языка. И даже если вы не собираетесь их использовать в жизни, их нужно изучать и знать.

Но есть ситуации, когда без «крепкого словца» не обойтись. И чтобы не потерять свой имидж культурного человека, мы предлагаем вам целую коллекцию «mild curses» — легких ругательств и идиоматических выражений на английском языке, которые не считаются матами, но при этом помогут выразить всю палитру эмоций. Поехали!


Импортозамещение и судостроение

Время на прочтение6 мин
Количество просмотров28K
Пару лет назад поставили передо мной задачу спроектировать забортный трап для судна. На каждом большом судне их два: правый и левый.

Забортный трап на судне

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

Принцип работы трапа упрощённо можно описать так. При наматывании каната на барабан лебёдки 5, лестничный марш 1 подтягивается к консольной части трап-балки 4. Как только марш упирается в консоль, она начинает поворачиваться относительно своей шарнирной точки крепления, приводя в движение вал 6 и поворотно-откидную площадку 3. В результате этого марш трапа заваливается на ребро, т.е. в положение «по-походному». При достижении конечного вертикального положения, срабатывает конечный выключатель, который останавливает лебёдку.

Кинематическая схема забортного трапа

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

Работа с IPv6 в PHP

Время на прочтение6 мин
Количество просмотров8.2K
Недавно мы получили статус LIR и /29 блок IPv6. А следом возникла необходимость вести учёт назначенных подсетей. И коль скоро наш биллинг написан на PHP, пришлось немного проникнуться вопросом и осознать, что этот язык — не самый дружелюбный в плане работы с IPv6. Под катом — наше решение возникших задач по работе с адресами и диапазонами. Возможно, не самое элегантное, но поставленные задачи выполняет.

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

Bank of America: Капитализация «Яндекса» вырастет на $1,4 млрд

Время на прочтение2 мин
Количество просмотров6.7K


В распоряжении журналистов «Коммерсанта» оказался отчет аналитиков Bank of America Merrill Lynch (BofA). По их мнению, в ближайшие несколько лет «Яндекс» займет 60% всего рынка поиска в России, а его капитализация вырастет на $1,4 млрд. Разбираемся в причинах возможного роста.
Читать дальше →

Ошибки переводчиков, которые привели к катастрофическим последствиям

Время на прочтение6 мин
Количество просмотров70K
Правильный и точный перевод — штука сложная и ответственная. И чем ответственнее перевод, тем к более катастрофическим последствиям может привести ошибка переводчика.

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


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

Слёрм DevOps. Три дня погружения в DevOps. И лекция Анатолия Вассермана «Вычислительная проблема социализма»

Время на прочтение19 мин
Количество просмотров6.2K

Кто мы? Разработчики.
Что мы хотим? Деплоить не раз в месяц, а раз в час. Выкатывать код, не спотыкаясь об администраторов, тестировщиков, безопасников.
Что хотят от нас? Быстрее и дешевле выкатывать новые фичи и одним мизинцем править баги.
Что от нас не хотят? Даунтайма.
Где мы? На Слёрме DevOps, который проходил с 30 января по 1 февраля 2020 в Москве, в гостинице «Севастополь».


У нас было 5 опытных спикеров, 80 участников в зале, опытная техподдержка, сервера Selectel для практики, прекрасная зимняя московская погода, чтобы и мысли не было выйти из уютного конференц-зала. А ещё Анатолий Вассерман с лекцией «Вычислительная проблема социализма» во второй день интенсива — чуть дальше в статье расшифровка его выступления.



Кто есть кто в мировой микроэлектронике

Время на прочтение19 мин
Количество просмотров229K
Типичная новость про электронику начала 2020 года: «Intel, вероятно, не будет размещать заказ на производство у TSMC, но рассматривает возможность сотрудничества с GlobalFoundries». Кто такие Intel — всем понятно, но что за GlobalFoundries и TSMC? Когда деревья были большими, каждая микроэлектронная компания самостоятельно производила свои микросхемы, а то и технику на их основе, как какая-нибудь Toshiba или IBM. С тех пор утекло много воды, производство подорожало, сложность приборов возросла, и в создании такого приземленного и распространенного девайса, как айфон, участвует несколько десятков высокотехнологичных компаний с трех континентов. Размеры мирового рынка полупроводниковых микросхем и приборов оцениваются больше, чем в 400 миллиардов долларов, но не все гиганты этого рынка имеют дело с конечными пользователями и часто появляются в новостях. Зато когда появляются — могут сбить с толку. Чтобы этого не происходило, я попробую кратко описать, кто есть кто.
Читать дальше →

Домашний веб-сервер на солнечных батареях отработал 15 месяцев: аптайм 95,26%

Время на прочтение10 мин
Количество просмотров26K

Первый прототип солнечного сервера с контроллером заряда. Фото: solar.lowtechmagazine.com

В сентябре 2018 году энтузиаст из Low-tech Magazine запустил проект «низкотехнологичного» веб-сервера. Задача была снизить энергопотребление настолько, чтобы домашнему self-hosted серверу хватало одной солнечной панели. Это непросто, ведь сайт должен работать 24 часа в сутки. Посмотрим, что получилось в итоге.

Можете зайти на сервер solar.lowtechmagazine.com, проверить текущее энергопотребление и уровень заряда аккумулятора. Сайт оптимизирован на минимальное количество запросов со страницы и минимальный трафик, так что должен выдержать скачок посещаемости с Хабра. По расчётам разработчика, расход энергии на одного уникального посетителя составляет 0,021 Вт⋅ч.
Читать дальше →

DeviceLock DLP: Цены российского черного рынка на пробив персональных данных (плюс ответ на ответ Тинькофф Банка)

Время на прочтение4 мин
Количество просмотров128K

В конце прошлого года для DeviceLock DLP я делал обзор цен черного рынка на российские персональные данные, и вот пришло время его обновить и дополнить.


Заодно посмотрим изменение цен и предложений на этом «рынке», а также реакцию «Тинькофф Банка» на вот это вот все.



Поехали...

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

Обратная польская запись на языке ассемблера с синтаксисом AT&T

Время на прочтение4 мин
Количество просмотров6.6K
Данная программа изначально была написана как небольшая лабораторная работа по курсу машинно-ориентированного программирования программирования, но в последствии появилась мысль представить её сообществу. Именно потому что алгоритм реализован не на языке ассемблера с синтаксисом Intel, а на языке ассемблера с синтаксисом AT&T.
Читать дальше →

Обратная польская нотация: как же приготовить хот-дог?

Время на прочтение4 мин
Количество просмотров53K
Будучи дилетантом в области разработки приложений, я испытал сложности с пониманием алгоритма работы обратной польской нотации, а если быть точнее — алгоритма подготовки стека. Делу так же мало помогли статьи в «интернетах».

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

Делу помогли две статьи. Одна из них на википедии, а вторая была написана замечательным пользователем хабра, GORKOFF, который объяснил все буквально «на пальцах».

Однако до конца я так и не понял тот важный вопрос: как же построить стек?
Читать дальше →

Знай сложности алгоритмов

Время на прочтение2 мин
Количество просмотров1.1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →

Книга «Предметно-ориентированное проектирование: паттерны, принципы и методы»

Время на прочтение10 мин
Количество просмотров22K
image Писать программы легко — во всяком случае, с нуля. Но изменить однажды написанный программный код, который создали другие разработчики или вы сами каких-то шесть лет тому назад, — гораздо сложнее. Программа работает, но вы не знаете точно, как именно. Даже обращение к экспертам в предметной области ничего не дает, поскольку в коде не сохранилось никаких следов привычного для них языка.

Предметно-ориентированное проектирование (Domain-Driven Design, DDD) — это процесс тесной увязки программного кода с реалиями предметной области.Благодаря ему добавление в программный продукт новых возможностей по мере его развития становится таким же простым, как и при создании программы с нуля. Эта книга в полной мере соответствует философии DDD и позволяет разработчикам перейти от философских рассуждений к решению практических задач.
Читать дальше →

8 ошибок в произношении английских звуков, которые делает большинство русскоговорящих

Время на прочтение7 мин
Количество просмотров65K


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

Причина очень проста. Звуки и звукообразование в разных языках отличается кардинально.
В японском языке отсутствует звук [l]. И на первых этапах изучения английского языка они заменяют его звуком [r]. Все потому, что в японском звук [r] ударный, а не вибрационный. Во время произношения язык прикасается к нёбу лишь на долю секунды, поэтому на выходе получается что-то среднее между знакомыми нам [р] и [л]. Именно поэтому сложно понять, что имеет в виду японец: «law» или «raw».

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

Нередко такие нюансы полностью меняют смысл предложения.
И вместо «I like this beach» («Мне нравится этот пляж») собеседник услышит «I like this bitch» («Мне нравится эта девушка с пониженной социальной ответственностью»).
В этой статье мы расскажем о 8 ошибках в произношении, которые часто встречаются у русскоговорящих, а также расскажем хитрости, которые помогут вам от них избавиться. Поехали.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность