Социальные сети Рунета
Среда, 15 мая 2024

Как программист в тренажерный зал ходил, и что из этого получилось Мой коллега поделился своей историей, которую я и предлагаю вашему вниманию в качестве лонгрида на уик-энд:) Привет, читатель! Меня зовут Александр Абдуллаев, я тружусь в компании Veeam вот уже 9 лет. Моя карьера в IT за это время сложилась довольно необычно — можно сказа...

[Из песочницы] Навигация в кроссплатформенных приложениях: почему NavController победил angular/router в Ionic 4 Всем привет! Меня зовут Никита Жигамовский, программист в KitApp и я хочу рассказать о своем опыте построения навигации в Ionic 4: проблеме, с которой столкнулся, и ее решении. Я занимаюсь разработкой кросс-платформенных решений для мобильных приложений с 2018 года. Рань...

[Перевод] Современные возможности C++, о которых надо знать всем программистам Автор материала, перевод которого мы сегодня публикуем, говорит, что C++, в его современном виде, если сравнивать его с тем, чем был этот язык несколько лет назад, значительно изменился в лучшую сторону. Конечно, эти изменения произошли далеко не сразу. Например, в былые вре...

[Из песочницы] Как рушатся стереотипы начинающего разработчика при старте игры Сегодня хотел бы уже начать свою деятельность на этом хабе и написать свою первую статью. Она будет посвящаться тому, как были в миг обрушены мои стереотипы об успешной карьере на Google Play для каждого желающего. И да, я начинающий разработчик на Google Play. Но давайте об...

[Перевод] Самые позорные ошибки в моей карьере программиста (на текущий момент) Как говорится, если тебе не стыдно за свой старый код, значит, ты не растешь как программист — и я согласна с таким мнением. Я начала программировать для развлечения более 40 лет назад, а 30 лет назад и профессионально, так что ошибок у меня набралось очень много. Будучи пр...

Окей, Google: как пройти капчу? Здравствуйте. Меня зовут Ибадов Илькин, я студент Уральского федерального университета. В данной статье я хочу рассказать о своем опыте автоматизированного решения капчи компании «Google» — «reCAPTCHA». Хотелось бы заранее предупредить читателя о том, что на момент написани...

Инструменты для автотестов, интеграция Yandex Mapkit 3, крутой дизайн и подход Server Driven UI — анонс Android-митапа Привет! Меня зовут Андрей Данилов, я андроид-разработчик в Авито. Хочу пригласить вас на Android-митап, который пройдёт в нашем офисе 28 сентября. Обсудим опыт интеграции Yandex Mapkit 3 в приложение, инструменты для автотестов, поговорим, как сделать по-настоящему запоминаю...

Функциональные практики и frontend: монады и функторы Всем привет! Меня зовут Дмитрий Руднев, я frontend-разработчик в компании БКС. Начинал я свой путь с верстки интерфейсов различной сложности и всегда уделял повышенное внимание именно интерфейсу: насколько пользователю будет комфортно с ним взаимодействовать, смог ли я донес...

Стажёр Вася и его истории об идемпотентности API Идемпотентность — звучит сложно, говорят о ней редко, но это касается всех приложений, использующих API в своей работе. Меня зовут Денис Исаев, и я руковожу одной из бэкенд групп в Яндекс.Такси. Сегодня я поделюсь с читателями Хабра описанием проблем, которые могут возникну...

Как мы внедрили онбординг новых разработчиков Привет, Хабр! Меня зовут Екатерина, я тимлид команды Биллинга сервиса МойСклад. Примерно два с половиной года назад команда разработки МоегоСклада состояла из 20 человек. За это время мы выросли в три раза, только с начала 2019 года у нас появилось три новых команды. На фон...

От адвоката до тестировщика в Яндексе. История моей стажировки Привет! Меня зовут Кристина lapkina Кочерина, я тестировщик в Яндекс.Маркете. Еще полгода назад у меня был статус адвоката и большая юридическая практика, вечера я проводила в СИЗО. Но в какой-то момент решила, что пришло время заниматься тем, что приносит удовольствие, а не...

[Из песочницы] Генератор мемов на Ruby для привлечения интереса к языку По моему мнению язык Ruby перестал быть популярным как в 2012 — 2014 году и поэтому у меня возникло желание пока про язык совсем не забыли, попробовать его снова донести в массы, ведь Ruby по моему мнению самый удобный и практичный язык для веб разработки. Я с неделю назад ...

[Перевод] За последние 12 лет я ни разу не показал резюме В группах Facebook для начинающих программистов часто спрашивают, как улучшить резюме, чтобы легче получить работу. За свою 12-летнюю карьеру я прошёл путь от джуниора до технического директора — и резюме ни разу мне не пригодилось. Не то, чтобы я не пытался. Просто у меня...

Типовое внедрение мониторинга. Николай Сивко Расшифровка доклада "Типовое внедрение мониторинга" Николая Сивко. Меня зовут Николай Сивко. Я тоже делаю мониторинг. Okmeter это 5 мониторинг, который я делаю. Я решил что я спасу всех людей от ада мониторинга и мы избавим кого-то от этих страданий. Я всегда в своих презен...

GPS часы на Arduino Здравствуйте меня зовут Дмитрий сегодня я расскажу как я создал GPS часы. В конце статьи будет ссылка на прошивку и CAD 3D модель. Читать дальше →

DevProject Award: Моя речь на DeveloperWeek 2019 Всем привет Меня зовут Дмитрий Голев. Я основатель и технический директор Veliov Group. Сегодня я расскажу о сервисе, который был награжден "Dev Project" award от DeveloperWeek. По данному случаю нам предложили рассказать о проекте со сцены DevExec World, ниже текстовая верс...

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

Обзор: сервис для получения экспертных рекомендаций по профессиональной эмиграции в США RB Relocate Привет, Хабр! Меня зовут Александр, уже пару лет я живу в США, развиваю здесь свои проекты и рассказываю о них. Если вы состоите в хабе IT-эмиграция, то наверняка видели мои статьи о переезде, развитии компаний и сложностях, с которыми приходится сталкиваться на этом пути....

[Из песочницы] Как работать со множественными запросами. Композиция, Reducer, ФП Привет, Хабр. Меня зовут Максим, я iOS-разработчик в компании FINCH. Сегодня я покажу вам некоторые практики использования функционального программирования, которые мы наработали у себя в отделе. Читать дальше →

Какой язык программирования выбрать После того, как я написал статью «Почему не нужно учить Python первым языком», я на регулярной основе получаю много вопросов в личку, что лучше выбрать, как быть и так далее. Поэтому в этой статье я расскажу вам свои мысли на этот счет. И самое главное отвечу на «Священный Г...

Выведение Action type с помощью Typescript Всем привет! Меня зовут Дмитрий Новиков, я javascript-разработчик в Альфа-Банке, и сегодня я расскажу вам про наш опыт выведения Action type при помощи Typescript, с каким проблемами мы столкнулись и как их решили. Это расшифровка моего доклада на Alfa JavaScript MeetUp. К...

[Перевод] 10 самых влиятельных языков программирования последних 50 лет и их создатели В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них. Языки, о которых пойдёт...

[Из песочницы] Недоработки в языковом образовании в СНГ: взгляд полиглота Привет! Меня зовут Егор Пак, я полиглот. Я 9 лет прожил за рубежом и недавно вернулся в Россию. Хочу поделиться своими наблюдениями об обучении иностранным языкам в СНГ и за его пределами. По каждому из пунктов я написал советы. Читать дальше →

Ближе к земле: как я сменил коворкинг на дом в деревне От редакции блога: наверняка многие помнят историю про поселок программистов в Кировской области — начинание экс-разработчика из Яндекса впечатлило многих. А наш разработчик решил создать свое поселение в братской стране. Передаем ему слово. Привет, меня зовут Георгий Нов...

Начало пути Всем доброго времени суток!Меня зовут Митрофанов Роман. До недавнего времени я жил спокойной и размеренной жизнью. Но недавно мне передали в пользование 3D-принтер и с этого момента у меня появилось желание попробовать себя на поле брани предпринимательства. Для большей моти...

[Перевод] WolframClientForPython | Новая клиентская библиотека Wolfram Language для Python Оригинал перевода в моём блоге Получение полного доступа к языку Wolfram Language из языка Python Язык Wolfram (Wolfram Language) дает программистам в руки уникальный язык с огромным множеством сложных алгоритмов, а также встроенных знаний об окружающем мире. На протяжении...

[Из песочницы] Подводные камни разработки Google Play Instant Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь Android-разработкой в PROFI.RU. Недавно я написал приложение с мгновенным запуском для наших клиентов. Если вы ещё не знакомы с технологией, приглашаю вас сначала посетить Android Developers. С презентации Instant Apps (G...

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

Презентация приложения для проведения презентаций Здравствуйте, меня зовут Дмитрий Карловский и я иногда выступаю на конференциях, митапах, а так же с недавних пор сам вхожу в команду организаторов одного из них — PiterJS. Недавно у нас был юбилей — 40 проведённых митапов. Но вместо того, чтобы расслабиться и получать поздр...

Такая боль, такая боль, касса как сервис 2:0 В предыдущей статье мы рассказывали о том, как Антиплагиат выбирал себе «облака». В этой поговорим о важной составляющей жизни любой коммерческой компании — получении денег от клиентов. Для получения платежей от частных клиентов мы всегда пользовались услугами агрегаторов. ...

Техподдержка Миран: как все устроено Огонь, в котором вы сгораете, надо обслуживать. В.О.Пелевин, “Generation П” Привет, Хабр! Меня зовут Александр Соловьев, я руководитель технической поддержки дата-центров Миран. Скажите, вот вы пробовали писать учебники? Я — нет. Тем не менее, текст ниже — это своего рода...

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

Как мы внедряли навигацию из Jetpack в боевое приложение. Доклад Яндекс.Еды В мобильных приложениях всё чаще используются deep links. Это ссылки, которые позволяют не просто перейти в приложение извне, а попасть на конкретный экран. Android-разработчик из Яндекс.Еды Владислав Кожушко объяснил, почему мы для реализации deep links внедрили навигацию и...

VShard — горизонтальное масштабирование в Tarantool Меня зовут Владислав, я участвую в разработке Tarantool — СУБД и сервера приложений в одном флаконе. И сегодня расскажу вам, как мы реализовали горизонтальное масштабирование в Tarantool при помощи модуля VShard. Читать дальше →

Тесты на Codeception для PHP-бэкендов Всем привет! Меня зовут Паша, и я QA инженер команды Order Processing в Lamoda. Недавно я выступал на PHP Badoo Meetup. Сегодня хочу представить расшифровку своего доклада. Речь пойдет про Codeception, про то, как мы его используем в Lamoda и как на нем пишем тесты. Чи...

Опыт моделеварения от команды Computer Vision Mail.ru Меня зовут Эдуард Тянтов, я руковожу командой Computer Vision в Mail.ru Group. За несколько лет существования наша команда решила десятки задач компьютерного зрения, и сегодня расскажу вам о том, какие методики мы используем для успешного создания моделей машинного обучени...

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

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

[Из песочницы] Как мы переводили легаси проект на GraphQL Привет, Хабр. Меня зовут Антон Потапов, я iOS разработчик в компании FINCH. Сегодня я хочу подробно рассказать про то как перевести мобильный проект на GraphQL, описать плюсы и минусы этого подхода. Приступим. Краткое введение Читать дальше →

Техническая ипотека: что и кому должен тимлид Всем привет! Меня зовут Александр Афенов. Я тимлид команды разработки Order Processing в компании Lamoda. В прошлом году я выступал на TeamLead Conf 2018. Запись выступления доступна по ссылке. В своем докладе я расскажу историю того, как стал тимлидом, с какими проблемами...

Карьерные стероиды. Путь Самурая Метод карьерного роста «Путь Самурая» как-то язык не поворачивается назвать стероидом, потому что он… Не знаю, правильный, что ли. Честный, настоящий, добрый и пушистый. Потому в жизни встречается не очень часто. Я смог вспомнить только четыре примера, и не все они из моей ...

[Перевод] Самые быстрые Python веб-фреймворки в 2019 В 2018 году Python укрепил свои позиции популярности среди программистов и вошел в Top 3 самых популярных языков на github. Все больше и больше людей переходит на светлую сторону…то есть Python. Появилось еще большее количество разработчиков, которые интересуются данным яз...

[Из песочницы] Легкое создание отчетов на C/C++ Если вы разрабатываете на C/C++ какое-либо ПО для операторов (администраторов) больниц, магазинов, сервисов проката гироскутеров, ремонта сотовых телефонов, то наверняка сталкивались с задачей создания отчетов, чтобы печатать их на принтере, ну или хотя бы в PDF. Существует ...

Как мы внедряли Agile-testing Привет! Меня зовут Алёна Исакова, я ведущий тестировщик в Авито, и я хочу рассказать вам про свой опыт введения Agile-тестирования в команду. Когда я читала доступные на русском языке статьи про Agile-тестирование и ATDD, у меня сложилось впечатление, что я «не модная», «не ...

[Из песочницы] OBD2 reader — диагностика автомобиля При создании приложения мы столкнулись с множеством выборов, проблем и так далее, с которыми попробуем ознакомить вас в этой статье. Как оказалось с автомобилем можно вести диалог, причем довольно таки продуктивный. Естественно для того чтобы организовать общение с автомобил...

Продуктовая разработка на Go: история одного проекта Всем привет! Меня зовут Максим Рындин, я тимлид двух команд в Gett – Billing и Infrastructure. Хочу рассказать про продуктовую веб-разработку, которую мы в Gett ведем преимущественно на языке Go. Я расскажу, как в 2015-2017 годах мы переходили на этот язык, почему вообще е...

Рекламные интеграции: как это работает? Реклама — один из популярных способов монетизации развлекательных проектов и приложений. На примере iFunny я расскажу о механизмах получения рекламы и некоторых сложностях, с которыми можно столкнуться при интеграции рекламных SDK. Читать дальше →

Эксперт рассказал о недостатках «Войти с Apple» Функция «Войти с Apple», которая позволит проходить авторизацию на сайтах, в приложениях и веб-сервисах, не сможет обеспечить стопроцентной защиты пользователям и их данным. Такое мнение выразил Казуки Ота технический директор компании Arm Treasure Data. По его словам, меха...

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

Как устроены сервисы управляемых баз данных в Яндекс.Облаке Когда ты доверяешь кому-то самое дорогое, что у тебя есть, – данные своего приложения или сервиса – хочется представлять, как этот кто-то будет обращаться с твоей самой большой ценностью. Меня зовут Владимир Бородин, я руководитель платформы данных Яндекс.Облака. Сегодня я ...

[Из песочницы] Composer для самых маленьких Доброго дня. Когда я первый раз разбирался с composer, я набросал для себя маленькую шпаргалку и теперь, спустя некоторое время представляю её на суд общественности в несколько доработанном виде. Данная публикация актуальная для тех, кто в первый раз столкнулся с незаменимы...

Обзор SINBO SBS 4449S. Напольные весы с нагрузкой до 180 кг Сегодня мы бы хотели представить вашему вниманию очередную новинку от компании SINBO, которая не перестает радовать своих покупателей стильными и недорогими решениями. Встречайте, перед вами электронные напольные весы SINBO SBS 4449S. Комплект поставки и цена Устройств...

JSConf Budapest 2019 Привет, Хабр! Меня зовут Дмитрий Татаринцев, я работаю frontend-разработчиком в FunCorp. В конце сентября я посетил JSConf в Будапеште. Это одна из серии комьюнити-конференций, проходящих по всему миру. В своем обзоре я кратко расскажу про организацию и более подробно — пр...

[Из песочницы] LeanChess — самые маленькие компьютерные шахматы в мире Меня зовут Дмитрий Шехтман, и я автор самых маленьких компьютерных шахмат в мире. Началось всё с того, что моя (ныне бывшая) девушка предложила написать компьютерные шахматы. Идея меня заинтересовала, и я решил этим заняться. Правда, почитав интернет, я понял, что опоздал л...

[Из песочницы] SSEGWSW: Server-Sent Events Gateway by Service Workers Привет! Меня зовут Саша и я работаю архитектором в Тинькофф Бизнес. В этой статье хочу рассказать о том, как преодолеть ограничение браузеров на количество открытых долгоживущих HTTP-соединений в рамках одного домена при помощи service worker. Если хотите — смело пропуска...

Как в Яндекс.Практикуме побеждали рассинхрон на фронтенде: акробатический номер с Redux-Saga, postMessage и Jupyter Меня зовут Артём Несмиянов, я фулстек-разработчик в Яндекс.Практикуме, занимаюсь в основном фронтендом. Мы верим в то, что учиться программированию, дата-аналитике и другим цифровым ремёслам можно и нужно с удовольствием. И начинать учиться, и продолжать. Любой не махнувший ...

[Из песочницы] К чему приводит лень или как докатиться до написания парсера psd и что из этого может получиться Доброго времени суток! Меня зовут Андрей, я хочу рассказать Вам о своем проекте, который разрабатываю в свободное от работы время. Он уже достиг этапа, когда есть что показать и от этого не станет стыдно. Читать дальше →

Как мы делали безопасную сделку на Фрилансим: даем выбор, режем фичи, сравниваем комиссии Привет, Хабр! Меня зовут Анастасия, я продакт-менеджер Фрилансим. Пару дней назад мы рассказали о введении безопасной сделки. Это услуга для фрилансеров и заказчиков, благодаря которой они могут не беспокоиться о финансовых рисках во время работы. С безопасной сделкой сумм...

Сертификация ISTQB. Часть 1: быть или не быть? Как показывает наше последнее исследование: образование и дипломы, в отличие от опыта и формата работы, почти никак не влияют на уровень оплаты труда QA-специалиста. Но так ли это на самом деле и какой тогда смысл в получении сертификата ISTQB. Почему получение сертификата ...

MOBILE FIRST: Hackathon в OZON Когда релиз раз в две недели, новые фичи приходят от бизнеса, и технический долг требует свое — приходит время хакатона. Меня зовут Дмитрий Антышев, я iOS-разработчик в OZON, расскажу о том, как 27 февраля мы провели первый хакатон для мобильной команды. Читать дальше →

Интеграция с SAP ERP. Реализация мобильного прайс-чекера в магазине В рассматриваемом нами примере интеграции SAP ERP со сторонним ПО, мы будем использовать SAP Connector for Microsoft .NET для получения данных из SAP. Программное обеспечение для терминала сбора данных (ТСД) будет взаимодействовать с Microsoft Internet Information Server (II...

WebAssembly: что и как Эта статья основана на моём выступлении на конференции ITSubbotnik, прошедшем 2 ноября 2019 года в Москве. Вообще я бэкенд программист, но меня заинтересовала эта технология, она позволяет использовать мои знания бэкенда на фронте. Проблема Начнём с проблемы, которая решает...

Если у Вас нет Питона, но есть Керас-модель и Джава Всем привет! В построении ML-моделей Python сегодня занимает лидирующее положение и пользуется широкой популярностью сообщества Data Science специалистов [1]. Также, как и большинство разработчиков, Python привлекает нас своей простотой и лаконичным синтаксисом. Мы использу...

Конференции: начало пути Всем привет, меня зовут Иван Ботанов, я тимлид в Tinkoff.ru и по совместительству — член программного комитета Frontend Conf. Проработав в ПК Frontend Conf полгода, я плотнее погрузился в тематику конференций и познакомился с ними не только с позиции спикера, но и с позици...

Принципы документирования и локализации, или как получить хорошую локализацию минимальными затратами Всем привет! Меня зовут Денисов Александр. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC). В этой статье расскажу о тех проблемах, с которыми мы сталкивались при локализации NCC на английский и нем...

Деплой приложений в VM, Nomad и Kubernetes Всем привет! Меня зовут Павел Агалецкий. Я работаю тимлидом в команде, которая разрабатывает систему доставки Lamoda. В 2018 году я выступал на конференции HighLoad++, а сегодня хочу представить расшифровку своего доклада. Моя тема посвящена опыту нашей компании по деплою с...

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

12 лет в облаке Привет, Хабр! Мы снова открываем техноблог компании МойСклад. МойСклад — облачный сервис для управления торговлей. В 2007 году мы первыми в России придумали перенести торговый учет в облако. Недавно МоемуСкладу исполнилось 12 лет. Пока у нас еще не начали работать сотрудн...

[Из песочницы] Бюджетная водянка для GPU. Знакомство и первый опыт Хочу поделиться с Вами, как Я собирал свою первую «бюджетную», местами самодельную, систему водяного охлаждения. Где-то на пути создания встречались неудобства, а где-то удача улыбалась. Я не ожидаю от СВО каких-то чудес и рекордов, а всего лишь хочу немного снизить температ...

«Кассиры разводят на деньги»: В сети рекомендуют обращать внимание на чеки при оплате проезда на М4 «Дон» Люди могут платить лишние десятки и сотни рублей, сами того не замечая, уверяют в сети. Об этом рассказала столичная автомобилистка, которой совсем недавно пришлось возвращаться в Москву с моря по платной трассе М4 «Дон». Девушка столкнулась с не самой приятной ситуацией, к...

[Из песочницы] Путь от хирургии к геймдеву или первый опыт мобильной разработки на Unity Зачем, кому и от кого Всем привет! Меня зовут Анатолий. Я хочу рассказать историю о наших первых шагах в геймдеве, чтобы поделиться пусть и небольшим, но всё же опытом. Зачем? Потому что всего 6 месяцев назад сам искал подобные публикации, перечитывал и выписывал советы. Над...

Бег — идеальный спорт для удаленщика. Часть 1: Путь до первого забега на сотню километров Меня зовут Олег, я работающий удалённо DevOps-инженер в компании «Флант», и в этой статье я постараюсь убедить вас в том, что занятия бегом — лучший выбор для удалёнщика. Недавно сумма преодоленных мной километров перевалила за цифру 3000. Но так было не всегда. С детства...

Как мы пересадили всю команду на другой язык за один день (на самом деле — нет) func main() { envs.UpdateDotenv() ctx := context_os.Context(context.Background()) res := resources.Get(ctx) ready := readiness.New() ready.AddProbe(func() { //add some initialization }) h := handlers.New(res) s := server.NewServer(ready) s.HandleFunc("/test", h.Tes...

[Перевод] Следующие шаги на пути к Go 2 Состояние Мы вовсю работаем над Go 1.13, релиз которого, надеюсь, состоится в начале августа этого года. Это первый релиз, который будет включать в себя изменения конкретно в языке (а не просто незначительные правки спецификации) после длительного моратория на любые такие из...

Космики: моделирование эволюции многоклеточных организмов. Отчет за 7 лет Здравствуй, Хабр! В 2012 году я написал пост о своем увлечении — Космики: моделирование эволюции многоклеточных организмов С того момента прошло без малого 7 лет, в течение которых я работал над развитием этого проекта. Сегодня я хочу рассказать немного о том, что научил...

[Из песочницы] React Native — применение и критика Чаще всего при выборе этого языка ожидается, что разработка одного приложения под две платформы займёт в два раза меньше времени, чем разработка двух приложений. Но по итогу оказывается, что разработка занимает столько же, если не больше, из-за сложностей, скрытых под внешни...

[Из песочницы] Смок-тестирование релиз-кандидата автотестами за 15 минут Меня зовут Лилия, я QA Lead в одном из проектов финансовой группы БКС (сервис по подбору выгодных для клиента предложений из ряда кредитных продуктов), и сегодня я расскажу, как мы автоматизировали смок-тестирование, с какими проблемами столкнулись и какой стек технологий ис...

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

Рецепты TeamCity. Доклад Яндекс.Такси Меня зовут Эдуард Мацуков, я делаю Таксометр — приложение для водителей Яндекс.Такси. Занимаюсь инфраструктурой и всем, что с ней связано. Какое-то время назад я выступил с докладом — рассказал об опыте дружбы TeamCity с нашим проектом и с разработчиками в целом. Отдельная ч...

[Из песочницы] Микросервисы или монолит: ищем решение Когда задумывается большой продукт или маленький софт начинает вырастать в левиафана, какой путь развития выбрать? Стоит ли все переписывать с нуля или продолжать «исторически сложившиеся» традиции? Да и вообще, стоит ли пересматривать саму концепцию архитектуры? Здравству...

[Из песочницы] Мой путь начинающего разработчика игр Доброго времени суток, уважаемые пользователи! Хочу поделиться с Вами своей маленькой историей создания своей маленькой игры. Ну, начнем с того, что я — школьник. На носу у меня ЕГЭ, надо бы к нему готовиться, а меня все тянет и тянет в эту какую-то заблудшую степь. Но меня...

Что делать, если для вашего любимого языка нет статического анализатора? Ну, если под любимым языком подразумевается русский, английский и т. д., то это в другой хаб. А если язык программирования или разметки, то конечно писать анализатор самим! На первый взгляд, это очень сложно, но, к счастью, существуют готовые многоязыковые инструменты, в кот...

1000 км безмолвия и мрачной ночи: Haval H6 прошёл испытание «дальняком» По словам блогера, китайский кроссовер без особых проблем преодолел внушительное расстояние. Водитель решил подробнее рассказать о том, как он устроил испытание «дальняком» для своего нового автомобиля – кроссовера Haval H6. На своём канале SkySoft автор видео объяснил, что...

Старикам здесь не место? Программируем после тридцати пяти Привет, меня зовут Дмитрий, и я программист. Прошлым летом я получил приглашение Яндекса и перебрался работать в Москву. Недавно мне исполнилось 35 лет. В этой статье я хотел бы затронуть вопрос, который не раз обсуждался на Хабре: насколько реально быть программистом в 3...

Не бойтесь пробовать, или Как я стала программистом в возрасте далеко за 18 Когда вы слышите словосочетание «младший разработчик», то наверняка представляете молодого парня на последних курсах вуза или недавнего выпускника — но уж никак не 30-летнюю женщину с маленьким ребёнком, которая до этого несколько лет преподавала в вузе и от разработки была ...

Про магистратуру Tinkoff.ru в МФТИ Привет, Хабр! Меня зовут Саша Миночкина. Я заканчиваю обучение в магистратуре — решила рассказать, как это вообще устроено. Моя статья будет полезна молодым специалистам, которые хотят поучиться и смотрят в сторону магистратуры от Tinkoff.ru, но боятся что их заставят толкат...

[Перевод] Lombok возвращает величие Java Мы в Grubhub почти во всём бэкенде используем Java. Это проверенный язык, который за последние 20 лет доказал свою скорость и надёжность. Но с годами возраст «старичка» всё-таки начал сказываться. Java — один из самых популярных языков JVM, но не единственный. В последние...

[Из песочницы] Как FL.ru обманывает пользователей, продавая одну услугу два раза, нарушая собственные правила История о том, как я пытаюсь отстоять свои (и не только) права и почему фриланс-ресурс «№1» нужно обходить стороной. На FL.ru я уже более 13 лет. За это время видел free-lance.ru, блоги, конкурсы, Василия Воропаева, Ирину Котову, сходки, монетизацию, провалы, косяки, обм...

Huawei начала работу над 15-дюймовым MateBook Кажется, что прошло уже довольно много времени с того момента, как Huawei представила свои новые ноутбуки, хотя их анонс состоялся в феврале на Mobile World Congress 2019. За это время компания столкнулась с множеством неприятностей со стороны США. Но, тем не менее, Huawei п...

Мой путь от Python к Go — делюсь советами и ресурсами Мне нравится Python. Этот язык был моим фаворитом последние пять лет. Он дружелюбный, эффективный, и его легко выучить. Используется практически для всего: от создания простых скриптов и веб-разработки до визуализации данных и машинного обучения Постепенное «созревание»...

HL 2018. Конспект доклада «Make passwords great again! Как победить брутфорс и оставить хакеров ни с чем» Картинка: источник Привет, Хабр! Меня зовут Ахмадеев Ринат, я Sr. PHP developer. Представляю вашему вниманию конспект доклада Make passwords great again! Как победить брутфорс и оставить хакеров ни с чем от Алексея Ермишкина из Virgil Security с HighLoad++ 2018. Когда я шел...

[Из песочницы] HTML, который мы потеряли Привет, Хабр! Представляю вашему вниманию перевод статьи "The HTML we never had" автора Сергея Кучерова. В этом году исполняется 30 лет с тех пор, как Бернерс-Ли начал разрабатывать язык HTML. С тех пор мы прошли долгий путь, начиная с восхищения новой технологией,...

Code review: вредные советы для контрибьютера и ревьювера Привет! Меня зовут Николай Ижиков. В этом посте я хочу рассказать об одном важном элементе взаимодействия, с которым мы сталкиваемся в процессе разработки ПО, особенно в open source. Это прохождение и проведение code review. Я дам вредные советы, как сделать свою фичу и до...

[Из песочницы] Советы начинающим разработчикам Я работаю iOS разработчиком более шести лет. Мне довелось работать в нескольких различных компаниях и командах. Я работал как в outsource так и в outstaff, довелось даже поучаствовать в startup. И вот спустя несколько лет коммерческой разработки, а также пару-тройку лет прог...

Немного технической лирики о C++ Tools от JetBrains, и при чем тут единороги Начну не с моего типичного “Привет, Хабр! У нас тут очередной крутой релиз”, а с “Привет, меня зовут Настя, я ПММ в JetBrains и я отвечаю за наши инструменты для C++”. Или нет, попробую еще раз, вот так: “Привет, пишет вам C++ разработчик с 8-летним стажем, который 5 лет наз...

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

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

[recovery mode] Poor man's monitoring или мониторим сервера из консоли Всех приветствую уважаемые читатели. В данной статье я расскажу Вам о моём «велосипеде», на котором я делаю мониторинг разных вещей не выходя из консоли. Столкнулся я как-то раз с ситуацией, когда расплодилось довольно много разных проектов и серверов, а настроить нормальны...

Что такое DevOps Определение DevOps очень сложное, поэтому приходится каждый раз запускать дискуссию об этом заново. Только на Хабре тысяча публикаций на эту тему. Но если вы это читаете, то наверняка знаете, что такое DevOps. Потому что я — нет. Привет, меня зовут Александр Титов (@osminog)...

ScrumBut в команде аналитиков: перед взлётом Привет, Хабр! Меня зовут Женя. Я системный аналитик компании «НОРБИТ» и начинающий Scrum-мастер. Я давно присматривалась к Scrum с целью изучить, попробовать и оценить его возможности в нашей команде аналитиков. И вот, после легкого пинка воодушевляющего разговора с РП я пон...

In-App Updates: ускоряем процесс обновления приложения на Android Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку ...

[Из песочницы] Основы реактивного программирования с использованием RxJS Часть 1. Реактивность и потоки Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS. Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в ...

[Из песочницы] О том, как из C# перешел в Elixir/Phoenix Как-то раз пришлось мне менять работу. До этого я работал только с языками типа Python, C++, C# и ещё парочкой подобных. А теперь пришлось начать работать с функциональным языком. Первые впечатления были «да что за фигня?». Однако у меня получилось достаточно быстро адаптиро...

[Из песочницы] Как мы обошли Review Guidelines и запустили сервер на телефоне Привет, Хабр. Меня зовут Антон Логинов, я iOS-разработчик в компании FINCH. Недавно мы столкнулись с проблемой использования web-интерфейсов для азартных игр. В очередном обновлении AppStore Review Guidelines коллеги из Купертино опять ужесточили правила. Если конкретнее, ...

Agile и потребности мозга: управление стрессом Вам приходилось испытывать сильные эмоции на работе? Как насчёт страха, внезапно захлестнувшего ваш мозг? Легко потом работать эффективно? Если ваша организация уже внедрила agile, но с вами такое всё еще случается – что-то идёт не так. Меня зовут Артем Зарафьянц, и я руко...

Технологии, аутсорс и менталитет: как мы внедряли Microsoft Dynamics 365 в немецком офисе Lamoda Объединение учетных систем удаленного филиала и их интеграция с головной структурой — задача достаточно непростая даже в пределах России. А когда заказчик находится за рубежом, весь проект может усложнить отсутствие экспертизы в местном налоговом законодательстве и конфликт ...

Team Lead на удаленке: как я путешествовал с семьей и работал из Греции и Вьетнама Всем привет, меня зовут Александр Буланов, я разработчик и Team Lead в компании Django Stars. Я люблю свою работу, а еще я люблю ездить по миру, исследовать новые страны и вместо одного и того же пейзажа за окном видеть разные. Совмещая работу и путешествия, я побывал уж...

1000 и 1 фидбэк Привет! Меня зовут Евгения Голева, я выступила на TeamLeadConf с докладом про обратную связь и хочу поделиться с вами его вольной расшифровкой. Мне удалось под соусом совсем другого проекта научить инженеров давать обратную связь гораздо лучше, чем они делали это раньше. Для...

Нам не нужны правки перевода: нашему переводчику виднее, как это должно переводиться Этот пост — попытка достучаться до издательств. Чтобы те услышали и отнеслись к своим переводам более ответственно. За свой пусть разработчика я купил много различных книг. Книг самых разных издательств. И малых и больших. Прежде всего — больших издательств, у которых есть ...

[recovery mode] Велосипедофобия Здравствуйте, меня зовут Дмитрий Карловский, и я — профессиональный велосипедист. За всю свою карьеру я сделал кучу велосипедов: больших и маленьких, быстрых и удобных, кривых и прямых. Поэтому для меня довольно дико видеть толковых программистов, делающих большие и сложные ...

Как на самом деле надо сравнивать цены Apple в США и РФ. Личный опыт Сначала хотел написать комментарий к неоднозначным сравнениям цены на продукцию Apple в статье, но текста получилось слишком уж много. Pochtoycom (на самом деле не только они) лукавят, сравнивая цены Apple в РФ и в США. Действительно, в США возможно купить iPhone дешевле,...

Стажировка в ABBYY: компания, с которой можно на «ты» Всем привет! В этом посте я хочу рассказать вам о моей летней стажировке в ABBYY. Постараюсь осветить все моменты, которые обычно интересны студентам и начинающим разработчикам при выборе компании. Надеюсь, что кому-то данный пост поможет определиться с планами на следующее ...

Как мы заново изобретали IP АТС Askozia, после того как проект был продан и закрыт разработчиком Как было все прекрасно до часа X Мы — небольшая команда разработчиков, которая много лет назад занималась разработкой и внедрением программ 1С. В далеком 2011 году мы хорошо знали программные продукты 1С, и не имели опыта в разработке собственных решений. На тот момент компа...

[Перевод] Visual Studio for Mac: 5 новых крутых функций За прошедший год команда Visual Studio for Mac обновила редакторы в среде IDE, чтобы они стали быстрее, плавнее и продуктивнее. Мы сделали это, создав нативный интерфейс редактора macOS на основе того же самого бэкенда редактора, что и Visual Studio в Windows. В версии 8.1 м...

[Из песочницы] Wolfram Function Repository: открытый доступ к платформе для расширений языка Wolfram Привет, Хабр! Представляю вашему вниманию перевод поста Стивена Вольфрама "The Wolfram Function Repository: Launching an Open Platform for Extending the Wolfram Language". Предпосылки состоятельности языка Wolfram Сегодня мы стоим на пороге великих свершений вмест...

[Перевод] Десять лет программирования на Erlang Я присоединился к сообществу Erlang около 10 лет назад, посреди первой фазы хайпа. Нам говорили, что Erlang — это будущее конкурентности и параллелизма. Реализовать их на этом языке проще и быстрее всего, и вы ещё получите бесплатную распределённость. В то время будущее каз...

Как мы в Parallels покоряли Sign In with Apple Думаю у многих уже после WWDC 2019 на слуху Sign In with Apple (кратко SIWA). В материале я расскажу с какими конкретно подводными камнями пришлось столкнуться при интеграции этой штукенции в наш лицензионный портал. Данная статья не совсем для тех, кто только решил разобр...

[Из песочницы] История о том, как разработка игры стала частью моей жизни Здравствуйте! Меня зовут Максим Газизов. Ранее я публиковал пост на Хабре о своих успехах и ошибках в геймдеве. И затем, спустя год работы над своим детищем под названием Wasteland Wars, я пропал из эфира. Всё потому, что меня настолько затянул процесс, как никогда раньше. К...

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

Asus представила парочку низкопрофильных видеокарт GeForce GTX 1650 Когда видеокарта GeForce GTX 1650 только вышла на рынок, компания Asus представила семь моделей этого адаптера. Сейчас у производителя таких уже 11, но мы уделим внимание двум новинкам: GeForce GTX 1650 4GB GDDR5 и GeForce GTX 1650 OC edition 4GB GDDR5. Несмотря на само...

Руководство по реализации авто-возобновляемых подписок в iOS-приложениях Всем привет! Меня зовут Денис, я разрабатываю Apphud – сервис по аналитике авто-возобновляемых подписок в iOS-приложениях. В данной статье я расскажу как настроить, реализовать и валидировать авто-возобновляемые подписки в iOS 12 и iOS 13. Бонусом расскажу о тонких моментах...

[Из песочницы] Настройка IPTV от Ростелеком на роутерах MikroTik В свое время когда я купил роутер MikroTik, передо мной кроме базовой настройки инета встала задача обеспечить работу IPTV, до того момента у меня был установленный Ростелекомом D-link. Сама базовая настройка инета на микротике заняла у меня примерно 10 минут, а вот с IPTV п...

[Из песочницы] Смена карьеры в 35. Мой опыт и первые успехи (предыдущий билд был с ошибкой входа, нужно заново авторизоваться) Всем привет. Меня зовут Марат, мне 40 лет (а в душе примерно 25), я живу в Харькове и хочу поделиться своими мыслями. Предыстория В 25 лет, с небольшим багажом знаний в области программирования я смело не побоявшись, как говаривал один комментатор на украинском телевидени...

Контент-маркетинг, SEO, тесты и опросы: 9 инструментов для продвижения стартапа за рубежом Всем привет! Меня зовут Марго, и я профессиональный маркетолог. В последнее время много работаю с проектами на международных рынках, и хочу делиться этим интересным опытом. Недавно я публиковала подборку инструментов для создания контента на английском языке, а сегодня р...

Компания Amazon Web Services поддержала проект Rust Компания Amazon Web Services проспонсирует проект Rust, который занимается развитием одноименного языка программирования. Инженеры смогут бесплатно использовать ресурсы облачной платформы, чтобы поставлять компоненты компилятора, создавать загрузочные контейнеры и автоматизи...

Все, что вы хотели знать о SwiftUI, но боялись спросить Привет! Меня зовут Ренат, я разрабатываю сервис по аналитике подписок в iOS – Apphud. Как вы знаете, Apple на WWDC 2019 представила свой новый фреймворк SwiftUI, который призван в будущем заменить (или нет?) привычный нам UIKit. SwiftUI позволяет описывать интерфейс приложе...

Как распознать картинки и тексты на телефоне с помощью ML Kit Два года назад Сундар Пичаи, глава Google, рассказал о том, что компания из mobile-first становится AI-first и фокусируется на машинном обучении. Год спустя вышел Machine Learning Kit — набор инструментов, с которым можно эффективно использовать ML на iOS и Android. Об ML ...

Изучение английского: a geeky way Доброй глубокой ночи, незаметно для меня перешедшей в утро. Пишу под влиянием того поста, тоже написанного под влиянием. Да, вторично и уже начинает надоедать, но удержаться просто не могу. Хочу описать свой личный, немного нетривиальный, вовсе не претендующий на способ и м...

nWay открывает свой игровой бэкенд Компания nWay, отметившаяся играми Power Rangers: Legacy Wars и ChronoBlade, открывает доступ к своему бэкенду nWayPlay .

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

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

[Перевод] Я сделал бота, который общается за меня с рекрутерами, и мне понравилось Меня зовут Кевин и я хотел бы рассказать о том, как нехитрым способом отделался от рекрутерского спама. Я фронтенд-разработчик с хорошей работой, стою во главе команды из семи человек. Но рекрутеры заваливают меня письмами до такой степени, что иногда просто неохота заходи...

[Перевод] Как мы разработали девкит Librem 5 полностью на свободном ПО От переводчика: Librem 5 (на рендере) — защищённый смартфон под Linux от компании Purism, который создаётся на максимально открытом железе и софте за счёт краудфандинга. Сегодня расскажем о разработке Librem 5 Developer Kit и о том, как мы использовали в его разработке толь...

Continuous delivery для вашей Kotlin Multiplatform библиотеки Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. В процессе работы мы столкнулись с тем, что в случае с Kotlin Multiplatform continuous integration и continuous del...

[recovery mode] «Жить в кайф» или моя история от прокрастинации к саморазвитию Здравствуй, друг. Сегодня речь не пойдет о сложных и не очень аспектах языков программирования или каком-то Rocket Sience. Сегодня я расскажу тебе короткую историю о том, как я встал на путь программиста. Это моя история и ее уже не изменишь, но если она поможет хотя бы одн...

[Из песочницы] Устранение рекурсии в Python Привет, Хабр! Представляю вашему вниманию перевод статьи "Removing a recursion in Python, part 1" автора Эрика Липперта (Eric Lippert). На протяжении последних 20 лет я восхищался простоте и возможностям Python, хотя на самом деле никогда не работал с ним и не изуч...

Tic Tac Toe, часть 5: Бэкенд на С++ Boost.Beast, HTTP В этой статье рассмотрим реализацию бэкенда с применением C++ Boost.Beast библиотеки на примере синхронного сервера. Та же функциональность, что и в прошлой статье — получаем от бэкенда случайное число от 0 до 8 включительно. Оказалось, что поднимать контейнер для Beast ничу...

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

Школа разработки интерфейсов: разбор заданий для Минска и новый набор в Москве Сегодня открылся новый набор в Школу разработки интерфейсов Яндекса в Москве. С 7 сентября по 25 октября пройдёт первый этап обучения. Студенты из других городов смогут в нём поучаствовать дистанционно или очно — компания оплатит дорогу и проживание в хостеле. Второй, он же ...

[Из песочницы] Зарубежные заказчики и легализация доходов программиста в РФ. Что надо делать и сколько это всё будет стоить? Именно таким вопросом я задался, когда будучи простым физическим лицом и гражданином РФ, устроился на удалённую работу разработчиком ПО в одну иностранную компанию и начал получать заработную плату валютой из-за рубежа. Порывшись в Сети на предмет возможностей легализации с...

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

Пять перспективных языков программирования со светлым будущим (3 года спустя) В 2016-м году я опубликовал перевод статьи про 5 перспективных языков программирования, в которой прогнозировался их рост в ближайшие 2-3 года. Зачастую прогнозы так и остаются прогнозами, без последующего анализа. Но я решил, что это непорядок. И посколько 3 года уже проле...

[Перевод] Виды компиляции в JVM: сеанс черной магии с разоблачением Всем привет! Сегодня вашему вниманию предлагается перевод статьи, в котором на примерах разобраны варианты компиляции в JVM. Особое внимание уделено AOT-компиляции, поддерживаемой в Java 9 и выше. Приятного чтения! Читать дальше →

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

[Из песочницы] Как минимизировать ошибки при интеграции с внешними сервисами: опыт онлайн-брокера За полтора года мы интегрировались по API с двадцатью внешними сервисами. Первые пять интеграций прошли через боль и слезы — мы допустили все возможные ошибки. По несколько раз переписывали код, расставались с партнерами перед самым релизом, потому что не смогли договориться...

[Из песочницы] Рецепты Nginx: авторизация через ЕСИА Для приготовления авторизации через ЕСИА нам понадобится сам nginx и его плагины encrypted-session, headers-more, auth_request, uuid4, set-misc, sign, jwt. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозито...

Эволюция обзора спринта в Agile-команде Привет! Меня зовут Анатолий Савченко, я разработчик и по совместительству скрам-мастер в команде сервиса «Автотека». Как вы уже догадались, мы работаем по Cкраму. Каждые две недели мы проводим обзор спринта — встречу, на которой команда и заинтересованные стороны обсуждают, ...

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

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

[recovery mode] 13 трендов рынка кибербезопасности и защиты информации 2019-2020 Всем привет, меня зовут Александр Дворянский, я коммерческий директор компании «Инфосекьюрити». Сегодня мы рассмотрим основные тренды и векторы развития кибербезопасности, как мировые, так и Российские, которые на мой взгляд будут актуальны в ближайшее время. Читать дальше...

Рецепты Nginx: LDAP авторизация с капчей Для приготовления авторизации с капчей нам понадобится сам nginx и его плагины encrypted-session, form-input, ctpp2, echo, ldap, headers-more, auth_request, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальн...

Багодельня: BUgHunting. Как найти 200 багов за день Всем привет! Меня зовут Юля, и я тестировщик. В прошлом году рассказывала вам про Багодельню — мероприятие, проводимое у нас в компании для чистки бэклога багов. Это вполне жизнеспособный вариант значительно уменьшить его (в разных командах от 10 до 50%) всего за один день. ...

Если бы мир был создан программистом В самом начале был свет, тьма и Stackoverflow, что на самом деле просто комбинация этих двух составляющих. В сияющем новом мире, который был создан программистом, можно увидеть всё это творение и сказать: «Да, всё это наверное, хорошо», но баги скорее всего лежат под поверх...

[recovery mode] Стратегия информационной безопасности: а вы решили, как двигаться вперед? Здравствуйте! Меня зовут Антон Удовиченко, я являюсь начальником отдела аудита «Инфосекьюрити». На основе своего опыта я подготовил инструкцию как разработать стратегию ИБ в компании. Читать дальше →

История компании IM | Секреты производства 3D принтеров Hercules | Исповедь сотрудников Сегодня вы увидите влог не о 3D печати, вы увидите влог о нас! :)Спешим поделиться самым душевным выпуском о том, что такое компания IMPRINTA и как мы преодолели рубеж в пять лет!Внимание! Сегодня мы точно не расскажем вам об успешных внедрениях 3D печати в бизнес, об иннова...

Кастомизация звука: «линзы» из метаматериала для контроля звукового поля При походе в кинотеатр первое на что мы обращаем внимание это картинка. Яркие цвета, четкое изображение без каких-либо огрехов имеют огромное значение для нашего восприятия того фильма, что мы смотрим. Но не стоит забывать и про звук. Если его качество хромает, то какой бы...

Автомобиль Tesla Model 3 в итоге всё-таки не получит пневмоподвеску Компания Tesla, представляя автомобиль Model 3, пообещала в будущем появление полноприводной двухмоторной версии, а также версии с пневмоподвеской. И если двухмоторная Model 3 всё же вышла, пусть этого и пришлось ждать почти год, то о пневмоподвеске потенциальным покупа...

Путь курильщика: как войти в профессию программиста, если ты гуманитарий В детстве Анастасия Бирилло мечтала стать учителем русского языка и литературы. Сегодня она – научный сотрудник JetBrains Research, методист и преподаватель Digital Banana, а также разработчик собственного стартапа. «Гуманитарий – не приговор», – утверждает Настя. На нашей н...

[Из песочницы] Создание лица персонажа для игры «OnAir» Добрый день! Меня зовут Дарья, я 3d artist в студии RainStyle production. В настоящее время мы заняты разработкой игры в жанре Sci-fi horror под названием “On Air”. Игра рассказывает о загадочных событиях, случившихся с главным героем, который волей случая остановился в а...

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

LuaVela: реализация Lua 5.1, основанная на LuaJIT 2.0 Некоторое время назад мы анонсировали публичный релиз и открыли под лицензией MIT исходный код LuaVela – реализации Lua 5.1, основанной на LuaJIT 2.0. Мы начали работать над ним в 2015 году, и к началу 2017 года его использовали в более чем 95% проектов компании. Сейчас хоче...

Дилетант в opensource — lessons learned за 3 года Давно, в 2014 году я сделал для себя небольшую утилитку, чтобы перегонять C#-вьюмодели в TypeScript-код. Она сэкономила мне немало времени и нервов. И вот, в сентябре 2015 я решил оформить свои "эксперименты на коленке" в некую удобоваримую форму и вылить их на GitHub. Так н...

[Из песочницы] Создание игры «35ММ». Постапокалипсис в России Всем доброго времени суток, меня зовут Сергей Носков. Сегодня я бы хотел рассказать о создании моего первого полноценного инди-проекта под названием 35ММ, вышедшего в Steam в 2016 году. История конечно давняя, и с тех пор уже было опубликовано несколько статей и интервью н...

Intel Stratix 10 DX — завершение линейки FPGA Stratix 10 Выводя в свет свою новую 10-нм линейку FPGA Agilex, Intel одновременно завершает формировать уже широко известное и хорошо зарекомендовавшее себя семейство Intel Stratix 10. Последняя из выведенных на рынок разновидностей, 10 DX, характеризуется архитектурными нововведениями...

Автоматизация тестирования платных сервисов на iOS Для тех, кто интересуется темой автоматизации на iOS, у меня две новости — хорошая и плохая. Хорошая: в iOS-приложении для платных сервисов используется только одна точка интеграции — in-app purchases (встроенные в приложение покупки). Плохая: Apple не предоставляет никаких ...

Junior-разработчики — почему мы их нанимаем и как мы с ними работаем Всем привет! Меня зовут Катя Юдина, и я IT-рекрутмент менеджер в Авито. В этой статье расскажу, почему мы не боимся нанимать джуниоров, как мы к этому пришли и какую пользу мы с ними приносим друг другу. Статья будет полезна компаниям, которые хотят нанимать джуниоров, но по...

[Из песочницы] Краткое пособие для изучающих иностранный язык Доброго дня, уважаемое сообщество! К написанию этой статьи меня подтолкнула публикация уважаемого Mumlum Как выучить иностранный язык. Подумалось о том, что мой опыт может кому-то пригодиться. Для начала очень коротко о себе: мне 39 лет, 14 из которых я живу заграницей. В...

[recovery mode] В 2018 мы наконец стали воспринимать всерьез время, проведенное за смартфоном Представляю вашему вниманию перевод статьи Кэтрин Шу (Catherine Shu) опубликованной на TechCrunch. В начале этого года я зашла на Amazon со своего айфона чтобы посмотреть что нового там появилось, и увидела обложку книги «Как Расстаться С Вашим Телефоном» от Кэтрин Прайс. ...

Разработчики против бизнеса Меня зовут Дмитрий Волков. За время работы менеджером продуктов у меня накопилось много историй о победах и провалах, как правильно выстраивать коммуникацию между разработкой и бизнесом, и чего делать ни в коем случае нельзя. Сегодня я расскажу две таких истории. Некоторы...

uWSGI в помощь метрикам. Доклад Яндекса На днях состоялся Moscow Python Meetup #66 — сообщество продолжает обсуждать актуальные инструменты, которые усиливают язык и адаптируют его к разным окружениям. В том числе на митапе прозвучал и мой доклад. Меня зовут Наиль, я делаю Яндекс.Коннект. Рассказ, который я по...

[Перевод] Отладка игр для NES: как она происходит сегодня Если вы когда-нибудь занимались программированием, то знакомы с концепцией багов. Если бы они нам не досаждали, процесс разработки стал бы намного быстрее и приятней. Но эти баги просто ждут момента, чтобы испортить наш код, рабочий график и творческий поток. К счастью, сущ...

Как я работал в Турции и познакомился с местным рынком Объект на «плавающем» фундаменте для защиты от землетрясений. Меня зовут Павел, я руковожу в КРОК сетью коммерческих дата-центров. Мы за последние лет 15 построили заказчикам точно больше сотни ЦОДов и крупных серверных, но этот объект — самый крупный из зарубежных. Он нах...

Аппликативные парсеры на Haskell Мотивация Когда я только начинала осваивать Haskell, меня очень раздражало повсеместное использование сложных абстракций вместо каких-то конкретных решений. Мне казалось, что гораздо лучше всегда следовать принципу KISS и писать велосипеды с использованием элементарных конс...

Как диагностировать проблемы интеграции SDK. Опыт команды разработки Yandex Mobile Ads SDK Всем привет! Меня зовут Дмитрий Фисько, я разрабатываю Yandex Mobile Ads SDK. Наша библиотека предназначена для монетизации мобильных приложений на платформе Android и iOS. Сегодня я хочу рассказать вам о том, как мы упростили разбор сложных ошибок интеграции SDK в Android-п...

[Из песочницы] С чего начать при подборе персонала впервые Я тимлид в небольшой команде разработчиков. Зимой 2018 года один из наших сильных разработчиков ушел в декрет. И я столкнулась с проблемой подбора персонала. Ранее опыта в проведении собеседований и поиске подходящего кандидата у меня не было. Все знания, которые меня были н...

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

[Из песочницы] Опыт организации и проведения корпоративных конференций для аналитиков Всем привет! Меня зовут Николай Толмачев, я руководитель отдела системного и бизнес-анализа в ИТ-компании. В отделе сейчас 22 человека, к ИТ-аналитикам в полном смысле этого слова из них можно отнести 16 человек (остальные ближе к разработчикам SQL или руководителям проектов...

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows...

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 2 Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Чуть больше недели назад мы победили в одном из самых престижных соревнований белых хакеров в СНГ. В прошлой статье (есл...

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

Взгляд изнутри: аспирантура в EPFL. Часть 4.1: повседневная жизнь Посещая любую страну важно не путать туризм с эмиграцией. Народная мудрость В прошлых статьях (часть 1, часть 2, часть 3) мы затронули тему профессиональную, что ждёт молодого и ещё зелёного выпускника ВУЗа при поступлении, а также во время обучения в Швейцарии. Следующая ч...

Отправка статистики из DataFrame в BigQuery на примере статистики Яндекс Директ В этой статье расскажу о том, как я свел статистику по всему контексту в одном месте с помощью BigQuery и Data Studio У меня появилась необходимость визуализировать данные по всем источникам трафика. Для данной задачи я использую Data Studio. Google Ads туда подтягивается ...

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта...

Безликий код убьет программирование, и ничего мы с этим не сделаем Во время очередного спора знакомый озвучил мысль, которая меня очень сильно задела. «В большинстве популярных ЯПов существует очень много разных путей сделать одно и то же. Это приводит к проблемам. А вот в Go всё не так. Философия языка такова, что на Go разные разработчик...

Julia и нейронные сети: Flux Прошло чуть больше года, с тех пор как MIT объявил о релизе высокопроизводительного языка общего назначения Julia. С тех пор язык набирает популярность: он используется в более чем 1500 университетах (в некоторых преподается в качестве первого ЯП), а области применения охва...

Инструменты для запуска и разработки Java приложений, компиляция, выполнение на JVM Ни для кого не секрет, что на данный момент Java — один из самых популярных языков программирования в мире. Дата официального выпуска Java — 23 мая 1995 года. Эта статья посвящена основам основ: в ней изложены базовые особенности языка, которые придутся кстати начинающим “д...

[Из песочницы] Новый язык программирования Mash На протяжении нескольких лет я пробовал свои силы в разработке своего языка программирования. Мне хотелось создать на мой взгляд максимально простой, функциональный и удобный язык. В этой статье я хочу осветить основные этапы своей работы и для начала описать созданный конц...

NLP. Основы. Техники. Саморазвитие. Часть 1 Привет! Меня зовут Иван Смуров, и я возглавляю группу исследований в области NLP в компании ABBYY. О том, чем занимается наша группа, можно почитать здесь. Недавно я читал лекцию про Natural Language Processing (NLP) в Школе глубокого обучения – это кружок при Физтех-школе п...

[Перевод] Питон, пожирающий мир: как побочный проект одного разработчика стал популярнейшим языком программирования Разочаровавшись в недостатках существовавших языков программирования, Гвидо Ван Россум создал язык Python. Сейчас этот язык используют миллионы людей, и Ник Хит беседует с ван Россумом о прошлом и будущем языка. Гвидо Ван Россум в штаб-квартире Dropbox в 2014 году В конце ...

[Из песочницы] Размышления на тему карьеры в IT и советы начинающим Привет, Хабр! Я тут недавно много думал насчёт карьеры, будущего нашей индустрии и так далее. Решил написать статью для тех кто только собирается сюда въезжать, да и вообще возможно кому-то будет интересно, все нижеприведенное чисто мое имхо и многое из того что я скажу прим...

Per Aspera Ad Astra: как развивался сервис на 50 миллионов зрителей Привет, Хабр! Меня зовут Александр Дружков, сейчас я работаю заместителем технического директора ivi, но помню наш сервис маленьким сайтом, который бесплатно показывал интересные фильмы в промежутках между рекламой. Я расскажу, как нам удалось проделать путь до сервиса на 50...

[recovery mode] Что мне не нравится в Python Привет, Хабр! Я подумал о том чего мне не хватает в Python, и что мне не нравится. Дисклеймер: это мое субъективное мнение, оно может не совпадать с Вашим. Я с удовольствием программирую на Python, но у любой технологии (языка программирования в частности) есть свои недос...

[Из песочницы] Анализ скроллинга страниц в Google Data Studio Добрый день, меня зовут Чакканбаев Ильхом я автор блога SeoPulses, хотел бы поделиться переводом и реализацией на практике статьи michaelhoweely.com. Для того чтобы создать полноценный и понятный отчет для блога или статейного сайта в Google Data Studio потребуется использов...

Статическое распределение памяти в микроконтроллерах Холмс: Любезнейший, не подскажите где мы находимся? Пастух: Вы находитесь на воздушном шаре!!! Холмс: Вы должно быть программист. Пастух: Да, но как вы догадались? Холмс: Только программист мог дать столь точный и при этом столь бесполезный ответ. … отрывок из известного а...

BTRFS для самых маленьких Доброго времени суток, Хабравчане.  Я работаю в компании Veeam Software и являюсь одним из разработчиков нашего решения для бэкапа линукс систем. По роду занятий мне довелось столкнуться с BTRFS. Совсем недавно она перешла из статуса «еще не пригодно» в статус «стабильна». И...

Преимущества следования styleguide’ам при разработке Angular-приложений В конце 2018-го года в Самаре состоялся Panda-Meetup #9 Frontend. На этом мероприятии я попробовал себя в новой роли и выступил с докладом. Меня зовут Евгений Холмов. В программирование я пришёл более 10 лет назад, будучи студентом. Последние 5 лет я занимаюсь разработкой си...

Стипендия Фулбрайта: как и зачем? Здравствуйте, уважаемые хабровчане. Меня зовут Андрей, я химик из Киева, выигравший стипендию Фулбрайта FRDP. Сейчас я прохожу стажировку в штате Мичиган. В этой статье я хочу рассказать мой опыт подачи документов, собеседования и поездки. Читать дальше →

Инженерный подход к разработке ПО. От теории к практике Как проверить идеи, архитектуру и алгоритмы без написания кода? Как сформулировать и проверить их свойства? Что такое model-checkers и model-finders? Что делать, когда возможностей тестов недостаточно? Привет. Меня зовут Васил Дядов, сейчас я работаю программистом в Яндекс.П...

[Из песочницы] Про геймификацию. Что это, зачем и как это делать? Взгляд разработчика Меня зовут Илья Ануфриев. Сейчас я Директор по развитию в «Grimwood team». Будучи гуманитарием, я очень плотно связал свою жизнь с техническим прогрессом. Свой путь в IT индустрии я начал с информационной безопасности. Со временем от информационной безопасности я решил пере...

[Из песочницы] Быстрая интеграция с 1С: Предприятие В данной статье я расскажу о наиболее простом, на мой взгляд, способе интеграции сторонних приложений с конфигурациями 1С. Статья будет интересна в первую очередь разработчикам, пишущим на .Net Core, PHP и Python. Способов интеграции с 1С известно много, этому даже посвящен...

[Из песочницы] Как при помощи 2 видов unit-тестов сделать приложение более стабильным Привет, Habr. Меня зовут Илья Смирнов, я Android-разработчик в компании FINCH. Хочу показать вам несколько примеров работы с Unit-тестами, которые мы наработали у себя в команде. В наших проектах используется два вида Unit-тестов: проверка на соответствие и проверка на выз...

[Из песочницы] Моя вторая зима без снега или магистратура в Бельгии Хочу поделиться своим опытом поступления в институт и переезда в Европу. Пришлось столкнуться с недостатком актуальной информации по документам и ценам, и вся имеющаяся сейчас информация в интернете значительно отличается от той реальности, которая меня ожидала. Это история...

[Из песочницы] Amazon: 25 лет успеха на поприще электронной коммерции Привет, Хабр! Представляю вашему вниманию перевод статьи автора «AMAZON: 25 years of success in ecommerce». От гаража до самой дорогой компании мира Понедельник. Утро. Сиэтл. Новые сотрудники Amazon выстраиваются в очереди, чтобы пройти посвящение и пополнить ряды гиганта...

[Перевод] JavaScript: 7 полезных мелочей Автор заметки, перевод которой мы сегодня публикуем, говорит, что в JavaScript, как и в любом другом языке программирования, можно обнаружить множество маленьких хитростей, предназначенных для решения самых разных задач, как простых, так и довольно сложных. Некоторые из подо...

[Перевод] Введение в геномику для программистов Об авторе. Энди Томасон — ведущий программист Genomics PLC. Он с 70-х годов занимается графическими системами, играми и компиляторами; специализация — производительность кода. Гены: краткое введение Геном человека состоит из двух копий примерно по 3 миллиарда пар оснований...

Психоанализ эффекта недооцененного специалиста. Часть 1. Кто и почему 1. Вступление Несправедливость неисчислима: исправляя одну, рискуешь совершить другую. Ромен Роллан Работая программистом с начала 90-ых, мне не однократно приходилось сталкиваться с проблемами недооцененности. Вот например, я такой молодой, умный, со всех сторон положительн...

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

Инженерный подход к разработке ПО Как проверить идеи, архитектуру и алгоритмы без написания кода? Как сформулировать и проверить их свойства? Что такое model-checkers и model-finders? Требования и спецификации — пережиток прошлого? Привет. Меня зовут Васил Дядов, сейчас я работаю программистом в Яндексе, до ...

[Перевод] Асинхронный PHP. Зачем? Асинхронное программирование сегодня востребовано, особенно в веб-разработке, где отзывчивость приложения особенно важна. Никому не хочется ждать, пока приложение «отвиснет», пусть даже в это время оно выполняет запрос к базе данных, отправляет электронное письмо или работ...

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

Танцы с саппортом: виды и формы поддержки Всем привет! Меня зовут Александр Афенов, и я тимлид команды Order Processing в Lamoda. Сегодня хочу рассказать вам о том, как мы разгребаем саппорт. Сначала поговорим про то, как он встраивается в наши процессы и как в целом мы планируем свою работу, спринты и итерации. ...

Куда катится Сеть Лирика В последнее время ловлю себя на том, что в своих рассуждениях о глобальных тенденциях, которые собираюсь где-то систематизировано изложить, всё чаще проскакивает мысль вроде «а вот в наше время молодёжь ...». Даже не буду ссылаться на Папирус Присса и весь тот легенда...

[Перевод] Чем закончилась история с бомжом-программистом Решил разузнать из первоисточников как начиналась, развивалась и закончилась история про то, как программист обучал бомжа. Я даже пролистал всю группу в FB с логами проекта (там чересчур много деталей для поста на Хабре). Самые иллюстрирующие моменты есть в трёх статьях на M...

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

Беспощадная автоматизация. Director's Cut Я хочу рассказать о своем опыте ускорения автоматизации в команде программистов, и о том, какие приемы мы применили на практике, и что из этого получилось. Начальные условия Наш эксперимент по ускорению работы программистов мы проводили в следующих условиях: это было террит...

Бизнес-аналитика. ИТ-объекты, компоненты, инструменты Бизнес-аналитика. ИТ-объекты, компоненты, инструменты Я имел счастье (творчество) и несчастье (признание и внедрение) разрабатывать проект банковской аналитики. Разрабатывать от идеи до реализации и непосредственно участвовать во всех стадиях разработки. Больше всего мне нра...

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

[Перевод] Книга Алана Тьюринга и загадочная записка — Научный детектив Оригинал перевода в моём блоге Как ко мне попала эта книга? В мае 2017 года я получил электронное письмо от моего старого учителя средней школы по имени Джордж Раттер, в котором он писал: «У меня есть копия большой книги Дирака на немецком языке (Die Prinzipien der Quanten...

Обучение детей программированию Здравствуйте. Меня зовут Михаил Капелько. Занимаюсь профессиональной разработкой ПО более 10 лет. Из них последние годы связаны с iOS. В свободное время разрабатываю игры и средства для их создания. Обзор Сегодня хочу рассказать о своём опыте обучения детей программированию,...

Haxe 4: Что нового? Предлагаю вашему вниманию перевод доклада Александра Кузьменко (с апреля этого года он официально работает в качестве разработчика компилятора Haxe) об изменениях в языке Haxe, произошедших с релиза Haxe 3.4. С момента выпуска Haxe 3.4 прошло более чем два с половиной года....

[Из песочницы] Rabbit MQ в системе обработки обращений жителей Недавно успешно сдали пользователям в эксплуатацию систему обработки обращений граждан. Суть такая, что когда у вас нет дома воды, отопления или рядом с вашим домом огромная яма на дороге, вы можете пожаловаться на проблему в гос.органы. Есть разные площадки, где можно под...

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

VBA и Python для автоматизации Excel и MS Office Поводом для заметки послужила статья на Хабре, в которой автор описывал, как он решал на Python задачу сбора и анализа метаданных из файлов Excel. Эта заметка более подробно раскрывает всем известный тезис: Под конкретную задачу надо выбирать наиболее подходящий инструмент п...

[Перевод] Удалённая разработка в VS Code: ваша жизнь никогда не будет прежней У нас в TestMace Visual Studio Code является одним из самых популярных инструментов. И тем более отрадно, что он развивается семимильными шагами. Вашему вниманию предлагается перевод статьи об еще одной вкусной фиче, которая доступна пока только в VS Code Insiders. Согласен,...

Как я отучал Алису от ложных срабатываний на стажировке в Яндексе Привет, Хабр. Меня зовут Алексей Рак, я разработчик голосового помощника Алиса в минском офисе Яндекса. Эту позицию я получил, пройдя здесь, в этой же команде, трехмесячную стажировку в прошлом году. О ней я и собираюсь вам рассказать. Если хотите сами попытать счастья — вот...

Самые интересные металлы Кто не слушает металл — тому бог ума не дал! — Народное творчество Привет, %username%. gjf снова на связи. Сегодня буду совсем краток, потому что через шесть часов вставать и ехать. А рассказать я сегодня хочу о металле. Но не о том, который музыка, — о том мы можем пог...

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

[Из песочницы] Система сохранения/загрузки данных Всем привет! Наверное каждый, кто начал делать игры на Unity столкнулся с дилеммой как сохранить игровой прогресс. Сегодня я вам расскажу про мой способ. Он не новый, но вполне себе рабочий. Если интересно, добро пожаловать под кат. Читать дальше →

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

[Из песочницы] Сервер двухфакторной авторизации LinOTP Сегодня я хочу поделиться, как настроить сервер двухфакторной авторизации, для защиты корпоративной сети, сайтов, сервисов. На сервере будет работать связка: LinOTP + FreeRadius. Требуется: 1 ) Debian 8 (jessie) - Обязательно! Начало: Устанавливаем Debian 8. Читать да...

[Из песочницы] Что они думали о программистах Привет, Хабр! Представляю вашему вниманию перевод статьи «What They Thought of Programmers» автора Robert C. Martin. Интересно и познавательно вернуться в прошлое и посмотреть, как программисты были представлены в массовой культуре. Что люди о нас думали? Знали ли они, кто ...

[Из песочницы] Поймут даже дети: простое объяснение async/await и промисов в JavaScript Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaScript Async/Await and Promises: Explained like you’re five years old» автора Jack Pordi. Каждый, кто считает себя JavaScript-разработчиком, в какой-то момент должен был столкнуться с callback-функциями, промисам...

Архитектура EBA aka реактивность на всю катушку Я пришел в Tinkoff пару лет назад, на новый проект Клиенты и проекты, который тогда только запускался. Сейчас уже не помню своих ощущений от новой тогда для меня архитектуры. Но точно помню: было непривычно, что Rx используется еще где-то, за пределами обычных походов в сеть...

Разворачиваем автоматизацию за пару часов: TypeScript, Protractor, Jasmine Привет, Хабр! Меня зовут Виталий Котов, я довольно много занимаюсь автоматизацией тестирования и мне это нравится. Недавно я участвовал в проекте по настройке автоматизации «с нуля» на стеке TypeScript + Protractor + Jasmine. Для меня этот стек был новым и необходимую инфор...

Обучающий курс по DataPower Материал подготовлен в соавторстве с пользователем wedmeed В 2017 году, когда начинался наш проект во Вьетнаме, мы столкнулись с новым для нас зверем IBM DataPower. IBM DataPower – продукт, представляющий собой gateway между клиентами и бэкендами, предназначенный для фильтр...

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

[Из песочницы] «Толстый и тонкий» или как я осваивал нейросети Часть 1 Введение «Нейросеть» – понятие, известное достаточно давно. В начале двухтысячных, во время учёбы в ВУЗе, я столкнулся с этой любопытной штуковиной. Прочитав научно-популярную литературу по этой теме, я сделал вывод, что это, как минимум, «забавно» и у меня возникла...

[Из песочницы] Тестирование локализации мобильных игр для чайников от чайника Введение Я уже полгода работаю тестеровщиком мобильных игр и хотел немного рассказать о своём самом любимом тестировании — Тестировании локализации. В этой статье я поделюсь своим опытом тестирования именно локализации, в основном будет опора именно на локализацию текста. Н...

E-Dobavki — веб-сервис поиска пищевых добавок на Java и Spring Boot, написанный моими студентами Введение Так получилось, что последние почти два года я преподаю программирование в одной из IT школ Киева. Занялся я этим Just For Fun. Когда-то я вел блог по программированию, потом забросил. Но желание рассказывать полезные вещи заинтересованным людям никуда не делось. Мо...

Новый Хакатон в Tinkoff.ru Привет! Меня зовут Андрей. В Tinkoff.ru я отвечаю за системы принятия решений и управления бизнес-процессами. Я решил кардинально пересмотреть стек систем и технологий в своем проекте, мне были очень нужны свежие идеи. И вот, не так давно мы провели в Tinkoff.ru внутренний...

Нужен готовый джун — научи его сам, или Как мы запускали курс семинаров для студентов Для эйчаров в ИТ не секрет, что если твой город — не миллионник, то найти в нём программиста проблематично, а человека, который владеет нужным стеком технологий и опытом, и того сложнее. В Иркутске айтишный мир тесен. Большинство разработчиков города в курсе существования к...

Две стороны WebView: о быстром запуске проектов и краже персональных данных Привет, Хабр! Меня зовут Евгений, я Full Stack JS разработчик, текущий стек Node.js + React + React Native. В разработке я более 10 лет. В мобильной разработке пробовал разные инструменты от Cordova до React Native. Получив опыт работы с Cardova, я понял, что мне хотелось ...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

Яндекс внедряет RPKI Привет, меня зовут Александр Азимов. В Яндексе я занимаюсь разработкой различных систем мониторинга, а также транспортной сетевой архитектурой. Но сегодня разговор пойдет о протоколе BGP. Неделю назад Яндекс включил ROV (Route Origin Validation) на стыках со всеми пиринг-...

[Из песочницы] Структуры данных для хранения графов: обзор существующих и две «почти новых» Всем привет. В этой заметке я решил перечислить основные структуры данных, применяемые для хранения графов в информатике, а также расскажу о еще паре таких структур, которые у меня как-то само собой «выкристаллизовались». Итак, начнем. Но не с самого начала – думаю, что та...

Управление семисегментным дисплеем с помощью ПЛИС Привет, Хабр! Хочу внести свою посильную лепту в продвижение ПЛИС. В этой статье я постараюсь объяснить, как на языке VHDL описать устройство, управляющее семисегментным дисплеем. Но перед тем как начать, хочу кратко рассказать о том как я пришел к ПЛИС и почему я выбрал язы...

15 советов, как пробиться в App Store приложению с подписками В этой статье я расскажу, как увеличить шансы пройти проверку в App Store приложению с подписками. Если вы когда-либо испытывали проблему с аппрувом приложений с подписками или вот-вот планируете релиз, тогда это будет вам полезно. Всем привет, меня зовут Денис, я основатель...

[Перевод] 20 лет RollerCoaster Tycoon: интервью с создателем игры 31 марта 1999 года была выпущена игра RollerCoaster Tycoon, полностью созданная одним человеком и написанная на языке ассемблера x86. В честь юбилея игры мы публикуем перевод интервью с автором, записанное в 2016 году. Сегодня мало кто помнит имя шотландского программиста ...

Под капотом Screeps — виртуализация в MMO-песочнице для программистов В этой статье я расскажу про одну малоизвестную технологию, которая нашла ключевое применение в нашей онлайн-игре для программистов. Чтобы долго не тянуть резину, сразу спойлер: кажется, что такого шаманства в нативном коде Node.js, к которому мы пришли после нескольких лет ...

Все ругают самописные тестовые фреймворки. А мы своим довольны Меня зовут Елена Расторгуева, я отвечаю за продукт «Фактор» в HFLabs. «Фактор» — чертовски сложный алгоритмический enterprise, он обрабатывает данные в промышленных масштабах. В статье я расскажу, как мы начинали тестировать «Фактор», как развивали автотесты и почему приш...

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

Прямой эфир: как обуздать iOS-разработку в больших командах Всем привет! Меня зовут Женя Суворов, я руководитель команды мобильной архитектуры в Авито. 4 апреля на нашем ютуб-канале и в социальных сетях мы проведем прямой эфир и обсудим, как в iOS-разработке удержать качество продукта на высоком уровне даже при сильном масштабировани...

Intel GPU SGX — храните свои данные на видеокарте. С гарантией Видеокарта Intel Xe с поддержкой GPU SGX С самого момента объявления о том, что Intel будет разрабатывать свою дискретную видео карту, все прогрессивное человечество ожидает, когда планы начнут трансформироваться во что-то материальное. Технических деталей пока известно ма...

Девушка в IT, или 5 советов для амбициозных В конце прошлого года меня пригласили выступить на мероприятии Worldwide Conversation on Women’s Higher Education and Equality in the Workplace на факультете компьютерных наук ВШЭ. Это беседа о том, как в современном мире женщина может построить успешную карьеру в области на...

Samsung предлагает забронировать Galaxy Note10 со скидкой до 600 долларов при обмене на смартфоны Samsung, Apple или Google Южнокорейская компания Samsung сегодня открыла предварительное резервирование Samsung Galaxy Note10, когда до анонса смартфона остается менее двух недель. Компания предлагает потенциальным покупателям в США возможность заранее зарезервировать свои устройства и сэкономит...

[Из песочницы] Как не понимать принципы развития архитектуры SOLID Есть проблема с описанием и толкованием принципов развития архитектуры SOLID (авторства Роберта Мартина). Во многих источниках дается их определение и даже примеры их использования. Изучая их и пробуя использованием примерить на себя, стабильно ловил себя на мысли, что не хв...

От идеи до релиза. Детальный опыт фронтенда Маркета Всегда хочется придумать что-то новое и нужное в своём сервисе. Особенно, если этот сервис любят пользователи. Но откуда брать идеи? Как выделить приоритетные? И как быстро довести идею до продукта, не потеряв ничего важного по пути? Меня зовут Александр, я руковожу одно...

Как работает PageRank: реализация на языке R через линейную алгебру и power-метод Привет, хабровчане! Меня зовут Алексей. На этот раз я вещаю с рабочего места в ИТАР-ТАСС. В данном небольшом тексте я познакомлю вас с методом расчета PageRank © (далее буду называть его ПР) на простых, понятных примерах, на языке R. Алгоритм является интеллектуальным дос...

История второго места в Russian AI Cup 2018: CodeBall Всем привет! Я студент третьего курса, и в самом начале учёбы в университете я узнал про соревнования по искусственному интеллекту Russian Ai Cup, а позже и Mini Ai Cup, и начал в них активно участвовать, показывая неплохие результаты. В этот раз RAIC выпадал прямо на сесс...

Как быстро выучить язык, не наступая на грабли? Мнение полиглота Всем привет! Это моя вторая публикация на Хабре, в ней я хочу своими наблюдениями на тему ошибок, которые совершают люди при изучении иностранных языков. Коротко о себе: меня зовут Егор Пак, я преподаю немецкий, английский и испанский, владею еще несколькими языками на хор...

Парадокс Питона (The Python Paradox) В последнем выпуске подкаста "Цинковый прод" помимо всего прочего обсуждался так называемый парадокс Питона (The Python Paradox). Как ни странно, на Хабре нет практически ни одного упоминания об этом парадоксе. При том, что, несмотря на свою простоту, мысль очень интересная...

Даб-даб 2019: новинки WWDC и мои впечатления Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. Традиционно мы каждый год с коллегами проводим неделю на WWDC. В статье я делюсь своими впечатлениями с конференции: под катом не только важные обновления и обзор сессий, но и немно...

[Из песочницы] Generic Recycler View или как не писать шаблонный код Все мы пишем приложения и у всех нас есть списки. И самое очевидное решение это RecyclerView. Сама по себе реализация не сложна и писать гайд по RecyclerView уже не актуально. Но есть одно но. Каждый раз когда нам нужен список мы создаем класс, в нем прописываем шаблонный ме...

Древности: IBM ThinkPad T40, первый беспроводной Пятнадцать лет назад, в 2003 году, беспроводной интернет из дорогостоящей узкоспециализированной технологии начал превращаться в нечто доступное всем и само собой разумеющееся. Конечно произошло это не сразу: чтобы появился Wi-Fi, нужно было провести домой в каком-то виде пр...

Мой опыт работы в Фирме 1С Кажется, писали уже обо всех: от Яндекса до Мэйлру, от Люксофта до Туту. Но про самую отстраненную, самобытную и изолированную компанию на ИТ рынке еще не было. Расскажу о своем опыте работы в отечественной Корпорации зла. К тому чтобы поделиться своим опытом меня подтолк...

Как взлететь на батарейках или немного теории электропарамотора. Часть 1 1. Вступление. Здравствуйте. Меня зовут Илья. Я из Санкт-Петербурга. Мне 31 год. С давних пор у меня основные увлечения — аккумуляторы, электротранспорт и авиация. В 2010 году я узнал про самый демократичный способ обрести личные крылья: Читать дальше →

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

Бобро поржаловать, или Что нужно знать о бизнесе в Италии Наша компания «ЛАНИТ-ТЕРКОМ» занимается разработкой наукоемкого программного обеспечения — с далекого 1991 года мы активно работаем на иностранных рынках:  в странах Европы и США. В 2015 году мы решили, что логичным шагом вперед для развития бизнеса будет открытие офиса где-...

[Перевод] Оттенки значений в английском языке: как использовать глаголы Advise, Recommend, Suggest Английский язык часто воспринимается как нечто не столь сложное, как некоторые другие языки – взять тот же немецкий. Но на самом деле в нем есть достаточное количество трудностей и тонких моментов («Пишется Ливерпуль, а читается Манчестер» ). Один из них, вызывающий личн...

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

Как мы пробивали Великий Китайский Фаервол (ч.1) Всем привет! На связи Никита — системный инженер из компании SЕMrush. Сегодня я расскажу вам о том, как перед нами встала задача обеспечить стабильность работы нашего сервиса semrush.com в Китае, и с какими проблемами мы столкнулись в ходе ее выполнения (учитывая местонахожд...

Telegram бот для изучения языков Не так давно я переехал в Финляндию и решил, что местный язык знать нужно. Занимаюсь с учителем онлайн, всё идёт хорошо, язык оказался не таким сложным, как казалось, но, пожалуй, самая большая проблема — увеличение словарного запаса. Сначала я решил пользоваться теми решен...

Вы просто не там искали: как находить сотрудников для проекта в техподдержке Привет! Меня зовут Егор Шатов, я старший инженер группы поддержки ABBYY и спикер курса Project Management in IT в Digital October. Сегодня я расскажу о том, каковы шансы пополнить команду продукта специалистом из техподдержки и как правильно организовать перевод на новую до...

Артем Светлов: «Каждый день на работе я вижу, как OSM помогает самым разным компаниям» Артем Светлов aka trolleway — программист из NextGIS, а также любитель архитектуры и общественного транспорта. Он не только правит OpenStreetMap, но и каждый день работает с данными из него. Помимо этого, он увлекается съемкой сферических панорам улиц. Зачем он это делает, ...

Эффективное управление подключениями SignalR Здравствуй, Хабрахабр. В настоящий момент я работаю над созданием движка чата в основе которого лежит библиотека SignalR. Помимо увлекательного процесса погружения в мир real-time приложений пришлось столкнуться и с рядом вызовов технического характера. Об одном из них я и х...

[Перевод] Тестирование Node.js-проектов. Часть 1. Анатомия тестов и типы тестов Автор материала, первую часть перевода которого мы сегодня публикуем, говорит, что он, как независимый консультант по Node.js, каждый год анализирует более 10 проектов. Его клиенты, что вполне оправданно, просят его обратить особое внимание на тестирование. Несколько месяцев...

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

Как разделить фронтенд и бэкенд, сохранив взаимопонимание Как изменить архитектуру монолитного продукта, чтобы ускорить его развитие, и как поделить одну команду на несколько, сохранив согласованность работы? Для нас ответом на эти вопросы стало создание нового API. Под катом вас ждёт обстоятельная история о пути к такому решению ...

[Из песочницы] Блочное программирование Здравствуйте! Начну статью с небольшого отступления. Не посетило ли вас разочарование когда вы впервые столкнулись с программированием? Я предполагал что создание программ происходит путём взаимодействия с каким-то сложным, но очень интересным инструментом, в котором я смог...

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

Как мы сдружили EF 6 с MSSQL и PostgresSQL Жил-был проект на EF 6 с СУБД MSSQL. И появилась необходимость добавить возможность его работы с СУБД PostgreSQL. Проблем здесь мы не ожидали, ведь есть большое количество статей на эту тему, и на форумах можно найти обсуждение похожих задач. Однако, на деле не все оказало...

Самодельный электромобиль — часть 1 ГикТаймс, привет! Сейчас достаточно быстро развивается автомобильная индустрия с применением электрической тяги. Многие самоделкины, да и просто увлеченные люди пытаются собрать нечто подобное своими руками, вот и у меня друг решил этим увлечься, а я в сою очередь ему помога...

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

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

Разработка ТамТам-бота на Python Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как част...

[Из песочницы] Как стать «толковым джуниором». Личный опыт На Хабре есть уже довольно много статей от джуниоров и для джуниоров. Некоторые поражают степенью зажратости юных специалистов, которые в самом начале своего карьерного пути, уже готовы давать советы корпорациям. Некоторые наоборот удивляют несколько щенячим энтузиазмом: «Ой...

Установка и настройка Sonata Admin на Symfony 4 Приветствую всех. В данной статье поговорим об Symfony 4 и Sonata Admin. В процессе установки я столкнулся с массой неточностей в документации и сама документация была раскидана по нескольким местам. Здесь я рассмотрю весь процесс, начиная от создания проекта и заканчивая а...

Рекомендовать нельзя спрятать Привет, Хабр! Меня зовут Николай, и я занимаюсь построением и внедрением моделей машинного обучения в Сбербанке. Сегодня расскажу о разработке рекомендательной системы для платежей и переводов в приложении на ваших смартфонах. У нас было 2 сотни тысяч возможных вариантов пл...

Перенос веб-сервиса на Яндекс.Облако с AWS Всем привет! Меня зовут Виталий Давыдов, я основатель компании Poteha Labs. В конце прошлого года Яндекс запустил новый продукт для разработчиков — Яндекс.Облако, который предоставляет вычислительные мощности и сопутствующие сервисы для обработки и хранения данных. В этой с...

[Перевод] Реверс-инжиниринг клиента Dropbox TL;DR. В статье рассказывается об обратной разработке клиента Dropbox, взломе механизмов обфускации и декомпиляции клиента на Python, а также изменении программы для активации функций отладки, которые скрыты в обычном режиме. Если вас интересует только соответствующий код и ...

[Из песочницы] Со склада в Дагестане — в программисты: как я стал iOS-разработчиком с нуля История о том, как простой парень из депрессивного региона России пытается заявить о себе — и о том, что стереотипы говно. Привет. Меня зовут Даниял Деветов, я iOS-разработчик в компании FINCH. Пока я еще junior, но крепкий, я бы даже сказал «почти middle». Родом я из горо...

Опыт интеграции онлайн кассы Атол с собственной торговой CRM Вокруг онлайн касс в последнее время дикий ажиотаж, 1 июля 2019 заканчивается последняя отсрочка, поэтому и мне пришлось заняться этим вопросом. Тем, у кого 1С или другая система особо можно не напрягаться, но если у вас собственная самописная система, то на ваши плечи ложит...

Как мы делали платежную систему для криптовалюты: пять основных проблем Привет, Хабр! На связи компания B2Broker, провайдер ликвидности и технологических решений для брокерской и биржевой индустрии. Один из наших продуктов — трейдинговая платформа B2BX.exchange. Когда летом 2017 года мы запускали платформу, то задумались о том, как принимать кри...

[Из песочницы] Руководство Google по стилю в C++ Часть 1. Именование Часть 2. Комментарии … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь...

Как запустить java-проект на shell-раннере при пуше в репозиторий GitLab’а Меня зовут Иван Сидоренко, я инженер по тестированию в компании Digital Design. Передо мной стояла задача — внедрить запуск автотестов, написанных на Java Selenium. Я новичок в CI/CD, поэтому столкнулся со множеством проблем. Подробных инструкций в интернете по этой задаче ...

Обзор конференции SQA Days EU Привет, Хабр! Меня зовут Алексей, я занимаюсь обеспечением качества в FunCorp. В конце марта я ездил в Ригу на SQA Days EU. Это первая конференция из линейки SQA Days, которая проводится за пределами СНГ. Программа выглядела многообещающе, а в списке докладчиков было много...

Лояльность на ваш вкус Как в Х5 запускали программы лояльности В магазине практически любой торговой сети кассир задаст вопрос «У вас есть карта магазина?». В этом посте хочу рассказать о программах лояльности для покупателей в магазинах нашей компании. Х5 управляет магазинами нескольких торговых ...

Собираем свой Nginx парой команд Привет! Меня зовут Сергей, я работаю инфраструктурным инженером в команде API платформы tinkoff.ru. В этой статье я расскажу о проблемах, с которыми сталкивалась наша команда при подготовке балансировщиков на основе Nginx для различных проектов. Также расскажу об инструмен...

[recovery mode] Расширение (плагин) SketchUp для проектирования мебели программистом При расчете стоимости новой кухни цена оказалась такой большой, что я решил сделать её сам так как это обойдется в два раза дешевле. Для тренировки решил сделать для себя рабочий стол. Достаточно быстро пришло понимание: чтобы сделать хорошую вещь нужно сделать 3D модель. Эт...

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

О возможностях столичных школ в связи со стартом Всероссийской олимпиады рассказал Исаак Калина «Сегодня нет района, где не было бы школ, в которых можно получить высококачественное образование», – сказал руководитель Департамента образования и науки города Москвы Исаак Калина накануне старта Всероссийской олимпиады школьников. Она проводится по 24 предметам для у...

Говорят, Haskell — язык для гениев и академиков. Правда? Однажды я разговаривал с основателем израильского стартапа, который разрабатывал скоростную базу данных на GPU. В их стеке были Haskell и C++, и основатель жаловался, как тяжело найти людей в команду. В Москву он прилетал в том числе искать хороших программистов. Я остор...

[Из песочницы] Создание минимального Docker-контейнера для Go-приложений Привет, Хабр! Предлагаю вашему вниманию перевод статьи основателя сервиса Meetspaceapp Nick Gauthier «Building Minimal Docker Containers for Go Applications». Время чтения: 6 минут Существует множество, как официальных, так и поддерживаемых сообществом контейнеров для разл...

[Из песочницы] Подводные камни Java Здравствуйте. Хочу представить вашему вниманию небольшую статью. Цель данной публикации: Показать наиболее часто встречающиеся ошибки начинающих и некоторые приемы их исправления. Понятно, что некоторые ошибки могут быть сложными и происходить по тем или иным причинам. Цель...

«Работает совсем не как часики»: Что ждет Toyota RAV4 после 70 000 км пробега, рассказал владелец Владелец Toyota RAV4 2016 года выпуска рассказал, с какими недочетами столкнулся за период эксплуатации автомобиля. Своим опытом владелец поделился на канале Sergiobest Format. Он рассказал, что, находясь на гарантии у официального дилера, каждые 10 000 км пробега проходит ...

[Перевод] Deno — новый Node.js? В нашем проекте, IDE для работы с API TestMace, в качестве основного языка используется TypeScript, поэтому мы активно интересуемся проектами, связанными с данным языком. Сегодня вашему вниманию представляется перевод статьи об инструменте Deno — runtime для TypeScript (но э...

Wargaming Platform: Hello World WTF is Platform? В Wargaming есть отдельное подразделение, которое занимается… занимается разработкой некой «платформы» для издания игр. Объяснить, что такое Платформа, чем она является и не является, весьма сложно — но я попробую. Почему появилась статья Привет! Меня зовут ...

Google берёт контроль над обновлением ряда компонентов Android в свои руки Компания Google вчера представила Android 10. На самом деле это уже не первый анонс, так как первая бета-версия вышла ещё несколько месяцев назад. Но вчера Google раскрыла много нового относительно грядущей операционной системы. Кроме прочего, в Android 10 поисковый гиг...

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

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

[Из песочницы] Как быть опубликованным в Google Play в 2019 Вступление Опубликовать приложение, не нарушив ни чьих прав, стало непростой задачей. За последние пару лет в Google Play добавилось множество новых правил и ограничений, причем некоторые из них действуют только в определенных регионах и бремя отслеживания какие ограничения ...

Третий Тест Тьюринга на русском языке Всем привет! Компании «Нейросети Ашманова» и «Наносемантика» приглашают всех желающих принять участие в 3-м всероссийском Тесте Тьюринга в 2019 году, который мы организуем. Мы ранее проводили этот конкурс в 2015 и 2016 годах вместе с Фондом Сколково и Microsoft. В 2019 го...

[recovery mode] Руководство: Thymeleaf + Spring. Часть 1 Оригинал документации В этом руководстве объясняется, как Thymeleaf может быть интегрирован с Spring Framework, особенно (но не только) Spring MVC. Обратите внимание, что Thymeleaf имеет интеграции для версий 3.x и 4.x Spring Framework и выше, предоставляемые двумя отдель...

[Из песочницы] Механизм контроля версий базы данных в GIT (управление дампами MySQL) Привет, любители Хабра! Сегодня я решил поделиться своим вариантом бекапа данных из MySql и рассказать о том как его можно использовать для контроля версий в Git. И если вам интересно узнать, как можно контролировать состояние базы данных на всех этапах разработки, или прост...

Huawei обещает Android Q для своих смартфонов. Список Устройства Huawei и без того привлекали внимание пользователей, будучи весьма добротными. В связи с последними событиями, понимания их судьбы у многих поубавилось. В  разные источники пугают и успокаивают, кому верить не совсем понятно, потому компании пришлось в очередной...

Arend – язык с зависимыми типами, основанный на HoTT (часть 1) В данном посте мы поговорим о только что выпущенном JetBrains языке с зависимыми типами Arend. Этот язык разрабатывался JetBrains Research на протяжении последних нескольких лет. И хотя репозитории уже год назад были выложены в открытый доступ на github.com/JetBrains, полноц...

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

[Перевод] Написание IOS приложений с использованием паттерна Redux В последнее время я больше занимался фронтенд разработкой, чем мобильной, и я столкнулся с некоторыми очень интересными паттернами проектирования, которые я уже знал, но на самом деле не углублялся в них… до сих пор. Но теперь все это имеет смысл, после использования из в ...

Финал WorldSkills, разработка IT-решений для бизнеса — что это, как это было и почему там победили 1С-программисты WorldSkills — это международное движение, занимающееся проведением профессиональных соревнований для молодых людей в возрасте до 22 лет. Международный финал проводится раз в два года. В этом году местом проведения финала стала Казань (прошлый финал был в 2017 году в Абу-Да...

OpenSceneGraph: Интеграция с фреймворком Qt Введение С одной стороны движок OpenSceneGraph и сам по себе обладает развитой подсистемой управления окнами, обработки событий пользовательского ввода, отправки и приема пользовательских сообщений. Об этом мы довольно подробно поговорили в предыдущих статьях этого цикла. ...

[Из песочницы] Angular schematics, или как я писал свой шаблон для angular cli Здравствуйте, меня зовут Максим. Уже несколько лет я занимаюсь front-end разработкой. Мне часто приходится иметь дело с версткой различных html шаблонов. В своей повседневной работе я обычно пользуюсь сборщиком webpack c настроенным шаблонизатором pug, а также использую мето...

Крадущийся тигр, затаившийся SQLAlchemy. Основы Доброго дня. Сегодня хочу рассказать про ORM SQLAlchemy. Поговорим о том, что это, про его возможности и гибкость, а также рассмотрим случаи, которые не всегда понятно описаны. Данная ORM имеет порог вхождения выше среднего, поэтому я попытаюсь объяснить всё простым языком ...

[Из песочницы] Новые рубежи в Физике Здравствуй, уважаемый читатель! Представляю вашему вниманию перевод с английского языка статьи «Physics, The Next Frontier» авторства Chris Hecker. Я, начинающий Java-разработчик, столкнулся с тем, что материалы по созданию физического внутриигрового движка представлены ли...

Опровергаем четыре стереотипа о языке программирования Rust Язык программирования Rust, созданный и поддерживаемый корпорацией Mozilla, позволяет обычным программистам писать одновременно и безопасные и быстрые системы: от калькуляторов до высоконагруженных серверов. За своё относительно короткое время существования данный язык уже ...

Boost.Spirit, или Добавляем «духовности» фильтрам списков Доброго времени суток, коллеги. Я по-прежнему являюсь разработчиком ISPsystem, и меня все еще зовут Дмитрий Смирнов. Некоторое (довольно продолжительное) время я никак не мог определиться с темой следующей публикации, поскольку материала за последние месяцы работы с Boost.A...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

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

Как из «обычного дизайнера» стать продуктовым Привет! Меня зовут Алексей Свиридо, я дизайнер цифровых продуктов в Альфа-Банке. Сегодня я хочу рассказать о том, как из «обычного дизайнера» стать продуктовым. Под катом вы найдёте ответы на следующие вопросы: Кто такой продуктовый дизайнер и чем он занимается? Подходит ...

[Из песочницы] Arduino таймер Добрый день. Меня зовут Никита Сергеевич, мне 14 лет и в этом посте я имею желание рассказать вам о разработанною мною пол года назад устройстве (и приложении), потому что готовое устройство спаял и собрал мой отец. Хотя возможно такое устройство вы уже видели не раз, но мне...

Spring JPA репозитории в CUBA Тема статьи достаточно узконаправленная, но, возможно, окажется полезной тем, кто разрабатывает свои собственные хранилища данных и думает об интеграции со Spring Framework. Предпосылки Разработчики обычно не очень любят менять свои привычки (зачастую, в список привычек вхо...

Даннинг с Крюгером, Сократ и круги знаний Меня давно занимает тема познания. Так я столкнулся с изречением Сократа — «Я знаю, что ничего не знаю», с эффектом Даннинга-Крюгера. Уверился в истинности этих концепций. Увидел их взаимосвязь. А кроме того мне у меня появилась уверенность, что можно математически обосноват...

HackerRank: JavaScript обошёл Java в качестве самого популярного языка программирования Платформа HackerRank, объединяющая более 5 млн программистов со всего мира, опубликовала результаты своего ежегодного исследования, посвящённого навыкам разработчиков – Developer Skills Report 2019. В опросе приняли участие более 71 тыс. инженеров по программному обеспечению...

Как Браузер для iOS А/Б-тестирование улучшал. Доклад Яндекса Не так давно мы посмотрели, как устроены A/Б-эксперименты в Поиске. Руководитель бригады разработки iOS-версии Яндекс.Браузера Андрей Сикерин sav42 на последней встрече CocoaHeads Russia тоже рассказывал про инфраструктуру А/Б-тестирования, только уже в своем проекте. — П...

[recovery mode] Успехи и неудачи при создании своего проекта (стартапа) Привет, друзья. Решил сегодня написать не о конкретном техническом решении, а о том, зачем эти технические решения вообще нужны. Слово «Стартап» уже порядком набило оскомину, поэтому буду употреблять «Свой проект». В статье будет много философии и аналитики. Так как без этог...

Как создать тёмную тему и не навредить. Опыт команды Яндекс.Почты Меня зовут Владимир, я занимаюсь мобильным фронтендом в Яндекс.Почте. В нашем приложении уже была тёмная тема, но недожатая: мы умели перекрашивать интерфейс и простые письма. Но письма с форматированием оставались светлыми и контрастировали с тёмным интерфейсом, из-за чего...

[Из песочницы] Свой mapper или немного про ExpressionTrees Сегодня мы поговорим про то, как написать свой AutoMapper. Да, мне бы очень хотелось рассказать вам об этом, но я не смогу. Дело в том, что подобные решения очень большие, имеют историю проб и ошибок, а также прошли долгий путь применения. Я лишь могу дать понимание того, ...

Steal: кто крадёт у виртуалок процессорное время Привет! Хочу рассказать простым языком о механике возникновения steal внутри виртуальных машин и о некоторых неочевидных артефактах, которые нам удалось выяснить при его исследовании, в которое мне пришлось погрузиться как техдиру облачной платформы Mail.ru Cloud Solutions...

[Перевод] Почему вам следует использовать pathlib От переводчика: Привет, хабр! Представляю вашему вниманию перевод статьи Why you should be using pathlib и её продолжения, No really, pathlib is great. Много внимания нынче уделяется таким новым возможностям Python, как asyncio, оператору :=, и опциональной типизации. При э...

Synet — фреймворк для запуска предварительно обученных нейронных сетей на CPU Введение Здравствуйте, уважаемые хабровчане! Последние два года моей работы в компании Synesis были тесно связаны с процессом создания и развития Synet — открытой библиотеки для запуска предварительно обученных сверточных нейронных сетей на CPU. В процессе этой работы мне...

[Из песочницы] Почему Swift может стать большим событием в глубинном обучении Здравствуй, Хабр! Представляю вашему вниманию перевод заинтересовавшей меня статьи «Why Swift May Be the Next Big Thing in Deep Learning» автора Max Pechyonkin, в которой автор рассуждает о языке на котором будет осуществляться глубокое обучение в ближайшие годы. Читать дал...

Что делать тимлиду, чтобы команда не выгорала Недавно в подкасте "Цинковый прод" мы обсуждали выгорание. Я решил структурировать некоторые мысли и оформить в виде статьи История первая Однажды, когда я еще был простым линейным разработчиком, я решил пофрилансить. Друг попросил доработать одну довольно хитрую систему, п...

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

Робот, который поедет за вашей улыбкой.ROS.Часть 3: ускоряемся, меняем камеру, исправляем походку В прошлый раз, работая с OpenCV и ROS(robot operating system), используя всю мощь raspberry pi 3b+, удалось поездить по линии, разглядеть улыбки на лицах людей, печальные морды котов и даже поехать к ним навстречу. Но вместе с обнадеживающими первыми шагами в этой области ...

Benchmarking ORM, используемых при создании Android-приложений Привет, Хабр! Меня зовут Артём Добровинский и я Android-разработчик в FINCH. Однажды, кутаясь в дыму утренней сигары, я изучал исходники одной ORM для Android. Увидев там package под названием benchmarks сразу заглянул туда, и был удивлен тем, что все оценки выполнены с помо...

Как устроено A/B-тестирование в Авито Всем привет. Меня зовут Данила, я работаю в команде, которая развивает аналитическую инфраструктуру в Авито. Центральное место в этой инфраструктуре занимает А/B-тестирование. А/B эксперименты — ключевой инструмент принятия решений в Авито. В нашем цикле продуктовой разработ...

Дозиметр для Серёжи. Часть I. Polimaster — Охотники за нуклидом В связи с участившимися вопросами от друзей и знакомых с ключевой фразой «какой дозиметр купить? а у тебя самого что?» решил я собрать воедино разбросанную в разных местах информацию и рассказать о своем приборном парке и всем, что с этим парком связано. Хронологию рассказа ...

Виртуальные Check Point'ы: чек-лист по настройке Многие клиенты, арендующие у нас облачные ресурсы, используют виртуальные Check Point’ы. С их помощью клиенты решают различные задачи: кто-то контролирует выход серверного сегмента в Интернет или же публикует свои сервисы за нашим оборудованием. Кому-то необходимо прогонят...

[Перевод] Заметка о void в JavaScript и TypeScript Если вы, до того, как заинтересовались JavaScript, писали на традиционных языках с сильной типизацией, то вы, возможно, знакомы с концепцией void. Это — тип, использование которого сообщает программисту о том, что соответствующие функции и методы при их вызове ничего не возв...

Как отличить авторизованный сервис Apple от «левого»? Не дайте себя обмануть: под авторизованные центры часто мимикрируют самые обычные!

Назвали модификации и стоимость OnePlus 7 Pro Мы уже сообщали о том, что в общении на форуме с одним из фанатов глава OnePlus заявил о том, что $744 почти хватит, чтобы прикупить новенький OnePlus 7 Pro. Конкретный ценник он озвучивать не стал и восполнить пробел с ценообразованием на флагман решил известный инсайдер Иш...

[Из песочницы] Визуализация количества побед у команд НБА с помощью анимационных столбиковых диаграмм в R Для начала небольшая вводная информация. Меня зовут Владислав и моё знакомство с R состоялось в августе прошлого года. Изучать язык программирования я решил по причине прикладного характера. Мне с детства нравилось вести спортивную статистику. С возрастом это увлечение транс...

[recovery mode] Google BERT — новый поисковый алгоритм. Как изменится ранжирование и что делать сейчас? Google не устает радовать своих пользователей и официально представил новый поисковый алгоритм – Google BERT. Что известно об этом и в чем суть? Давайте разбираться. Google BERT-это алгоритм поисковой системы, призванный улучшить релевантность результатов поисковой выдач...

История борьбы с цензурой: как работает созданный учеными из MIT и Стенфорда метод flash proxy В начале 2010-х годов объединенная группа специалистов из Стенфордского университета, Массачусетского университета, The Tor Project и SRI International представила результаты своего исследования способов борьбы с цензурой в интернете. Ученые проанализировали существовавш...

[Из песочницы] Что такое быть Team Leader Всем привет! Меня зовут Артур Дементьев, я бы хотел поделиться личным опытом и написать несколько статей о том, что из себя представляет менеджмент в IT. А также рассказать о том, на какие грабли наступал и каких ошибок можно было избежать. Все статьи я буду писать, основыва...

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

Apple закроет свой самый маленький фирменный магазин в Японии Как сообщает источник, Apple в Японии вскоре закроет свой самый маленький фирменный магазин. Магазин Apple Sendai Ichibancho также является одним из самых маленьких Apple Store в мире. Открыта эта точка была ещё в 2005 году и на тот момент никаких претензий к её...

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

Как выучить иностранный язык Я расскажу о том, как изучать иностранный язык и буду это делать на примере личного опыта изучения английского языка. Английский я начал учить в 36 лет, а уже сейчас у меня свободный английский язык (как письменный, так и устный), подтверждённый официальными сертификатами. Ч...

Личный опыт. Как мы подключали международную телефонию: сравнение 6 виртуальных АТС Не так давно я столкнулся с необходимостью выбора виртуальной АТС. В бизнесе моей компании произошли кое-какие изменения: появились новые услуги, в том числе направленные не только на сегмент b2b, но и на b2c. А с появлением частных клиентов оказалось и что многие люди по-...

Математика в Gamedev по-простому. Триангуляции и Triangle.Net в Unity Всем привет! Меня зовут Гриша, и я основатель CGDevs. Математика – очень крутой инструмент при разработке игр. Но если скажем без понимания векторов и матриц обойтись в принципе сложно, то алгоритмы триангуляций не столь обязательная вещь, но с помощью них решается достаточн...

[Из песочницы] 5 наиболее распространенных проблем работодателей при подборе IT-специалистов с точки зрения рекрутера-аутсорсера Эта статья написана по материалам моего выступления на HR Meetup #5, проходившего 5 октября 2018 года в г. Ростове-на-Дону. О себе Меня зовут Игорь Шелудько. Я – предприниматель в сфере разработки и продаж программного обеспечения с 2000 года. У меня высшее техническое о...

Небольшая история о том, как удобство иногда стреляет в колено Артем Азарьев, руководитель направления центра компетенций дистанционных каналов обслуживания дирекции информационных технологий МКБ Привет, Хабр! Меня зовут Артем Азарьев, я тимлид Android-команды Московского кредитного банка, и сегодня хочу поговорить о безопасности при...

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

Читай старьё Всю свою сознательную жизнь я любил историю. Интерес к другим предметам приходил и уходил, а к истории оставался всегда. Я люблю документальные и художественные фильмы про историю, легкие книги «про те времена», очерки об известных людях и событиях, научные труды, историю ин...

Uber: новые инвестиции и подготовка к IPO Похоже, что дела у Uber идут как никогда хорошо. Вчера американская компания установила цену за свои акции в диапазоне от 44 до 50 долларов США за ценную бумагу, согласно обновлённой информации из Комиссии по ценным бумагам и биржам США. Uber планирует предложить 180 миллион...

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев...

[Перевод] Конференция DEFCON 19. Три поколения DoS-атак (с участием аудитории в качестве жертв). Часть 1 Меня зовут Сэм Боун, я здесь, чтобы поговорить с вами о DoS-атаках, и вы мне в этом поможете. Мы немного поговорим о хактивистах, которые использовали такие атаки, потому что я нахожу их интересными. Они наглядно показывают, сколько вреда вы можете нанести различными видами ...

[Перевод] 13 приёмов работы с npm, которые помогают экономить время Каждый день миллионы разработчиков, создавая свои JavaScript-приложения, обращаются к npm (или к Yarn). Выполнение команд наподобие npm init или npx create-react-app стало привычным способом начала работы над практически любым JavaScript-проектом. Это может быть сервер, клие...

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

[Перевод] 39 новых фич, которые будут доступны в Java 12 Из замечательного интервью на Хабре: «Саймон Риттер — человек, который работал над Java с самого начала и продолжает делать это в роли заместителя технического директора Azul — компании, работающей над виртуальной машиной Zing JVM и одним из лучших сборщиков мусора, C4 (Cont...

[Перевод] Один язык чтобы править всеми Скрытый под слоем кода, томится язык, жаждущий быть выученным. На момент написания этой статьи запрос «программирование какой язык изучать первым» выдаёт 517 миллионов поисковых результатов. Каждый из этих сайтов будет нахваливать один определённый язык, и 90% из них, в кон...

Монолит для сотен версий клиентов: как мы пишем и поддерживаем тесты Всем привет! Я бэкенд-разработчик в серверной команде Badoo. На прошлогодней конференции HighLoad я выступал с докладом, текстовым вариантом которого и хочу поделиться с вами. Этот пост будет наиболее полезен тем, кто самостоятельно пишет тесты для бэкенда и испытывает пр...

Сколькими способами можно записать факториал на Scheme? Злые языки утверждают, что функциональные языки программирования — «языки для написания факториалов». Чаще всего так определяют язык Haskell, мы же начнем с того функционального языка, который сильно повлиял и на Haskell, и на подмножество средств для функционального програм...

Так ли полезны завтраки? А если полезны, то какие? Ни для кого уже не секрет, что правильное питание – это не изнуряющие диеты, а полноценные приемы пищи, которые могут быть не только вкусными, но и полезными! Для того чтобы зарядить себя энергией на день, необходимо особое внимание уделить завтраку. Многими исследованиями...

Введение в Си. Послание из прошлого столетия ПРЕДИСЛОВИЕ Я несколько раз в своих комментариях ссылался ссылался на книгу Эндрю Таненбаума «Operating Systems Design and Implementation» на ее первое издание и на то, как в ней представлен язык Си. И эти комментарии всегда вызывали интерес. Я решил, что пришло время опубли...

Мифы и легенды системного анализа или чем занимается аналитик в банке Привет! Меня зовут Настя, я аналитик мобильного приложения Альфа-Бизнес. Иногда меня спрашивают о том, чем я занимаюсь на работе. Друзья, родные и, как это ни странно, разработчики. Каждый раз я отвечают по-разному, пытаясь привести наиболее близкие собеседнику примеры. «С...

Исключения в Kotlin и их особенности Наша компания уже более двух лет использует Kotlin в продакшене. Лично я с этим языком столкнулся около года назад. Тут есть много тем для разговора, но сегодня поговорим об обработке ошибок, в том числе в функциональном стиле. Расскажу, как это можно делать в Kotlin. (Фо...

[Из песочницы] Интеграция AppCenter и GitLab Трям, здравствуйте! Хочу рассказать о своём опыте настройки интергации GitLab и AppCenter через BitBucket. Необходимость такой интеграции возникла в ходе настройки автоматического запуска UI тестов для кроссплатформенного проекта на Xamarin. Подробный туториал под катом! Чи...

Merkle Tree: ржавое и быстрое Всем привет! Недавно открыл для себя язык Rust. О своих первых впечатлениях поделился в предыдущей статье. Теперь решил копнуть немного глубже, для этого необходимо что-то посерьёзнее списка. Выбор мой пал на дерево Меркла. В этой статье я хочу: рассказать про эту структур...

Дайджест интересных материалов для мобильного разработчика #300 (27 мая — 2 июня) Понадобилось немногим более 6 лет на выпуск 300 дайджестов. Всем привет, меня зовут Леонид, и это я делаю эти статьи. Читать дальше →

Говорят, выучить Python и стать программистом легко. Правда? Работать в ИТ — круто, но путь в индустрию может быть совсем не таким, как описывают родители или преподаватели в школе. На биржах труда ищут мобильных разработчиков, девопсов, бэкендеров и фронтендеров, но где эти профессии в списках специальностей классических вузов? Мы...

Зачем преподавать, если разрабатывать выгоднее. Разговор с GeekBrains Наверное, люди моего поколения помнят, как родители им в детстве говорили: «иди учиться на юриста, экономиста, менеджера или в иняз — тогда будут работа и деньги». Это был жуткий культ отказа от технических профессий. Родители видели, что произошло с ними — советскими техн...

[Перевод] JavaScript — лучший язык программирования для начинающих. Так это или нет? JavaScript, несмотря на его многочисленные недостатки, возможно, является самым лучшим языком программирования для начинающих разработчиков, и лучшим языком, с которым могут повозиться дети. Шёл 2007 год. Отличное издательство технических книг O’Reilly Media обратилось ко ...

К чему приложить прикладного лингвиста? “Что за дело? Это многих славных путь.” Н.А. Некрасов Всем привет! Меня зовут Карина, и я “совместитель” — совмещаю учёбу в магистратуре и работу технического писателя в Veeam Software. О том, как у меня это вышло, я и хочу рассказать. Заодно кто-то узнает, как можно прийти...

Динамическая генерация DAG в Airflow Всем привет! Меня зовут Антон, в Ростелекоме я занимаюсь разработкой центрального хранилища данных. Наше хранилище состоит из модулей, в качестве оркестратора которых используются несколько инстансов Informatica, часть из которых мы хотим перевести на Airflow в рамках перехо...

[Из песочницы] Восстание машин началось. Google Play Небоскребы, небоскребы, стены, лифты, этажи, расскажу я вам, ребята, про восстание машин… Сцена из КВН Я — самый настоящий инди-разработчик и это моя страсть. Начал свой путь 4.5 года назад, опубликовав свое первое приложение в Google Play. Мной была сделана вся работа по ...

[Перевод] Создание игровых 3D-моделей «для бедных»: путь инди Вы когда-нибудь задумывались о том, как работает небольшая инди-студия, занимающаяся разработкой видеоигр? Создавать игры с очень маленьким бюджетом можно, но для этого необходима смекалка, много труда и ещё больше любви к своему делу. Мы — небольшая команда из Польши. Нас...

[Из песочницы] История второго места в Mini AI Cup 4: Paper IO Меня зовут Волков Игорь. Я работаю в консалтинговой компании на позициях Java разработчика, архитектора, руководителя команды, технического менеджера. Разные роли в зависимости от текущих потребностей проекта. Обратил внимание на конкурсы от mail.ru давно, но активно поучаст...

Для кого нужны курсы JavaScript, (JS) и где их пройти в Харькове В настоящее время компьютерные технологии развиваются как никогда стремительно. Поэтому не удивительно, что специалисты в сфере IT-технологий сегодня предельно востребованы. Множество разных компаний находятся в поиске специалистов данной сферы деятельности, которые в полной...

Обзор iBOX PRO 800 Signature SE. Автомобильный радар-детектор Сегодня мы бы хотели представить вашему вниманию автомобильный радар-детектор от компании iBOX, которая не перестает радовать своих покупателей многофункциональными и доступными решениями. Встречайте, перед вами модель PRO 800 Signature SE. Устройство позволит пользователям ...

Epic Mine 1.3.3 Epic Mine — увлекательная аркада, где вам предстоит сыграть за гнома и добраться до центра земли, чтобы спасти своих сародичей. Хватай кирку и прорубай себе проход. На вашем пути будут разные сложности и даже боссы. Вы сможете различными способами разрушать стены: проруба...

[Из песочницы] Применение Go в производственных системах. Валидаторы Добрый день, Хабр! Я довольно часто начинаю утро с просмотра хабра и наконец решил внести свой вклад в данный процесс изучения интересного. Если всё сложится, то это первая моя статься из цикла применения языка GO на производственных системах. Я хочу рассказать некоторые т...

Что нам стоит Mesh построить: как децентрализованный интернет-провайдер «Medium» делает новый Интернет на базе Yggdrasil Приветствую! Наверняка для вас не будет большой новостью то, что «Суверенный Рунет» не за горами — закон вступает в силу уже 1 ноября этого года. К сожалению, как он будет (и будет ли?) работать — не совсем непонятно: точных инструкций для операторов связи пока что в откры...

Маленькая ложь. Рамки Samsung Galaxy A80 оказались значительно шире, чем показано на рекламных материалах Вчера компания Samsung показала смартфон Samsung Galaxy A80, который получил первую в своем роде выдвижную камеру, позволяющую использовать ее также для получения качественных селфи. Примечательно, что на рекламных материалах устройство изображено практически без ...

[Из песочницы] Система управления движением корабля «Союз-ТМ» В своих хабах я хочу рассказывать вам о управлении пилотируемыми космическими кораблями. В основном о корабле «Союз» и «Space Shuttle». За 15 лет изучения этих кораблей у меня собралось достаточное количество информации о них, а так же знаний которыми я хочу поделится с вами...

[recovery mode] Интеграция Опенкарт с учетными системами Опенкарт — один из самых распространенных интернет-магазинов. Во многих случаях возникает задача интеграции со складской учетной системой (чаще всего с 1С). Интеграция предполагает, как минимум, передачу заказов с ИМ в складскую систему для их обработки и отправки товаров п...

[Перевод] Структуры данных для программистов игр: bulk data Любому программисту будет полезно понимание различных структур данных и способов анализа их производительности. Но на практике мне ни разу не пригождались АВЛ-деревья, красно-чёрные деревья, префиксные деревья, списки с пропусками, и т.д. Некоторые структуры данных я исполь...

Уменьшение размера docker образа с spring boot приложением Добрый день. Недавно передо мной встала задача запуска spring boot 2 приложения в kubernetes кластере используя docker образ. Эта проблема не является новой, достаточно быстро я нашел примеры в гугле и запаковал свое приложение. Я был очень удивлен не найдя alpine образ для ...

[Из песочницы] Самодельный электромобиль — всё не так, как думаешь Всем привет. Учась в университете я собрал маленький электромобильчик, ну или картинг. Его фишкой было то, что всё управление электроприводом, включая тормоза было отдано самодельному контроллеру. И именно о том, как я делал этот маленький автомобильчик, и с какими подводным...

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

Знакомство с Python для камрадов переросших «язык A vs. язык B» и другие предрассудки Для всех хабравчан, у которых возникло ощущение дежа-вю: Написать этот пост меня побудили статья "Введение в Python" и комментарии к ней. К сожалению, качество этого "введения" кхм… не будем о грустном. Но ещё грустнее было наблюдать склоки в комментариях, из разряда "C++ бы...

[Из песочницы] Подписываемся на Kafka по HTTP или как упростить себе Веб-хуки Существует множество способов обработки сообщений из Pub-Sub систем: использование отдельного сервиса, выделение изолированного процесса, оркестрация пулом процессов/потоков, сложные IPC, Poll-over-Http и многие другие. Сегодня я хочу рассказать о том, как использовать Pub-S...

10 верстальщиков на 30 команд. Вы рехнулись? Всем привет! Меня зовут Костя, и я руковожу отделом верстки в компании Wrike. В нашем отделе сейчас работает 10 человек, и все эти ребята пришли в компанию в разное время, у них различный опыт и задачи в отдельных командах. При этом все сотрудники — прекрасные специалисты, к...

Неопределённая параметризация как универсальный метод построения архитектуры приложения на C++ и Java за минимальн. цену C++ — язык запутанный, и существенным его недостатком является сложность создания изолированных блоков кода. В типовом проекте всё зависит от всего. Эта статья показывает, как писать высокоизолированный код, который минимально зависит от конкретных библиотек (включая стандар...

PyDERASN: как я написал ASN.1 библиотеку с slots and blobs ASN.1 это стандарт (ISO, ITU-T, ГОСТ) языка описывающего структурированную информацию, а также правил кодирования этой информации. Для меня как программиста это просто ещё один формат сериализации и представления данных, наравне с JSON, XML, XDR и другими. Он крайне распрост...

[Перевод] Зачем ЯОП? Зачем Racket? Это продолжение статьи «Зачем Racket? Зачем Lisp?», которую я написал примерно через год после того, как открыл для себя Racket. Будучи новичком, я не мог понять дифирамбов, которые со всех сторон сыпались в адрес Lisp. Я не знал, что и думать. Как понимать, что Lisp в конце...

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API. PieceofScript позволяет: описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов достаточно гибко описывать модели в...

Опыт работы в Netflix: Netflix изнутри Недавно мы поделились с Вами материалом о том, как работает Netflix, теперь пришло время рассказать о том, как работается в одной из крупнейших IT-компаний мира. Для этих целей мы расшифровали интервью одного из сотрудников Netflix, который рассказал много интересного о комп...

Неожиданный порядок инициализации наследованных классов в JavaScript Сегодня у меня была небольшая задачка на рефакторинг JS кода, и я натолкнулся на неожиданную особенность языка, о которой на протяжении 7 лет своего опыта программирования на этом ненавистном многими языке не задумывался и не сталкивался. К тому же, я ничего не смог найти ни...

Представлен смартфон OnePlus 7 Pro 5G Формально компания OnePlus сегодня представила три смартфона. Кроме моделей OnePlus 7 и 7 Pro показали ещё и 7 Pro 5G. Подробности о нём не раскрыли, но, судя по изображениям, от обычного OnePlus 7 Pro этот аппарат будет отличаться исключительно модемом. Конечно, и цено...

Практический опыт обновления MySQL 5.7 до версии 8.0 Недавно мы обновили свои сервера с MySQL 5.7 на 8.0. Оставим за рамками этой статьи зачем и какие новые плюшки появились в MySQL 8.0, а вместо этого расскажем о том, с какими сложностями мы столкнулись в процессе обновления. Читать дальше →

Про отзывы по моим услугам Про меня пишут очень много отрицательных отзывов. При этом 80% этих отзывов я даже не знаю кто пишет. Я не  видел в глаза этих людей. Много отрицательных отзывов пишут, те кто просто меня ненавидит.   Но сегодня я приведу всего 2 конфликтных ситуации и вы их оцените. &n...

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

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

Как отключить звук Google Assistant на Android А вы знали, что Google Assistant — единственный голосовой ассистент с ночной темой? Google Assistant – один из лучших голосовых ассистентов. Сказываются обширные языковые познания и практически полное отсутствие проблем с распознаванием человеческой речи. Тем не менее,...

Модернизация 3D принтера FLASHFORGE Dreamer Здравствуйте дорогие мои форумчане! Вот наконец то и я созрел для своего первого поста. Хочу рассказать о себе вкратце: зовут меня Максим, мне 37 лет, работаю я инженером в компании которая занимается производством оборудования для пищевой промышленности. Примерно год назад ...

[Перевод] Восемь ошибок, которые я допускал, когда был джуниором В начале карьеры разработчика часто бывает страшновато: перед тобой встают незнакомые проблемы, многому нужно научиться и приходится принимать сложные решения. И в некоторых случаях мы в этих решениях ошибаемся. Это вполне естественно, и грызть себя по этому поводу не стоит....

Путь историка из HR в Java программисты: немного везения и упорства Наверняка вам известны истории, когда кто-то целенаправленно начал изучать, скажем, Java, еще в школе, потом пошел в институт, на работу – и вот он уже программер в Силиконовой долине с внушительным окладом. Я хочу вам рассказать о совсем необычном пути в кодеры. Из историко...

Как распилить монолит на сервисы и сохранить производительность In-memory кэшей без потери консистентности Всем привет. Меня зовут Александр, я Java-разработчик в группе компаний Tinkoff. В данной статье хочу поделиться опытом решения проблем, связанных с синхронизацией состояния кэшей в распределенных системах. Мы столкнулись с ними, разбивая наше монолитное приложение на микр...

Yandex Retro Games Battle 2019 — разрабатываем игры для ZX Spectrum Привет! Меня зовут Дмитрий Пугачев, я помогаю развивать музей Яндекса, в котором наша команда собирает редкие и интересные экземпляры вычислительной техники. Недавно мы приглашали читателей Хабра посетить наш музей в рамках акции «Ночь музеев». Честно говоря, мы не ожидали, ...

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

[Из песочницы] CQRS: принцип «разделяй и властвуй» на службе у программиста Слоеная архитектура – это спасение в мире корпоративной разработки. С ее помощью можно разгрузить железо, распараллелить процессы и навести порядок в коде. Мы попробовали использовать паттерн CQRS при разработке корпоративного проекта. Всё стало логичнее и … сложнее. Недавно...

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

Российская Конференция Wolfram Технологий и Хакатон 2019 Мы с большим удовольствием хотим пригласить вас на Российскую конференцию Wolfram технологий и хакатон, которые пройдут 10 и 11 июня 2019 г. в Санкт-Петербурге. Не упустите свой шанс встретиться с разработчиками Wolfram технологий и обменяться идеями с другими пользовате...

Сообщество программистов Kottans впервые запускает бесплатный курс по Back-end и сразу на нескольких языках Украинское сообщество программистов Kottans, известное своими бесплатными Front-End курсами, впервые запускает курс по Back-end, сообщает AIN.UA со ссылкой на представителей команды. Курс, охватывающий сразу несколько популярных языков (JavaScript, Python и Golang), стартует...

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

Как студенту оформить бесплатную подписку на Apple TV+ Студенты могут получить доступ к Apple TV+ бесплатно В последнее время развелось так много сервисов, что найти человека, который был бы не подписан хотя бы на один, довольно сложно. По такой модели сегодня работает практически всё – от музыкальных сервисов до офисных приложе...

RC Машинки: Введение Всем привет, сегодня я бы хотел рассказать вам об RC Cars, машинках на радиоуправлении. Это хобби и достаточно веселое. Лично для себя я нахожу в нем хоть какую-то доли реальности. Сидеть целыми днями клепать кнопочки на Backbone и React уже стало рутиной и надо это дело ка...

Руководство по Apple Subscriptions Notifications для iOS. Так ли они хороши на самом деле? Итак, у вас есть приложение с автоматическими возобновляемыми подписками. Оно прекрасно работает, пользователи безудержно оформляют премиум подписки и пишут хвалебные отзывы. Красота! Всем привет, меня зовут Денис, я руководитель проекта Apphud – сервиса аналитики авто-возо...

Выпуск Rust 1.36.0: Трейт Future, стабилизация alloc и MaybeUninit<T> Представляю вашему вниманию перевод публикации о новой версии всеми любимого языка программирования Rust. Введение Команда по разработке языка программирования Rust рада анонсировать новую версию, 1.36.0. Rust — это язык программирования, позволяющий каждому разрабатывать на...

Тред Ариадны: как перестать бояться и полюбить JSR-133. Доклад Яндекса Многоядерные процессоры — обыденность. Рано или поздно любому программисту-практику придется зайти в лабиринт многопоточного программирования и встретиться с населяющими его «чудовищами». Поговорим о том, с чего начать этот путь и какие инструменты и подходы помогут выйти по...

Инженерные подходы и чеклисты: как не сойти с ума в хаосе задач Привет! Меня зовут Олег, и я frontend-разработчик в Альфа-Банке. Я хочу рассказать вам немного философскую историю — про инженерный подход к разработке, про мою первую работу и грабли, которые я там собрал, про то, почему чеклисты очень важны (и спасают жизни). А еще про ...

Настройка vscode под stm32 на примере отладочной платы stm32f429i-disco Всем привет! Сегодня рассмотрим настройку удобной и красивой среды разработки для программиста микроконтроллеров с помощью набора полностью бесплатных инструментов разработки. Все шаги проверены на виртуальной машине со свежеустановленной Ubuntu 16.04 xenial desktop. Подраз...

Julia. Генераторы отчётов и документации Одной из актуальных проблем во все времена, является проблема подготовки отчётов. Поскольку Julia — язык, пользователи которого непосредственно связаны с задачами анализа данных, подготовки статей и красивых презентаций с результатами расчётов и отчётов, то эту тему просто ...

[Из песочницы] IPSec VPN-соединение между MikroTik и Kerio Control Начальные параметры: Головной офис предприятия с двумя пограничными прокси Kerio Control v.9.2.9 build 3171 (за Kerio расположен свич Cisco 3550, определяющий конфигурацию локальной сети офиса). На каждом Kerio организовано по два канала с балансировкой нагрузки до ISP (...

Как не утонуть в рутине, или Наш опыт сравнения AWR-дампов при проведении нагрузочного тестирования Всем привет! Меня зовут Людмила, я занимаюсь нагрузочным тестированием, хочу поделиться тем, как мы выполнили автоматизацию сравнительного анализа регрессионного профиля нагрузочного тестирования системы с БД под СУБД Oracle вместе с одним из наших заказчиков. Целью статьи ...

Анализ данных на Scala — суровая необходимость или приятная возможность? Традиционными инструментами в сфере Data Science являются такие языки, как R и Python — расслабленный синтаксис и большое количество библиотек для машинного обучения и обработки данных позволяет достаточно быстро получить некоторые работающие решения. Однако бывают ситуации...

ARM Assembler Editor: Если гора не идет к Магомеду, Магомед идет к горе… Если кто не знает мне интересно программирование на ассемблере для микроконтроллеров STM32… И все бы хорошо, да только программировать особо негде… Те среды которые есть в настоящий момент заточены больше для языка Си и программирование в них на ассемблере не сильно отличае...

this и ScopeChain в EcmaScript Привет, Хабр! В предыдущей статье мы рассматривали общую теории ООП в применении к EcmaScript и популярное заблуждение начинающих разработчиков относительно отличия ООП в JS и классических языках. Сегодня мы поговорим о двух других не менее важных концепциях EcmaScript, а...

Shader — это не магия. Написание шейдеров в Unity. Введение Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Сегодня хочется поговорить про шейдеры. Умение писать шейдеры (и в целом работать с рендером) очень важно при разработке под мобильные платформы или AR/VR, если хочется добиться крутой графики. М...

Что нового в Swift 5? Привет, меня зовут Илья. Я — iOS разработчик в компании Tinkoff.ru. В этой статье я сделаю краткий обзор основных изменений в Swift 5. Данные изменения описаны в release notes. Для тех, кто еще не ознакомился, добро пожаловать под кат! Читать дальше →

[Перевод] Зашифрованные предпочтения в Андроид Добрый день. Меня зовут Дмитрий и я являюсь преподавателем базового курса «Android разработчик» в Otus. Сегодня я решил поделиться переводом статьи, которую считаю интересной и думаю, что она может быть полезной для многих читателей нашего блога. Хранить данные в SharedPr...

Uibook — инструмент для визуального тестирования React-компонентов с медиа-запросами Всем привет! Меня зовут Виталий Ризо, я фронтенд-разработчик в «Амплифере». Мы сделали Uibook — простой инструмент для визуального тестирования React-компонентов с реальными медиа-запросами. Расскажу, как он работает и чем может быть полезен вам. Читать дальше →

К чему привела миграция с ClickHouse без авторизации на ClickHouse с авторизацией Давайте начнем с небольшой предыстории. У нас в компании на обслуживании стоит проект, который до недавнего времени находился в стадии тестирования/разработки. На тот момент в нём использовался ClickHouse с 3 шардами по 2 реплики в каждом. Учитывая то, что инфраструктура это...

[Из песочницы] Круг замкнулся. Как митапы помогли мне найти работу мечты 4 года назад я с коллегой поехала на свой первый митап. Начальник не отпустил пораньше, поэтому нам пришлось доработать свои регламентированные часы и мчать на такси до места проведения митапа. Мы, как опоздавшие школьники, тихо пробрались на свободные места в самом конце за...

Как использовать Google Lens и Google Переводчик в режиме офлайн Пользоваться переводом можно и без интернета Находясь за границей, нам не всегда хватает знания иностранных языков для того, чтобы объясниться с местными жителями или просто прочитать те же самые вывески магазинов или дорожные указатели. Для того, чтобы избежать неудобств, у...

Huawei Cloud: в PVS-Studio сегодня облачно В нынешний век каждый уже слышал об облачных сервисах. Многие компании освоили этот сегмент рынка и создали свои облачные сервисы самых различных направлений. Наша команда также в последнее время интересуется этими сервисами с точки зрения интеграции с ними анализатора кода...

[Перевод] Конференция BLACK HAT. Уроки выживания при DDOS-атаке 300 Гбит / с. Часть 1 Меня зовут Мэттью Принс, я один из соучредителей и генеральный директор сервиса CloudFlare. Не думайте, что я буду настолько же интересен, как директор АНБ, но я хотя бы постараюсь быть менее противоречивым. На самом деле я частный профессор права, так что я читал Конституци...

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

Что ты такое, Rendering Engine? Или как работает модуль отображения браузера Самым важным для Frontend разработчика является модуль отображения в браузере, он же Rendering Engine (далее RE). В этой статье я хочу взять простую страничку и пройти все этапы вместе с RE от получения первого байта и до отрисовки контента на экран. Пользоваться я, как все...

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

История одного «разработчика» или как новичку написать приложение для iOS Итак май 2018 года. Предпринято 7 попыток за 7 лет начать программировать что-то под iOS. И каждый раз одно и тоже: то Objective-C что-то страшное и не понятное, то нету идеи. И дальше Hello World, раз в год, вообщем дело не заходило… В этот раз новый Xcode и новый для ме...

Как рисует браузер. Лекция Яндекса До недавнего времени я работал в команде Яндекс.Браузера и по следам этого опыта сделал доклад на конференции YaTalks. Доклад был о том, что у браузера под капотом и как ваши странички превращаются в пиксели на экране. Минимум фронтенда, только внутренности браузера, только ...

Гибкие упаковки и этикетки от «Этикетки 7 дней в неделю» Согласитесь, приходя в магазин, в первую очередь вы обращаете внимание на упаковку того или иного товара и лишь потом начинаете смотреть, что же это такое и из чего оно состоит. Если вы решили открыть свое производство, даже самое небольшое, то в первую очередь необходимо за...

[Перевод] Конференция DEFCON 17. Мои неудачи. Часть 1 Как поживаете, парни? Я только что прочитал чей-то твит про то, что люди, которые тратят полдня на конференцию Defcon, просто идиоты. Итак, я собирался начать с того, что много работал над неудачами, но понимаю, что сейчас буду говорить об этом с людьми, которые понимают в н...

Аддиктивные синдромы IT Здравствуйте, меня зовут Алексей. Я работаю в IT-сфере. Много времени провожу в социальных сетях и мессенджерах по работе. И у меня развились различные аддиктивные сценарии поведения. Я отвлекался от работы и заглядывал в Facebook, чтобы посмотреть, сколько «лайков» накапало...

Как научить машину понимать инвойсы и извлекать из них данные Привет, хабр! Меня зовут Станислав Семенов, я работаю над технологиями извлечения данных из документов в R&D ABBYY. В этой статье я расскажу об основных подходах к обработке полуструктурированных документов (инвойсы, кассовые чеки и т.д.), которые мы использовали совсем ...

Facebook объединит свой мессенджер, WhatsApp и Instagram Компания Facebook начала работу над объединением трёх принадлежащих ей сервисов — Messenger, WhatsApp и Instagram. Об этом рассказало издание The New York Times со ссылкой на четыре источника, вовлечённых в разработку.  Источник отмечает, что это скор...

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

За два месяца от идеи до первой продажи: опыт команды Genesis 22 ноября завершилась программа преакселерации конкурса «Цифровой прорыв», участие в которой приняли 53 лучших команд финалистов. В сегодняшнем посте мы расскажем о команде, которая в ближайшем будущем избавит нас от бессмысленного и беспощадного процесса сбора показаний сче...

Онлайн контест по решению задачи из теории игр Привет, Хабр! Меня зовут Миша, и я студент. На факультативе по теории игр мы решаем различные интересные задачи, и я хотел бы поделиться с вами одной из таких. Читать дальше →

Создание плагина для Clang Static Analyzer для поиска целочисленных переполнений Автор статьи: 0x64rem Вступление Полтора года назад у меня появилась идея реализовать свой фазер в рамках дипломной работы в университете. Я начала изучать материалы про графы потока управления, графы потока данных, символьное исполнение и т.д. Далее шёл поиск тулз, проба р...

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

[Из песочницы] Как самостоятельно имплементировать (Proof of Existence) за 2 шага Всем привет! Я работаю в компании, QuantNet, которая проводит конкурсы алгоритмических стратегий. В недавнем времени передо мной встала важная задача — обеспечить гарантии неприкосновенности даты юзеров (это чрезвычайно важно, так как для корректной проверки эффективностей с...

Как мы дорабатываем продукт под конкретного клиента Итак, мы продали клиенту программный B2B продукт. На презентации ему все нравилось, но в ходе внедрения выяснилось, что кое-что все-таки не подходит. Можно конечно сказать что нужно следовать “best practice”, и изменить себя под продукт, а не наоборот. Это может сработат...

Как я стал программистом в 35 лет Всё чаще и чаще встречаются примеры смены профессии, или скорее специализации, людьми в среднем возрасте. В школе мы мечтаем о профессии романтической или “великой”, в институт поступаем по моде или советам, а в итоге работаем там, куда взяли. Я не утверждаю, что так у всех,...

OTRS: LDAP аутентификация, авторизация и синхронизация (FreeIPA, AD) OTRS — система обработки заявок с открытым кодом (Open-source Ticket Request System), написанная на Perl. Существует в двух вариантах: OTRS Business Solution — платная версия ((OTRS)) Community Edition — бесплатная версия Перечислю немного из того фукционала, который ...

[recovery mode] Делаем маршрутизатор и NAS на одном процессоре У меня появился «домашний сервер» на Linux всего через несколько лет, как мне купили компьютер. Сейчас, с того момента прошло уже более пятнадцати лет и большинство этого времени у меня был какой-то второй дополнительный компьютер дома. Однажды, когда пришла пора его обновля...

Let's play a little game with Lamoda Привет! Меня зовут Павел Савельев, я руковожу отделом автоматизации бизнес-процессов в Lamoda. Хочу пригласить вас сыграть в PHP Quest. Для участия в квесте необходимо заполнить анкету. После заполнения анкеты мы вышлем вам на почту головоломку. До 12 августа игроки присылаю...

Сайзеры wxWidgets Привет Хабр! Сегодня хочу немного рассказать о своем опыте применения сайзеров в wxWidgets. Всю свою сознательную 'жизнь' на С++ я провёл в среде C++Builder с редкими вылазками в Misrosoft VC. В поисках чего-то нового решил попробовать связку CodeBlocks и wxWidgets. И сраз...

Обзор Roadgid CityGo 2 WiFi. Двухканальный видеорегистратор с GPS и Wi-Fi Сегодня мы бы хотели представить вашему вниманию очередную новинку компании Roadgid, которая не перестает радовать своих покупателей стильными, многофункциональными устройствами. Встречайте, перед вами двухканальный видеорегистратор с оповещениями о камерах ГИБДД, модель Cit...

JSON API – работаем по спецификации В последнее время веб-разработка разделилась. Теперь мы все не full-stack программисты — мы фронтендеры и бэкендеры. А самое сложное в этом, как и везде, это проблема взаимодействия и интеграции. Фронтенд с бэкендом взаимодействуют через API. И от того, какой это API, наско...

Новый взгляд на изучение и документирование исходного кода TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут. Проблема Недавно я проводил...

Что мы знаем о микросервисах Привет! Меня зовут Вадим Мадисон, я руковожу разработкой System Platform Авито. О том, как мы в компании переходим с монолитной архитектуры на микросервисную, было сказано не раз. Пора поделиться тем, как мы преобразовали свою инфраструктуру, чтобы извлечь из микросервисов м...

Рождение образовательного ПО и его история: от механических машин до первых компьютеров Сегодня образовательное программное обеспечение представляет собой набор приложений для развития определенных навыков у студентов. Но впервые такие системы появились более ста лет назад — инженеры и изобретатели проделали долгий путь от несовершенных механических «образовате...

[Из песочницы] Пример реализации Continuous Integration с помощью BuildBot (Image by Computerizer from Pixabay) Привет! Меня зовут Евгений Черкин, я программист команды разработчиков в горнодобывающей компании Polymetal. Приступая к любому крупному проекту начинаешь задумываться: «Какой же софт лучше использовать для его обслуживания?». IT-пр...

Huawei продала уже более 1 млн умных часов Watch GT Похоже, несмотря на все свои особенности, умные часы Huawei Watch GT пришлись покупателям по душе. Производитель отчитался, что за несколько месяцев с момента старта продаж реализовал уже более 1 млн устройств. Это весьма немало, учитывая, что представили Watch GT в ок...

[Перевод] Государственный университет Адамс. Как взламывать веб-сайты. Часть 1 Ведущий: благодарю всех за то, что пришли на нашу первую лекцию из серии «Беседы о науке и математике во время обеденного перерыва». Вы получили электронные письма, кроме того, вокруг этого здания кампуса расклеены расписания семи лекций, которые состоятся в этом семестре. Я...

Как рекомендовать музыку, которую почти никто не слушал. Доклад Яндекса Почти у всех рекомендательных систем есть трудности с новым или редким контентом — поскольку с ним взаимодействовала лишь незначительная часть пользователей. В своём докладе на встрече «Яндекс изнутри» Даниил Бурлаков поделился набором трюков, которые используются в рекоменд...

Всё, что вы хотели знать о децентрализованном интернет-провайдере «Medium», но боялись спросить Добрый день, Сообщество! Меня зовут Янислав Басюк. Я являюсь координатором общественной организации «Medium». В этой статье я постарался собрать наиболее исчерпывающую информацию о том, что являет собой этот действующий на территории Российской Федерации децентрализованный...

Алан Кей рекомендует почитать старые и забытые, но важные книги по программированию Алан Кей — это магистр Йода для ИТишников. Он стоял у истоков создания первого персонального компьютера (Xerox Alto), языка SmallTalk и концепции «объектно-ориентированного программирования». Он уже много высказывался о своем взгляде на образование в сфере Computer Science ...

OnePlus не оставил выбора потенциальным покупателям OnePlus 7 Pro Популярный производитель смартфонов OnePlus представил три версии смартфона OnePlus 7 Pro в мае этого года. Изначально смартфон был доступен в трех конфигурация: 6 ГБ + 128 ГБ, 8 ГБ + 256 ГБ и 12 ГБ + 256 ГБ. Спустя полгода OnePlus незаметно удалила модели с самыми мале...

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

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

Удаленка и контроль, свобода и госструктуры. Разговор со Staply Пару лет назад «Ведомости» писали о «защищенном российском мессенджере», который собираются внедрять в государственные структуры. Даже пересказ этой новости одним предложением отдает в голове звуком стройно шагающих молотков. Представляешь, как где-нибудь за высоким заборо...

[Перевод] Понимание разницы между СI и СD: «если что-то вызывает боль, делайте это почаще» Disclaimer. Костис Капелонис — Developer advocate (человек, защищающий и отстаивающий принципы программной разработки) Codefresh, первой платформы CI/CD для Kubernetes и контейнеров. Миссия Codefresh «Автоматизировать и упрости всё, от кода до облака». Как инженер-программис...

Компилятор Ангуляр в 200 строчек кода Привет. Меня зовут Роман, и я не изобретатель велосипедов. Мне нравится фреймворк Angular и экосистема вокруг него, и я разрабатываю с его помощью свои веб-приложения. С моей точки зрения, основное преимущество Angular в долгосрочной перспективе базируется на разделении кода...

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

[Из песочницы] История одного небольшого проекта длиною в двенадцать лет (о BIRMA.NET впервые и начистоту из первых рук) Рождением этого проекта можно считать маленькую идею, посетившую меня где-то в конце 2007 года, которой суждено было обрести свой окончательный вид лишь 12 лет спустя (на данный момент времени – конечно же, хотя и текущая реализация, по мнению автора, весьма удовлетворительн...

Вселенная отчётности на SAP Примерно 4 года назад мы перенесли нашу систему отчётности с Oracle на SAP Hana. Сегодня в ней хранится около 10 000 таблиц, ею пользуется 38 000 человек и в ней ежедневно происходят более 5000 процессов загрузки. На текущий момент наш комплекс, на котором работает система...

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

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 3 Представляем вашему вниманию третью часть перевода материала о пути, который прошла компания Dropbox, внедряя у себя систему проверки типов Python-кода. → Предыдущие части: первая и вторая Читать дальше →

[Перевод] Изменения модальной презентации экранов в iOS 13 Всем привет! Меня зовут Илья, я из Tinkoff.ru. Я перевел для вас статью от Geoff Hackworth про то, как изменился стиль модальной презентации в iOS 13, на что это повлияло и как работает обратная совместимость с предыдущими версиями iOS и Xcode. Читать дальше →

Edition-Based Redefinition: можно ли в production? Привет! Меня зовут Антонина, я Oracle-разработчик IT-подразделения «Sportmaster Lab». Работаю тут всего два года, но благодаря дружной команде, сплоченному коллективу, системе наставничества, корпоративному обучению, накопилась та самая критическая масса, когда хочется не пр...

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

Memcached plugin от MySQL: инструкция по осторожному применению Здравствуйте! Меня зовут Максим Матюхин, я PHP-программист Badoo. В своей работе мы активно используем MySQL. Но иногда нам не хватает её производительности, поэтому мы постоянно ищем возможности ускорить её работу. В 2010 году Yoshinori Matsunobu представил NoSQL-плагин ...

Обзор Baseus Letour Dual U Charger. Сетевая зарядка с двумя USB Согласитесь, пользователи мобильных устройств часто встречаются с проблемой, когда не хватает разъемов для зарядки, либо во время очередной поездки приходится брать сразу несколько адаптеров питания, чтобы была возможность зарядить свой смартфон и планшет в одно время. Сегод...

Evrone и DataArt проведут в Воронеже серию митапов Первая встреча, посвященная языку Ruby, пройдет 20 апреля в отеле Ramada Plaza. На следующей, в начале июня, речь пойдет о машинном обучении, далее — два митапа о Java и фронтенд-разработке и большая итоговая конференция. Компания Evrone известна, прежде всего, проведени...

Нанимать и наниматься: отвечаем на вопросы с двух сторон Друзья, мы у себя в банке вместе с сообществом MskDotNet провели митап, на котором решили обсудить самые горячие вопросы найма и приема на работу. Пообщались с несколькими специалистами из разных компаний. Лайфхаками и своими историями поделились: Игорь Маслов MaslovIgor, ...

Обзор iBOX Z-800. Автомобильный видеорегистратор Сегодня мы бы хотели представить вашему вниманию видеорегистратор от компании iBOX, которая не перестает радовать своих покупателей стильными, многофункциональными, и в то же время доступными решениями. Встречайте, перед вами модель Z-800. Устройство получило под свое управл...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)