Как стать автором
Обновить
@lulukaka read-only

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

  • Публикации
  • Комментарии

Neovim для full stack программиста

VIM *
Из песочницы
Tutorial

Я немного расскажу, как использую vim в работе full stack программиста, со своей колокольни, но для начала отвечу на некоторые вопросы, которые задают мне, когда узнают, что я использую vim при разработке проектов:

Зачем?

Хороший вопрос. Стоит для себя лично на него ответить. Зачем валандаться с vim, изучать кучу комбинаций клавиш и плагинов? Какой смысл, если есть vscode или pycharm или phpstorm? Жизнь коротка, стоит ли ее тратить на все это? Чтобы впечатлить кого-то, как на картинке в начале статьи? Да кого этим удивишь?

Читать далее
Всего голосов 47: ↑46 и ↓1 +45
Просмотры 14K
Комментарии 115

Готовимся к Сколковской Школе Синтеза Цифровых Схем: литература, FPGA платы и сенсоры

FPGA *Программирование микроконтроллеров *Производство и разработка электроники *DIY или Сделай сам Электроника для начинающих

Мы с коллегами из МИЭТ, Ядро Микропроцессоры / Syntacore, МИРЭА, ВШЭ МИЭМ, МГУ, Иннополиса, ЧНТУ, Самарского университета, Siemens EDA и с поддержкой от Cadence Design Systems - проводим, начиная с 30 октября, курс на 13 суббот под названием "Сколковская Школа Синтеза Цифровых Схем". Это сильно расширенная версия трехдневной школы на ChipEXPO, которая прошла на ура в сентябре.

Суть школы - знакомство с маршрутом проектирования RTL2GDSII, который применяют проектировщики чипов в Apple, Intel итд, используя в качестве тренажера лабы на микросхемах реконфигурируемой логики FPGA, как это делают например в MIT в курсе 6.111. Помимо лаб на FPGA в курсе будет туториал по ASIC flow используя софтвер от Cadence, после которого, если мы договоримся, будет экскурсия на фабрику микросхем в Зеленограде.

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

Этот текст - в помощь для подготовки
Всего голосов 20: ↑19 и ↓1 +18
Просмотры 3.5K
Комментарии 43

Развитие инструментария С++ программистов: статические анализаторы кода

Блог компании PVS-Studio Информационная безопасность *Программирование *C++ *C *

Развитие инструментария С++ программистов: статические анализаторы кода
Размер современных приложений и сложность языка C++ превышают возможности людей по всестороннему анализу текста программ на обзорах кода. Компенсационная методология – статический анализ кода.

Читать дальше →
Всего голосов 23: ↑19 и ↓4 +15
Просмотры 5.3K
Комментарии 7

Старый фотик + bash = таймлапс

Блог компании RUVDS.com Разработка под Linux *Фототехника Видеотехника DIY или Сделай сам
Tutorial

Думаю у многих из нас, в шкафу пылился старый зеркальный фотоаппарат, типа Canon EOS 400D. Он как чемодан без ручки: выбросить жалко, продать смысла нет, и использовать вряд ли будешь. Достал его так одним вечером, и подумал: вещь хорошая и вполне годная для всяких опытов. И сразу загорелся применить его во всяких своих самоделках. А что, весьма хорошо фотографирует из коробки, достаточно широкий спектр всяких регулировок, осталось только научиться с ним работать. Всего-то подружить его с компьютером, да Linux, и дело в шляпе! В результате у нас получается просто непаханое поле для фотографических экспериментов и применения в своих придумках. Давайте же поглядим, как это можно сделать и что получилось из таких экспериментов.
Читать дальше →
Всего голосов 113: ↑112 и ↓1 +111
Просмотры 23K
Комментарии 92

Пишем драйвер виртуального EEPROM для STM32F030

Блог компании RUVDS.com Программирование *Программирование микроконтроллеров *

Кто хотел сохранять какие-либо данные в FLASH микроконтроллера во время работы устройства сталкивались с особенностями работы с этим видом памяти. Из-за необходимости стирания страницы большого объёма для перезаписи ячейки FLASH памяти, возникает угроза потери данных из-за отключения питания во время процесса обновления (один из вариантов). В этой статье я расскажу как можно упростить работу с FLASH, да и ещё с гарантией сохранения данных при прерывании процедуры обновления на любом этапе. Реализуем это на STM32F030.
Читать дальше →
Всего голосов 61: ↑58 и ↓3 +55
Просмотры 5.8K
Комментарии 28

«Умная штора» своими руками

Блог компании ITSOFT Разработка под Arduino *Умный дом DIY или Сделай сам

Привет всем!

Намедни я озаботился, а чтобы такого мне еще автоматизировать в своем доме? Поразмыслив, решил, что неплохо бы обзавестись "умными шторами" для окна в гостиной - телевизор находится прямо напротив окна, и дневной свет создает неприятный отблеск на экране. Тут, конечно, некоторые могут заметить, что "нефиг днем телевизор смотреть, пахать надо!", но мы отметём эти реплики, как неорганизованные😊

Сначала я решил установить high tech решение - поляризующуюся "умную" плёнку, о которой читал много лет назад. Но, погуглив чуток, убедился, что "фиг вам, изба индейца" - плёнка такая есть в продаже, и даже от многих производителей, но вот стоимость на площадь моего окна будет выше $800 Даже крохотные engineering samples, размером с лист бумаги, они пытаются продать по ценам от $75 и выше...

"Ну, ладно", подумал я, поищу "штору с мотором" на Amazon-е. Поискал... Тут возмутилась моя "жаба": после "кастомизации", "умная" моторизированная штора обошлась бы мне минимум в $262 + налог на продажу! А "делов-то" там?!

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

Исходный код проекта находится вот тут; там же есть BOM (bill of materials) со ссылками на Amazon-овские продукты. Искренне надеюсь, что у русских читателей будет более широкий и дешевый выбор компонентов (самыми дорогими оказались, собственно, сама шторка, и geared stepper motor).

Читать далее
Всего голосов 41: ↑37 и ↓4 +33
Просмотры 16K
Комментарии 123

Java 17: Pattern Matching for switch

Программирование *Java *API *
Из песочницы

14-го сентября состоялась презентация Apple, в этот же день произошло не менее важное событие - релиз Java 17.

Среди новых фич подъехал паттерн матчинг для switch в preview моде.

История началась с того, что в jdk 16 расширили instanceof оператор, который теперь может принимать type pattern и выполнять матчинг по паттерну. Это маленькое изменение позволило упростить типичную конструкцию с проверкой на тип и последующее приведение.

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Просмотры 4.1K
Комментарии 15

Какую СУБД выбрать и почему? (Статья 1)

Oracle *SQL *NoSQL *Microsoft SQL Server *
Из песочницы

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

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

Читать далее
Всего голосов 52: ↑40 и ↓12 +28
Просмотры 21K
Комментарии 39

Собеседование наоборот: Usetech и Weigandt Consulting отвечают на вопросы о работе

Блог компании Хабр Карьера Java *Карьера в IT-индустрии

По следам Java-недели на Хабр Карьере было так много вопросов от участников, что они не уместились в полтора часа нашего итогового круглого стола с компаниями. Поэтому мы решили выпустить их в формате статьи здесь на Хабре и попросили компании ответить на те вопросы, которые показались им самыми интересными. Отозвались ребята из Weigandt Consulting и Usetech, и сегодня мы делимся их комментариями о работе джавистов, найме джунов и старте карьеры в Java-разработке, мнением о технологиях и карьерными советами.

Читать далее
Всего голосов 14: ↑13 и ↓1 +12
Просмотры 2.6K
Комментарии 0

Навигация в кроссплатформенном приложении на .NET Core с сохранением состояния на диск на примере ReactiveUI и Avalonia

Программирование *.NET *C# *Разработка под Linux *Разработка под Windows *
Tutorial



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


MVVM фреймворк ReactiveUI предлагает сохранять состояние приложения путём сериализации графа моделей представления в момент приостановки программы, при этом механизмы определения момента приостановки различаются для фреймворков и платформ. Так, для WPF используется событие Exit, для Xamarin.Android — ActivityPaused, для Xamarin.iOS — DidEnterBackground, для UWP — перегрузка OnLaunched.


В данном материале рассмотрим использование ReactiveUI для сохранения и восстановления состояния ПО с GUI, включая состояние роутера, на примере кроссплатформенного GUI фреймворка Avalonia. Материал предполагает наличие базовых представлений о шаблоне проектирования MVVM и о реактивном программировании в контексте языка C# и платформы .NET у читателя. Последовательность действий, описанная в статье, применима к ОС Windows 10 и Ubuntu 18.

Приступим!
Всего голосов 31: ↑30 и ↓1 +29
Просмотры 14K
Комментарии 0

Разработка кроссплатформенного приложения на Avalonia для Raspberry Pi с использованием Github Action

.NET *Яндекс API *C# *GitHub Разработка на Raspberry Pi *
Из песочницы

Вступление

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

Примерный план был такой: приобрести Raspberry PI 3 и экран, подключить его к интернету, написать приложение, повесить на стенку и пользоваться с удовольствием.

В процессе проектирования, я сразу же увидел проблему в процессе разработки – как разрабатывать на домашнем компьютере и автоматически доставлять и запускать написанное приложение на Raspberry Pi, чтобы это не было долгим и мучительным ручным процессом.

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

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

Выбор технологий для разработки и настройка Raspberry Pi

Для решения поставленных задач, нам потребуется ряд технологий, а именно:

-        Кроссплатформенный фреймворк для работы логики и GUI приложения;

-        ПО для автоматического развертывания приложения;

Читать далее
Всего голосов 23: ↑23 и ↓0 +23
Просмотры 4.2K
Комментарии 0

Высокопроизводительная вставка с помощью SqlBulkCopy с IDataReader

.NET *SQL *C# *
Из песочницы
Перевод

SqlBulkCopy можно использовать в трех вариантах: вставка данных, представленных в виде DataTable, массива DataRowили IDataReaderэкземпляра. В этой статье я продемонстрирую две реализации IDataReaderинтерфейса, которые используются в сочетании с SqlBulkCopyвысокопроизводительной вставкой в ​​базу данных. Два других варианта похожи друг на друга и могут использоваться для относительно небольших объемов данных, поскольку они требуют, чтобы все записи были предварительно загружены в память перед их передачей SqlBulkCopy. Напротив, этот IDataReaderподход более гибкий и позволяет работать с неограниченным количеством записей в «ленивом» режиме, что означает, что данные могут передаваться SqlBulkCopyна лету так быстро, как сервер может их использовать. Это аналогично подходу IList<T>vs.IEnumerable<T>.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 1.7K
Комментарии 0

Запускаем PostgreSQL в Docker: от простого к сложному

PostgreSQL *IT-инфраструктура *
Tutorial

О простых и продвинутых способах запуска PostgreSQL в Docker: добавляем healthcheck, ставим на мониторинг, настраиваем параметры.

Читать далее
Всего голосов 39: ↑37 и ↓2 +35
Просмотры 22K
Комментарии 29

Разработка контроллера резервного питания. Технология отладки и тюнинг

Open source *Программирование микроконтроллеров *Производство и разработка электроники *DIY или Сделай сам Электроника для начинающих
Tutorial

Здесь рассматривается технология отладки платы контроллера резервного питания и его программного обеспечения . Используются: адаптер SWD, осциллограф, VT100 терминал через UART, движок FreeMaster, экспорт и анализ в MATLAB. Дан пример реализации регулируемого источника напряжения. Заключительный тюнинг платы.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 4.4K
Комментарии 8

Введение в программирование: заготовка игры-платформера на SDL в 300 строк C++

Программирование *C++ *Разработка игр *
Tutorial

Этот текст предназначен для тех, кто только осваивает программирование. Я читаю лекции по C++ на первом курсе местного университета, и в качестве практикума предлагаю запрограммировать любую игру (не выношу проектов типа "софт бронирования книг в местной библиотеке"). Соответственно, чтобы помочь начинающим, я сделал некоторое количество заготовок, с которых можно стартовать свой проект. Например, заготовку олдскульного 3д шутера в 486 строк C++ я уже описывал, а вот тут можно посмотреть, что из неё сделали первокурсники.


В этот раз всё будет ещё проще, я хочу сделать заготовку под простейший платформер, вот так выглядит результат:



На данный момент проект содержит менее трёхсот строчек цпп:


ssloy@khronos:~/sdl2-demo/src$ cat *.cpp *.h | wc -l
296

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


Итак, поехали!

Читать дальше →
Всего голосов 58: ↑57 и ↓1 +56
Просмотры 14K
Комментарии 124

Когда Россия уйдет с МКС?

Блог компании RUVDS.com Управление разработкой *Научно-популярное Космонавтика Будущее здесь

Российский сегмент Международной космической станции недавно пополнился модулем «Наука», а на Байконуре готовится к запуску ещё Узловой модуль. Однако, официальные лица в России периодически говорят об уходе с МКС. Что же ждёт нашу пилотируемую космонавтику в ближайшие годы, и что будет с самым дорогим космическим проектом человечества?
Читать дальше →
Всего голосов 92: ↑91 и ↓1 +90
Просмотры 23K
Комментарии 120

Цены на редкоземельные металлы, дефицит чипов и торговые войны: стоимость гаджетов будет только расти

Блог компании Selectel Исследования и прогнозы в IT Производство и разработка электроники *Статистика в IT Финансы в IT

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

Стоимость ресурсов — крайне мощный ценовой фактор для всей индустрии производства электронных компонентов и гаджетов. Их стоимость и так постепенно увеличивается, а сейчас игроки рынка ожидают уже не плавного, а скачкообразного роста цен буквально на все.
Читать дальше →
Всего голосов 60: ↑60 и ↓0 +60
Просмотры 15K
Комментарии 13

48 полноценных бесплатных книг для программистов (happy developer's day)

Open source *Программирование *.NET *Читальный зал DevOps *
Tutorial

Привет, Хабр! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию. Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг: .NET, Алгоритмы, Android, iOS, Angular, C, C++, C#, JS, Linux, Python. В целом, найдется почти любая тема, которая приходит в голову.

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

Читать далее
Всего голосов 100: ↑99 и ↓1 +98
Просмотры 59K
Комментарии 55

Как нейросети помогают делать ремастеры

Блог компании Playgendary Разработка игр *Машинное обучение *Искусственный интеллект Игры и игровые приставки
Перевод

Наиболее очевидный способ освежить игру — увеличить в ней разрешение, обновить текстуры и можно снова выкладывать в стор. В том числе по этой причине GTA V выходит уже на третьем поколении консолей, но сейчас не об этом. 

Есть примеры и легендарных проектов, которым переиздание было просто необходимо. Среди таких, например, Mass Effect Legendary Edition. Игра стала одним из первых AAA-ремастеров, где разработчики, чтобы облегчить себе жизнь, использовали нейросети для апскейлинга текстур. Наткнулись на подробный разбор, что это за технология, чем отличается от DLSS и как работает. Примеры тоже имеются. Подробности — под катом.

Читать далее
Всего голосов 32: ↑32 и ↓0 +32
Просмотры 6.1K
Комментарии 5

Легенды и мифы процессора Эльбрус в примерах

Процессоры

В ответ на мою статью про тупиковость развития линейки процессоров Эльбрус в качестве базовой платформы для отечественных general-purpose CPU, пользователь @alexanius (Алексей Маркин) написал свою статью-ответ, где привёл возражения моим тезисам. Дабы не превращать дискуссию в формат форумной перепалки, я попытаюсь структурировать изложенные возражения, максимально опустив малозначимые на мой взляд детали и не относящиеся к делу реплики. Также мы оставим на совести Алексея некорректные высказывания и переходы на личности. Это мишура, которая не поможет нам глубже понять суть проблемы.

Итак, если суммировать, то в моей статьей были приведены следующие недостатки Эльбруса:

Читать далее
Всего голосов 227: ↑206 и ↓21 +185
Просмотры 54K
Комментарии 632
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность