Как стать автором
Обновить
8
0
Александр Марцинкевич @ariel32

Пользователь

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

Видеоглазок с минимум затрат

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

Добрый день, хабрапользователи.



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

Примерно вот так:
видео


Сказано — сделано!
Прочитать как сделано
Всего голосов 214: ↑200 и ↓14+186
Комментарии157

Алгоритм нахождения простых чисел

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

Оптимизация алгоритма нахождения простых чисел


2 3 5 7 11 13 17 19 23 29 31… $250.000…

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

Алгоритм был придуман и тутже реализован на изучаемом языке. Программа запрашивала у пользователя число N и искала все простые числа до N включительно. После первого успешного теста сразу же возникло непреодолимое желание ввести N = «много». Программа работала, но не так быстро как хотелось бы. Естественно, дело было в многочисленных проверках (порядка N*N/2), поэтому пришлось избавиться от лишних. В итоге получилось 5 похожих алгоритмов каждый из которых работал быстре предыдущего. Недавно захотелось их вспомнить и реализовать, но на этот раз на Python.
Читать дальше →
Всего голосов 88: ↑58 и ↓30+28
Комментарии64

Охранная система, проект умный дом (часть 1)

Время на прочтение3 мин
Количество просмотров13K
imageМногие хотели обезопасить свою квартиру от взлома, ведь большинство предлагаемых на рынке систем вряд ли будет многим по карману. Однако имея опыт и знания в электронике и микропроцессорной техники это можно легко сделать самому. Ниже будет рассказано, как из подручных и недорогих средств можно сделать «умный» охранный шлейф с возможностью отображать данные на компьютере, планшете или телефоне, имеющим операционку. 2-ая часть.
Читать дальше →
Всего голосов 165: ↑157 и ↓8+149
Комментарии53

Собираем домашний сервер в корпусе из обувной коробки

Время на прочтение4 мин
Количество просмотров30K
Недавно назрел вопрос о торрент качалке + небольшом файловом хранилище для дома. Тратить много денег на это не хотелось, поэтому в качестве корпуса решено было использовать коробку из под обуви, найти которую труда не составит никому. Инструмент и материалы также использовались самые подручные, так что подобный корпус под силу собрать каждому. Весь процесс сборки занял у меня всего около 4 часов. На выходе получился неплохой корпус с продуманной вентиляцией и практически бесшумная система.
Читать дальше →
Всего голосов 155: ↑97 и ↓58+39
Комментарии159

Как стать системным администратором — пособие для начинающих (часть 1)

Время на прочтение10 мин
Количество просмотров821K
Так получилось, что эту весну я провёл в поисках/собеседованиях людей аж на четыре вакансии, связанные с системным администрированием. Я пообщался с несколькими десятками людей и заметил характерные ошибки и проблемы, с которыми они сталкиваются. Излагаю то, что заметил, а так же свои мысли, как эти проблемы решить.

scope: начинающие системные администраторы, помощники системных администраторов и т.д. Опытным администраторам, а так же тем, кто имеет вполне конкретную специализацию будет если и интересно, то бесполезно.

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

Какие бывают системные администраторы?

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

NumPy, пособие для новичков. Часть 1

Время на прочтение19 мин
Количество просмотров242K
NumPyLogoNumPy — это расширение языка Python, добавляющее поддержку больших многомерных массивов и матриц, вместе с большой библиотекой высокоуровневых математических функций для операций с этими массивами.

Первая часть учебника рассказывает об основах работы с NumPy: создании массивов, их атрибутах, базовых операциях, поэлементном применении функций, индексах, срезах, итерировании. Рассматриваются различные манипуляции с преобразованием формы массива, объединение массивов из нескольких и наоборот — разбиение одного на несколько более мелких. В конце мы обсудим поверхностное и глубокое копирование.
Читать дальше →
Всего голосов 69: ↑65 и ↓4+61
Комментарии39

Уведомление о несанкционированном доступе к веб-приложению

Время на прочтение1 мин
Количество просмотров1.7K
Несмотря на то, что я использую по-настоящему длинные пароли и двухфакторную аутентификацию везде где возможно, я все равно переживаю, что кто-то взломает один из моих аккаунтов. Наиболее важный из них это Gmail.

На самом деле любой должен в первую очередь беспокоиться о своих емайл аккаунтах, поскольку это ахилесова пята любого онлайнового сервиса. Через емайл проходит столько важной информации, что это настоящий Клондайк для взломщика. Если у хакера есть доступ к вашему емайл аккаунту — скорее всего он получит доступ к остальным вашим аккаунтам.

Для этого я и сделал «канарейку» — симпатично выглядящее письмо-приманка, идея которого заставить взломщика открыть его. Вот как оно выглядит в моем инбоксе:



Это помеченное письмо от Barclays Private Banking на самом деле просто фальшивка. Если вы откроете его, то увидите вот что:



И открыв его вы выпускаете канарейку. Логотип компании внизу загружается с моего сервера. Скрипт записывает в лог IP адрес браузера и посылает SMS на мой телефон:



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

Готовая идея для веб-сервиса. Почему бы тебе не сделать это?
Всего голосов 176: ↑157 и ↓19+138
Комментарии85

nginx+FastCGI(over spawn-fcgi)+lua

Время на прочтение4 мин
Количество просмотров9.4K
И так у нас есть задача. Заставить работать вместе легкий веб-сервер nginx и lua(в данном случае lua через wsapi(lua web server API)-fastcgi).
Что нам потребуется? Ну для начала голова на плечах. Ну то есть не то, что бы она особо нужна, но пригодится.
А далее… А далее сервер в нашем случае с GNU/Linux на борту(но думаю что сойдет и, скажем FreeBSD), мы будем рассматривать на примере Ubuntu GNU/Linux, так сложилось исторически.
интересно?
Всего голосов 8: ↑5 и ↓3+2
Комментарии8

В поисках идеальной CAPTCHA

Время на прочтение16 мин
Количество просмотров40K
CAPTCHA, или Completely Automated Public Turing Tests to Tell Computers and Humans Apart (Полностью автоматический публичный тест Тьюринга для различения компьютеров и людей), была создана для того, что бы убедиться, что введенные данные не были сгенерированы компьютером. Эти своеобразные тесты обычно используются в Интернете для защиты форм регистрации и комментирования от спама. Если быть честным, я испытываю смешанные чувства насчет CAPTCHA. Она в большинстве случаев раздражает меня, но не смотря на это я использовал CAPTCHA в качестве защиты на некоторых сайтах.

В этой статье я хочу углубиться в поиск идеального решения проблемы растущего количества сгенерированного людьми спама. Мы взглянем на то, как и зачем используется CAPTCHA и ее влияние на юзабилити в поисках ответа на ключевые вопросы: что представляет из себя идеальная CAPTCHA и почему в качестве защиты предпочитают именно ее?
Читать дальше →
Всего голосов 119: ↑116 и ↓3+113
Комментарии133

Визуальная демонстрация алгоритмов машинного обучения

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


Кандидат наук из Федеральной политехнической школы Лозанны Басилио Норис создал замечательную программу, которая великолепно подходит для демонстрации некоторых задач, которые решают алгоритмы машинного обучения (классификация, кластеризация, регрессия — различными методами). В одной программе собраны библиотеки, алгоритмы и фрагменты кода, которые удалось найти. В отличие от Matlab, здесь GUI работает быстро в интерактивном режиме, поэтому получается очень красиво.

Дистрибутив:
MLDemos 0.3.2 for Windows (минимальные требования: XP SP3)
MLDemos 0.3.2 for Mac (минимальные требования: Snow Leopard)
MLDemos 0.1.3 for Linux 32bit (deb) (билд для: Ubuntu 10.04)
Всего голосов 78: ↑71 и ↓7+64
Комментарии13

Дорога к свету

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

Простейший робот из подручных средств



image
Наш простой робот

Многие, кто из нас сталкивался с вычислительной техникой, мечтали собрать своего робота. Чтобы это устройство выполняло какие-то обязанности по дому, к примеру, приносило пиво. Все сразу берутся за создание наисложнейшего робота, однако зачастую быстро обламываются в результатах. Своего первого робота, который должен был делать умищу фишек, мы так и не довёли до ума. По этому нужно начинать с простого, постепенно усложняя своего зверя. Сейчас мы поведаем тебе как из подручных средств, которые есть у каждого дома, можно создать простейшего робота, который будет самостоятельно передвигаться по твоей квартире.
Читать дальше →
Всего голосов 172: ↑165 и ↓7+158
Комментарии92

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

Время на прочтение1 мин
Количество просмотров1.6K
Многие мои публикации на хабре связаны с Data Mining и Data Extracting. Мне приятно, что они пользуются популярностью. В основном, это теоретические статьи с описанием методов, алгоритмов, но есть ряд практических статей.

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

Лично мне интересны не статистические данные — медиана, средняя температура по больнице и т.д., а именно скрытые взаимосвязи. Например, «разработчик на Assembler менее склонен к переезду в другой город» или «Java программисты с 10 годами опыта считают, что 5-летние С++ разработчики получают больше».

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

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

Спасибо.
Всего голосов 53: ↑46 и ↓7+39
Комментарии28

Лучшие шрифты для программирования

Время на прочтение4 мин
Количество просмотров246K
Статья написана в 2009 году, и с тех пор многое изменилось, в том числе появились некоторые альтернативные шрифты для программирования, например, Anonymous Pro.

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

Я выкладываю список из десяти моноширинных шрифтов, готовых к использованию. Некоторые из них идут в комплекте с современными операционными системами, но большинство можно бесплатно скачать из интернета. Отдельные, в том числе Consolas, являются частью коммерческого ПО.
Читать дальше →
Всего голосов 178: ↑161 и ↓17+144
Комментарии193

Суперкомпьютер IBM Watson усвоил знания 2-го курса медицинского вуза

Время на прочтение3 мин
Количество просмотров12K
На прошлой неделе компания IBM подтвердила серьёзные намерения по развитию дата-майнинга, объявив о выпуске системы на Hadoop для хранения и анализа данных, а также о больших инвестициях в это направление. Разрабатывая софт на базе open source технологии, IBM официально гарантирует Hadoop свою защиту и покровительство.

На другом фронте дата-майнинга IBM демонстрирует ещё более значительные успехи. Разработчики суперкомпьютера IBM Watson (который способен отвечать на вопросы, разбираясь в массиве неструктурированных данных) продолжают накачивать его БД медицинской информацией. По их словам, уже сейчас компьютер усвоил всю информацию, которую должен знать студент медицинского колледжа. И это только начало обучения.
Читать дальше →
Всего голосов 58: ↑55 и ↓3+52
Комментарии61

Полностью автономная камера наблюдения

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

В дороге


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

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

Читать дальше →
Всего голосов 278: ↑275 и ↓3+272
Комментарии161

Базовые алгоритмы нахождения кратчайших путей во взвешенных графах

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

Сформулируем определения и задачу.
Графом будем называть несколько точек (вершин), некоторые пары которых соединены отрезками (рёбрами). Граф связный, если от каждой вершины можно дойти до любой другой по этим отрезкам. Циклом назовём какой-то путь по рёбрам графа, начинающегося и заканчивающегося в одной и той же вершине. И ещё граф называется взвешенным, если каждому ребру соответствует какое-то число (вес). Не может быть двух рёбер, соединяющих одни и те же вершины.
Каждый из алгоритмов будет решать какую-то задачу о кратчайших путях на взвешенном связном. Кратчайший путь из одной вершины в другую — это такой путь по рёбрам, что сумма весов рёбер, по которым мы прошли будет минимальна.
Для ясности приведу пример такой задачи в реальной жизни. Пусть, в стране есть несколько городов и дорог, соединяющих эти города. При этом у каждой дороги есть длина. Вы хотите попасть из одного города в другой, проехав как можно меньший путь.
Читать дальше →
Всего голосов 79: ↑71 и ↓8+63
Комментарии31

Эффективная организация труда

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

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






Начну с принципов, стоящих за хорошо организованной работой:
  • информация структурирована, разнится по типу данных (документы, книги, музыка, видео, фото)
  • удобные, хорошо изученные, заточенные под себя рабочие инструменты
  • автоматизация повторяющихся действий
  • рабочая документация
  • профессиональная литература под рукой
  • овладение универсальными рабочими навыками(слепая печать, умение находить редкую информацию в интернете)
  • регулярное архивирование данных
  • набор девайсов


Подробности
Всего голосов 54: ↑41 и ↓13+28
Комментарии50

Экономия бензина с помощью Google Prediction API

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


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

Предсказание маршрута осуществляется на основе облачного сервиса Google Prediction API. На скриншоте видно слева, как просчитывается вероятность каждого маршрута.
Читать дальше →
Всего голосов 20: ↑16 и ↓4+12
Комментарии13

NetPing: конструктор для администратора и досуг для программиста

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


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

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

Речь пойдет про устройства NetPing. Эта российская разработка периодически упоминается на хабре, но детального рассказа я не встречал. Пусть эта статья будет продолжением серии «Оборудование российского производства». Мне достался самый универсальный прибор линейки – UniPing RS-232. Основная сфера его применения – удаленный мониторинг и управление множеством устройств в квартире, доме, офисе. Конечно, давно существует понятие «умный дом», но, как правило, это преподносится как вариант для состоятельных людей, хотя получают они черный ящик с жестко заданным, пусть и большим, набором функций. Однако, можно ведь все собрать и запрограммировать самому!

Интересно?
Всего голосов 145: ↑142 и ↓3+139
Комментарии74

Простой и надежный пароль – коллективное творчество

Время на прочтение4 мин
Количество просмотров251K
Перечитав массу сопутствующей литературы и просмотрев тонну хабратопиков (ссылки на интересные приведены в конце статьи), я решил обобщить информацию об основных методах генерации надежного и запоминающегося пароля.

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

Поговорим о методах взлома


Чтобы понимать всю глубину проблемы, пару строк посвящу методике взлома. Итак, как же злоумышленник может узнать/угадать/подобрать ваш пароль?
  1. Метод логического угадывания. Работает в системах с большим количеством пользователей. Злоумышленник пытается понять вашу логику при составлении пароля (логин+2 символа, логин наоборот, самые распространенные пароли и т.п.) и применяет эту логику ко всем пользователям. Если пользователей много, очень скоро произойдет коллизия и пароль будет угадан;
  2. Перебор по словарю. Этот вид атаки применяется, когда база данных с хешированными паролями слита с сервера. Может сочетаться с заменой букв (опечатки) или с подстановкой цифр/слов в начало или конец слова в качестве приставки или суффикса. Также используются словари, набранные в неверной раскладке клавиатуры (русские слова в английской раскладке);
  3. Перебор по таблице хешированных паролей. Передовой метод взлома паролей, когда хеши уже сгенерированы и остается только найти в базе соответствие хеша паролю. Работает очень быстро даже на слабых машинах и не оставляет никаких шансов владельцам коротких паролей.
  4. Другие методы: социотехника и социальный инжиниринг, использование keylogger'ов, снифферов, троянов и т.п.
Читать дальше →
Всего голосов 84: ↑63 и ↓21+42
Комментарии74

Информация

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