Социальные сети Рунета
Четверг, 18 апреля 2024

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Три парадигмы асинхронного программирования в Vertx Я хочу показать три парадигмы асинхронного программирования — callbacks, futures, coroutines на примере простого веб приложения на фрейморке Vertx. Код будем писать на Котлине. Допустим у нас есть приложение, которое получает некую строку в HTTP запросе, по ней ищет URL в б...

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

Книга «Spring. Все паттерны проектирования» Привет, Хаброжители! Мы издали книгу в которой дается обзор фреймворка Spring 5 и паттернов проектирования для него. Объясняется принцип внедрения зависимостей (dependency injection), играющий ключевую роль при создании слабосвязанного кода во фреймворке Spring. Затем рассм...

Идиоматичное программирование GPU на Rust: Библиотека Emu Введение Emu — это высокоуровневый язык программирования видеокарт, способный встраиваться в обычный код на системном языке программирования Rust. В данной статье речь пойдёт о синтаксисе Emu, его особенностях, а также будут показаны несколько наглядных примеров его использ...

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

Программирование LibreOffice Base В opensource офисных пакетах OpenOffice, LibreOffice есть редко используемая и очень скупо документированная возможность — программирование, которая позволяет быстро разрабатывать приложения, аналогичные, например, приложениям Microsoft Access. Сегодня я сделаю небольшой обз...

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

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

Школа магии PHP Что такое магия в PHP? Обычно под этим подразумевают методы вроде _construct() или __get(). Магические методы в PHP — это лазейки, которые помогают разработчикам выполнять удивительные вещи. В сети полно инструкций по их использованию, с которыми вы наверняка знакомы. Но что...

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

[Перевод] Рендеринг текста вас ненавидит Оглавление 1. Терминология 2. Стиль, вёрстка и форма зависят друг от друга? 3. Текст — это не отдельные символы 3.1. Наложения текста 3.2. Стиль может изменить лигатуру 4. Эмодзи ломают цвет и стиль 5. Сглаживание — это ад 5.1. Субпиксельные смещения ломают кэш глифов...

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

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

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

[Из песочницы] Диагностическая медицинская экспертная система на Prolog Вступление Как то мне посчастливилось выбирать тему дипломной работы по специальности программная инженерия, и я выбрал написание экспертной системы, причем именно на языке Пролог. Хоть в промышленном программировании он почти не используется, он интересен в теоретическом пл...

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

Эксперимент — от парного программирования к программированию всей командой Очень хочу поделиться с вами переводом статьи про эксперимент с моб-программированием от одного из его создателей, Вуди Зила. Это когда вся команда сразу работает за одним компьютером. Как парное программирование, только групповое. Я бывший Java-разработчик и тимлид с 11-лет...

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

Что такое логическое программирование и зачем оно нам нужно У того, кто в детстве не писал на Прологе — нет сердца, а у того, кто пишет на нём сегодня — нет мозгов. (оригинал) Если вас всегда терзали мучительные сомнения — что за фигня это Логическое Программирование (ЛП) и вообще зачем оно нужно? То это статья для вас. Можно по-раз...

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

[Перевод] Конкурс по программированию на Q#: Microsoft Q# Coding Contest Команда Microsoft Quantum рада анонсировать Q# Coding Contest – зима 2019! В этом конкурсе вы можете проверить свои навыки квантового программирования, решая задачи квантовых вычислений на Q#. Победители получат футболку Microsoft Quantum! Квантовые вычисления — это принципи...

[Из песочницы] Изучение комбинаторных парсеров с Rust Привет, Хабр! Представляю вашему вниманию перевод статьи "Learning Parser Combinators With Rust". Эта статья учит основам комбинаторных парсеров людей, которые уже знакомы с Rust. Предполагается, что никаких других знаний не требуется, а всё, что не имеет прямого о...

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

Книга "{Вы не знаете JS} Типы и грамматические конструкции" Каким бы опытом программирования на JavaScript вы ни обладали, скорее всего, вы не понимаете язык в полной мере. Это лаконичное руководство исследует типы более глубоко, чем все существующие книги: вы узнаете, как работают типы, о проблемах их преобразования и научитесь пол...

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

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

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

Мобильная тумба для китайских станков. Или как разместить их в квартире Дамы и господа, здравствуйте! Данную статью я решил написать после прочтения комментария в статье Программирование на JavaScript для токарного станка от QwertyOFF Я слабо представляю как можно держать токарный, даже такой, в квартире, разве что у вас есть комната, которую с...

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

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

Как добавить проверки в NoVerify, не написав ни строчки Go-кода В статическом анализаторе NoVerify появилась киллер-фича: декларативный способ описания инспекций, который не требует программирования на Go и компиляции кода. Чтобы вас заинтриговать, покажу описание простой, но полезной инспекции: /** @warning duplicated sub-expressions in...

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

[Из песочницы] NeoBook: среда программирования для непрограммистов NeoBook: среда программирования для непрограммистов Для кого эта статья Статья написана, в первую очередь, для тех, кто не является профессиональным программистом, но хочет уметь создавать свои собственные компьютерные программы для компьютеров с Windows. Программирование ...

[Перевод] Подготовка к Spring Professional Certification. Spring Boot Приветствую всех. Эта статья раскроет основные вопросы по теме "Spring Boot". Она ориентирована на начинающих разработчиков, и может быть полезной при подготовке к собеседованию. Она получилась достаточно компактной, по сравнению с остальными статьями. Оглавление Внедрение з...

[Из песочницы] Изменяем содержимое нотификации приложения iOS Привет! В этой статье я хочу поделиться своим опытом использования одного не очевидного (по крайней мере для меня) варианта изменения текста уведомления приложения, отправкой дополнительных данных через UNUserNotificationCenter. Я надеюсь эта статья будет полезна для нович...

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

Реализация Kotlin Flow на C# Всем привет! Последние годы я занимаюсь разработкой под Андроид на Котлине. Не так давно, за неимением RxJava на Kotlin multiplatform, мы начали использовать корутины и flow – холодные стримы для Котлина из коробки. До Андроида я много лет провёл с C#, и там свои корутины е...

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

GeekBrains проведет 12 бесплатных онлайн-встреч с экспертами в области программирования С 3 по 8 июня образовательный портал GeekBrains организует GeekChange — 12 онлайн-встреч с экспертами программирования. Каждый вебинар — новая тема о программировании в формате мини-лекций и практических заданий для новичков. Мероприятие подойдет для тех, кто хочет начать п...

Соревнование по программированию Kotlin Heroes JetBrains начала сотрудничество с Codeforces в продвижении языка Kotlin среди любителей спортивного программирования. Codeforces предоставляет Kotlin-разработчикам платформу, на которой можно посостязаться в алгоритмическом программировании и отточить свое мастерство. Вместе...

ГКРЧ вновь отказала операторам в выделении необходимых для 5G частот Об этом говорится в опубликованном протоколе заседания комиссии, которое прошло 25 июля.Согласно документу, на который ссылается ТАСС, "Мегафон", "Ростелеком", "Вымпел-коммуникации" ("Вымпелком", бренд "Билайн", принадлежи...

[Перевод] Будущее PHP Это мертвый язык программирования или нет? У PHP наверняка были лучшие времена. Но действительно ли он мертв? На форумах, подобных StackOverflow, люди предполагают, что PHP мертв. У них есть верная точка зрения, или может быть, они просто не любят PHP? Давайте посмотрим ...

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

Подборка @pythonetc, октябрь 2019 Новая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Если хотите итерировать сразу несколько итерируемых объектов, то можете использовать функцию zip (не имеет никакого отношения к файловому формату ZIP): Читат...

«Сражение в прямом эфире»: финал ICPC в Порту Сегодня в португальском городе Порту пройдет финал международных соревнований по программированию ICPC 2019. В нем примут участие представители Университета ИТМО и другие команды из вузов России, Китая, Индии и США. Расскажем подробнее. Читать дальше →

[Из песочницы] Начинаем FPGA на Python Технология FPGA (ПЛИС) в настоящее время обретает большую популярность. Растёт количество сфер применения: помимо обработки цифровых сигналов, FPGA используются для ускорения машинного обучения, в blockchain технологиях, обработке видео и в IoT. Данная технология имеет од...

Ezblock Pi — программирование без программирования, в этот раз для фанатов Raspberry Pi Идея писать код, не пиша код (да-да, пиша — деепричастие настоящего времени от глагола писать, живите теперь с этим) не раз приходила в голову и умным людям, и просто лентяям. Мечта о графическом интерфейсе, в рамках которого можно кидать одни кубики на другие, рисовать взаи...

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

К Дню программиста. Программист в 2019 году Сегодня день программиста, 256-ой день в году. В интернете будет много шуток, на Хабре — статей, в пабликах — мемов, в офисах — пиццы, сладкого и приятных сюрпризов. Программирование сегодня стало настоящим культом, к которому стремятся прикоснуться любой ценой, ведь, по мне...

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

Операторы связи в сентябре обсудят концепцию развития сетей 5G в России Об этом ТАСС сообщила директор по стратегическому развитию ПАО "Ростелеком" Алеся Мамчур на II Петербургском цифровом форуме."В начале сентября на площадке "Ростелекома", как центра компетенций по федеральному проекту "Информационная инфрастру...

[Из песочницы] ShIoTiny: малая автоматизация, интернет вещей или «за полгода до отпуска» Основные тезисы или о чем эта статья Так как интересы людей разные, а времени у людей мало, то кратко о содержании статьи. Статья эта представляет собой обзор проекта контроллера с минимальной ценой и возможностью визуального программирования посредством WEB-браузера. Пос...

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

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

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

К вопросу о TI «Сейчас я покажу вам портрет… Хм… Я предупреждаю вас, что это именно портрет… Во всяком случае, прошу отнестись к нему, как к портрету... В данном посте пойдет речь о разработке и отладке программ для МК СС1350 в рекомендованной производителем среде разработки CCS. Будут за...

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

[Перевод] Подготовка к Spring Professional Certification. Spring REST Сегодняшняя статья рассмотрит основные вопросы про REST в Spring. Она будет особенно полезна для начинающих программистов. Официальный гид от Pivotal, в котором написано про темы для подготовки. Оглавление Внедрение зависимостей, контейнер, IoC, бины AOP (аспектно-ориентир...

StickIt 2.0.11 StickIt! – это забавное и простое приложение-фоторедактор для Android, с помощью которого можно быстро вырезать какой-либо объект с изображения и сделать оригинальные стикеры. Работа программы полуавтоматическая. Это значит, что для вырезания объекта придется приложить ...

Семь бесплатных автоматизированных платформ-задачников для прокачки навыков программирования Привет! Недавно сделали подборку бесплатных сервисов для изучения программирования с нуля. В комментариях получили много заинтересовавших нас платформ. Из них составили отдельный список таких, которые подойдут профессиональным программистам. CheckiO Проект из Украины «Чекио»...

6 нежданчиков от Джулии Наконец-таки появилось русскоязычное руководство по языку Julia. Там реализовано полноценное введение в язык для тех, у кого мало опыта в программировании (остальным будет полезно для общего развития), так же имеется введение в машинное обучение и куча заданий для закреплен...

[Перевод] Подготовка к Spring Professional Certification. Spring Security Эта статья является переводом статьи по подготовке к Spring Professional Certification. В ней будет рассмотрена тема Spring Security и основные вопросы по ней. Ее также можно использовать для подготовки к собеседованию. ↓ Остальные статьи доступны по ссылкам в оглавлении ↓ ...

Запускаем “десктопное” ПО на микроконтроллере Embox принимал участие в IT фестивале TechTrain. Мы как и в первый раз привезли железки и вживую показали наши достижения. О некоторых мы уже писали на хабре, но мало ли кто не поверил :). Были показаны VoIP телефон, Qt и OpenCV, все на базе STM32F7-Discovery. Кроме стенда ...

Программирование для детей и подростков – интересные курсы от DAN.IT education Если ребенку по душе компьютерные игры, интересует разработка несложных приложений или есть желание расширить кругозор, курсы программирования в учебном центре DAN.IT пойдут на пользу.

Программирование в России введут с начальной школы Одно из заданий детского курса программирования на Code.org. Справа — программа на языке Blockly Согласно предложению Министерством просвещения РФ, в курс математики для младших школьников включат основы создания кодов и языков программирования, пишут «Известия». Это преду...

Reaktive — мультиплатформенная библиотека для реактивного Kotlin Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный ...

Выделение активной строки таблицы на чистом CSS Несколько дней назад мой друг попросил помочь с решением задачи, которая была на его собеседовании. Интервьюер дал ему следующий фрагмент кода: tbody:hover tr { opacity: 0.24; } Также добавил: “Сейчас, при наведении на таблицу, все строки становятся блеклыми. А требуется ...

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

[Из песочницы] ОС реального времени AQUA RTOS для МК AVR в среде BASCOM AVR При написании для МК кода посложнее, чем «помигать лампочкой», разработчик сталкивается с ограничениями, присущими линейному программированию в стиле «суперцикл плюс прерывания». Обработка прерываний требует быстроты и лаконичности, что приводит к добавлению в код флагов и п...

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

Бизнес-процессы в enterprise компаниях: домыслы и реальность. Проливаем свет с помощью R Краткая заметка по теме business process mining в контексте роста интереса к концепции "digital twin". В силу периодического выплывания этой темы считаю целесообразным поделиться подходами к решению. Постановка задачи Ситуация предельно проста. Есть компания X (Y, Z, ...)....

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

[Из песочницы] Попытки начать обучение ребенка программированию с Minecraft pocket edition На дворе осень и сын все чаще остается дома, уткнувшись в телефон или планшет, слабо реагируя на внешние раздражители. Меня это огорчает. Сам я начал программировать, как мне кажется, с того, что к моему первому компьютеру БК 0010-01 игры то на кассетах в комплекте шли, а в...

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

Эволюция создания веб-приложений на Java История развития построения веб-приложений на языке программирования Java с примерами их использования на временном промежутке от появления спецификации сервлетов до сегодняшнего дня. Читать дальше →

Microsoft создала язык программирования для слабовидящих детей С помощью Code Jumper будут не только знакомить детей с основами программирования, но и давать им необходимые навыки для развития дальнейшей карьеры в ИТ-отрасли.

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

[Перевод] Python как предельный случай C++. Часть 1/2 От переводчикаБрендон Роудс − весьма скромный человек, представляющий себя в твиттере как «Python-программиста, возвращающего долг сообществу в форме докладов или эссе». Число этих «докладов и эссе» впечатляет, равно как и число свободных проектов, контрибьютором которых Бре...

GeekBrains проведет бесплатный GeekChange по программированию С 3 по 8 июня образовательный портал GeekBrains организует GeekChange  — 12 онлайн-встреч с экспертами программирования.  Каждый вебинар — это новая тема о программировании в формате мини-лекций и практических заданий для новичков. Это мероприятие для тех, кто хочет начать п...

Складной iPhone показался в новом патенте Apple 2019 год обещает нам ряд первых смартфонов с изгибаемым экраном. Прежде всего, это, конечно, Samsung Galaxy X, который должен быть показан публике уже на следующей неделе. Впрочем, каждый день появляются слухи или новости о компаниях, работающих над гибкими смартфонами: Xiao...

[recovery mode] Сбалансированные показатели сайта. Часть 3: Контент В этой статье мы разберем еще один блок показателей сайта, который входит в нашу схему. Речь пойдет о контенте, я вынес его специально в отдельную статью, поскольку это один из самых важных и трудоемких в плане развития факторов продвижения. Читать дальше →

[Перевод] Подготовка к Spring Professional Certification. Вопросы по Spring MVC Приветствую всех. Это уже 5 статья из цикла статей для подготовки с Spring Professional Certification. На Хабре она выходит второй, после части 1. Оглавление Внедрение зависимостей, контейнер, IoC, бины AOP (аспектно-ориентированное программирование) JDBC, транзакции, JPA...

От ракет к роботам и при чем здесь Python. История выпускника GeekBrains Сегодня мы публикуем историю перехода в IT Андрея Вуколова. Детское увлечение космосом когда-то привело его на ракетостроение в МГТУ. Суровая реальность заставила забыть о мечте, но все обернулось еще интереснее. Изучение C++ и Python позволило заниматься не менее увлекател...

Одна голова хорошо, а две — лучше, или парное программирование в действии Драйвер и навигатор в действии (северокорейский вариант методики) От переводчика: сегодня публикуем для вас статью Эндрю Спрула, специалиста по Data Science. Он рассказывает о преимуществах парной работы программистов над одним и тем же проектом. Я часто слышу, как люди...

Концепции программирования в Scratch Многим знаком Scratch – детская среда программирования, обучение в которой обычно сводится к созданию творческих проектов по принципу «от простого к сложному». При этом «классический подход» к изучению программирования (переменные → ветвления → циклы → функции → структуры ...

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

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

Гетерогенное программирование и OneAPI Toolkit. Задайте вопрос эксперту Intel Гетерогенное программирование — это тема. Тема многочисленных статей на ресурсах для разработчиков и докладов на тематических конференциях. Тема для блога Intel, ведь совсем недавно появились на свет Intel oneAPI Toolkit и Data Parallel C++. Наконец, отличная тема для наше...

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

Виртуальная машина на ESP8266 для запуска игр VM, написанная неуверенной рукой гуманитария в среде программирования Arduino с использованием быдлокода и велосипедов. А еще есть компилятор для нее из си-подобного языка, написанный на JavaScript теми же методами. Да. Уже можно спешить в комментарии, бросать камни. Ну а те...

Как переводить иностранный текст в любых приложениях на Android Большинство приложений, доступных в Google Play, ориентированы на международный рынок, а потому изначально имеют поддержку большинства популярных языков, в число которых входит и русский. Благодаря этому мы можем с комфортом пользоваться ими, не сталкиваясь с непониманием и...

Kotlin вошел в Топ-20 языков программирования RedMonk Вышел новый рейтинг языков программирования RedMonk и самый заметный рост в нем показал Kotlin.

[Перевод] Делаем педаль реверберации с применением микросхем PT2399 (часть 1) Вступление Реальная реверберация происходит в рабочей камере, когда генерируемый звук отражается от стен, мебели, людей или любого другого объекта в сложном трехмерном пространстве. Естественный процесс реверберации показан на рисунке 1. Рисунок 1. Реверберация в реальной...

Ethereum Foundation выделила разработчикам Parity грант на $5 млн Ethereum Foundation объявила в понедельник, 7 января, о выделении команде разработчиков Parity Technologies гранта в размере $5 млн. Средства пойдут на дальнейшую работу над масштабированием, юзабилити и безопасностью платформы Ethereum. The #Ethereum Foundation announces ma...

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

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

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

[Перевод] Jetpack Compose Jetpack Compose это отдельный набор инструментов разработанный для упрощения разработки UI. Он соединяет модель реактивного программирования с лакончностью и лёгкостью использования языка программирования Kotlin ПРИМЕЧАНИЕ: Jetpack Compose в настоящее время находится в ст...

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

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

R2DBC Arabba-RELEASE — новый взгляд на реактивное программирование для SQL Поздравляем Хабр с выходом R2DBC версии Arabba-RELEASE! Это самый первый стабильный релиз проекта. R2DBC (Reactive Relational Database Connectivity) — открытый проект, посвященный реактивному программированию для SQL. Разработчики R2DBC готовили первую версию спецификации ц...

Microsoft опубликовала курс обучения детей программированию в Minecraft Преподавать информатику в школе стало еще проще, так как Microsoft открыла свой 30-часовой учебный курс, ориентированный на учащихся от 11 до 16 лет. Он основан на Minecraft Education Edition и редакторе Microsoft MakeCode.

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

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

[Перевод] MVC в Unity со Scriptable Objects. Часть 1 MVC (Model-View-Controller) — это схема, предполагающая разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента, чтобы каждый из них можно было независимо модифицировать. Разработчик Cem Ugur Karacam поделился своим опытом ...

[Из песочницы] Коротко о главном: Clean Architecture, Robert C. Martin Это будет рассказ о впечатлении о книге, а также будут рассмотрены некоторые понятия и знания, которые, благодаря этой книге, были изучены Архитектура Можете ли вы, читая эту публикацию, дать четкий ответ на вопрос, что такое архитектура? Что такое архитектура в контексте п...

[Перевод] F#10: Списки Любое серьезное программирование на любом языке всегда будет включать списки. Таким образом, вам будет приятно узнать, что F# очень и очень хорошо поддерживает списки с помощью своего модуля List. Список в F# — это упорядоченная, неизменная серия элементов одного типа. Читат...

Компания Canon показала на CP+ концептуальную фотокамеру Компания Canon привезла на выставку CP+ концептуальную камеру, показанную на снимках. Пока изделие существует в виде макета. Будет ли оно выпущено — неизвестно. Камера ориентирована на детей. Этим объясняется выбор внешнего оформления и минималистский набор орган...

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

Двенадцать IT-компаний определят пути развития технологий в России В рамках федеральной программы «Цифровая экономика» до конца февраля в России пройдут конкурсы, по итогам которых выберут компании, которые разработают «дорожные карты» по девяти направлениям. По информации РБК, интерес к проекту проявили 12 крупных игроков отечественного IT...

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

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

Глава Xiaomi объяснил, зачем фирма превращает Redmi в отдельный бренд Новости о выделении смартфонов Xiaomi Redmi в отдельный бренд идут одна за одной. Вслед за анонсом самого события появились комментария Лея Цзуня (Lei Jun), главы компании.   Итак, причина в разделении брендов Mi и Redmi лежит на поверхности, и заключается она в п...

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

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

Как школьники с нарушениями слуха осваивают программирование Веб-разработка – одна из самых перспективных областей знаний, которая открыта для изучения в том числе ребятам с особенностями развития. В этом убедились воспитанники самарской школы им. Т.С. Зыковой для обучающихся с ограниченными возможностями здоровья. Еще по теме: Н...

Курс лекций «Основы цифровой обработки сигналов» Всем привет! Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе...

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

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

Ford показал первые изображения и видео будущего электрокроссовера Mach E в стиле Mustang Компания Ford показала первые изображения и видео будущего электрокроссовера Ford Mach E, нацеленного на конкуренцию Tesla Model Y. Модель должна выйти на рынок уже в следующем году, так что готовность проекта находится на достаточно высоком уровне. Тем не менее, компания вс...

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

[Перевод] Подготовка к Spring Professional Certification. Часть 1: «Контейнер, IoC, бины» Доброго времени суток, Хабр. Сегодня я решил представить вам перевод цикла статей для подготовки к Spring Professional Certification. Это перевод только первой статьи, если он зайдет аудитории, я продолжу выпуск переводов.   Зачем я это делаю, ведь уже есть куча профильных...

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

Разработка и программирование 2020 В детстве мы читали о 2020 годе как о фантастическом будущем с его летающими  машинами, искусственным интеллектом, роботами, космосом и всеми остальными атрибутами развитого технологического общества, но вот мы, как ни странно, здесь - на его пороге.

В ответ на Honor и Redmi компания Vivo представила новый бренд смартфонов Iqoo В индустрии смартфонов продолжает набирать популярность тенденция к выделению новых брендов в составе уже существующих популярных брендов. Еще пару лет назад компания Huawei была единственной, кто выделил отдельное подразделение под названием Honor.

[Из песочницы] Аппаратный bit banding CortexM3/M4(ARM), архитектура ядра, ассемблер, С/C++14 и капля мета программирования Введение Внимание, это не очередная «Hello world»статья о том как помигать светодиодом или попасть в свое первое прерывание на STM32. Однако, я постарался дать исчерпывающие объяснения по всем затрагиваемым вопросам, поэтому статья будет полезна не только многим профессионал...

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

Пишем свой язык программирования, часть 4: Представление структур и классов, генерация аллокаторов Доброго времени суток тем, кто решил ознакомиться с моей очередной статьёй. Первым делом выкладываю ссылки на предыдущие части: Часть 1: пишем языковую ВМ Часть 2: промежуточное представление программ Часть 3: Архитектура транслятора. Разбор языковых структур и математиче...

8 игр для изучения программирования Программирование - один из наиболее востребованных навыков. Во всем мире постоянно не хватает квалифицированных разработчиков, а новые технологии и стартапы постоянно требуют все новых и новых. 

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

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

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

BLoC паттерн на простом примере И еще раз про BLoC на классическом примере счетчика Flutter. Читая некоторые статьи про реактивное программирование и используя BLoC паттерн в приложениях я понимал, что чего-то не догоняю. Как обычно на все не хватает времени, но вот, выдался свободный час и силы есть — реш...

Dagaz: Эпизоды (часть 1) Мы расшатали ваши умственные фильтры, и в результате появился ответ. Метод сработал, он будет действенным всегда. Все, что необходимо сделать — это избавиться от лишнего груза предрассудков… Раймонд Джоунс "Уровень шума" Dagaz появился не на пустом месте. Я всегда увлекалс...

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

[Из песочницы] Изучая go: пишем p2p мессенджер со сквозным шифрованием Yet another P2P Messenger Читать отзывы и документацию о языке не достаточно, чтобы научиться на нем писать более менее полезные приложения. Обязательно для закрепления нужно создать что-то интересное, чтобы наработки можно было бы использовать в других своих задачах. Стать...

[Из песочницы] 10 понятий для дизайнера в 2019-м Среда работы UI/UX дизайнеров стремительно расширяется и растет: появляется уйма новых продуктов и инструментов для разработки интерфейсов, крутых возможностей благодаря развитию гибких языков программирования и, конечно же, в дизайнерскую экосферу внедряется множество новых...

Сфера ответственности координатора релизов Сразу уточним — в ITIL роль «Координатор релизов» не описана. Вопрос про сферу ответственности возник у слушателей курса ITIL RCV при обсуждении соответствующего раздела. Почему такой вопрос возник, в целом понятно. По аналогии с процессами управления...

О направлениях «Фотоника», «Программирование и ИТ» и «Информационная и кибербезопасность» олимпиады «Я — профессионал» Продолжаем рассказывать об олимпиаде «Я — профессионал», проводимой при поддержке «Яндекса», РСПП, и крупнейших вузов страны, в том числе Университета ИТМО. Сегодня говорим еще о трех направлениях, которые курирует наш вуз. Читать дальше →

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

[Перевод] Язык программирования Swift на Raspberry Pi Raspberry PI 3 Model B+ В этом мануале мы разберем основы использования Swift на Raspberry Pi. Raspberry Pi — небольшой и недорогой одноплатный компьютер, потенциал которого ограничен лишь его вычислительными ресурсами. Он хорошо известен техногикам и любителям DIY. Это о...

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

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

[Перевод] Ещё 9 проектов для оттачивания Front-End мастерства Введение Независимо от того, являетесь ли вы новичком в программировании или уже опытным разработчиком, в этой отрасли изучение новых концепций и языков/фреймворков является обязательно чтобы успевать за трендами. Возьмем, к примеру, React — код которого, Facebook открыл ...

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

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

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

Программирование для детей. Пять самых крутых игр на HTML и JavaScript Привет, Хаброжители! Хотите сделать отличный подарок ребёнку, желающему научиться программировать, или научить взрослого, далёкого от мира кодов? Тогда книга-героиня нашего поста Вам подойдет. Эта книга научит писать код веб-игр на языках HTML и JavaScript и даже поможет чи...

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

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

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

Не создавайте собственный ЯП (DSL) для расширения функционала приложения Когда вы хотите дать пользователю возможность писать плагины для своего приложения, вы встаете перед выбором того, как предоставлять API. Под катом я покажу, почему худшим решением для этого будет изобретение собственного языка программирования и парсинг исходников, а также ...

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

Размышления о карьере в ИТ Сделать быструю карьеру в области разработки сегодня не так просто, как кажется. Если начать работать, например, в сфере финансов, то в 30 лет вы почти наверняка будете руководителем. В нашей же отрасли и в 35, и в 40 лет можно оставаться разработчиком. Среди нас много тех, ...

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

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

[Перевод] Равномерное распределение точек в треугольнике Большинство двухмерных квазислучайных методов рассчитано на сэмплирование в единичном квадрате. Однако в компьютерной графике также очень важны треугольники. Поэтому я описал простой метод прямого построения для равномерного покрытия последовательностью точек треугольника пр...

[Перевод] Как я выиграл 3 из 4 золотых медалей на Computing Olympiad Я готовился к Финалу чемпионата мира Google HashCode 2017. Это крупнейший конкурс с алгоритмическими задачами, организованный Google. Я начал изучать C ++ с нуля в девятом классе. Я ничего не знал о программировании, алгоритмах и структурах данных. В какой-то момент я на...

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

Direct для Instagram 74.0 Direct для Instagram — это первый шаг к выделению соответствующей функции из основного сервиса Instagram в отдельное самостоятельное приложение. В приложении пока предусмотрено всего три экрана. Как Snapchat, он открывается на камере, слева расположен экран с профилем, а спр...

[Перевод] Структурирование React-приложений Материал, перевод которого мы сегодня публикуем, раскрывает подходы, применяемые его автором при структурировании React-приложений. В частности, речь здесь пойдёт об используемой структуре папок, об именовании сущностей, о местах, где располагаются файлы тестов, и о других п...

Безопасный доступ к полям регистров на С++ без ущерба эффективности(на примере CortexM) Рис. взят с сайта www.extremetech.com/wp-content/uploads/2016/07/MegaProcessor-Feature.jpg Всем доброго здравия! В прошлой статье я рассмотрел вопрос о проблеме доступа к регистрам микроконтроллера с ядром CortexM на языке С++ и показал простые варианты решения части про...

Получаем абсолютные курсы из парных кросс-курсов валют Проект: “Абсолютный курс валют” Введение О проекте Проект “Абсолютный курс валют” занимается анализом парных валютных курсов, выделением из них абсолютных валютных курсов и их анализом. В рамках проекта получена методика преобразования от парных курсов к абсолютным валютным...

[Перевод] Процедурная генерация планет От переводчика: Представляю вашему вниманию статью авторства Andy Gainey, в прошлом независимого разработчика игровых инструментов, ныне сотрудника Paradox Development Studio. На мой взгляд, автор играючи создал один из лучших процедурных генераторов планет с открытым исход...

Кто есть кто в open source — ч. 2: биографии гиков Продолжаем говорить о людях, которые повлияли на становление open source. / фото Sebastiaan ter Burg CC BY-SA Ричард Столлман Ричард Мэтью Столлман родился в 1953 году в семье учителя и продавца печатных станков. С раннего возраста он увлекался вычислительными машинами. Ст...

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

Л – логика Однажды мне в голову пришла идея новой игры-головоломки с очень простой, но, в то же время, интересной механикой: игроку дается набор из 5–7 картинок – нужно определить логическую цепочку, по которой эти картинки можно выстроить в ряд, и, собственно, выделить их по порядку. ...

Детали перехода от парных (относительных) валютных курсов к абсолютным. Работа над ошибками Введение Настоящая статья описывает результаты эксперимента проведенного в рамках проекта “Абсолютный курс валют”. Протокол эксперимента можно увидеть перейдя по ссылке. Проект “Абсолютный курс валют” занимается анализом парных валютных курсов, выделением из них абсолютных ...

Redux — пересмотр логики reducer'a и actions На днях ковыряясь в множестве файлов redux'a, где по логике файлы вынесены в reducers, actions, константы типов actions. Bсе это оказалось весьма не простая задача держа все эти типы файлов у себя в голове и прослеживать логику. И… эврика, появилась идея упрощения написания...

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

Преобразование полигональных моделей в граничное представление: алгоритм и примеры кода В большинстве систем проектирования (САПР) основным представлением моделируемого объекта является граничное представление геометрии или B-rep (Boundary representation). Но все чаще пользователям САПР приходится иметь дело с полигональными моделями, например, полученными в ре...

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

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

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

Как смотреть в завтрашний день игрофикаючи С 5 по 7 января проходила зимняя школа талантливых преподавателей по программированию — VKFellowship. Талантливых, потому что большинство слушателей написали собственные курсы обучения, а их ученики побеждают в олимпиадах. Зачем таким классным педагогам еще какая-то школа? О...

Подборка @pythonetc, апрель 2019 Это десятая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки. Читать дальше →

Подборка @pythonetc, май 2019 Это одиннадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки. Читать дальше →

Калькулятор TI-89 Titanium и его программирование на C Не так давно на Хабре была статья про графический калькулятор TI-83, и, поскольку я являюсь обладателем TI-89 Titanium — калькулятором следующего поколения от Texas Instruments, под катом я решил рассказать про него, и показать, как для этого калькулятора можно создавать сво...

Intel oneAPI — один за всех Итак, случилось то, о чем еще с июля месяца говорила компания Intel — вышла бета-версия Intel oneAPI Toolkits, набора инструментов для разработки, с которыми жизнь больше не будет прежней. В состав набора, как и обещалось, вошел компилятор нового языка Data Parallel C++, наб...

Новые языки программирования незаметно убивают нашу связь с реальностью Однажды настанет день, когда команды в программировании будут выглядеть вроде «эй, компьютер, сделай-ка мне вот эту хреновину». Что там будет под капотом, ни одна живая душа уже не поймет. Команда «хреновина» интерпретируется в абзац с описанием, который интерпретируется...

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

[Перевод] Как я рисую иллюстрации для конспектов по математике в Inkscape В прошлой статье я рассказал, как пишу конспекты по математике на LaTeX в Vim. В этой статье покажу, как создаются рисунки для этих конспектов с помощью Inkscape, а также расскажу о своём самодельном менеджере горячих клавиш. Некоторые примеры Во-первых, позвольте показать ...

Минкомсвязи раскритиковала идею ЦБ: «выделить честных финансистов в поиске» Выделение специальным значком легальных финансистов добровольно использует «Яндекс». У Google, Mail и «Рамблера» ссылки на честные фирмы ничем не отличаются от ссылок на жуликов.

[Анонс: Екатеринбург, Новосибирск, Ижевск, Казань] Хакатон – Урбатон: делаем сервисы для горожан 18 и 19 мая пройдет 24–часовой марафон по программированию — Урбатон. Стартуем сразу в четырех городах: Екатеринбург, Ижевск, Казань, Новосибирск. Разработчики, тестировщики, дизайнеры и проектировщики интерфейсов, объединяйтесь! Мы наштурмили урбапомрачительные идеи проекто...

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

[Перевод] Сравнение BDD фреймворков Python: плюсы и минусы Всем привет. Уже в этом месяце в ОТУС стартует курс "Python QA Engineer". В преддверии старта данного курса делимся с вами переводом интересного материала. Почти все основные языки программирования имеют фреймворки для BDD тестирования, и Python не исключение. И по факту, у...

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

[Перевод] Что есть и чего нет в Go. Часть 1 Всем привет, в преддверии старта нового потока по курсу «Разработчик Golang» хотим поделиться с вами переводом интересной статьи, в первой части которой разбираются элементы, которые есть в Go. Поехали. Go создавался с оглядкой назад, и его базовая комплектация действител...

ВКонтакте открыла приём заявок на VK Cup To do: показать свой уровень в дизайне интерфейсов, мобильной разработке, машинном обучении и олимпиадном программировании и забрать денежный приз.

[Перевод] Делать хорошо, делая плохо: написание «злого» кода с помощью Go, часть 1 Вредные советы для Go-программиста После десятилетий программирования на Java, последние несколько лет я в основном работал на Go. Работать с Go — здорово, прежде всего потому, что за кодом очень легко следовать. Java упростила модель программирования C ++, удалив множеств...

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

[Перевод] Пишем HTTP/1.1 & HTTP/2 клиент и сервер на Golang Golang — отличный язык программирования с широким спектром возможностей. В этой статье показано, как на Go можно написать клиент и сервер для протоколов HTTP/1.1 и HTTP/2. Читать дальше →

Яндекс открывает чемпионат по программированию Тех, кто хочет работать в Яндексе и готов показать себя в деле, ждёт призовой фонд 2,2 млн ₽.

[Из песочницы] 20 игр, чтобы научить ребёнка программированию Привет Хабр! Меня зовут Оксана Селендеева. Я считаю, что лучше начинать программировать с юного возраста — 4-5 лет, потому что кодинг активно развивает у детей когнитивные функции мозга, и это впоследствии помогает им отлично усваивать точные науки. А попробовать себя в прог...

Теперь не только смартфоны. Google принесла Grasshopper для обучения программированию на компьютеры В прошлом году внутренний инкубатор Google Area 120 выпустил бесплатное приложение Grasshopper, обучающее основам программирования на JavaScript через мини-игры. На этой неделе Google расширила доступность Grasshopper на компьютеры, запустив веб-версию сервиса. По словам Goo...

Цифровая лирика: мегаподборка песен и клипов о программировании и программистах Широко распространено мнение, что музыкальные способности и талант к программированию взаимосвязаны. Многие профессиональные музыканты питают склонность к точным наукам. Например, Борис Гребенщиков окончил факультет прикладной математики СПбГУ, а гитарист Radiohead Джонни Гр...

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

Поток как инструмент управления Вернемся к идее использования потоков создания ценности в роли архитектурных элементов системы управления. Вопрос о том, как сделать это целостно, беспокоит меня уже какое-то время. Первые размышления по этому вопросу удалось выразить в заметке «Value stream, user'...

Язык Bosque — новый язык программирования от Microsoft Буквально несколько дней назад компания Microsoft представила публике новый язык программирования. Языку дали название Bosque. Главная миссия дизайна языка — лучше быть богатым и здоровым, чем бедным и больным чтобы он был прост и понятен как для человека, так и для компьюте...

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

Взаимодействие R с базами данных на примере Microsoft SQL Server и других СУБД Поскольку львиная доля бизнес информации храниться в базах данных. На каком бы языке программирования вы не писали, вам придётся производить различные действия с ними. В этой статье я расскажу о двух интерфейса для работы с базами данных в R. Большая часть примеров демонстри...

Ученые опровергли влияние адреналина на организм при опасности Исследователи из Колумбийского университета выяснили, что так называемая реакция “бей или беги”, в результате которой организм мобилизуется в ответ на опасность извне, связана не с выделением адреналина в кровь, а с усилением кровотока и выработкой определенного белка.

OSDay 19 или почему еще жив язык Си Недавно (10-11 июня) в Москве прошла очередная научно-практическая конференция OSDay. На этот раз конференция проходила в математическом институте им. В.А. Стеклова РАН. Формально она была посвящена инструментам разработки операционных платформ и системного программного обе...

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

Подборка @pythonetc, март 2019 Это десятая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки. 0_0 0_0 — полностью корректное выражение на Python. Читать дальше →

[Перевод] Асинхронное программирование – производительность async: понять расходы на async и await Это статья достаточно древняя, но не потерявшая актуальности. Когда разговор заходит об async/await, как правило, появляется ссылка на неё. Перевода на русский найти не смог, решил помочь кто не fluent. Асинхронное программирование долгое время было царством самых опытных р...

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

Впервые финал студенческого чемпионата мира по программированию ICPC пройдет в Москве Сегодня, 30 октября 2019 года, состоится пресс-конференция, посвященная анонсу финала самого престижного и признанного соревнования для юных талантов в сфере IT — студенческого чемпионата мира по программированию ICPC ...

[Из песочницы] Идея, как можно предоставлять сотрудникам временный доступ к ресурсам клиента, не светя лишний раз пароли Небольшая предыстория После лекции на HighLoad++ 2017. Я посмотрел этот доклад, “Как мы админа увольняли”, в записи. Докладчик сказал, что все web компании испытывает проблемы с паролями, и у меня появилась идея как это решить. Скорее всего кто-то уже сделал, но, если честно...

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

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям....

[Из песочницы] Как развивались бизнес-инкубаторы и акселераторы: от лаборатории Томаса Эдисона до Y Combinator Какой бы захватывающей ни была идея стартапа, у него не так много способов привлечь средства на развитие. Можно самостоятельно искать инвесторов, обратиться к бизнес-ангелам, или стать частью программы бизнес-инкубатора или акселератора. Так начинающие предприниматели могут ...

[Из песочницы] Реализация горячей перезагрузки С++ кода в Linux * Ссылка на библиотеку в конце статьи. В самой статье изложены механизмы, реализованные в библиотеке, со средней детализацией. Реализация для macOS еще не закончена, но она мало чем отличается от реализации для Linux. Здесь в основном рассматривается реализация для Linux. Г...

[Из песочницы] Бизнес-логика в базе данных при помощи SchemaKeeper Цель данной статьи — на примере библиотеки schema-keeper показать инструменты, которые позволяют существенно облегчить процесс разработки баз данных в рамках PHP-проектов, использующих СУБД PostgreSQL. Информация из этой статьи, в первую очередь, будет полезна разработ...

Интерфейсы как абстрактные типы данных в Go Не так давно коллега ретвитнул отличный пост How to Use Go Interfaces. В нем рассматриваются некоторые ошибки при использовании интерфейсов в Go, а также даются некоторые рекомендации по поводу того, как их все-таки стоит использовать. В статье, упомянутой выше, автор приво...

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

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

Обзор смартфона Xiaomi Redmi Note 8 Pro Не так давно китайская компания Xiaomi сообщила о выделении имени Redmi в отдельный бренд. У нас состоится знакомство с одной из новинок бренда, солидно нашумевшей и весьма многообещающей. Само название активно намекает, что аппарат должен быть крупным и отличаться продвинут...

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

Как распределить вес с разделов на категории? Вопрос пользователя: В интернет-магазине 3 раздела (сквозные ссылки в шапке сайта): одежда обувь аксессуары. В каждом разделе свои категории. У разделов статический вес большой, но они не важны для продвижения. Продвигаем категории. У них вес низкий. Можно ли перераспредел...

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

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

Хватит спорить про функциональное программирование и ООП Пост содержит некоторое количество стёба, минздрав убедительно просит неподготовленного читателя воздержаться от прочтения. Статьи на тему «ФП лучше» или «ООП лучше» напоминают дебаты, что же лучше для обеда, вилка или ложка. Традиционно джуны начинали с ложки, но кто-то оче...

AWS Lambda — теория, знакомство Краткий экскурс в AWS Lambda Что это? AWS Lambda: это вычислительный сервис, который позволяет запускать код практически для любого типа приложения или серверной службы — и все это без необходимости администрирования. AWS Lambda выполняет все администрирование за вас, включа...

Подборка @pythonetc, сентябрь 2019 Новая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Читать дальше →

Сайт с нуля: как школьники осваивают IT При знакомстве с IT важно найти как грамотных наставников, так и увлеченных единомышленников. Такая возможность представилась ребятам из Кемерово, для которых центр развития «Эврика» организовал мастер-класс по web-программированию и созданию сайтов. 12 октября участники...

Агентство Graphit разработало фирменный стиль для школы программирования «Сбербанка» «Школа 21» В основе айдентики — пиксель.

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

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

[Из песочницы] Опыт программирования на Юниксе* Под программированием понимается собственно процесс программирования на С для мелких микроконтроллеров, а также трассировка печатных плат, рисование моделек в Солиде, редактирование доков в Офисе, чтение интернета и написание этой заметки. Вот это устройство UNIX FIT MX-450V...

Программирование LibreOffice Base. Часть 2 В части 2 будет рассмотрена связь между таблицами базы данных и формами. В частности как задавать связь между двумя таблицами и использовать таблицы-«справочники» в качестве источника данных для выпадающих списков. Читать дальше →

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

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

Телевизор Redmi TV впервые показали в ролике Хорошо зарекомендовавший себя инсайдер под ником Xiaomishka опубликовал первый видеоролик, в котором показан грядущий телевизор компании Redmi. Вице-президент Xiaomi и глава бренда Redmi Лу Вейбинг (Lu Weibing) сегодня официально сообщил о том, что первый телевизор Redm...

Sony отказалась отделять или продавать свой бизнес по ... Вчера Sony сообщила, что приняла решение не продавать и не отделять свой бизнес по производству решений для обработки изображений и распознавания изображений (I&SS). Это ответ на предложение инвестиционного фонда Third Point, являющегося одним из крупнейших акционер...

[Перевод] Надёжность Flash–памяти: ожидаемое и неожиданное. Часть 2. XIV конференция ассоциации USENIX. Технологии хранения файлов Надёжность Flash–памяти: ожидаемое и неожиданное. Часть 1. XIV конференция ассоциации USENIX. Технологии хранения файлов 4.2.2. RBER и возраст дисков (без учета циклов PE). На Рисунке 1 показана значительная корреляция между RBER и возрастом, который равен количеству месяце...

Как устроен фреймворк tiOPF для delphi/lazarus. Шаблон «Посетитель» От переводчика Есть две причины, по которым я взялся перевести несколько материалов по разработанному двадцать лет назад для не самой популярной ныне среды программирования фреймворку: 1. Несколько лет назад я, познав многие прелести работы с Entity Framework как ORM для пл...

[Из песочницы] Тернистый путь в программирование Привет, Хабр. Данная статья ориентирована на школьников 8-10 класса и студентов 1-2 курсов, которые мечтают посвятить жизнь IT, хотя, возможно более «старые» личности найдут ее не менее занимательной. Итак, сейчас я поведаю свою историю и попытаюсь на своем примере предосте...

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

5G зовут на улицы. Операторы предложили испытать технологию в крупных городах Как стало известно “Ъ”, Госкомиссия по радиочастотам рассмотрит вопрос выделения диапазона для испытаний 5G в Москве и других городах-миллионниках. Это позволит «Ростелекому», «МегаФону» и, возможно, еще ряду операторов проверить работу сетей 5G в зоне городской застройки. Д...

Трамп послал Украину? Зеленскому не стоит ждать помощи от США «Военная помощь не может происходить вечно» — Дональд Трамп. Издание Washington Post сообщает, что президент Соединенных Штатов дал указание Мику Малвейни на время ограничить поставку «военных подарков» Украине. Малвейн, является исполняющим обязанностей шефа аппарата Белог...

Как выглядит zip-архив и что мы с этим можем сделать. Часть 2 — Data Descriptor и сжатие Продолжение статьи Как выглядит zip-архив и что мы с этим можем сделать. Предисловие Доброго времени суток. И снова в эфире у нас нетрадиционное программирование на PHP. В прошлой статье уважаемых читателей заинтересовала тема сжатия в ZIP и сохранение потоков в zip. Попробу...

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

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

Приложение по обучению программированию Grasshopper от Google стало доступно для десктопов Google объявил, что игровое приложение по обучению программированию Grasshopper теперь также доступно на десктопах – в форме веб-приложения. Мобильные приложения Grasshopper для iOS и Android были выпущены в апреле 2018 года. Согласно Google, с тех пор их скачали более двух ...

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

«Большая тройка» попросила не давать «Ростелекому» частоты без конкурса Крупнейшие операторы выступили против выделения «Ростелекому» частот для подключения соцобъектов к интернету. Ресурс подходит для развития 5G, а право подключать объекты МЧС и школы стоит разыграть на торгах, считают компании.

МФУ Canon i-Sensys MF746Cx: цветной лазерный аппарат All-in-One формата А4 Многофункциональный принтер Canon i-Sensys MF746Cx — высокопроизводительное и хорошо оснащенное устройство All-in-One, предназначенное для небольших офисов, в которых есть потребность не только в черно-белой, но и в цветной печати. Помимо ставшего уже стандартом дуплекса (ус...

Инфраструктура как код, выигрываем на масштабе (Кирилл Ветчинкин, TYME) Модель «Инфраструктура как код (IaC)», которую иногда называют «программируемой инфраструктурой», — это модель, по которой процесс настройки инфраструктуры аналогичен процессу программирования ПО. По сути, она положила начало устранению границ между написанием приложений и с...

Сторонний разработчик показал современный файловый менеджер для Windows 10 С момента выпуска Windows 8 в 2012 году Microsoft пытается сделать свою ОС более современной и гибкой. Одним из путей этого является внедрение универсальных приложений (UWP) наряду с классическими Win32. Однако это касается не всех аспектов работы системы. Пров...

Яндекс! Спасибо за Uber Привет, Хабр! В этой статье хотелось бы рассмотреть поглощение Яндексом службы такси Uber с точки зрения обычного пользователя, который немного понимает в программировании и не любит грязный маркетинг. Читать дальше →

[Из песочницы] Программирование на JavaScript для токарного станка Эту статью следовало бы назвать «генерирование комбинаций шестерен гитары китайского токарного станка для подбора шага подачи с помощью скрипта на JavaScript», но это звучит не так интригующе. Читать дальше →

Создание бота для участия в Russian AI Cup 2018 CodeBall Сложилась традиция, что после соревнований по спортивному программированию победитель или просто игрок выкладывает на Хабре статью, чтобы рассказать как здорово было участвовать в соревновании и как вариант победить в нем. Из его статьи конечно же многое можно почерпнуть дл...

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

Cмарт розетка REDMOND SkyPort 100S Это продолжение моей первой статьи на смарт цоколь Redmond. В этой статье речь пойдет о другом девайсе компании Redmond — Cмарт розетка REDMOND SkyPort 100S. Данное устройство тоже базируется на чипе nRF51822 и как говорится тут сам бог велел попробовать. Итак, была куплена ...

Разбираемся, как 5G будет работать в миллиметровом диапазоне на улице и в помещениях На MWC2019 Qualcomm показала видео с интересными сценариями пользования наружной сетью 5G миллиметрового диапазона, как вне помещений офиса, так и, в отдельных случаях, в помещениях. Рассмотрим их подробнее. На фото выше представлен кампус Qualcomm в Сан-Диего, Калифорни...

Где же начинается программирование Давным давно мы разработали высокоуровневую платформу для разработки бизнес-приложений lsFusion. Оставалось дело за малым: найти того, кто будет на ней писать. Было решено разместить на сайтах по поиску работу соответствующую вакансию. Но возник вопрос: что указывать в кач...

Глобальное кеширование результатов Query в ASP.NET CORE Парадигма CQRS в том или ином виде предполагает, что вызовы Query не будут менять состояние приложения. То есть многократные вызовы одной и той же query, в рамках одного запроса, будут иметь один и тот же результат. Пусть все интерфейсы, использующиеся в рамках запроса будут...

RadaeePDFViewer 8.0.13 Radaee PDF Reader – быстрый и к тому же бесплатный PDF-ридер. Приложение имеет высокую скорость рендеринга, что позволяет беспроблемно открывать массивные файлы. Программа поддерживает масштабирование с помощью мультитача, предлагает несколько вариантов отображение информаци...

От копипасты к компонентам: переиспользуем код в разных приложениях Badoo разрабатывает несколько приложений, и каждое из них — это отдельный продукт со своими особенностями, менеджментом, продуктовыми и инженерными командами. Но все мы работаем вместе, в одном офисе и решаем похожие проблемы. Развитие каждого проекта происходило по-своем...

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

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

[Из песочницы] Обзор возможностей Qt Creator 4.10 и QBS 1.14 для программирования микроконтроллеров Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы представить небольшой обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров. Кому эта тема интересна, добро пожатовать по кат. Читат...

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

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

Как поговорить с микроконтроллером из JS Зачем нужен микроконтроллер? Например, чтобы устроить дома пивоварню. Если своего пивного заводика мало, то можно и что-то масштабнее: построить квест-комнату, оформить презентацию, интерактивный фонтан, который рисует картину каплями, или выставочный стенд для большой компа...

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

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

Магические трансформации типов данных в Rust: Интринсика mem::transmute<T, U> Введение Язык программирования Rust, невзирая на всеохватывающую идеологию безопасности данных, располагает и небезопасными методиками программирования, ведь порой они могут повышать скорость путём устранения лишних вычислений, а порой это просто жизненная необходимость. Од...

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

Thymeleaf: диалект Layout + Spring Boot 2 Диалект Layout — это диалект Thymeleaf, который позволяет пользователям создавать макеты и шаблоны для повторного использования HTML кода. Он имеет иерархический подход и использует шаблон декоратора для «декорирования» файлов макета. Layout Dialect является отдельным проект...

Прозрачные видеоочки с HDMI и USB-C заказывали? Встречайте: Epson Moverio BT-35E Когда мы рассказывали в блоге о своих бинокулярных видеоочках Moverio BT-200 и BT-300, одной из ключевых особенностей очков всегда называли малый вес (88 и 69 грамм, соответственно), который удалось обеспечить, вынеся «мозги» устройства в отдельный блок управления на базе An...

Технические отличия BI систем (Power BI, Qlik Sense, Tableau) Время необходимое на прочтение 11 минут Мы и Квадрат Гартнера 2019 BI :-) Целью данной статьи является сравнение трёх ведущих BI платформ, которые находятся в лидерах квадранта Gartner: — Power BI (Microsoft) — Tableau — Qlik Рисунок 1. Gartner BI Magic Quadrant 2019 М...

[Перевод] В каких случаях стоит использовать Django (а в каких не стоит) Давайте поможем разработчикам разобраться, подходит ли фреймворк Django для их следующего проекта. Вполне вероятно — подходит. Не стоит хвататься за определенный язык программирования или фреймворк лишь потому, что вы пользовались им в вашем предыдущем проекте, или просто ...

«Мой Круг» представил рейтинг онлайн-школ Карьерный портал «Мой Круг» выяснил, в каких онлайн-школах лучше получать дополнительное образование ИТ-специалистам. Среди лидеров рейтинга: школа онлайн-обучения программированию Loftschool, практические курсы по программированию Hexlet ...

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

Lite-On выделяет производство SSD в предприятие с неоригинальным названием Компания Lite-On Technology недавно провела внеочередное общее собрание акционеров, на котором акционеры одобрили выделение направления деятельности и активов, связанных с выпуском твердотельных накопителей, в дочернюю компанию. Предприятие будет называться Solid State ...

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

Танчики на Паскале: как учили детей программированию в 90-х и что с этим было не так Это байка про то, как я не стал программистом, хотя желание было велико. Ну и немного о том, что из себя представляла школьная «информатика» в 90-х, и почему все программисты тогда были исключительно самоучки. Читать дальше →

Яндекс проведёт чемпионат по программированию Яндекс открыл регистрацию на чемпионат по программированию. Он проводится для тех, кто хочет работать в Яндексе и готов показать себя в деле. Призовой фонд чемпионата составляет 2,2 миллиона рублей. В турнире могут участвовать специалисты из России, Беларуси и Казахстана.

Redmi представит собственный флагман на Snapdragon 855 В четверг, 10 января, компания Xiaomi провела в Пекине специальное мероприятие, посвящённое выделению популярной серии Redmi в отдельный бренд. Первым продуктом Redmi стал смартфон Redmi Note 7 c 48-мегапиксельной основной камерой. Но на этом бренд останавливаться не собирае...

В России не будет полноценного 5G из-за любви Путина к военным Сразу четыре человека из отрасли мобильной связи рассказали российскому изданию “Ведомости” о том, что Путин согласился с Советом безопасности в их отрицательной позиции относительно выделения частот 3,4–3,8 ГГц для развития 5G-сетей в России.

[Из песочницы] Invidious — альтернативный YouTube-фронтенд «Invidious» — это веб-фронтенд (грубо говоря, веб-клиент) для сайта YouTube. Код проекта написан на языке программирования Crystal, использует СУБД PostgreSQL и распространяется под свободной лицензией AGPLv3+. Читать дальше →

Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текс...

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

Как глубока кроличья нора? CLRium #5: Garbage Collector Мир несется вперед, движимый прогрессом и конкуренцией. Нам с вами нереально повезло: ведь для нас работают величайшие умы, создавая поистине серъезные механизмы: компиляторы, IDE, базы данных. Делают их так, что мы получаем истинное удовольствие, используя их. Один из этих ...

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

ShIoTiny: узлы, связи и события или особенности рисования программ Основные тезисы или о чем эта статья Тема статьи — визуальное программирование ПЛК ShIoTiny для умного дома, описанного тут: ShIoTiny: малая автоматизация, интернет вещей или «за полгода до отпуска». Очень кратко рассмотрены такие понятия, как узлы, связи, события, а такж...

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

HTC показала VR-шлемы Vive Pro Eye и HTC Vive Cosmo Тайваньская HTC представила новые шлемы виртуальной реальности HTC Vive Pro Eye и HTC Vive Cosmo. Новые VR-шлемы ориентированы на совершенно разные целевые аудитории и имеют свои особенности. Подробнее об этом читайте на THG.ru.

Готов ли бизнес к DevOps? В недавно вышедшей статье Олега Скрынника «The biggest problem with DevOps is the name» изложено несколько хороших идей, и об одной из них я хотел бы поговорить более подробно. Идея эта состоит в том, что почти все триггеры и события, связанные с развитием и/ил...

[Из песочницы] Разбор решенных задач с чемпионата по программированию от Яндекса (фронт-энд разработка) 2019 Завершилось мое участие в чемпионате по программированию. Я неплохо прошел квалификацию, решив 4 из 6 задач и шел на 20 месте, поэтому были надежды и в финале попасть топ 20. Но к сожалению не удалось попасть даже в топ-100. После драки кулаками не машут, но я смог решить ещ...

Meet and Code профинансирует мероприятия по программированию для детей В России идет подготовка к Европейской неделе программирования (EU Code Week). Российские некоммерческие организации могут получить финансирование на проведение мероприятий в рамках инициативы Meet and Code. Инициаторами недели программирования, которая пройдет с 5 по 20 окт...

Две истории о том, как проходили мероприятия по программированию в Екатеринбурге Немного разбавим зимние холодные дни теплыми воспоминаниями о том, как в Екатеринбурге проходили: финал RuCTF 2012 (соревнования по защите информации) и финал 38-ого чемпионата мира по программированию «The 2014 ACM ICPC World Finals». Много фото внутри. Читать дальше →

Приглашаем 6 марта на ElixirLangMoscow Meetup #9 6 марта приглашаем вас на ElixirLangMoscow Meetup #9 в московский офис Mail.ru Group. Язык программирования Elixir продолжает развиваться, и мы вместе с сообществом проводим Elixir-митапы. Программа выступлений адаптирована как под активных разработчиков на Elixir, так и п...

Рисовать — это 10% работы UX-дизайнера Привет, Хабр! Меня зовут Никита. Год назад я пришёл работать в Промсвязьбанк UX-дизайнером в команду по разработке интерфейсов ДБО для малого и среднего бизнеса. В то время нашей команде прилетали совершенно разные задачи, с разных продуктов. Зачастую уже в виде четко описан...

LEGO MINDSTORMS Education EV3 + MicroPython: программируем детский конструктор взрослым языком Привет, Хабр! Мы уже рассказывали о платформе LEGO MINDSTORMS Education EV3. Основные задачи этой платформы — обучение на практических примерах, развитие навыков STEAM и формирование инженерного мышления. В ней можно проводить лабораторные работы по изучению механики и динам...

Intel представляет Ponte Vecchio Генеральный директор компании Боб Сван подтвердил существование первого графического процессора с архитектурой Xe для серверов. Компания Intel продолжает продвигаться на рынок дискретных графических решений. Первые чипы Xe для ПК планируется выпустить в 2020 году. Пока же...

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

Где учиться ИТ-специалисту: «Мой Круг» представил рейтинг онлайн-школ Компания «Мой Круг» выяснила, в каких онлайн-школах лучше получать дополнительное образование ИТ-специалистам. Среди лидеров рейтинга: школа онлайн-обучения программированию Loftschool, практические курсы по программированию Hexlet, онлайн-курсы для ...

Решаем судоку с помощью Алгоритма X В этой статье рассмотрим "Алгоритм X" Кнута и его применение для решения судоку. Прелесть алгоритма в том, что судоку при этом решается быстро без программирования каких-то продвинутых техник решения. Читать дальше →

[Перевод] Виртуальный 4-битный микроконтроллер с программированием тремя кнопками и четырьмя переключателями Предлагаемое устройство эмулирует на микроконтроллере ATmega4809 несуществующий 4-битный микроконтроллер с адресным пространством в 256 байт, который можно программировать тремя кнопками и четырьмя переключателями. Читать дальше →

DIRECTUM 5.7: ECM-платформа для крупного бизнеса В новой версии улучшена функциональность для обмена документами с контрагентами, усовершенствованы механизмы сквозных процессов внутри группы компаний, а интеллектуальные инструменты для автоматизации рутинных операций стали доступны «из коробки».

[Перевод] Процедурные паттерны, которые можно использовать с тайловыми картами Процедурная генерация используется для повышения вариабельности игр. Среди известных проектов можно упомянуть Minecraft, Enter the Gungeon и Descenders. В этом посте я объясню некоторые из алгоритмов, которые можно применять при работе с системой Tilemap, появившейся как 2D-...

[Перевод] Пять вопросов о проектировании языков программирования Руководящая философия 1. Языки программирования для людей Языки программирования это то, как люди говорят с компьютерами. Компьютер будет рад поговорить на любом языке, который не будет двусмысленным. Причина почему у нас есть высокоуровневые языки — потому что люди не мо...

Как реализовать язык программирования на JavaScript. Часть 1: Парсер Здравствуйте! Представляю вам любительский перевод руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достаточно мн...

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

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

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

[Перевод] Новый курс по Python от Microsoft [на английском] Вероятно, самое большое препятствие при изучении любого нового языка программирования — просто знать, с чего начать. Что важно? Что нужно знать, чтобы стать профи? Трудно исследовать документы, когда даже нет уверенности, что читаешь то, что нужно. Возможно, вы присматривае...

Павел Финкельштейн о Kotlin в production на jug.msk.ru 13 марта 2019 года в офисе компании КРОК прошла очередная встреча сообщества московских Java-разработчиков jug.msk.ru, на которой Паша Финкельштейн рассказал о своём опыте использования языка программирования Kotlin. Читать дальше →

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

Подборка @pythonetc, август 2019 Новая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Если у экземпляра класса нет атрибута с заданным именем, то он пытается обратиться к атрибуту класса с тем же именем. >>> class A: ... x = 2 ....

В Минкомсвязи намерены развивать 5G в диапазоне частот 4,4-4,99 ГГц Об этом журналистам сообщил замглавы Минкомсвязи Олег Иванов."На самом деле все, что до 6 ГГц для 5G очень даже приемлемо, для массового распространения. Поэтому, по сути, диапазон 4,4-4,99 ГГц ничем не хуже, чем 3,4-3,8 ГГц, просто пока производители не совсем готовы д...

Samsung W20 5G готовится к релизу Некоторое время назад компания Samsung уже выпустила в продажу свой гибкий смартфон под названием Galaxy Fold, который оказался весть интересным, но слишком уж дорогим. Теперь производитель выпустил тизер нового устройства под названием Samsung W20 5G, который должны показат...

В Минкомсвязи могут отказаться от идеи бесплатного выделения операторам частот для 5G В письме замглавы ведомства Олега Иванова рабочей группе "Информационная инфраструктура" АНО "Цифровая экономика" говорится, что Минкомсвязи оставляет за собой право продать частоты в диапазоне 4,44,9 ГГц, если операторы не подпишут соглашение о создании совместного предприя...

[Из песочницы] Немного о многозадачности в микроконтроллерах Немного о многозадачности Каждый, кто день за днем или от случая к случаю, занимается программированием микроконтроллеров, рано или поздно столкнется с вопросом: а не использовать ли многозадачную операционную систему? Их в сети предлагается довольно много, при этом немало –...

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

Совет директоров TSMC одобрил выделение на развитие почти 4 млрд долларов Вчера совета директоров TSMC провел заседание. На этом заседании были приняты решения по финансовым вопросам. Во-первых, утверждены ассигнования на капитальные вложения в размере 3,9798 млрд долларов. Эти средства будут направлены на модернизацию и расширение произ...

Большая Философская Мысль: топ-10 докладов DotNext 2019 Piter Здравствуй, Хабр! В мае прошла наша большая .NET-конференция, где нашлось место и хардкору, и трендам, и архитектуре, и просто хорошим практикам. А теперь делимся лучшими докладами (по оценкам зрителей конференции), из которых вы: узнаете, почему (скорее всего) пишете ...

[Перевод] Как реализовать язык программирования на JavaScript. Часть 3: CPS-интерпретатор Здравствуйте! Представляю вам третью часть моего перевода руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достат...

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

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

Подборка @pythonetc, июнь 2019 Это одиннадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Символ \ в обычной строке имеет особое значение. \t — это символ табуляции, \r — разрыв строки, и так далее. Чтобы отключить такое поведение, вы ...

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

6 причин открыть IT-стартап в Канаде Если вы много путешествуете и являетесь разработчиком сайтов, игр, видеоэффектов или чего-то подобного, то наверняка знаете, что во многих странах приветстуют стартапы из этой области. Есть даже специально принятые венчурные программы в Индии, Малайзии, Сингапуре, Гонконге, ...

МТС и HackerU подготовят специалистов Big Data Обучающая программа ориентирована на студентов старших курсов IT-факультетов, системных администраторов, backend-разработчиков, системных аналитиков и IT-специалистов, имеющих знания в области математики и алгоритмизации. Основная цель курса - подготовить специалистов по одн...

Как разнообразить уроки программирования для детей разных возрастов В этом материале Александра Дмитренко, Software Engineer, рассказывает о своем опыте преподавания программирования детям и объясняет, что работает лучше всего для каждой возрастной группы. Читать дальше →

Визуальное программирование для Sonoff Basic Статья о том, как из дешёвого китайского устройства создать программируемый логический контроллер. Такое устройство найдёт своё применение как в домашней автоматизации, так и в качестве практических занятий по школьной информатике. Читать дальше →

Программирование LibreOffice Base. Часть 3 Сегодня мы рассмотрим использование диалоговых окон при редактировании данных в LibreOffice Base (OpenOffice Base). Как мы выяснили в предыдущих сообщениях, Форма LibreOffice Base (OpenOffice Base) — это фактически экземпляр текстового редактора LibreOffice (OpenOffice) Writ...

[Перевод] Алан Кей: Что можно назвать самым удивительным, что компьютеры сделали возможным Quora: Что можно назвать самым удивительным, что компьютеры сделали возможным? Алан Кей: Все еще пытаюсь научиться мыслить лучше. Я думаю, что ответ будет очень похож на ответ на вопрос «что является самым удивительным, что письменность (а затем и печатный станок) сделал...

Avalonia первая встреча Когда мы встречаем новый язык, мы пишем «Hello word», а когда встречаем новый UI, то создаем блокнот. Здесь же я хочу показать простейший пример дружбы с корссплатформенным GUI Framework AvaloniaUI. Читать дальше →

Arduino DIY «Демоническая карусель» Всем привет. На данный момент я разработал прототип детского интерактивного тира в виде конструктора, которую я назвал “демоническая карусель”. Задумка была реализовать конструктор в области робототехники. Используя технологию 3D печати и различныx готовых плат, которые мо...

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

[Из песочницы] Распознавание цифровых схем. Асинхронный счётный триггер Борис Цирлин и Александр Кушнеров 30.10.2019 Для опытного разработчика схем не составляет большого труда узнать знакомую схему, в каком бы виде она не была нарисована. В этой статье мы покажем, что две транзисторные схемы из патентов являются вариантом асинхронного счётного ...

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

Загрузка ФИАС в БД на MSSQLSERVER подручными (SQLXMLBULKLOAD) средствами. Как это (наверное) не нужно делать Эпиграф: «Когда у тебя в руках молоток, всё вокруг кажется гвоздями». Как-то давным-давно, кажется – в прошлую пятницу, обходя окрестности офиса, озаботилось окаянное начальство тем, что я провожу время в праздности и созерцании котиков и кошечек. — А не загрузить ли теб...

Решение задания с pwnable.kr 21 — horcuxes. Возвратно-ориентированное программирование и ROP-цепочки В данной статье решим 21-е задание с сайта pwnable.kr, направленное на составление ROP-цепочки. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказыв...

Новые аксессуары от Samsung для активного образа жизни Сегодня, вместе с серией новеньких флагманов Samsung Galaxy S10, корейский производитель показал еще несколько вещей. Все они ориентированы на спорт, фитнес и здоровый образ жизни. Встречаем: умные часы Samsung Galaxy Watch Active, фитнес-браслеты Galaxy Fit и Fit e, а также...

Подборка @pythonetc, декабрь 2018 Это седьмая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки: Ноябрь 2018 Октябрь 2018 Сентябрь 2018 Август 2018 Июль 2018 Июнь 2018 Читать дальше →

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

Android: чего ожидать от Android Q, что внутри северокорейского смартфона и что такое контекстно ориентированное программирование Для подписчиковСегодня в выпуске: рассказ о решении некоторых проблем безопасности в Android Q, разбор работы новой системы обновления Android APEX, реверс северокорейского смартфона, введение в контекстно ориентированное программирование на Kotlin, а также советы по работе ...

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

Борофен побеждает графен в борьбе «суперматериалов» Чиновники Евросоюза признали, что несколько поторопились с выделением 1 млрд. евро на запуск производства графена в промышленных масштабах. Ажиотаж вокруг него привел к открытию иных двумерных одноатомных материалов, самым перспективным среди которых сегодня называют борофен...

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

22 августа на iOS выйдет симулятор программиста while True: learn() while True: learn() — это довольно популярный симулятор программирования в Steam, который с января этого года получил почти 2000 отзывов, 91% из которых положительные. Вы играете за специалиста по нейросетям и машинному обучению, который внезапно обнаруживает, что его кот с...

Как изменить цвет выделения текста в Windows 10 Меняем цвет подсветки выделенного текста в Windows 10.

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

SmartMail Conf: первая конференция Почты Mail.ru по машинному обучению 23 марта в нашем офисе пройдет первая профессиональная конференция от разработчиков Почты Mail.ru — SmartMail Conf. Она будет посвящена использованию технологий машинного обучения в высоконагруженных сервисах. Машинное обучение — одно из приоритетных для нас направлений, и...

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

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

[Перевод] Почему, зачем и когда нужно использовать ValueTask Этот перевод появился благодаря хорошему комментарию 0x1000000. В .NET Framework 4 появилось пространство System.Threading.Tasks, а с ним и класс Task. Этот тип и порождённый от него Task<TResult> долго дожидались, пока их признают стандартами в .NET в роли ключевых а...

Gonkey — инструмент тестирования микросервисов Gonkey тестирует наши микросервисы в Lamoda, и мы подумали, что он может протестировать и ваши, поэтому выложили его в open source. Если функциональность ваших сервисов реализована преимущественно через API, и используется JSON для обмена данными, то почти наверняка Gonkey п...

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

Международная олимпиада по веб-программированию для студентов Международная олимпиада по веб-программированию для студентов Компания APRIORUM GROUP приглашает студентов всех ВУЗов Волгограда принять участие в VI Олимпиаде по веб-программированию от компаний «1С» и «1С-Битрикс». Побеждай и получай ценные призы! В олимпиаде участ...

ISE 2019: Panasonic представил очень нужные в AV-интеграции ультракороткофокусные объективы с уникальным до ±59% вертикальным смещением изображения Теперь в ассортименте Panasonic есть 3 типа ультракороткофокусных объективов с разворотом луча на 0°, 90° и 180° В современной AV-интеграции все чаще возникают задачи, когда необходимо все вокруг покрыть изображением, а помещение маленькое и разместить проекторы просто негд...

Как могли бы выглядеть регистры в 1С при наличии ООП В 1С одним из ключевых элементов системы являются регистры. Этот термин имеет свой аналог в английском языке — ledger. Он первоначально появился в бухгалтерской практике, но со временем его логика начала использоваться и в других сферах. В отличие от 1С, где регистры явля...

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

Учиться и работать: опыт магистрантов факультета информационных технологий и программирования Мы пообщались с преподавателями и выпускниками магистерской программы «Речевые информационные системы» о том, как вуз помогает совмещать учебу и первые шаги в карьере. Хабрапосты о нашей магистратуре: Как начать карьеру еще в вузе — опыт выпускников четырех профильных маг...

Пишем Android приложение для киноманов — Часть 1 (Прототипирование) Доброго времени суток, Хабр! Не секрет, что недавно компания Google утвердила в качестве приоритетного языка программирования ОС Android — Kotlin. В этой и последующих статьях будет рассказываться о создании приложения на этом языке. Читать дальше →

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

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

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

[Из песочницы] Простые эксперименты с микроконтроллером STM32F103 («Голубая таблетка») Многие приобрели «голубую таблетку» на попробовать. Но из-за сложности программирования данная вещь оказалась где то на полке, до лучших времен. Будем считать, что «лучшие времена» — наступили. Читать дальше →

Что почитать и посмотреть для старта в Data Science: книги, словари и курсы Подборка ресурсов по математике, статистике и программированию для начинающих Дата Сайентистов. Ознакомьтесь с материалами, если вы планируете учиться на онлайн-курсах. Так вы опередите одногруппников, а заодно прокачаете полезный навык — изучать дополнительные материалы сам...

Подборка @pythonetc, июль 2019 Это двенадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Нельзя изменять переменные замыканий с помощью простого присваивания. Python расценивает присваивание как определение внутри тела функции и вообще ...

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

Язык программирования Zig Первым комментарием к замечательной статье Субъективное видение идеального языка программирования оказалась ссылка на язык программирования Zig. Естественно, стало интересно, что же это такое за язык, который претендует на шину C++, D и Rust. Посмотрел — язык показался симп...

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

«Анализ данных на Python» в двух частях Курсы по анализу данных в CS центре читает Вадим Леонардович Аббакумов — кандидат физ.-мат. наук, он работает главным экспертом-аналитиком в компании Газпромнефть-Альтернативное топливо. Лекции предназначены для двух категорий слушателей. Первая — начинающие аналитики, кот...

Как я «взломал» Qiwi без знаний программирования Вступление Снова всем привет. На этот раз статья не будет поднимать «сурьезные» вопросы. Это будет рассказ о том, как не зная программирования, но будучи достаточно смекалистым и внимательным, можно найти серьезную уязвимость, которая, к примеру, позволит вам списать все ден...

[Из песочницы] Как в Android'е передать переменную из фрагмента в активность? Рассказ о том, как в Android'е передать информацию из фрагмента (Fragment) в активность (Activity). Информация будет полезной для новичков (джуниоров), осваивающих программирование для Android, и вряд ли будет интересной для миддлов и сеньоров. Запускаем IDE (integrated dev...

Прямая печать на футболках с Epson SureColor SC–F и её отличие от шелкографии, термоаппликации и сублимации В одном из недавних постов я рассказывал о том, как небольшие компании зарабатывают на видеомаппинге и насколько эффектно это смотрится, а также как-то рассматривал основные отличия цифровой печати от офсетной и флексопечати. В этот раз хочу подсказать еще одну идею для мини...

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

Graceful degradation. Доклад Яндекс.Такси Сервисы необходимо писать так, чтобы минимальная функциональность сохранялась всегда — даже если откажут критически важные компоненты. Илья Сидоров, руководитель одной из команд продуктовой разработки бэкенда Яндекс.Такси, объяснил в своем докладе, как мы даем пользователю з...

TeamLead Conf: «MBA digital-у не товарищ» Для мира digital характерен быстрый карьерный рост, который заставляет молодых управленцев переключаться с освоения фундаментальных идей того же MBA на тренинги, лекции и митапы, поскольку они позволяют еще больше ускорить процесс. Однако в том и в другом случае точного отве...

[Из песочницы] Настройка VSCode для работы с Scala Статья рассчитана на новичков в программировании на Scala, каким я сам и являюсь, и просто на желающих начать писать программный код в VSCode. Так получилось, что единственным гайдом по теме работы со Scalой в Visial Studio Сode оказалось это видео на ютуб-канале DevInside...

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

Самые редкие и самые дорогие языки программирования Принято считать, что языки программирования, такие как Rust, Erlang, Dart, а также некоторые другие являются самыми редкими в мире IT. Поскольку я подбираю IT специалистов для компаний, постоянно контактируя с айтишниками и работодателями, я решила провести личное исследован...

Смартфон Xiaomi Redmi 7 переливается красками градиентных панелей на живых фото Xiaomi собирается представить новый смартфон нового бренда Redmi 10 января. Что это будет за модель, пока непонятно, но в базе данных TENAA уже опубликованы живые фото смартфона, который, как пишет источник, будет называться Redmi 7. Независимо от того, как будет назы...

YIMP — Панель управления для Yii 2 на Bootstrap 4 Уверен, что у многих разработчиков, предпочитающих фреймворки готовым CMS, есть в запасе решение на Bootstrap или его аналогах, которое используется в для создания интерфейсов админок и прочих бэк-офисов. И у меня такое есть. Успешно работает много лет, но безнадежно устарел...

На выставке 3D PrintExpo представят достижения 3D-печати и проведут бесплатные мастер-классы Согласно отчету J’son&PartnersConsulting, к 2030 году две трети всей продукции в мире будут производиться с 3D-печатными комплектующими. Внедрение аддитивных технологий даст бизнесу огромное конкурентное преимущество. А научиться использовать 3D-печать для увеличени...

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

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

«Теория Большого взрыва» и практика применения Python Вступление В последнее время активно изучаю язык программирования Python. Особенно меня заинтересовало использование Python в распознавании и классификации лиц. В статье я попробую применить распознавание лиц для сериала «Теория Большого взрыва». Читать дальше →

Путин не хочет передавать операторам частоты для запуска 5G в России Владимир Путин поддержал позицию Совета безопасности по непредоставлению частот Минобороны сотовым операторам для развития сетей 5G в России. По мнению Совбеза, диапазон частот 3,4–3,8 ГГц не может быть использован одновременно мобильными операторами и государственными ведо...

[Из песочницы] Ant-карусель на CSS и Javascript С появлением CSS3 появилась возможность совершать анимацию без использования JS-библиотек, таких, например, как jQuery. CSS3 свойство transition позволяет плавно изменять другие свойства элемента (width, height, margin, opacity и пр.), задав в качестве параметров время и зак...

Сравнение малопопулярных и не очень CLI-библиотек: cliff, plac, plumbum и другие (часть 2) В экосистеме Python существует множество пакетов для CLI-приложений, как популярных, вроде Click, так и не очень. Наиболее распространённые были рассмотрены в предыдущей статье, здесь же будут показаны малоизвестные, но не менее интересные. Читать дальше →

«Основы программирования» набор на бесплатный курс с примерами на JavaScript Дорогие товарищи инженеры и будущие инженеры, сообщество Метархия открывает набор на бесплатный курс «Основы программирования», который будет доступен на youtube и github без всяких ограничений. Часть лекций уже записана в конце 2018 и начале 2019 года, а часть будет прочит...

[Из песочницы] Open Session In View в Spring Boot: Скрытая угроза Все здесь правы, каждый по-своему, и, следовательно, все здесь не правы. "Сказка о Тройке" (А. и Б. Стругацкие)Если вы используете Spring Data JPA, то после обновления на Spring Boot 2 при старте приложения можете заметить в логе новое предупреждение: spring.jpa.op...

Митапы Saint TeamLead Conf для углубления в тему В продолжение серии статей о том, как на Saint TeamLead Conf мы собираемся раскрыть три важнейших блока работы тимлида — работу с командой, инструментарий тимлида и развитие осознанности — сегодня расскажу о темах, которые будем обсуждать в формате камерных встреч, митапов, ...

[Перевод] Монорепозитории: пожалуйста не надо От переводчика: Привет, Хабр! Да, это очередная статья о преимуществах и недостатках монорепозиториев. Собирался написать свою статью о том, как мы используем монорепозиторий, как мы переходили с maven на bazel и что из этого получилось. Но пока собирался с мыслями, вышла от...

[Из песочницы] Прибыльность сайтов и сервисов Эта статья будет полезна всем, кто хочет сделать собственный бизнес на веб-сайтах и сервисах. Здесь приведены примеры прибыльности и средней посещаемости сайтов через год работы. Основная цель статьи — дать приблизительное представление о сложности развития проектов для тех,...

[Из песочницы] Как маленькая программа превратила маленькую контору в федеральную компанию с прибылью 100+ млн.руб/месяц В конце декабря 2008 года меня пригласили в одну из служб такси г.Перми с целью автоматизации существующих бизнес-процессов. В целом передо мной были поставлены три фундаментальные задачи:
 Разработать программный комплекс для call центра с мобильным приложением для водител...

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

NetApp способствует развитию организаций, бизнес которых основан на данных Компания NetApp объявила о выходе NetApp ONTAP 9.6, новой СХД среднего уровня AFF A320 c поддержкой сквозного …

Быт и нравы фантазёров В конце статьи есть краткое содержание. В работе с изменениями, чего бы конкретно они не касались – будь то стратегия развития компании, системы мотивации, орг.структура или правила оформления кода – всегда есть одно ключевое звено: идеи. Идеи отвечают на вопрос «а чего, со...

[Из песочницы] Почему мы пишем бизнес-логику на Lua Привет, Хабр. В этом посте мы хотим рассказать о том, как и почему мы в IPONWEB используем язык программирования с красивым названием Lua. Lua — скриптовый встраиваемый язык программирования со свободно распространяемым интерпретатором и открытыми исходными текстами на C. О...

Видеокарты AMD Navi действительно уже близко — их прямое упоминание нашли в коде macOS Mohave На днях в Сети появились слухи о том, что анонс видеокарт AMD Navi намного ближе, нежели считалось ранее. Если точнее, показать их якобы должны в июне на E3 2019, а в продаже они появятся в июле. Косвенным подтверждением близкого анонса можно назвать и обнаруженные упом...

Samsung показала робота, который будет заботиться о здоровье владельца В рамках проведения выставки CES 2019 компания Samsung продемонстрировала собственное видение того, как её технологии искусственного интеллекта могут использоваться в «будущем подключенного существования». Также была показана одна из платформ компании, ориентированная на заб...

Google инвестирует в европейские дата-центры 3 млрд евро В ближайшие два года Google дополнительно инвестирует в расширение своих европейских центров обработки данных 3 млрд евро. Об этом сообщил генеральный директор компании Сундар Пичаи (Sundar Pichai). Инвестиционный план предусматривает выделение еще 600 млн евро в дата-...

Подборка @pythonetc, февраль 2019 Это девятая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки. Сравнение структур Иногда при тестировании бывает нужно сравнить сложные структуры, игнорируя некоторые значения. Обычно это можно сделать, сравнивая кон...

Андрей Терехов: «Можно сколько угодно говорить, что американское лучше, но наша машина никогда не ломается» Завкафедрой системного программирования СПбГУ, профессор, доктор физмат наук, президент компании «Ланит-Терком» Андрей Николаевич Терехов — о том, как делал первый в СССР транслятор языков Алгол 68 и Ада, о силе обкома КПСС и рождении «Самсона», который никогда не ломался....

With love from Stepik: образовательная платформа Hyperskill Я хочу поговорить с вами о том, почему мы чаще чиним сантехнику, чем пишем про неё диссертации, о разных подходах к обучению программированию и о том, как мы пробуем применить один из них в нашем новом продукте Hyperskill. Если вам не по душе длинные вступления, то переходи...

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

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

Ускорение запуска Julia при помощи PackageCompiler.jl Зайдя на официальный сайт языка программирования Julia, можно увидеть утверждение: "Julia is fast!". Однако, новые пользователи на практике сталкиваются с проблемой медленной загрузки модулей, в особенности графических [1,2]. Диалектически, причиной медленного запуска являет...

[Из песочницы] Рефакторинга много не бывает Привет, Хабр! Представляю вашему вниманию перевод статьи "Refactoring — oops, I’ve been doing it backwards" автора Джастина Фуллера (Justin Fuller). Я очень завишу от рефакторинга, и не боюсь признать это, но есть только одна проблема: я всегда делал это задом на...

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

Kite получил $17 млн на развитие ИИ для помощи в программировании Kite, автоматически и в реальном времени предлагающий сниппеты для кода на Python, получил 17 миллионов долларов в Серии А.

5G позитивно влияет на экологию Применение технологий 5G в порту Ливорно позволяет снизить выделение CO2 на 8,2%.

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

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

CGDevs Moscow Meetup #2 Всем привет! 6 марта пройдёт вторая встреча CGDevs Moscow Meetup. Встреча состоится в Высшей школе бизнес-информатики НИУ ВШЭ. С 18:30 до 22:00 мы будем обсуждать разработку игр, компьютерную графику, игровые движки и многое другое, что имеет отношение к красоте и технология...

Вице-премьер Акимов оценил затраты на создание в России сетей 5G в 650 млрд рублей и попросил Путина помочь с выделением частот По словам Акимова, правительство рассчитывает, что конкуренцию иностранным производителям оборудования для 5G смогут составить российские компании, сильной стороной которых является создание софта.

ФАС выступила против планов отдать "Ростелекому" новые частоты без торгов ФАС выступила против выделения "Ростелекому" большой полосы радиочастот для подключения социально значимых объектов к мобильному интернету. Выставив ресурс на аукцион, можно выручить миллиарды рублей, указала служба в письме ГКРЧ. Федеральная антимонопольная служба (ФАС) по...

Marginalia Hero – самая необычная RPG в этом году для iOS и Android Издатель Crescent Moon Games уже давно показал свою состоятельность, которая позволяет ему работать в том числе и над экспериментальными проектами, поддерживая инди-разработчиков. Одна из последних игр – странная RPG под названием Marginalia Hero. Это аркадная ролевая игра,...

Настало время капитализировать API Интерфейсы прикладного программирования (API) являются важной частью современных ИТ. К примеру, без них бы …

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

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

[Перевод] Полное руководство по switch-выражениям в Java 12 Старый добрый switch был в Java с первого дня. Мы все используем его и привыкли к нему — особенно к его причудам. (Кого-нибудь еще раздражает break?) Но теперь все начинает меняться: в Java 12 switch вместо оператора стал выражением: boolean result = switch(ternaryBool) { ...

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

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

Haxe и PHP: статическая типизация, стрелочные функции, метапрограммирование и многое другое Привет, Хабр! Предлагаю вашему вниманию перевод доклада Александра Кузьменко с прошедшей недавно (14-15 июня) конференции Hong Kong Open Source Conference 2019. До того, как присоединиться к Haxe Foundation в качестве разработчика компилятора Haxe, Александр около 10 лет пр...

WWDC 2019: главное с презентации Keynote по версии роботов В противовес прошлой WWDC, где основной фокус был на быстродействие и небольшие улучшения, сегодня представили все и сразу: новый Mac Pro, новые сервисы и давно желаемые функции для разработчиков. Кто-то говорит, что это лучший WWDC с 2014 года, когда представили новый язы...

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

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

Почему в Google Play мало инновационных приложений или почему иногда программирование — это магия Многие бегуны с утра измеряют пульс покоя. Если с утра он повышен, значит ты дал лиху — перетренировался. Я не бегун, но тоже измеряю. На апсторе есть удобная программа для измерения пульса по лицу, которая идеально мне подходит. Но около года назад я отложил свой айфон в ...

Микросервис на GO для граббинга видео из твитов Добрый день, Хабравчане! Статья для новичков, каких то сверх новых идей вы здесь не увидите. Да и данный функционал, скорее всего, реализовывался десятки раз на различных языках. Идея состоит в том, что бы получив ссылку на пост в твиттере в котором содержится видео, забрать...

Когда отвечаешь за качество подарка. История одного блокчейн-эксперимента На одном из мозговых штурмов нашей команды в Digital Transformation Group (DTG), посвященных развитию нашей блокчейн-системы Tracelabel, родилась идея: что если традиционные подарки клиентам и партнерам будут сами о себе рассказывать? А ведь и правда! Это может вызвать любо...

[Перевод] Процедурные дороги в Houdini и Unity Для моей постапокалиптической игры Frameshift мне нужно было заполнить очень большой открытый мир разнообразными городами. В нашей команде всего 3 человека, поэтому я, разумеется, воспользовался процедурной мощью Houdini! Раньше, когда не знал о Houdini, я писал на C# соб...

Как организовать работу над библиотекой общих компонентов Если ваша компания делает несколько продуктов в едином стиле, однажды вам в голову придет идея сделать библиотеку с общим кодом. Например, с UI-компонентами, сервисом авторизации или для работы со сторонними API. Возможно, вы зададитесь вопросами: кто должен поддерживать это...

Илон Маск показал сову в стиле электропикапа Илон Маск (Elon Musk) опубликовал в своём Twitter-аккаунте странное изображение. На нём показана сова, которая очертаниями уж больно похожа не недавно представленный электропикап Tesla Cybertruck.

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

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

Складной смартфон Huawei Mate X засветился на рекламном ... Выставка Mobile World Congress еще не началась, зато в сети уже появилась очень интересная преждевременная утечка рекламного баннера. Вероятно, это должно было стать для нас большой неожиданностью: складной смартфон Huawei Mate X, который компания, судя по всему, покажет на ...

CLion 2019.1: ClangFormat, подсветка кода через Clangd, memory view, начальная поддержка микроконтроллеров Привет, Хабр! У команды CLion множество отличных новостей — питерская часть команды вместе с другими коллегами успешно перебралась в новый офис, к нам присоединились новые классные разработчики, а главное, мы буквально на днях выпустили первое большое обновление в этом году...

Python и FPGA. Тестирование В продолжение к первой статье, хочу на примере показать вариант работы с FPGA (ПЛИС) на python. В данной статье затрону подробнее аспект тестирования. Если фреймворк MyHDL позволяет людям, работающим на python, используя знакомый синтаксис и экосистему, заглянуть в мир FPGA,...

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

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

[Из песочницы] Небольшой бэкдор на Flask или как управлять компьютером в локальной сети Привет, Хабр! Недавно я посмотрел скачанную версию стрима по программированию «Как создать свое веб-приложение на Flask». И решил закрепить свои знания в каком-нибудь проекте. Долго не знал, что написать и мне пришла идея: «А почему бы не сделать мини-бэкдор на Flask?». В ...

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

Андрей Терехов (продолжение): «Когда говорят, что мы отстали от американцев навсегда, я отвечаю: „Не дождетесь!“» Вторая часть интервью с завкафедрой системного программирования Матмеха СПбГУ, доктором физмат наук, профессором, президентом компании «Ланит-Терком». Андрей Николаевич Терехов рассказал о создании кафедры матобеспечения ЭВМ и своих многочисленных учениках, языке PADLA, ра...

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

Redmi Note 7 — самый бюджетный камерофон Итак, сегодня свершилось то, о чем мы говорили несколько дней назад - Xiaomi сделала Redmi отдельным суббрендом. И производитель сразу же показал новый смартфон семейства, Redmi Note 7. Честно говоря, аппарат получился неоднозначным... Читать далее Запись Redmi Note 7 —...

Как создать Python wrapper и не сойти с ума Недавно на Хабре прочитал статью про очень полезный инструмент, и так как я уже давно искал какой-то проект, чтобы начать контрибьютить, решил посмотреть, что там есть на гитхабе и чем можно помочь. Одно из issue было на счет создания обертки (дальше буду использовать wrappe...

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

«Однозначно, такие занятия нужны»: как глухие дети сделали игру на Scratch 10 и 11 октября 2019 года в Москве прошли занятия по программированию на Scratch для глухих и слабослышащих детей – подопечных общественной организации «Я понимаю». Мероприятие состоялось в рамках Европейской недели программирования и инициативы Meet and Code. Влад Лавричен...

История проблемы переноса docker storage (docker root) Не далее, чем пару дней назад было решено на одном из серверов вынести docker storage (каталог, где докер хранит все файлы контейнеров, образов) на отдельный раздел, который обладал большей емкостью. Задача, казалось бы, тривиальная и не предвещала беды… Читать дальше →

Intel Element — взгляд компании на модульный ПК ближайшего будущего Компания Intel всё время пытается создавать новые устройства, новые сегменты и новые стандарты. В своё время именно с подачи Intel появился сегмент ультрабуков и, как следствие, производители стали активнее выпускать тонкие ноутбуки. Вчера на одном из мероприятий Intel ...

В будущем году Oppo инвестирует в исследования и разработку 140 млн долларов Сегодня утром компания Oppo провела в Пекине конференцию для разработчиков. На этом мероприятии было объявлено о запуске так называемого «Плана гравитации», предусматривающего поддержку разработчиков и выделение 140 млн долларов на исследования и разработку ...

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

Лунный орбитальный зонд NASA сделал новые снимки Китайской станции «Чанъэ-4» — ближе и яснее 15 февраля 2019 года NASA показало новые фотографии с орбиты Луны, сделанные зондом LRO спускаемого аппарата «Чанъэ-4» и ровера «Юйту-2». Читать дальше →

Vivo NEX 3 5G показали на официальном изображении После появления изображения с чертежами смартфона Vivo NEX 3 5G, генеральный директор Vivo опубликовал первое официальное изображение будущей новинки. В частности, на нём показан смартфон с так называемым «дисплеев-водопадом» или изогнутым по краям дисплеем. Подробнее об это...

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

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

Xiaomi превратит Redmi в самостоятельный бренд Китайская компания Xiaomi сообщила о том, что имя Redmi, под которым до сих пор выпускались относительно недорогие смартфоны, превращается в самостоятельный бренд. Как объяснил глава и основатель Xiaomi Лэй Цзюнь (Lei Jun), выделение Redmi в отдельный бренд поможет ...

Язык программирования Ü. Введение, мотивация к созданию, цели Введение С 2016-го года (с перерывами) я разрабатываю собственный язык программирования. Название данного языка — «Ü». Почему Ü? Потому, что хотелось однобуквенного названия, а все буквы из набора A-Z уже заняты. Данная статья имеет задачу ознакомить публику с данным языко...

SpaceX запросила разрешение на запуск еще 30 000 спутников Starlink Созвездие спутников связи Starlink может оказаться почти в четыре раза больше, чем планировалось изначально. Компания SpaceX запросила у Международного союза электросвязи (ITU) разрешение на выделение частот для дополнительных 30 тыс. спутников. Два года назад компания предс...

Тим Кук: Apple сильна как никогда и продолжает набирать силу Снижение продаж iPhone и, как следствие, падение выручки Apple, произошедшее в первом финансовом квартале 2019 года, являются временными трудностями, которые не окажут принципиального влияния на дальнейшее развитие Apple. Это следует из интервью Тима Кука Джиму Крамеру, вед...

[Перевод] Настоящее реактивное программирование в Svelte 3.0 Заголовок статьи может показаться немного кричащим, впрочем как и сам фреймворк Svelte и те идеи, что стоят за ним. Если вы ещё не знаете ничего про Svelte, пристегнитесь, сейчас мы рванём навстречу революции. Учтите, что это не урок по началу работы со Svelte. Уже существуе...

У вас две недели: Госдеп США «предупредил» Анкару о последствиях от покупки российских С-400 Приобретение ракетных комплексов ставит под угрозу оборонные отношения Турции и Америки. Госдеп США, в лице официального представителя Морган Ортагус, «предупредил» Анкару о негативных последствиях от покупки С-400 российского производства. Вероятно понимая, что на турецкое...

Браузер Edge теперь доступен для тестирования на macOS Впервые анонсированный в декабре и показанный на конференции разработчиков Microsoft Build 2019 пару недель назад браузер Edge на Chromium теперь доступен для загрузки на macOS. В настоящее время он доступен только в канале тестирования Canary, который получает ежедневные об...

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

Программирование микроконтроллеров ESP8266/ESP32 написанием YAML конфиг файлов Будучи поклонником системы управления "умным домом" Home Assistant я недавно открыл для себя интересный инструмент, тесно с HA интегрированный и ранее на Хабре не освещенный — ESP Home (ранее ESPhomeYAML). ESP Home представляет собой набор библиотек и инструментов, генерирую...

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

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

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

Американским заключённым запретили изучать программирование Заключённым тюрем штата Орегон (США) запретили читать книги про компьютеры, технологии и программирование.

Беспроводной модуль связи с объектом WISE-4000 Можно ли без навыков программирования развернуть систему сбора данных промышленного уровня? В статье мы познакомимся с устройствами, которые позволяют в несколько кликов получить готовую систему обработки цифровых сигналов, доступных через JSON API. Серия WISE-4000 — это ...

[Из песочницы] Использование C++ и шаблонов с переменным количеством аргументов при программировании микроконтроллеров ARM с ядром Cortex Mx (на примере STM32F10x) Микроконтроллер ARM Cortex M3 STM32F103c8t6 широко распространен как 32-х битный микроконтроллер для любительских проектов. Как для практически любого микроконтроллера, для него существует SDK, включающая, в том числе и заголовоч...

Подборка @pythonetc, январь 2019 Это восьмая подборка советов про Python и программирование из моего авторского канала @pythonetc. Предыдущие подборки: Декабрь 2018 Ноябрь 2018 Октябрь 2018 Сентябрь 2018 Август 2018 Июль 2018 Июнь 2018 Читать дальше →

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

И-н-в-о-й-с. Как продавать в интернете без сайта — Пожалуйста, вышлите нам инвойс! — Не слышу! — Вышлите инвойс! — Что выслать??? — Инвойс. Говорю по буквам: Инна! Наталия! Валерий! Ольга! Ирина! Сергей! — Кто эти люди???? Один мой знакомый решает студентам задачи по программированию — у него нет своего сайта, но е...

Calltouch и Яндекс.Касса проведут бесплатную конференцию про сквозную аналитику Calltouch и Яндекс.Касса объединились, чтобы провести практическую конференцию про сквозную аналитику – главный маркетинговый тренд последних 6 лет.  Эксперты обсудят, можно ли зарабатывать без понимания эффективности расходов на рекламу, оправдывают ли себя усилия по интегр...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 27. Введение в AСL. Часть 1 Сегодня мы начнем изучение списка управления доступом ACL, эта тема займет 2 видеоурока. Мы рассмотрим конфигурацию стандартного списка ACL, а на следующем видеоуроке я расскажу про расширенный список. На этом уроке мы рассмотрим 3 темы. Первая – что такое ACL, вторая — в ...

[Перевод] Разновидности SIMD Во время разработки meshoptimizer частенько возникает вопрос: «А может этому алгоритму использовать SIMD?» Библиотека ориентирована на производительность, но SIMD не всегда обеспечивает значительные преимущества по скорости. К сожалению, SIMD может сделать код менее перено...

Архитектура компьютера. Цифровой логический уровень Компьютер — это машина, которая может выполнять вычисления через исполнение примитивных операций. Она может понимать только два сигнала, которые принимаются за 0 и 1. Организация архитектур машин представляется как ряд уровней, каждый из которых надстраивается над нижележа...

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

Школы программирования при компаниях или как войти в IT Наверняка, кто-то из вас натыкался на вакансии компаний под хитрым названием Java/JavaScript/Android/C# School. Вроде и не позиция в штате, с другой стороны, неплохая возможность, а иногда и единственная, данную позицию получить. К сожалению, на просторах интернета данный ...

[Перевод] О декораторах в Python Всем привет! Перевод статьи подготовлен для студентов курса «Web-разработчик на Python». Интересно развиваться в данном направлении? Запишитесь на День Открытых Дверей курса и пообщайтесь вживую с преподавателем: онлайн-трансляция 23 июля в 20:00 по мск.! Когда вы упражняли...

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

Chaos Constructions 2019 is Coming… Chaos Constructions 2019 24-25 августа, традиционно в последние выходные лета, в Санкт-Петербурге пройдет компьютерный фестиваль Chaos Constructions 2019. На конференции в рамках фестиваля вашему вниманию будут представлены более 60 докладов на разные тематики. Безопасно...

Habr Weekly #6 / Рунет готов обособиться, Adobe ищет следы фотошопа, уязвимость Vim, геочаты в Телеге и кое-что еще В шестом выпуске подкаста Habr Weekly прошлись вот по таким темам: Подготовлены правила изоляции Рунета. Яндекс вывел на дороги Москвы пять беспилотных машин. Нейросеть Adobe определяет фотографии, обработанные в Photoshop. Mail.ru запустила голосового помощника по имени ...

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

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