Pull to refresh
Ворч Ун @sav1812read⁠-⁠only

Разработчик

Send message

Как использовать секционные элементы HTML5

Reading time5 min
Views204K
Один славный малый Matt West c туманного альбиона, промышляющий фрилансом и предпринимательством, предложил нашему вниманию пост: «Как использовать секционные элементы HTML5».
Ниже приводится его перевод.




HTML5 предлагает набор секционных элементов, используя которые в своей разметке вы добавляете смысловую или семантическую нагрузку своим страницам, тем самым позволяя компьютерным программам лучше понимать их содержание.
Прочитав этот пост, вы научитесь применять секционные элементы на ваших веб-сайтах. Я постараюсь объяснить, в каких случаях лучше использовать тот или иной элемент и когда лучше прибегнуть к старому доброму .
Давайте начнем.
Читать дальше →

Как подружить MS Office и LibreOffice

Reading time5 min
Views232K
image
Здравствуй, читатель! Ты когда-нибудь занимался переводом своего офиса/школы/института/друзей на Linux? Помнишь, как долго и упорно ты доказывал, что это — путь добра и света? А помнишь первую проблему, из-за которой пришлось все вернуть назад? Дай угадаю. Первый документ созданный в LibreOffice или OpenOffice отказался корректно открываться в MS Office? Слезы, сопли и мольбы оставить Linux ни к чему не привели? Утри нос, читатель! Под катом — о том, как подружить LibreOffice 3.5 и MS Office 2010 так, чтобы все везде открывалось одинаково.

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

ThL T100S — смартфон на базе 8-ядерного процессора MT6592

Reading time8 min
Views90K
В ноябре 2013 года компания MediaTek официально представила настоящий восьмиядерный процессор MT6592, в котором, по словам компании, найден баланс между производительностью и энергопотреблением. Большинство Octa Core девайсов используют архитектуру big.LITTLE, при которой в каждый конкретный момент функционирует либо блок производительных, либо блок энергоэффективных ядер. MT6592, напротив, может работать в любой конфигурации, в том числе и все восемь одновременно.



Устройства, работающие на MT6592, массово поступили в продажу к концу 2013 года. Сейчас на рынке уже достаточно смартфонов с данным процессором, но мы решили сделать обзор на самый популярный и стильный среди них. Встречайте «железного человека» — ThL T100s.
Первая его партия составила всего 2000 устройств! Выход T100 в Китае вызвал такой огромный ажиотаж, что всю партию раскупили всего за 9 минут! Версия Ironman имеет уже наши стандарты связи — GSM и WCDMA. Новинку T100S — действительно кроме как флагманом, никак не назовешь. Это один из самых производительных на сегодняшний день китайских устройств. Но обо всем по порядку!
Читать дальше →

PHP и различные виды NoSQL

Reading time11 min
Views69K


В последнее время набирают популярность различные NoSQL базы данных. Эта статья начиналась как изучение особенностей графитовой графовой базы данных Neo4j. Но, в процессе подбора информации, мне захотелось систематизировать информацию о NoSQL решениях и о графовых базах данных, в частности.
В ходе этого небольшого исследования, были выбраны для подробного рассмотрения СУБД, успешно применяющиеся в области Web. И, поскольку в тегах присутствует «PHP», я выбирал СУБД, которые уже можно использовать с этим языком.

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

Термостатирование в доме

Reading time13 min
Views102K
В предыдущей статье «Погодная станция с Ethernet и планшетом в качестве устройства отображения» я рассказывал о том, как я организовал сбор, складирование, обработку и вывод метеоданных в своем доме и за его пределами. Там же было упомянуто, что принципы, заложенные в основу системы, позволяют строить нечто более широкое, чем просто сбор погодных данных, и была анонсирована статья про термостатирование. Пришло время выполнять обещание и рассказать про это самое термостатирование.
Читать дальше →

Несколько полезных CSS-трюков

Reading time3 min
Views56K
Во время работы над последним проектом накопилось несколько интересных CSS-трюков, о которых хочу рассказать. Хотя, возможно, это уже придумано до нас и все об этом уже знают. В примерах используется LESS, а не чистый CSS.

Событие автоподстановки в инпут поля


Проблема: узнать, что пользователь воспользовался функцией автоподстановки. Задача была в том, чтобы подсвечивать кнопку Login, если в полях e-mail и password введено что-либо. Проблема в том, что если эти поля заполняются автоподстановкой из ключницы браузера, то событие change на инпутах не выстреливает.

Решение: использовать псевдокласс :valid. Он срабатывает у инпута, если в нем есть контент, который удовлетворяет типу инпута (text, e-mail) и если у этого инпута стоит атрибут required. Правда решение не работает в IE, но нам не требуется поддержка этого браузера.

<input required="required" class="email-input" type="email" />
<input required="required" class="password-input" type="password"/>
<div class="go">Login</div>

.email-input:valid ~  .password-input:valid ~ .go {
	//стили для активной кнопки Login
}


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

Apple массово блокирует аккаунты разработчиков из РФ

Reading time2 min
Views36K
Доброго времени суток, коллеги.

Несмотря на кричащее название и кажущееся преувеличение проблема действительно серьёзная. 19 февраля на форумы разработчиков iOS приложений массово стала поступать информация о том, что Apple без видимых причин блокирует девелоперские аккаунты из РФ с формулировкой «Apple has good reason to believe that you violated this Section due to documented indications of fraudulent conduct associated with your account», что по сути есть обвинение в мошенничестве. Пострадавших уже очень много, приложения самые разные.
Читать дальше →

Обнаружение изменений в файлах на веб-сервере

Reading time2 min
Views38K
Здравствуйте, уважаемые читатели!

Картинка, кратко и аллегорично передающая смысл описанного в посте скрипта:


У меня есть несколько сайтов, на которых в какой-то момент начал появляться вредоносный код, выглядящий как отдельные php-файлы либо дополнительные строки с длинными eval() в существующих файлах.

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

Тогда я задумался, как бы мне так оперативно узнавать, куда в очередной раз будет внедрен код, чтобы можно было его тут же прибить?
Читать дальше →

Сервис анонимной аренды хостинга с i2p-доступом

Reading time4 min
Views20K
(внимание: сервиса нет, есть только идея)

Во время публикации информации в обход цензуры, возникает проблема: как опубликовать информацию без раскрытия своей личности и данных, ведущих к раскрытию личности? IP адрес можно считать достаточной информацией для выяснения личности обратившегося к серверу. С учётом, что все хостеры обычно вполне кооперируются с тоталитарными правительствами, процесс установления владельца/автора того или иного сайта не представляет проблем. Наивные обещания компаний «не раскрывать данные клиентов» требуют очень высокого доверия, кроме того, не всегда могут быть исполнены (lavabit тому примером).

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

Коммерческая компания покупает услуги хостинга (VDS, dedicated server и т.д.), конфигурирует там i2p роутер плюс ssh-сервер, работающий через i2p, и отдаёт реквизиты своему клиенту, который заказывает и оплачивает услуги только через i2p. Оплата происходит любой криптовалютой (пока условимся, что bitcoin), всё взаимодействие происходит через i2p сеть.

Описание со стороны компании


Компания имеет сайт в i2p, принимает биткоины. При поступлении оплаты компания заказывает услугу у указанного поставщика (в обычном интернете), настраивает i2p, отдаёт реквизиты клиенту. По запросу клиента сервер перезагружается/переустанавливается, так же возможна пересылка почты с саппортом. В самом продвинутом варианте — API для управления.

Описание со стороны клиента


Зайдя на i2p сайт клиент заказывает хостинг «в интернете», получает доступ на свой сервер через i2p, где размещает нужную информацию.

Описание со стороны тоталитарного режима


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

Доверие серверу

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

Адаптивные изображения без шаманства

Reading time5 min
Views40K
Все, кто сталкивался с задачей сделать адаптивную графику, знает, что решений уже масса, но никакого единогласно принятого не существует. Зачастую выбор и применение решения для адаптивных изображений становятся головной болью фронтенд-разработчиков. Им приходится заменять src картинок, подгружать однопиксельные изображения и лепить прочие костыли. Нас это не устроило и мы решили сделать свой мотороллер.

На типичных сайтах изображения могут появляться тремя способами.
  1. Быть элементами дизайна сайта (бекграунды, кнопки и т.д.).
  2. Загружаться через специальные модули (например, изображения в фотоальбом).
  3. Вставляться через WYSIWYG-редактор CMS (например, в текст статьи).


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

Сначала на помощь приходит реализация Adaptive Images
Но что происходит потом?

Бан по континентам

Reading time3 min
Views81K


В одно прекрасное утро я просматривал логи и задал себе ряд вопросов:

  1. А жду ли я письма из Юго-Восточной Азии? (когда смотрел логи почты)
  2. И с какого перепугу ко мне стучатся ssh брутфорсеры из Штатов?
  3. Мне надо терпеть сетевые сканеры из Австралии?
  4. Кто мне звонит из Африки? (когда разглядывал логи asterisk)
  5. С какой стати к моему POP-серверу обращаются из Латинской Америки?


Почему бы не забанить по континентам? Оставив только нужный континент(ы)?


Под катом bash скрипт, который этим занимается

GSM на столе

Reading time4 min
Views73K
Разработка под веб: HTTP, HTML, CSS, JavaScript, Python… Ох. Всё одно и то же. Так хочется отвлечься на что-нибудь радикально другое. Я же обитаю в московском хакспейсе Нейрон! Почему бы не поспрашивать вокруг?

Например, в Нейроне сидят ребята из компании Fairwaves, разрабатывающие GSM-оборудование для недорогих сотовых сетей. Весь стек — от железа до софта — доступен под open source лицензией. Да, да, включая железо. Поэтому совсем не обязательно работать в Fairwaves, чтобы познакомиться с этой технологией. И результат копания можно выложить на GitHub или сделать вклад в существующий проект. Как минимум, будет чем похвастаться на собеседованиях.

Пара дней чтения документации, пролистывания кода, десятки навязчивых вопросов и экспериментов (спасибо Александру Чемерису и Ивану Ключникову за помощь). И вот результат — собственная GSM-сеть под контролем моего Макбука:

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

Подключаем к PSP геймпад от Xbox 360 при помощи Raspberry Pi

Reading time19 min
Views28K
… или сказ про то, как пингвин Америку с Японией подружил.



Итак, в стародавние времена люди играли в Sony Playstation и их все устраивало. Но прогресс не стоял на месте. Увеличивалась степень интеграции микросхем. Инженерная мысль постоянно искала новые формфакторы, а мысль маркетинговая — новые рынки сбыта. Так в 2005 году появилась в продаже за пределами Японии портативная игровая система Sony Playstation Portable. Ее игровая линейка (как и у любой другой приставки) представляла собою специально скомпилированные под железо PSP игры. Но также она обладала и достаточными вычислительными мощностями для запуска игр от оригинальной PlayStation через встроенный эмулятор. Хотя, быть может, тут ключевую роль сыграло то, что и у PlayStation, и у PSP стоял процессор одной и той же архитектуры — а именно MIPS. Но самое примечательное в этой системе то, что сразу же, в год запуска, в сеть утекли библиотеки PSP SDK. В результате, через почти 10 лет с момента запуска, мы имеем огромную библиотеку игр и отлаженного homebrew. Также, сейчас, в не самом крупном городе России полностью рабочую PSP (самой функциональной модификации) можно купить с рук за 3000 рублей. Все это делает ее к настоящему моменту очень привлекательной бюджетной игровой системой с просто огромной инсталлбазой. Самая функциональная модификация имеет компонентный выход для подключения к ТВ. Но разъем подключения к ТВ располагается неудачно с точки зрения долгого использования PSP в качестве геймпада. К тому же, при длительном использовании возникает необходимость подключения второго провода — от зарядного устройства. И удобство использования такой химеры стремится к нулю. Как относительно бюджетно и при этом гиково решить эту проблемку — про это и пойдет речь в этой статье. Также вкратце будут затронуты темы программирования драйвера USB-клиента под PSP, методика установки хук-функций в PSP, работа под линуксом с устройствами USB и с джойстиками через API. Мы начинаем.
Читать дальше →

Проблемы мотивации: работа с «выгоревшими» сотрудниками

Reading time7 min
Views239K
Последние шесть лет я делаю проекты в банковском IT, и за это время часто встречался с тем, что основным риском проекта становились «выгоревшие» сотрудники. Проектный ритм и большой поток задач вызывают у таких людей раздражение, поэтому их «распинывание» часто становится одной из главных задач менеджера проекта.

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

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

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

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

Самодельный фазовый лазерный дальномер

Reading time9 min
Views296K
image
В статье я расскажу о том, как я делал лазерный дальномер и о принципе его работы. Сразу отмечу, что конструкция представляет собой макет, и ее нельзя использовать для практического применения. Делалась она только для того, чтобы убедится в том, что фазовый дальномер реально собрать самому.
Читать дальше →

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

Reading time11 min
Views52K

«А самую мрачную переговорку мы назвали Moscow»

Дело было примерно так. Парни сидели на мансарде, пили компот – и тут к ним пришла идея. Они решили сделать сайт про товары и цены в Германии – ну, знаете, типа нашего Яндекс.Маркета, только с геолокацией и подписками. Проблема была в том, что в Германии тогда основная розница жила в оффлайне.

Глава сети, к примеру, мог оказаться почтенным 77-летним дедушкой. Нет, он слышал про интернет, но подозревает, что это хитрая разновидность SMS. Почту, вполне возможно, ему носят распечатками каждое утро. И он уверен, что то, что работало последние 30 лет, сработает и в следующие 10. Такая ситуация много где, потому что крупным бизнесом в Европе нередко управляют семьи. Самое красивое, что парни всё-таки нашли простой как бревно, но очень прибыльный способ использовать это для развития своего проекта.

Осторожно, трафик — много фотографий их офиса.
Читать дальше →

О чем расскажут на PHDays IV: трояны на SIM-карте и куда бежать при киберналете

Reading time7 min
Views15K
image

Как создать вирус и ботнет для Android? Что можно узнать, купив жесткий диск на аукционе EBay? Чем угрожает SIM-карта своему владельцу? Как скопировать токен одноразовых паролей? 17 февраля стартовал заключительный этап Call For Papers (процедура подачи заявок от докладчиков), который продлится до 31 марта, а сейчас мы анонсируем выступления первой группы участников, попавших в основную техническую программу международного форума по практической безопасности Positive Hack Days IV.
Читать дальше →

Неожиданное попадание под адалт-фильтр Яндекса — отвоёвывание утраченных позиций (код ответа 404)!

Reading time3 min
Views8.3K
Приветствую вас, дамы и господа!

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

Итак, на скриншоте ниже отображена динамика роста поискового трафика с Яндекса за крайние 2 года:


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

Mozilla анонсировала «25-долларовый смартфон»

Reading time1 min
Views40K


Еще пару-тройку лет назад термин «смартфон» вызывал у многих ассоциации с высокой ценой на такого рода гаджет. С тех пор цены на мобильные телефоны и смартфоны (имеются в виду бюджетные устройства) постепенно снижались. И сейчас Mozilla сообщила о намерении выпустить 25-долларовый смартфонов, естественно, основанный на Firefox OS.

Стоит отметить, что сейчас бюджетные смартфоны с Firefox OS продаются уже в 15 странах, и рынки еще 12 стран планируется «открыть» для продаж таких устройств. Это — Аргентина, Коста-Рика, Эквадор, Сальвадор, Германия, Никарагуа, Панама, Гватемала.

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

Делаем адресные формы более привлекательными

Reading time6 min
Views51K


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

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

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

Итак, приступим!

Information

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