Pull to refresh
16
0
Что в имени тебе моём? @mas

User

Send message

Backblaze опубликовала статистику надёжности HDD за 2018 год

Reading time3 min
Views60K


Более пяти лет назад компания Backblaze опубликовала первый отчёт по использованию дисковых накопителей в своих серверах. Backblaze предоставляет услугу дешёвого облачного бэкапа. В основе их инфраструктуры — жёсткие диски потребительского класса. Компания собрала большую статистику по отказоустойчивости разных типов HDD. В то время парк накопителей Backblaze состоял в основном из дисков Seagate, Hitachi и WD, а самыми надёжными оказались диски Hitachi.

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

11 лучших шрифтов для программирования

Reading time3 min
Views278K
Много статей и сайтов сравнивают шрифты для программирования — всё это отличные ресурсы. Так зачем я опять поднимаю эту тему? Потому что сам всегда терялся в десятках шрифтов и не мог понять, какой лучше. Так что я опробовал много шрифтов и выбрал следующие для вас. Они довольно популярны и их легко получить. И самое главное, все эти шрифты бесплатны!

Я ранжировал шрифты по следующим показателям:

  • Насколько различимы схожие символы, такие как 0O, 1lI.
  • Легко ли читается шрифт (ширина строк, ширина/высота символов).
  • И мои личные предпочтения!

Все скриншоты сделаны в VSCode на одном фрагменте кода. Если не обозначено иное, то везде установлен размер "editor.fontSize": 14.
Читать дальше →

Практические советы, примеры и туннели SSH

Reading time13 min
Views241K

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

Знание нескольких трюков ssh полезно любому системному администратору, сетевому инженеру или специалисту по безопасности.
Читать дальше →

Введение в аннотации типов Python

Reading time6 min
Views311K

Введение



Автор иллюстрации — Magdalena Tomczyk


Вторая часть


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


Сохраняя идею динамической утиной типизации в современных версиях Python (3.6+) поддерживает аннотации типов переменных, полей класса, аргументов и возвращаемых значений функций:



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


Меня зовут Тихонов Андрей и я занимаюсь backend-разработкой в Lamoda.


В этой статье я хочу объяснить основы использования аннотаций типов и рассмотреть типичные примеры, реализуемые аннотациями из пакета typing.

Читать дальше →

Введение в Data classes

Reading time7 min
Views240K

Одна из новых возможностей, появившихся в Python 3.7 — классы данных (Data classes). Они призваны автоматизировать генерацию кода классов, которые используются для хранения данных. Не смотря на то, что они используют другие механизмы работы, их можно сравнить с "изменяемыми именованными кортежами со значениями по умолчанию".



Введение


Все приведенные примеры требуют для своей работы Python 3.7 или выше

Большинству python-разработчикам приходится регулярно писать такие классы:


class RegularBook:
    def __init__(self, title, author):
        self.title = title
        self.author = author

Уже на этом примере видна избыточность. Идентификаторы title и author используются несколько раз. Реальный класс же будет ещё содержать переопределенные методы __eq__ и __repr__.


Модуль dataclasses содержит декоратор @dataclass. С его использованием аналогичный код будет выглядеть так:


from dataclasses import dataclass

@dataclass
class Book:
    title: str
    author: str
Читать дальше →

Светодиодные лампы с/из Украины

Reading time3 min
Views43K
Международные бренды, выпускающие светодиодные лампы, можно пересчитать на пальцах одной руки, но в каждой стране есть множество локальных брендов. Большинство ламп, которые я протестировал на Lamptest.ru, продаются только в России, но сайтом пользуются и в других странах. Михаил Рыбинцев смог переправить мне из Киева 14 ламп семи украинских брендов.

Читать дальше →

Как выбрать батарею для ИБП

Reading time6 min
Views31K
Батарея – самый важный компонент ИБП. И самый дорогой. К тому же, ещё и обладающий определенным жизненным циклом. Стало быть, рано или поздно, вопрос замены батареи обязательно встанет.
Хорошие АКБ служат много лет, почему бы уже сегодня не заглянуть в завтрашний день, чтобы понять, что станется с нашими вложениями в «железо»? Часто бывает так, когда что-то хорошее стоит очень дорого, а через некоторое время становится легкодоступным.
При выборе ИБП, возникает вопрос: какая аккумуляторная батарея в нём используется, и какая подходит для замены?
Поэтому, для начала поговорим немного о технологиях и типах батарей.

Какие бывают батареи ИБП
«Начинка» у АКБ бывает разная. Начнём с самой распространенной – со свинцово-кислотных аккумуляторов.
Читать дальше →

Основы электробезопасности при проектировании электронных устройств

Reading time12 min
Views70K
Привет, Хабр!

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


Тема это большая и сложная, но я постараюсь выделить основные моменты — не в последнюю очередь на основании ошибок, которые я видел во всевозможных реальных устройствах и проектах, в том числе публиковавшихся на Хабре. Я не буду долго и нудно перечислять ГОСТы, но перечислю совсем базовые вещи, которые необходимо понимать и соблюдать, чтобы не убить хотя бы себя (если вы планируете не убивать также и окружающих, то после завершения этой статьи не поленитесь пролистать и релевантные ГОСТы).

Итак, вы собрались делать устройство, которое как минимум одним своим концом включается в розетку.
Читать дальше →

Использование аккумулятора от iPhone при разработке носимой электроники

Reading time8 min
Views57K
Приветствую, читатель.

Довольно часто у меня возникает задача разработки портативных устройств с питанием от одной ячейки Li-ion аккумулятора. И, если заказчика обычно это не беспокоит, то у меня, как у опытного инженера, при виде такого ТЗ по спине пробегает дрожь. Это связано с тем, что оценка уровня заряда аккумулятора, а также оставшегося времени работы — это очень непростая задача, хотя на первый взгляд может показаться иначе.



Есть несколько вариантов действия в таком случае, о них поговорим ниже.
Читать дальше →

Git happens! 6 типичных ошибок Git и как их исправить

Reading time5 min
Views242K


Прим. перев.: На днях в блоге для инженеров любимого нами проекта GitLab появилась небольшая, но весьма полезная заметка с инструкциями, которые помогают сохранить время и нервы в случае различных проблем, случающихся по мере работы с Git. Вряд ли они будут новы для опытных пользователей, но обязательно найдутся и те, кому они пригодятся. А в конец этого материала мы добавили небольшой бонус от себя. Хорошей всем пятницы!

Все мы делаем ошибки, особенно при работе с такими сложными системами, как Git. Но помните: Git happens!
Читать дальше →

Пульсация экранов телевизоров

Reading time3 min
Views135K
У подавляющего большинства современных телевизоров экраны мерцают, причём уровень пульсации составляет 100% (экран полностью гаснет и загорается). Это может приводить к усталости глаз, головным болям и обострению нервных заболеваний.


Читать дальше →

Как собрать досовский COM-файл компилятором GCC

Reading time10 min
Views15K
Статья опубликована 9 декабря 2014 года
Обновление от 2018 года: RenéRebe сделал на базе этой статьи интересное видео (часть 2)

В минувшие выходные я участвовал в Ludum Dare #31. Но даже до объявления тем конференции из-за своего недавнего увлечения я хотел сделать олдскульную игру под DOS. Целевой платформой выбрана DOSBox. Это самый практичный способ запуска DOS-приложений несмотря на то, что все современные процессоры x86 полностью обратно совместимы со старыми, вплоть до 16-битного 8086.

Я успешно создал и показал на конференции игру DOS Defender. Программа работает в реальном режиме 32-битного 80386. Все ресурсы встроены в исполняемый COM-файл, никаких внешних зависимостей, так что игра целиком упакована в бинарник 10 килобайт.


Читать дальше →

Разработка умных устройств на примере контроллера теплого пола на ESP8266

Reading time11 min
Views24K
Хочу поделиться своим опытом разработки умного устройства. В этой публикации я опишу аппаратное (кратко) и программное (более подробно) обеспечение.

Контроллер предназначен анализировать показания датчиков (проводных и беспроводных) и поддерживать заданную (с учетом расписания, в т.ч. по дням недели) температуру в каждой отдельной зоне, путем включения/выключения котла и управления петлями водяного теплого пола с помощью термоголовок на коллекторе.
Читать дальше →

Идеальные часы

Reading time15 min
Views230K
Идеальные часы для дома: честные и точные, простые и сложные, умные и чуткие, не большие и не маленькие, с волшебной настройкой под желания любого человека без кнопок и запутанных алгоритмов настройки, скромные и не требующие внимания, комфортно видимые днем и ночью, имеющие универсальное питание, легко меняющие цвет корпуса и индикации под окружающую обстановку и настроение, не бьющиеся при падении, легкие в изготовлении, белые.

Получилось?


Читать дальше →

Лампа времени

Reading time5 min
Views33K
Все мы ходим, о чем-то думаем…
Результат — в голову приходят различные идеи. А может наоборот?

В детстве смотрел фильм по телевизору (тогда интернета еще не было). Названия не помню — про пограничников. На погранзаставе было подозрение, что лампа, которая светит над домиком на “той стороне” передает информацию. Проверили — излучений не обнаружили.
Ну не нашли и ладно, а фраза засела в моей голове надолго.

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

— А что будет интересно людям?
— Много всего, но самое простое, это время.
Читать дальше →

Кубик Радика или лунные часы

Reading time8 min
Views25K
Некоторые геометрические фигуры и многогранники связаны с именами людей. Известны: треугольник Паскаля, квадрат Пифагора, Пирамида Хеопса. Захотел себе кубик. Рубик сотворил, почему и мне не сделать?
Технологии со времен Рубика ушли немного вперед, поэтому необходимо что-то технологичное, в духе времени, с использованием отечественных комплектующих и чуть более содержательное, чем квадрат Малевича.

Рубик использовал разноцветность — оставим.
Пик последнего времени: процессоры — используем и PIC и много процессоров.
У Рубика, чтобы получить результат надо немного поломать голову — интересное направление.
Существуют алгоритмы для сборки кубика Рубика — раскроем алгоритм работы кубика Радика.
Создано много схем для сборки кубика Рубика — нарисуем схему кубика Радика.
Кубик Рубика, это старинная штука — добавим старины и ударим ностальгией по современности.
На всех углах кричат про ГЛОНАСС — пощупаем.
Для читателей программ, а в особенности для начинающих писателей приложим программу работы кубика с подробными комментариями.

В результате совместного творчества голорук (сокр. от голова и руки) появился на свет кубик Радика.
image
Читать дальше →

Сервер очень точного времени stratum 1 на Garmin GPS

Reading time13 min
Views83K
GPS приемники можно использовать не только для определения местоположения, но и для получения сигналов точного времени. В статье я покажу как настроить сервер точного времени, использующий в качестве источника GPS и работающий с точностью до нескольких микросекунд. В качестве примера я использую приемник Garmin и ОС FreeBSD, но статья также будет полезна обладателям Linux и Windows.



UPD: сервер доступен по адресу stratum1.net Веб-морда: www.stratum1.net.

Читать дальше →

Руководство по материалам электротехники для всех. Часть 12. Финальная

Reading time8 min
Views31K


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

Глупый метеокороб на E-Ink

Reading time10 min
Views27K


Уже как полтора года назад я купил пару E-Ink экранов с eBay на базе драйвера SSD1606, как раз для метеостанции. И вот 4 месяца назад, перед новыми годом, появился он.
Внимание внизу есть Х изображений общей массой 3,2МБ

Cжатие и улучшение рукописных конспектов

Reading time9 min
Views38K
Я написал программу для очистки отсканированных конспектов с одновременным уменьшением размера файла.

Исходное изображение и результат:


Слева: исходный скан на 300 DPI, 7,2 МБ PNG / 790 КБ JPG. Справа: результат с тем же разрешением, 121 КБ PNG [1]

Примечание: описанный здесь процесс более-менее совпадает с работой приложения Office Lens. Есть другие аналогичные программы. Я не утверждаю, что придумал нечто радикальное новое — это просто моя реализация полезного инструмента.

Если торопитесь, просто посмотрите репозиторий GitHub или перейдите в раздел результатов, где можно поиграться с интерактивными 3D-диаграммами цветовых кластеров.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity