Search
Write a publication
Pull to refresh
17
0

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

Send message

Делаем превью сайтов в стиле Yandex Браузера

Reading time5 min
Views24K
yandex browserПрошло уже почти два месяца как Yandex порадовал некоторых пользователей новым продуктом — Yandex Браузером. Несмотря на невероятную динамику развития продуктов в этой области (Chrome и Firefox), Яндексу удалось привнести в свой браузер ряд новых идей.

Из всех особенностей этого браузера больше всего меня зацепило их дизайнерское решение относительно изображений сайтов в «быстрых закладках» (Speed dial). Люди любят глазами и поэтому приятно видеть у себя в новом табе не пустую белую страницу, а красочные картинки. Беда только в том, что лично я, чаще всего, смотрю на подпись под этой картинкой или же на favicon, так как по скриншоту сайта бывает очень сложно его узнать. Эту проблему дизайнеры яндекса, на мой взгляд, решили очень элегантно. В данном посте мы посмотрим, как реализовать эту идею на клиентской стороне.

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

Один крутой Gist: whiteboardCleaner

Reading time1 min
Views30K
Доброго времени суток уважаемые хабравчане. На просторах интернета мне повстречался один миниатюрный и очень интересный Bash скрипт. С помощью ImageMagick он потрясающим образом обрабатывает фотографии белой учебной доски, очищая «содержимое» от всего лишнего:

#!/bin/bash
convert $1 -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 $2


До:


image

После:


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

Живительная флешка

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

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


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

Привет, стол!

Reading time4 min
Views322K


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

Алгоритмы поиска путей на JavaScript

Reading time1 min
Views32K


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

Всё, что вы хотели знать об областях видимости в JavaScript (но боялись спросить)

Reading time8 min
Views83K
У JS есть несколько концепций, связанных с областью видимости (scope), которые не всегда ясны начинающим разработчикам (и иногда даже опытным). Эта статья посвящена тем, кто стремится погрузиться в пучину областей видимости JS, услышав такие слова, как область видимости, замыкание, “this”, область имён, область видимости функции, глобальные переменные, лексическая область видимости, приватные и публичные области… Надеюсь, по прочтению материала вы сможете ответить на следующие вопросы:

— что такое область видимости?
— что есть глобальная/локальная ОВ?
— что есть пространство имён и чем оно отличается от ОВ?
— что обозначает ключевое слово this, и как оно относится с ОВ?
— что такое функциональная и лексическая ОВ?
— что такое замыкание?
— как мне всё это понять и сотворить?
Читать дальше →

Проблемы современных «звонилок»

Reading time2 min
Views61K
Каждый раз, когда родственники собираются покупать новый телефон, идут за советом ко мне. Проблема в том, что им не нужны андроиды и айфоны, им надо звонить и максимум писать смс. Чтобы всё работало хорошо и заряжать надо было редко. Ну и чтобы стоил очень дешево. Этим людям часто не нужны камеры и интернет, не нужны яркие цвета, только по минимуму.

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

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

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

Поиск жилья без посредников в 21-м веке

Reading time6 min
Views168K
Полагаю, все мы однажды искали себе жилье. Кто-то — в собственность, большинство, вероятно, в аренду. Все, кто хоть раз пытался найти реальные предложения на досках объявлений, знают — это нереально. Такого количества спама нет, пожалуй, ни в одной другой сфере. После того, как окунешься в этот ад, обычно руки начинают чесаться применить свою IT-шность на благо ближнему. Результатом для меня стал проект Sobnik, о котором я и хочу рассказать.

Sobnik — это плагин для Chrome, который помечает посредников на досках объявлений. Пока работает только с Avito.ru, в ближайшем будущем я добавлю Irr.ru и другие крупные доски. Всех, кто сидит на чемоданах и кому не терпится попробовать, прошу в Google Web Store. Под катом я расскажу о технической стороне проекта, о его перспективах и о моих наблюдениях за противником посредниками. Любители критиковать чужой JS-код также велкам, исходник клиентской части плагина доступен на github.

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

Dummy about Dummies и одно увлекательное путешествие в недра Excel. Долгожданный RegExp в таблицах

Reading time9 min
Views14K

Пролог, просто пролог!


Конечно моя статья не настолько крута как история про геймдев на VBA в арими, но зато есть исходники, расположенные аккурат в конце статьи под спойлером.



Криптонит для чайника.


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

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

Утро понедельника как всегда было отвратительным. Рассеивающаяся дымка и еле заметно срывающийся дождь — малоприятное зрелище. Желание работать отпало еще в воскресенье. Работы как всегда много, ничего не клеится, а тут еще и экселевская база на 300к строк свалилась мне в руки. Ну не то что-бы свалилась, закончила парсится. И как вы понимаете, что структурированной, форматированной и однородной базой там и не пахло, а иначе откуда статье взяться. Так что на выходе я получил громадное множество неоднородной информации, из которой необходимо было выделить то нужное, что требовалось мне для работы, отсекая все остальное.
И что в итоге?

Троян в highscreen, или как телефон начал творить чудеса

Reading time6 min
Views132K
Добрый день, Хабр!
Хочу поведать вам историю, которая чуть не спровоцировала поседение моей, еще молодой, головы.
Предыстория
Все началось с того, что я приобрел себе Highscreen Omega Prime S пару месяцев назад, был доволен как слон, никак не мог нарадоваться этому чудесному аппарату, который работал шустро и почти без нареканий. И все бы было отлично, если бы я однажды не увидел кучу нотификаций, которые выглядели как-то так:


И я уж начал думать — что же это такое, откуда оно взялось, может быть, мой телефон сломали, но как?! Но через несколько секунд паника стихла, я зажал одно из уведомлений, выбрал пункт «Информация о приложении», и был очень удивлен, увидев то, что уведомления вывело приложение «Обновление ПО»…
Читать дальше →

И еще раз о GIL в Python

Reading time9 min
Views38K

Предисловие


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

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

Python, каким бы я хотел его видеть

Reading time11 min
Views46K
Всем известно, что мне не нравится третья версия Python и то, в каком направлении развивается этот язык программирования. За последние несколько месяцев я получил много писем с вопросами о моём видении развития Python и решил поделиться своими мыслями с сообществом, чтобы, по возможности, дать пищу для размышлений будущим разработчикам языка.

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

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

Исследуем китайские роутеры на RT5350

Reading time7 min
Views140K
Однажды, lolipop купил роутер на алиэкспрессе. Да не простой роутер, а очень компактный и дешевый, с 2 Ethernet-портами, USB, да еще и от фирмы, которая в начале 2000-х продавала свои mp3-плееры на территории РФ: Nexx WT1520H.
image
Стандартная прошивка, как и почти всегда, была скудная, и, конечно же, хотелось заменить ее на что-то более вменяемое. Но вот незадача — никаких альтернативных прошивок под роутер нет, и прошить непонятно как, т.к. никакие другие прошивки не принимались через веб-интерфейс, заголовок прошивки я раньше такой не видел, да и binwalk ничего в ней не находил, стало быть, она зашифрована:
00000000  32 33 35 30 6b d9 39 00  00 00 0e 02 00 00 00 00  |2350k.9.........|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 3e 19 53 c5  |............>.S.|
00000020  63 f5 51 9f 82 74 2d 03  2e 2f 1f 32 9c 4a 93 96  |c.Q..t-../.2.J..|
00000030  15 82 23 d0 b2 7e d7 1b  13 c3 1b 1f 06 fa f8 e0  |..#..~..........|
00000040  bb 43 9b c6 ee fc 4b 7a  e6 50 71 2b f4 f3 95 c3  |.C....Kz.Pq+....|
00000050  63 d0 a3 9c 92 2e 16 c6  19 1c 4a 93 cb 95 c3 63  |c.........J....c|
00000060  d2 9b 1a f5 2e 16 c6 19  1c 4a 93 f9 68 3c 9c 73  |.........J..h<.s|
00000070  14 63 d5 10 5e d3 6b 25  2b c2 2e 07 eb 85 73 25  |.c..^.k%+.....s%|
00000080  9b 6b c0 f2 d8 9b cf 65  56 ac a9 c2 28 61 dd 55  |.k.....eV...(a.U|
00000090  18 a4 5b e9 ba 11 93 ec  30 76 4f 40 c1 f0 7c cb  |..[.....0vO@..|.|
000000a0  36 d3 b3 93 fe 3d 6b 10  66 fa 43 39 f2 f6 c0 91  |6....=k.f.C9....|

lolipop слил данные с флешки через программатор, и мы начали в них ковыряться.
Читать дальше →

Медиацентр с IPTV из ноутбука и монитора

Reading time10 min
Views117K


Мысль сделать домашнюю мультимедиа систему посещала уже достаточно давно. Предпосылкой к созданию стало избавление от большого системного блока и установка на рабочее места ноутбука с подключенным монитором. Первый вариант реализации, который не завелся, это медиасервер из неиспользуемого Android смартфона. Данная идея уткнулась в аппаратные ограничения (слабый Wi-Fi модуль, малый объём встроенной памяти, медленные чтение/запись файлов через OTG) и программные (отсутствие стабильно работающего «серверного» ПО под систему Android). После произошла реорганизация рабочего места и монитор стало некуда ставить. Дальше можно было и остановится, утилизироватьотвезти на дачу монитор, подключить висящий над компьютером телевизор к VGA порту, а окошко с фильмом, запущенным на компьютере, перемещать на всеобщее обозрение, но монитор 20", формата 16:9, с разрешением 1600x900 предпочтительнее, чем телевизор 15", формата 4:3, с разрешением 1024x768. Заменив телевизор на монитор, можно было бы и остановится, но ведь телевизор управлялся пультом и им пользовались домочадцы, которые с компьютером на «Ой, а что это?».

Если интересна задумка, добро пожаловать под кат.
Читать дальше →

Порядок разрешения методов в Python

Reading time15 min
Views191K
В этой заметке рассматривается алгоритм MRO С3 и некоторые специфические проблемы множественного наследования. Хотя и алгоритм и проблемы не ограничиваются рамками одного языка, я акцентировал своё внимание на Питоне. В конце приведён список полезных ссылок по данной теме.
Читать дальше →

Метаклассы в Python

Reading time10 min
Views205K
Как сказал один из пользователей StackOverflow, «using SO is like doing lookups with a hashtable instead of a linked list». Мы снова обращаемся к этому замечательному ресурсу, на котором попадаются чрезвычайно подробные и понятные ответы на самые различные вопросы.

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

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

Вышла операционная система Qubes 2 на основе гипервизора Xen

Reading time1 min
Views66K
Несколько дней назад вышла операционная система Qubes 2, нацеленная на максимальную безопасность в использовании. В основе Qubes лежит идея запуска отдельных виртуальных машин для обеспечения изоляции пользовательских приложений. В качестве системы виртуализации используется Xen.


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

Окружение, опережающее мысль

Reading time4 min
Views24K
desktopЕсли эффективной работе в cli/bash/vim посвящены сотни статей, то теме организации рабочего окружения сисадмина — едва ли несколько штук. Чаще всего это скриншоты какого-нибудь Enlightenment с 1 прозрачным терминалом, часам, календарем, 15 виджетами загрузки CPU и голой анимешной бабой на фоне. Подходит для фильма «Хакеры», не подходит для работы. Нам требуется, чтобы терминал появлялся еще до того, как мы об этом подумали, выполнял свою работу и исчезал бесследно до следующего такта.
Читать дальше →

Разбираемся с rtorrent всерьёз

Reading time14 min
Views79K
Об установке и базовой настройке rtorrent на хабре хватает статей, как и споров о том, стоит ли вообще связываться с хардкорным rtorrent или лучше обойтись чем-нибудь более дружественным к пользователю. Лично я много лет назад пересмотрел все качалки и в результате rtorrent оказался самым стабильным и эффективным. Интерфейс у него не самый удобный, но достаточно понятный и юзабельный чтобы это не стало серьёзной проблемой. Альтернативные интерфейсы вроде rutorrent у меня как-то не прижились - ставить php только ради rutorrent неохота, а остальные варианты выглядят совсем слабо (и ни одного кроме rutorrent даже нет в портаж Gentoo).

  

Одно из основных преимуществ rtorrent — очень гибкие возможности по его настройке и автоматизации. К сожалению, синтаксис ~/.rtorrent.rc достаточно нестандартный, нормальная документация отсутствует, поэтому обычно настройка сводится к поиску и копированию (попытка что-то в них изменить кроме констант/путей к каталогам обычно проваливается) готовых рецептов или вообще ограничивается редактированием констант в базовой конфигурации.

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

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

Пост о маленьких видеоиграх

Reading time6 min
Views38K
Привет, друзья. В этом посте мне бы хотелось рассказать, как я писал маленькие HTML5-игры для конкурса js13k, какие подводные камни повстречались на этом тернистом пути, и что получилось в результате.

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

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

Но сначала 77 слов про js13k

Читать дальше, там самое интересное же

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity