Обновить
151.69

Разработка мобильных приложений *

Android, iOS, Windows Phone и прочие

Сначала показывать
Порог рейтинга

Я исследовал тему связности и связанности в построении кода и вот к чему пришел:

Не существует плохих\хороших\идеальных связности и связанности кода.

Мне кажется проблема и решение глубже - сколько людей столько и вариантов осмысления и построения "модели", столько вариантов же coupling & cohesion. У каждого что-то свое.

Строить приложение от архитектуры - такое себе. Архитектура для приложения, а не приложение для архитектуры. Тогда архитектура будет основана на реальных задачах а не на поиске идеала.

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

Ведь суть всего этого моделирования чтобы "на понятном" объяснить железу что и когда нужно сделать.

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

Ну и когда я говорю ООП, это не значит что я буду писать абстракцию на каждый чих, влоть до Int, Long и т.п., нет, это значит что я начну с самых больших MyApp { UserClient, ServerClient, DeviceClient } и законтачу их между собой логикой приложения, а там дальше буду создавать абстракции по необходимости, если будет удобно и полезно что-то добавить и переиспользовать то я добавлю и переиспользую (вот кстати хороший критерий - моделировать сущность когда надо что-то передавать между главными абсракциями(надсистемами)).

ООП рулит :)

P.S. И не надо стремиться к идеалу, иначе тут можно скатиться в подмену задач, и начать делать не данное конкретное приложение, а предложенный кем-то идеал архитектуры.

Теги:
Всего голосов 3: ↑1 и ↓2-1
Комментарии9

Под капотом FinamTrade: как работает покупка акций, разработка под санкциями и будущее AI в финтехе

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

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

У нас в гостях Борис Аксенов, руководитель управления разработки веб и мобильных приложений в «Финаме». Человек, который стоит у руля создания и эволюции FinamTrade последние 15 лет. Мы поговорили о том, о чем обычные пользователи часто не задумываются, нажимая кнопку «Купить».

О чём этот выпуск:

  • Архитектура и нагрузка: Что происходит на бэкенде, в мобильном клиенте и на бирже в момент, когда вы и еще 10 000 человек одновременно отправляете заявку?

  • Эволюция: Как приложение FinamTrade превращалось из простого терминала в суперапп с новостями, аналитикой и обучением? Какие технологические решения были ключевыми на этом пути?

  • Боль и санкции: Самая острая тема — как изменились процессы разработки и публикации в App Store и Google Play для такого критически важного приложения в текущих реалиях? Какие инструменты и воркaунды пришли на смену привычным сервисам?

  • Безопасность: Как защищаются финансовые данные и средства клиентов в эпоху мобильных угроз?

  • AI и ML: Где машинное обучение и искуственный интеллект уже работают в финтехе сегодня (например, в предиктивном анализе поведения или проверке документов), а где это пока лишь хайп?

  • Карьера в финтехе: Как приходят в разработку для таких высоконагруженных систем? Что мотивирует специалистов оставаться в одной компании больше 15 лет?

  • А еще Борис поделился парой забавных курьезных случаев из практики и мифов о финтехе, которые заставят вас улыбнуться.

Выпуск получился по-настоящему гибридным. Он будет полезен:

  1. Разработчикам и архитекторам, особенно тем, кто работает или хочет работать с высоконагруженными и отказоустойчивыми системами.

  2. Специалистам по DevOps и безопасности, чтобы понять уровень требований в fintech.

  3. Всем, кто интересуется карьерой в IT — история Бориса о 15-летнем пути в одной компании очень мотивирует и показывает возможный вектор роста.

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

Наш подкаст доступен на всех удобных платформах:

Youtube Music | Apple Podcast | Яндекс Музыка | Spotify | VK Музыка

Теги:
Рейтинг0
Комментарии0

Я размышлял про трудоустройство и наем, как нанять сотрудника в IT и как устроиться на работу в IT и вот к чему пришел :)

Я много встречал видео и статей "как пройти собеседование", "как получить работу" в IT.

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

По факту все сводится к семантике (привет Жаку Фреско) - каждый из нас говорит на своем языке, на языке своего опыта, на языке своего мышления, на языке своего локального карго-культа.

Или проще - люди не понимают друг-друга и только строят свои догадки относительно друг-друга.

И чтобы лучше понимать соискателя на старте - эйчары учат соискателей разговаривать на "своём" языке, на понятном для них.

О чем это говорит? О том что эйчары в заведомо выгодной позиции и диктуют условия общения. О том что эйчары не стремятся понять соискателя, найти с ним общий язык в диалоге. О том что эйчары стремятся к тому чтобы все говорили на их языке и правильно отвечали на вопрос "Расскажите о себе". Кстати, а как правильно то?) (Не все, многие)

С другой стороны, соискатели, технари, айтишники - тоже люди :)

И они так же хотят общаться привычным им способом. Они не стремятся понять нанимателя, найти с ним общий язык в диалоге. Соискатели стремятся к тому чтобы все говорили на их языке и задавали адекватные поставленным задачам вопросы, а не "расскажите о себе", и вообще, о себе они уже рассказали в резюме)). (Не все, многие)

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

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

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

Если я например хочу делать мобильные приложения, а бизнес хочет сделать себе мобильное приложение - то мы уже матчимся, подходим друг-другу для достижения наших целей, осталось только договориться о деталях. "Ты будешь делать достойное приложение 8 часов в день, 5 дней в неделю, по нашим задачам", "А ты за проделанную работу будешь платить мне достойную зарплату и содействовать в решении любых вопросов связанных с работой"

Справедлив вопрос: "а справится ли соискатель или он на словах такой герой?"
Справедлив и обратный вопрос: "а справится ли работодатель или он на словах такой герой?"

Ответ в обоих случаях очевиден: заранее неизвестно и можно только строить предположения.

Есть 3 простых способа чтобы понять, а может ли человек делать, то что он делать хочет:

1. Посмотреть на предыдущий опыт соискателя, на портфолио проектов (так же как и на предыдущий опыт работодателя, на портфолио проектов)

2. Тестовое задание, если вдруг нет портфолио, или есть сомнения по портфолио.

3. Испытательный срок, стажировка на проекте, во время которой станет действительно понятно что из себя представляет сотрудник (за одно и онбординг и притирку пройдет на лайте)

Хм.. А какое тестовое задание и испытательный срок дать работодателю? :)

(P.S. Но не один из этих способов, так же как и любые другие, не гарантирует 100% совпадения ожиданий с результатами, потому что ожидания это больше про вымысел, а результаты достигаются систематическими действиями с целью этих результатов достичь, и делают эти действия реальные люди со всеми их достоинствами и недостатками, а не идеальные кандидаты)

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии1

2ГИС на Apple Watch

Год назад мы масштабно обновили приложение для 2ГИС на Apple Watch: начали показывать на часах местоположение близких в рамках функции «Друзья на карте» и поддерживать ведение по пешему маршруту. К очередной презентации Apple решили добавить ещё полезностей. 

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

Об интересных моментах реализации рассказывает разработчик Иван Гнатюк.

Маленький экран — большие задачи

Сделать маршрут общественного транспорта на часах оказалось не так уж сложно — помогли два момента: 

  • Во-первых, у нас уже было приложение на watchOS 10+, где работало пешее ведение и была настроена коммуникация телефон ← → часы.

  • Во-вторых, мы раньше делали отображение маршрута транспорта для Live Activity на телефоне, и смогли переиспользовать много вьюшек и бизнес-логики (а она бывает непростой).

Оставалось только собрать из уже имеющихся блоков новое отображение для часов, что мы и сделали довольно быстро. Потом мы подумали, а почему бы не сделать и новое LA для общественного транспорта на часах? Текущее отображение от Dynamic Island с телефона выглядело скучно.

Сложность в том, что мы ограничены размерами часов, причём размеры варьируются 40– 49 мм. Скролл мы здесь добавить не можем, поэтому нужно попытаться уместить весь маршрут со всеми его сегментами на маленьком экранчике, попытавшись сохранить максимум полезной информации (номер маршрута, номер выхода из метро).

