Pull to refresh
1
0.1
Radik Gismatullin @xget

AQA

Send message

Искусственный интеллект для игры Точки

Level of difficultyEasy
Reading time6 min
Views5.2K

Кратко о правилах: игроки поочерёдно ставят точки двух цветов в перекрестия линий. Цель — окружить точки соперника замыканием вокруг них непрерывной цепи своих точек.

Читать далее
Total votes 30: ↑29 and ↓1+28
Comments22

Где бесплатно изучать Rust в 2024

Level of difficultyEasy
Reading time6 min
Views25K

В 2024 году Rust остается одним из наиболее востребованных и перспективных языков программирования. Вот несколько причин, почему учить Rust может быть полезно:

1. Безопасность: Rust разработан с упором на безопасность, предотвращая многие типичные ошибки программирования, такие как доступ к памяти после ее освобождения или гонки данных. Это особенно важно для разработки критически важных систем, таких как операционные системы или встраиваемые приложения.

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

3. Многопоточность: Rust предоставляет удобные инструменты для разработки многопоточных приложений. Он предлагает безопасные абстракции для работы с потоками и предотвращает гонки данных, что облегчает разработку параллельных программ.

4. Кроссплатформенность: Rust поддерживает различные платформы, включая Windows, Linux, macOS и другие. Это позволяет разрабатывать приложения, которые могут работать на разных операционных системах без необходимости переписывать код.

5. Растущее сообщество: Rust имеет активное и одно из самых быстрорастущих сообщество разработчиков. Это означает, что всегда есть доступ к обновленным библиотекам, учебным материалам и помощи от опытных разработчиков.

6. Востребованность на рынке труда: Rust становится все более популярным среди работодателей, особенно в области разработки системного и встраиваемого программного обеспечения. Умение программировать на Rust может открыть двери к новым возможностям и повысить вашу конкурентоспособность на рынке труда.

Читать далее
Total votes 33: ↑22 and ↓11+11
Comments43

Что можно улучшить в своем приложении? Крадем как художники у Яндекс.Еды

Level of difficultyEasy
Reading time4 min
Views3.2K

Статья для тех, кто делает приложения для себя или заказчика. Особенно если вы из horeca.

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

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

Kotlin под капотом: нюансы использования аннотаций

Level of difficultyEasy
Reading time3 min
Views6.2K

Котлин очень лаконичный язык, но когда его код компилируется в Java bytecode, то изящные  конструкции kotlin распадаются на развесистые и монструозные конструкции Java. При этом применение аннотаций может сыграть с вами злую шутку.  

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

Личный домашний VPN на основе Raspberry (Shadowsocks) (для самых маленьких)

Level of difficultyEasy
Reading time7 min
Views36K

Настраиваем свой маленький, домашний и ламповый VPN на основе Shadowsocks (Outline). Нужен Raspberry и настраиваемый wi-fi-роутер. Пошаговая инструкция. Без абонентской платы и аренды VPS.

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

До этого блокировали пока что только коммерческие сервисы VPN. Пока под раздачу попадают протоколы WireGuard и OpenVPN (август 2023) (ссылка на СМИ, выполняющее функции иноагента). Первый очень популярен своей легкостью и быстродействием, быстрой настройкой. К сожалению, у такого трафика на лбу написано «Я — VPN соединение”. Второй протокол уже довольно старый и популярный, но тоже довольно легко обнаруживается РКН. На сегодня РКН только тренируется с блокировками, но похоже, что Shadowsocks пока работает без перебоев. Тем не менее, "эксперты «Роскомсвободы»* также предполагают, что следующим шагом властей может стать блокировка Shadowsocks, нестандартного протокола, созданного для обхода Великого китайского файрволла, и подобных ему инструментов” (ссылка на сайт некоммерческой организации выполняющей функции иностранного агента). Пока до этого протокола еще не добрались, на основе него, а точнее Outline, использующий технологию Shadowsocks, и настроим свой VPN-сервер.

*некоммерческая организация выполняющая функции иностранного агента

Читать далее
Total votes 43: ↑39 and ↓4+35
Comments34

Особенности проксирования через CDN/Websocket/gRPC для обхода блокировок

Level of difficultyMedium
Reading time15 min
Views60K

Эта статья — заключительная (наконец‑то!) из моего огромного цикла про недетектируемые инструменты для обхода блокировок. В предыдущих публикациях я упоминал, что клиенты и серверы XRay (форк V2Ray) и Sing‑box при использовании протоколов VLESS/VMess/Trojan могут работать через веб‑сокеты и gRPC, что позволяет подключаться к даже заблокированным Роскомнадзором прокси‑серверам через CDN (content delivery или content distribution network) и дает дополнительные преимущества. Сегодня мы поговорим об этом поподробнее.

