Pull to refresh
0
0
Виктор @Tippler

User

Send message

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

Reading time 12 min
Views 68K
Привет, Хабр!

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


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

Итак, вы собрались делать устройство, которое как минимум одним своим концом включается в розетку.
Читать дальше →
Total votes 172: ↑167 and ↓5 +162
Comments 281

Зацените: сделал стол

Reading time 6 min
Views 144K


TL;DR В статье описывается мой опыт постройки стола c нуля из фанеры. От проектирования до сборки.

Я очень долго страдал от плохих столов. Все они неудобные, плохого качества, маленькие и, самое главное, ШАТКИЕ. Более-менее приличные столы стоили тысячи долларов. В итоге я решил изготовить стол самостоятельно.

Основные требования к столу:

  • Устойчивость! Предметы на столе не должны трястись, если резко положить руки на стол или оттолкнуться от него. Мой стол весит ~120кг. С его края можно делать сальтухи, при этом на другом конце паять SMD компоненты.
  • Ширина и глубина столешницы. Столы шириной 60 см — это унижение. Мне нужно иметь запас по глубине, чтобы можно было отодвинуть ноутбук вперед, и при этом получить достаточное рабочее пространство.
  • Вместительность. Мне нужны полки, чтобы разместить там оборудование: паяльники, лабораторный блок питания, осциллограф, аудио усилитель и т.д. При этом полки должны быть так же устойчивы, как и стол.
  • Цена. Я не готов выложить за стол несколько тысяч долларов. Мой стол обошелся в ~$300 с учётом покупки всего инструмента для сборки и покраски.
Total votes 261: ↑250 and ↓11 +239
Comments 559

«Цифровое книгопечатание» или мой опыт в мобильной оцифровке книг

Reading time 6 min
Views 33K

Любите ли вы книги так, как люблю их я...


Детство и юность, проведенная в маленьком городе, где в районной библиотеке из энциклопедий был лишь "Большой энциклопедический словарь" приучила к бережному, практически благоговейному отношению к любой технической книге. Я понимаю, почему люди пережившие блокаду все время держали дома запас продуктов. Первое время, получив доступ к более или менее скоростному интернету все время хотелось скачивать новые книги и сохранять их на жестком диске, сохранять, сохранять :). Потом появился twirpx и я понял, что книги, как и знания, должны участвовать в постоянном круговороте, иначе они мертвы. Стоило один раз отсканировать монографию своего научного руководителя и услышать десятки отзывов скачавших, как лавину уже было не остановить. Я заметил, что сегодня поделившись редкой книгой, завтра я увижу две, а то и три не менее редких, которыми поделились другие.


image
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Comments 143

“Оказавшись перед Гвидо, что ты ему скажешь” или диалоги о Python с Бобуком

Reading time 6 min
Views 15K
В августе @eyeofhell, voldar и их коллеги по сообществу MoscowPython начали записывать подкаст Python Junior. Это — расшифровка избранных моментов одного из выпусков.



Валентин Домбровский: Ты ведешь Telegram-канал addmeto. Говоришь про всякое прекрасное будущее, технологии и так далее. Какую роль Python будет играть в этом всем, на твой взгляд?

Григорий Бакунов aka bobuk: Очевидно, куда двигается все программирование. Мы чем дальше, тем ближе к Lego.

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

И поэтому Python сейчас так и рванул.

Аудио- и видеоверсия в конце
Total votes 35: ↑30 and ↓5 +25
Comments 23

Работаем в консоли быстро и эффективно

Reading time 9 min
Views 122K

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

Читать дальше →
Total votes 88: ↑85 and ↓3 +82
Comments 117

Как уйти на пенсию до 40 лет с миллионом долларов на счету в банке

Reading time 10 min
Views 239K

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




Карл Дженсен испытал то, что он называет «пробуждением», примерно в 2012-м году.

Он работал программистом в пригороде Денвера, писал код для медицинского оборудования. Работа была напряжённой: ему приходилось документировать каждый шаг для Управления по санитарному надзору за качеством пищевых продуктов и медикаментов США (FDA), а ошибка в коде могла навредить или даже убить пациента.

Дженсен зарабатывал порядка $110 000 в год, у него был определённый соцпакет, но, казалось, что всё это не окупает стресса. Он не мог расслабиться с семьёй после работы; бывало, что целые дни он проводил, обнимаясь с унитазом. Он похудел на 5 кг.

После одного особенно брутального рабочего дня, Дженсен погуглил вопрос «как мне рано уйти на пенсию?», и глаза его открылись. Он посовещался с женой и составил план: в следующие пять лет они экономили значительную часть доходов, серьёзно урезали расходы, пока не собрали порядка $1,2 млн.

Во вторник 10 марта 2017 года Дженсен позвонил своему боссу и предупредил об увольнении после 15 лет работы в компании. Однако он не увольнялся, а уходил на пенсию. Ему было 43.
Читать дальше →
Total votes 124: ↑91 and ↓33 +58
Comments 643

Изучаем процессы в Linux

Reading time 7 min
Views 156K

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

Данная статья в большей мере рассчитана на новичков в системном программировании и тех, кто просто хочет узнать немного больше о том, как работают процессы в Linux.
Читать дальше →
Total votes 64: ↑62 and ↓2 +60
Comments 60

Анализ графиков бинарных опционов или как я в очередной раз доказал себе, что халявы не существует

Reading time 6 min
Views 70K


Недавно я наткнулся на занимательное видео из разряда «Чтобы быстро стать богатым нужно всего лишь...». Видео начинается пафосным пересчитыванием солидной пачки денег и демонстрированием приличного счета. Далее парень показывает стратегию, которая основана на фразе «Ну вот смотрите на график, тут видно».


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

Читать дальше →
Total votes 125: ↑120 and ↓5 +115
Comments 191

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

Reading time 5 min
Views 232K


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

Все мы делаем ошибки, особенно при работе с такими сложными системами, как Git. Но помните: Git happens!
Читать дальше →
Total votes 63: ↑62 and ↓1 +61
Comments 62

Слёрм: видео занятий и организационные факапы

Reading time 4 min
Views 9.5K

Слерм


Записи занятий:


День 1


Вступление (Павел Селиванов). Автоматизация развертывания инфраструктуры. Ansible (Сергей Бондарев)
Docker, его устройство, Dockerfile, docker-compose (Павел Селиванов)
Знакомство с Kubernetes, начало (Павел Селиванов)
Знакомство с Kubernetes, продолжение (Павел Селиванов)
Знакомство с Kubernetes, завершение (Павел Селиванов)
Kubespray, тюнинг и настройка кластера Kubernetes (Сергей Бондарев)


День 2


Ceph, настройка кластера и особенности работы в продакшен (Сергей Бондарев)
Введение в Helm (Павел Селиванов)
Траблшутинг кластера (Павел Селиванов)


День 3


CI/CD, построение деплоя в кластер с нуля (Сергей Бондарев)


Бывают проблемы со звуком. Иногда видеоряд появляется не сразу. В записях нет практики и многих обсуждений.


А теперь — как все это было, с кровавыми подробностями.

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

Английский язык: взгляд инженера

Reading time 13 min
Views 90K

ДИСКЛЕЙМЕР


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

Здесь приводится опыт, который выдернул меня из состояния «читаю со словарем».




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

Возьмем такой предмет, как английский язык. Там куча понятий: 12 времен глагола, страдательный залог, причастия и т.п. Кто их ввел? Видимо, некие ученые мужи, для которых английский язык был РОДНЫМ. Они жили себе в каком-нибудь Oxford’e или в Cambridg’e и вряд ли знали русский язык.

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

Вспомните, как вы в школе изучали русский язык. Подлежащее, сказуемое, дополнение, определение… и штук 200 правил, из которых куча исключений, которые все благополучно забывают, кроме собственно учителей русского. И которые потом нужны – максимум – при разборках с бюрократическими документами («казнить нельзя помиловать»).

Английская грамматика – туда же – что-то академическое и малополезное при изучении языка с нуля. Для человека, который более-менее свободно умеет стыковать из английских слов фразу, нужно просто учить новые слова.

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

Статья ориентирована именно на таких.
Читать дальше →
Total votes 95: ↑77 and ↓18 +59
Comments 288

Как освоить иностранный язык без преподавателя. Часть 2. «Пошаговая стратегия»

Reading time 12 min
Views 69K

Languages are not taught, they are learnt!


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


Примечание: Материалы статьи опираются на исследования Е.Д. Авериной, Д.Б. Никуличевой, Э.В. Гуннемарка и П.Нейшна, пропущенные через призму моего восприятия и опыт изучения 3 иностранных языков.

Читать дальше →
Total votes 46: ↑44 and ↓2 +42
Comments 65

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

Reading time 6 min
Views 31K


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

Во многих случаях «иноязычные» рабочие интервью при успешном прохождении позволяют прорубить окно не только в Европу, но и во многие другие страны мира, включая те, что расположены за океаном. О том, как лучше проходить англоязычные собеседования, мы и поговорим в этой статье.
Читать дальше →
Total votes 32: ↑29 and ↓3 +26
Comments 6

Создание игр на Python 3 и Pygame: Часть 1

Reading time 8 min
Views 354K
Многие разработчики приходят в разработку ПО, потому что хотят создавать игры. Не все могут стать профессиональными разработчиками игр, но любой может создавать собственные игры из интереса (а может быть, и с выгодой). В этом туториале, состоящем из пяти частей, я расскажу вам, как создавать двухмерные однопользовательские игры с помощью Python 3 и замечательного фреймворка PyGame.

(Остальные части туториала: вторая, третья, четвёртая, пятая.)

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

Мы реализуем следующие функции и возможности:

  • простые стандартные GameObject и TextObject
  • простой стандартный Game object
  • простая стандартная кнопка
  • файл конфигурации
  • обработка событий клавиатуры и мыши
  • кирпичи, ракетка и мяч
  • управление движением ракетки
  • обработка коллизий мяча с объектами игры
  • фоновое изображение
  • звуковые эффекты
  • расширяемая система спецэффектов

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


Готовый исходный код выложен здесь.
Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Comments 4

Как наконец выпустить свою первую игру

Reading time 12 min
Views 30K
image

Есть такая вероятность, что в этом году вы наконец-то решили сделать собственную игру. Отличная цель! И она определённо того стоит!

Вы уже наверно много раз слышали один и тот же совет от сотен других людей: делайте игру простой. В своей замечательной статье Эдмунд Макмиллен писал «если вы новичок, то начинайте с малого, а потом сделайте игру ещё меньше». В столь же хорошем посте ему вторит Томми Рефенес: «Просто сделайте свою игру так, как можете, начинайте с малого, а об остальном думайте потом».

На канале Extra credits есть хорошее видео о том, что же значит «маленькая игра».

Но «простой» — это не стандартная единица изменения. Если вы никогда до этого не делали игр, то откуда вам знать, насколько проста или легка игра? Означает ли «простая» MMO ВСЕГО с тремя играбельными классами? Лёгкая игра — это открытый мир всего с двумя типами биомов и тремя деревьями технологий?

Я понимаю вашу растерянность.

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

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

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

Хорошая новость заключается в том, что вы можете создать интересную игру, при этом не попадаясь во все эти мешающие разработке ловушки.
Total votes 37: ↑35 and ↓2 +33
Comments 35

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Reading time 25 min
Views 1.4M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

Плюс в питоне есть немало регулярных плюшек. Например, re.split может добавлять тот кусок текста, по которому был разрез, в список частей. А в re.sub можно вместо шаблона для замены передать функцию. Это — реальные вещи, которые прямо очень нужны, но никто про это не пишет.
Так и родился этот достаточно многобуквенный материал с подробностями, тонкостями, картинками и задачами.

Надеюсь, вам удастся из него извлечь что-нибудь новое и полезное, даже если вы уже в ладах с регулярками.
Читать дальше →
Total votes 99: ↑98 and ↓1 +97
Comments 66

Почему ты не можешь сделать кэшаут

Reading time 13 min
Views 29K
Статья написана для начинающих инвесторов, которые оценивают риски инвестиций в криптовалюты, а не для опытных участников крипторынка — прим. пер.



Часть 1. Почему «цена» биткоина во многом фикция


В публичных дискуссиях и статьях в СМИ о биткоинах делаются некоторые предположения:

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

Всё это неправда.
Читать дальше →
Total votes 57: ↑52 and ↓5 +47
Comments 253

Освещение растений белыми светодиодами — о КПД и экономической эффективности

Reading time 7 min
Views 43K
После написания предыдущей статьи у меня самого остался не до конца решенным вопрос — а что же конкретно выгоднее купить и на сколько можно выиграть в дальней и ближней перспективе. Плюс остались некоторые неопределенности по эффективности светодиодов. А вопрос побуждает к поиску ответа на него, поэтому я продолжил разрабатывать это направление. Не скажу что получился материал на полноценную статью, но в качестве дополнения к предыдущей информация содержит существенно важные данные будет полезна.
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Comments 117

Пиролизный котел в быту, или когда цена на газ не имеет значения

Reading time 16 min
Views 155K
Можно ли построить систему отопления собственного жилища без газовой трубы так, чтобы это было комфортно, не утомительно и даже увлекательно? И что может получиться, если приправить всё это информационными технологиями?


Давайте вместе в этом разберемся.
Читать дальше →
Total votes 100: ↑97 and ↓3 +94
Comments 386

Освещение растений белыми светодиодами

Reading time 13 min
Views 264K
Интенсивность фотосинтеза под красным светом максимальна, но под одним только красным растения гибнут либо их развитие нарушается. Например, корейские исследователи [1] показали, что при освещении чистым красным масса выращенного салата больше, чем при освещении сочетанием красного и синего, но в листьях значимо меньше хлорофилла, полифенолов и антиоксидантов. А биофак МГУ [2] установил, что в листьях китайской капусты под узкополосным красным и синим светом (по сравнению с освещением натриевой лампой) снижается синтез сахаров, угнетается рост и не происходит цветения.


Рис. 1 Леанна Гарфилд, Tech Insider — Aerofarms

Какое нужно освещение, чтобы при умеренном энергопотреблении получить полноценно развитое, большое, ароматное и вкусное растение?
Читать дальше →
Total votes 54: ↑52 and ↓2 +50
Comments 287

Information

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