Всем привет и с наступившим новым годом!
📝 Создал видео памятку по малому бизнесу для ИП в Грузии с 1%
🟥 С 1 января 2025 изменилась форма декларации. Описывается только вариант с оборотом < 500 000 лари без уплаты НДС. Ссылка на matsne.gov.ge
Подача декларации
Подать декларацию надо до 15 числа месяца, следующего за отчетным (Пример: за август надо подать до 15 сентября)
1. Включить Грузинскую сим-карту.
2. Авторизоватся на сайте налоговой eservices.rs.ge.
3. В левом нижнем углу жмём English Version
4. Выбираем раздел Declarations
5. В левом меню Montlhly > Small Business Annual Income Declaration
6. Нажимаем кнопку New return
7. Откроется форма декларации, заполняем 15 и одну или все из 18-21 полей
— графа 15, суммарный доход нарастающим итогом с января (или месяца, когда начали платить налог)
— графа 17, ваш доход за прошлый месяц — заполнится автоматически после заполнения графы 18-21
— графа 18, сумма, полученная через кассовый аппарат
— графа 19, сумма, полученная через физический POS-терминал
— графа 20, сумма, полученная на расчетные счета в банке
— графа 21, сумма, полученная в иных формах (на Payoneer, PayPal, Wise, если они декларируются по приходу на платежные системы, бартером по договорам на крипту и т.п)
8. Жмём Next и Send
9. Оплачиваем налог. Плачу Epay.ge
🟥 В феврале 2025 года, при подаче декларации за январь, отсчет дохода с нарастающим итогом в графе 15 начинается заново — с 1 января 2025 года.
Пример #1
Пример #2
Ошибка в декларации
Если вы допустили ошибку в декларации и хотите её исправить, необходимо подать новую декларацию за тот же период. Редактировать предыдущую не требуется.
#Грузия
#МалыйБизнес
#Декларация
Видео: YouTube
💡 Channel | ✏ Chat
📝 Создал видео памятку по малому бизнесу для ИП в Грузии с 1%
Подача декларации
Подать декларацию надо до 15 числа месяца, следующего за отчетным (Пример: за август надо подать до 15 сентября)
1. Включить Грузинскую сим-карту.
2. Авторизоватся на сайте налоговой eservices.rs.ge.
3. В левом нижнем углу жмём English Version
4. Выбираем раздел Declarations
5. В левом меню Montlhly > Small Business Annual Income Declaration
6. Нажимаем кнопку New return
7. Откроется форма декларации, заполняем 15 и одну или все из 18-21 полей
— графа 15, суммарный доход нарастающим итогом с января (или месяца, когда начали платить налог)
— графа 17, ваш доход за прошлый месяц — заполнится автоматически после заполнения графы 18-21
— графа 18, сумма, полученная через кассовый аппарат
— графа 19, сумма, полученная через физический POS-терминал
— графа 20, сумма, полученная на расчетные счета в банке
— графа 21, сумма, полученная в иных формах (на Payoneer, PayPal, Wise, если они декларируются по приходу на платежные системы, бартером по договорам на крипту и т.п)
8. Жмём Next и Send
9. Оплачиваем налог. Плачу Epay.ge
Пример #1
Ведёте деятельность с января 2024.
Подаете декларацию за декабрь 2024 в январе 2025.
С января по ноябрь суммарно: 1000 лари.
Декабрь: 100 лари - получен на расчетные счет в Credo Банк
--------
графа 15 — 1100 лари (Суммарный доход с января по ноябрь + декабрь).
графа 16 - Рассчитывается автоматически. Ставка налога. (Например: 1%)
графа 20 - 100 лари
--------
графа 17 - Заполнится автоматически: 100 лари
графа 26 - Отобразится налог: 1 ларь
Пример #2
Ведёте деятельность с марта 2024.
Подаете декларацию за октябрь 2024.
С января по март: 0 лари.
С марта по сентябрь суммарно: 1000 лари.
Октябрь: 200 лари из них
- 100 лари через кассовый аппарат
- 50 лари через POS-терминал
- 30 лари полученные на расчетный счет в банке
- 20 лари через Payoneer
--------
графа 15 — 1200 лари (Суммарный доход с января по сентябрь + октябрь).
графа 16 - Рассчитывается автоматически. Ставка налога. (Например: 1%)
графа 18 - 100 лари
графа 19 - 50 лари
графа 20 - 30 лари
графа 21 - 20 лари
--------
графа 17 - Рассчитывается автоматически: 200 лари
графа 26 - Отобразится налог: 2 лари
Ошибка в декларации
Если вы допустили ошибку в декларации и хотите её исправить, необходимо подать новую декларацию за тот же период. Редактировать предыдущую не требуется.
#Грузия
#МалыйБизнес
#Декларация
Видео: YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👏2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1😁1🤣1
Please open Telegram to view this post
VIEW IN TELEGRAM
1🤣6❤1
Как устроены ленты в социальных сетях: что под капотом?
В лентах социальных сетей не все так просто, как может показаться особенно для блогеров.
Вы или я пролистываете посты, мемы и видео, но за этим стоит сложная архитектура, оптимизация, много математики и много чего.
Недавно наткнулся на отличный доклад с HighLoad++: Архитектура ленты и рекомендаций ВКонтакте
Технической части много, плотно и понять как работает лента/рекомендации, лайки, подписки, рекомендации друзей вообщем всё это и больше разбирается в видео, но 40 мин это конечно мало, но всё равно смотрится интересно.
там есть PHP и С++
#ranking
#vk
💡 Channel | ✏ Chat
В лентах социальных сетей не все так просто, как может показаться особенно для блогеров.
Вы или я пролистываете посты, мемы и видео, но за этим стоит сложная архитектура, оптимизация, много математики и много чего.
Недавно наткнулся на отличный доклад с HighLoad++: Архитектура ленты и рекомендаций ВКонтакте
Технической части много, плотно и понять как работает лента/рекомендации, лайки, подписки, рекомендации друзей вообщем всё это и больше разбирается в видео, но 40 мин это конечно мало, но всё равно смотрится интересно.
#ranking
#vk
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Архитектура ленты и рекомендаций ВКонтакте / Андрей Якушев (ВКонтакте, VK)
Приглашаем на конференцию Saint HighLoad++ 2025, которая пройдет 23 и 24 июня в Санкт-Петербурге!
Программа, подробности и билеты по ссылке: https://highload.ru/spb/2025
________
Профессиональная конференция разработчиков высоконагруженных систем Saint…
Программа, подробности и билеты по ссылке: https://highload.ru/spb/2025
________
Профессиональная конференция разработчиков высоконагруженных систем Saint…
👍3❤1
Как стать .NET разработчиком в 2025 году?
Я открыл .NET Core Roadmap на 2025 год и такой: "Чего? Это вообще реально освоить?" - Реально!
Первое и важное
Учитесь через практику, не пытайтесь объять всё сразу. Шаг за шагом.
Всё начинается с основ
Алгоритмы, структуры данных, ООП. Без них всё остальное – это просто набор инструментов.
Дальше экосистема .NET
ASP .NET Core - это обязательно. Blazor/MAUI - хотя бы по верхам глянуть что это.
Задачки со звёздочкой и это облака
Azure/AWS/GCP, Docker, Kubernetes – это уже не опция, а стандарт. Научитесь автоматизировать деплой, масштабировать сервисы, работать с данными – от PostgreSQL до Redis.
И конечно soft skills
умение донести идею и работать в команде сегодня так же важно, как кодить.
Звучит как план?🧙🏻♂️
#dotnet
#обучение
💡 Channel | ✏ Chat
Я открыл .NET Core Roadmap на 2025 год и такой: "Чего? Это вообще реально освоить?" - Реально!
Первое и важное
Учитесь через практику, не пытайтесь объять всё сразу. Шаг за шагом.
Всё начинается с основ
Алгоритмы, структуры данных, ООП. Без них всё остальное – это просто набор инструментов.
Дальше экосистема .NET
ASP .NET Core - это обязательно. Blazor/MAUI - хотя бы по верхам глянуть что это.
Задачки со звёздочкой и это облака
Azure/AWS/GCP, Docker, Kubernetes – это уже не опция, а стандарт. Научитесь автоматизировать деплой, масштабировать сервисы, работать с данными – от PostgreSQL до Redis.
И конечно soft skills
умение донести идею и работать в команде сегодня так же важно, как кодить.
Звучит как план?🧙🏻♂️
#dotnet
#обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🤓2😱1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Сокращение в Сбере
А точнее в Купере, Мегамаркете, Сберлогистике и Саамокате
Сокращения в Сбере затронули многих IT-специалистов. Это не только потеря рабочих мест, но и неопределенность для рынка труда в целом. С одной стороны, вообщем это может привести к снижению зарплат в отрасли. С другой стороны, освободившиеся специалисты могут стать ценным активом для других компаний. Как бы то ни было, ситуация так себе и непростая в начале то года.
Возможно, банк делает ставку на искусственный интеллект, машинное обучение или блокчейн, и для этих направлений требуются другие компетенции.
Как проходит процесс?
Сотрудникам Сбера, попавшим под сокращения и массовые увольнения, предлагают два основных варианта ухода:
1. Увольнения по соглашению сторон с выплатой двух-трех окладов.
2. Руководители могут получить компенсацию до шести окладов.
3. Дождаться двухмесячного уведомления об увольнении и получить лишь один оклад.
📎 Ссылки: Источник, Forbes.ru
#Сбер
💡 Channel | ✏ Chat
Сокращения в Сбере затронули многих IT-специалистов. Это не только потеря рабочих мест, но и неопределенность для рынка труда в целом. С одной стороны, вообщем это может привести к снижению зарплат в отрасли. С другой стороны, освободившиеся специалисты могут стать ценным активом для других компаний. Как бы то ни было, ситуация так себе и непростая в начале то года.
Возможно, банк делает ставку на искусственный интеллект, машинное обучение или блокчейн, и для этих направлений требуются другие компетенции.
Как проходит процесс?
Сотрудникам Сбера, попавшим под сокращения и массовые увольнения, предлагают два основных варианта ухода:
1. Увольнения по соглашению сторон с выплатой двух-трех окладов.
2. Руководители могут получить компенсацию до шести окладов.
3. Дождаться двухмесячного уведомления об увольнении и получить лишь один оклад.
📎 Ссылки: Источник, Forbes.ru
#Сбер
Please open Telegram to view this post
VIEW IN TELEGRAM
😱4❤1
Как облегчить изучение английского языка?
Все мы знаем, как важны ассоциации!
Если ассоциировать слова, Например времена в английском с эмоциями, событиями или яркими образами, процесс обучения станет намного проще и увлекательнее.
Например, все 12 времен английского языка можно связать с I break production.
Хорошей пятницы и не ломайте продакшен!
В помощь вам я сделал картинку-напоминание.
#english
💡 Channel | ✏ Chat
Все мы знаем, как важны ассоциации!
Если ассоциировать слова, Например времена в английском с эмоциями, событиями или яркими образами, процесс обучения станет намного проще и увлекательнее.
Например, все 12 времен английского языка можно связать с I break production.
Хорошей пятницы и не ломайте продакшен!
В помощь вам я сделал картинку-напоминание.
#english
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6
Почему обновления .NET — это не опция, а необходимость
Недавно вышел релиз
🟥 Уязвимости могла привести к утечке данных или выполнению кода из-за неправильного управления памятью.
Казалось бы, мелочь, но для атакующего это окно возможностей, а для компаний — потенциальный риск утраты доверия пользователей, финансовые потери и ну ночи без сна 😅
Список исправленых серьёзных уязвимостей:
CVE-2025-21171 — уязвимость в десериализации JSON, позволяющая злоумышленнику выполнить произвольный код или нарушить целостность данных.
CVE-2025-21172 — проблема с некорректной проверкой входных данных, что открывает возможность для выполнения произвольного кода.
CVE-2025-21173 — ошибка в System.Data.SqlClient и Microsoft.Data.SqlClient, способная привести к утечке конфиденциальной информации.
CVE-2025-21176 — уязвимость в механизмах сериализации, где вредоносные объекты могут использоваться для выполнения произвольного кода.
Обновление доступно здесь: Microsoft .NET Updates
P.S.: Вообщем не стоит забивать и забывать про безопасность и безопасность это процесс, а НЕ одноразовое действие.
#dotnet
#security
💡 Channel | ✏ Chat
Недавно вышел релиз
.NET 9.0.1 с важным исправлением уязвимости безопасности.Казалось бы, мелочь, но для атакующего это окно возможностей, а для компаний — потенциальный риск утраты доверия пользователей, финансовые потери и ну ночи без сна 😅
Список исправленых серьёзных уязвимостей:
CVE-2025-21171 — уязвимость в десериализации JSON, позволяющая злоумышленнику выполнить произвольный код или нарушить целостность данных.
CVE-2025-21172 — проблема с некорректной проверкой входных данных, что открывает возможность для выполнения произвольного кода.
CVE-2025-21173 — ошибка в System.Data.SqlClient и Microsoft.Data.SqlClient, способная привести к утечке конфиденциальной информации.
CVE-2025-21176 — уязвимость в механизмах сериализации, где вредоносные объекты могут использоваться для выполнения произвольного кода.
Обновление доступно здесь: Microsoft .NET Updates
P.S.: Вообщем не стоит забивать и забывать про безопасность и безопасность это процесс, а НЕ одноразовое действие.
#dotnet
#security
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
Всем привет!
Ребята кому нужна работа в C#
По факту это ближе к middle чем к senior
Удалённая работу. Если интересно пишите
Стек
Задачи
Must-Have
Nice-to-have
Что предлагают
#cv
#vacancy
💡 Channel | ✏ Chat
Ребята кому нужна работа в C#
По факту это ближе к middle чем к senior
Удалённая работу. Если интересно пишите
ПравоТех — продуктовая IT-компания, которая с 2008 года создает решения для автоматизации юридических бизнес-процессов.
Стек
.NET 3.1/6, .NET Framework 4.6.2/4.8, PHP, Hyper-V, Docker, Kubernetes bare metal, RabbitMQ, Elasticsearch, MSSQL, PostgreSQL, MySQL, HAProxy, Proxmox, Yandex Cloud.
Задачи
Выработка технического решения на основе бизнес-требований от аналитиков и архитекторов;
Участие в принятии архитектурных решений;
Оптимизация производительности приложения;
Написание качественного кода согласно задачам от аналитиков и архитекторов;
Соблюдение сроков выполнения задач;
Поддержка и доработка уже работающего проекта;
Создание новых модулей, рефакторинг старых;
Поддержка и оптимизация существующего функционала и реализация новых модулей;
Проведение Code Review.
Must-Have
Разработчик .Net от 4-х лет;
C# 6.0 и выше, .NET 4.5 и выше;
ASP.NET MVC / ASP.NET Web API / ASP.NET Core;
PostgreSQL.
Nice-to-have
.NET Core;
Разработка с применением гибких методологий;
Git;
Entity Framework 6, T-Sql;
Принципы ООП, SOLID и шаблоны проектирования.
Что предлагают
Удаленку или офис (Москва, Самара);
ДМС со стоматологией;
Рабочую технику;
Брендированные подарки.
#cv
#vacancy
Please open Telegram to view this post
VIEW IN TELEGRAM
The Phoenix Project
я одолел эту книгу) Книга на самом деле читается на одном дыхании, главное найти время, а дальше книга сама всё сделает. Заберёт твоё время и подарит много мыслей.
Как рецензия - это однозначно must-read для всех, кто строит инженерные процессы. В книге объясняются три ключевых принципа DevOps: flow, feedback и обучение.
Вообщем DevOps — это не только про инструменты, но и про мышление.
Если хотите вывести процессы на новый уровень — очень рекомендую эту книгу. Книга топ за свои деньги!
#devops
#cognition
#developer
💡 Channel | ✏ Chat
я одолел эту книгу) Книга на самом деле читается на одном дыхании, главное найти время, а дальше книга сама всё сделает. Заберёт твоё время и подарит много мыслей.
Как рецензия - это однозначно must-read для всех, кто строит инженерные процессы. В книге объясняются три ключевых принципа DevOps: flow, feedback и обучение.
Вообщем DevOps — это не только про инструменты, но и про мышление.
Flow — это про то, как сделать процесс разработки быстрее и эффективнее. Важно ускорить доставку изменений в production, устраняя узкие места и автоматизируя процессы. Чем быстрее мы двигаемся, тем быстрее получаем результат. Так же я отметил рефакторить/оптимизировать надо впервую очередь где bottleneck, потому что это приносит больше всего эффективностиFeedback — это суперсила. Чем быстрее узнаем о проблемах, тем меньше боль на проде. Жтот путь про создание механизмов быстрой обратной связи, чтобы быстро обнаруживать и устранять ошибки. Быстрое реагирование на проблемы помогает улучшить качество и стабильность системы в целом. Логично, но многие забивают на это, а не надо!Continuous Learning — DevOps-команды (это не просто админы, но и разрабы, аналитики да вообще всё IT) должны постоянно учиться, экспериментировать и адаптироваться. Ошибки — это не провал, а возможность для роста, если мы используем их как источник знаний, но last but not the least чтобы об этом понимал бизнес и продакт и ПМ. Если хотите вывести процессы на новый уровень — очень рекомендую эту книгу. Книга топ за свои деньги!
#devops
#cognition
#developer
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4 3 1
Я тут уже давно жду того дня, когда всё такие в
Этот оператор в
В
Многие разработчики мечтают (например я) о простоте синтаксиса, ну куда проще использвоать нативный
Существующая отдельный Nuget пакеты, либо платные ради одного метода это такое или что то рандомное, которое не хочется завозить в продакшен к заказчику.
Конечно, я прекрасно понимаючто внедрение нового синтаксиса и сахара требует изменений, пересмотра работы компилятора и поддержки различных провайдеров LINQ. Но я верю ребята это Mircosoft или кто? и мы увидим долгожданное обновление, которое сделает жизнь C# еще краше.
Пока же я стою в очереди и остаётся только ждать и надеяться
📎 GitHub
💡 Channel | ✏ Chat
C# появится вы не поверите, нативная поддержка LEFT JOIN и похоже, не только я, но и многие .net разрабы разделяют этого желанию.Этот оператор в
SQL позволяет интуитивно и лаконично как бы писать запросы, возвращающие все записи из левой коллекции, даже если для них нет соответствий в правой и вообще это как бы топ 2 операция!В
LINQ приходится прибегать к громоздким конструкциям вроде GroupJoin с DefaultIfEmpty, что в принципе приходится гуглить потому что зачем это помнить =)Многие разработчики мечтают (например я) о простоте синтаксиса, ну куда проще использвоать нативный
LEFT JOIN который бы сократил код и сделал его проще, особенно для тех кто работает с SQL каждый день и привык к нему.Существующая отдельный Nuget пакеты, либо платные ради одного метода это такое или что то рандомное, которое не хочется завозить в продакшен к заказчику.
Конечно, я прекрасно понимаючто внедрение нового синтаксиса и сахара требует изменений, пересмотра работы компилятора и поддержки различных провайдеров LINQ. Но я верю ребята это Mircosoft или кто? и мы увидим долгожданное обновление, которое сделает жизнь C# еще краше.
Пока же я стою в очереди и остаётся только ждать и надеяться
📎 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3 2
Skype отключат в мае ему было всего 22 года
Да-да конец эпохи. Этот сервис, который когда-то был одним из самых популярных для звонков, не смог удержаться на рынке. С появление конкурентов, особенно во време COVID, таких как Slack, Discord, Zoom, Google Meet и с натяжкой Teams.. Skype потерял окончательно потерял популярность. Новые потребности общества он не покрыл уже.
Однако, одной из удобных функций Skype были звонки на мобильные и стационарные телефоны. Я даже получил бонус 5$ и меня этот сервис выручал порой, когда надо было позвонить на другой континент.
Cо временем эта возможность стала менее востребована снова, появились другие сервисы более удобные.
В итоге снова не с мог конкурировать с миром.
Уход "мессенджера", по сути знак, как меняются технологии. ICQ то вот сумела пережить Skype, хотя и не так популярна сегодня. Skype останется в истории как один из первых сервисов, который открыл новые возможности для общения по крайней мере для меня.
Звонки с родителями, звонки по работе, онлайн звонки когда играли в CS, Dota - вообщем не забываемое время, особенно когда он отваливался в самый неподходящий и подходящий момент, но иногда это было даже кстати)
#microsoft
#skype
💡 Channel | ✏ Chat
Да-да конец эпохи. Этот сервис, который когда-то был одним из самых популярных для звонков, не смог удержаться на рынке. С появление конкурентов, особенно во време COVID, таких как Slack, Discord, Zoom, Google Meet и с натяжкой Teams.. Skype потерял окончательно потерял популярность. Новые потребности общества он не покрыл уже.
Однако, одной из удобных функций Skype были звонки на мобильные и стационарные телефоны. Я даже получил бонус 5$ и меня этот сервис выручал порой, когда надо было позвонить на другой континент.
Cо временем эта возможность стала менее востребована снова, появились другие сервисы более удобные.
В итоге снова не с мог конкурировать с миром.
Уход "мессенджера", по сути знак, как меняются технологии. ICQ то вот сумела пережить Skype, хотя и не так популярна сегодня. Skype останется в истории как один из первых сервисов, который открыл новые возможности для общения по крайней мере для меня.
Звонки с родителями, звонки по работе, онлайн звонки когда играли в CS, Dota - вообщем не забываемое время, особенно когда он отваливался в самый неподходящий и подходящий момент, но иногда это было даже кстати)
#microsoft
#skype
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4 2
История этой недели: Фантомный баг
Фантомный баг - это не ошибка, это боль. ЭТО может "поймать" кто угодно: саппорты, QA, да кто угодно.. да, но только разработчик чаще всего не ловит. И вот ты слышишь об этом баге на митингах, на звонках с ребятами, этот баг появляется и исчезает и ты не успеваешь даже понять, что это было, причём тут ты или он или они. Так вот, это прилюдие моей недели.
Пишет support: Нашли баг у клиента, он не критичный, но может повлиять на продажу продукта. По сути, он может появиться на демонстрации и сбить клиента с толку.
Ок думаю, задача будет на мне, начну делать, за одно и подождём может найдут кейс.
——
ПНД: Вижу багу, чекаю - не воспроизводится. Отправляю ответ: "it doesnot play on my side". Через пару минут прилетает видео с тем, как баг появился. Я в ответ — два видео, где бага нет. support проверяет и пишет: "Баг отсутствует!" думаю: Шах и мат вообщем(нет)
Проходит пару дней и баг снова прилетает. Проверяю, говорю: "Бага нет." Общаюсь с продактом, а он: "Да, баг был, я сам видел, но сейчас его нет". Тут я спросил "Подразумевается, что продолжаем?". Угадайте какой ответ👍
Проверяю логи, повторяю шаги - все работает как должно. Сижу спокойно, думаю, может все в порядке... и тут пишут: "Вот, смотри, баг поймали!" Я смотрю, пробую, баг не воспроизводится -_- Делаю те же шаги от лица customer, но всё работает Ок
На сладкое добавляем:мы используем платные библиотеки
Прошло где то часов 14 подряд.
Результаты: баг появляется один раз из десяти -_-
Я пытаюсь его поймать - баг исчезает. что-где-когда происходит в реальности
На самом деле я уже верю, что кто-то написал это в либе:
Обсфусцировал, а теперь, я пробую найти это место и пофиксить.
- Кто не осведомлён
Этот код "обсфусцирован", это когда код изменяют так, чтобы его было сложно понять. Это делается, чтобы защититься от копирования, скрыть код или затруднить поиск ошибок - по сути защита от копирования и для запутывания (это в платных либах обычная практика). Как правило, ошибки NullReferenceException случаются, когда пытаешься работать с объектом, который не существует (т.е. NULL). В данном случае, выбрасывать это исключение случайным образом с вероятностью ~5%.
#dotnet
#bug
💡 Channel | ✏ Chat
Фантомный баг - это не ошибка, это боль. ЭТО может "поймать" кто угодно: саппорты, QA, да кто угодно.. да, но только разработчик чаще всего не ловит. И вот ты слышишь об этом баге на митингах, на звонках с ребятами, этот баг появляется и исчезает и ты не успеваешь даже понять, что это было, причём тут ты или он или они. Так вот, это прилюдие моей недели.
Пишет support: Нашли баг у клиента, он не критичный, но может повлиять на продажу продукта. По сути, он может появиться на демонстрации и сбить клиента с толку.
Ок думаю, задача будет на мне, начну делать, за одно и подождём может найдут кейс.
——
ПНД: Вижу багу, чекаю - не воспроизводится. Отправляю ответ: "it doesnot play on my side". Через пару минут прилетает видео с тем, как баг появился. Я в ответ — два видео, где бага нет. support проверяет и пишет: "Баг отсутствует!" думаю: Шах и мат вообщем
Проходит пару дней и баг снова прилетает. Проверяю, говорю: "Бага нет." Общаюсь с продактом, а он: "Да, баг был, я сам видел, но сейчас его нет". Тут я спросил "Подразумевается, что продолжаем?". Угадайте какой ответ
Проверяю логи, повторяю шаги - все работает как должно. Сижу спокойно, думаю, может все в порядке... и тут пишут: "Вот, смотри, баг поймали!" Я смотрю, пробую, баг не воспроизводится -_- Делаю те же шаги от лица customer, но всё работает Ок
На сладкое добавляем:
Прошло где то часов 14 подряд.
Результаты: баг появляется один раз из десяти -_-
Я пытаюсь его поймать - баг исчезает. что-где-когда происходит в реальности
На самом деле я уже верю, что кто-то написал это в либе:
if (new Random().NextDouble() < 0.05)
throw new NullReferenceException("Object reference not set to an instance of an object.");
Обсфусцировал, а теперь, я пробую найти это место и пофиксить.
- Кто не осведомлён
#dotnet
#bug
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие дамы, поздравляю с 00001000.00000011 Марта
Поздравляю с 8 Марта! Пусть каждый день приносит радость, вдохновение и новые возможности. Будьте счастливы, любимы и окружены теплом!
Пусть в жизни будет меньше багов, больше успешных коммитов, а деплои проходят без откатов. Будьте счастливы, вдохновляйтесь и сияйте!
#congratulation
💡 Channel | ✏ Chat
Поздравляю с 8 Марта! Пусть каждый день приносит радость, вдохновение и новые возможности. Будьте счастливы, любимы и окружены теплом!
git commit -m "Happy Women's Day! 🎉"
#congratulation
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥3
CQRS переоцененный паттерн?
В теории он разделяет чтение и запись для лучшей масштабируемости, но на практике часто усложняет код или мы его усложняем, вообщем попробуем разобраться.
Большинству проектов хватает обычного CRUD + индексы на БД.
CQRS может быть просто архитектурным оверхедом или всё таки поможет нам?
Как всегда всё зависит от проекта и задачи.
Добавим в компилку чуток ответов от Артёма Акулякова
[ Осторожно, тут мог встречаться Медиатор]
Ссылка: YouTube
#CQRS
💡 Channel | ✏ Chat
В теории он разделяет чтение и запись для лучшей масштабируемости, но на практике часто усложняет код или мы его усложняем, вообщем попробуем разобраться.
CQRS может быть просто архитектурным оверхедом или всё таки поможет нам?
Как всегда всё зависит от проекта и задачи.
Добавим в компилку чуток ответов от Артёма Акулякова
Ссылка: YouTube
#CQRS
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Артём Акуляков — Pragmatic CQRS
Подробнее о конференции DotNext: https://jrg.su/3WmFRE
— —
Скачать презентацию с сайта DotNext — https://jrg.su/7tZUDm
CQRS довольно популярный архитектурный стиль, что, помимо прочего, формирует ряд мифов. Один из них: CQRS — это best practice, некая архитектурная…
— —
Скачать презентацию с сайта DotNext — https://jrg.su/7tZUDm
CQRS довольно популярный архитектурный стиль, что, помимо прочего, формирует ряд мифов. Один из них: CQRS — это best practice, некая архитектурная…
👍2 1
Алгоритм: Two Pointers
Two Pointers - это техника, при которой два индекса двигаются по массиву, чтобы эффективно решать задачи без использования вложенных циклов.Я запомнил как read pointer и write pointer
➡️ Суть
- Один индекс начинает с одного конца, второй с другого. Они двигаются навстречу друг, другу или в одном направлении в зависимости от задачи;
- Позволяет решать многие задачи за
- Работает лучше всего на отсортированных данных или в задачах с поиском зависимостей между элементами.
➡️ Задача
443. String Compression
➡️ Условие
➡️ Пример
➡️ Решение
➡️ HW?
1⃣ begin – начальный индекс текущей группы (индекс чтения), count – длина ответа, сжатой строки (индекс записи). group - длинна группы
2⃣ Находим длину group
3⃣ input[count++] = input[begin] - не забыть скопировать элемент в индекс записи
5⃣ begin += group - сдвигаем (индекс записи) на начало следующей группы
5⃣ вставляем длину группы
#leetcode
#medium
#algorithm
#two_pointers
💡 Channel | ✏ Chat
Two Pointers - это техника, при которой два индекса двигаются по массиву, чтобы эффективно решать задачи без использования вложенных циклов.
- Один индекс начинает с одного конца, второй с другого. Они двигаются навстречу друг, другу или в одном направлении в зависимости от задачи;
- Позволяет решать многие задачи за
O(n) вместо O(n²)- Работает лучше всего на отсортированных данных или в задачах с поиском зависимостей между элементами.
443. String Compression
Задан массив символов chars, сжать его с помощью следующего алгоритма:
Дан массив символов chars, сжать его, используя следующий алгоритм:
Начать с пустой строки s. Для каждой группы последовательно повторяющихся символов в chars:
- Если длина группы равна 1, добавьте этот символ в s
- В противном случае добавьте символ - длина группы.
- Сжатая строка s не должна возвращаться отдельно, а должна храниться в массиве входных символов chars.
- Обратите имание, что длина группы, равная 10 или более, будет разбита на несколько символов в chars.
- После завершения модификации входного массива верните его новую длину.
- Вы должны написать алгоритм, который использует только постоянное дополнительное пространство.
Input: chars = ["a","a","b","b","c","c","c"]
Output: Return 6, and the first 6 characters of the input array should be: ["a","2","b","2","c","3"]
Explanation: The groups are "aa", "bb", and "ccc". This compresses to "a2b2c3".
public static int Compress(char[] input)
{
var begin = 0;
var count = 0;
while (begin < input.Length)
{
var group = 1;
while (begin + group < input.Length && input[begin + group] == input[begin])
group++;
input[count++] = input[begin];
begin += group;
if (group > 1)
{
foreach (var ch in group.ToString())
input[count++] = ch;
}
}
return count;
}
#leetcode
#medium
#algorithm
#two_pointers
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2 2👨💻1