Читать далее
Total votes 80: ↑78 and ↓2+76
Comments148

Дополнительные контейнеры в Kubernetes и где они обитают: от паттернов к автоматизации управления

Level of difficultyMedium
Reading time5 min
Views4.6K

Всем известно, что pod в Kubernetes может включать в себя несколько контейнеров: для Service Mesh, работы с внешним хранилищем секретов, журналирования и т. д. В итоге это множество вызывает вопросы. Правильно ли использовать столько контейнеров? Как их изолировать от пользовательских приложений? Можно ли вообще исключить дополнительные контейнеры из пользовательских релизов?

Я Максим Чудновский, занимаюсь Synapse Service Mesh в СберТехе. Расскажу, какие есть паттерны применения дополнительных контейнеров в Kubernetes, как они могут помочь в платформенной инженерии, и, самое главное, как полностью автоматизировать процесс управления жизненным циклом таких контейнеров.

Поскольку тема контейнеров довольно объёмна, в этом материале коснусь того, какие виды дополнительных «полезных» контейнеров бывают и как добавлять их в Kubernetes так, чтобы развести релизные процессы прикладных и платформенных команд. А в следующей статье поговорим, как автоматизировать управление дополнительными контейнерами и управлять кластером через политики.

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

5 примечательных IT-компаний из Мексики

Level of difficultyEasy
Reading time3 min
Views1.4K

Во всем латиноамериканском регионе именно Мексика обладает большим потенциалом для развития в сфере информационных технологий. Страна является домом для более чем 4000 компаний, связанных с этой сферой. Данный рынок оценивается более чем в 32 миллиарда долларов. За год сектор растет быстрее, чем экономика в целом, что отражает беспрецедентный спрос на услуги цифровой трансформации. При этом индустрия IT-аутсорсинга в Мексике растет на 10–15% в год. AR, VR, Cognitive AI и IoT — это отрасли с самыми высокими годовыми темпами роста. Благо, крупных заказчиков хоть отбавляй. Вспомним про одного только северного соседа. 

При этом по данным Мексиканской интернет-ассоциации 75,7% населения страны имеют доступ в глобальную паутину. Так что еще есть, куда расти. В основном интернет-пользователи сконцентрированы в мегаполисах, в сельских же регионах только 48% жителей имеют доступ ко всемирной паутине. В этой статье мы расскажем о наиболее примечательных мексиканских IT-компаниях, как о старых, так и о новых.  

 

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

Изучаем Retrofit 2

Reading time8 min
Views211K


В мире Android разработки существует множество интересных библиотек, и сегодня мы рассмотрим детище компании SquareRetrofit. Что же это за зверь такой? Retrofit (согласно официальному сайту) — типобезопасный HTTP-клиент для Android и Java. Он является незаменимым инструментом для работы с API в клиент-серверных приложениях. Каких-то лет 5 назад Android-разработчикам для работы с сетью приходилось воротить горы кода с обратными вызовами, AsyncTask'ами и прочими «низкоуровневыми» вещами. И компания Square выпустила такую замечательную библиотеку — Retrofit.

В сети Интернет мне не удалось найти внятных туториалов по второй версии бибилиотеки, поэтому сегодня мы будем разбираться с ней на примере приложения, получающего посты с bash.im
Заходи, если интересно
Total votes 19: ↑15 and ↓4+11
Comments6

Что для меня значит быть программистом

Reading time13 min
Views48K

Как-то мне написали с Хабра и сказали: Саня, хочешь написать статью про программистов?

Разумеется, я отнёсся к этому скептически. Ладно там девопсины или вайтхэты какие - почитать про них было бы интересно, но вот жизнь программиста... Я сразу вспомнил эти мемы как на КДПВ, которые на самом деле не мемы, а правда.

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

Чтобы получать 300кк/c, нужно всего лишь..
Total votes 179: ↑164 and ↓15+149
Comments71

«Моя твоя хотеть понимать», или Как говорить со всеми в IT

Level of difficultyEasy
Reading time15 min
Views5.2K

Привет! Сегодня в статье не будет ничего про наши технологии, стэки или процесс разработки, UX или дизайн.

Тем не менее статья всё равно плотно касается мира IT. Она будет полезна всем начальникам, тимлидам, руководителям проектов, которые взаимодействуют с лицами, принимающими решения у заказчика (ЛПР). Я уверен, каждый человек найдёт в ней полезное для себя. Статья позволит лучше понимать других людей и найти ответ на вопрос «Я же говорю всё ясно, почему меня не понимают?».

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

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

Пароли здорового человека (part II) и зачем вам цифровое завещание

Level of difficultyEasy
Reading time7 min
Views8.9K

Итак, в part I мы разбирали жизненный цикл homo sapiens, который уже дошел до знания, как обращаться с паролями, умеет их централизованно хранить и теперь ему надо научиться передавать это знание (точнее, менеджер паролей и цифровое завещание) потомкам на тот случай, если его догонит какой-нибудь лев-тигар. Ведь именно передача полезных знаний между поколениями позволяет социуму избегать повторения простых ошибок, например хранить мастер пароль под клавиатурой и верить новостям из телевизора.

Но в начале, надо обсудить еще один способ восстановления доступа к своим данным аутентификации, на самый крайний случай: если потеряны ВСЕ устройства с бэкапами.

Читать далее
Total votes 15: ↑13 and ↓2+11
Comments17

Публикуем Android приложения автоматически с помощью Gitlab CI

Reading time4 min
Views3.1K

Привет! Я Даша, Android-разработчик в команде онлайн кинотеатра PREMIER.

В прошлой статье я рассказывала, как мы настроили сборку проекта с помощью Gitlab CI. Дальше нужно отправить приложение в маркеты для внутреннего тестирования, а затем конечным пользователям.

Сегодня разберемся, как автоматически опубликовать приложение в Google Play, Huawei App Gallery и Firebase на примере нашего приложения онлайн-кинотеатра PREMIER. Также расскажу, как мы отправляем сборку в Nexus.

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

Исчерпывающее руководство по настройке Jenkins под iOS в 2023 году

Level of difficultyMedium
Reading time10 min
Views2.8K

На дворе 2023 год, и вот вы и ваша команда наконец решили отказаться от CI-пайплайна, которым вы пользовались, в пользу автономного Jenkins CI. Замечательно! В этой статье мы не будем разглагольствовать о плюсах и минусах использования одних CI-систем в сравнении с другими, а сразу сосредоточимся на том, как настроить полностью функциональную среду Jenkins CI для iOS.

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

Как писать хардкорные статьи, чтобы их читали

Level of difficultyEasy
Reading time8 min
Views8K

Как ни крути, хардкорные статьи — соль Хабра. Они вдохновляют, обучают, информируют, разъясняют и задают высокую планку уровня публикаций. Их пишут легенды (как по значку в профиле, так и по жизни), известные тимлиды, уверенные мидлы и круто въехавшие в тему джуны (которые порой и не джуны вовсе). Их читают не все. А ещё к ним очень страшно подступиться. Попробуем разобраться, как писать супер сложную статью, чтобы она осталась в анналах истории, Хабра и в закладках самых строгих читателей. 

Читать далее
Total votes 52: ↑51 and ↓1+50
Comments32

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

Level of difficultyEasy
Reading time11 min
Views336K

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

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

Кроме того, что этот протокол еще более устойчив к выявлению, приятным фактом будет и то, что настройка сервера XTLS-Reality гораздо проще, чем описанные ранее варианты - после предыдущих статей я получил довольно много комментариев типа "А что так сложно, нужен домен, нужны сертификаты, и куча всего" - теперь все будет гораздо проще.

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

Полезные iOS-инструменты для дебаггинга

Level of difficultyMedium
Reading time15 min
Views6.2K

Привет! Меня зовут Альберт, я занимаюсь iOS-разработкой в компании SimbirSoft! Хочу поделиться инструментами для дебаггинга iOS-приложений, которые юзаю лично сам. Любой разработчик наверняка знает, что создание высококачественного приложения требует не только написания кода. Одна из важнейших составляющих достижения успеха в этом деле — эффективная отладка. К счастью, существует множество инструментов, которые помогут быстро и эффективно диагностировать, а также устранять проблемы. В этой статье мы подробно рассмотрим нативные и сторонние инструменты, доступные для отладки iOS-приложений, как использовать эти инструменты для диагностики и устранения распространенных проблем. Если интересно, тогда ныряйте под кат.

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

Штраф в 150% от стоимости проданной квартиры: ужасы валютных нарушений, и как их избежать

Reading time11 min
Views65K

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

Читать далее
Total votes 200: ↑193 and ↓7+186
Comments173

Прикладное adb (Android Debug Bridge) для зумеров

Level of difficultyEasy
Reading time2 min
Views9.6K

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

В этой инструкции хочу рассказать о командах adb, которые использовать легче, чем делать то же самое через UI.

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

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

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

5 примечательных IT-компаний из Вьетнама

Level of difficultyEasy
Reading time3 min
Views2.1K

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

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

Читать далее
Total votes 12: ↑6 and ↓60
Comments1
1
23 ...

Information

Rating
3,329-th
Location
Казань, Татарстан, Россия
Registered
Activity

Specialization

Test Automation Engineer
Java
Kotlin