Search
Write a publication
Pull to refresh
34
0
Diamond Maker @Deeman

User

Send message

Про вред молчания 2

Reading time2 min
Views2.1K
Мне очень понравился пост «Про вред молчания». Хочу немного добавить.

Будем исходить из того, что хороших менеджеров у нас очень мало.

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

Простой способ расшарить localhost

Reading time1 min
Views15K
Иногда появляются проекты, глядя на которые возникает мысль: почему я не догадался сделать это раньше? Нечто подобное вы можете подумать о сервисе Showoff.io. Для веб-разработчика это простой и удобный способ тестировать проект в вебе и показывать заказчикам, расшарив локальный сервер через SSH-туннель. Просто устанавливаете программу, запускаете команду show с номером порта…

> gem install showoff-io
> show 3000


… и получаете рабочий URL типа https:// you.showoff.io. Работает даже через NAT.
Читать дальше →

Работаем с модулями ядра в Linux

Reading time7 min
Views269K

Ядро — это та часть операционной системы, работа которой полностью скрыта от пользователя, т. к. пользователь с ним не работает напрямую: пользователь работает с программами. Но, тем не менее, без ядра невозможна работа ни одной программы, т.е. они без ядра бесполезны. Этот механизм чем-то напоминает отношения официанта и клиента: работа хорошего официанта должна быть практически незаметна для клиента, но без официанта клиент не сможет передать заказ повару, и этот заказ не будет доставлен.
В Linux ядро монолитное, т.е. все его драйвера и подсистемы работают в своем адресном пространстве, отделенном от пользовательского. Сам термин «монолит» говорит о том, что в ядре сконцентрировано всё, и, по логике, ничего не может в него добавляться или удаляться. В случае с ядром Linux — это правда лишь отчасти: ядро Linux может работать в таком режиме, однако, в подавляющем большинстве сборок возможна модификация части кода ядра без его перекомпиляции, и даже без его выгрузки. Это достигается путем загрузки и выгрузки некоторых частей ядра, которые называются модулями. Чаще всего в процессе работы необходимо подключать модули драйверов устройств, поддержки криптографических алгоритмов, сетевых средств, и, чтобы уметь это правильно делать, нужно разбираться в строении ядра и уметь правильно работать с его модулями. Об этом и пойдет речь в этой статье.
Читать дальше →

Что нам стоит сеть построить

Reading time5 min
Views11K
  Думаю каждому (а если и не каждому, то многим) из нас (сисадминов) хоть раз, да ставилась задача об объединении нескольких удаленных офисов в единую корпоративную сеть, и каждый находил/выбирал свое решение.
  В настоящие время, существует множество различных решений, для реализации которых можно использовать как специальные аппаратные решения, так и обычные компьютеры, с любой ОС на борту.
  В данной статье, хочу рассказать о том, как объединить три удаленных офиса в одну корпоративную сеть, с разными подсетями для каждого подразделения. Все это я предлагаю поднять используя только дистрибутив OpenBSD.

Нам понадобится:
  • Три ПК средней конфигурации (CPU 1,7Ghz, RAM 512Mb, HDD 20Gb, 2x Lan100Mb)
  • Статические IP адреса на WAN портах
  • Дистриб OpenBSD
  • 40 минут вашего драгоценного времени (включая установку ОС)
Читать дальше →

Простой цифровой генератор сигналов произвольной формы

Reading time2 min
Views36K


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

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

Станок с ЧПУ

Reading time5 min
Views177K
Станок с ЧПУ (Числовым Программным Управлением) – станок, работа которого подчиняется заранее заданной программе. Благодаря этому для обработки детали не нужен человек. Нарисовал на компьютере детальку, установил в станок заготовку, нажал пуск и пошел пить чай. По возвращении достаешь готовую детальку из станка. Фантастика? Совсем нет, такой станочек можно сделать самостоятельно!



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

Linux + 2 ISP. И доступность внутреннего сервера через обоих провайдеров

Reading time5 min
Views15K
Есть замечательная статья, в которой рассказывается, как это делается на Cisco. Но мы не хотим тратить $100500 на приобретение штампованных оттисков «Cisco Systems» на корпусе маршрутизатора.

Описание проблемы

Итак, суть проблемы: имеется два NAT через двух разных провайдеров, локальная сеть, в которой есть сервер и который должен быть публичным и доступным через оба NAT. У провайдеров разные приоритеты: сначала задействуется первый, потом второй.

Если пакет вошёл через первого провайдера, он NAT-ится на наш сервер, обрабатывается, образуется ответный пакет, который выходит через первого провайдера и уходит туда, откуда пришёл первый пакет. Хорошо.

Если пакет вошёл через второго провайдера, он NAT-ится на наш сервер, обрабатывается, образуется ответный пакет, который выходит через первого провайдера… а почему? Потому, что сначала в Linux происходит маршрутизация, а потом уже SNAT. Итак, при маршрутизации пакету назначается следующий узел — шлюз первого провайдера (по умолчанию). Потом происходит отслеживание соединения — conntrack замечает, что этот пакет является ответом на другой, и заменяет адрес отправителя адресом, который выдал нам второй провайдер. А потом пакет направляется через интерфейс первого провайдера на его шлюз. Как правило, провайдер блокирует пакеты, адресом отправителя которых указан адрес не из их подсети. Плохо.

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

Очнитесь, на дворе XXI век

Reading time5 min
Views32K


Начать статью я хотел бы с констатации того факта, что прямо за окном находится 2011 год (пруфлинк), середина апреля. Напоминаю я это в первую очередь себе, поскольку меня периодически посещают в этом сомнения. Дело в том, что как по работе, так и ради хобби я часто читаю код на С++, написанный лет 10-20 назад (но поддерживаемый и поныне) или код написанный совсем недавно, но людьми, которые учились программировать на С++ те же 20 лет назад. И вот после этого у меня и возникает ощущение, что никакого прогресса за эти годы не было, ничего не менялось и не развивалось, а по Земле до сих пор бродят мамонты.
Читать дальше →

LED монитор состояния Continuous Integration сервера

Reading time4 min
Views7.5K
Активное внедрение в компании Continuous Integraion серверов на основе Jenkins (fork Hudson-а) породило много разговоров о «красной лампе» — обычной такой лампе, которая бы стояла у руководителя разработки и сигнализировала в случае неуспешного билда. Интерес взял вверх, и в выходные перешел от слов к делу. В результате, получилось такое устройство:


Что оно умеет:
  • по USB подключаться к компьютеру;
  • отслеживать статус шести проектов Jenkins;
  • выводить информацию о текущем состоянии, используя 4 варианта индикации (два цвета по два режима работы).


Построено оно на базе популярной платформы Arduino (точнее, его не менее популярного клона — Seeeduino).

Основная концепция устройства проста:
  1. На рабочей машине запускается программа, которая слушает статус заданных проектов Jenkins;
  2. При изменении статуса, программа отправляет по UART (через Serial Port, он же COM порт) в Arduino определенный сигнал;
  3. Arduino принимает сигнал и включает соответсвующий светодиод в нужном режиме.

Кажется, что все очень просто? А так оно и есть:

Команда dd и все, что с ней связано

Reading time4 min
Views650K

В UNIX системах есть одна очень древняя команда, которая называется dd. Она предназначена для того, чтобы что-то куда-то копировать побайтово. На первый взгляд — ничего выдающегося, но если рассмотреть все возможности этого универсального инструмента, то можно выполнять довольно сложные операции без привлечения дополнительного ПО, например: выполнять резервную копию MBR, создавать дампы данных с различных накопителей, зеркалировать носители информации, восстанавливать из резервной копии данные на носители и многое другое, а, при совмещении возможностей dd и поддержке криптографических алгоритмов ядра Linux, можно даже создавать зашифрованные файлы, содержащие в себе целую файловую систему.
Опять же, в заметке я опишу самые часто используемые примеры использования команды, которые очень облегчают работу в UNIX системах.
Читать дальше →

5 причин отказаться от оценок

Reading time2 min
Views5.2K
В нашей компании мы не оцениваем работу. Ни в часах, ни в поинтах, ни в зеленых крокодилах. Совсем не оцениваем. Если вы давно хотели отказаться от оценок, но не знали, почему, вот вам пять причин.

1. Вы не будете тратить время на оценки


Оценки занимают время. Даже если вы оцениваете в абстрактных поинтах, играя в покер, все равно тратится прилично времени. А что, если вы хотите улучшить точность оценок? Тогда вы собираете данные, анализируете данные и обсуждаете результаты анализа. Все это тоже занимает прилично времени. Но подумайте, вам на самом деле нужны оценки? Часто это waste. Лучше потратить время на что-то действительно полезное для продукта.
узнать остальные причины

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

Reading time2 min
Views13K
Многие помнят недавнюю статью про самодельный ядерный реактор. Вынужден признаться, что статья была первоапрельской шуткой, на редкость удавшейся.

В этой краткой статье я хочу рассказать, как можно было быстро понять, что это шутка и какие я вижу ключевые факторы успешной первоапрельской статьи –это может пригодиться вам в написании ваших статей через год (или насторожить при чтении). Также стоит заметить, что аналогичные подтасовки очень часто есть и в обычных СМИ.

Итак, приступим (публикую в DIY чтобы все кто видели первую статью, увидели и опровержение).
Читать дальше →

Files Over Miles: P2P через браузер

Reading time1 min
Views7.8K

Постоянно сталкиваюсь с проблемой передачи пары файлов, для этого приходится использовать DropBox, обменники и тому подобные сервисы. Большинство обменников перегружено, имеют ограничения, тонну рекламы, низкую скорость.Торренты – больше предназначены для передачи крупных файлов, необходимо наличие приватного торрент-трекера, клиента.
Читать дальше →

Захват видео с сетевых камер, часть 1

Reading time8 min
Views103K
Сетевые видеокамеры постепенно вытесняют аналоговые, хоть и стоят они сейчас гораздо дороже. Сетевые обладают рядом очевидных приемуществ:
  • нет необходимости в отдельном регистраторе или плате захвата;
  • помехоустойчивость;
  • простая интеграция в существующую сеть;
  • нет ограничения по расстоянию;
  • наличие камер высокого разрешения;
  • просмотр камеры прямо с самой камеры по http;
  • наличие всевозможных настроек;
  • и др.

Нас интересует способ получения изображений с таких камер, для этого надо знать а как вообще они их передают? На наше счастье камеры используют существующие стандарты, а не то, что взбредёт в голову китайскому разработчику. Подавляющее большинство камер используют один или несколько способов передачи видео, это в основном Motion JPEG по HTTP, Motion JPEG по RTSP или H264 по RTSP. Также многие камеры могут передавать звук, но он нас не интересует сейчас.

В этой статье я рассмотрю эти способы передачи изображений с сетевых камер, а также приведу пример захвата таких изображений всё на том же Python'е.
Читать дальше →

Делаем качественный переплёт для любимой книги

Reading time7 min
Views208K

Вступление


Приветствую всех.

Люди любят читать. Но не все, и не всё. А то, что любят, не всегда можно найти в магазинах. А если и можно найти, то не всегда это по карману. Из этого следует один элементарный факт: что-то с этим надо делать. Конечно, можно читать с экрана монитора/ноутбука/телефона. Или распечатать и читать в разрозненных, пусть и упорядоченных, листочках. Кроме того (это более затратный вариант, но для любителя чтения он лучше), можно купить специализированную читалку на электронных чернилах. Да, она решает проблему, но… Спустя какое-то время начинаешь скучать по весу настоящей книги, по шелесту перелистывания бумажных страниц, и по кипе других подобных маловажных, но таких приятных сердцу мелочей.
И из этой неприятности тоже есть свой выход. Просто-напросто надо самому сделать нужную книгу.
Осторожно, под катом очень много фотографий.
Читать дальше →

Ядерный реактор – дома с нуля

Reading time4 min
Views446K
Некоторое время назад я публиковал статью о самодельных микропроцессорах, сегодня же мы затронем более сложную и щекотливую тему (особенно в свете событий на Фокусиме) – создание ядерного реактора, способного генерировать энергию в домашних условиях. И перед тем как вы начнете волноваться, вспоминая о негативных опытах в прошлом (см. Радиоактивный бойскаут – наковырявший прилично амерция-241 из детекторов дыма) заранее скажу, что все что описано в этой статье – относительно безопасно (по крайней мере не опаснее работы с фтороводородной кислотой дома), но крайне не рекомендуется к повторению. Перед любыми действиями проконсультируйтесь со своим адвокатом — законы разные в разных странах. Много кто уже сидит.
Читать дальше →

Определите свое местоположение по WiFi сети

Reading time1 min
Views7.6K
Простой скрипт. Определяет местоположение. Вы должны работать через Wifi.

iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' |
sed 's/.*/{version:1.1.0,host:maps.google.com,request_address:true,address_language:'${LANG/.*/}',wifi_towers:[{mac_address:"&",signal_strength:8,age:0}]}/' |
curl -sX POST -d @- www.google.com/loc/json |
sed -e 'h;s/.*latitude":\([^,]*\).*/\1/;G;s/\n[^\n]*longitude":\([^,]*\).*/,\1\n/;s|^|http://maps.google.com/maps?q=|;x;s/[,{]/\n/g;s/["}]//g;s/:/\t/g;s/\n//;G'

Не забудьте поставить curl.

В моем случае правильно определил город и улицу, ошибся с номером дома на 4.

Как это работает? Google собирает информацию о том, где расположены какие точки доступа (по MAC).
Первая часть (iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' ) — это просто определение мака.

ФБР просит помощи в расшифровке сообщения 1999 года

Reading time1 min
Views14K
ФБР обратилось за помощью к сообществу гражданских криптоаналитиков за помощью в расшифровке предсмертного послания, которое было найдено 30 июня 1999 года в карманах жертвы преступления Рикки Маккормика (Ricky McCormick) из Сент-Луиса.

Скан записок на сайте ФБР

ФБР сообщает, что «несмотря на тщательную работу отдела криптоанализа (CRRU) и Американской ассоциации криптограмм, значение этих двух зашифрованных записок остаётся загадкой».
Читать дальше →

Аккуратная настройка клавиатуры

Reading time4 min
Views31K
Вокруг нас появляется все больше людей, которые знают, чем дефис отличается от минуса, минус от тире, а знак дюйма от кавычек. Что там говорить, мне вчера секретарша прислала письмо, оформленное типографически точно. Для того, чтобы немного приблизиться к совершенству, не обязательно отягощать себя открытым окном «дополнительные символы» и унылым копипастом оттуда.
Большинство проблем в современных оконных менеджерах решается штатными средствами. Но что делать тем, кто хочет иметь возможность в одно нажатие набирать какие-нибудь экзотические символы, наподобие знака бесконечности (∞), интеграла (∫) или карточных мастей ()?
Под катом я расскажу и как настроить клавиатуру для правильной типографики («—») штатными средствами, и как расширить возможности до быстрого набора любых символов.
Поехали!

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity