Pull to refresh
26
0
Send message

Быстрый доступ к VPN в iOS с помощью App Intents

Level of difficultyMedium
Reading time9 min
Views1.9K

Привет! Меня зовут Антон Долганов, я iOS-разработчик в компании Контур. Я работаю над инфраструктурными модулями и параллельно поддерживаю наше приложение Контур.Коннект, которое используется для подключения к внутреннему VPN и даёт доступ к корпоративным сервисам.

Недавно мы выпустили обновление Коннекта, добавив поддержку Быстрых команд (Shortcuts). Теперь можно включать и отключать VPN, даже не заходя в приложение. В этой статье я расскажу, как я это реализовал и почему это полезно.

Читать далее
Total votes 7: ↑7 and ↓0+10
Comments0

«Бобер выдыхай»: Go, WinAPI и ассемблер

Level of difficultyHard
Reading time22 min
Views9K

Что вам приходит в голову при слове «Golang»? Google и микросервисы? Я тоже так думал, но реальность оказалась значительно интересней.

Читать далее
Total votes 36: ↑35 and ↓1+40
Comments31

RSS-агрегатор и RSS-мост на виртуальном сервере

Level of difficultyMedium
Reading time6 min
Views3.8K


Формат RSS (Really Simple Syndication) хотя и довольно старая технология, но до сих пор очень популярная. Можно сказать, что сейчас она словно переживает второе рождение, особенно в условиях затруднённого доступа ко многим сайтам.

Это действительно самый удобный способ читать весь контент в одном месте, без рекламы и лишних отвлечений. Конечно, есть внешние RSS-агрегаторы и ридеры, но можно выбрать и другой вариант: запустить агрегатор на своём сервере и не зависеть от внешних факторов. Это даёт бóльшую свободу, потому что его функциональность в некоторых случаях даже шире, чем у специализированных сервисов.
Читать дальше →
Total votes 33: ↑33 and ↓0+53
Comments5

Windows 11 24H2 IoT Enterprise LTSC – что за зверь, и чем он хорош?

Level of difficultyEasy
Reading time4 min
Views71K

Месяц назад я писал статью об издании Enterprise G, созданную Microsoft для китайского правительства, в котором много лишнего отключено. Статья вызвала большой интерес, много кому нужна ОС с максимальным функционалом — при вашем желании его использовать, но с возможностью отключить всё (или почти всё) ненужное. У версии Enterprise G основной недостаток в том, что политика продукта, прописанная в цифровой лицензии, запрещает установку любых языковых пакетов, отличных от китайского и английского. То бишь, русского интерфейса легким путем не достичь. Возникает вопрос выбора другого издания.

Сразу на ум приходит версия Enterprise LTSC, как полнофункциональная с длительным циклом обслуживания и поддержки, благо для Windows 11 24H2 она утекла еще в апреле. Но, оказывается, есть и более достойный выбор, о котором мы сейчас с вами и поговорим. Речь идёт об издании IoT Enterprise LTSC. Что это такое? Чем оно лучше, чем Enterprise LTSC? А чем хуже? Как её русифицировать и как активировать? Об это сегодняшний разговор.

Чем же так отличается IoT Enterprise LTSC?
Total votes 51: ↑50 and ↓1+58
Comments143

Web APIs, которые функционально приближают веб-приложения к нативным

Level of difficultyMedium
Reading time6 min
Views16K

Исходные данные: мы с командой делаем банковское приложение. Веб-приложение. Не все поверят, но сегодня реально реализовать на вебе такой пользовательский опыт, от которого люди не будут скрипеть зубами и умолять вернуть им натив. Расскажу, какие Web API мы используем, раскрою тонкости и покажу примеры кода.

Читать далее
Total votes 33: ↑31 and ↓2+35
Comments33

Оптимизация Go: как повысить скорость и эффективность кода

Level of difficultyMedium
Reading time9 min
Views7.2K

Привет, Хабр! Меня зовут Макс, я Go-разработчик в компании SimbirSoft. Язык Go (Golang) стремительно набирает популярность, он всё чаще внедряется в существующие программные решения, а также встречается в стеке новых проектов. Высокая производительность и скорость работы – его главные преимущества, поэтому для реализации бизнес-задач он подходит как нельзя кстати. Go легко поддерживается и отлично годится для создания MVP, из-за чего востребованность в нём растёт.

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

Мы начинаем!

Go ⏩
Total votes 11: ↑10 and ↓1+9
Comments8

Почтовый сервер с нуля. Часть вторая

Level of difficultyMedium
Reading time27 min
Views17K

Приветствую всех читателей!

Подошло время для второй части нашей серии статей по настройке почтового сервера. Напомню, что в первой части мы рассмотрели основные моменты, касающиеся настройки почтового сервера, а также конфигурировали Exim4 для корректной отправки почты.

В этой статье мы настроим полноценный почтовый сервер. Использовать будем PostfixAdmin, Dovecot и RainLoop.

Давайте настроим!
Total votes 16: ↑13 and ↓3+12
Comments22

Настройка IMS Белтелеком на ZyXEL Keenetic VOX

Level of difficultyEasy
Reading time3 min
Views2.5K

Как-то давным давно возникла необходимость настроить роутер ZyXEL Keenetic VOX на работу с IMS, но вообще никаких руководств я на эту тему не нашел. Разобрался сам и составил в связи с этим инструкцию, которую выложил в свой технический блог.
Это произошло 9 лет назад, и эта инструкция так и осталась единственной публикацией. Чего добру пропадать, выложу её на Хабре.

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

Разработка вредоносного ПО для MacOS: инъекция и закрепление шелл-кода на конечном устройстве

Level of difficultyHard
Reading time20 min
Views4.4K

Мы продолжаем тему о проектировании и разработке вредоносного ПО для macOS. Первую часть публикации вы можете прочитать здесь. 

В этой статье мы:

- Изучим методики инъецирования кода и то, как он применяется в вредоносном ПО;

- Затронем способы обеспечения постоянства хранения;

- В конце мы покажем простой процесс инъецирования шелл-кода и его постоянного хранения. 

Читать далее
Total votes 20: ↑20 and ↓0+24
Comments1

Разработка вредоносного ПО для MacOS: создание заготовки

Level of difficultyMedium
Reading time18 min
Views5K

В этой статье мы погрузимся в мир проектирования и разработки вредоносного ПО для macOS, которая по сути является операционной системой на основе Unix. При исследовании внутренностей системы Apple мы воспользуемся классическим подходом с опорой на базовые знания эксплойтов, программирования на C и Python, а также знакомство с низкоуровневым языком ассемблера. Хотя представленные в статье темы могут быть сложными, я постараюсь изложить их понятным языком.

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

Privacy Manifest: что нужно о нём знать для внедрения в проект

Level of difficultyMedium
Reading time11 min
Views8.1K

На работе я столкнулся с задачей внедрения Privacy Manifest в проект. Изучение вопроса началось с прочтения документации Apple, а продолжилось просмотром WWDC-сессии на тему конфиденциальности. После внедрения оказалось, что для корректной работы над задачей нужно изучить больше информации. Поэтому я решил поделиться опытом в формате инструкции. Покажу, как внедрять Privacy Manifest на примере вымышленного проекта, и дам практические советы по внедрению манифеста конфиденциальности.

Читать далее
Total votes 16: ↑15 and ↓1+19
Comments12

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 7

Level of difficultyEasy
Reading time7 min
Views4.4K

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


Сегодня мы рассмотрим следующие аспекты:

  • к чему приводят распространённые ошибки с элементом <label>;
  • лучший лайфхак с inputmode="numeric" улучшающий мою жизнь;
  • как пользователи скринридера понимают, что модальное окно открыто.

Давайте начнём!

Читать дальше →
Total votes 42: ↑42 and ↓0+43
Comments15

Где продать стартап?

Level of difficultyEasy
Reading time3 min
Views2.4K

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

Читать далее
Total votes 7: ↑6 and ↓1+6
Comments5

Структурированное логирование в Go с помощью Slog

Reading time22 min
Views18K

Более 10 лет разработчики на Go жаловались на отсутствие структурированного логирования в ядре Golang. Участники сообщества Golang даже создали несколько собственных пакетов, таких как Logrus, Zap и Zerolog. В 2023 году, команда разработчиков Google Go наконец-то представила Slog — высокопроизводительный пакет для структурированного ведения логов в стандартной библиотеке Go. Мы перевели гайд о возможностях slog.

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments5

SwiftUI уроки (часть 2)

Reading time12 min
Views3.7K

Если вы уже ознакомились с первой частью, то у вас есть базовое понимание что из себя представляет SUI и знаете как отобразить текстовый контент, в этой части давайте познакомимся с элементом отображающим изображения.

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

Часы на синусах и косинусах в CSS

Level of difficultyEasy
Reading time7 min
Views8.1K

В этой статье осторожно прикоснёмся к sin() и cos(). Есть и другие функции, в том числе tan(), зачем же останавливаться только на синусе и косинусе? Они идеальны для размещения текста по краю круга. Об этом уже рассказывалось на CSS-Tricks, когда Крис поделился подходом к размещению текста по кругу с миксинами Sass. Это было шесть лет назад [оригинал опубликован 8 марта 2023 года], поэтому поработаем с размещением чисел по-новому.


Вот о чём я говорю:


Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments8
1
23 ...

Information

Rating
Does not participate
Registered
Activity