Рубрика «разработка» - 160

Контрибьютим в PostgreSQL: примеры реальных патчей, часть 1 из N - 1

Ранее в статье Становимся контрибьютером в PostgreSQL был подробно рассмотрен процесс разработки PostgreSQL и используемые при этом инструменты, были предложены некоторые идеи для первого патча и рассказано, куда и как эти патчи нужно посылать. Также были приведены ссылки на дополнительные источники информации касательно внутреннего устройства РСУБД.

Теперь же мы рассмотрим примеры реальных патчей, принятых в PostgreSQL за последнее время. Какие-то из этих патчей были написаны непосредственно мной, при разработке других я активно участвовал в качестве ревьювера. Это сравнительно небольшие патчи. На момент написания этих строк я занимаюсь разработкой PostgreSQL менее года, и ранее разработкой СУБД я не занимался (ровно как и разработкой на языке C за деньги). Поэтому есть основания полагать, что данные патчи будут интересны новичкам, желающим начать участвовать в разработке открытых проектов, притом не обязательно именно PostgreSQL. Чтобы не писать лонгридов, статья разбита на части.

Заинтересовавшихся прошу проследовать под кат. Читать полностью »

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

Acronis People 2: Начало карьеры в Acronis. Как, вместо уютной стажировки, я попал в пекло разработки - 1
Читать полностью »

Сегодня мы расскажем о проекте, нацеленном на распознавание некоторых видов физической активности человека. Делается это с помощью платы Intel Edison, к которой подключён акселерометр ADXL345.

Идёт? Бежит? Поднимается по лестнице? Intel Edison знает ответ - 1

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

В нашем проекте для анализа данных акселерометра используется метод опорных векторов (Support Vector Machine, SVM). Программная часть реализована с применением популярной библиотеки LIBSVM. Код написан в двух вариантах: на Python и Node.js.
Читать полностью »

Рейтинг HackerRank: самые лучшие программисты — в Китае, России и Польше - 1

HackerRank — это социальная платформа, которая предлагает задания разной сложности по программированию. Запущена платформа была в 2012 году. Сейчас аудитория проекта насчитывает около полутора миллиона пользователей. Статистику по результатам решений заданий своими пользователями ресурс регулярно публикует в виде рейтинга по 50 странам.

Рейтинг HackerRank учитывает задания по 15 наиболее популярным дициплинам. Самые популярные задачи касаются различных алгоритмов, связанных с динамическим программированием, анализом больших данных и другими темами. Для решения таких заданий пользователь может работать с любым языком программирования. Кроме алгоритмов в топ-3 популярных заданий входят задачи по структуре данных и программировании на Java. Такие задания выполняются 9,1% и 9,3% пользователей соответственно. Все баллы специалистов по разным странам анализируются, после чего выводится общий балл для каждой страны из участвующих в рейтинге. Максимальное количество баллов, которое может получить страна — 100.
Читать полностью »

Привет! Я занимаюсь разработкой электроники (благо навыки охватывают большую часть этого интереснейшего увлечения). И заказали мне как-то разработку GSM-логгера для ЖКХ.

Кроме наличия требуемых входов/выходов (в том числе 4-20 ма) и источника питания 5-30 в для датчиков, основным условием было минимизация потребления дабы иметь возможность питаться от батарей.После проработки схемотехники и печатной платы во весь рост встал вопрос о используемом протоколе. Хотелось чего-то простого и стандартного.
Читать полностью »

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

IoT-проект для умного дома: строим прототип - 1

В проекте задействован Intel IoT Commercial Development Kit, компьютер малого форм-фактора Intel NUC Kit DE3815TYKHE, плата Arduino 101 и некоторые дополнительные компоненты. Освоив этот материал, вы cможете сделать то же самое, что получилось у нас, даже если ваш опыт создания IoT-решений невелик.

Вот, что вы узнаете, освоив это руководство:
Читать полностью »

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

Шаблоны взаимодействия для интернета вещей - 1


Сегодня мы рассмотрим одиннадцать шаблонов взаимодействия в IoT-системах.
Читать полностью »

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

Тогда, в начале времен, все эти команды и функции далеко опережали свое время, и благодаря им Asterisk "уделывал" по функционалу многие коммерческие продукты.

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

Но разработку модуля Астериск на языке С сложно назвать тревиальной задачей. Это весьма тернистый путь, к тому же весьма рискованный, ведь критическая ошибка в своем модуле запросто приводила к полному падению Asterisk в core.

Нужны были более "мягкие" и простые способы для расширения функций и интеграции с другими системами.

Так появились интерфейсы AGI и AMI.

Читать полностью »

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

Удивительно, но сделать продукт простым для пользователя очень сложно. Мы поняли это на собственном опыте, когда столкнулись с вопросами, на которые не нашли однозначного ответа:
• что важнее, простота или функциональность?
• до какой степени нужно и можно упрощать продукт?
• и на кого ориентироваться в конечном счете при внесении изменений?

Простота – это сложно

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

Посмотрите, например, на Dropbox. Однажды гендиректор Macroscop Артем Разумков пообщался с одним из создателей этого сервиса. Тот рассказал, что идея хранения файлов в облаке была известна давно, и для этого надо было нажать на кнопку только 1 раз – загрузить файл. То, что придумали они – это просто переход от одного нажатию к нулю нажатий: человек просто помещает файл в обычную папку, и он загружается в облако автоматически. Кнопку «загрузить» вообще не надо нажимать! Эта простая идея перехода от 1 нажатия к 0 нажатий позволила им взлететь до невероятных высот. Вот она сила простоты!
Читать полностью »

Буквально вчера выложил в открытый доступ первую рабочую версию консоли для отладки Canvas/WebGL приложений FConsole. Если вы всегда хотели редактировать свойства визуальных объектов без изменения исходного кода, а так же без сложностей просматривать всю иерархию визуальных объектов, то прошу под кат.

image

* На скриншоте представлена Flash-Console, которая бралась в качестве примера при разработке FConsole
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js