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

[Перевод] Функциональное мышление. Часть 10 Вы представляете, это уже десятая часть цикла! И хотя до этого повествование было сфокусировано на чисто функциональном стиле, иногда удобно переключиться на объектно-ориентированный стиль. А одними из ключевых особенностей объектно-ориентированного стиля являются возможност...

Как работает сжатие в объектно-ориентированной архитектуре памяти Команда инженеров из MIT разработала объектно-ориентированную иерархию памяти для более эффективной работы с данными. В статье разбираемся с тем, как она устроена. Читать дальше →

Введение в контекстно-ориентированное программирование на Kotlin Это перевод статьи An introduction to context-oriented programming in Kotlin В этой статье я постараюсь описать новое явление, которое возникло как побочный результат стремительного развития языка Kotlin. Речь идет о новом подходе к проектированию архитектуры приложений и б...

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

[Перевод] Монады за 15 минут Вступление На конференции YOW! 2013 один из разработчиков языка Haskell, проф. Филип Вадлер, показал, как монады позволяют чистым функциональным языкам осуществлять императивные по сути операции, такие, как ввод-вывод и обработку исключений. Неудивительно, что интерес аудито...

Функциональный Swift Что объединяет «каррирование», «монады», «алгебраические типы данных»? Не только тот факт, что часть разработчиков старается обходить эти слова стороной, но еще и функциональное программирование. Под заботливым руководством Евгения Елчева мы погрузились в функциональную пара...

Julia: функции и структуры-как-функции Несмотря на то, что в языке Julia по замыслу отсутствует «классическое» объектно-ориентированное программирование с классами и методами, язык предоставляет средства абстрагирования, ключевую роль в которых играет система типов и элементы функционального программирования. Рас...

[Из песочницы] Объектно-ориентированное программирование в Java и Python: сходства и отличия Привет, Хабр! Представляю вашему вниманию перевод статьи “Object-Oriented Programming in Python vs Java” автора Джона Финчера. Реализация объектно-ориентированного программирования (ООП) в языках Java и Python отличается. Принцип работы с объектами, типами переменных и прочи...

[Перевод] Функциональное мышление. Часть 9 Это уже 9 часть серии статей по функциональному программированию на F#! Уверен, на Хабре существует не очень много настолько длинных циклов. Но мы не собираемся останавливаться. Сегодня расскажем про вложенные функции, модули, пространства имен и смешивание типов и функций в...

Книга «Head First. Kotlin» Привет, Хаброжители! У нас вышла книга для изучения Kotlin по методике Head First, выходящей за рамки синтаксиса и инструкций по решению конкретных задач. Эта книга даст вам все необходимое — от азов языка до продвинутых методов. А еще вы сможете попрактиковаться в объектно-...

[Перевод] Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ Объектно-ориентированное программирование — чрезвычайно плохая идея, которая могла возникнуть только в Калифорнии. — Эдсгер Вибе Дейкстра Возможно, это только мои ощущения, но объектно-ориентированное программирование кажется стандартной, самой распространённой парадигмой ...

[Перевод] Функциональное мышление. Часть 11: Финал Сегодня мы заканчиваем нашу серию статей о функциональном программировании. Получилось 11 частей. Я считаю, что это достижение. В этой статье реализуем простой стековый калькулятор (также известный как "обратная Польская нотация"). Реализация практически полностью построена ...

[Из песочницы] Три Больших Лжи о JavaScript Привет, Хабр! Представляю вашему вниманию мой перевод статьи "The Three Big Lies About JavaScript" автора Richard Kenneth. Данная статья была написана в мае 2016 года, однако ее актуальность, на мой взгляд, не исчезла. Я начинающий программист, поэтому возможны оши...

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

[Перевод] 10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик Мне довольно часто встречаются разработчики, которые не слышали о принципах SOLID (мы подробно рассказывали о них здесь. — Пер.) или объектно-ориентированного программирования (ООП), или слышали, но не используют их на практике. В этой статье описываются преимущества прин...

[Перевод] Функциональное мышление. Часть 8 Привет, Хабр! Мы с небольшим запозданием возвращаемся с новогодних каникул с продолжением нашей серии статей про функциональное программирование. Сегодня расскажем про понимание функций через сигнатуры и определение собственных типов для сигнатур функций. Подробности под кат...

AppsCast #10: Функциональный Swift В этом миниюбилейном выпуске гость из солнечного Красноярска (sic!) Евгений Ёлчев поведал нам о функциональном программировании и как эта парадигма находит себе место в Swift и других языках.

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

Отчет с завтрака с Чарльзом Уэзереллом, автором культовой книги «Этюды для программистов» Завтрак с Чарльзом Уэзереллом, автором культовой книги «Этюды для программистов», затянулся на четыре часа. В конце-концов официантка попросила нас из ресторана в Пало-Альто, сказав что в ресторан большая очередь, а мы тут с восьми утра заседаем. За это время мы обсудили мас...

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

«Освоить F# не сложнее, чем Entity Framework или WPF»: интервью со Скоттом Влашиным Кого расспрашивать про F#, как не человека, посвятившего этому языку подробный сайт? Скотт Влашин создал ресурс «F# for Fun and Profit», знакомый многим хабравчанам: на Хабре переводили оттуда и серию статей «Функциональное мышление», и статью «Железнодорожно-ориентированн...

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

Функциональные интерфейсы… в VBA "…те, кто не прочь поглазеть на любителя прилюдно свалять дурака, пусть понаблюдают, как я доказываю, что Java и Visual Basic – близнецы, разлученные при рождении, а С++ им даже не дальний родственник." Брюс Мак-Кинни “Крепкий орешек Visual Basic” Введение Постоянный инте...

[Перевод] Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 1 Возможно, вы уже слышали о так называемом «функциональном» программировании. Возможно, вы даже подумываете о том, что вам стоит его как-нибудь попробовать. Ни в коем случае этого не делайте! Функциональное программирование полно недочётов, оно не подходит для реальных пр...

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

Подсказки для функционального заказчика. Press Δ to read Иногда так не хватает подсказок по ходу выполнения миссии ИТ-проекта – «жми W, чтобы двигаться вперёд». Чтобы хоть как-то помочь тем, кто оказался на месте функционального заказчика (от него очень многое зависит на проекте), мы собрали топ-10 подсказок, которые помогут успе...

[Из песочницы] Кризис DDD сообщества Год назад Максим Аршинов (marshinov) выступил с докладом "Быстрорастворимое проектирование". Отличный доклад, харизматичный спикер, полезные материалы в конце. Этот доклад изменил моё понимание того что я делал — кто из нас не пытался интуитивно применить pipeline-архитектур...

Quarkus — сверхзвуковая субатомная Java. Краткий обзор фреймворка Введение Седьмого марта компания RedHat (вскоре — IBM) представила новый фреймворк — Quarkus. По словам разработчиков, этот фреймворк базируется на GraalVM и OpenJDK HotSpot и предназначен для Kubernetes. Стек Quarkus включает в себя: JPA/Hibernate, JAX-RS/RESTEasy, Eclipse...

Функциональное программирование с точки зрения EcmaScript. Чистые функции, лямбды, имутабельность Привет, Хабр! Сегодня мы начнём говорить на очень важную тему — функциональное программирование. Значение ФП в современной веб-разработке трудно переоценить. Архитектура любого крупного современного проекта включает в себя пользовательские библиотеки функций и на собеседов...

[Из песочницы] Принцип открытости-закрытости Привет, Хабр! Перед вами перевод статьи Роберта Мартина Open-Closed Principle, которую он опубликовал в январе 1996 года. Статья, мягко говоря, не самая свежая. Но в рунете статьи дяди Боба про SOLID пересказывают только в урезанном виде, поэтому я подумал, что полный перево...

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

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

[Перевод] Руководство по API Коллекций Vavr VAVR (известная ранее, как Javaslang) — это некоммерческая функциональная библиотека для Java 8+. Она позволяет писать функциональный Scala-подобный код в Java и служит для уменьшения количества кода и повышения его качества. Сайт библиотеки. Под катом — перевод статьи, сис...

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 2. Маски и текстуры Маски и текстуры Продолжаем серию уроков о том, как стать художником по поверхностям. Первая часть находится здесь. Маски В прошлой части мы рассмотрели принципы работы каналов и нашу первую маску, которую я создал — маску прозрачности. Маска прозрачности в примере с котик...

Что такое музыкальное программирование — кто и почему им занимается, устраивая настоящие live-сессии Ранее мы говорили об инструменте OpenMusic. Он позволяет писать музыку, используя объектно-ориентированный подход. Сегодня речь пойдет о людях, которые создают композиции с помощью специализированных языков программирования. И зачастую делают это «в прямом эфире». Читать д...

О сущностях, DTO, ORM и Lazy Load Объектно-ориентированная парадигма — стандарт для прикладного ПО. Реляционные СУБД — стандарт хранения данных в прикладном ПО. Да, можно писать и на Haskell и хранить данные исключительно в ClickHouse. Но речь о мейнстриме. ORM позволяет натянуть сову на глобус сделать вид,...

[Перевод] Учебный курс по React, часть 7: встроенные стили Сегодня, в следующей части курса по React, мы поговорим о встроенных стилях. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительские и дочерние компоне...

Mattermost. Интеграция с внешними сервисами (часть 2) Продолжим разбираться с mattermost в части интеграции с внешними сервисами. Часть вторая. Интеграция с Zabbix Во второй части повествования о интеграции mattermost, речь пойдет про отправку сообщений об авариях из zabbix в mattermost. В результате поисков в сети был взят за ...

Взгляд со стороны EcmaScript на общую теорию ООП Привет, Хабр! До сего дня я занимался лишь переводами интересных, на мой взгляд, статей англоязычных авторов. И вот настала пора самому что-то написать. Для первой статьи я выбрал тему, которая, я уверен, будет полезна junior-разработчикам, стремящимся дорасти до «мидлов»,...

Не морочьте мне голову со своим функциональным программированием Адепты функционального программирования любят завлекать новичков обещаниями идеальной выразительности кода, 100% корректностью, лёгкостью поддержки и простотой рефакторинга, а иногда даже пророчат высочайшую производительность. Однако, опытные разработчики знают, что такого ...

3 Ключевых Качества для Успешного Менеджера по продукту — Дмитрий Орлов, Senior Product Manager Мы продолжаем нашу серию статей про 3 ключевые навыка для успешного менеджера по продукту по версии Райкеров. В первой части мы разговаривали с Антоном Даниловым, group product manager, а во второй — с Юрием Голиковым, директором по инжинирингу. Сегодня пообщаемся с Дмитрием...

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

Тест-драйв nanoCAD СПДС Стройплощадка 8. Часть 2 Тест-драйв nanoCAD СПДС Стройплощадка 8 Мы продолжаем публикацию тест-драйва по nanoCAD СПДС Стройплощадка. В первой части тест-драйва мы разобрали работу со специальным инструментом Менеджер проектов, его основные функции и способы построения элементов стройгенплана. Во вто...

VMware NSX для самых маленьких. Часть 5. Настройка балансировщика нагрузки Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP Часть четвертая. Настройка маршрутизации В прошлый раз мы говорили о возможностях NSX Edge в разрезе статической и динамической маршрутизации, а сегодня будем разбираться с ба...

[Перевод] Data-Oriented Design (или почему, используя ООП, вы, возможно, стреляете себе в ногу) Представьте себе такую картину: близится конец цикла разработки, ваша игра едва ползает, но в профайлере вы не можете найти очевидных проблемных мест. Кто же виноват? Паттерны произвольного доступа к памяти и постоянные промахи кеша. Пытаясь повысить производительность, вы ...

Системы мониторинга трафика в сетях VoIP. Часть вторая — принципы организации Здравствуйте, коллеги! В предыдущем материале мы познакомились с таким полезным и, как можно заметить, достаточно необходимым элементом VoIP-инфраструктуры, как система мониторинга трафика или, для краткости, СМТ. Узнали, что это такое, какие задачи решает, а также отметили...

[Перевод] Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 2 Сегодня мы представляем вашему вниманию продолжение перевода материала о вреде так называемого «функционального» программирования. Читать дальше →

[Перевод] Как написать смарт-контракт на Python в сети Ontology. Часть 2: Storage API Это вторая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology. В предыдущей статье мы познакомились с Blockchain & Block API смарт-контракта Ontology. Сегодня мы обсудим, как использовать второй модуль— Storage API. Storage API...

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

Как писать полиморфические программы c помощью Arrow Привет, Хабр! Меня зовут Артём Добровинский, я работаю в компании Finch. Предлагаю к прочтению статью одного из отцов библиотеки функционального программирования Arrow о том, как писать полиморфические программы. Часто люди, которые только начинают писать в функциональном...

Книга «Swift. Основы разработки приложений под iOS, iPadOS и macOS. 5-е изд. дополненное и переработанное» Привет, Хаброжители! Язык Swift молод, он растет, развивается и изменяется, хотя основные подходы к программированию и разработке уже сформировались. В новом, пятом издании книги была полностью переработана первая часть книги, что делает знакомство с языком Swift более комф...

Цена композиции в Javascript-мире Мысль о том, что в разработке любой более-менее сложной бизнес-логики приоритет должен отдаваться композиции объектов, нежели наследованию популярна в среде разработчиков программных продуктов самых разных типов. На очередной волне популярности функциональной парадигмы прогр...

[Перевод] Какой здесь this? Внутренняя работа объектов JavaScript Фотография: "Любопытный" Liliana Saeb (CC BY 2.0) JavaScript – это мультипарадигмальный язык, который поддерживает объектно-ориентированное программирование и динамическое связывание. Динамическое связывание — это мощная концепция, которая позволяет изменять структуру JavaS...

[Перевод] Разбираемся в Angular Ivy: Incremental DOM и Virtual DOM Angular — наш основной инструмент для написания приложения TestMace. В одной из прошлых статей мы затронули тему Ivy рендерера. Самое время поподробнее узнать, чем Ivy отличается от предыдущего движка. В нашей компании Nrwl мы уже какое-то время находимся в предвкушении во...

[Перевод] Учебный курс по React, часть 5: начало работы над TODO-приложением, основы стилизации Сегодня, в следующей части перевода учебного курса по React, мы начнём работу над первым учебным проектом и поговорим об основах стилизации. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компоненто...

Видеозаписи со встречи CocoaHeads 15-го марта в офисе Туту.ру В первый месяц весны у нас в офисе прошел митап по iOS-разработке CocoaHeads. Сюрпризом для гостей стало первое выступление Стаса Сарычева на тему функционального программирования. Традиционно, было тепло и душевно, а теперь к видео: Читать дальше →

Поваренная книга разработчика: DDD-рецепты (5-я часть, Процессы) Введение В рамках предыдущих статей мы описали: область применения, методологические основы, пример архитектуры и структуры. В данной статье, я хотел бы рассказать как описывать процессы, о принципах сбора требований, чем отличаются бизнес требования от функциональных, как п...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

Универсальное DRO на базе Arduino Nano — shDRO. Часть 2 И снова здравствуйте! Продолжаю описывать свою разработку shDRO. В данной части я опишу алгоритм опроса устройств и формат команд консоли. Первая часть. Читать дальше →

[Перевод] ZIO & Cats Effect: удачный союз Cats Effect стал своего рода «Reactive Streams» для функционального Scala-мира, позволив объединить всю разнообразную экосистему библиотек вместе. Многие отличные библиотеки: http4s, fs2, doobie — реализуются только на базе тайп классов из Cats Effect. А библиотеки типа ZIO...

[Из песочницы] Функциональный подход обработки ошибок в Dart При переходе на новую технологию, мы лишаемся привычных инструментов для разработки. В каких-то случая мы вынуждены смириться с их отсутствием из-за каких-то технических ограничений, но при возможности переносим инструменты с собой. Разрабатывая android приложения, за основу...

[Из песочницы] Почему вы должны думать о функциональном программировании Привет, Хабр! Представляю вашему вниманию перевод своей статьи «Why you should think about functional programming», посвященной функциональному программированию. Почему вы должны думать о функциональном программировании? Давайте ответим на следующие вопросы: всегда ли в...

Надежное программирование в разрезе языков. Часть 2 — Претенденты Первая часть с функциональными требованиями тут Заявленные как языки программирования с прицелом на надежность. В алфавитном порядке — Active Oberon, Ada, BetterC, IEC 61131-3 ST, Safe-C. Читать дальше →

[Перевод] Учебный курс по React, часть 10: практикум по работе со свойствами компонентов и стилизации Сегодня, в десятой части перевода учебного курса по React, мы предлагаем вам выполнить практическое задание по работе со свойствами компонентов и по их стилизации. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Ча...

[Перевод] Quality pipelines в мобильной разработке, часть 1: Android фото с Unsplash по запросу "pipeline" Общий подход Привет! Я начинаю серию постов о пайплайнах в разработке и не только, которые помогают удостовериться в качестве разрабатываемых мобильных приложений. Главная идея в том, чтобы осветить все подходы к мобильной разработке, а...

Тёмный Mobile на CodeFest: функциональный Swift, заблуждения Clean Architecture и #КонечноЖеKotlin Раньше было Future, а теперь — Mobile. Тут всё более или менее традиционно: есть iOS, есть Android, и есть у них что-то общее. Обсудим тёмную тему, нюансы разработки под CarPlay, ARCore и Instant Apps и #КонечноЖеKotlin. Читать дальше →

Тест-драйв nanoCAD СПДС Металлоконструкции 1.2. Часть 2 Тест-драйв nanoCAD СПДС Металлоконструкции 1.2 Часть 2 Продолжаем публикацию тест-драйва по nanoCAD СПДС Металлоконструкции. В первой части тест-драйва мы начали строить каркас производственного. Во второй части мы рассмотрим, как создавать вертикальные связи, распорки, прог...

[Перевод] Шесть способов, которыми тестировщики могут принести пользу (помимо функционального тестирования) Салют! Уже на следующей неделе стартуют занятия в новом потоке курса «QA-специалист», в связи с этим делимся с вами полезным материалом, переведенным специально для студентов курса. Поехали. Резюме: Многие тестировщики проводят только функциональное тестирование, не выхо...

[Перевод] Ускорение instagram.com. Часть 3 Сегодня публикуем перевод третьей части серии материалов об ускорении instagram.com. В первой части мы говорили о предварительной загрузке данных, во второй — об отправке данных клиенту по инициативе сервера. Здесь речь пойдёт о кэшировании. Читать дальше →

[Перевод] Топ-5 JS-фреймворков для фронтенд-разработки в 2020 году. Часть 2 Публикуем вторую часть перевода материала, посвящённого пятёрке лучших JavaScript-инструментов для разработки клиентских частей веб-проектов. В первой части речь шла о библиотеке React и о фреймворке Angular. Здесь мы обсудим Vue, Ember и Backbone. Читать дальше →

[Перевод] Функциональный JavaScript: пять способов нахождения среднего арифметического элементов массива и метод .reduce() Методы итерирования массивов похожи на «стартовые наркотики» (это, конечно, не наркотики; и я не говорю, что наркотики — это хорошо; это — просто фигура речи). Из-за них многие «подсаживаются» на функциональное программирование. Всё дело в том, что они невероятно удобны. Кро...

[Перевод] Что записано в this? Закулисье JavaScript-объектов JavaScript — это мультипарадигменный язык, поддерживающий объектно-ориентированное программирование и динамическую привязку методов — мощную концепцию, которая позволяет структуре JavaScript-кода меняться во время выполнения программы. Это даёт разработчикам серьёзные возмож...

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

[Перевод] Ответственный подход к JavaScript-разработке, часть 2 В апреле этого года мы опубликовали перевод первого материала из цикла, посвящённого ответственному подходу к JavaScript-разработке. Там автор размышлял о современных веб-технологиях и об их рациональном использовании. Теперь мы предлагаем вам перевод второй статьи из этого ...

[Из песочницы] От моделирования процессов к проектированию автоматизированной системы (Часть 1) «Один день из жизни белки» или от моделирования процессов к проектированию автоматизированной системы учёта материальных ценностей «Белка-1.0» (Часть 1) Использована иллюстрация к "Сказке о царе Салтане" А.С.Пушкина, изд."Детская литература", Москва, 194...

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

TDMS Фарватер. Методики PMBOK и российские проектные организации TDMS — известная объектно-ориентированная среда для хранения и управления разнообразными данными и процессами. После настройки объектов и бизнес-процессов можно применять систему TDMS практически в любой предметной области. Настройка – это описание на языке TDMS объектов пре...

Software Defined Radio — как это работает? Часть 2 Привет, Хабр. В первой части были описаны основные виды SDR-устройств и кратко были приведены их характеристики. Во второй части я расскажу подробнее о плюсах и минусах SDR, также будет рассмотрен пример доступа к приемнику из языка Python. Продолжение под катом (осторож...

[Из песочницы] Как мы DLP-систему выбирали (практический опыт) Привет, Хабр! Не так давно возникла довольно типичная ситуация — руководство дало команду «Выбрать систему защиты данных от утечки». Основной критерий выбора — способность решить задачу не допустить утечек критически важной (по мнению руководства) документации, файлов и тому...

[Перевод] Способы тестирования программного обеспечения Всем привет! Уже на следующей неделе мы запускаем новый поток по курсу «Автоматизация веб-тестирования». Этому и будет посвящен сегодняшний материал. В этой статье рассматриваются различные способы тестирования программного обеспечения, такие как модульное тестирование (uni...

[Перевод] ФП vs ООП Не так давно на хабре появилось несколько постов противопоставляющих функциональный и объектный подход, породивших в комментариях бурное обсуждение того, что вообще это такое — объектно ориентированное программирование и чем оно отличается от функционального. Я, пусть и с не...

Функциональное тестирование навыков Яндекс Алисы на Node.js Прошел почти год с того момента, как появилась возможность создавать свои навыки для Алисы — голосового помощника от Яндекса. В каталог ежедневно прибывают новые навыки, а их общее число составляет несколько сотен. К сожалению, общение с некоторыми навыками мягко говоря "не...

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

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

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

Тест-драйв nanoCAD СПДС Металлоконструкции 1.2. Часть 3 Продолжаем публиковать тест-драйв по nanoCAD СПДС Металлоконструкции. В первой части тест-драйва мы начали строить каркас производственного. Во второй части мы рассмотрели, как создавать вертикальные связи, распорки, прогоны и размещать их на плане, а также создадим поперечн...

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

Инструменты Метода управления проектной организацией (часть 2) Продолжаю серию публикаций об управлении проектной организацией в условиях когда много нужно выполнять все обязательства в срок и в полном объеме и есть ограничение по ресурсам. В прошлый раз я рассказал о концепции Pulse Management (Метода Пульса, далее «Метод»), а сейчас з...

[Перевод] Учебный курс по React, часть 12: практикум, третий этап работы над TODO-приложением В сегодняшней части перевода курса по React мы предлагаем вам выполнить практическое задание по формированию наборов компонентов средствами JavaScript и продолжить работу над TODO-приложением. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: ф...

[Из песочницы] Как Мефодий стал Анной: опыт разработки и запуска классификаторов голосовых сообщений. Часть 1 Цель и задача В серии статей рассмотрим классификаторы голосовых обращений, зачем они нужны, как их быстро вывести в продуктив. Расскажу про подходы, которые позволят сократить время от постановки задачи до запуска модели и получения бизнес-результата. По этой статье можно п...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 4 ← Часть 3. Косвенная адресация и управление потоком исполнения Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 4. Программирование периферийных устройств и обработка прерываний В этой части поста мы, как и обещали, займемся одним из самых востребован...

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

[Из песочницы] Прагматическое функциональное программирование Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Pragmatic Functional Programming» автора Robert C. Martin (Uncle Bob). Переход к функциональному программированию всерьез развился только около десяти лет назад. Мы видим, что такие языки, как Scala, Clojure и F# прив...

Podlodka #134: Scala Сейчас довольно часто говорят о том, что мейнстримовые языки программирования все чаще заимствуют концепции из мира функционального программирования, но при этом отдают главенствующую роль парадигме ООП. Этому подвержены как молодые языки, так и языки с долгой историей. Поэт...

Kubernetes для автомобиля: как открыть разработчику доступ к бортовому компьютеру и сделать это безопасно Это история в двух частях — о новом витке развития automotive. Эта «серия» посвящена собственной разработке EPAM – Aos Connected Vehicle Platform. Алекс Агизим, CTO, Automotive & Embedded Systems, объясняет, чем она отличается от традиционного облачного решения и как дае...

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

Качество — ответственность команды. Наш QA опыт Я работаю QA-инженером в Miro. Расскажу о нашем эксперименте по передаче разработчикам части задач по тестированию и трансформации роли тестера в роль QA (Quality assurance). Сначала коротко о нашем процессе разработки. У нас ежедневные клиентские релизы и от 3 до 5 серверн...

Интервью с Виталием Брагилевским: «Мир, в котором все будут программировать на Haskell — это вряд ли хороший мир» Виталий Брагилевский (@_bravit) пока что еще преподает в ЮФУ курсы по Haskell и теории алгоритмов. Также, дает выездные курсы в других городах, является редактором и переводчиком множества книг о Haskell и функциональном программировании, состоит в комитетах Haskell 2020 и...

[Перевод] Учебный курс по React, часть 11: динамическое формирование разметки и метод массивов map В сегодняшней части перевода учебного курса по React мы поговорим об использовании стандартного метода массивов map() для организации динамического формирования JSX-разметки, описывающей наборы однотипных элементов. → Часть 1: обзор курса, причины популярности React, Reac...

Sony MRW-S3 — функциональный и быстрый хаб с неплохим набором портов Компания Sony представила любопытный хаб MRW-S3, который сама называет самым функциональным и быстрым среди подобных. […]

[Перевод] Изучаем Docker, часть 3: файлы Dockerfile В переводе третьей части серии материалов, посвящённых Docker, мы продолжим вдохновляться выпечкой, а именно — бубликами. Нашей сегодняшней основной темой будет работа с файлами Dockerfile. Мы разберём инструкции, которые используются в этих файлах. Бублики — это инструкци...

[Перевод] Повышаем производительность разработки на примере Vue — часть 2 Если вы не читали Часть 1, вы можете исправить сиё недоразумение здесь. Переиспользование конфигураций Новая библиотека vue-cli-3 избавила от необходимости поддерживать сложные шаблоны сборки и конфигураций. Вместо этого она позволяет разработчику сосредоточиться на создании...

WG Contract API: zoo of services С ростом количества компонентов в программной системе, обычно растёт и количество людей принимающих участие в её разработке. Как следствие, для сохранения темпов разработки и простоты сопровождения, подходы к организации API должны стать предметом особого внимания. Если х...

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

Написание UDR на языке Pascal В Firebird уже достаточно давно существует возможность расширения возможностей языка PSQL с помощью написания внешних функций — UDF (User Defined Functions). UDF можно писать практически на любом компилируемом языке программирования. В Firebird 3.0 была введена плагинная арх...

Microsoft опубликовала список процессоров, совместимых с Windows 10 May 2019 Update Компания Microsoft опубликовала список процессоров, совместимых с новым функциональным обновлением для Windows 10 под названием May 2019 Update. Новая версия операционной системы по-прежнему поддерживается процессоры Intel до 9-го поколения, Intel Xeon E-21xx, Atom J4xxx/J5...

Книга «Как устроен JavaScript» Большинство языков программирования выросли из древней парадигмы, порожденной еще во времена Фортрана. Гуру JavaScript Дуглас Крокфорд выкорчевывает эти засохшие корни, позволяя нам задуматься над будущим программирования, перейдя на новый уровень понимания требований к Сле...

Про Кузнечик, его SBox и потерянные сиды Привет, %username%! Недавно мы вернулись с конференции EuroCrypt 2019, где познакомились с чрезвычайно умными людьми и заодно узнали новые, чрезвычайно обидные факты о ГОСТовском SBox. Так что, это второй подход к снаряду. Исправленный и дополненный. В этот раз не будет неп...

Пишем Reverse socks5 proxy на powershell.Часть 2 История об исследовании и разработке в 3-х частях. Часть 2 — разработческая. Буков много — пользы еще больше. В первой части статьи мы познакомились с некоторым инструментарием по организации обратных туннелей, посмотрели на их преимущества и недостатки, изучили механизм ра...

[Перевод] Учебный курс по React, часть 6: о некоторых особенностях курса, JSX и JavaScript Сегодня мы публикуем продолжение учебного курса по React. Здесь речь пойдёт о некоторых особенностях курса, касающихся, в частности, стиля кода. Тут же мы подробнее поговорим о взаимоотношениях между JSX и JavaScript. → Часть 1: обзор курса, причины популярности React, Re...

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

Анализ кода ROOT — фреймворка для анализа данных научных исследований Пока в Стокгольме проходила 118-я Нобелевская неделя, в офисе разработки статического анализатора кода PVS-Studio готовился обзор кода проекта ROOT, используемого в научных исследованиях для обработки больших данных. Премию за такой код, конечно, не дашь, а вот подробный обз...

[recovery mode] Внутренние и вложенные классы java. Часть 1 Внутренние и вложенные классы java 02.03.2017 — 2019 год Часть 1. Начало Цель статьи: Рассказать о внутренних, вложенных, локальных, анонимных классах. Показать примеры их использования. Написать и протестировать классы в коде на java. Рассказать о свойствах этих клас...

Автоматизация End-2-End тестирования комплексной информационной системы. Часть 2. Техническая Этой статьей мы продолжаем серию публикаций о том, как мы автоматизировали в одном из крупных проектов ЛАНИТ автопроцесс ручного тестирования (далее – автотесты) большой информационной системы (далее – Системы) и что у нас из этого вышло. Вторая часть публикации ориентирова...

Тест-драйв nanoCAD СПДС Стройплощадка 8. Часть 1 Тест-драйв nanoCAD СПДС Стройплощадка 8 Мы начинаем публикацию тест-драйва по nanoCAD СПДС Стройплощадка. В первой части тест-драйва мы разберем работу со специальным инструментом Менеджер проектов, его основные функции и способы построения элементов стройгенплана. Во второ...

Основы реактивного программирования с использованием RxJS. Часть 2. Операторы и пайпы В предыдущей статье мы рассмотрели, что такое потоки и с чем их едят. В новой части мы познакомимся с тем, какие методы RxJS предоставляет для создания потоков, что такое операторы, пайпы(pipes) и как с ними работать. RxJS обладает богатейшим API. В документации описано б...

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

Выпущены официальные ISO-образы Windows 10 20H1 Build 18950 Microsoft опубликовала официальные ISO-образы инсайдерской сборки Windows 10 под номером 18950, относящейся к ветке разработки функционального обновления с кодовым названием 20H1. С помощью этих образов вы сможете осуществить чистую установку системы на своём ПК. Отметим, ч...

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

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

[Перевод] Учебный курс по React, часть 16: четвёртый этап работы над TODO-приложением, обработка событий В сегодняшней части перевода учебного курса по React мы продолжим работу над Todo-приложением и поговорим о том, как в React обрабатывают события. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы комп...

Автоматизация End-2-End тестирования комплексной информационной системы. Часть 1. Организационная Этой статьей мы открываем серию публикаций о том, как автоматизировали в одном из крупных проектов компании ЛАНИТ процесс ручного тестирования большой информационной системы и что у нас из этого вышло. Первая часть – организационно-управленческая – должна быть полезна в пер...

Выпущены официальные ISO-образы Windows 10 20H1 Build 19013 Microsoft опубликовала официальные ISO-образы инсайдерской сборки Windows 10 под номером 18950, относящейся к ветке разработки функционального обновления с кодовым названием 20H1. С помощью этих образов вы сможете осуществить чистую установку системы на своём ПК. Отметим, ч...

Коктейль для здорового питания — его делает стартап из акселератора Университета ИТМО На рынке функционального питания появляется все больше производителей. Проект Foyt, основанный в акселераторе Университета ИТМО Future Technologies, попробует стать полноправным игроком в этой нише. Читать дальше →

Проект по метформину ТАМЕ: мнения разделились Проект по метформину ТАМЕ собрал необходимые 75 млн долларов. А началось все ещё три года назад. В 2016 году вышла статья Nir Barzilai и соавт «Метформин как целевое средство против старения», в которой они рассказали о проекте TAME. «При поддержке гранта R24 от NIA (J. ...

[Перевод] Учебный курс по React, часть 4: родительские и дочерние компоненты Публикуем очередную часть перевода учебного курса по React. Нашей сегодняшней темой будут взаимоотношения родительских и дочерних компонентов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонен...

[Перевод] Учебный курс по React, часть 17: пятый этап работы над TODO-приложением, модификация состояния компонентов В сегодняшней части перевода курса по React мы предлагаем вам выполнить очередное практическое задание и представляем вашему вниманию рассказ о том, как модифицировать состояние компонентов React. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть ...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 5 ← Часть 4. Программирование периферийных устройств и обработка прерываний Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 5. Проектирование многопоточных приложений В предыдущих частях статьи мы подробно останавливались на основах программирования с ...

Как я стал докладчиком Percona Live (и несколько интригующих деталей с американской границы) Percona Live Open Source Database Conference — одно из главных мероприятий на календаре мира СУБД. Когда-то всё начиналось с разработки одного из форков MySQL, но потом сильно переросло прародителя. И хотя очень многие материалы (и посетители) всё ещё плотно связаны с тема...

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

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

[Перевод] Собеседование: Swift. Вопросы и ответы Языку программирования Swift всего четыре года, но он уже становится основным языком разработки для iOS. Развиваясь до версии 5.0, Swift превратился в сложный и мощный язык, отвечающий как объектно-ориентированной, так и функциональной парадигме. И с каждым новым релизом в н...

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

[Перевод] Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенЭтот пост — перевод первой статьи ...

Управление целями в организации: Цели и инженеры (часть 3) Продолжаем цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). Мы уже разобрались с моделью организации, с основными принципами Метода. Теперь время рассказать о Правилах. Правила программируют организацию, а значит они должны быть определ...

[Перевод] 9 хитростей для работы с Visual Studio Code Привет, Хабр! Сегодня мы отобрали 9 самых интересных лайфхаков для работы с Visual Studio Code. Среди них полезные сочетания клавиш и функциональные виджеты. Подробности под катом! Читать дальше →

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

MIRO — открытая платформа indoor-робота. Часть 2 — Конструкция робота В первой части я рассказал про концепцию проекта. Во второй части разбираем конструкцию робота MIRO по косточкам (много картинок). Читать дальше →

[Перевод] Глючный код на Python: 10 самых распространенных ошибок, которые допускают разработчики О Python Python — это интерпретируемый, объектно-ориентированный язык программирования высокого уровня с динамической семантикой. Встроенные структуры данных высокого уровня в сочетании с динамической типизацией и динамическим связыванием делают его очень привлекательным для...

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

6 принципов функциональной анимации: как сделать правильные переходы Обращайте внимание на каждую деталь – так вы преуспеете в создании лучшего интерфейса между человеком и компьютером.

Фитнес-браслет Samsung Galaxy Fit: удешевленная версия с цветным экраном Недавно мы рассказывали вам про Samsung Galaxy Fit e — младшую модель в линейке браслетов южнокорейского производителя. Теперь пришло время познакомиться с более дорогим, но и более функциональным устройством: оно называется так же, но без приставки «e». И главное отличие — ...

Новые голосовые приложения на C# в 3CX v16 3CX v16 уже на подходе, и у нас есть отличные новости о нашем приложении для разработчиков Call Flow Designer. В новом релизе CFD использует новый скриптовый «движок», интегрированный в ядро сервера 3CX. Благодаря выполнению скриптов в ядре АТС, производительность голосовых ...

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

Показываем лабораторию «Перспективные наноматериалы и оптоэлектронные устройства» Университета ИТМО На Хабре мы провели уже целую серию небольших фотоэкскурсий. Показали нашу лабораторию квантовых материалов, посмотрели на механизированные руки и манипуляторы в лаборатории робототехники и заглянули в наш тематический DIY-коворкинг (Фаблаб). Сегодня — рассказываем, над чем...

[Перевод] 9 правил крутого расширения для Visual Studio Крутые расширения Visual Studio имеют несколько ключевых признаков, которые отличают их от остальных. Они выглядят и на самом деле хорошо продуманы, функциональны и надежны. Кроме того, они делают то, что должны, до уровня совершенства и нативно вписываются во внутренние фун...

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

Как начать программировать в Adobe Illustrator. Скрипт Expand Clipping Mask. Часть вторая Этот пост — продолжение первой части, где был представлен скрипт Expand Clipping Mask и детально описано, что и как он делает, а также попутно рассмотрены основные принципы создания подобных программ в целом. В этой части я продолжу рассказ о том, как добавить в программу но...

[Перевод] Учебный курс по React, часть 19: методы жизненного цикла компонентов В сегодняшней части перевода учебного курса по React вашему вниманию будет представлен обзор методов жизненного цикла компонентов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структу...

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

[Перевод] Эффекты фильтров SVG: контурный текст при помощи feMorphology Во второй части серии об SVG-фильтрах Sara Soueidan знакомит нас с фильтром feMorphology и приводит несколько примеров его использования для создания интересных эффектов. Читать дальше →

Восхождение на Эльбрус — Разведка боем. Техническая Часть 2. Прерывания, исключения, системный таймер Продолжаем исследовать Эльбрус путем портирования на него Embox. Данная статья является второй частью технической статьи об архитектуре Эльбрус. В первой части речь шла о стеках, регистрах и так далее. Перед прочтением этой части рекомендуем изучить первую, поскольку в ней р...

3 ключевых качества успешного менеджера по продукту: Юрий Голиков, VP of Engineering Wrike Привет, Хабр. Мы продолжаем нашу серию статей о ключевых качествах для успешного менеджера по продукту по версии Wrike. В предыдущей части мы общались с Антоном Даниловым, group product manager. Сегодня на вопросы отвечает Юрий Голиков. Юрий работает в Wrike 3 года на должно...

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

[Перевод] Учебный курс по React, часть 18: шестой этап работы над TODO-приложением В сегодняшней части перевода учебного курса по React вам предлагается продолжить работу над Todo-приложением и сделать так, чтобы щелчки по флажкам воздействовали бы на состояние компонента. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: фун...

[Из песочницы] Consumer Driven Contracts или Gitlab CI глазами QA test automation Цели данной публикации: Краткое введение в Consumer Driven Contracts (CDC) Настройка CI pipeline на основе CDC Consumer Driven Contracts В этой части мы пройдемся по основным моментам CDC. Данная статья не является исчерпывающей на тему контрактного тестирования. Существуе...

[Перевод] Учебный курс по React, часть 21: второе занятие и практикум по условному рендерингу Сегодня, в переводе следующей части учебного курса по React, мы предлагаем вашему вниманию второе занятие по условному рендерингу и практикум по этой теме. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: ф...

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

[Перевод] Учебный курс по React, часть 20: первое занятие по условному рендерингу Сегодня, в переводе следующей части учебного курса по React, мы поговорим об условном рендеринге. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительск...

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 1 Публикуем первую часть перевода очередного материала из серии, посвящённой тому, как в Instagram работают с Python. В первом материале этой серии речь шла об особенностях серверного кода Instagram, о том, что он представляет собой монолит, который часто меняется, и о том, ка...

Как мы сделали мобильное приложение, которому не нужен дизайнер Очень часто в компании дизайн полностью зависит от дизайнера. Он может даже внезапно изменить его полностью, несмотря на протестующие крики «фронтов» и «мобильщиков». Мы придерживаемся другого мнения: внутреннее мировоззрение дизайнера или видение разработчика не должны силь...

Windows 10 20H1 скоро выйдет в Fast Ring И снова пришло время инсайдерам проверить настройки своего канала тестирования. Обновление Windows 10 May 2019 Update появится в Release Preview уже на следующей неделе, а это значит, что билд почти готов к релизу. Это также означает, что вам пора изменить настройки программ...

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

Тест-драйв nanoCAD СПДС Металлоконструкции 1.2. Часть 1 Тест-драйв nanoCAD СПДС Металлоконструкции 1.2 Уважаемые хабровцы, интересующиеся САПР, За несколько месяцев ведения блога на Хабре мы получили много вопросов, об основных инструментах программ СПДС Металлоконструкции и СПДС Стройплощадка. Поэтому решили создать и опубли...

Знакомимся с языком Swift на примере игры Snake Всем привет! В преддверии запуска курса «iOS-разработчик. Базовый курс» мы организовали очередной открытый урок. Этот вебинар рассчитан на людей, которые имеют опыт разработки на любых языках и платформах, однако желают ещё изучить язык Swift и освоить разработку под iOS. ...

[Перевод] Java Challengers #4: Сравнение объектов с equals() и hashCode() Java Challengers #4: Сравнение объектов с equals() и hashCode() В преддверии запуска нового потока по курсу "Разработчик Java" мы продолжаем перевод серии статей Java Challengers, предыдущие части которых можно прочитать по ссылкам ниже: Перегрузка методов в JVM Сравнение с...

Как сократить time-to-market: история про автоматизацию тестирования в «М.Видео» Быстрая и эффективная разработка ПО сегодня немыслима без отточенных рабочих процессов: каждый компонент передается на сборку к моменту установки, изделие не простаивает в ожидании. Еще два года назад мы совместно с «М.Видео» начали внедрять такой подход в процесс разработ...

Пингвин, виртуализация и $23 млрд: как и почему облачные технологии навсегда изменили ИТ-мир Каждые несколько лет на ИТ-рынке появляется новая технология или парадигма, которая радикально меняет бизнес-модели большинства компаний. Например, еще 25 лет назад этой парадигмой стал массовый бум ПК, бенефициаром которого стала компания Microsoft. 15 лет назад – массо...

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

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

5 бесплатных курсов для IT-Администраторов от Microsoft Привет, Хабр! Сегодня мы продолжаем серию статей, в которую войдет 5 подборок бесплатных обучающих курсов от компании Microsoft. Во второй части у нас самые крутые курсы для IT-Администраторов, которые сильнее всего нравятся коллегам. Кстати! Все курсы бесплатные (вы даже...

Тот, кто воскресил Duke Nukem: интервью с Рэнди Питчфордом, волшебником из Gearbox RUVDS совместно с Хабром продолжают проект, состоящий из серии интервью с интересными, на наш взгляд людьми в IT-среде. В прошлый раз мы познакомились с Ричардом (Levelord) Греем. Levelord — дизайнер легендарных игр Duke Nukem, American McGee’s Alice, Heavy Metal F.A.K.K.2, ...

[Перевод] Лямбды: от C++11 до C++20. Часть 2 Привет, хабровчане. В связи со стартом набора в новую группу по курсу «Разработчик C++», делимся с вами переводом второй части статьи «Лямбды: от C++11 до C++20». Первую часть можно прочитать тут. В первой части серии мы рассмотрели лямбды с точки зрения C++03, C++11 и C+...

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

[Перевод] Кодогенерация в Dart. Часть 2. Аннотации, source_gen и build_runner В первой части мы выяснили зачем нужна кодогенерация и перечислили необходимые инструменты для кодогенерации в Dart. Во второй части мы узнаем как создавать и использовать аннотации в Dart, а также как использовать source_gen и build_runner, чтобы для запуска кодогенерации. ...

[Перевод] UDB. Что же это такое? Часть 3. Datapath FIFO Продолжаем делать перевод фирменной документации фирмы Cypress на блоки UDB. Тем более, что всё очень удачно совпадает. Для продолжения практической статьи по UDB понадобится использование FIFO, а в теоретической части мы подобрались как раз к их описанию. Поэтому начинаем...

[Перевод] Эффекты фильтрации SVG. Часть 3. Эффект постеризации изображения при помощи feComponentTransfer В третьей части серии вы узнаете, как работает feComponentTransfer и как можно постеризовать изображения при помощи этого мощного примитива SVG-фильтра. Читать дальше →

Правда о железнодорожных тормозах: часть 2 Вижу, что первая, историческая часть моего повествования публике понравилась, а поэтому не грех и продолжить. Высокоскоростные поезда, вроде TGV уже не обходятся пневматическим торможением Сегодня мы поговорим о современности, а именно о том, какие подходы к созданию торм...

Разработка Windows 10 19H2 должна быть завершена в сентябре В связи с тем, что обновление Windows 10 May 2019 Update уже развернуто для пользователей, следующим логическим шагом для Microsoft будет переход к следующему функциональному обновлению ОС, которое выйдет осенью.Согласно собственному подходу Microsoft, после того, как новая ...

Android для радиоинженера (часть вторая) В первой части я немного рассказал о приложении RF & Microwave Toolbox. Во второй части расскажу о не менее интересном приложении, которое позволяет проектировать СВЧ устройства (преимущественно, планарные) на смартфоне/планшете под управлением ОС Android. Если вам интер...

Суперсовременный OpenGL. Часть 1 Всем привет. Все кто хоть немного разбирался в теме OpenGL знают, что существует большое количество статей и курсов по этой теме, но многие не затрагивают современный API, а часть из них вообще рассказывают про glBegin и glEnd. Я постараюсь охватить некоторые нюансы нового...

Разработка команды запроса данных из базы — часть 2 В предыдущей части я остановился на том, что разрабатываемая мной команда реализует поведение, которое можно описать вот таким тестом: it('execute should return promise', () => { request.configure(options); request.execute().then((result) => { expect(result....

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

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

Дж. Х. Рейнвотер «Как пасти котов» (часть вторая): все, что предстоит освоить техлиду Продолжаем делиться выдержками из руководства по выживанию для начинающих техлидов от Дж. Х. Рейнвотера. В первой серии мы рассказывали, с какими породами разработчиков руководителю обычно приходится работать; теперь попытаемся понять, что делать со всем этим зоопарком. Ор...

Android Camera2 API от чайника, часть 4. Media Codec и стрим видео по UDP в JAVA приложение Итак, выходим на финишную прямую. Стримить видео с андроида на VLC плеер мы уже научились, теперь осталось только интегрировать окошко с видео в JAVA приложение и начать рулить роботелегой. В этом нам очень сильно поможет проект с открытым исходным кодом VLCJ CAPRICA. Th...

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

Когда может состояться релиз Windows 10 (версия 1909)? Компания Microsoft продолжает разрабатываться осеннее функциональное обновление для Windows 10 под кодовым названием 19H2. Обновление будет выпущено с номером версии 1909. Как правило, первые две цифры версии обозначают год выхода обновления, а вторые две — месяц подписания...

Анализ Agile. Мифы и действительность I Вступление Будку надо переносить! Сезона не бывает, чтоб пару-тройку не шандарахнуло. То с туалетом путают, то с пляжной кабинкой… (х/ф Особенности национальной рыбалки) Конец года, подведение итогов, заполнение анкет и прочая предпраздничная мишура ИТ функционеров. Мне у...

Termux шаг за шагом (Часть 2) В прошлой части мы с вами познакомились с базовыми командами Termux'а, настроили SSH соединение с ПК, научились создавать alias'ы и установили несколько полезных утилит. В этот раз нам предстоит шагнуть еще дальше, мы с вами: узнаем про Termux:API установим Python и nano, а...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 3 — Конвертация avi в mp4 Список переведённых частей серии: Приготовления Компиляция с Emscripten Конвертация avi в mp4 (вы тут) В этой части ма разберём: Компиляцию библиотеки FFmpeg с оптимизированными аргументами. Управление файловой системой Emscripten. Разработку ffmpeg.js v0.1.0 и конвер...

Software Defined Radio — как это работает? Часть 4 Привет Хабр. В третьей части было рассказано, как получить доступ к SDR-приемнику посредством языка Python. Сейчас мы познакомимся с программой GNU Radio — системой, позволяющей создать достаточно сложную конфигурацию радиоустройства, не написав ни единой строчки кода. Д...

[Перевод] Учебный курс по React, часть 25: практикум по работе с формами В сегодняшней части перевода учебного курса по React вам предлагается выполнить практическое задание по работе с формами. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проект...

[Перевод] Руководство по разработке, основанной на компонентах Модульность является одним из ключевых принципов разработки программного обеспечения с 1960-х годов. Применение этого принципа приносит в программирование много полезного. Модульность способствует эффективному использованию принципа разделения ответственностей, что ведёт к у...

[Перевод] Учебный курс по React, часть 27: курсовой проект В этой части перевода учебного курса по React вам предлагается создать генератор мемов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительские и дочер...

[Перевод] Учебный курс по React, часть 23: первое занятие по работе с формами В этой части перевода учебного курса по React мы поговорим о работе с формами. В частности, сегодняшнее занятие посвящено организации взаимодействия компонентов и текстовых полей. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные...

Software Defined Radio — как это работает? Часть 3 Привет Хабр. Во второй части были рассмотрены практические аспекты использования SDR. В этой части мы разберемся, как принять данные метеоспутника NOAA с помощью Python и недорогого (30$) приемника RTL-SDR. Рассмотренный код будет работать везде — на Windows, OSX, Linux и д...

[Перевод] Учебный курс по React, часть 26: архитектура приложений, паттерн Container/Component В этой части перевода учебного курса по React мы поговорим об архитектуре React-приложений. В частности, обсудим популярный паттерн Container/Component. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: фай...

Проект модульных смарт-часов Blocks закрыт Участники проекта Blocks по созданию «умных» наручных часов с модульной конструкцией объявили о его сворачивании. Инициатива Blocks была представлена ещё в 2014 году. Концепция предполагала размещение основных электронных узлов в модуле с дисплеем и выпуск самых разнообразны...

Применение Oracle Database для Технического анализа рынков Эта статья про Oracle Database, PL/SQL, SQL, MATCH_RECOGNIZE, MODEL clause, aggregate и pipelined functions. В качестве функциональной области использован Технический анализ (ТА) рынков. Сначала небольшая поверхностная вводная о торговле на рынках, потом — расчёты. Техниче...

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

[Перевод] Amazon Prime Day 2019 – Powered by AWS Команда TestMace продолжает публикацию переводов об интересных моментах web-сферы. На очереди описание Amazon Prime Day с точки зрения разработки высоконагруженных сервисов. Приятного чтения! Уже по традиции я бы хотел рассказать вам о некоторых преимуществах AWS, которые...

[Перевод] Машинно-синестетический подход к обнаружению сетевых DDoS-атак. Часть 2 И снова здравствуйте. Сегодня мы продолжаем делиться материалом, приуроченным к запуску курса «Сетевой инженер», который стартует уже в начале марта. Мы видим, что многих заинтересовала первая часть статьи «Машинно-синестетический подход к обнаружению сетевых DDoS-атак» и се...

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

Делаем контроллер для умного дома Делаем контроллер для умного дома и не только. В предыдущей статье я описывал разработку системы в целом. В этой я опишу разработку контроллера, который отвечает за опрос датчиков и модулей ввода-вывода. «Зачем изобретать велосипед?» — спросите вы. Во-первых, это интересно,...

[Из песочницы] Пишем блог на микросервисах – часть 2 «API Gateway» В первой части нашего цикла статей «Пишем блог на микросервисах» мы описали общий подход к решению задачи. Теперь пришла очередь API Gateway или API GW. В нашем c ptimofeev API GW мы реализуем следующие функции: Конвертация REST запросов в gRPC запросы и наоборот. Логир...

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

Чем отличается Samsung Galaxy S10+ от Galaxy S9+? Разработчики опубликовали инфографику, в которой приведен сравнительный анализ функциональных возможностей Galaxy S10+ и Galaxy S9+. Samsung Galaxy S10+ стал более компактным и легким (при этом экран стал больше) по сравнению с предшественником. Новый флагман может похвас...

Обзор смарт-часов Honor Watch Magic Не так давно мы познакомились с функциональными и относительно недорогими смарт-часами от HUAWEI — Watch GT. Теперь поговорим об их слегка упрощенной версии, которая получила название Honor Watch Magic. В первую очередь под кат пошла автономность и размер, но и то, и другой ...

[Из песочницы] Управление светом на ZigBee Привет друзья! Сегодня хочу рассказать Вам об одной интересной разработке системы дистанционного управления освещением. Современный дом представляет из себя огромное количество проводов чтобы хоть как то уменьшить и упорядочить их количество на помощь приходит радио. В ...

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

[Перевод] 7 недостающих факторов в подходе 12 factor app Прим. перев.: Тот восторг, что испытали наши тимлиды, увидев в блоге IBM Cloud этот материал — своеобразное «расширение» легендарного Twelve-Factor App, — говорит сам за себя. Поднятые автором вопросы не просто на слуху, а по-настоящему жизненны, т.е. актуальны в повседнев...

Профилирование со сверхсветовой скоростью: теория и практика. Часть 1 Привет! Из заголовка вы уже поняли, о чём я собираюсь рассказать. Тут будет много хардкора: мы обсудим Java, С, С++, ассемблер, немного Linux, немного ядра операционной системы. А ещё разберём практический кейс, поэтому статья будет в трёх больших частях (достаточно объёмных...

[Из песочницы] Применение формальных методов валидации моделей для UI Привет, Хабр! Представляю вашему вниманию перевод статьи «FORMALLY SPECIFYING UIS» автора Hillel Wayne. От автора Относительно недавно я наткнулся на статью про Инженерные методы в разработке ПО, где vasil-sd рассказал про формальную валидацию спецификаций к создаваемым пр...

Основные понятия стандартной библиотеки С++ Данная статья определяет основные понятия стандартной библиотеки С++. Она приводится для того чтобы на неё ссылаться в дальнейшем. Наибольшей частью стандартной библиотеки С++ является библиотека STL (Standard Template Library – Стандартная Библиотека Шаблонов). Библиотека S...

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

[Перевод] Chaos Engineering: искусство умышленного разрушения. Часть 2 Прим. перев.: Этот материал продолжает замечательный цикл статей от технологического евангелиста из AWS — Adrian Hornsby, — задавшегося целью просто и понятно объяснить важность экспериментов, призванных смягчить последствия сбоев в ИТ-системах. «Если провалил подготовку ...

[Из песочницы] Методы сжатия/хранения медиа данных в форматах WAVE и JPEG, часть 1 Здравствуйте! Моя первая серия статей будет направлена на изучение методов сжатия и хранения изображений/звука, таких как JPEG (изобр.) и WAVE (звук), также в них будут примеры программ с использованием этих форматов (.jpg, .wav) на практике. В этой части мы рассмотрим именн...

Tic Tac Toe, часть 2 Продолжение статьи Tic Tac Toe, часть 1, в которой мы начали разработку этой игры на Svelte. В этой части мы доделаем игру до конца. Добавим команды Undo/Redo, произвольный доступ к любому шагу игры, попеременные ходы с противником, вывод статуса игры, определение победителя...

3D-принтер из MIT: до 10 материалов на модель В MIT разработали 3D-принтер, который может печатать десятью материалами одновременно. В компании хотят, чтобы устройство в ближайшее время смогло печатать полностью функциональные объекты, такие как печатные платы. Читать дальше →

5 способов полезного использования Raspberry Pi. Часть третья Привет Хабр. Во второй части были рассмотрены 5 способов использования Raspberry Pi. И как оказывается, этот микрокомпьютер способен ещё на большее. Сейчас мы рассмотрим еще 5, надеюсь, не менее интересных возможностей Raspberry Pi. Как и в предыдущей части, будут рассмо...

PHDays 9: приглашаем на секцию по безопасной разработке На форуме Positive Hack Days 9 в течение двух дней пройдет секция по безопасной разработке сообщества Positive Development User Group. Участников ждут 12 выступлений: в первой части каждого дня пройдут технические доклады, во второй — посвященные бизнес-процессам. Читать д...

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

Релиз Windows 10 May 2019 Update состоится в конце мая Microsoft объявила, что следующее функциональное обновление для Windows 10, известное под кодовым названием «19H1» и получившее номер версии 1903, будет называться Windows 10 May 2019 Update, а его распространение начнётся в конце мая этого года. Несмотря на то, что работа ...

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

Что я узнал, протестировав 200 000 строк инфраструктурного кода Подход IaC (Infrastructure as Code) состоит не только из кода, который хранится в репозитории, но еще людей и процессов, которые этот код окружают. Можно ли переиспользовать подходы из разработки ПО в управление и описание инфраструктуры? Будет не лишним держать в голове эт...

Hyundai представила новые портативные телевизоры серии H-LCD Компания Hyundai представляет портативные телевизоры серии H-LCD. Компактные и функциональные устройства идеальны для поездок и путешествий. ***

3 ключевых качества для успешного менеджера по продукту: Антон Стожко Мы продолжаем рассказывать о ключевых качествах для успешного менеджера по продукту, по мнению продуктовой команды Wrike. В шестой (!) части данной серии мы пообщаемся с Антоном Стожко. Антон работает associate product manager 1,5 года, куда перешел из команды Customer Suppo...

[Из песочницы] Сети кабельного телевидения для самых маленьких. Часть 1: Общая архитектура сети КТВ Как бы просвещённое сообщество не ругало телевидение за негативное влияние на сознание, тем не менее, телевизионный сигнал присутствует практически во всех жилых (и во многих нежилых) помещениях. В больших городах это почти всегда телевидение кабельное, даже если все вокру...

Наглядное пособие по разработке продуктов: конструирование Это третья из четырех статей о разработке физических продуктов. Если вы пропустили Часть 1: Формирование идеи, или Часть 2: Дизайн, стоит их прочитать. Вскоре вы сможете перейти к Части 4: Валидация. Автор: Ben Einstein. Оригинал Перевод выполнен командами фаблаба FABINKA и ...

Какими могут быть вычислительные системы будущего Рассказываем, что нового может появиться в дата-центрах и не только в них. / фото jesse orrico Unsplash Считается, что кремниевые транзисторы приближаются к своему технологическому пределу. В прошлый раз мы рассказывали о материалах, которые могут заменить кремний и обсужд...

Самый главный недостаток Xiaomi Mi Band 4, который потряс весь мир Спрос на разного рода носимую электронику продолжает расти с каждым днем, а происходит это в первую очередь за счет того, что такая оказывается все более интересной для широкого круга покупателей, ведь ее функциональные возможности стремительно Сообщение Самый главный недос...

[Из песочницы] Принципы проектирования справочников номенклатуры в 1С Управление Предприятием 2 (ERP 2.4.6) ОглавлениеОсновные принципы работы Справочники и связанные с ними объекты Перечисление «Типы номенклатуры» Справочник «Виды номенклатуры» Справочник «Товарные категории» Справочник «Товарные характеристики» Дополнительные реквизиты и сведения Функционал «Номенклатура, ...

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

[Перевод] Тестирование Node.js-проектов. Часть 2. Оценка эффективности тестов, непрерывная интеграция и анализ качества кода → Тестирование Node.js-проектов. Часть 1. Анатомия тестов и типы тестов Сегодня, во второй части перевода материала, посвящённого тестированию Node.js-проектов, мы поговорим об оценке эффективности тестов и об анализе качества кода. Читать дальше →

Наглядное пособие по разработке продуктов: дизайн Это вторая часть из цикла четырех статей о разработке физических продуктов. Если вы пропустили Часть 1: Формирование идеи, обязательно её прочтите. Вскоре вы сможете перейти к Части 3: Конструирование и Части 4: Валидация. Автор: Ben Einstein. Оригинал Перевод выполнен коман...

Дайджест интересных материалов для мобильного разработчика #310 (5 — 11 августа) Очередной выпуск рассказывает про морок функционального программирования, солидный Swift для солидных программистов, дорожную карту Android-разработки, стабильность модного приложения, путаницу переключателей и многое другое. Читать дальше →

Паттерны и анти-паттерны CI/CD. Часть 2 Всех с пятницей, друзья. Сегодня делимся с вами переводом второй части статьи «Паттерны и анти-паттерны CI/CD», первую часть которой можно прочитать здесь. Напомним, даная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты». 1.3 Патт...

[Перевод] Организация работы программиста-одиночки Автор материала, перевод которого мы публикуем сегодня, говорит, что большинство программистов работает в командах. Однако на определённом этапе карьеры разработчику может понадобиться трудиться в одиночку. Основной объём подходов к организации работы над программными продук...

[Перевод] Как написать смарт-контракт на Python в сети Ontology. Часть 1: Blockchain & Block API Это первая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology при помощи инструмента разработки смарт-контрактов SmartX. В этой статье мы начнём знакомство с API смарт-контракта Ontology. API смарт-контракта Ontology разделен н...

Microsoft не планирует выпускать для Windows 10 обновления, подобные November 2019 Update Около двух недель назад Microsoft приступила к распространению нового функционального обновления для Windows 10 под названием November 2019 Update (версия 1909), которое, впрочем, больше похоже на сервис-пак с небольшим количеством изменений и исправлений. Пользователи полу...

[Перевод] Почему вам стоит использовать язык Ада для программирования вашей системы Язык программирования Ада родился в середине 1970-х, когда министерство обороны США и министерство обороны Британии решили заменить сотни специализированных языков программирования для встроенных вычислительных систем, всё чаще использовавшихся в военных проектах. Язык Ада...

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

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

[Перевод] Guix — самая продвинутая операционная система Операционные системы (ОС) — обширная тема. На протяжении десятилетий здесь доминировал один подход: Unix. Действительно, большинство современных систем, включая большинство дистрибутивов GNU/Linux, *BSD и macOS, придерживаются архитектуры Unix. (Windows нет, но там почти нич...

Laravel: объясняем основные понятия. Часть вторая: «Практика» Всем привет! Продолжаем серию авторских публикаций в преддверии старта курса «Framework Laravel». В прошлой статье мы с вами посмотрели на теоретические основы Laravel. Однако теорию любого фреймворка можно изучать достаточно долго и ничего не понять, пока сам не напишешь н...

Стильная, модная, молодежная разработка BPM на Camunda BPM-разработка — дело непростое. Это обусловлено тем, что процесс должен быть читаемым и понятным заказчику, а не только корректным с технической точки зрения. Не все средства разработки бизнес-процессов позволяют найти компромисс между понятным описанием и технической фун...

Новые возможности С# 8: switch expressions В конце января группа разработчиков .NET Core выпустила новую версию фреймворка .NET Core 3 preview 2. В нем были реализованы некоторые новые возможности языка С#. Что мне кажется довольно интересным, это switch expressions. Хотя это добавление кажется простым, я думаю, что ...

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

Прерывания от внешних устройств в системе x86. Часть 3. Настройка роутинга прерываний в чипсете на примере coreboot Продолжаем рассматривать настройку прерываний от внешних устройств в системе x86. В части 1 (Эволюция контроллеров прерываний) мы рассмотрели теоретические основы контроллеров прерываний и общие термины, в части 2 (Опции загрузки ядра Linux) посмотрели как на практике ОС ос...

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

[Перевод] Лучшие продукты отталкиваются от настоящих проблем: Intercom про Jobs-to-be-Done. Часть 1 Jobs-to-be-Done — это подход к созданию продукта на основе анализа работы, которую стремится выполнить клиент с помощью продукта. Появился в 90-х годах и был адаптирован Intercom для IT-продуктов. Подход состоит из теории, почему «вечные» работы, для выполнения которых «на...

Методика D.I.Y. проекта. Часть вводная Данная статья написана радиолюбителем, имеющим опыт руководства проектами по разработке и постановке на производство сложной радиоэлектронной аппаратуры. Цель данной статьи: помочь энтузиастам в организации их проектной деятельности, а также обозначить различия в подходах ...

[Перевод] ООП мертво, да здравствует ООП Источники вдохновения Этот пост возник благодаря недавней публикации Араса Пранцкевичуса о докладе, предназначенном для программистов-джуниоров. В нём рассказывается о том, как адаптироваться к новым ECS-архитектурам. Арас следует привычной схеме (объяснения ниже): показыва...

Делаем базу из игры Subnautica. Многоцелевая комната. Часть 2. Всем доброго дня!Во второй части продолжаем делать многоцелевую комнату из игры Subnautica. Основная задача второй части - сделать пол и потолок комнаты. На мой взгляд - это самые сложные элементы в модели, т.к. в этих элементах имеются очень мелкие детали. Как и раньше, кон...

RTM-сборка Windows 10 20H1 будет подписана в декабре в соответствии с циклом разработки Azure Грядущий релиз Windows 10 20H1 станет первой версией операционной системы, разработка которой будет завершена в декабре, то есть на три месяца раньше обычного. Это связано с переходом Windows на «семестровый» цикл разработки, который в настоящее время используется командой ...

Модернизация IDA Pro. Отладчик для Sega Mega Drive (часть 1) Приветствую! Товарищи реверсеры, ромхакеры: в основном эта статья будет посвящена вам. В ней я расскажу вам, как написать свой плагин-отладчик для IDA Pro. Да, уже была первая попытка начать рассказ, но, с тех пор много воды утекло, многие принципы пересмотрены. В общем, по...

[Из песочницы] Генерация OpenAPI спецификации на основе функциональных тестов Разрабатывая API, наверняка не раз появлялись сложности с документацией: то её нет, то она не отображает поведение, описанное в коде. С точки зрения разработчика, написание документации (одной только внутренней) занимает не меньше времени, чем написание самого кода. Знако...

Nokia 8110 4G получит поддержку WhatsApp Функциональный телефон Nokia 8110 4G работает на специальном программном обеспечении под названием KaiOS, которое также доступно на популярном JioPhone. Операционная система может запускать WhatsApp и несколько других коммуникационных / развлекательных приложений на функ...

[Из песочницы] Современные методы описания функциональных требований к системам. Алистер Кобёрн. Отзыв по книге и дополнения В книге описан один метод написания части постановки задачи, а именно метод use case. Что это такое? Это описание сценария взаимодействия пользователя с системой (или с бизнесом). Система при этом выступает как черный ящик (и это дает возможность разделить сложную задачу пр...

Flightradar24 — как это работает? Часть 2, ADS-B протокол Привет Хабр. Наверное каждый, кто хоть раз встречал или провожал родственников или друзей на самолет, пользовался бесплатным сервисом Flightradar24. Это весьма удобный способ отслеживания положения самолета в реальном времени. В первой части был описан принцип работы так...

Snom D335 – многофункциональный IP-телефон с широкоэкранным цветным TFT-дисплеем Сегодня мы хотим познакомить вас с новым широкоэкранным настольным IP-телефоном Snom D335. Учитывая его большие функциональные возможности, аппарат можно без преувеличения назвать настоящим офисным помощником. Впрочем, судите сами. Читать дальше →

«Глубокое погружение» и «Рекомендации сообщества». Valve добавила две новые функции в «Лаборатории Steam» и перенесла «Интерактивный советник» в основной клиент Valve продолжает модернизировать магазин Steam. Ранее на этой неделе компания запустила открытый бета-тест обновленной библиотеки и изменила систему рекомендаций игр. Теперь же стало известно о еще парочке функциональных новшеств, призванных упростить поиск игр и просмотр по...

Построение микросервисной архитектуры на Golang и gRPC, часть 2 (docker) Пришло время заняться контейнерами Прежде всего, мы используем новейший образ Linux Alpine. Linux Alpine — это легкий дистрибутив Linux, разработанный и оптимизированный для запуска веб-приложений в Docker. Другими словами, Linux Alpine обладает достаточным количеством зави...

Windows 10 19H2 будет представлять собой Service Pack По информации Мэри Джо Фоли, следующее крупное обновление для Windows 10 под кодовым названием 19H2 по-прежнему планируется, однако оно будет представлять собой скорее Service Pack (набор исправлений и улучшений), нежели привычное функциональное обновление. They are definit...

Простой москвич Levelord: интервью с создателем Duke Nukem RUVDS совместно с Хабром продолжают проект, состоящий из серии интервью с интересными, на наш взгляд людьми в IT-среде. В прошлый раз мы познакомились с главным «по мозгам» Алисы в Яндексе Борисом Янгелем. Сегодня представляем вашему вниманию интервью с Ричардом (Levelord) ...

Разрушение Silo через адаптацию VeriSM™ подхода Силосная культура – бич современного бизнеса любого уровня. Главный признак ее возникновения – замкнутость подразделений внутри своих бизнес-процессов, что непременно ведет к смещению фокуса с глобальных задач компании на удовлетворение собственных. Силос по своей сути это б...

Улучшаем работу Wi-Fi. Часть 2. Особенности оборудования Друзья, эта статья является продолжением первой части цикла статей о том как улучшить работу WiFi в офисе или на предприятии. Читать дальше →

ServerLess PHP Накануне запуска курса «Backend-разработчик на PHP» мы провели традиционный открытый урок. В этот раз познакомились с концепцией Serverless, поговорили о её реализации в AWS, разобрали принципы работы, сборки и запуска, а также построили простой TG-бот на PHP на базе AWS Lam...

Дайджест интересных материалов для мобильного разработчика #288 (24 февраля — 3 марта) В новом дайджесте мы справляемся с раскладушками и пишем приложения на ассемблере, практикуем функциональный Swift и делаем бионическое зрение, разрабатываем на Flutter и улучшаем UX, исследуем лучшие игры и приложения. Добро пожаловать! Читать дальше →

[Перевод] Софт для Boeing-737 Max писался аутсорсерами, зарабатывающими $9 в час В разгар кризиса вокруг Boeing-737 Max, до сих пор остается загадкой: каким образом компания, прославленная своим тщательным подходом к проектированию, допустила, судя по всему, детские ошибки при разработке софта, приведшие к двум катастрофам с человеческими жертвами. Инж...

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

Музей DataArt. Катушки с ОС 6.1 для ЕС ЭВМ Очередной экземпляр из нашей коллекции — магнитные ленты с операционной системой для серии советских компьютеров ЕС ЭВМ. Идею универсального подхода к разработке вычислительной техники в министертве радиопмышленноти СССР обсуждали еще в середине 1960-х годов. В 1968 году ...

Анализ производительности ВМ в VMware vSphere. Часть 3: Storage Часть 1. Про CPU Часть 2. Про Memory Сегодня разберем метрики дисковой подсистемы в vSphere. Проблема со стораджем – самая частая причина медленной работы виртуальной машины. Если в случаях с CPU и RAM траблшутинг заканчивается на уровне гипервизора, то при проблемах с ди...

Открытый вебинар «Разработка высоконагруженных систем на PHP» Добрый вечер! В преддверии старта курса «Backend-разработчик на PHP» мы традиционно провели открытый урок. На нём поговорили о высоконагруженных системах, масштабировании, архитектуре. Детально рассмотрели HighLoad, а также основные подходы и тактики при разработке высоконаг...

[Перевод] Учебный курс по React, часть 28: современные возможности React, идеи проектов, заключение Сегодня, в заключительной части перевода курса по React, мы поговорим о современных возможностях React и обсудим идеи React-приложений, создавая которые, вы можете повторить то, чему научились, проходя этот курс, и узнать много нового. → Часть 1: обзор курса, причины попу...

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

GS Labs запатентовал способ предоставления медиаконтента Центр исследований и разработок GS Labs получил решение о выдаче патента на уникальные функциональные возможности Stingray TV

Samsung получила сертификат безопасности на полупроводниковые компоненты для автомобилей Samsung Electronics объявила о получении сертификата ISO 26262, подтверждающего функциональную безопасность полупроводниковых компонентов для автомобилей. Он был выдан концерном TÜV Rheinland Group, предоставляющим услуги по тестированию устройств на предмет безопасности и с...

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

MIRO — открытая платформа indoor-робота. Часть 4 — Программная составляющая: ARDUINO (AVR) Продолжаем разбирать программную составляющую платформы MIRO. Хочется более подробно рассмотреть именно программное обеспечение под AVR. Поэтому вопросу посвятим две части. В первой опишем общую структуру библиотеки, а во второй — реализацию некоторых ключевых методов клас...

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

RDMA внутри ЦОД в реализации от Huawei Под катом о том, какой подход предлагает Huawei при организации удаленного прямого доступа к памяти с использованием технологии AI Fabric и чем он отличается от InfiniBand и «чистого» RDMA на базе Ethernet. Читать дальше →

Инструменты информирования или как мы рассказываем о своих сервисах и процессах Хабр, привет! Все, кто работал хотя бы в одной крупной территориально распределенной компании с сетью филиалов по всей стране, сталкивался с проблемой: «Как проинформировать заинтересованные лица об услугах и сервисах, которые вы предоставляете в рамках своего подразделения...

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 1) Компьютерное зрение. Сейчас о нём много говорят, оно много где применяется и внедряется. И как-то давненько на Хабре не выходило обзорных статей по CV, с примерами архитектур и современными задачами. А ведь их очень много, и они правда крутые! Если вам интересно, что сейчас ...

Детали корпуса напечатанные из полиамида Детали корпуса напечатанные из полиамида методом SLS. Технология разработана для получения прочных и гибких функциональных деталей, прототипов и мастер-моделей. Полиамид отличается высокими показателями износостойкости.https://3d-m.ru/3d-pechat-iz-poliamida/

Обзор Skaffold для разработки под Kubernetes Полтора года назад, 5 марта 2018, компания Google выпустила первую альфа-версию своего Open Source-проекта для CI/CD под названием Skaffold, целью которого стало создание «простой и воспроизводимой разработки под Kubernetes», чтобы разработчики могли сфокусироваться именно...

Локализация приложения и поддержка RTL. Доклад Яндекс.Такси При локализации сервиса важно внимательно отнестись к согласованию переводов между собой. Руководитель группы клиентской Android-разработки Яндекс.Такси Александр Бонель рассказал, какие практики и инструменты упрощают локализацию. Во второй части доклада Саша поделился опыт...

[Перевод] Разбираемся с Clean Code в Android В качестве вступления хотелось бы вспомнить цитату дядюшки Боба Вы читаете эту статью по двум причинам. Первая — Вы программист, вторая — Вы хотите быть лучшим программистом. Читать дальше →

[Перевод] Чем функциональные компоненты React отличаются от компонентов, основанных на классах? Чем функциональные компоненты React отличаются от компонентов, основанных на классах? Уже довольно давно традиционный ответ на этот вопрос звучит так: «Применение классов позволяет пользоваться большим количеством возможностей компонентов, например — состоянием». Теперь, с п...

Состоялся официальный релиз Windows 10 May 2019 Update Компания Microsoft объявила об официальной доступности нового функционального обновления для Windows 10 под названием May 2019 Update для всех пользователей. На текущий момент обновление до новой версии системы доступно тем, кто вручную проверит наличие обновлений в приложе...

Сертификация ISTQB. Часть 2: Как готовиться к сертификации ISTQB? Истории из практики В Первой части нашей статьи по сертификации ISTQB мы постарались ответить на вопросы: Кому? и Зачем? нужен данный сертификат. Меленький спойлер: сотрудничество с ISTQB открывает больше дверей скорее перед компанией-работодателем, чем перед новоявленным владельцем сертификат...

«Классный автомобиль, но нужен рестайл»: Блогер протестировал Mitsubishi Pajero четвертого поколения в комплектации Final Edition Японский внедорожник в последней серии показал себя с наилучшей стороны. Mitsubishi Pajero четвертого поколения считается одним из достойных автомобилей современности, но при этом о нем недостаточно много знают российские автолюбители. Ведущий канала «Z Drive» провел тест-д...

PHP: изменение стуктуры БД в командной разработке В мире PHP хорошо известны инструменты миграций структуры БД — Doctrine, Phinx от CakePHP, от Laravel, от Yii — это то первое, что пришло в голову. Наверняка, есть еще с десяток. И большинство из них работают с миграциями — командами для внесения инкрементных изменений в с...

WEB 3.0 — второй подход к снаряду Сначала немного истории. Web 1.0 — это сеть для доступа к контенту, который размещали на сайтах их владельцы. Статичные html-страницы, доступ к информации только для чтения, основная радость — гиперссылки, ведущие на страницы этого и других сайтов. Типичный формат сайта —...

AppsConf to rule them all iOS и Android-треки для любителей классических конференций, чтобы лучше справляться с ежедневными рабочими задачами. General-трек, чтобы сделать следующий шаг по карьерной лестнице. Introductory-трек, чтобы послушать обзорный доклад про смежные с мобильной разработкой обла...

[Из песочницы] OpenAI Gym+ROS+Gazebo: обучение автономного робота в домашних условиях. Часть 1 За последние несколько лет мы стали свидетелями внедрения технологий искусственного интеллекта в нашу повседневной жизни — от роботов-пылесосов до беспилотных дронов. Все они, управляемые искусственным интеллектом, уже являются для нас обыденностью. Но несмотря на это, проце...

Ticket to Ride.Европа — арифметика, часть вторая Всё ещё продолжаю изучать основы математики и механики в игре. Данная статья является второй в серии (Ссылка на первую часть), в ней продолжается анализ перегонов, попытка их сортировки по потребности, изучение различных способов строительства маршрутов. Если проводить анало...

Оптимизация Unity UI В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые по...

Когерентные CFP WDM (100G/200G) и их применение в системах DWDM Первые пресс релизы о появлении когерентных CFP модулей (coherent CFP optical pluggable modules) стали появляться примерно 5-6 лет назад. Тогда их использование в системах оптического уплотнения было в новинку и являлось по сути нишевым решением. Сейчас, по прошествии шест...

[Перевод] Учебный курс по React, часть 13: компоненты, основанные на классах Сегодня мы публикуем перевод очередного занятия учебного курса по React. Оно посвящено компонентам, основанным на классах. Такие компоненты создают с использованием ключевого слова class. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функци...

Не очередной язык программирования. Часть 3: Физика Третья и заключительная часть серии статей о языке lsFusion (ссылки на первую и вторую части) В ней речь пойдет о физической модели: всем том, что не связано с функционалом системы, а связано с ее разработкой и оптимизацией производительности, когда данных становится слиш...

JMeter — швейцарский нож тестировщика (Часть 2) Сегодня расскажу, как мы с помощью JMeter’а наладили процесс кэширования продуктовых страниц, проверили работу мобильного приложения без самого приложения и создали 2000 юзеров в системе без доступа к базе данных. Кто не в курсе, что здесь происходит, читайте первую часть ...

[Перевод] PostgreSQL и настройки согласованности записи для каждого конкретного соединения Перевод статьи подготовлен специально для студентов курса «Базы Данных». Интересно развиваться в данном направлении? Приглашаем вас на День Открытых Дверей, где мы подробно рассказываем о программе, особенностях онлайн-формата, компетенциях и карьерных перспективах, которые ...

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

Трактат о Pinе. Мысли о настройке и работе с пинами на С++ для микроконтроллеров (на примере CortexM) Последнее время я сильно увлекся вопросом надежности софта для микроконтроллеров, 0xd34df00d посоветовал мне сильнодействующие препараты, но к сожалению руки пока не дошли до изучения Haskell и Ivory для микроконтроллеров, да и вообще до совершенно новых подходов к разработк...

Семантический браузер или жизнь без сайтов Мысль о неизбежности перехода глобальной сети от сайтоцентристской структуры к юзероцентристской я высказал еще 2012 году (Философия эволюции и эволюция интернета или в сокращенном виде WEB 3.0. От сайтоцентризма к юзероцентризму). В этом году я попытался развить тему ново...

Наглядное пособие по разработке продуктов: формирование идеи Это перевод первой части цикла из четырех статей о разработке и производстве физических продуктов. Автор, источник: Ben Einstein. Зачастую разница между компанией, приносящей миллиарды, и компанией-банкротом – в умении создать продукт, который полюбят клиенты. Но с учётом...

Разработка монолитной Unix подобной OS — Начало В связи с отрицательными отзывами пробной статьи «Разработка микроядерной Unix подобной OC — планировщик» я решил перезапустить серию статей с учетом некоторых замечаний. Теперь, осознав свою целевую аудиторию, я смог сместить фокус с подобных себе на тех кому это действител...

[Перевод] Интервью — 10 вопросов про Swift. Часть 3 Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Question...

3D-печать металлом в автомобилестроении: начинать нужно с малого Компании EDAG, Voestalpine и Simufact разработали петлю капота двигателя LightHinge+, используя потенциал аддитивного производства. Компоненты были изготовлены в Центре аддитивного производства Voestalpine на металлическом 3D-принтере SLM 280 с двумя лазерами (технология с...

[Перевод] Миниатюрный функциональный аналог декатрона для реплики Harwell Dekatron Computer и не только Разрабатывая этот функциональный аналог декатрона, автор преследовал две цели: поучаствовать всё в том же конкурсе конструкций на платах площадью в один квадратный дюйм, а также применить множество таких модулей в проекте WITCH-E по воссозданию Harwell Dekatron Computer, т...

Android Camera2 API от чайника, часть 2, пишем видео Продолжаем разбираться с CAMERA2 API Android. В предыдущей статье мы осваивали работу камеры, чтобы делать фоточки, используя новое API. Теперь же займёмся съемкой видео. Вообще изначально, главной моей целью был стрим по сети живого видео с камеры Android при помощи Med...

[Перевод] Специализированные чипы не спасут нас от «тупика ускорителей» Усовершенствования в скорости работы ЦП замедляются, и мы наблюдаем, как полупроводниковая индустрия переходит на карточки ускорителей, чтобы результаты продолжали заметно улучшаться. Больше всего выгоды от этого перехода получила Nvidia, однако, это часть одной и той же т...

Оригинальный HoloLens больше не будет получать крупные обновления системы Компания Microsoft подтвердила, что первое поколение HoloLens больше не будет получать крупные функциональные обновления операционной системы, а значит Windows 10 October 2018 Update будет последней версией, доступной для устройства. Теперь оригинальный HoloLens находится в...

Печать деталей полиамидом Печать деталей полиамидом методом селективного лазерного спекания #SLS. Технология идеально подходит для получения прочных функциональных деталей сложных форм. Полиамид отличается высокими показателями износостойкости и пластичности. https://3d-m.ru/3d-pechat-iz-poliamida/

Не баг, а фича: исследование моторики и мозговой активности человека с полидактилией Тело человека можно сравнить с очень сложным механизмом, состоящим из множества отдельных систем, которые работают слаженно и своевременно для обеспечения жизнедеятельности. Можно сравнить и с программой, состоящей из тысяч строк кода, каждая из которых выполняет определен...

Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 1/2: Progressive Web App Наверное, все близкие к веб-разработке люди уже наслышаны о Progressive Web App. Ещё бы! Эта технология практически уравняла веб и мобильную разработку с точки зрения распространения продуктов и вовлечённости пользователей. Да, современный фронтенд, написанный, например, ...

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

Тестирование на примере ReactJS: насколько глубока кроличья нора Всем привет, меня зовут Ярослав Астафьев, и сегодня я хотел бы провести обзорную экскурсию в тестирование ReactJS. Я не буду углубляться в сложности тестирования веб приложений с использованием определенных библиотек (руководствуясь подходом «сложно тестировать только плохой...

Google назвала главное новшество Android 10.0 Q Операционная система Android имеет уже более чем 10-летнюю историю. За этот срок она невероятно сильно изменилась, причем как по части внешнего вида, так и с точки зрения функциональных возможностей. Уже в нынешнем 2019 году состоится Сообщение Google назвала главное новшес...

[Перевод] История Vim и руководство по его эффективному использованию Примечание от переводчика: это первая часть монументальной (на самом деле монументальной) статьи о Vim и его возможностях от разработчика из Миннеаполиса и автора проекта PostgREST Джо begriffs Нельсона. Первая часть статьи отводится на знакомство с историей Vim как редакт...

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

Мюонный катализ с точки зрения квантовой химии. Часть I: обычный водород vs. мюонный водород Многабукафф о том, что квантовая химия думает о принципе работы мюонного катализа: как именно мюон понижает температуру требуемой плазмы. В двух частях. Суть первой части выражается одним предложением: мюон тяжелее, чем электрон, поэтому его сложнее отодрать от протона. Но...

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

Атомэкспо 2019, часть 2: экспозиция Второй рассказ о форуме “Атомэкспо-2019” посвящен экспозиции. В целом ее можно разделить на две части — большое, продвинутое, красивое и научно-популярное пространство Росатома и обычные стенды участников. Представители атомных агентств мира открыли в Сочи сквер “Зеленый к...

Страх и ненависть DevSecOps У нас было 2 анализатора кода, 4 инструмента для динамического тестирования, свои поделки и 250 скриптов. Не то, чтобы это всё было нужно в текущем процессе, но раз начал внедрять DevSecOps, то надо иди до конца. Источник. Авторы персонажей: Джастин Ройланд и Дэн Хармон. ...

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

Архитектурные подходы в iOS-приложениях Сегодня поговорим об архитектурных подходах в iOS-разработке, про некоторые нюансы и наработки реализации отдельных вещей. Расскажу, каких подходов придерживаемся мы и немного углубимся в детали. Читать дальше →

ok.tech: frontend meetup 4 июня в петербургском офисе Одноклассников пройдет ok.tech: frontend meetup. Вместе с коллегами из OK.ru, Яндекса и mail.ru поговорим про тестирование на основе свойств, эволюцию подходов работы с текстами, познакомимся с новой библиотекой от создателя Emmet Сергея Чикуён...

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

Windows 10 May 2019 Update получает новую функцию Windows Update Windows 10 версии 1903, выпуск которой запланирован на конец мая 2019 года, представит улучшенную страницу настроек Центра обновления Windows. В последней сборке Центр обновления Windows получает новую опцию, которая позволит пользователям устанавливать накопительные и допол...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 2 Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 2. Начало работы Как и планировалось, в этой части рассмотрим более подробно особенности программирования с использованием библиотеки NanoRTOS. Те, кто начал чтение с этого поста, могут ознакомиться с о...

Анемичная и «Богатая» модель в контексте GRASP шаблонов В недавнем выпуске подкаста DotNet&More мы обсуждали с Максимом Аршиновым его предстоящий доклад на Московский .Next "Блеск и нищета предметной модели". С позицией Максима можно будет легко познакомиться непосредственно на конференции. И, в качестве дополнения, я бы хоте...

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

[Перевод] Пишем свой сетевой слой на Swift: протокол-ориентированный подход Сейчас практически 100% приложений используют работу с сетью, поэтому вопрос организации и использования сетевого слоя встает перед каждым. Есть два основных подхода к решению этой проблемы, это либо использование сторонних библиотек, либо собственная реализация сетевого с...

Взгляд изнутри: RFID в современном мире. Часть 2: китайские RFID В прошлой статье мы познакомились с RFID-метками, которые незримо окружают нас в быту. Сегодня продолжим разбираться с бытовым применением меток и взглянем на метки китайского производства. Всё лучшее для фанатов geekporn с китайской перчинкой начинается здесь!

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

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

[Перевод] Tesla Autonomy Investor Day. Разработка Full Self-Driving Computer (расшифровка) Перевод первой части презентации Tesla Autonomy Investor Day, посвященной разработке компьютера Tesla Full Self-Driving Computer (FSDC) для автопилота Tesla. Восполняем пробел между тезисными обзорами на презентацию и её содержанием. Читать дальше →

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 1. Пиксель О чем эта серия уроков? В данной серии статей, которые я собираюсь написать, я постараюсь максимально раскрыть теорию создания текстур для игровой индустрии, начиная от самого понятия «пиксель» и заканчивая построением сложных материалов (шейдеров) в игровом движке на пример...

Ключевые тренды в разработке ПО Как устроена современная разработка программного обеспечения? Чтобы ответить на этот вопрос, компания Atlassian провела опрос 500 профессионалов в данной области, по результатам которого были определены ключевые тренды в применении современных практик и подходов к разработ...

Портативные телевизоры серии H-LCD от Hyundai Компания Hyundai представила свои новые портативные телевизоры серии H-LCD. Эти небольшие, но функциональные устройства станут отличным выбором для путешествий. Новинки способны транслировать телевидение, но при этом обладают разъемами USB, HDMI и слотами для карт, т...

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

[recovery mode] ReactJS + MobX — опыт использования DI Мне кажется, настало время поделится подходом для написания ReactJS App, я не претендую на уникальность. Первый абзац можно пропустить. Я занимаюсь web разработкой уже давно, но последние четыре года я плотно сижу на ReactJS и меня все устраивает, в моей жизни был redux, но...

Атмосферный трейлер головоломки The House of Da Vinci 2 Осенью стало известно, что в разработке находится полноценный сиквел головоломки The House of Da Vinci — одной из лучших и по-настоящему качественных игр в стиле серии The Room. Авторы показывали только скриншоты локаций, на которых будет происходить действие во второй части...

[Из песочницы] Голливудский принцип (IoC) В этой статье я постараюсь рассказать о принципе проектирования, называемом Inversion of Control / Инверсия управления (IoC), называемом еще Голливудским принципом. Покажу, какое отношение это имеет к принципу подстановки Барбары Лисково (LSP) а также внесу свою лепту в свящ...

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

[Из песочницы] Знакомство с lit-element и веб-компонентами на его основе В один момент мне предстояло срочно познакомиться с веб-компонентами и найти способ удобно разрабатывать с их помощью. Я планирую написать серию статей, что бы как-то систематизировать знания по веб-компонентам, lit-element и дать краткое ознакомление с этой технологией для...

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

Обзор Mortal Kombat 11. Готовы ломать врагов? У фанатов файтингов вчера был настоящий праздник — новая часть легендарной серии Mortal Kombat вышла в свет и уже готова покорять преданных ценителей. Игра стала более продвинутой в графическом плане, более быстрой и агрессивной, изменились некоторые ключевые механики, появи...

Android Q Beta 2 приносит «пузырьки»-уведомления и многое другое Google выпустила вторую бета-версию Android Q менее чем через месяц после запуска первой. Хотя большинство улучшений — это новые API для разработчиков, есть и интересная новинка: появились «пузырьки» уведомлений. Они похожи на те, что имеются в Facebook Messenger, и позволяю...

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

Конференция C++ Russia 2019 Всем привет! Представьте, что C++ Russia больше нет. Куда вы пойдёте вместо этого? Есть множество конференций, посвящённых более широким темам, но наша — одна из немногих, целиком и полностью сфокусированная на C++ и открыто заявляющая, что это будет реальный хардкор. Выбор...

Анонс Windows 10 Insider Preview Build 18362.10022 (19H2) Добрый вечер, друзья! Компания Microsoft выпустила новую сборку Windows 10 19H2 под номером 18362.10022 для инсайдеров, находящихся на канале «Поздний доступ». Эта сборка включает в себя все исправления и улучшения из обновления KB4515384, а также общие улучшения качества д...

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

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

Корректный ASP.NET Core Специально для любителей книг "С++ за 24 часа" решил написать статью про ASP.NET Core. Если вы раньше не разрабатывали под .NET или под какую-то аналогичную платформу, то смысла заходить под кат для вас нет. А вот если вам интересно узнать что такое IoC, DI, DIP, Intersept...

Создание своего jsfiddle, часть 2 Привет всем читателем Habr. В данной статье мы будем продолжать писать свой онлайн редактор кода. В этой статье мы сделаем функцию сохранения кода в localStorage и по обновлению страницы этот код будет вставляться в эти 3 поля, а также сделаем функцию скачивания этого кода...

[Из песочницы] 9 Принципов для создания качественных iOS приложений Принципы основаны на известной методологии от heroku, адаптированы под реалии айос разработки (Отсутствие контейнеров, ревью которые занимают несколько дней и тормозят развертывания, работа Xcode только на маке). Эта статья является коротким введением, полную серию можете на...

[Из песочницы] Инкапсуляция в Python 3 Определение Значение термина «инкапсуляция» расплывчато и отличается от источника к источнику. Принято считать, что инкапсуляция — один из основополагающих принципов ООП, хотя некоторые научные статьи вовсе упускают инкапсуляцию из списка. К примеру, Джон Митчелл в книге «К...

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 2 Представляем вашему вниманию вторую часть перевода материала, посвящённого особенностям работы с модулями в Python-проектах Instagram. В первой части перевода был дан обзор ситуации и показаны две проблемы. Одна из них касается медленного запуска сервера, вторая — побочных э...

Монады с точки зрения программистов (и немного теории категорий) Введение Как узнать, что человек понял, что такое монады? Он сам вам об этом расскажет в первые 5 минут общения и обязательно попробует объяснить. А ещё напишет об этом текст и по возможности где-нибудь его опубликует, чтобы все остальные тоже поняли, что такое монады. Среди...

Google приводит аргументы для оправдания трекинга пользователей — компанию упрекают в неискренности и манипуляциях 22 августа 2019 года директор по разработке браузера Chrome Джастин Шух (Justin Schuh) опубликовал программную статью «Создавая более конфиденциальный веб». В ней: Объявлено об инициативе по разработке ряда открытых стандартов для «фундаментального улучшения конфиденциальн...

MeetUp Molinos. Прокачка процессов в продукте от дизайна к фронту 15 марта в 19.00 приглашаем дизайнеров и фронтендеров в Лекторий Molinos. Наш второй MeetUp посвящен инструментам и методам, помогающим улучшить процессы при разработке продукта на этапах дизайна и фронтенда. Повестка 1. Антон Григорьев, ...

ITIL и ITSM — история обмана. Нужно ли «внедрять» ITIL, какие есть альтернативы и как не попасть в ловушку «экспертов»? ITSM — известный и подтвердивший свою эффективность годами подход к организации процессов управления ИТ. ITIL — источник лучших практик ITSM. Огромное количество статей на Хабре по теме ITIL/ITSM лишь подтверждает широкий интерес к теме. В прошлом году вышла очередная верс...

ІТ термины на примере процесса выращивания картошки Недавно меня спросили, чем разработка на C# отличается от разработки на C++. В результате родилась идея объяснить значение тех или иных ИТ терминов на примере процесса выращивания картошки. Читать дальше →

Лицензирование nanoCAD Добрый день! Служба технической поддержки компании «Нанософт» получает достаточно много вопросов, касающихся лицензирования продуктов линейки nanoCAD. В связи с этим я решил собрать некоторые интересные вопросы от клиентов и ответить на них в нескольких статьях. Для начала ...

Восемь именных законов в UX дизайне ( часть 1) В UX дизайне, как и в любой другой сфере деятельности, есть свои принципы и законы. В этой статье я бы хотел разобрать восемь из них, которые названы в честь их создателей. Читать дальше →

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

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

Пишем под FPGA без HDL. Сравнение высокоуровневых средств разработки В последнее время производители FPGA и сторонние компании активно развивают методы разработки для FPGA, отличающиеся от привычных подходов использованием высокоуровневых средств разработки. Являясь FPGA-разработчиком, в качестве основного инструмента я использую язык описа...

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

Xiaomi Mi Band 4 поверг всех покупателей в сильнейший шок Спрос на носимую электроинку стремительно увеличивается с каждым годом. Происходить это по большей части из-за того, что все более широкий круг людей хочет ее активно использовать. Ее функциональные возможности расширяются, а стоимость снижается. Как следствие, Сообщение Xi...

Xiaomi Mi Band 3 временно распродают за бесценок Совсем недавно в продажу на территории России, а также множества других стран мира, поступил фитнес-браслет нового поколения от компании Xiaomi, который получил цветной экран и некоторые другие преимущества. Тем не менее, по части функциональных возможностей Сообщение Xiaom...

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

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

[Из песочницы] Учимся стандарту проектирования — Entity Relationship Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году. По ходу статьи простым языком на простых примера...

Кухонные весы серии SSK от STARWIND Компания STARWIND объявила о расширении серии кухонных весов серии SSK. Она представила 4 новые модели, сделанные из закаленного стекла с пластиком высокого качества и обладающие максимальным подъемным весом до 5 кг. Стильные и функциональные кухонные весы не только...

Функциональный планшет Lenovo Yoga Smart Tab появился в России Компания Lenovo вывела на российский рынок планшет Lenovo Yoga Smart Tab, впервые показанный на выставке IFA 2019 в Берлине. Подробнее об этом читайте на THG.ru.

8 смартфонов для школьников до 10 000 рублей Мы собрали недорогие и функциональные смартфоны, которые станут хорошим выбором для школьников и студентов.

Переключатели функциональности (feature toggles): виды, преимущества и работа с ними в .NET Переключатель функциональности — это инструмент, позволяющий переключаться со старой функциональности на новую, не пересобирая приложение и не выпуская его заново. Реализуется добавлением в код условного оператора (if), который дает возможность управлять поведением программ...

Разработка boost преобразователя на DSP: принцип работы, расчеты, макетирование Я уже писал подобную статью про топологию buck, то есть про понижающий преобразователь, сегодня рассказ пойдет о том, как сконструировать повышающий (boost) преобразователь напряжения с управлением не на аналоговом ШИМ-контроллере, а на DSP/МК. Макет будет собран на основе м...

Кот под колпаком. Часть 2 Всем привет! В прошлой части мы рассказали про существующие решения для «оркестрации» параллельных задач «взлома хешей» на hashcat. В этой части продолжаем рассказывать о проекте Hashtopolis. Рассмотрим подготовку компонентов веб-окружения на сервере. Разберем основные пар...

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

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Продолжая серию статей, в которых я освещаю основные фичи IntelliJ...

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

One Switch – утилита, которая способна заменить несколько программ (Mac) На macOS существует большое количество разных утилит для меню-бара. Многие из них не отличаются широкими функциональными возможностями, но при этом заметно упрощают доступ к некоторым функциям или делают использование системы более удобным. Однако со временем у активных поль...

PHP для начинающих. Сессия Всем хорошего дня. Перед вами первая статья из серии PHP для начинающих разработчиков. Это будет необычная серия статей, тут не будет echo "Hello World", тут будет hardcore из жизни PHP программистов с небольшой примесью «домашней работы» для закрепления материала. Начну с...

[Перевод] Сила дженериков в Swift. Часть 2 Добрый день, друзья. Специально для студентов курса «iOS Разработчик. Продвинутый курс» мы подготовили перевод второй части статьи «Сила дженериков в Swift». Связанные типы, условия where, сабскрипты и прочее… В статье «Сила дженериков в Swift. Часть 1» описывались gene...

[Перевод] Внутренности JVM, Часть 1 — Загрузчик классов Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В этой серии статей я расскажу о том, как работает Java Virtual Machine. Сегодня мы рассмотрим механизм загрузки классов в JVM. Читать дальше →

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

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 2 Продолжаем разговор про 3Д шутер за выходные. Если что, то напоминаю, что это вторая половина: Часть первая: отрисовка стен Часть вторая: населяем наш мир + оконный интерфейс Как я и говорил, я всеми силами поддерживаю желание в студентах делать что-то своими руками. В ча...

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

Как расставить приоритеты в разработке. Опыт внедрения GIST + ICE в Яндекс.Маркете Рассмотрим одно из подразделений Яндекс.Маркета. Оно довольно крупное — 85 человек. Внутри подразделения есть несколько команд. Команды либо занимаются функциональными частями Маркета, либо решают какую-то большую пользовательскую задачу. Вот одна из них: изменить сам сервис...

Как понять, что ты действительно бросил курить Осторожно, лонгрид. TL;DR. Много курил, давно бросил. Есть интересное наблюдение на тему вредных привычек. Не встречал его в других источниках. У части людей, бросивших курить, годами сохраняется зависимость, несмотря на то, что они не употребляют сигареты. Привычка продол...

[Перевод] Различия Fluent и gettext Продолжая дискуссию о преимуществах Fluent перед привычным gettext, публикую официальную позицию создателей Fluent в переводе. Gettext — это система локализации, глубоко укоренившаяся в проект GNU и сопутствующие ему архитектурные решения. Fluent Project рассматривает gette...

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

[Перевод] Разработка микросервисов с помощью BDD и IOD BDD — разработка через поведение. BDD для микросервисов — это сотрудничество клиента, разработчиков и тестировщиков. BDD — это разработка, которая учитывает и технические интересы и бизнес-требования. Этот подход обычно применяется для описания интерфейсов приложений, а так ...

Вывод Jira из состояния помойки, с чего начать Вдруг мы понимаем, что Jira превратилась в помойку. Каждый второй РП настраивал Jira как ему было удобнее бесконтрольно. А когда проект начал гореть, начал тушить пожары вручную, оставляя задачи в трекере в каком-то состоянии, далеком от завершения. Если в проекте создан пол...

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

Готовится нечто грандиозное. Microsoft уже начала тестировать крупное функциональное обновление Windows 2020 года Компания Microsoft выпустила раннюю сборку Windows 10 для участников программы Windows Insiders в рамках канала Skip Ahead (Перейти к следующему выпуску). Однако к удивлению тестеров, сборка относится не к осеннему обновлению ОС 2019 года под кодовым названием 19H2, а к...

[Перевод] Лямбды: от C++11 до C++20. Часть 1 Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра. Лямбда-выражения являются одним из наиболее мощных дополнений...

Профессиональный Postgres Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. Доклад Олега Бартунова на тему «Профессиональный Postgres» открывал пленарную часть конференции. В нем раскрыта история СУБД Postgres, российский вклад в разработку, особенности а...

SpaceIL предпримет вторую попытку посадки на Луну Как известно, первая попытка SpaceIL совершить посадку на Луну прошла не по плану. Тем не менее, некоммерческая организация сможет продолжить проект и предпринять вторую попытку. Основной спонсор организации миллиардер Моррис Кан (Morris Khan) уже объявил, что будет пос...

[Перевод] Основы RxVMS: RxCommand и GetIt Это четвертая часть моей серии про архитектуру Flutter: Введение Основы Dart Streams RxDart: магические трансформации потоков Основы RxVMS: RxCommand и GetIt (этот пост) RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользователя посредством RxVMS...

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

7 мая появятся первые новости о новой игре Forza Motorsport Студия Turn10 подтвердила, что основная часть команды разработчиков приступает к разработке следующей части серии игр Forza Motorsport, первые сведения о которой будут раскрыты в следующем выпуске шоу Forza Monthly, которое состоится 7 мая этого года. Возможно, полноценный ...

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

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

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

[Из песочницы] Разработка под Docker. Локальное окружение. Часть 1 Возможно, одна из самых основных причин почему мне нравится докер это то, что он позволяет избавиться от необходимости установки на компьютер различных сервисов. К их числу можно отнести и сам веб-сервер Apache или Nginx, базы данных и прочие компоненты инфраструктуры прилож...

[Перевод] 3 популярных инструмента для организации непрерывного развертывания (Continuous Deployment) Continuous Deployment (непрерывное развертывание) — особый подход в разработке программного обеспечения, который применяется для быстрого, безопасного и эффективного внедрения различных функций в ПО. Основная идея — создание надежного автоматизированного процесса, позво...

Доступен Windows 10 SDK Insider Preview Build 18836 (Skip Ahead) Добрый вечер, друзья! Компания Microsoft выпустила новую инсайдерскиую сборку Windows 10 для участников программы Windows Insider, использующих канал Skip Ahead. Но, что примечательно, сборка под номером 18836 относится к обновлению с кодовым названием 20H1, а не 19H2, как ...

[Перевод] Как Baldur’s Gate спас компьютерные RPG Искусство может быть делом вкуса, но не подлежит сомнению следующий вывод: 1998 год стал лучшим годом для видеоигр, создавшим непревзойдённую линейку революционных игр, оставивших неизгладимое наследие и породивших серии и субкультуры, существующие и по сей день. На протяже...

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

Распознавание номеров. Как мы получили 97% точности для Украинских номеров. Часть 2 Распознавание номеров. Практическое пособие. Часть 1 Продолжаем рассказ о том как распознавать номерные знаки для тех кто умеет писать приложение «hello world» на python-е! В этой части научимся тренировать модели, которые ищут регион заданного объекта, а также узнаем как...

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

Вредные советы: как правильно писать техническую документацию? Часть вторая Советы по грамотному написанию технической документации для пользователей. Часть 2 Продолжение руководства нашего технического писателя Андрея Старовойтова, которое поможет сделать вашу пользовательскую документацию проще и понятнее. Начало статьи можно почитать тут, а то...

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

Байт-машина для форта (и не только) по-индейски (часть 3) Наступил год 2019. Новогодние праздники подходят к концу. Самое время начать вспоминать байты, команды, переменные, циклы… Что-то я все уже забыл с этими праздниками. Придется вспоминать вместе! Сегодня сделаем интерпретатор для нашей байт-машины. Это третья статья, первы...

[Из песочницы] Редактор блок схем — о дружбе Vue.js и MxGraph С чего все началось? Я фронтенд разработчик, но стремлюсь к развитию, решил написать fullstack приложение и стать миллионером получить бесценный опыт. Так вот, начал планировать бэкенд, выбрал MongoDB для хранения данных, и был готов планировать структуру и связи полей. Н...

Новые изображения MIUI 11: будильник станет удобнее, калькулятор — функциональнее   Пока Xiaomi продолжает хранить официальное молчание относительно новшеств MIUI 11, инсайдер Мукул Шарма (Mukul Sharma) продолжает публиковать в Twitter изображения интерфейса и его новых фишек. На этот раз предлагается полюбоваться на подретушированный будильник ...

[Перевод] Пишем Android-приложение на ассемблере Эта рассказ о нестандартном подходе к разработке Android-приложений. Одно дело — установка Android Studio и написание «Hello, World» на Java или Kotlin. Но я покажу, как эту же задачу можно выполнить иначе. Читать дальше →

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

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

CUBA 7: что нового? Три года назад мы объявили о выходе CUBA 6. Та версия стала революционной: вместо закрытой проприетарной лицензии мы стали распространять фреймворк свободно, по лицензии Apache 2.0. В то время мы не могли даже и близко представить, насколько это отразится на развитии фреймв...

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

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

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

[Перевод] UDB. Что же это такое? Часть 5. Datapath. Полезные мелочи Продолжаем рассматривать UDB на основе фирменной документации Cypress, а именно полезные мелочи, связанные с Datapath. Читать дальше →

Композитный «datasource»-объект и элементы функционального подхода Как-то раз я (ну ладно, даже не я) столкнулся с задачей добавить в UICollectionView с определенным типом ячеек одну ячейку совершенно другого типа, причем делать это лишь в особенном случае, который обрабатывается «выше» и никак не зависит от UICollectionView напрямую. Задач...

[Перевод] MVC без C: Что изменит SwiftUI в архитектуре приложений? MVC был давним стандартом в паттернах проектирования, используемых для написания iOS приложений. Структура iOS приложений, которые создавались ранее, была основана на одном базовом компоненте, который присутствует везде, и называется он — Controller. На WWDC19 был представле...

Kotlin DSL, Fixtures и элегантные UI тесты в Android Когда познакомился с Kotlin DSL, подумал: отличная штука, жалко в продуктовой разработке она не пригодится. Однако, я был неправ: он нам помог сделать очень лаконичный и элегантный способ написанная End-to-end UI тестов в Android. Читать дальше →

Начались поставки новых портативных проекторов BenQ серии M7 с функциями сетевых дисплеев, встроенными плеерам, LAN/Wi-Fi подключением 7-я серия является самой функционально насыщенной в семействе проекторов BenQ "M", которому принадлежит мировое лидерство по ассортименту и объемам продаж среди DLP проекторов Как и всем новым проекторам, моделям BenQ М7-серии предстоит проходить процедуру выбора покупателе...

История одного монолита Часть первая, в которой читатель познакомится с краткой историей появления внутренних продуктов 2ГИС и эволюцией системы доставки данных от нескольких скриптов до полноценного приложения. Сегодня я расскажу вам историю, которая началась 9 лет назад в компании ДубльГИС. Ч...

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 2) Продолжаем постигать современную магию (компьютерное зрение). Часть 2 не значит, что нужно сначала читать часть 1. Часть 2 значит, что теперь всё серьёзно — мы хотим понять всю мощь нейросетей в зрении. Детектирование, трекинг, сегментация, оценка позы, распознавание действи...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

Реверс-инжиниринг приложений после обфускации (Часть 2) Введение Данная публикация направлена на изучение некоторых приемов реверс-инжиниринга. Все материалы представлены исключительно в ознакомительных целях и не предназначены в использовании в чьих-либо корыстных целях. Рекомендуется к протчению после первой части Если хирург...

Как мы сделали движок и игру на нем за полтора года. Часть вторая. Инфраструктура Для начала несколько комментариев по следам предыдущей статьи. Мы действительно раньше работали в компании Wargaming, где разрабатывали движок, известный как dava.framework или dava.engine. Поэтому многие старые коллеги, с которыми мы по-прежнему в хороших отношениях, активн...

Флагманы от Xiaomi 2019 — что к чему, какой выбрать Смартфоны Xiaomi и дочерней компании Redmi традиционно топовые за свои деньги. Однако как выбрать подходящий смартфон? Чем Xiaomi Mi 9 отличается от Redmi K20 Pro? А от Mi Note 10? К тому же есть отдельная серия CC9. В общем, давайте разбираться с флагманами от Xiaomi и опре...

О локализации продуктов. Часть 2: как формируется цена? Во второй части статьи нашего технического писателя Андрея Старовойтова мы посмотрим, как именно формируется цена за перевод технической документации. Если не хочется читать много текста, смотрите сразу раздел «Примеры» в конце статьи. С первой частью статьи можно ознаком...

[Перевод] Радар на доплеровском эффекте Принципы частотно-модулированной радиолокации с постоянной частотой несущей используются в интерферометрии для измерения расстояния до объектов и их скорости. Это достигается путём передачи ЧМ сигнала и измерения разницы в частоте между задержанным приёмным и передаваемым ...

На MSDN опубликованы ISO-образы Windows 10 May 2019 Update Две недели назад Microsoft анонсировала Windows 10 May 2019 Update, а также рассказала об изменениях в процессе распространения функциональных обновлений. Известно, что развёртывание новой версии операционной системы среди пользователей начнётся лишь в конце мая, однако под...

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

Tic Tac Toe, часть 1 В статье "Сравнение: Svelte и React" я попробовал повторить разработку игры Tic Tac Toe. Там я выполнил только первую часть исходного туториала для React'а без поддержки истории ходов. В этой статье мы начнем разработку этой игры с применением фреймворка Svelte с поддержкой ...

[Перевод] Лучшие продукты отталкиваются от настоящих проблем: Intercom про Jobs-to-be-Done. Часть 2 Вторая часть перевода книги Intercom про Jobs-to-be-Done — это продолжение повествования о том, как концепция Jobs-to-be-Done меняет принципы создания и улучшения IT-продукта. Главы с третьей по шестую. Первая часть. Читать дальше →

Разработка Kubernetes оператора с Operator Framework Как уже говорилось в статье Радар технологий, Lamoda активно двигается в направлении микросервисной архитектуры. Большинство наших сервисов упаковываются с помощью Helm и деплоятся в Kubernetes. Данный подход полностью удовлетворяет наши потребности в 99% случаев. Остается ...

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

Игрушка ГАЗ-66 на пульте управления. Часть 2 В этой части поговорим о программной составляющей, как оживлялась машинка. Какая ОС использовались, какой язык был выбран, с какими проблемами сталкивался. Читать дальше →

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

Zombotron — динамичный космо-шутер про зомби без зомби Первая игра с названием Zombotron появилась еще в начале 2000-х годов и была выполнена на популярном тогда flash. Весной 2019 вышла уже четвертая часть достаточно популярной серии. Однако на этот раз разработчик решил использовать более функциональный движок – Unity. Такие и...

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

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

Режиссером «женского» спин-оффа Джона Уика «Балерина» назначили Лена Уайзмана, снявшего серию фильмов «Другой мир» Киновселенная наемных убийц «Джон Уик» продолжает активно разрастаться — после объявления о начале работ над четвертой частью основной серии и ТВ-сериале об отеле «Континенталь» студия Lionsgate запустила в работу первый спин-офф Ballerina / «Балерина...

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

MediaTek в сотрудничестве с KaiOS, представит мобильные 4G телефоны MediaTek и KaiOS объявили о стратегическом партнерстве, которое позволит двум компаниям поддерживать друг друга в экосистеме функциональных телефонов с поддержкой Интернета. Партнерство, приведет к интеграции KaiOS в чипсеты MediaTek с поддержкой 3G и 4G. Этот шаг работае...

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

[recovery mode] Почему не взлетел портал недвижимости. Часть 2 Продолжаю повествование о проекте Недвижимости, который пытался долго взлететь, но так и не взлетел. Пишу все как есть — личный опыт. Читать дальше →

ScalaConf 2019 — проповедник Джон, Святой Грааль и «Профессор Hаskell» 26 ноября в Инфопространстве пройдет ScalaConf 2019 — профессиональная конференция для Scala-разработчиков. Возможно, первая в России. Накануне события мы попросили Вадима Челышова (dos65), руководителя ПК ScalaConf 2019, рассказать о докладах и концепции конференции. Вот...

Главный недостаток Xiaomi Mi Band 4, который ненавидят все Носимая электроника с каждым днем становится все более интересной во всех отношениях, и у этого есть масса различных причин. Основная среди таковых заключается в том, что ее функциональные возможности расширяются, благодаря чему она становится все Сообщение Главный недостат...

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

[Перевод] Джо Армстронг об Elixir, Erlang, ФП и ООП В последние несколько дней на Хабре был опубликован ряд статей, общим лейтмотивом которых (особенно в комментариях) стало противостояние тупоконечников с остроконечниками – адепты ФП против ООП, хотя их и призывали не спорить. Иногда обсуждали Erlang, в связи с чем мне вспом...

Беседы о функциональном программировании на C++ Siberia 2019 Всем привет! Недавно в Новосибирске прошла очередная C++ Siberia 2019. На конференции была уютная атмосфера и много хороших докладов. Пользуясь случаем, я побеседовал с двумя нашими докладчиками, которых совсем скоро вы сможете увидеть и в Москве. Иван Чукич — один из разр...

Пять ключевых вопросов для ритейла при миграции к нам в облака Какими вопросами задались бы ритейлеры типа X5 Retail Group, Open, Auchan и прочие при переезде в Cloud4Y? Для ритейлеров настали сложные времена. Привычки покупателей и их хотелки за последнюю декаду изменились. Online-конкуренты вот-вот станут наступать на хвост. Покуп...

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

[Перевод] Основы Dart Streams Это вторая часть моей серии по поводу Flutter Architecture: Введение Основы Dart Streams (этот пост) RxDart: магические трансформации потоков Основы RxVMS: RxCommand и GetIt RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользователя посредством R...

Vue Storefront: Поднимаем backend Продолжаю продвигать свою реферальную ссылку на IaaS-провайдера Exostate и запиливаю вторую статью своей рекламной кампании. В первой статье я развернул и запустил приложение 'vue-storefront' как отдельный сервер, без привязки к каким-либо данным, маскируя таким нелепым обра...

Использование Liquibase для управления структурой БД в Spring Boot приложении. Часть 1 В этой статье я разберу использование утилиты Liquibase в Spring Boot приложениях для версионирования структуры реляционной БД и миграции этой структуры с одной версии на другую. В первой части разберем базовый пример, а во второй поговорим об использовании liquibase-mave-pl...

[Перевод] Cтажировка в Haxe Foundation Представляю вам перевод еще одного доклада с HaxeUp Sessions 2019 Linz, считаю что он хорошо дополняет предыдущий, т.к. продолжает тему изменений в Haxe, произошедших в 2019 году, а также немного рассказывает о его будущем. Немного об авторе доклада: Аурел Били познакомился ...

[Перевод] Изучаем Docker, часть 6: работа с данными В сегодняшней части перевода серии материалов о Docker мы поговорим о работе с данными. В частности — о томах Docker. В этих материалах мы постоянно сравнивали программные механизмы Docker с разными съедобными аналогиями. Не будем отходить от этой традиции и здесь. Данные в ...

Сети кабельного телевидения для самых маленьких. Часть 6: Усилители RF-сигнала В этой статье рассмотрим усилители высокочастотного радиосигнала кабельного телевидения на коаксиальной части магистрали. Читать дальше →

[Перевод] Легендарный Intel Core i7-2600K: тестирование Sandy Bridge в 2019 году (часть 3) Часть 1>> Часть 2 >> Часть 3 Игровые тесты: World of Tanks enCore Несмотря на то, что World of Tanks сильно отличается от большинства других часто играемых массовых многопользовательских онлайн-игр, он позволяет игроку очутиться в середине 20-го века и под сво...

Последний рубеж обороны QA: автоматическое обнаружение ошибок Привет! Меня зовут Асхат Нурыев, я ведущий инженер по автоматизации в компании DINS. Я работаю в Dino Systems последние 7 лет. За это время пришлось заниматься разными задачами: от написания автоматических функциональных тестов до тестирования производительности и высокой...

[Из песочницы] Таинственная программа LyX. Часть 1 Скопировано с моего блога в целях создания еще одного русскоязычного источника информации по данной теме. О чем я буду рассказывать? Эту серию статей будет писать человек, не очень разбирающийся в компьютерах для таких же людей. Я увлекаюсь математикой и с целью облегчения э...

В MIUI станет меньше рекламы Оболочка MIUI для смартфонов Xiaomi многим кажется удобным и функциональным решением, если бы не одно «но» – реклама. Чтобы ее увидеть многого не надо – достаточно открыть Проводник. Само собой, далеко не всем это нравится, поэтому уже какое-то в...

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

Искусственный интеллект на примере простой игры. Часть 2 В этот раз выбрана игра «Змейка». Создана библиотека для нейросети на языке Go. Найден принцип обучения, зависимый от «глубины» памяти. Написан сервер для игры между разработчиками. Читать дальше →

Складной Galaxy Fold показался на официальном видео Складной Galaxy Fold, релиза которого фанаты Samsung со всего мира ждут уже несколько лет, будет именно таким, каким его изображали множественные утечки и слухи. Это доказывает официальный видеоролик из презентации Samsung Unpacked 2019, утекший в Сеть за три недели до офиц...

Обзор HARPER HCLK-2041. Радиобудильник с системой фазовой автоподстройки Вам тяжело просыпаться по утрам и обычные будильники вам не помогают? Кажется, пришло время обзавестись чем-то более функциональным и стильным. Сегодня мы бы хотели представить вашему вниманию радиобудильник от компании HARPER, который позволяет просыпаться под ваши любимые ...

В watchOS 6 появились новые циферблаты, магазин приложений для часов и контроль менструального цикла Вслед за tvOS 13 на конференции WWDC 2019 была анонсирована и новая версия программной платформы для умных часов – watchOS 6. В рамках данного обновления не планируется каких-либо кардинальных новшеств, разработчики в основном сосредоточились на улучшениях имеющихся функцион...

Пользователи обругали Adobe за то, каким вышел Photoshop для iPad Photoshop для iPad вышел, но пользователи невысоко оценили его Помните мем «ожидание-реальность», высмеивающий завышенные ожидания? Он довольно точно отражает то, как многого мы порой ожидаем от кого-то или чего-то, получая на выходе нечто куда менее грандиозное. То же самое...

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

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

[Из песочницы] Цикл уроков по SDL 2.0: урок 3 — Библиотеки-расширения SDL От переводчика: Я продолжаю заброшенную серию переводов туториалов от Twinklebear, в оригинале доступных тут, с разрешения переводчика предыдущих уроков серии InvalidPointer. Первые два урока серии переводов в списке — за его авторством. Перевод отчасти вольный и может со...

«ДоксВижн» выпустила новую версию модуля Web-клиент Компания «ДоксВижн» выпустила новую версию модуля Web-клиент. Продолжаем расширять функциональные возможности. Новая версия — уже 13-я по счету. Если в прошлой версии акцент был сделан на модификации интерфейса и модульной ...

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

Дайджест IT событий марта (часть вторая) Заканчиваем обзор IT мероприятий этого месяца, оказавшегося неожиданно урожайным. Митапы продолжают удерживать лидерские позиции, но на этот раз их ощутимее разбавляют крупные конференции и хакатоны. Среди популярных тем — data science, Интернет вещей и машинное обучение. ...

Asterisk. Dialplan Askozia 6. Исходящие звонки В статье пойдет речь о бесплатной АТС Askozia версии 6. При разработке телефонной станции одной из первых задач была организация исходящих звонков. Как это было В старой версии Askozia использовались стандартные “шаблоны” dialplan. X! — все номера телефонов XXX — трехзна...

IoT архитектура Почти год назад я начал публиковать серию статей по архитектуре IoT решений. (Ссылка на первую статью habr.com/ru/post/420173). И вот наконец вторая статья серии отдается на ваш суд. Читать дальше →

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

[Из песочницы] Игрушка ГАЗ-66 на пульте управления. Часть 1 Несколько последних лет хотелось заполучить игрушку на пульте управления и обязательно с видео. Но не купить готовую, а сделать самому. И в итоге заказал себе вот такую игрушку, с простенькой системой управления, но большим потенциалом для модернизации. На все работы от ста...

[Перевод] Функциональный JavaScript: что такое функции высшего порядка и зачем они нужны? «Функции высшего порядка» — это одна из тех фраз, которыми часто разбрасываются. Но редко кто может остановиться и объяснить, что это такое. Возможно, вы уже знаете, что называют функциями высшего порядка. Но как мы используем их в реальных проектах? Когда и почему они быва...

Творчество на iPad и iPhone Для iOS постоянно появляются приложения для творчества. Музыкальные синтезаторы,  рисование акварелью, пиксель-арт и много чего ещё. Вдохновившись очередным таким приложением, я решил поделиться с вами информацией о возможностях для творчества, которые доступны на iOS-устр...

Видео: продолжение рассказа о создании Metro Exodus Издательство Deep Silver и студия 4A Games представили второй выпуск дневников разработчиков грядущего постапокалиптического боевика Metro Exodus. Всего будет три части этого небольшого документального фильма о создании игры (преимущественно на английском). В первой...

Разбор. Как работает SOCKS-прокси: плюсы, минусы, отличия от других технологий Изображение: Pexels В современном интернете, где все острее встает вопрос обеспечения анонимности, многие люди начинают задумываться о том, какие инструменты для этого им использовать. Здесь часто возникает путаница, поскольку не все разбираются в аспектах существующих те...

Как мы строим систему обработки, хранения и анализа данных в СИБУРе В начале 2018 года у нас активно пошел процесс цифровизации производства и процессов в компании. В секторе нефтехимии это не просто модный тренд, а новый эволюционный шаг в сторону повышения эффективности и конкурентоспособности. Учитывая специфику бизнеса, который и без вся...

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

Обзор материнской платы ASUS Prime X570-P. Прочный каркас Участник обзора является наиболее дешёвым устройств в линейке плат ASUS на базе AMD X570 и потому самым простым по функциональным возможностям. Запрашиваемая сумма может удивить часть покупателей, но за всё новое всегда нужно...

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

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