На помощь пришел GeometryReader — он даёт ширину контейнера, и, зная количество и тип сегментов, мы рисуем маршрут. Если пересадок на маршруте шесть и больше, то оставляем те, что помещаются, а вместо последнего покажем «....». Но на бою нам не удалось построить такой маршрут. Если вам удастся — расскажите нам!

Разработка на настоящих часах — интересно, но непредсказуемо

Разрабатывать и собирать на настоящих часах всегда интереснее. Но с этим могут быть свои приключения. 

  • Например, часы могут «отваливаться». Xcode к ним не подключается и приходится постоянно проверять настройки часов и подключение к WiFi. 

  • Иногда таргет часов ни в какую не хочет устанавливаться на часы — помогает только их перезагрузка.

  • А в какой то момент на часах перестал отображаться и новый LA, и простая трансляция DI. Перезагружали и часы, и телефон — ничего не помогало. Оказалось, что в какой то момент телефон обновился, а часы нет. Вот так и сломалось.

Как работает для пользователя

Для того чтобы видеть основные этапы маршрута, нужно построить маршрут на общественном транспорте в приложении на смартфоне и нажать «В путь», а на часах открыть приложение 2ГИС. В пути достаточно посматривать на часы — приложение покажет ключевую информацию с помощью Live Activities: иконки транспорта с цветом ветки метро, номер выхода, время в пути и пересадки, если они предусмотрены. Чтобы просмотреть весь маршрут, достаточно тапнуть на Live Activities и прокрутить Digital Crown.

Всё будет работать на Apple Watch с watchOS 11, iPhone с iOS 18 и в приложении 2ГИС версии 7.11 или новее. На часы отдельно ничего ставить не нужно — всё подтянется из приложения на айфоне.

Теги:
Всего голосов 7: ↑6 и ↓1+5
Комментарии0

Первая в России конференция про ускорение разработки с помощью ИИ

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

>> Программа и регистрация <<

3 октября в Москве, в ДК «Рассвет» пройдет первая в России конференция про реальное ускорение с помощью AI. Без шаманства, без магии, без обещаний в стиле «сейчас покажу вам пару промтов в ChatGPT». Мы пригласили только тех, кто уже готов делиться конкретикой и новыми подходами в разработке с ИИ — экспертов от Яндекса, Альфа-Банка, Т-Банка и других лидеров рынка.

О чем расскажут на конференции:

  • Евгений Сатуров, CTO Mobile Surf — как мы выстроили AI-boosted Delivery Platform и сделали процессы в 5 раз быстрее классического SDLC. Поговорим и про цифры: чем измерять ускорение разработки и как оценивать ROI в AI-инструменты.

  • Доклады от крупных компаний: Александр Поломодов из Т-Банка, Святослав Соловьев из Альфа-Банка, Александр Толмачев (ex-Ozon Fintech) и другие мощные спикеры поделятся, как у них выстроены процессы AI-разработки. Обсудим, какие инструменты прижились, каких результатов с их помощью добились компании и как строили архитектуру проектов.

  • Дискуссии AI vs. Security vs Эффективность: поговорим с экспертами от Positive Technologies, Ozon Fintech и Сбера о том, как обезопасить код и данные при тотальной автоматизации, где прячутся уязвимости AI-решений и как жить с Концепцией регулирования ИИ-2030. И ответим на вопрос — насколько ИИ влияет на скорость команд, метрики и ROI.

  • Научная основа: Альбина Галлямова, научный сотрудник НИУ ВШЭ и автор проекта «Зачем мы такие?», разберет правду и мифы о возможностях искусственного интеллекта. Узнаем, как взаимодействие с LLM влияет на когнитивные способности человека.

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

Кому будет полезно?

Ждём всех, кому интересна тема ускорения разработки с помощью ИИ:

  • C-level и руководителей разработки — чтобы строить полноценный AI-конвейер.

  • Тимлиды и heads of dev — чтобы ускорять delivery, а не тормозить.

  • Разработчики — чтобы перестать тратить дни на задачи, которые уже автоматизируются.

  • PM и продакты — чтобы адекватно планировать сроки и ресурсы в AI-проектах.

Формат и участие

Конференция пройдет 3 октября (пятница) в Москве, локация — ДК Рассвет. Начало в 12:00. Вас ждет 9 часов контента, нетворкинга и новых идей для своих проектов. А еще — бесплатные консультации с CTO Surf по внедрению ИИ-процессов в вашем бизнесе.

Для участия регистрируйтесь по ссылке. Там же вы найдете программу и другие подробности.

До встречи ;) 

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии7

2ГИС зовёт на хакатон: https://hackathon.2gis.ru

4–5 октября, офлайн, Москва. Два дня, чтобы общаться, фигачить, вдохновляться и повлиять на городские сервисы!

Три трека: городские данные с ЦОДД, инклюзия с фондами «Антон тут рядом», «Продвижение», «ЛизаАлерт» и носимые устройства — часы, браслеты, AR и другие гаджеты. Будут онлайн-встречи, чтобы больше узнать про реальные задачи.

Призовой фонд: 1 000 000 рублей и шанс, что проект попадёт прямо в 2ГИС🔥

Регистрироваться можно с командой от 3 до 6 человек или самостоятельно — поможем найти команду в чате!

Теги:
Рейтинг0
Комментарии0

Я визионер, при этом занимался разработкой мобильных приложений 12 лет как технарь и вот что я выяснил для себя:

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

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

Я, например, научился разработке делая свою игру.

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

Тем кто визионер как и я могу дать совет:

Не тратьте 10 лет жизни на программирование, идите сразу в ту сторону ради чего вы это программирование осваиваете, скорее всего это будет создание своих продуктов которые можно показать и потрогать, в создание продукта, в творчество, в креатив.

Иначе будете биться об стену на "не своей" работе и периодически сильно выгорать, как это было со мной и некоторыми моими коллегами.

Либо ищите в работе возможности заниматься любимым делом, тем что вас заряжает больше чем тем что выматывает (ну как на любой работе впрочем :) )

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

Рутинное долгокопание без понятного результата угнетает и забирает силы.

Долгокопание в разработке периодически возникает - это неизбежно.

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

Ну и обратите внимание на "что" и "для чего", а не на "как". Т.е. подумайте о том что вы делает и зачем, прежде чем начнете учиться и разбираться как это сделать.

Следуя этим рекомендациям, быть может, вы станете чуточку счастливее занимаясь выбранным делом.

P.S. Для тех кому откликается:

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

И как следствие: у тебя получится делать всё за что ты возьмешься, но это не значит что тебе всё это нужно делать, тем более самому.

Этот комментарий может сэкономить тебе 10-к лет жизни, или нет :)

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

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

Недавно Google анонсировала, что скоро смартфоны на базе Android будут работать только с приложениями, чьи разработчики подтвердили свою личность непосредственно Google. Но как это будут проверять? Напрашивается проверка по ключам подписи, но погодите-ка…

Если вы более-менее интересуетесь опенсорсом, наверняка вы слышали про “магазин” F-Droid. Что примечательно в нём — все приложения в его главном (единственном по умолчанию) репозитории собираются из исходников и подписываются одной сущностью — F-Droid. Эта особенность делает данный источник приложений уникальным в своём роде — в Google Play или RuStore каждый разработчик собирает и подписывает приложение сам.

Если Google не передумает и действительно введёт блокировку на “анонимных” разработчиков, вполне возможно, что F-Droid просто создаст единый аккаунт для своего ключа подписи, и продолжит спокойно предоставлять приложения даже на “сертифицированных” Android-девайсах.

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

Что думаете?

Теги:
Всего голосов 4: ↑4 и ↓0+7
Комментарии5

App Clip в деле: сделали расписание транспорта без установки приложения и лишних мегабайт

В 2ГИС мы любим эксперименты с технологиями. Когда Apple представила App Clips — мини-версии iOS-приложений, — мы начали думать, что ж сделать такое полезное, быстрое и удобное. Появилась идея: а что если показать расписание транспорта прямо на остановке, без установки приложения? Идеально для ситуации, когда нужно получить информацию в моменте.

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

Реализация: просто, но есть нюансы

У нас была цель — запустить всё быстро и без лишней сложности. Поэтому мы пошли по самому простому пути. Однако не обошлось без сюпризов: мы столкнулись с интересной особенностью сборки и дистрибуции через App Store.

Когда собирается билд, бинарь App Clip попадает в общий application bundle — вместе с ресурсами, ассетами и иконками. Мы переживали, что это увеличит размер основного приложения для пользователей.

Однако на этапе загрузки в App Store Connect происходит app thinning (slicing) — бинарь анализируется и оптимизируется на стороне App Store. Получается, что из финальной сборки, доступной пользователю, App Clip удаляется. В результате конечный IPA, который скачивает пользователь, не увеличивается в размере, несмотря на то, что в исходном проекте ресурсы App Clip действительно включены в общий bundle.

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

  1. Собрали билд, в котором бинарь App Clip действительно оказался в общем application bundle.

  2. Загрузили его в App Store Connect.

  3. После релиза скачали IPA напрямую из App Store и проанализировали содержимое.

Результат: в финальном бинаре bundle App Clip отсутствует. Пользователи получают приложение без дополнительного груза, а размер основного приложения не растёт. К слову, в официальной документации Apple этот момент описан довольно туманно, так что мы решили проверить всё на себе.

App Clips считаются не самой популярной фичей, но всё же было интересно покопаться, собрать, выкатить и посмотреть, как это работает в реальности.

Если вы пробовали App Clips — расскажите про свой опыт! Может, нашли нестандартные подходы или столкнулись с подводными камнями, о которых стоит знать другим?

Теги:
Всего голосов 7: ↑7 и ↓0+9
Комментарии0

Cursor теперь помогает составлять User Rules

В Cursor буквально сегодня увидел новую опцию. А именно: когда с ним работаешь по проекту и по ходу как-то его поправляешь, то внизу слева выскакивает пимпочка и предлагает занести такие вещи в User Rules.

Очень даже удобно. Не надо самому отдельно все записывать, а потом переносить.

Теги:
Всего голосов 3: ↑1 и ↓2-1
Комментарии0

Список инструментов low-code/no-code разработки и вайбкодинга для диплома

Всем привет. Я учусь в магистратуре ИТ-юрист и планирую писать диплом с рабочей темой "Правовые основы low-code/no-code разработки и вайбкодинга". Прошу накидать инструментов для анализа )

Основная цель работы простым языком - понять, если я разрабатываю продукт с использованием сервисов low-code/no-code (или ИИ-агентов в случае вайбкодинга), могу ли я его считать полностью своим или нет.

С правовой точки зрения задачи работы понятны - я буду анализировать лицензии, смотреть, как сервисы передают исключительные права пользователям, как обстоит ситуация с персональными данными в случае, если сервис иностранный.

Теперь передо мной стоит задача подготовить список подобных сервисов для дальнейшего анализа. Я сделала небольшую подборку и буду очень благодарна, если вы мне в комментариях подскажете еще подобные популярные платформы, которые позволяют вести разработку при отсутствии навыков программирования/либо минимальных навыках. Есть ли что-то подобное для разработки видеоигр?

  • Разработка сайтов: tilda, wix, carrd, Collabza (личные кабинеты), Webflow, Craftum, Flexbe, Creatium, LPgenerator

  • Автоматизация бизнес-процессов: битрикс24 (роботы), NBT, BPMSoft, ROBIN (российские решения), zapier, albato, Бипиум, Nodul, APInita

  • Разработка приложений: bubble, glide, appmaster, adalo, appsfera, Stacker, QuintaDB, Directual, Bravo Studio, Thunkable, Voiceflow

  • Вайб-кодинг: Cursor, Windsurf, Replit, Devin, Claude Code, Cline, GigaStudio (рус)

Теги:
Всего голосов 4: ↑2 и ↓2+2
Комментарии2

Обновляем список актуальных вакансий в SSP SOFT

Напомним, кто мы: компания SSP SOFT занимается заказной разработкой и IT-аутсорсингом. Наши спецы помогают внешним клиентам реализовывать задачи в e-commerce, финтехе, медтехе, управлении инфраструктурой и других отраслях.

Рабочие места в офисах в Москве (отличная локация в ЦАО) и в Томске, а также у нас много сотрудников, которые работают удаленно из разных регионов России. Формат «онлайн» или «оффлайн» обсуждаем.

📢 Кого мы сейчас приглашаем (это описание вакансий в hh, а ниже прямые контакты с нашим HR для быстрого отклика):

1️⃣ Разработчика и аналитика 1C
2️⃣ Разработчика Angular
3️⃣ Middle Java Developer
4️⃣ Системного аналитика
5️⃣ Бизнес-аналитика

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

🎁 Наши бонусы: ДМС со стоматологией, обучение за счет компании, бонусная программа.

👉 В SSP SOFT мы рассматриваем найм не как «закрытие вакансии», а как включение нового человека в команду — с вниманием к развитию и прицелом на долгосрочную совместную работу.

Пишите с резюме нашему HR в Telegram: @sspsoft
Или присылайте резюме на почту: job@ssp-soft.com.

Всегда актуальные вакансии на https://hh.ru/employer/5648224:

📍 Мы открыты к диалогу и ценим честные и профессиональные резюме (без накруток опыта).

Теги:
Всего голосов 4: ↑3 и ↓1+3
Комментарии0

мои способы работы с AI контекстом (субъективное мнение):

  1. пользоваться общеизвестными терминами которые точно есть в словарях

  2. пользоваться только английским для кода, prd и дизайна

  3. сокращать код - как показывает практика файлы больше 500-600 строк агенту труднее прочитать. Тут есть несколько стратегий:

  • пользоваться препроцессорами, например можно сильно срезать времени если вместо JSX/TSX/html использовать pug

  • пользоваться и писать библиотеки. есть проблема - оформляем в абстрактную библиотеку, пишем доку и readme

  • предвидеть контекст - часть текста просто можно не писать, а просить догенерить, потому что получится эффект снежного кома, начинаем катить, смотрим куда катится - сокращаем

  1. меняем JSON на YAML или что-то близкое - это срежет кууучу лишнего хлама в виде ; }{ "" и прочих символов

  2. генерим code maps - mermaid и другие виды диаграм

  3. ANSII - визуализация простых идей, но не все модели хорошо работают с этим форматом, есть проблемы с layout. например я пользуюсь gemini

  4. подстраивать архитектуру и код под задачи и бизнес, не наоборот. Developer | Designer | AI as User.

  5. разбивать на мелкие подприложения если нужно

Надеюсь, что пост окажется полезным :-)

Пожалуйста делитесь своими мыслями в комментариях :-) это поможет сделать эту статью видимой для других и будет здоровской поддержкой и мотивацией :-) 

Спасибо за ваше время и хорошего дня!

Теги:
Всего голосов 6: ↑2 и ↓4-2
Комментарии0

Ближайшие события

мои способы работы с AI контекстом (субъективное мнение):

  1. пользоваться общеизвестными терминами которые точно есть в словарях

  2. пользоваться только английским для кода, prd и дизайна

  3. сокращать код - как показывает практика файлы больше 500-600 строк агенту труднее прочитать. Тут есть несколько стратегий:

  • пользоваться препроцессорами, например можно сильно срезать времени если вместо JSX/TSX/html использовать pug

  • пользоваться и писать библиотеки. есть проблема - оформляем в абстрактную библиотеку, пишем доку и readme

  • предвидеть контекст - часть текста просто можно не писать, а просить догенерить, потому что получится эффект снежного кома, начинаем катить, смотрим куда катится - сокращаем

  1. меняем JSON на YAML или что-то близкое - это срежет кууучу лишнего хлама в виде ; }{ "" и прочих символов

  2. генерим code maps - mermaid и другие виды диаграм

  3. ANSII - визуализация простых идей, но не модели хорошо работают с этим форматом, есть проблемы с layout

  4. подстраивать архитектуру и код под задачи и бизнес, не наоборот. Developer | Designer | AI as User.

  5. разбивать на мелкие подприложения если нужно

Надеюсь, что пост окажется полезным :-)

Пожалуйста делитесь своими мыслями в комментариях :-) это поможет сделать эту статью видимой для других и будет здоровской поддержкой и мотивацией :-) 

Спасибо за ваше время и хорошего дня!

Теги:
Всего голосов 5: ↑2 и ↓3-1
Комментарии0

Мне надоели платные приложения для учета расходов, поэтому я сделал свое: бесплатное и с открытым исходным кодом.

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

Я перепробовал десятки решений, но в каждом находил какие-то ограничения. Где-то были платные подписки или ограниченный функционал, где-то требовалась регистрация и данные о моих расходах улетали на сервера (зачем?), а где-то приложение просто не подходило мне по функционалу. В итоге я решил уйти от готовых приложений к учету в таблицах Excel. Но такой подход тоже был неудобным, и я понял, что пора создать свое собственное приложение: приватное, бесплатное и, самое главное, открытое.

В общем, так появилось Profitocracy - бесплатное Open Source мобильное приложение, написанное на .NET MAUI. Его главная цель — помочь пользователям организовать учет личных расходов по популярному правилу 50-30-20, а также обеспечить конфиденциальность данных. Profitocracy хранит всю информацию локально на вашем устройстве. Приложение не передает никакие данные третьим лицам и полностью свободно от рекламы и монетизации.

Среди основных особенностей приложения я хотел бы выделить:

  • Автоматическое планирование бюджета. Вы указываете дату окончания периода (получение зарплаты, например), и приложение расчитает для вас ежедневные расходы, расходы по типам (по правилу 50-30-20), а также по категориям (которые вы можете создать сами).

  • Индивидуальная настройка. Вы можете создавать собственные профили расходов: для личных нужд, на время отпуска или поездку в командировку. Причем столько сколько вам потребуется.

  • Приватность. Все данные - на вашем устройстве и только. Также, имеется возможность создания бэкапов (выгрузка данных в файл) для переноса данных на другое устройство.

  • Открытый исходный код. Исходный код проекта выложен на GitHub (ссылка на репозиторий). Каждый может внести свой вклад, предложить новый функционал или изучить как работает приложение.

  • Кроссплатформенность. Приложение доступно как для Android, так и для iOS.

  • Перевод на несколько языков. Profitocracy поддерживает русский, английский и другие языки.

На момент написания поста проект завоевал небольшой, но значимый отклик в сообществе разработчиков:

  • 100+ звезд на GitHub;

  • 20+ форков;

  • 3 активных контрибьютора. Причем, это не мои друзья :)

Ссылки на скачивание:

Буду рад вашим отзывам, предложениям и комментариям как на GitHub, так и здесь. Надеюсь, Profitocracy поможет вам так же, как оно помогло мне!

Теги:
Всего голосов 9: ↑9 и ↓0+14
Комментарии2

В SSP SOFT открыты новые вакансии в ИТ-команды: ищем мидлов, сеньоров и лидов

Мы в SSP SOFT — команда, которая занимается заказной разработкой и активно ведет проекты по модели ИТ-аутсорсинга. Наши специалисты помогают внешним клиентам реализовывать задачи в e-commerce, финтехе, медтехе, управлении инфраструктурой и других отраслях.

Во 2-м полугодии 2025 года мы усиливаем несколько ключевых направлений. Если вы уверенно чувствуете себя как профи, цените системный подход и хотите работать в зрелой команде — присоединяйтесь.

Актуальные вакансии на https://hh.ru/employer/5648224, а прямая ссылка на контакт с нашим HR отделом ниже:

Аналитика и системный анализ
• Аналитик DWH
• Аналитик 1С (Регламентированный учет)
• Бизнес-аналитик (Промтех)
• Системный аналитик (ИБ)

Разработка
• Lead Python Developer
• Android-разработчик (Senior)
• Fullstack-разработчик (C#, React)
• Разработчик 1С (ЗУП)
• Разработчик Angular
• Разработчик MS SQL
• Data Engineer

Тестирование и поддержка
• Automation QA Engineer
• Automation QA Engineer (Python)
• Automation QA Engineer (Java)
• ITSM-инженер

Как мы подходим к найму:

В SSP SOFT мы рассматриваем найм не как «закрытие вакансии», а как включение нового человека в команду — с вниманием к развитию и прицелом на долгосрочную совместную работу.

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

🧭 Как устроен процесс найма и адаптации:

1️⃣ Собеседование с HR и руководителем направления,
2️⃣ Техническое интервью с нашими экспертами,
3️⃣ Индивидуальный план онбординга — с учетом ваших сильных сторон,
4️⃣ Испытательный срок — с поддержкой наставника,
5️⃣ Подключение к серьезным задачам — когда вы полностью готовы.

Пишите нашему HR в Telegram: @sspsoft
Или присылайте резюме на почту: job@ssp-soft.com.

📍 Мы открыты к диалогу и ценим честные и профессиональные резюме (без накруток опыта) с вами как потенциальными коллегами.

Теги:
Всего голосов 5: ↑4 и ↓1+4
Комментарии0

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

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии3

Есть среди нас программисты?

Можете обновить модификацию Telegram: MDGram?

Мод очень полезный в плане дизайна, разработчики забросили дальнейшие обновления. Буду очень благодарен

Теги:
Всего голосов 3: ↑0 и ↓3-3
Комментарии1

Как ускорить Android-разработку и избавиться от мучительно долгих запусков эмуляторов ради простого теста? 

Ответ — Robolectric — мощный инструмент для UI‑тестирования Android‑кода без эмулятора. 

Позволяет запускать юнит-тесты Android-приложений прямо в JVM, без эмуляторов и физических устройств. Экономия на каждом тестовом прогоне, обратная связь почти мгновенная.

В Android‑комьюнити у Robolectric неоднозначная репутация из‑за трудностей совместимости с другими библиотеками. Но…его почти бесценные возможности пробудили любопытство и желание копнуть глубже и осмыслить этот инструмент. 

Так и родилась статья «Мечтают ли андроиды о Robolectric? Разбираем фреймворк по косточкам» от Павла Нестеренко, нашего Android-разработчика.

Если вы устали ждать, пока эмулятор запустится, и хотите гонять юнит-тесты за секунды прямо в JVM, то рекомендуем статью к прочтению!

Теги:
Рейтинг0
Комментарии0

⚡️Вести с полей - Duit

Новый релиз - flutter_duit v3.6.0!

Что внутри:

⚙️ Новые виджеты: Offstage, AbsorbPointer, AnimatedCrossFade, AnimatedSlide, PhysicalModel, AnimatedPhysicalModel, CustomScrollView, SliverPadding, SliverFillRemaining, SliverToBoxAdapter, SliverFillViewport, SliverOpacity, SliverVisibility, SliverAnimatedOpacity, SliverSafeArea, SliverOffstage, SliverIgnorePointer, SliverList, SliverAppBar, FlexibleSpaceBar and SliverGrid (+21)

⚙️ Улучшен механизм передачи текущих значений анимации дочерним виджетам AnimatedBuilder

⚙️ Исправлен баг сепаратора в виджете ListView.separated, который не уничтожался правильно

⚙️ Значительно улучшено покрытие юнит-тестами критических участков кода (с 27% до 64%)

📖 Обновленная документация

Подробности о самом интересном:

⚡️Самое большое обновление виджетов! В этом важном релизе были добавлены сливеры - важная часть Flutter, без которой зачастую сложно реализовать высокоэффективные эффекты скролла.

🚀 Duit v4: производительность и простота. Анонсирую начало масштабных работ над мажорным обновлением проекта. Упрощение кодовой базы, решение проблем производительности, переосмысление дизайна DSL и надежная валидация входящих параметров - это лишь малая часть грядущего большого обновления!

Поддержать проект:
Кодом
Денежкой
TG канал DUIT

Теги:
Рейтинг0
Комментарии0