Pull to refresh
3
0
Дмитрий @microphone

User

Send message

DIY: солнечные часы, показывающие время цифрами

Reading time1 min
Views30K
image

Энтузиаст 3д-печати и автор блога Mojoptix, выступающий под ником Julldozer, представил свой проект «цифровых солнечных часов». Часы работают по традиционной для солнечных часов схеме: их необходимо поставить на солнце и направить на север. Интересной же особенностью этих часов являются особым образом выполненные прорези, благодаря которым в тени от корпуса (гномона) часов видно текущее время в виде привычных цифр.

Конфигурация прорезей кропотливо просчитана автором и воплощена в виде 3д-проекта, доступного для скачивания и распечатки всеми желающими. Проект в том числе размещён и на платформе Thingiverse, где энтузиасты обмениваются информацией о своих поделках. Судя по счётчику этого проекта, идея понравилась уже многим пользователям, а несколько десятков человек даже распечатали себе копию подобных часов.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments27

Будни багхантинга: еще одна уязвимость в Facebook

Reading time4 min
Views53K


Декабрь для меня получился наиболее удачным за четыре года участия в разнообразных программах bug bounty, и я хотел бы поделиться информацией об одной из обнаруженных уязвимостей. Речь пойдет о небезопасной обработке Request-URI (Request Target). На этот раз красивой комбинацией уязвимостей порадовал Facebook.
Читать дальше →
Total votes 104: ↑101 and ↓3+98
Comments8

Как начать летать самостоятельно, хоть на чем-то, с мотором

Reading time10 min
Views232K
Вторая статья для желающих начать летать самостоятельно.
Сегодня мы будем рассматривать варианты сжигания дохлых мамонтов (бензина) для приобретения кинетической энергии.

Парящий полет (первая статья)
  • Параплан
  • Дельтаплан
  • Планер

Моторный полет (под катом)
  • Самолет
  • Мотодельтаплан (дельталет)
  • Паратрайк (аэрошют)
  • Парамотор (карлсон, мотопараплан)
  • Мотопланер



Первый раз за штурвал самолета я сел в 18 лет. До первого самостоятельного вылета налетал 25 часов и совершил около 100 взлетов и посадок. Сейчас мой суммарный налет на всем, что летает — порядка 400 часов. Это жутко мало, чтобы считать себя опытным пилотом, но достаточно, чтобы подсесть на “летную иглу”. Приглашаю и вас стать авиазависимыми.
Запустить двигатель
Total votes 142: ↑133 and ↓9+124
Comments176

Кто звонил? Или обратный звонок с сотового на asterisk

Reading time6 min
Views25K

Часто попадали в ситуацию когда на мобильном обнаруживаешь пропущенный звонок с городского и при попытке перезвонить попадаешь на голосовое меню какой-нибудь фирмы и совершенно непонятно кто тебе звонил? Я часто, а также и клиенты нашей компании каждый день сталкиваются с этим… С этим решено было что-то делать. Все последующие действия актуальны для trixbox v2.8.0.4 (с некоторыми корректировками или, возможно, даже без них можно реализовать и на других системах)
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments20

Много бесплатных книг по программированию

Reading time7 min
Views345K
Читать дальше →
Total votes 202: ↑192 and ↓10+182
Comments42

Сервисы P2P-переводов денег с карты на карту Visa и Mastercard

Reading time5 min
Views301K

Задача: как получить деньги от другого человека здесь и сейчас?


Вы оказываете услуги, но при этом не предприниматель. Вы решили что-то продать. Вы расплачиваетесь за всех. Вам нужно погасить задолженность по кредитной карте. Вот лишь небольшой список тех ситуаций, когда нужно передать деньги от одного человека другому.
Вообще вариантов передачи денег несколько: отдать наличными, перевести электронными деньгами, оформить платеж через интернет-банк, сделать перевод с банковской кары на банковскую карту Visa или Mastercard. Каждый способ по-своему хорош, но карты все же рулят!
Мне было интересно сделать review российских сервисов P2P-переводов по банковским картам.

На Июль 2013 г. найдено 6 сервисов по переводу средств с карты на карту по технологиям Visa Money Transfer® и MasterCard MoneySend®:

Под катом можно найти конкретные рекомендации. Предлагаю общественности пользоваться, уточнять и дополнять.
Читать дальше →
Total votes 47: ↑40 and ↓7+33
Comments94

До свидания офис. Азия и фриланс, мой кисло-сладкий соус

Reading time5 min
Views218K
Привет!
В этой статье я хочу рассказать вам про мой путь из офиса во фриланс: мотивация, зарождение идеи, поставленные цели, вехи пути и полученный опыт.

Начать надо с главного. Я гедонист. Нет, правда! В хорошем смысле слова: сценарий «обколоться анашой» и тупеть для меня не очень интересен. Просто я думаю, что все в жизни должно быть классно и интересно. А если нет — сделай так чтобы было.
Этот текст я начал писать в ночном тайском автобусе, следующем с острова Пхукет в Бангкок. Одно из ребер графа Москва-Бангкок-Хошимин-Муине-Паттая-Пхукет-Панган-Самуи-Бангкок-Бали-Москва, растянутого во времени на 5 месяцев.



Одно важное замечание: я не сбегал, не валил, не заводил трактор.
Просто однажды осознал, что радость жизни теперь можно черпать большей ложкой, и эпоха офиса может быть сменена на хайлевел фриланс.
Что такое хайлевел фриланс? Это когда работаешь за нормальные 20-30 баксов в час; не общаешься с заказчиками-гопниками; не кидаешь, не ждешь кидалова; работаешь с полной отдачей меньше 40 часов в неделю (кто работает в офисе реальные 8 часов и не сгорает через полгода?); контрибьютишь в open-source проекты по мере надобности и заводишь свои… потому что хочется это делать!

Читать дальше →
Total votes 162: ↑135 and ↓27+108
Comments264

Полностью бесплатная двухфакторная аутентификация для Citrix Web Interface 5.x с использованием Mobile-OTP в качестве софт-токена

Reading time3 min
Views11K
Двухфакторная аутентификация — предоставление информации для входа в систему от двух различных типов аутентификации, в большинстве случаев первым источником является имя пользователя и пароль, которые являются неизменными и могут быть скомпрометированы (троянами, кейлоггерами и.т.д.). Для этого и применяется второй тип аутентификации, какое либо устройство, которое генерирует уникальный временный пароль/код, действующий в течении короткого периода (5-30 секунд), что обеспечивает безопасность даже если временный пароль перехвачен.
Кроме того, временный пароль генерируется устройствами, не подверженными рискам перехвата, обычно аппаратными ключами, например такими:
image

Citrix Web Interface «из коробки» поддерживает двухфакторную аутентификацию с использованием аппаратных ключей Aladdin SafeWord и RSA SecurID, стоимость которых колеблется в пределах 25-50USD, а также двухфакторную аутентификацию с использованием RADIUS сервера, с помощью которой можно подключать ключи подешевле (около 5USD)

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

Бесплатных софт-токенов для телефонов на рынке достаточно много, например Google Authenticator, но наш выбор пал на проект Mobile-OTP по следующим причинам:

  • наличие клиентов для всех телефонов (а не только для ios/android/blackberry) — J2ME,WP7,PalmOS,webOS,Maemo,Openmoko
  • дополнительная защита пинкодом (чего нет в Google Authenticator), то есть даже при утере устройства временный пароль без пина не сгенерится
  • Наличие исходников для всех клиентов — можно пересобрать со своим брендингом, если очень надо

Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments0

Схема разделения секретной визуальной информации

Reading time6 min
Views25K
Доброго времени суток, Хабрапользователи!

Визуальная криптография [1] впервые была введена Мони Наором и Ади Шамиром в 1994 году [3]. Она используется для шифрования изображения или текста, представленного в виде изображения. Основная идея модели визуальной криптографии состоит в разбиении исходного изображения на несколько шифрованных («теневых» изображений, shadow images), каждое из которых не дает никакой информации об исходном изображении кроме, может быть, его размера (изображение – а-ля «белый шум»). При наложении шифрованных изображений друг на друга, можно получить исходное изображение. Таким образом, для декодирования не требуется специальных знаний, высокопроизводительных вычислений и даже компьютера (в случае, если распечатать теневые изображения на прозрачных пленках). В случае использования этого алгоритма в компьютерных системах, наложить все части изображения друг на друга можно используя логические операции AND, OR, XOR (или установив более высокую степень прозрачности в графическом редакторе). Данная технология обладает криптоустойчивостью за счет того, что при разделении исходного изображения на множество шифроизображений происходит случайным образом.

Читать дальше →
Total votes 52: ↑44 and ↓8+36
Comments26

Пишем свой bootloader

Reading time12 min
Views63K
Это статья была написана для людей, которым всегда интересно знать как работают разные вещи. Для тех разработчиков которые обычно пишут свои программы на высоком уровне, C, C++ или Java — не важно, но при этом столкнулись с необходимостью сделать что-то на низком уровне. Мы будем рассматривать низкоуровневое программирование на примере работы bootloader-а.

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


Читать дальше →
Total votes 101: ↑91 and ↓10+81
Comments23

Видео лекций курса «Операционные системы» с Алексеем Брагиным в МГТУ им. Баумана

Reading time1 min
Views82K
Месяц назад здесь было объявлено, что image Алексей Брагин теперь читает авторский курс лекций об операционных системах. С тех пор Алексей успел провести уже несколько занятий, которые были записаны на видео. Думаю, вполне логичным шагом будет поделиться этими записями с сообществом. Что нам стоит поступить так же как, к примеру, сделал MIT?

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

Читать дальше →
Total votes 107: ↑94 and ↓13+81
Comments65

Про двумерную упаковку: online алгоритмы

Reading time12 min
Views29K
Это продолжение поста про оффлайн алгоритмы упаковки.

Суть задачи: имеем полубесконечную полосу — как в тетрисе, только без game over'а, и конечный набор прямоугольников. Данные о прямоугольниках поступают в режиме реального времени; каждый новый прямоугольник необходимо немедленно разместить и больше не двигать с места. Цель — минимизировать общую высоту упакованных прямоугольников.
Это online-вариация задачи об упаковке прямоугольников в полуограниченную полосу (2 Dimensional Strip Packing, 2DSP).

Чуть больше теоретических сведений можно найти в предыдущей статье, а пока, без лишних слов, перейдем к алгоритмам.
Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments14

Виртуальное прототипирование в Linux на примерах

Reading time3 min
Views48K
image

Так уж сложилось, что Linux для меня домашняя система более 5 лет. Я владею различными САПР системами под Windows и прекрасно вижу ту пропасть которая существует в этой области. Но вне зависимости от выбранной OC, не существует такого инструмента «сделать красиво» — нажал заветную кнопку и идея воплотилась в годную 3D модель/чертёж. Проектирование весьма длительный всесторонний процесс, от этапов тз до испытания образцов.И тут все средства хороши, от простого карандаша и бумаги, коробки пластилина до навороченной САПР с просчетом веса и прочими плюшками. Процесс в Windows выглядит аналогично и так-же приходится постоянно использовать «связки» различного софта для одного прототипа, но стоимость этого софта для хобби мягко говоря неподъемна.

В данном же случае речь пойдет о хобби, пусть и приносящем доход, но все же хобби. Я расскажу о софте, необходимом для создания реальных прототипов, которым пользуюсь под Debian testing с DE xfce. Мой выбор возможно не идеален, но для творчества вполне годится.
Итак, имеется некая идея в вакууме, необходимо найти инструмент для 3D визуализации с возможностью быстрого прототипирования средствами ЧПУ.
Читать дальше →
Total votes 80: ↑77 and ↓3+74
Comments31

Про двумерную упаковку: offline алгоритмы

Reading time12 min
Views67K
Сегодня, дорогой Хабр, я расскажу тебе историю о комбинаторной оптимизации.
Издревле (как минимум, с начала прошлого века) математики задавались вопросом, как оптимально разместить некоторое количество пива нужных и полезных предметов в рюкзаке. Была сформулирована задача о ранце и ее подзадачи — тысячи их! — которые заинтересовали информатиков, криптографов и даже лингвистов.

От задачи о ранце отпочковалась задача об упаковке в контейнеры (Bin Packing Problem), одной из разновидностей которых является задача двумерной упаковки (2-Dimensional Bin Packing). Снова отбросив несколько вариаций, мы наконец придем к двумерной упаковке в полуограниченную полосу (2-Dimensional Strip Packing, 2DSP). Чувствуете, сколько интересного уже осталось за кадром? Но мы еще не закончили продираться сквозь классификацию. У 2DSP есть два варианта входных данных: когда набор упаковываемых объектов известен заранее (offline-проблема) и когда данные поступают порциями (online-проблема).

В этой статье рассматриваются алгоритмы решения offline-варианта 2DSP. Под катом немного матчасти и много картинок с цветными квадратиками.

В чем, собственно, проблема?


Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments14

Siklu — беспроводной гигабит без частот. Опыт инсталляции

Reading time2 min
Views69K
Перед провайдерами очень часто встает задача быстро пройти 2-3 км с высокой скоростью — подключить новый дом или группу домов, перейти реку или шоссе. Согласование и прокладка оптики занимает месяцы.
Сегодня я вам расскажу о решении, позволяющем построить гигабитный линк за пару часов — SIKLU. И не нужно проходить долгую процедуру согласования частот — оборудование просто регистрируется в Роскомнадзоре.

Диапазон 70-80 ГГц — это новая страница развития беспроводных технологий. Для беспроводной связи выделено целых 10 ГГц (71-76 и 81-86 ГГц), а такая широкая полоса дает возможность развить гигабитные скорости. До недавнего времени оборудование миллиметрового диапазона было очень дорого — многие десятки тысяч долларов за пролёт, что отпугивало большинство провайдеров. Но вот появилось первое недорогое решение (от $4000 за пролёт), и рынок тут-же оживился. В результате уже за первый год системы EtherHaul компании Siklu заняли доминирующие позиции на рынке. Мы протестировали доступное решение со встроенной однофутовой антенной, позволяющее создать надежный (99,995%) канал на расстоянии до 2 км при любой погоде. Само устройство компактное, лёгкое, с медными и оптическими гигабитными интерфейсами на борту.


Читать дальше →
Total votes 59: ↑56 and ↓3+53
Comments60

Теория радиоволн: антенны

Reading time4 min
Views400K
image

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

Читать дальше →
Total votes 104: ↑99 and ↓5+94
Comments45

Практическая оптимизация и масштабируемость MySQL InnoDB на больших объёмах данных

Reading time5 min
Views20K
Данный пост не будет рассказывать про индексы, планы запросов, триггеры для построения агрегатов и прочие общие способы оптимизации запросов и структуры БД. Так же не будет рассказывать про оптимальные настройки с префиксом innodb_. Возможно прочитав текст ниже вы лучше поймёте смысл некоторых из них. В данном посте речь пойдёт об InnoDB и его функционирование.

Какие проблемы может помочь решить этот пост?


  • Что делать если у вас в списке процессов множественные селекты которым казалось бы никто не мешает?
  • Что делать если всё хорошо настроено, запросы пролетают как ракеты и список процессов постоянно пустой, но на сервере высокий LA и запросы начинают работать немного медленнее, ну например вместо 100мс получается 500мс ?
  • Как быстро масштабировать систему, когда нет возможности всё переделать?
  • У вас коммерческий проект в конкурентной среде и проблему надо решать немедленно?
  • Почему один и тот же запрос работает то быстро то медленно?
  • Как организовать быстрый кеш и поддерживать его в актуальном состояние?

Читать дальше →
Total votes 45: ↑39 and ↓6+33
Comments46

10 лучших инструментов для разработки и администрирования MySQL

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

Большинство реляционных баз данных, за исключением MS Access, состоят из двух отдельных компонентов: «back-end», где хранятся данные и «front-end» — пользовательский интерфейс для взаимодействия с данными. Этот тип конструкции достаточно умный, так как он распараллеливает двухуровневую модель программирования, которая отделяет слой данных от пользовательского интерфейса и позволяет сконцентрировать рынок ПО непосредственно на улучшении своих продуктов. Эта модель открывает двери для третьих сторон, которые создают свои приложения для взаимодействия с различными базами данных.

В Интернете каждый может найти много продуктов для разработки и администрирования баз данных MySQL. Мы решили собрать 10 самых популярных инструментов в одной статье, чтобы вы смогли сэкономить свое время.
Читать дальше →
Total votes 64: ↑61 and ↓3+58
Comments67

Самый частый шаблон SQL инъекций в РНР — бесполезное экранирование символов

Reading time2 min
Views35K
По роду своей деятельности, мне приходится выполнять аудиты безопасности исходного кода веб-приложений.
Много веб-приложений и много кода…

В этой статье я хотел бы поделиться одной простой (очень простой) истиной и статистикой, которые вывел и многократно проверил в течении трех последний лет просмотра тонн РНР кода.

Не секрет, что уязвимости внедрения операторов СУБД (SQL injections) являются самыми распространенными из всех серверных уязвимостей веб-приложений. Есть платформы и фреймворки, где такие вещи практически полностью исключены, например ORM'ом и прочим. Но статистика упорно говорит нам об абсолютном преобладании на просторах Интернета веб-приложений с простыми конкатенированными SQL запросами. Кроме того, есть случаи, где ORM вообще применим быть не может. Например, когда от пользовательских данных должны зависеть не только параметры выражений, но и сама логика запроса на уровне операторов.
Читать дальше →
Total votes 90: ↑78 and ↓12+66
Comments148

Разработка сайта — от первой встречи с заказчиком до сдачи проекта, или как быть фрилансером и выжить

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

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

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

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

Кому интересно — добро пожаловать под кат!
Читать дальше →
Total votes 89: ↑78 and ↓11+67
Comments64
1

Information

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