Pull to refresh
3
0
Николай Синёв @NickSin

Инженер

Send message

Пишем frontend на golang

Reading time10 min
Views19K

Вас задрало, что node_modules соревнуются по количеству используемого места с вашей коллекцией музыки?

Вы перечитали инструкцию к Redux  в шестидесятый раз и поняли две вещи: "До меня кажется доходит..." и "Думаю, мне стоит перечитать это ещё раз!"

Вы в очередной раз узнали, что 1 + "1" == "11", а  [] - {} == NaN?

Билд скрипт в webpack занимает больше места чем ваша библиотека на javascript?

Тогда заходите под кат, я покажу вам, как можно перевести ваш фронтэнд на го. 

ничеgoшеньки...
Total votes 9: ↑7 and ↓2+7
Comments18

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

Reading time3 min
Views7.1K

Как-то так вышло, что раньше я довольно скептически относился к macOS, поскольку не имел возможности поработать с ней в более-менее устоявшейся корпоративной среде (т.е. не когда на всю компанию в 500-600 человек есть 2 мака, и те у генерального с его замом, да еще и с виндой в буткемпе). Но несколько лет назад мне повезло познакомиться с очень масштабной гетерогенной средой, показавшей, что в современных компаниях macOS не только успешно сосуществует с привычной Windows, но иногда и превалирует над ней в общей доле клиентских машин.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments2

OpenRPNCalc: делаем бескомпромиссный калькулятор

Reading time12 min
Views23K

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

Но зачем?
Total votes 115: ↑110 and ↓5+151
Comments117

За что App Store может отклонить приложение: чек-лист

Reading time6 min
Views8.8K

App Store — самая строгая площадка для размещения приложений. Ревью проходит дольше и строже, чем у Google Play и Huawei App Gallery. В 2020 году AppStore отклонил миллион приложений, которые публиковались впервые, и миллион апдейтов.

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

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

Мы составили чек-лист очевидных и не очень очевидных причин, по которым AppStore отклоняет приложения. В статье раскроем подробнее каждый пункт.

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments25

sqlite-gui: еще один редактор SQLite для Windows

Reading time7 min
Views16K
Всё начиналось как простое средство для выполнения запросов к SQLite базе с сохраняемой историей запросов и кода в редакторе, написанное по старинке на WinAPI. Потихоньку оно обросло функционалом, и, если бы я с самого начала знал во что это выльется, то не взялся бы.
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments9

Сборка ядра Linux с LTO оптимизацией

Reading time25 min
Views29K


Технический прогресс не стоит на месте, появляются новые компьютерные архитектуры, компиляторы становятся умнее и генерируют более быстрый машинный код. Современные задачи требуют все более креативного и эффективного решения. В данной статье пойдет речь, на мой взгляд, про один из самых прогрессивных тулчейнов LLVM и компиляторы на его основе Clang и Clang++, для языков программирования С и C++ соответственно. Хоть GCC — конкурент Clang, может агрессивнее оптимизировать циклы и рекурсию, Clang дает на выходе более корректный машинный код, и чаще всего не ломает поведение приложений. Плюс оптимизация программ не заканчивается только оптимизацией циклов, поэтому Clang местами дает лучшую производительность. В GCC же за счет переоптимизации вероятность получить unpredictable behavior значительно выше. По этой причине на многих ресурсах не рекомендуют использовать -O3 и LTO(Link Time Optimization) оптимизации для сборки программ. Плюс в случае агрессивной оптимизации, размер исполняемых файлов может сильно увеличиться и программы на практике будут работать даже медленнее. Поэтому мы остановились на Clang не просто так и опции компиляции -O3 и LTO работают в нем более корректно. Плюс современные компиляторы более зрелые, и сейчас уже нет тех детских болячек переоптимизации и LTO.
Узнать подробности
Total votes 59: ↑48 and ↓11+59
Comments55

Чернобыль ч.12. О том, как юристы, учёные и власти отвечали на два вечных вопроса

Reading time16 min
Views14K

Автор: Александр Старостин

Два вечных и главных вопроса русской культуры "Кто виноват?" и "Что делать?" можно задать в любой ситуации и в любой момент времени. Несомненно, ответы на них - это важнейшие исходные пункты дальнейшего развития всего происходящего. Для поиска этих ответов СССР отрядил лучших своих спецов. Все предыдущие части мы наблюдали за тем, как начали решать второй вопрос, ведь его можно сформулировать двояко: что делать с 4 блоком и что делать, чтобы другие реакторы не взорвались? О последнем аспекте мы поговорим в следующей части, а сегодня начнём отвечать на вопрос "Кто виноват?"

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

Читать далее
Total votes 21: ↑19 and ↓2+23
Comments6

Стандарт C++20: обзор новых возможностей C++. Часть 2 «Операция ''Космический Корабль''»

Reading time7 min
Views17K


25 февраля автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов рассказал о новом этапе языка C++ — Стандарте C++20. В лекции сделан обзор всех основных нововведений Стандарта, рассказывается, как их применять уже сейчас и чем они могут быть полезны.

При подготовке вебинара стояла цель сделать обзор всех ключевых возможностей C++20. Поэтому вебинар получился насыщенным. Он растянулся почти на 2,5 часа. Для вашего удобства мы разбили текст на шесть частей:

  1. Модули и краткая история C++.
  2. Операция «космический корабль».
  3. Концепты.
  4. Ranges.
  5. Корутины.
  6. Другие фичи ядра и стандартной библиотеки. Заключение.

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

Это вторая часть, рассказывающая об операции «космический корабль» в современном C++.
Читать дальше →
Total votes 21: ↑20 and ↓1+27
Comments5

История успешного перевода ScreenPlay с QMake на CMake

Reading time7 min
Views6.1K
ScreenPlay — это опенсорсное приложение для Windows (а скоро — ещё и для Linux и macOS), предназначенное для работы с обоями и виджетами. Оно создано с использованием современных инструментов (C++/Qt/QML), активная работа над ним ведётся с первой половины 2017 года. Код проекта хранится на платформе GitLab.



Автор статьи, перевод которой мы сегодня публикуем, занимается разработкой ScreenPlay. Он столкнулся с рядом проблем, решить которые ему помог переход с QMake на CMake.
Читать дальше →
Total votes 24: ↑22 and ↓2+35
Comments6

C++ с кроссплатформенностью и зависимостями

Reading time3 min
Views14K

C++ по прежнему используется не только для написания ОС, игр и драйверов, но и для неприхотливых к ресурсам утилит командной строки. Между тем конкуренты на этом поприще, например Rust, предлагают систему сборки c менеджером зависимостей по умолчанию. Для C++ де-факто тоже есть стандартная система сборки CMake, но как подключать внешние библиотеки без боли? Вспомним, что для многих развитых технологий есть нечто вроде странички https://start.yourtechnology.io, создающих базовый стандартный проект, чтобы не тратить время на boilerplate конфигурацию. В этой статье рассматривается именно такой шаблон для создания C++ проектов с менеджером зависимостей vcpkg.

Читать далее
Total votes 9: ↑5 and ↓4+5
Comments19

Bluetooth Low Energy: подробный гайд для начинающих. Bluetooth 5 и безопасность

Reading time16 min
Views14K

Это четвертая часть перевода книги Мохаммада Афане “Intro to Bluetooth Low Energy”. Сегодня мы рассмотрим возможности, появившиеся в новой версии стандарта а также различные методы обеспечения безопасности соединения и пользовательских данных в BLE. Мы узнаем, за счет чего стало возможно четырехкратное увеличение дальности связи, двухкратное ускорение, и почему их нельзя получить одновременно.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments15

Telegram на go, часть 2: бинарный протокол

Reading time6 min
Views5.7K

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


Клиент на Go продолжает развиваться, а мы вернемся в прошлое и вспомним, как писался для него сериализатор и десериализатор протокола.

Читать дальше →
Total votes 8: ↑7 and ↓1+9
Comments0

Что послушать, когда пишешь код: бесплатные миксы, заглушка для второго монитора и эмбиент-плеер

Reading time3 min
Views18K

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

Читать далее
Total votes 13: ↑10 and ↓3+10
Comments41

Как за долгое время я вернулся на Windows (WSL)

Reading time3 min
Views36K

Совсем недавно я приобрёл себе Huawei Matebook d13 с предустановленной windows 10 home


WINDOWS #День первый


После моего старенького MSI, Huiwei показал себя с лучшей стороны.


  1. FingerPrint
  2. Тачпад с полной поддержкой жестов
  3. 2к экран
  4. Продолжительное время работы
  5. Зарядка от Type-c. Теперь заряжаю все свои устройства одной зарядкой

Я радовался, как маленький ребенок, но ноутбук был куплен для работы, а работать я привык на linux


KDE NEON, KUbuntu, Ubuntu


Я давно хотел попробовать кеды, но никак не решался, и вот с новым устройством у меня был карт-бланш на любые эксперименты. Я поставил себе KDE NEON и сразу столкнулся с отсутствием жестов и неработающим fingerPrint. С помощью танцев с бубном я завел некоторые жесты (отпечаток пальца не получилось). В браузерах жесты отказывались работать совсем.


Я снес всё, что было, и поставил Ubuntu. Ничего не поменялось, но тут все жесты не работали, как бы я ни старался.


Я снес всё, что было, еще раз и поставил KUbuntu. Ничего не поменялось!


И тут я вспомнил про WSL(Windows Subsystem for Linux)


Я снес linux и вернул windows

Читать дальше →
Total votes 60: ↑43 and ↓17+43
Comments240

Электронная книга своими руками на STM32H750 от А до Э

Reading time22 min
Views37K


В этой статье я хочу поделиться опытом разработки электронной книги с использованием недорогого контроллера STM32H750VB, распространенных дискретных компонентов и относительно недорогого дисплея E-Ink. Статья будет большой, так как приведены будут все процессы от постановки задачи до получения первой версии устройства, способного выполнять поставленную задачу. Все будет снабжено схемами, трассировками, кодом и комментариями. Почему в названии от «от А до Э»? Потому что нельзя просто так взять и сделать конечный продукт без ошибок и недоделок.

Читать дальше →
Total votes 127: ↑127 and ↓0+127
Comments77

Как писать книгу по физике в LaTeX. Cтатья 1

Reading time26 min
Views35K
Это моя первая статья на Хабре.

Глава 1. Введение


1.1 Позвольте представиться и почему я это пишу

Я — научный сотрудник, физик. Недавно выпустил книгу по спектроскопии объемом 880 страниц и весом 1560 грамм. Эту книгу я писал 9 лет, параллельно читая лекции по ее содержимому. Она отняла у меня очень много времени, что естественно. Что не естественно — это то, что громадная часть потраченного времени ушла на оформление, то есть на изучение языка Латех. И это при том, что я на Латехе пишу всю жизнь, лично написал и опубликовал около 50 статей в разных издательствах.

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

После публикации книги (пока, увы, только на русском языке) у меня возникло громадное желание написать ещё книгу "Как написать книгу по физике в Латехе"
Читать дальше →
Total votes 90: ↑89 and ↓1+126
Comments100

Загрузка и сборка AOSP

Reading time4 min
Views32K

Решил поделиться своей инструкцией как собрать AOSP (Android Open Source Project). Эта инструкция будет полезна тем кто хочет посмотреть что-же внутри Android и возможно заняться системной разработкой. В любом случаи эти знания полезны для понимания самого Android, как раз для этого и решил собрать AOSP.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments2

Визуализация данных при отладке в Visual Studio Code

Reading time2 min
Views15K


Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе часто визуальную часть предоставляет браузер, и все всем довольны. Но бывает, что списки или деревья в голове уже не умещаются, таблицы хочется отсортировать, а графики строить не выходя из среды отладки. Для всего этого и был создан плагин для VS Code — Debug Visualizer.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments0

GitHub Actions и LaTeX: поднимаем, заливаем

Reading time6 min
Views6.1K
В этой статье мы настроим пайплайн в GitHub для автоматической сборки pdf-файлов и последующей выкладки в Releases. Также поднимаем небольшой сайт-визитку с ссылкой на самые свежие сборки.

Материал будет полезен новичкам и тем, кто хочет быстро поднять CI/CD для latex встренными средствами GitHub.
Читать дальше →
Total votes 10: ↑9 and ↓1+12
Comments4

Как книга «Электроника шаг за шагом» обрела новую жизнь

Reading time7 min
Views92K


Привет, Хабр!

Хорошие новости для тех, кто следил за историей переиздания книги Рудольфа Свореня «Электроника шаг за шагом» — книга вот-вот, на днях, покинет типографию и попадёт в руки читателей. Почему так долго пришлось ждать новое издание книги? Что изменилось в тексте? А иллюстрации всё те же? Что со схемами  — по-прежнему, на МП39, с плюсовой «землей»? Будет ли электронная версия книги? На эти и другие вопросы, я попытаюсь ответить ниже.
Читать дальше →
Total votes 112: ↑111 and ↓1+144
Comments156

Information

Rating
Does not participate
Location
Кронштадт, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity