В конце марта 2014 года Консорциум Всемирной паутины утвердил стандарт WAI-ARIA 1.0 (Web Accessibility Initiative — Accessible Rich Internet Applications (Инициатива web-доступности — Доступность высокотехнологичных Интернет-приложений)). Это набор приёмов и методов, которые позволяют сделать сложные динамические страницы и web-приложения доступными для пользователей с ограниченными возможностями. Дело в том, что ряд новых динамических web-технологий, да и просто применение кастомных элементов интерфейса, например, элементов форм или стилизованных под заголовки div вместо стандартных H1-H6, могут вызывать проблемы у некоторых пользователей, главным образом, у людей с нарушениями зрения и моторики.
Ворч Ун @sav1812read-only
Разработчик
Почему в России почти нет гражданского/коммерческого высокотехнологичного производства?
27 min
412K
Ответ на него важен, если вы сами хотите создать конкурентный высокотехнологичный продукт — чтобы не потратить лучшие годы жизни в изначально неравных условиях.
Под катом попробуем разобраться чем отличаются «высокотехнологичные» компании от «низкотехнологичных», что нужно, чтобы высокотехнологичные компании могли рождаться и выживать, почему с софтом у нас лучше, чем с хардом, с чего начиналась кремниевая долина в США и можно ли её «скопировать», почему Китай всех рвет, а также — окинем взором все, что происходит в Сколково, Роснано, фонде перспективных исследований и приведут ли они к расцвету российских инноваций. Безусловно, я где-то могу ошибаться — буду рад дополнениям в комментариях.
Сразу нужно отметить, что в связи с многогранностью проблемы объем статьи получился довольно большой, так что можно начать читать с резюме в конце, и затем прочитать лишь те разделы, которые вызовут интерес. Сразу хочу предупредить — повествование «нелинейное», соседние заголовки могут описывать разные аспекты проблемы и быть друг с другом практически не связанными.
+370
Рабочая среда «Деодар» для Линукс
4 min
40KЭто Norton Commander? Это Volkov Commander? Это Dos Navigator? Это Far Manager?
Нет, это «Деодар» — новая рабочая среда для Линукс.
Деодар хостится на GitHub, основан на Node.js, написан на JavaScript плюс немного C++.
Распространяется по антилицензии Unlicense.org. Безвозмездно, то есть даром.
В данной статье на большом количестве картинок и малом количестве пояснений вы можете ознакомится с тем, что уже есть.
Да, «Деодар» — это такое дерево, Cedrus Deodara растёт высоко в горах, очень красивое.

Нет, это «Деодар» — новая рабочая среда для Линукс.
Деодар хостится на GitHub, основан на Node.js, написан на JavaScript плюс немного C++.
Распространяется по антилицензии Unlicense.org. Безвозмездно, то есть даром.
В данной статье на большом количестве картинок и малом количестве пояснений вы можете ознакомится с тем, что уже есть.
Да, «Деодар» — это такое дерево, Cedrus Deodara растёт высоко в горах, очень красивое.

+89
Панель управления умным домом. iPhone в стене
6 min
55K
Автоматизировать свой дом я начал года 2 назад, в основном используя беспроводную технологию Z-Wave, но и ради фана собрал несколько устройств самостоятельно на микроконтролле ATtiny2313 и Raspberry Pi. Когда я принял решение, что буду делать умный дом, я поставил три задачи, которые умный дом должен был решать, первая — экономия электроэнергии, вторая — обеспечение комфорта, третья — отображение информации о сотоянии дома в реальном времени.
На данный момент удалось реализовать следующее:
- Автоматическое включение и выключение света в коридорах
- Управление телевизором с iPhone при помощи Raspberry Pi и ИК-модуля
- Метеостанция c датчиками температуры и влажности
- Пылесос iRobot, который скоро приобщится к WiFi
Но третья задача по отображению информации была решена не полностью. На кухне и в комнате у меня стоят метеостанции показывающие температуру и влажность, чтобы посмотреть где горит свет, нужно открывать приложение на iPad, чтобы узнать пробки, нужно открывать другое приложение. Всей этой информацией я пользуюсь каждый день, и логично было бы получать её из одного места, поэтому я решил сделать информационную панели установленную стационарно в удобном месте.
+47
Как обрабатывать терабайты данных в 1000 потоков на PHP — Hadoop/MapReduce
6 min
36KВсем привет!
Уже слышали про Bigdata? Ну да, веб растет, данных становится больше и их нужно держать под контролем и периодически анализировать. Базы данных — лопаются под нагрузкой, реляционная теория не совсем справляется с задачей, нужно решение. Маркетинг активно давит сверху, а железо острыми углами — снизу и попахивает суицидом.
В этом посте постараюсь дать конкретные работающие рецепты и куски кода с краткими теоретическими выводами, как же обрабатывать >=терабайты в >=1000 потоков на PHP. Чтобы можно было взять и решить задачу, не теряя времени и не забивая голову теорией.
Однако, если вдруг стало подташнивать и закружилась голова, можно дальше не читать — а полюбоваться на прекрасных птичек и забыть о вышенаписанном. Но будьте на чеку, Bigdata может завтра взять и постучаться в дверь ;-)

Уже слышали про Bigdata? Ну да, веб растет, данных становится больше и их нужно держать под контролем и периодически анализировать. Базы данных — лопаются под нагрузкой, реляционная теория не совсем справляется с задачей, нужно решение. Маркетинг активно давит сверху, а железо острыми углами — снизу и попахивает суицидом.
В этом посте постараюсь дать конкретные работающие рецепты и куски кода с краткими теоретическими выводами, как же обрабатывать >=терабайты в >=1000 потоков на PHP. Чтобы можно было взять и решить задачу, не теряя времени и не забивая голову теорией.
Однако, если вдруг стало подташнивать и закружилась голова, можно дальше не читать — а полюбоваться на прекрасных птичек и забыть о вышенаписанном. Но будьте на чеку, Bigdata может завтра взять и постучаться в дверь ;-)

+13
Как я сделал USB-МФУ беспроводным
4 min
192KВступление
Говорят, ребенку в школе понадобится цветной принтер и сканер. Да и самому хотелось уже на что-то поменять разваливающийся черно-белый лазерник 1996 года выпуска. Критериями выбора стали: цветность, лазерная технология (перерывы между печатью могут достигать месяцев), автоподатчик оригиналов для сканера и копира, автоматическая двусторонняя печать и Wi-Fi, чтобы поставить этот ящик в дальнем углу. По этим характеристикам подобралась какая-то громадина за 25+ килорублей, что показалось неразумным. И вдруг на работе выдали пару подарочных карт одного известного розового магазина, и пришло ощущение, что надо покупать. К сожалению, в его ассортименте было всего три лазерных МФУ с цветной печатью, ни один из которых не отвечал последним двум требованиям. Спустя два месяца аccортимент ничем не пополнился, а наоборот, сократился до двух позиций на всю Москву, и я решил взять то, что было в наличии и не на витрине.Счастливчиком оказался HP Laserjet Pro 100 Color MFP M175a, без автоповорота страниц и с подключением только по USB. Кстати, он оказался не таким большим, как я ожидал, и не таким шумным, как пишут в отзывах.
Задача
Если автоматическую двустороннюю печать добавить к принтеру почти невозможно, то отвязать его от компьютера вполне реально.+31
+17
DraftSight — бесплатный аналог AutoCAD (в том числе и для Linux)
2 min
187K
Сегодня я хотел бы рассказать о прекрасном аналоге САПР AutoCAD под названием DraftSight, работающем под Linux (Ubuntu; Fedora, Suse или Mandriva; ArchLinux и пр.), Windows (x86, x86_64) и MacOS.
Данная САПР разработана компанией 3DS, широкоизвестной в узких кругах такими продуктами как CATIA, SIMULIA и др.
На хабре про эту САПР было упомянуто только в одной статье, да и то без должного уважения.
Основные возможности:
- позволяет создавать и редактировать файлы формата DWG (родной формат AutoCAD'а);
- интерфейс очень напоминает AutoCAD R14, так сказать классический вариант;
- САПР доступна бесплатно;
- имеется платная версия Premium для предприятий и для преподавателей.
Основные отличия платной версии от бесплатной (взято с сайта разработчика):
- Поддержка по телефону и электронной почте
- Сетевая лицензия
- Модуль оперативной помощи при внедрении позволяет большим группам пользователей устанавливать и обновлять DraftSight.
- Доступ в DraftSight APIs и их обновлениям.
- Обновление продуктов, главные релизы и пакеты услуг.
- Онлайновая поддержка сообщества и множество обучающих ресурсов.
Самое, на мой взгляд, главное то, что САПР отлично подойдет для студентов, по долгу учёбы которым приходится много чертить. Этот инструмент превосходно заменяет AutoCAD и бесплатен для индивидуального пользования.
+53
Develop.re – социальный агрегатор ссылок для программистов
1 min
5.6K
Хочу показать вам Develop.re – социальный агрегатор ссылок для программистов и гиков. Он напоминает HackerNews и Reddit, но имеет интересные особенности.
Все голосования основаны на универсальном алгоритме, который не имеет приоритетов или наказаний, в отличие от, скажем, HackerNews. Действия модераторов публичны.
Регистрация – по приглашению. Это сделано для борьбы с некачественным контентом и спамом. Гости могут запросить приглашение. Публичное дерево пользователей позволяет проследить историю приглашений.
Если кто-то голосует против топика или комментария, ему нужно выбрать одну из причин такого решения.
Ссылки транслируются в твиттер @develop_re.
Сайт работает на Rails-приложении Lobsters.
+36
«Запретите им запрещать» или обратная сторона реестра запрещенных сайтов
3 min
126K
Быть может создатели реестра запрещенных сайтов не думали о том, что такое возможно. А может им было известно о такой возможности, но они не придали ей должного значения. А может им не было дела до возможных технических проблем при реализации реестра, и «лишь бы запретить». А может им было понятно, что избежать таких проблем нельзя, и к чему об этом волноваться раньше времени?..
Можно долго спекулировать о том, что они думали и чем они не думали, но факт есть факт: блокировкой любого сайта они невольно вручают мощное средство, если не сказать орудие, защиты и нападения в руки владельца домена, включенного в реестр.
+187
Реалии работы в проектах приложений Smart TV
15 min
84K
С тех пор разработчики и заказчики часто спрашивают меня об особенностях работы в окружении браузерного движка Smart TV, приходится повторять не слишком простые, но интересные особенности, которые слушателям хотелось бы знать и иметь под рукой в качестве справочника. Формат статьи, думаю, идеально подходит для информации по этой теме, тем более, что разработчики из других групп и городов тоже предоставляли сообществу такие обзоры. Объединение знаний сложит необходимую картину из разбросанных паззлов отдельных взглядов. Будем координировать их сборку вместе, и…
+38
Бесплатный CSS3-генератор EnjoyCSS
2 min
25KEnjoyCSS — это бесплатный онлайн CSS-генератор, который предназначен для быстрого создания богатых графических стилей и мгновенного получения их кода. Этот инструмент позволяет добавлять к элементам тени, 3D и 2D трансформации, многочисленные сложные переходы, линейные и радиальные градиенты, тени текста, шрифты из Google Fonts, CSS3 код которых вы можете скопировать и вставить в ваш проект.

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

Кроме того, пользователь может получить как CSS для всех стилей элемента, так и для отдельных его аспектов (например, код только конкретного градиента или тени).
+19
Отладочная плата STM32F429I и GPS модуль. Получаем детальную информацию о спутниках
3 min
51KTutorial

Приветствую хабрасообщество!
Не так давно мне в руки попала отладочная плата STM32F429I-DISCO на базе контроллера STM32F429ZI.
Пожалуй главной ее отличительно особенностью является помимо достаточно производительного процессора Cortex M4 — интегрированный экран на 2,4'' дюйма, которого вполне хватает для многих экспериментов.
Первым делом я естественно начал искать по нему документацию и примеры. Хорошая документация вместе с примерами нашлась прямо на сайта st.com, но естественно хотелось большего, туториалов и прочего. То чего так не хватает начинающему программисту под ARM. Но детальный поиск не дал каких то больших результатов. Поэтому пришлось собирать информацию по крохам, анализировать, пересматривать и тестировать ее.
И я решил как то попробовать поспособствовать популяризации данной удобной платформы.
Но данный пост не призван решить какие то всеобъемлющие проблемы, он ориентирован безусловно на начинающих и на тех, кто хотел бы попробовать, но считает, что это слишком сложно.
Тем кому это может показаться интересным, добро пожаловать под кат.
+26
Сравнение производительности перебора массивов в цикле через for() и foreach()
3 min
31KЯ хотел бы обратить внимание на одну не очевидную особенность php.
Допустим у нас есть массив с целочисленными индексами
Кажется вполне очевидным, что второй способ должен быть, если и не быстрее, то уж точно не медленнее.
Давайте разберемся.
— Нет. Никаких бенчмарков. Только код!
Допустим у нас есть массив с целочисленными индексами
$arr = array( $val1, $val2, ..., $valn );
Этот массив можно перебрать в цикле двумя способамиforeach($arr as $k => $v ) {...}
и$n = count( $arr );
for($k = 0; $k < $n; $k++ ) {...}
Кажется вполне очевидным, что второй способ должен быть, если и не быстрее, то уж точно не медленнее.
Давайте разберемся.
— Нет. Никаких бенчмарков. Только код!
+23
Samba4 в роли AD + файловый сервер
5 min
158KTutorial
В этой статье я рассмотрю по шагам подготовку к использованию Samba4 в роли контроллера домена вкупе с дополнительным файловым сервером так же на базе Samba4. Что в итоге мы получим? Два настроенных сервера с samba4, первый в роли domain controller, второй в роли member server с файлами пользователей. Функционирования этой связки я добивался около месяца, за сим, не поделится конечным рецептом просто не имею права…

Немного предыстории: в компании используется файловый сервер на базе samba3.6 с LDAP Backend, который содержит список всех пользователей и групп с правами доступа. Права доступа на каталоги выставляются с помощью xattr_acl (Extended file attributes), в LDAP хранится список пользователей с соответствием группам доступа. Собственно требуется переехать с этой инфраструктуры на samba4…

Немного предыстории: в компании используется файловый сервер на базе samba3.6 с LDAP Backend, который содержит список всех пользователей и групп с правами доступа. Права доступа на каталоги выставляются с помощью xattr_acl (Extended file attributes), в LDAP хранится список пользователей с соответствием группам доступа. Собственно требуется переехать с этой инфраструктуры на samba4…
+35
Freescale уменьшила размеры самого маленького в мире микроконтроллера на архитектуре ARM
1 min
44K
Компания Freescale Semiconductor, известный производитель полупроводниковых чипов и микропроцессоров, представила преемника микросхемы Kinetis KL02, которой в прошлом году достался титул самого маленького микроконтроллера на архитектуре ARM. В ассортименте производителя новинка получила обозначение Kinetis KL03. Она на 15% меньше по сравнению с Kinetis KL02.
+36
Вскрытие Meizu MX3
9 min
65KПриветствуем вас, Хабралюди! Мы наконец-то готовы представить вам очередной материал формата Вскрытие, на этот раз разбираться будем во «внутренностях» топового музыкального смартфона Meizu MX3 – рассмотрим отдельно компоненты устройства, взглянем на то, как они скомпонованы внутри корпуса и отметим некоторые особенности сборки.


+30
ONYX C63ML Akunin Book — первая ласточка из семейства «фанбук»
6 min
23KЗдравствуйте, дорогие друзья!
Хочу рассказать о своем знакомстве с первой электронной фан-книгой ONYX C63ML Akunin Book, стилизованной под творчество Бориса Акунина.

Помимо авторской стилизации и художественного оформления, эта книга имеет ряд привлекательных решений: уникальное программное обеспечение, сенсорный емкостной экран с подсветкой, операционная система Android, качественный чехол в комплекте. В обзоре подробные фотографии, тесты и впечатления от эксплуатации этой электронной книги.
Хочу рассказать о своем знакомстве с первой электронной фан-книгой ONYX C63ML Akunin Book, стилизованной под творчество Бориса Акунина.

Помимо авторской стилизации и художественного оформления, эта книга имеет ряд привлекательных решений: уникальное программное обеспечение, сенсорный емкостной экран с подсветкой, операционная система Android, качественный чехол в комплекте. В обзоре подробные фотографии, тесты и впечатления от эксплуатации этой электронной книги.
+20
Взламываем беспроводное управление светом nooLite
17 min
43K
Привет!
В нашей предыдущей статье мы показывали, как наш контроллер для домашней автоматизации работает с устройствами системы NooLite без использования родных USB-донглов для передачи и приёма сигнала. Чтобы это стало возможно, мы провели реверс-инжиниринг протокола NooLite.
Собственно эта статья содержит описание протокола и рассказывает, как именно мы его разбирали.
+32
США отдаёт контроль над корневой зоной DNS
3 min
55K
В эту пятницу на сайте неприметного американского ведомства появилось сообщение, что оно планирует отдать управление над корневой зоной DNS. Другими словами, США перестанет контролировать всю систему доменных имён, отдавая управление сообществу.
Техническая часть
В DNS рекурсивное определение имени начинается с точки в конце доменного имени. Чаще всего её пропускают, но, на самом деле вместоwww.grani.ru
следует писать www.grani.ru.
— именно так, с точкой. Когда клиент просит рекурсивный DNS сервер сказать, какой IP адрес у www, процесс начинается с определения авторитетных серверов для зоны ru. И начинается он с запроса в зону ".", сервера которых отвечают, что у зоны RU есть несколько авторитетных серверов, и дальше процесс рекурсивно продолжается, пока мы не узнаем, что A-запись для www указывает на 46.226.110.151, после чего браузер идёт по этому адресу и выясняет, что Роскомнадзор… Впрочем, пост не о цензуре.За корневую зону отвечают корневые сервера. У них 13 IP-адресов — это максимальное количество, которое можно уложить в один ответ DNS по UDP. Самих серверов больше (используется мультикастинг, балансировка нагрузки посредством DNAT'а и другие технологии), но адресов у них — 13. Адреса корневых серверов намертво «прибиты гвоздями» в конфигах практических любых DNS-серверов. И даже DNS-сервера, которые не поддерживают рекурсию, обычно отвечают списком корневых серверов (если мы не знаем корневых серверов и не знаем с чего начать процесс рекурсивного определения имени, то любой DNS-сервер нам укажет именно на них).
Именно в корневой зоне регистрируются TLD (top level domains), такие как .ru, .com, .jp, .info и т.д.
На этом техническая часть заканчивается и начинается политическая.
Политическая часть
DPI, великий китайский файрвол, малый русский файрвол — это всё ерунда. Кто контролирует корневую зону, контролирует весь интернет. Если из DNS удалить зону .no, то ни один норвежский сайт не будет открываться по имени. Точнее, перестанет открываться через некоторое время, как только протухнут кеши у ресолверов.Исторически, с момента разрешения использования Интернета для коммерческой деятельности, корневая зона находилась в формальном подчинении NTIA (полное название: U.S. Commerce Department’s National Telecommunications and Information Administration — американский аналог Роскомнадзора, правда, без функций цензуры). В ходе развития Интернета, была создана некоммерческая организация ICANN, которая занималась отношениями с регистраторами национальных доменов, созданием новых TLD и т.д. С нею был заключен договор — и ICANN выступала и в качестве IANA (верхнего распределяющего IP-адреса), она же управляла корневой зоной. Техническая же работа была поручена Verisign. Но формальный контроль оставался у США.
+95
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity