Pull to refresh
0
0
Александр @GiantCherry

Разработчик

Send message

Микросервис на Python+ FastAPI

Level of difficultyEasy
Reading time19 min
Views17K

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

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

В микросервисной архитектуре приложение разбивается на несколько отдельных служб, которые выполняются в отдельных процессах. Существует другая база данных для разных функций приложения, и службы взаимодействуют друг с другом с использованием HTTP, AMQP или двоичного протокола, такого как TCP, в зависимости от характера каждой службы. Межсервисное взаимодействие также может осуществляться с использованием очередей сообщений, таких как RabbitMQ , Kafka или Redis .

Читать далее
Total votes 12: ↑11 and ↓1+14
Comments7

Переворачиваем список целых чисел

Reading time4 min
Views9.9K

Недавно Александр Муньис опубликовал новую математическую игру, которую назвал «Переверни список целых чисел». Заключается она в следующем.

- Составьте список разных положительных чисел (например, 10 5 3). Ваша цель — перевернуть список, используя «ходы» двух видов:

- Разделите одно из чисел на две части, которые в сумме дают целое; например, (10 5 4) может стать (7 3 5 4) или (10 2 3 4).

- Объедините два соседних числа в их сумму; например, (7 3 5 4) может стать (7 8 4) или (7 3 9).

Нельзя образовывать число, которое больше максимального числа в исходном списке. Например, если мы пытаемся изменить (10 5 4), то (7 5 3 4) может стать (7 8 4), но не может стать (12 3 4), так как 12 больше, чем 10 — максимальное число исходного списка. Также все элементы списка должны оставаться различными; например, (7 5 3 4) не может стать ни (7 5 7), ни (7 2 3 3 4).

Александр спрашивает: какие эффективные алгоритмы или общие стратегии существуют для решения этих задач? Для данного n должен быть некий список, где n — самое большое число, а количество ходов, необходимых для решения головоломки, является максимальным. Как выглядит последовательность максимально необходимого количества ходов в зависимости от n? Как выглядят самые «сложные» головоломки? Есть ли способ определить это без брутфорса?

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

$2500 в месяц на сервисе с 1 функцией, которая уже была у крупных компаний

Level of difficultyEasy
Reading time5 min
Views51K

Разбираем, как разработчик создал простой продукт с выручкой $2500 в месяц, связав два популярных сервиса. Несмотря на то, что это уже было сделано до него крупными компаниями.

Читать далее
Total votes 84: ↑66 and ↓18+58
Comments39

Как в одиночку запустить продукт, если вы разработчик: советы от создателя Laravel Тейлора Отвела. Часть 1: Аудитория

Reading time5 min
Views13K


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


Лучше брать пример с Тэйлора Отвела, который создавал Laravel в свободное от основной работы время. В ноябре он опубликовал мини-серию подкастов, в которой поразмыслил над успехом своих программных продуктов — за последние 5 лет они принесли ему больше 10 млн долларов. В четырех выпусках подкаста Тейлор поделился советами, которые затрагивают ряд тем от поиска идеи и формирования лояльной аудитории до сохранения мотивации и преданности качеству.


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

Итак, поехали.

Читать дальше →
Total votes 26: ↑24 and ↓2+32
Comments13

DIY клавиатура из фанеры

Level of difficultyEasy
Reading time8 min
Views14K

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

Читать далее
Total votes 60: ↑59 and ↓1+70
Comments34

Новинки КОМПАС-3D v22 Home

Level of difficultyMedium
Reading time22 min
Views15K

В начале сентября мы выпустили новую версию системы КОМПАС-3D Home для любительского 3D-моделирования и домашнего использования. Мейкерам, умельцам, 3D-печатникам, домашним мастерам и блогерам доступны все возможности профессиональной САПР.

Что же нового появилось в КОМПАС-3D v22 Home?

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

Профайлинг Laravel приложений с XDebug и PHPStorm

Level of difficultyMedium
Reading time3 min
Views5.2K

Профайлинг приложений важный этап перед релизом ресурсоёмкой фичи. Везде трубят про удобную отладку PHP-приложений при помощи XDebug и PHPStorm, однако напрочь забывают про замеры времени операций, которые, порой, превышают те самые 3 секунды, которые пользователь будет ждать на странице. Если у Вас есть метод API, который долго работает, самое время его проверить профайлером XDebug, а PHPStorm поможет красиво визуализировать и изучить файл профиля.

Начнём профайлинг
Total votes 8: ↑8 and ↓0+8
Comments9

Обучение с блэкджеком и подкреплением. Ищем оптимальную стратегию игры

Level of difficultyMedium
Reading time8 min
Views3.4K

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

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

Обзор NativePHP. Инструмент для создания собственных нативных desktop приложений на Laravel

Level of difficultyMedium
Reading time7 min
Views13K

Привет, коллеги!

В этой статье я сделаю небольшой обзор NativePHP, который появился на последнем Laracon. Что из себя представляет NativePHP? Перед нами фреймворк, который позволяет нам писать нативные десктоп приложения, используя PHP. Приложения кроссплатформенные - можно писать под Mac, Windows и Linux. И все это с использованием нашего любимого PHP с использованием Laravel. Но как обещают разработчики в будущем появятся и другие драйверы.

Читать далее
Total votes 17: ↑15 and ↓2+17
Comments53

Домашний ЧПУ-фрезер как альтернатива 3D принтеру, часть первая — выбор станка

Reading time5 min
Views291K
Последнее время на хабре все чаще появляются топики, посвященные 3D-печати вообще и домашним 3D-принтерам в частности. И почти в каждом в комментариях вспыхивает холивар между романтиками, в жизни не видевшими 3D отпечатков, и практиками, единожды потрогавшими и разочаровавшимися. При этом вторые почему-то не приводят адекватных альтернативных технологий, комментарии носят либо чисто критический характер, либо предлагают заведомо более дорогие альтернативы. Тем не менее, достойная альтернатива есть — домашний фрезерный станок с ЧПУ.

Звучит удивительно, да? Как-то само слово станок в народе ассоциируется с производством, с отдельными помещениями и специально обученным персоналом. В действительности, существует большой класс ЧПУ-станков, рассчитанных на настольное использование в офисе и на малых производствах, а при желании — и дома. При этом цена маленьких ЧПУ-фрезеров приближается (чтобы не сказать равна) к реальной цене 3D-принтеров.

Жизнь сложилась так, что последний год с гаком я занимаюсь изготовлением литьевых форм для полиуретановых изделий на ЧПУ-фрезере. Поскольку до этого 10 лет оттрубил в IT ритейле, а образование не имеет никакого отношения ни к инжинирингу, ни к ЧПУ, осваивать технологии пришлось с нуля. За прошедший год я подрос с должности оператора-фрезеровщика до инженера-конструктора, а затем и до замдиректора по технологиям, моими стараниями ЧПУ-парк предприятия вырос с одинокого старенького роланда до 5 разнокалиберных станков. В связи с чем еще свеж и актуален опыт выбора, покупки, пусконаладки, тюнинга, эксплуатации и ремонта различных ЧПУ-станков.

И вот — решил поделиться опытом с сообществом. Я осознаю сам, и прошу принимать во внимание читателей, что я — самоучка без базового инженерного образования, все нижеизложенное основано исключительно на личном опыте.
Читать дальше →
Total votes 104: ↑98 and ↓6+92
Comments188

Как воспитать в своей семье юного инженера и не разориться?

Level of difficultyEasy
Reading time8 min
Views20K

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

Короче, слушайте
Total votes 52: ↑50 and ↓2+60
Comments32

Импортозамещение, которое мы потеряли: советские языки программирования и их создатели — часть 1 (1950-е — 1960-е)

Reading time7 min
Views37K

Продолжаем наш ретроспективный цикл о тех советских разработках, которые стали историей и за которые, как принято говорить — “не стыдно”. В предыдущих постах цикла мы уже затрагивали разработку языков программирования в СССР и в этом посте хотели остановиться на ней подробнее. Несмотря на достаточно скромные достижения в этой области, разработчики языков и трансляторов знали моменты триумфа, а фундаментальный вклад советских ученых в развитие программирования ощутим и сегодня. Под катом немного о языках и трансляторах, разработанных в Стране Советов в 50-е — 60-е годы, а также об их создателях. 

Читать далее
Total votes 44: ↑39 and ↓5+42
Comments93

УКВ приёмник в пачке Marlboro или закончить начатое 25 лет назад

Level of difficultyMedium
Reading time6 min
Views17K

Черновик этой статьи накидал еще на карантине, но, как всегда, все легло в долгий ящик. Помню засомневался тогда, что искушенной публике Хабра, вероятно, уже наскучила тема ностальгических терзаний из детства, да и «размах» устройства невелик. Что и говорить, опытные умельцы самостоятельно собирают целые компьютеры по схемам прошлых лет. Так что, возможно, так бы и пролежало в столе, если бы не такой замечательный повод. В итоге, вдохновленный новостями о сезоне DIY, заканчиваю начатое. Все же лучше поздно, чем никогда, как говорится. История эта, скорее, не столько техническая, сколько повод поделиться теплыми воспоминаниями из детства провинциального школьника 90-х через историю одной самоделки.

Погнали
Total votes 75: ↑74 and ↓1+107
Comments50

Рудольф Сворень — человек легенда (автор классики — «Электроника шаг за шагом»)

Reading time7 min
Views43K
Сегодня день Космонавтики — в такие дни мы всегда испытываем гордость за страну, за людей, благодаря кому наша страна (в то время Советский Союз) достигла таких высот. Каждое достижение — это результат работы многих людей, работы энтузиастов — людей влюбленных в своё дело. И человек о котором мы сегодня хотим рассказать — так же внес свой вклад в развитие просвещения, знаний и зарождение любви к техническому творчеству среди молодежи.

Книга “Электроника шаг за шагом” — возможно знакома многим, кто увлекся электроникой в детстве, многие отмечают простоту и доступность материала. Её автор — Рудольф Сворень, человек знаменательный, но мало известный современниками. И мы хотели бы опубликовать его воспоминания.

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

Этот человек чьи книги по основам радио-электроники выпускались миллионными тиражами в СССР, и внесли вклад в появление увлеченных электроникой людей.

Материалы публикуются впервые. Руслан — это tirus — благодаря его усилиям, удалось установить контакт с Рудольфом Анатольевичем (в США).


Дорогой Руслан! Я обещал Вам рассказать о том, как из радиоинженера получился профессиональный журналист и сейчас попробую это сделать. Начну с конца – в январе 1950 года (в возрасте 23 года) я окончил Одесский электротехнический институт связи (ОЭИС) с профессией «Инженер-электрик радиосвязи». По законам того времени получил назначение на работу в городе Фрунзе (ныне Бишкек) в Министерстве связи Киргизии. Перед отъездом из Одессы я поженился с пианисткой Екатериной Заславской, которая жила с братом, матерью и отчимом (отец погиб на фронте) в одной комнате на первом этаже старого одноэтажного дома недалеко от одесского вокзала. Мы с Катей прожили вместе более 50 лет.

Первое время во Фрунзе я работал дежурным инженером на местном средневолновом радиовещательном передатчике. Довольно быстро привык к непривычному – к совершенно непонятным мне радиопередачам на киргизском языке, к мощным усилительным лампам метровых размеров с водяным охлаждением, к высокой передающей антенне (высотой метров двести), к жестким правилам техники безопасности. Скажем к тому, что определенный тип объявлений (например, «На антенне работают люди») имеет право снять только лично тот человек, который объявление повесил. Я запомнил это на всю жизнь.
Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments36

Любовь, 3D-печать и роботы: сезон DIY на Хабре

Reading time30 min
Views36K

Было бы нелегко объяснить нашим далёким предкам концепцию Do It Yourself. Предки бы удивились: а кто ещё, собственно, do, кроме yourself? Срубить избу, соткать полотно, вырезать ложку-плошку — навыки, которыми крестьянин прошлых веков не стал бы даже особо хвастать. 

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

Привет, Хабр, на связи компания VK. Сегодня мы открываем новый сезон, посвящённый DIY. Под катом расскажем, чем этот сезон важен лично для нас, а также об условиях конкурса и призах.

UPD. Конкурс закончился, результаты и таблицу участников можно посмотреть по ссылке.

Читать далее
Total votes 36: ↑33 and ↓3+52
Comments30

Революционные IDE, повлиявшие на разработку ПО

Level of difficultyEasy
Reading time12 min
Views32K
В старину при написании кода вы видели лишь чёрный текст на белом фоне. Для того чтобы писать код, требовалось много внимания и аккуратности. Опечатки не подсвечивались автоматически, а синтаксические ошибки обнаруживались только в процессе компиляции. По сравнению с современным программированием это был совершенно иной процесс.

Asymetrix ToolBook, когда-то популярный благодаря мультимедийным возможностям, но уже давно позабытый

В этой статье мы рассмотрим десяток сред разработки, оказавших самое большое влияние за последние тридцать лет программирования. IDE ранжированы по порядку, от десятого места до первого.
Читать дальше →
Total votes 74: ↑66 and ↓8+82
Comments181

Как быстро запустить Laravel на Windows

Level of difficultyEasy
Reading time3 min
Views11K

Все привет, меня зовут Павел Жуковский и сегодня я расскажу о том как быстро развернуть Laravel на Windows.

Как развернуть Laravel с помощью OSPanel (Open Server Panel)?

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

Читать далее
Total votes 2: ↑0 and ↓2-2
Comments27

«Пепси. Пейджер. MTV». Создадим домашнюю пейджинговую сеть в 2023

Level of difficultyEasy
Reading time17 min
Views16K

Я it-шник, и иногда мне бывает скучно. Мы окунемся с вами в прошлое и создадим домашнюю пейджинговую сеть в 2023 году. Научимся отправлять и получать сообщения на пейджер.

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

Лабораторный двухканальный блок питания из китайских модулей, или мощный импульсный нестабилизированный на IR2153

Reading time12 min
Views14K

Эта статья объединяет в себе две: "домашний лабораторный БП" и "источник питания 350Вт на IR2153". Можно считать её продолжением "Нестабилизированный AC/DC источник питания. IR2153".

Заходим, не стесняемся
Total votes 29: ↑28 and ↓1+43
Comments50

Визуализация данных при отладке в Visual Studio Code

Reading time2 min
Views16K


Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе часто визуальную часть предоставляет браузер, и все всем довольны. Но бывает, что списки или деревья в голове уже не умещаются, таблицы хочется отсортировать, а графики строить не выходя из среды отладки. Для всего этого и был создан плагин для VS Code — Debug Visualizer.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments0
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity