Pull to refresh
1
0.2
kalbas @kalbas

User

Send message

Мы будем делать бизнес, мы будем делать бабки, мы купим себе bambu…

Level of difficulty Easy
Reading time 4 min
Views 14K

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

Год назад мы с друзьями решили изучить 3d печать и начать зарабатывать на этом деньги. На самом деле у нас был опыт работы с FDM 3d печатью. На прошлом месте работы нас заставили разобраться с каким-то ширпотребным принтером с алиекспресс.

Мы продумали план действий, разные способы сбыта товара и на кровные средства заказали себе принтеры.

Изучив существующие методы 3d печати, выбрали самые простые и бюджетные, а именно FDM(струйная 3d печать пластиковым прутком - филаментом) и SLA(фотополимерная печать смолой). Наших средств хватало на два б/у принтера и мы начали выбирать что можно взять и читать отзывы. Наш взор упал на медведей (Flyingbear ghost), так как у них стол двигается не вперед-назад, а вверх-вниз. Мы посчитали что это оптимальнее и проще.

Читать далее
Total votes 18: ↑8 and ↓10 -2
Comments 21

Не спеши, Маша! Разбор примеров из книги Хэррис Д.М., Хэррис С.Л. Цифровая схемотехника и архитектура компьютера

Level of difficulty Medium
Reading time 12 min
Views 15K

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

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

Итак, начнем...

Читать далее
Total votes 48: ↑45 and ↓3 +42
Comments 106

Создаем свой VPN с защищенным от блокировок протоколом AmneziaWG, или WireGuard на максималках

Reading time 4 min
Views 140K


Всем привет! Возможно уже совсем скоро разные новостные и  IT-ресурсы будут подчищать информацию о способах обхода блокировок. А пока этого не случилось, запасаемся полезными гайдами и разворачиваем свои собственные VPN с защищенными от блокировок протоколами. Расскажу как это сделать, как изменилась Amnezia и как мы защитили WireGuard от блокировок.

Читать далее
Total votes 115: ↑113 and ↓2 +111
Comments 123

Как вырастить солёную пирамидку

Reading time 11 min
Views 44K

Да кому нужна эта обычная скучная соль? Превращаем мелкие белые крупинки в потрясающие пирамидальные кристаллы в домашних условиях.

Читать далее
Total votes 232: ↑229 and ↓3 +226
Comments 72

Делаем HMI-панель из планшета для системы автоматизации на контроллере Wiren Board

Level of difficulty Easy
Reading time 10 min
Views 18K

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

В комплекте с контроллером Wiren Board идёт программное обеспечение, которое позволяет закрыть большинство задач построения и эксплуатации системы автоматизации: графические и текстовые панели, архив данных с графиками, драйверы для устройств, скрипты wb-rules.

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

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

Книга «Пять строк кода. Роберт Мартин рекомендует»

Reading time 9 min
Views 16K
imageХаброжители, как дела?
А у нас тут книга по рекомендации самого Дяди Боба.

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

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

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

Для разработчиков всех уровней. В примерах используется доступный и понятный синтаксис TypeScript, который позволяет перейти к любому языку высокого уровня.
Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Comments 24

Грокаем монады

Reading time 7 min
Views 12K

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

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

Читать далее
Total votes 28: ↑23 and ↓5 +18
Comments 23

Made at Intel. Эпилог

Level of difficulty Easy
Reading time 8 min
Views 28K

Несколько дней назад я закончил последнюю главу саги Made at Intel. Напоследок хочу поделиться с вами несколькими мыслями, посетившими меня по ходу ее написания. Они обращены в прошлое, настоящее и немного в будущее.

Читать далее
Total votes 179: ↑175 and ↓4 +171
Comments 31

Как стать профессиональным IT-коллекционером? Часть 6. Расширенные soft-skills

Level of difficulty Medium
Reading time 7 min
Views 2.4K

За время работы в поддержке GlowByte я познала навыки технического менеджмента. Это касается как Agile-проектов, так и support. Были периоды, когда в моей работе преобладало больше менеджерских задач, чем технических: нужно было проводить онбординг проекта, решать критические ситуации заказчика, выстраивать процессы эффективной коммуникации, ходить на 8 встреч в день и т. д. И я была рада получить такой опыт. Поэтому хочу рассказать историю про повышение soft-скилов.

Читать далее
Total votes 16: ↑13 and ↓3 +10
Comments 0

Азы программирования для детей и подростков: актуальные инструменты обучения и немного личного опыта

Reading time 6 min
Views 8.3K

Привет, Хабр! Меня зовут Сергей Ребров, я работаю в команде машинного обучения в МТС. У меня две дочки, которых стараюсь знакомить с миром разработки, поэтому решил написать статью про обучение азам программирования детей и подростков. Есть личные кейсы, есть информация к размышлению, описываю и полезные, на мой взгляд, инструменты. Если для вас эта тема интересна - прошу под кат!

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

Как мы подключали распределенную трассировку через (внезапно) Sentry

Level of difficulty Medium
Reading time 12 min
Views 4.7K

Всем привет, меня зовут Полина, я техлид команды, занимающейся проектом электронного документооборота в среднего размера продуктовой компании. В этой статье я расскажу как мы обнаружили в привычном инструменте мониторинга ошибок - Sentry - распределенную трассировку и опробовали ее для своих задач. Примеры в статье приведены для конкретного стека, это python3 и FastAPI, храним мы данные в MongoDB, используем RabbitMQ.

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

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

ТВ вместо монитора: HDR, 120 Гц и вот это всё

Level of difficulty Easy
Reading time 20 min
Views 85K

Разбираемся, зачем экранам 500 Гц, почему телевизор не монитор, за сколько часов выгорит OLED и как вообще это всё работает.

Читать далее
Total votes 170: ↑170 and ↓0 +170
Comments 418

Propan — Python фреймворк для написания микросервисов с использованием брокеров сообщений

Level of difficulty Easy
Reading time 4 min
Views 11K

Так исторически сложилось, что последние 5 лет своей продуктовой разработки я работаю с микросервисами вокруг брокеров сообщений (преимущественно RabbitMQ и Kafka).

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

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

И вот, таская от сервиса к сервису ворох всех этих проблем (и код который эти проблемы решает), до меня дошла гениальная идея: оформить весь однотипный код, общий для всех сервисов в единый пакет!

Так появился на свет фреймворк Propan.

Читать далее
Total votes 31: ↑31 and ↓0 +31
Comments 23

DataHub: репозитории данных коммерческого типа. Как зарабатывать на доступе к данным?

Level of difficulty Easy
Reading time 4 min
Views 1.3K

Привет! Меня зовут Андрей Шмиг, я основатель и разработчик платформы DataHub — Crowd Data Sourcing at Hand, своего рода GitHub для данных. В этой статье покажу, каким образом можно монетизировать имеющиеся у вас структурированные и неструктурированные данные будь вы разработчик, data‑scientist или ML‑специалист.

Читать далее
Rating 0
Comments 15

Слезаем с облачной иглы Aqara и подключаем устройства к контроллеру Wiren Board

Reading time 9 min
Views 45K

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

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

Затем я откажусь от облака Aqara и перейду на локальное решение Wiren Board 7 с модулем расширенияSprut.stick ZigBee WBE2R-R-ZIGBEE-SH, оболочкой Sprut.hub и Алисой. Сравню результат и процесс с родным облаком.

Читать далее
Total votes 22: ↑21 and ↓1 +20
Comments 34

Как получить все сообщения через логическую репликацию Postgres

Reading time 7 min
Views 3.1K

В одной из предыдущих статей я описал Push-based Outbox Pattern (шаблон исходящих сообщений на основе push с логической репликацией Postgres). Идея заключается в том, чтобы сохранить исходящее сообщение (например, событие) в той же транзакции базы данных вместе с изменением состояния. Благодаря этому мы гарантируем, что сообщение не будет потеряно, а наш бизнес-процесс будет продолжаться и станет согласованным.

Postgres может помочь и проинформировать нас, когда добавляется новое сообщение. Мы можем использовать встроенный механизм журнала упреждающей записи (WAL, Write-Ahead Log) вместе с логической репликацией.

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

Личный опыт подтягивания английского к собеседованиям

Reading time 5 min
Views 24K

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

Читать далее
Total votes 29: ↑26 and ↓3 +23
Comments 18

Насколько круто иметь свой сервер в комнате

Reading time 6 min
Views 110K

Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.

Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Читать дальше →
Total votes 148: ↑147 and ↓1 +146
Comments 313

Важнейшие критерии при выборе Extract – Load решения для интеграции данных в DWH

Reading time 7 min
Views 2.6K

Привет! На связи как всегда Артемий Козырь, Analytics Engineer в Wheely.

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

В этой публикации попробую резюмировать свои знания:

— Каталог поддерживаемых источников и приемников данных

— Метод чтения данных из источников (Extract)

— Способы репликации в целевое Хранилище (Load)

— Работа с изменениями структуры данных (Schema Evolution)

— Трансформации перед загрузкой данных (EtLT)

— Тип развертывания решения (Deployment)

Буду объянять и показывать примеры на сервисах, которые использовал сам: Hevo Data, Fivetran, Airbyte. Однако критерии униварсальны и применимы для любых других систем подбного класса.

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 2

Замена облакам в нашем кружке «oч.умелые ручки»

Reading time 6 min
Views 19K

Последнее время доверие к облакам как-то резко упало, и пока кончалась годовая подписка на Google One на 2Т было время подумать, что делать дальше. В итоге родилась старая концепция - 'храним данные дома'. И вот что их этого получилось.

Читать далее
Total votes 25: ↑25 and ↓0 +25
Comments 38

Information

Rating
2,169-th
Location
Белгород, Белгородская обл., Россия
Registered
Activity