Как стать автором
Поиск
Написать публикацию
Обновить
46
0
Владлен Грачев @gwer

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

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

Хорошего кода не бывает

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

Серьезно. Кода на который можно посмотреть и сказать "это сделано на отлично" почти не бывает – в основном один фарш из легаси, гвоздей, и иероглифов.

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

Тема пойдет про причину, почему оно происходит, и почему не надо создавать себе иллюзий хорошего кода.

Серьезно

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

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

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

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

Читать далее

Взрослый back-end на node.js возможен?

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

В экосистеме Node.js существует довольно много библиотек и фреймворков, которые пользуются определенной популярностью в сообществе. Но ни один из инструментов не решил главную проблему, с которой сталкиваются разработчики, когда пытаются писать бэкенд на Node.js. Это проблема выбора архитектуры.

Хочу обратить ваше внимание на относительно молодой фреймворк Nest.js. Из коробки он предлагает заранее предопределенную архитектуру, которая заточена под максимально удобную поддержку и масштабируемость вашего приложения. Заложенные архитектурные подходы проверены временем и давно используются в других, более зрелых платформах: Java(Spring), Python(Django), PHP(Laravel) и прочих.

Авторы Nest.js не скрывают, что их вдохновил один из популярных фреймворков для клиентских приложений — Angular.js, а его авторы ориентировались на походы, используемые в Java и C#. Если вы знакомы с Angular.js, то увидите в Nest.js много схожих идей.

Читать далее

Nginx. О чем не пишут в книгах

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

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

Надо же, на полках нашлось целых три книги - не полистать их было бы преступлением. Первая, вторая, третья... Ощущение, будто что-то не так. Ну вроде страниц много, текст связный, но каково содержание? Установка nginx, список переменных и модулей, а дальше docker, ansible. Открываем вторую: wget, лимиты запросов и памяти, балансировка, kubernetes, AWS. Третья: GeoIP, авторизация, потоковое вещание, puppet, Azure. Ребята, а где про то, как вообще работает nginx? На кого рассчитаны ваши книги? На состоявшегося админа, который и так знает архитектуру этого веб-сервера? Да он вроде с базовыми настройками и сам справится. На новичка, который не знает как пользоваться wget? Вы уверены, что ему знание о существовании ngx_http_degradation_module и тем паче "облака" важнее порядка прохождения запроса?

Итак. О чем не пишут в книгах.
(здесь и дальше мы говорим только о NGX_HTTP_)

Фазы обработки запроса

Выжимаем максимум интернета из деревенских сот

Время на прочтение6 мин
Количество просмотров41K
На кануне новогодних праздников понадобилось пораньше покинуть столицу, покинуть ее в направлении таких мест, в которых интернет бывает довольно редко. На период отсутствия на работе я обещал напарникам быть на связи. А так как мой род деятельности напрямую связан с web, то я решил поэкспериментировать с доступностью интернетов в планируемом месте пребывания.

Суть задачи сводился к следующему:

  1. Достичь комфортной скорости интернета.
  2. Раздавать интернет не только для себя, но и для супруги.

У нас было 2 модема, 750 мегабайт проплаченого интернета, 3 ноутбука, несколько телефонов и целое множество симок всех сортов и расцветок, точка доступа с OpenWRT, usb hub, флэшка и антенна. Не то чтобы это был необходимый запас для поездки, но если начал собирать железки, становится трудно остановиться. Единственное, что вызывало у меня опасение — это антенна. Ничто в мире не бывает более беспомощным, безответственным и слабым, чем сигнал от антенны, прошедший через 3-х метровый usb кабель. Я знал, что рано или поздно мы перейдем и на эту дрянь.
Читать дальше →

Линейные двигатели внутреннего сгорания — в роли портативных источников энергии и не только

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


Более 100 лет известен такой механизм, как двигатель внутреннего сгорания.

Двигатели данного типа применяются повсеместно, как наиболее распространённый способ преобразования химической энергии в механическое движение.

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

Алюминиевый профиль как универсальный ресурс для сборки чего угодно. Часть 1

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

Еще недавно профиль типа Т-слот (T-slot) был не самым популярным, но после того, как его стали применять в конструкции многих моделей 3D-принтеров, он появился везде и всюду. Теперь он используется для сборки тех же 3D-принтеров, лазерных резаков, станков с ЧПУ.

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

Уже не программист, ещё не предприниматель

Время на прочтение22 мин
Количество просмотров5.9K
На прошлой неделе в наших соцсетях выступил Евгений Донцов, основатель стартапа Ватериус.

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

После выпуска более 10 лет работал программистом в автоматизации промышленных объектов и городов. Основал стартап Ватериус. Прошёл 2 ступени Школы дизайнеров Бюро Горбунова. Участвовал в преакселераторе Сбербанка SberUP.

Делимся с вами расшифровкой эфира и записью.

Как я монетизировал гнездо аистов

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

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

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

Читать далее

Гайд начинающего тимлида

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

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

Всё это я проговаривал на вебинаре в Хекслете тут https://www.youtube.com/watch?v=y_HkXvFovAc

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

Общий стаж моей работы в ИТ - около 14 лет. Я начинал с системного администрирования, потом перешел в разработку, поработав как в аутсорсе, так и в продукте. Не один раз проходил путь от рядового разработчика до тимлида.

Читать далее

Как выглядит обычная 100%-но бессерверная архитектура в AWS Lambda

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

Когда мы говорим о бессерверной архитектуре, мы обычно выходим далеко за рамки модели «функция как услуга» (FaaS), одной из реализаций которой являются функции AWS Lambda.

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

Как же будет выглядеть такого рода архитектура в интернет-проекте?

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

Читать перевод далее

Собственный микроскоп из кубиков LEGO

Время на прочтение3 мин
Количество просмотров11K
Сегодня мы хотим познакомить вас с проектом Lego Microscope. Цель этого проекта заключается в том, чтобы предоставить всем желающим инструкции и ресурсы по сборке собственного микроскопа из кубиков LEGO.
Микроскоп
Читать дальше →

Строим твёрдотельный лазер без регистрации и смс

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


Лазер. Как много в этом слове… Ну и так далее. Помню, с каким интересом я открывал один из школьных учебников по физике и рассматривал картинки устройства рубинового лазера. Сделать такое было бы сродни получить мощь гиперболоида инженера Гарина. Как всё было просто на картинке учебника! Но повторить такое школьнику в 90-е это было бы что-то из области фантастики. Прошло много лет, окончена кафедра квантовой электроники ЛЭТИ, но мечта осталась. Пора её реализовать! Итак, вперёд.
Читать дальше →

«Скажи мне свой адрес и я скажу как зовут твоего соседа», или как дешево и быстро проверять любой объект недвижимости

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

Все, что понадобится — подтвержденная учетная запись на Госуслугах и небольшая плата за сведения

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

Как удается узнавать собственников недвижимости? Неужели любой может узнать кто владеет тем или иным участком, домом или квартирой?

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

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

Сколько это стоит?

Официальная плата Росреестра от 1 до 5 рублей за одну выписку. Доступ к выпискам оплачивается по УИН на сайте Росреестра пакетами от 100 шт. до 500 000 шт.

Читать далее

Мы Опубликовали Качественный, Простой, Доступный и Быстрый Синтез Речи

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

fiona


Вторая частьhttps://habr.com/ru/post/563484/


Вокруг темы синтеза речи сейчас много движения: на рынке есть огромное число тулкитов для синтеза, большое число закрытых коммерческих решений за АПИ (как на современных технологиях, так и на более старых, т.е. "говорилки") от условных GAFA компаний, большое количество американских стартапов, пытающихся сделать очередные аудио дипфейки (voice transfer).


Но мы не видели открытых решений, которые бы удовлетворяли одновременно следующим критериям:


  • Приемлемый уровень естественности речи;
  • Большая библиотека готовых голосов на разных языках;
  • Поддержка синтеза как в 16kHz так и в 8kHz из коробки;
  • Наличие своих собственных голосов у авторов решения, не нарушающих чужие права и лицензии;
  • Высокая скорость работы на "слабом" железе. Достаточная скорость работы на 1 потоке / ядре процессора;
  • Не требует GPU, команды ML инженеров или какой-либо дополнительной тренировки или для использования;
  • Минимализм и отсутствие зависимостей / использование в 1 строчку / не надо ничего собирать или чинить;
  • Позиционируется именно как готовое решение, а не очередной фреймворк / компиляция чужих скриптов / тулкитов для сбора плюсиков;
  • Решение никак не связано и не аффилировано с закрытыми экосистемами и продуктами Гугла / Сбера / Яндекса / вставить нужное;

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

Отменим ли мы Web?

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

Этот пост написан Ханной Вулфман-Джонс, но включает ответ эксперта по гражданским правам Надин Строссен, экс-президента ACLU

Рождение движения

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

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

К началу 80-х Столлман основал движение за свободное программное обеспечение и стал одним из самых плодовитых его участников, запрограммировав операционную систему GNU, целью которой было создание полностью бесплатного программного обеспечения. Он проводил кампании и бесплатно кодировал бесплатное программное обеспечение, в то время как его менее талантливые коллеги-информатики зарабатывали миллионы.

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

Читать далее

И еще разок про Serverless

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

С публичного релиза AWS Lambda прошло ни много ни мало 6 с лишним лет. Реактивные функции, реагирующие на события, не только позволили по-другому смотреть на архитектуру систем и приложений, но и породили новый buzzword Serverless.

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

Читать далее

Веб-компоненты проще, чем вы думаете

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

Когда я приходил на конференции и видел презентации на тему веб-компонентов, я всегда думал, что это не только изящно, но и довольно сложно. Тысяча строк JavaScript, чтобы сохранить всего 4 строки HTML. Докладчик или неизбежно скрывал за простыми вещами огромное количество JS кода, или погружался в сложные детали, тогда мои глаза начинали закрываться от скуки, и я начинал думать о том, покрывают ли мои суточные выплаты расходы на закуски.

Однако в недавнем проекте, созданном для легкого изучения HTML (Конечно, путем добавления зомби и глупых шуток), я решил, что необходимо описать каждый элемент HTML в спецификации. Не считая той конференции, я впервые начинал знакомство с <slot> и <template> элементами, и, когда я захотел написать что-то интересное о них в проекте, мне пришлось углубиться в тему.

И в процессе углубления я понял: веб-компоненты проще, чем я думал.

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

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

Читать далее

Hello, Word! Разрабатываем браузерное расширение в 2021-м

Время на прочтение5 мин
Количество просмотров20K
Привет!

Меня зовут Саша Коновалов, я разработчик в компании Oxonit и наставник на программе «Мидл фронтенд-разработчик» в Яндекс.Практикуме.

На примере разработки расширения «Hello, Word» я расскажу, как разрабатывать кроссбраузерное расширение со знаниями современного фронтенда:

  • для чего нужно кроссбраузерное расширение;
  • как его разработать под разные браузеры;
  • модульность кода, как переиспользовать компоненты и как современный фронтенд помогает в разработке расширений;
  • какие инструменты можно использовать для сборки и публикации расширений (webpack, web-ext).

Если вам интересно посмотреть исходники, я разместил их на GitHub.

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

Итак, создадим расширение – Hello, Word!


Hello, Word — это расширение для перевода и запоминания слов. Оно стало прототипом моего пет-проекта Wordzzz, поэтому в посте я буду приводить примеры из него.


Рисунок 1. Описание функциональности
Читать дальше →

Как мы сэкономили 2000 USD на трафике из Amazon S3 с помощью nginx-кэша

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

Эта небольшая история — живое свидетельство того, как самые простые решения (иногда) могут оказаться очень эффективными. В одном из проектов руководство взяло курс на оптимизацию бюджета на инфраструктуру. В результате анализа всех статей расходов стало очевидным, что заметно выдаются счета за сетевой трафик из Amazon S3-бакета, где хранится публичная статика веб-приложения. Так появилась задача найти и реализовать максимально недорогой и решающий бизнес-задачу способ.

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность