Как стать автором
Обновить
43
0
kolbaskinmax @kolbaskinmax

Программист

Отправить сообщение

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

Время на прочтение30 мин
Количество просмотров36K

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

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

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

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

Читать далее
Всего голосов 58: ↑55 и ↓3+52
Комментарии30

Использование Ionic и Vue 3 для создания мобильных приложений

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров5.5K

В современном мире мобильные приложения играют важную роль в нашей повседневной жизни. Разработка мобильных приложений стала все более популярной, и существует множество фреймворков и инструментов для создания кросс-платформенных приложений. В этой статье мы рассмотрим процесс разработки мобильных приложений с использованием Ionic, Vue 3 и Capacitor, сочетающих в себе преимущества гибкости Vue.js и возможности кросс-платформенной разработки Ionic и Capacitor. Вперед под кат)

Под кат!
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

5 типичных ошибок при использовании Apache Kafka

Время на прочтение10 мин
Количество просмотров17K

Даже если у вас большой опыт работы с Apache Kafka, время от времени наверняка случается зайти в тупик. Например, когда вы конфигурируете и изучаете клиенты или настраиваете и отслеживаете брокеры. Попробуй за всем уследить, когда в конвейере Kafka столько компонентов. В этой статье описано пять частых ошибок и советы по тому, как их избежать на всех этапах — от конфигурирования клиентов и брокеров до планирования  и мониторинга. Эти рекомендации сэкономят вам время и силы.

Читать далее
Всего голосов 37: ↑36 и ↓1+35
Комментарии1

Обработка DXF файлов: конвертация в SVG и анализ

Время на прочтение2 мин
Количество просмотров4.4K

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

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

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии8

Об 1С для программистов, или Натягиваем сову на глобус

Время на прочтение17 мин
Количество просмотров98K

Что такое 1С? Все слышали, что это код на русском. Но мало кто на самом деле знает что-то более подробно. 1Сники живут отдельной коммуной. Пишут статьи на своих ресурсах. Используют какие-то свои странные термины и подходы. Но что если попробовать заглянуть в мир их процесса разработки? Может там не всё так страшно...

Начать погружение
Всего голосов 35: ↑34 и ↓1+33
Комментарии109

Как пройти техническое собеседование на системного аналитика в любой компании (сборник вопросов)

Время на прочтение10 мин
Количество просмотров168K

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

Перейти к списку вопросов
Всего голосов 26: ↑26 и ↓0+26
Комментарии39

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

Время на прочтение7 мин
Количество просмотров32K

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

Почему из семян? Проще не заморачиваться, а купить рассаду! - скажут некоторые. Но увы, с покупной рассадой не всё так просто, как может показаться с первого взгляда. Главная проблема покупной рассады - грибковые болезни и наличие яиц или личинок вредителей. Даже приобретая рассаду с известных европейских питомников Вы рискуете получить заражённые растения, и занести к себе на садовый участок нежеланных гостей в виде трипсов, паутинного клеща, цикадок, белокрылки и иже с ними.

Читать далее
Всего голосов 57: ↑52 и ↓5+47
Комментарии66

Как выучить иностранный язык: алгоритм

Время на прочтение13 мин
Количество просмотров158K

Если вы хоть немного пересекались с Machine Learning, то понимаете, что человеческий мозг — это, по сути, большая нейросеть. А раз так, то и работу с ним можно строить по известным в ML алгоритмам. Так я нашел универсальный способ выучить любой иностранный язык до нормального уровня в разумные сроки. И на себе проверил его эффективность.

Читать далее
Всего голосов 74: ↑68 и ↓6+62
Комментарии123

Как установить Kubernetes на сервер Ubuntu без Docker

Время на прочтение3 мин
Количество просмотров12K
image

Kubernetes прекращает поддержку Docker. Теперь, вся тяжелая работа, которую вы вложили в изучение, сильно изменится. Даже с самого начала пути использование Kubernetes не будет прежним.

Я говорю о самой установке инструмента управления контейнерами. Вы, конечно, не можете развернуть Kubernetes так же, как когда-то — установив Docker в качестве среды выполнения.

Вместе мы сейчас попробуем установить  Kubernetes на Ubuntu Server 20.04 без Docker-а.
Читать дальше →
Всего голосов 11: ↑7 и ↓4+3
Комментарии8

10 полезных приёмов для JavaScript-программистов

Время на прочтение5 мин
Количество просмотров29K
Как всем известно, JavaScript — это язык, который очень быстро развивается. В стандарте ES2020 имеется немало новых возможностей, с которыми вам, вероятно, захочется познакомиться поближе. Честно говоря, писать JS-код можно по-разному. Различные варианты кода, направленные на решение одной и той же задачи, способны дать один и тот же результат, но некоторые из этих вариантов кода могут оказаться значительно короче и чище других. Для того чтобы сделать код качественнее и понятнее, можно пользоваться всяческими полезными приёмами. О некоторых из таких приёмов речь пойдёт в материале, перевод которого мы сегодня публикуем. Надеемся, то, о чём вы сегодня узнаете, когда-нибудь вам пригодится.


Читать дальше →
Всего голосов 81: ↑48 и ↓33+15
Комментарии27

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

Время на прочтение10 мин
Количество просмотров13K
Примерно год назад мы в DataLine запустили сервис для поиска и анализа уязвимостей в ИТ-приложениях. В основе сервиса – облачное решение Qualys, про работу которого мы уже рассказывали. За год работы с решением мы провели 291 сканирование для разных сайтов и накопили статистику по распространенным уязвимостям в веб-приложениях. 

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


Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии12

Лучшие практики Kubernetes. Организация Kubernetes с пространством имен

Время на прочтение6 мин
Количество просмотров15K
Лучшие практики Kubernetes. Создание небольших контейнеров

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

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



В большинстве дистрибутивов Kubernetes кластер «выходит из коробки» с пространством имен, имеющим название «default». На самом деле существует три пространства имен, с которыми Kubernetes имеет дело: default, kube-system и kube-public. В настоящее время Kube- public используется не так уж часто.
Всего голосов 23: ↑18 и ↓5+13
Комментарии2

Практическое руководство по борьбе с утечками памяти в Node.js

Время на прочтение8 мин
Количество просмотров20K
Утечки памяти похожи на сущности, паразитирующие на приложении. Они незаметно проникают в системы, поначалу не принося никакого вреда. Но если утечка оказывается достаточно сильной — она способна довести приложение до катастрофы. Например — сильно его замедлить или попросту «убить».



Автор статьи, перевод которой мы сегодня публикуем, предлагает поговорить об утечках памяти в JavaScript. В частности, речь пойдёт об управлении памятью в JavaScript, о том, как идентифицировать утечки памяти в реальных приложениях, и о том, как с бороться с утечками памяти.
Читать дальше →
Всего голосов 42: ↑41 и ↓1+40
Комментарии5

Учимся разворачивать микросервисы. Часть 1. Spring Boot и Docker

Время на прочтение7 мин
Количество просмотров89K


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


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


Изначально я разбил создание проекта на несколько шагов:


  1. Создать два сервиса — 'бекенд' (backend) и 'шлюз' (gateway), упаковать их в docker-образы и настроить их совместную работу


    Ключевые слова: Java 11, Spring Boot, Docker, image optimization


  2. Разработка Kubernetes конфигурации и деплой системы в Google Kubernetes Engine


    Ключевые слова: Kubernetes, GKE, resource management, autoscaling, secrets


  3. Создание чарта с помощью Helm 3 для более эффективного управления кластером


    Ключевые слова: Helm 3, chart deployment


  4. Настройка Jenkins и пайплайна для автоматической доставки кода в кластер


    Ключевые слова: Jenkins configuration, plugins, separate configs repository



Каждому шагу я планирую посвятить отдельную статью.


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

Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии31

Учимся разворачивать микросервисы. Часть 2. Kubernetes

Время на прочтение17 мин
Количество просмотров59K


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


Это вторая часть из серии статей "Учимся разворачивать микросервисы". В предыдущей части мы написали 2 простеньких микросервиса — бекенд и шлюз, и разобрались с тем, как их упаковать в docker-образы. В этой же статье мы будем организовывать оркестрацию наших docker-контейнеров с помощью Kubernetes. Мы последовательно составим конфигурацию для запуска системы в Minikube, а затем адаптируем ее для деплоя в Google Kubernetes Engine.

Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии16

Методики уменьшения размеров образов Docker

Время на прочтение10 мин
Количество просмотров36K
Задавались ли вы когда-нибудь вопросом о том, почему размер Docker-контейнера, содержащего всего одно приложение, может находиться в районе 400 Мб? Или, может быть, вас беспокоили немаленькие размеры образа Docker, содержащего единственный бинарник размером в несколько десятков Мб?



Автор статьи, перевод которой мы сегодня публикуем, хочет разобрать основные факторы, влияющие на размеры контейнеров Docker. Он, кроме того, собирается поделиться рекомендациями по уменьшению размеров контейнеров.
Читать дальше →
Всего голосов 61: ↑60 и ↓1+59
Комментарии11

Zabbix: мониторим всё подряд (на примере Redis'а)

Время на прочтение10 мин
Количество просмотров116K

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


Правда я не могу сказать, что понимаю "философию Zabbix'а". Несмотря на обширную подробную документацию на русском языке, мне было сложно погружаться в мир Zabbix'а — создавалось ощущение, что мы с разработчиками одни и те же вещи называем разными именами. Возможно потому, что Zabbix создавался админами для админов, а я всё-таки больше разработчик и пользователь.


Тем не менее, для запуска Zabbix'а и для мониторинга основных параметров компьютерных систем (процессор, память и т.п.) навыков обычного linux-пользователя хватает. Есть большое количество плагинов от сторонних разработчиков, расширяющих возможности Zabbix'а. Для моих нужд мне потребовалось настроить мониторинг Redis-сервера. Я немного покопался в коде имеющихся плагинов и на их примере выяснил, что архитектура Zabbix'а позволяет достаточно просто подключать к мониторингу любые параметры информационных систем, которые могут быть выражены в числовом виде.


Под катом — пример Zabbix-плагина с моим пояснением по терминологии Zabbix'а. Кому-то этот пример покажется наивным, ну а кому-то поможет проще освоиться с понятиями. В любом случае, Zabbix достаточно велик для того, чтобы ощупать его с разных сторон.

Читать дальше →
Всего голосов 8: ↑6 и ↓2+4
Комментарии20

Умный дом на колес… Алисах

Время на прочтение6 мин
Количество просмотров37K
Привет. В настоящее время я смог реализовать одну из возможностей умного дома, а именно полноценное голосовое управление светом через яндекс-сервис Алисы, в частности через Умную колонку Яндекс-станцию и Алису на телефоне. Но все также будет работать на любом устройстве, на котором она установлена. Световая инсталляция основана на 4-х RGBWW контроллерах MiLight FUT039 и WiFi контроллере MiLight ibox2 (который тянет 4 зоны управления), пульты MiLight (3 шт) настроены параллельно и работают как резервное управление при отсутствии интернета, но к голосовому управлению почти не имеют отношения, поэтому их учитывать не будем.

В чем отличие этой реализации? Схема управления проста в исполнении, не требует никаких навыков программирования и по затратам обойдется в примерно в стоимость умной колонки и микрокомпьютера Распберри 3, софт под микрокомпьютер совсем бесплатный. И не нужно подключать устройства, которыми управляешь, к серверам производителей. Интернет нужен для Алисы и сервисов Яндекса, да и распбери нужно выплюнуть наружу по порту 443.
Всего голосов 9: ↑9 и ↓0+9
Комментарии20

Официальная позиция Программных комитетов Highload++ и других IT-конференций на претензии к Игорю Сысоеву…

Время на прочтение4 мин
Количество просмотров65K
Вручение премии HighLoad++ Игорю Сысоеву в 2018 году

Официальная позиция Программных комитетов Highload++ и других IT-конференций на претензии к Игорю Сысоеву и Максиму Коновалову


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


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


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


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


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


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

Читать дальше →
Всего голосов 435: ↑431 и ↓4+427
Комментарии238

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду

Время на прочтение14 мин
Количество просмотров52K


Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo.

Когда я впервые стал тимлидом, я стал активно посещать конференции и читать умные книги об управлении командой. Однако в моей работе после этого менялось немногое. Я читал о том, каким я должен быть, в чём должен развиваться, но мне было неясно, что конкретно для этого нужно делать.

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

Рецепты, которыми я хочу поделиться, в большей степени пригодятся начинающим тимлидам: я записал их как своеобразное наставление себе самому несколько лет назад. Эта статья написана по мотивам моего доклада на TeamLeads Conf.
Всего голосов 88: ↑82 и ↓6+76
Комментарии16
1

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность