Pull to refresh
1
0
Тимур @Carbonade

C# бэкэндер

Send message

Заблуждения Clean Architecture

Reading time15 min
Views412K
Превращаем круги в блоки

­­ 


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

Читать дальше →
Total votes 58: ↑56 and ↓2+54
Comments203

«Надо переехать с Oracle на PostgreSQL. Ты только не волнуйся!»

Reading time8 min
Views26K

С этого сообщения в мессенджере началось мое масштабное расследование вопроса, который давно не дает спать многим айтишникам — можно ли вот так взять и переехать с Oracle на «свободную» СУБД PostgreSQL?

Этот вопрос сначала бередил умы только тех, кто был в курсе стоимости закупок лицензий. В крупных компаниях бюджет на это мог составлять несколько десятков миллионов долларов. А потом каждый год поддержка вендора «съедала» ещё 22% от стоимости лицензий. Теперь та финансовая боль сменилась другой, и у компаний поменялся запрос: а можно ли заменить? И главное, можно ли организовать это в разумные сроки и по адекватной стоимости? 

Скажу сразу, что в этом посте не будет технических аспектов миграции с СУБД Oracle на PostgreSQL. Как это делать и как обходить сложности — разберем в следующий раз. Тут же больше поговорим о целесообразности и возможности миграции. С этим мы разбирались в ходе одного проекта, а заодно развенчали строй существующих иллюзий. 

Красная таблетка
Total votes 50: ↑49 and ↓1+55
Comments73

Стабилизированный блок питания для тёплых ламповых схем

Reading time9 min
Views19K

Привет, Хабр! Сегодня соберём трансформаторный источник питания с мостовым выпрямителем и рассмотрим два типа линейных стабилизаторов напряжения. На транзисторном повторителе напряжения и на специализированной микросхеме.

А самое главное, что будем не только паять, но и разбираться, как эти электронные цепи работают. Это нужно не только для того, чтобы найти и устранить неисправность в случае, если она есть, но и определить, какая схема годится для нашей цели, и что в схеме можно изменить, чтобы она работала так, как нам надо.
Читать дальше →
Total votes 45: ↑41 and ↓4+60
Comments38

Разработчик с мозгом груга

Reading time14 min
Views86K

Введение


это сборник мыслей о разработке программ собранный разработчиком с мозгом груга

разработчик с мозгом груга не очень умный, но разработчик с мозгом груга программирует много лет и научился кое чему, хоть всё равно часто запутывается

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

разработчиков с большим мозгом много, некоторым страница не понравится, скривят кислая рожа

Ещё больше-больше ДУМАЮТ, что они разработчики с большим мозгом и им она тоже не понравится

(груг раньше думал груг с большим мозгом, но потом всё понял)

это ладно!

груг надеется, что тебе понравится читать и может ты научишься на много-много ошибка груг совершил за длинную жизнь программиста
Читать дальше →
Total votes 223: ↑197 and ↓26+209
Comments81

Латунирование, это просто

Reading time7 min
Views37K

Эта статья - простая и подробная инструкция, как можно в домашних условиях покрыть латунью металлические детали, применяя только подручную химию. cut/ В ней, подробно описанны все ньюансы и "подводные камни". После прочтения этой статьи, у вас просто не может не получиться делать такие же превращения деталей, как на картинке.

Читать далее
Total votes 102: ↑100 and ↓2+129
Comments75

Режимы работы выходных каскадов ламповых усилителей

Reading time8 min
Views22K

Схемотехника ламповых усилителей обманчиво проста. Каждый каскад состоит всего из нескольких компонентов: собственно лампы, двух-трёх-четырёх резисторов и пары-тройки конденсаторов. Выходной каскад лампового усилителя может быть однотактным (SE) и двухтактным (PP) и обычно содержит трансформатор.

В этой публикации мы рассмотрим особенности работы однотактных и двухтактных выходных каскадов, узнаем о режимах работы ламп и обсудим применение мощных триодов в однотактных выходных каскадах ламповых усилителей.
Читать дальше →
Total votes 43: ↑42 and ↓1+61
Comments38

Хакаем CAN шину авто. VAG диагностический бортовой компьютер

Reading time5 min
Views33K

С огромным увлечением исследую протоколы CAN шины и разрабатываю устройства взаимодействующие с автомобилем. У меня уже есть голосовое управление центральным замком, виртуальная панель приборов и даже мобильное приложение для моей Skoda Octavia A5.

Теперь я решил разработать диагностический бортовой компьютер для автомобилей группы VAG (VW, Audi, Skoda, Seat). Моими техническими требованиями было: OLED дисплей, лёгкая установка и подключение, множество диагностических параметров. В качестве компонентной базы выбрал:
Читать дальше →
Total votes 76: ↑76 and ↓0+76
Comments41

Выбраться из пирамиды Маслоу

Reading time29 min
Views31K

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

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

Где искать потребности
Total votes 23: ↑19 and ↓4+21
Comments20

Прогулка по заводу желаний

Reading time36 min
Views31K
Откуда приходят и куда исчезают желания?

Иногда трудно заставить себя делать что-то нужное: мыть посуду, делать зарядку, работу работать… В интернете есть много статей с рецептами преодоления нежелания, и каждый день добавляются новые. Я вижу во многих статьях одну и ту же проблему.

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

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

Ближе к теме — почему иногда трудно заставить себя работать? Заглядываем в интернет, и сразу получаем решения — надо закрыть соцсети, разбить задачу на мелкие шаги и хвалить себя.

Или еще проще — проблемы нет, у вас воля слабая, отговорки ищете, возьми и сделай (just do it).

Позвольте усложнить.
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments37

Осознанная ходьба для удаленщика

Reading time7 min
Views27K

Я работаю на полной удаленке уже 10 лет. Стоит ли говорить, что проблема сидячего образа жизни все эти годы стоит ребром? Мой пример немного не типичен тем, что какое-то движение в жизни было всегда - сидячей работе сопутствовали эпизодические высокие нагрузки пару раз в месяц (выезды в условный лес). Но этого определенно недостаточно. Нужна именно регулярность.

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

Читать далее
Total votes 56: ↑55 and ↓1+66
Comments187

Разрезать металл — воздухом? Почему бы и нет…

Reading time7 min
Views21K

Во все времена, с самого момента своего появления, металл был окружён различными проблемами: начиная от его добычи и заканчивая последующей обработкой. Особенно эта проблема усугубилась в период промышленной революции, когда всё более возрастающий темп жизни побуждал производства подстраиваться под него и искать такие способы обработки, которые бы позволяли производству быть конкурентоспособным в условиях рыночной среды.
Читать дальше →
Total votes 43: ↑40 and ↓3+61
Comments36

Обучение на частного пилота в России. Личный опыт

Reading time18 min
Views108K

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

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

Читать далее
Total votes 99: ↑98 and ↓1+125
Comments150

Если крысе не давать спать, она умрёт через 3 недели — как работают мозг и сон

Reading time19 min
Views46K

Посмотрела 2х-часовую лекцию профессора МГУ Вячеслава Дубынина про влияние сна на мозг и мозга на сон. Под катом конспект минут на 20 чтения. Если попытаться сжать до 1 минуты, то получится что-то вроде этого:

  • Сколько нужно спать. Индивидуально, от 6 до 10 часов — для взрослого человека в пределах нормы.
  • Гигиена сна — правила, чтобы нормально засыпать и высыпаться. (Просто якорь на слайд-список).
  • Биологические часы — реальный физиологический процесс, который ориентируется на циркадные ритмы. Смена часовых поясов и работа по сменам «расшатывает» механизмы биологических часов.
  • Спать надо ложиться не позже, чем… — фигня. Просто в одно и то же время.
  • Если вы спите днем, купите себе хорошие шторы. Мелатонин коррелирует с освещением. Если в глаза (даже закрытые) светит солнце, вы не отдыхаете полноценно.
  • Сколько можно не спать. Без необратимых серьезных последствий взрослый человек выдержит до 4-х суток.
  • Сон делится на медленную и парадоксальную фазы.
  • Медленная фаза сна — про очищение организма. Если нет медленной фазы сна, иммунитет, эндокринка, обменные процессы и гомеостаз идут лесом. Экспериментальные крысы умирают на 15-20 день без сна от воспаления, когда кишечные бактерии попадают в кровь.
  • Парадоксальная фаза сна участвует в обработке информации. По уровню электрической активности мозга она близка к состоянию активного решения сложных задач.
  • Когда правильно просыпаться. На переходе от парадоксальной фазы к медленной.
  • Как определить на глаз, когда можно будить. Когда человек лежал спокойно и начал ворочаться, можно будить.
  • Кофеин не позволяет организму получить сигнал об усталости, но не дает дополнительную энергию.
  • Как затормозить перевозбужденную нервную систему нежно. Фенобарбитал в малых дозах — корвалол, валокордин, валосердин. Противогистаминные препараты.

Читать дальше →
Total votes 89: ↑86 and ↓3+104
Comments32

Арракис, который мы заслужили

Reading time4 min
Views50K

Во вселенной писателя-фантаста Фрэнка Герберта, Дюна, она же Арракис — это пустынная и маловодная планета с двумя лунами. По сюжету, она находится за пределами Солнечной системы, но если мы захотим поискать ближайшую схожую параллель, то больше всего подходит планета Марс. Предлагаю воспользоваться возможностями, которые даёт современная космонавтика, и совершить воображаемую прогулку на нашу Дюну.
Читать дальше →
Total votes 168: ↑162 and ↓6+219
Comments249

Пять лучших киберпанк-аниме

Reading time7 min
Views81K

Очень скоро киберпанк как жанр отметит своё сорокалетие. Почему он появился именно в США начала 80-х, и почему при этом с первых дней стал настолько «японским» – мы уже говорили . Как он породил целую группу жанров, и сам понемногу из актуальных размышлений о будущем стал формой ретрофутуризма – тоже.

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


За сорок прошедших с начала 80-х лет японцы сделали десятки, если не сотни, аниме-произведений в жанре киберпанка. И некоторые из них прочно вошли в золотой фонд жанра. Списков топ-10 и так далее в сети хватает – но многие из них крайне поверхностны, кратки и написаны «для галочки» без особого вникания в предмет.
Так что почему бы не попробовать сделать свой вариант, копнув чуть глубже?
Total votes 64: ↑57 and ↓7+76
Comments126

Ускоряем цикл foreach до for

Reading time6 min
Views17K

Привет!

В этой небольшой заметке о быстром енумераторе для foreach на C#:

foreach (var i in 1..10)

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

Будет много бенчмарков и шарплаба. Прошу под кат!

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

О достижении целей

Reading time8 min
Views8.2K

"У самурая нет цели, только путь, а путь самурая – это смерть."

Пусть так и остается у самураев, а человеку необходимо ставить цели и достигать их. В статье расскажу о своем осознанном методе постановки целей не по SMART.

Хочу узнать
Total votes 2: ↑1 and ↓10
Comments18

Музыкальная машинная ярость: настоящий металл, созданный компьютером

Reading time4 min
Views11K

Мы уже рассказывали про «Евровидение» для нейросетей. Сегодня поделимся историей о проекте ещё одного экспериментатора. Бернхард Мюллер создал автоматический генератор музыки в стиле «металл» и скрестил его с GPT-3. Что получилось в результате, вы узнаете далее.

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

Реализация алгоритма Минимакс на примере игры «Крестики-Нолики»

Reading time7 min
Views31K
Недавно я написал непобедимую игру «Крестики-Нолики». Это был интересный и поучительный проект, который многому меня научил. Если у вас есть желание посмотреть результат — это можно сделать здесь.

image

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

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

Читать дальше →
Total votes 5: ↑4 and ↓1+7
Comments6

CancellationTokenSource и «утечки памяти»

Reading time10 min
Views10K

Всем привет!

Я работаю в Тинькофф, в проекте «Тинькофф Телефония». Наша основная задача — организация IP-телефонии внутри компании и за ее пределами. В день через нас проходит несколько миллионов звонков. Всей этой кухней занимаются около 10 сервисов. 

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

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

В один прекрасный день терпение лопнуло, и мы с Женей Мишустиным и Кириллом Марковым накинулись на эту проблему: Женя с Кириллом ловили и анализировали дампы, а я занимался поиском причин такого поведения.

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

Читать далее
Total votes 39: ↑39 and ↓0+39
Comments13
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity