Как стать автором
Обновить
22
0

lead posix sh developer >:)

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

Netsukuku — свой собственный интернет

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


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

Странно, что на всем этом фоне не было ни одного поста о таком занимательном проекте, как Netsukuku. Цель которого, ни много ни мало — построить свой интернет с шахматами и администраторшами.

Бред? Не совсем.
Читать дальше →
Всего голосов 205: ↑200 и ↓5+195
Комментарии171

Новый выделенный сервер: приемка и проверка

Время на прочтение10 мин
Количество просмотров41K
Новый сервер: приемка и проверка

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

В этой статье мы расскажем о том, как можно получить спецификацию Linux-сервера в командной строке.
Читать дальше →
Всего голосов 85: ↑73 и ↓12+61
Комментарии36

Вредные советы от создателей API Яндекс.Карт. Как сделать так, чтобы всё было плохо

Время на прочтение8 мин
Количество просмотров102K
Если гонится за вами
Слишком много человек,
Расспросите их подробно
Чем они огорчены?
Постарайтесь всех утешить.
Дайте каждому совет,
Но снижать при этом скорость
Совершенно ни к чему.
Г. Остер

Сегодня чудесный весенний день. И не только потому что он весенний и очень скоро кому-то придется ехать на дачу копать картошку. А потому что сегодня версия 2.1 API Яндекс.Карт перестает быть beta-версией и становится основной.

К этому событию мы полностью обновили документацию, добавили новых примеров в песочницу и написали эту статью. В этот раз мы решили не рассказывать только про версию 2.1, так как про нее мы уже и так достаточно поговорили во время запуска беты. Поговорим об использовании API Яндекс.Карт в целом.

Разработка API – очень специфичная область программирования. На любую задумку дизайнера и разработчика накладываются потребности и умения пользователей API. Основной фидбек, который мы получаем – это сообщения пользователей в нашем клубе. Туда присылают примеры сайтов с Яндекс.Картами, багрепорты и рекомендации по улучшению нашего продукта. Мы видим, как API смотрится в боевых условиях, и мотаем на ус.

Некоторые вещи часто делают неправильно. Сегодня я хочу о них рассказать. Все советы, которые вы прочтете — вредные. Если вы поймете, что соблюдаете некоторые из рекомендаций этой статьи, ничего страшного – никогда не поздно сделать ваш проект немного лучше. Итак, Irony mode ON.
Читать дальше →
Всего голосов 135: ↑110 и ↓25+85
Комментарии75

Интересные приемы программирования на Bash

Время на прочтение6 мин
Количество просмотров130K
Эти приемы были описаны во внутреннем проекте компании Google «Testing on the Toilet» (Тестируем в туалете — распространение листовок в туалетах, что бы напоминать разработчикам о тестах).
В данной статье они были пересмотрены и дополнены.
Читать дальше →
Всего голосов 181: ↑175 и ↓6+169
Комментарии67

Потоки — это Goto параллельного программирования

Время на прочтение6 мин
Количество просмотров39K
Сразу раскрою мысль, вынесенную в заголовок. Использование потоков (также именуемых нити, треды, англ. threads) и средств прямой манипуляции ими (создание, уничтожение, синхронизация) для написания параллельных приложений оказывает столь же пагубное влияние на сложность алгоритмов, качество кода и скорость его отладки, какое вносило использование оператора Goto в последовательных программах.
Как когда-то программисты отказались от неструктурированных переходов, нам необходимо отказаться от прямого использования потоков сейчас и в будущем. И так же, как каждый из нас использует структурные блоки вместо Goto, вместо потоков должны использоваться структуры, построенные поверх них. Благо, все инструменты для этого появились во вполне традиционных языках.
Автор фото: Rainer Zenz
Читать дальше →
Всего голосов 76: ↑63 и ↓13+50
Комментарии57

HTTP Switchboard — NoScript на стероидах

Время на прочтение2 мин
Количество просмотров15K
Странно, что на Хабре до сих пор не было ни одного упоминания об этом расширении. Спешу исправить ситуацию.

HTTP Switchboard — расширение для Google Chrome, которое позволяет пользователю блокировать ресурсы сайта посредством динамических черных и белых списков. Проще говоря, с помощью HTTP Switchboard можно выборочно разрешать или запрещать загрузку печенек, css, картинок, плагинов, скриптов, XHR, фреймов и прочих элементов для любого сайта. Так же недавно появилась частичная поддержка фильтров AdBlock+ и возможность блокировки фоновых запросов браузера (behind-the-scene HTTP requests).



Это расширение нельзя назвать интуитивно понятным, поэтому вкратце опишу элементы интерфейса и основные принципы работы.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии6

Kale — open source-инструмент для обнаружения и корреляции аномалий

Время на прочтение7 мин
Количество просмотров17K
Для мониторинга IT-инфраструктуры мы используем множество инструментов, в том числе:
  • Zabbix — о нем написано немало статей здесь на хабре. Нам очень нравятся его возможности низкоуровневого обнаружения, но его возможности визуализации данных оставляют желать лучшего.
  • Graphite — система, которая хранит данные и имеет удобный интерфейс для их отображения. Сейчас мы импортируем в нее метрики из Zabbix и храним историю.
  • Shinken — система мониторинга, которая основана на Nagios и написана на языке Python. Сейчас мы присматриваемся к ней. Нам нравится то, что в нее очень просто импортировать данные из системы документации сети Netdot (о ней я уже писал ранее), а также она легко интегрируется с Graphite.

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

Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии7

Мониторинг на основе данных

Время на прочтение9 мин
Количество просмотров21K
При работе над облачными сервисами Webzilla мы уделяем очень большое внимание системе мониторинга. Мы уверены, что только имея корректно работающий и надежный мониторинг, мы можем оказывать сервис на требуемом клиентами уровне качества. Во время работы над первым из облачных продуктов компании – облачным хранилищем Webzilla Instant Files – мы приступили к построению системы мониторинга еще до того, как начали строить сам продукт, продумали мониторинг для каждой функции еще на этапе её планирования.



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

Мы работали над системой мониторинга не меньше времени, чем над функциональной частью сервиса — и мы делимся наработанным опытом.
В целом, наша система мониторинга состоит из трех основных подсистем:
Читать дальше →
Всего голосов 37: ↑29 и ↓8+21
Комментарии14

Анекдот о том, как я GRUB2.0 в BURG превращал или Самогон можно гнать даже из табурета

Время на прочтение2 мин
Количество просмотров9K
Это маленькая ерунда, которая в студенческое время помогла мне избежать сборки и подтягивания зависимостей BURG для хомячковой бубунты, получив горизонтальное графическое меню выбора системы.
Никаких крутых тем тогда не было и меню выбора даже в графическом варианте было только вертикальное.

Введение какое-то, что ли

Какое-то время назад я долго заглядывался на BURG. В меню загрузки у меня стоял православный «консольный» GRUB 1.99 с рсх-ным (если не вру) самолетиком на фоне. Но как только я увидел гладкое, многопиксельное графическое меню BURG, я сразу его захотел. На том все и кончилось: для того конкретного дистрибутива Linux, которым я тогда пользовался, сборки не было, а попытка собрать из исходников несколько раз упала из-за все новых и новых неразрешенных зависимостей. Мне стало грустно и лень.

Но вот совсем скоро вышел GRUB 2.0. Радости были полные штаны, ведь там тоже уже было красивое меню «скартинками», без всяких насадок в виде BURG. Как горный козел, я поскакал ставить обновку и «вышивать в ней перед зеркалом», предав идеи брутальных консольных мачо, смотрящих фильмы прямо из нее родимой (рисуя оверлей через fbdev). Но тут внезапно меня ждало огорчение. Почему-то я с самого начала прикипел душой к горизонтальным меню. Как на тех пошлых картинках из интернетов, где в рядок стояли какие-то убунты, макось и виндось. А новый блестящий граб предлагал только вертикальные, хоть и всех цветов и оттенков.
Читать дальше →
Всего голосов 17: ↑10 и ↓7+3
Комментарии7

Скорочтение по технологии spritz на любом сайте

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


Совсем недавно, была представлена технология скорочтения spritz (500 слов в минуту без подготовки) она позволяет вам читать тексты намного быстрее, но, к сожалению, разработчик не реализовал тогда её в виде приложения для прочтения собственных текстов.

Теперь же, появился проект Squirt, который позволяет читать любой текст по технологии скорочтения от spritz, установив только 1 букмарклет.
Читать дальше →
Всего голосов 84: ↑72 и ↓12+60
Комментарии71

Что делать, если под рукой нет Android-устройства? Обзор Android-эмуляторов

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

Введение


Часто бывает необходимость проверить работу свеженаписанного приложения на устройстве. Но вполне может оказаться, что устройства под рукой нет. Или нет устройства с определенными параметрами (правда, это больше относится к размеру/разрешению экрана). Что же делать в этом случае?
К счастью, альтернативы есть. Android-сообщество и разные компании предлагают на выбор несколько вариантов замены android-устройств для разных целей.

Я кратко расскажу о следующих:
  • Эмулятор в составе SDK
  • Genymotion
  • Android x86
  • Bluestacks

Если интересно — добро пожаловать под кат (осторожно, достаточно много картинок)
Читать дальше →
Всего голосов 31: ↑28 и ↓3+25
Комментарии33

Сбербанк и Khan Academy

Время на прочтение1 мин
Количество просмотров17K
Как заявляет Сбербанк:
«В рамках реализации проекта в 2014 году на русский язык будет переведено более 2 300 видеолекций»



Кроме коротенького заявления на сайте Сбербанка я не нашел никаких подробностей.
Зато откопал статью в Forbes и Top9 уроков, которые набрали больше миллиона просмотров.
На просторах интернета нашелся даже русскоязычный канал, но количество просмотров там на 2 порядка меньше.

О чем же Хан говорил на TED, и какое самое просматриваемое видео с незамысловатыми рисунками «первого в мире учителя-звезды»?
Читать дальше →
Всего голосов 25: ↑18 и ↓7+11
Комментарии15

8 ловушек программирования

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


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

Однако я верю в то, что их можно избежать, если знать в какие ловушки можно попасть и как из них выбираться. Возможно эта вера — очередная ловушка.
Читать дальше →
Всего голосов 276: ↑256 и ↓20+236
Комментарии83

Intl к нам приходит!

Время на прочтение4 мин
Количество просмотров30K
datemap Нет, не Intel. Intl — JavaScript объект, содержащий в себе функции форматирования чисел, дат и сравнения строк. Приходит, потому что 29 апреля Firefox, последний из популярных браузеров, не поддерживающий Intl, обновляется до 29 версии, в которой поддержка интернационализации будет включена.

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

Что же даёт Intl JS программисту?


А очень много
Всего голосов 76: ↑73 и ↓3+70
Комментарии28

Эталон американской бюрократии

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


Каждый день грузовики, нагруженные документами, заезжают в бывшую известняковую шахту возле городка Бойерс, штат Пенсильвания. Здесь, на глубине 70 метров под землёй, организован крупнейший центр по обработке пенсионных документов госслужащих США. Более 600 сотрудников вручную перебирают документы, вводят данные в компьютер и распечатывают, носят бумаги из одного хранилища в другое, сверяют цифры: процедура практически не изменилась с 1977 года.
Читать дальше →
Всего голосов 129: ↑113 и ↓16+97
Комментарии73

Зачем Intel делает ставку на Google Chrome OS?

Время на прочтение3 мин
Количество просмотров15K
Оказывается, что некоторые аналитики именно в Хромбуках видят новую надежду для возрождения рынка PC — см.: «Хромбуки — новая надежда рынка ПК?».
И Intel уже делает ставку на Google Chrome OS, и очень радуется появлению в 2014 году 20-ти новых моделей хромбуков именно на Intel`овской платформе — см.: «Intel обещает появление 20 моделей хромбуков в 2014 году»!

И становится заметно, что альянс Wintel слабеет, и Intel пытается делать ставку именно на Google.
Но Google разрабатывая обе свои ОС: Google Chrome OS и Google Android не привязывается к какой-то конкретной аппаратной платформе. И сегодня например большинство планшетов и смартфонов с Google Android работают на ARM-чипах — потому что они дешевле и энергоэффективнее.

Постепенно уже начинают появляться ARM-чипы по своей производительности уже очень близкие к ноутбучным чипам Intel x86 — см.: «Анализ подтвердил принадлежность чипа Apple A7 к настольным процессорам».
А это означает, что пройдёт ещё один год и большинство Хромбуков будет делаться на новых современных 64-битных ARM-чипах — нисколько не уступающих по мощности чипам Intel.
Почему на ARM-чипах, а не на чипах от Intel`а? Да всё очень просто — потому что ARM-чипы дешевле и энергоэффективнее Intel`вских!
Читать дальше →
Всего голосов 37: ↑14 и ↓23-9
Комментарии22

Жизнь во время компиляции

Время на прочтение9 мин
Количество просмотров39K
Статья не о том, чем заняться, пока собирается проект.

Фраза «Шаблоны — полноценный, тьюринг-полный, язык» часто воспринимается с недоверием. Это же просто обобщающая возможность современных языков программирования, откуда там вычислительные возможности? Так думал и я. Теперь хочу переубедить остальных, попутно объясняя принципы работы шаблонов для начинающих, вроде меня.

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

Существует множество реализаций легендарной игры «Жизнь» Джона Конвея, безумных и не очень. Но все они имеют общий фатальный недостаток: каждая итерация Жизни вычисляется непосредственно во время работы программы. Попробуем это исправить.
Читать дальше →
Всего голосов 74: ↑71 и ↓3+68
Комментарии35

Бренден Айк ушёл с поста руководителя Mozilla под давлением ЛГБТ

Время на прочтение1 мин
Количество просмотров85K
Бренден Айк был вынужден покинуть пост руководителя (CEO) компании Mozilla. Решение принято в свете травли, устроенной представителями сексуальных меньшинств, недовольных тем, что Бренден Айк был приверженцем традиционных взглядов на семейные отношения. Травля дошла до того, что некоторые подконтрольные ЛГБТ сайты, в том числе один из крупнейших сайтов знакомств (OKCupid), стали блокировать доступ пользователей Firefox, предлагая сменить браузер, так как Бренден Айк шесть лет назад пожертвовал тысячу долларов на продвижение поправки в конституцию штата Калифорнии, определяющей брак только как союз между мужчиной и женщиной.
Заметка короткая, под кат немного не поместилась
Всего голосов 189: ↑164 и ↓25+139
Комментарии979

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

Время на прочтение1 мин
Количество просмотров30K
Доброго времени суток уважаемые хабравчане. На просторах интернета мне повстречался один миниатюрный и очень интересный 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
Читать дальше →
Всего голосов 137: ↑122 и ↓15+107
Комментарии42

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность