Sunday, June 17, 2012

Хабрахабр

КупиКупон - скидки от 50% до 90%

Хабрахабр:

К рою описаний мини-компьютеров, начало которому положил 25-долларовый Raspberry, которые соревнуются между собой компактностью и ценой, добавился ещё один экземпляр ? MK802, который имеет одну особенность ? устройство имеет слот для SD-карт при помощи которого можно загрузить альтернативную операционную систему, помимо идущей по умолчанию Android 4.0. Аппаратная начинка MK802 выглядит следующим образом: процессор Allwinner A10 ARM Cortex-A8 с частотой 1.5 ГГц, 512 ОЗУ и флеш-диском объемом в 4Гб. Интерфейсная часть также сравнительно небогата ? Wi-Fi, USB и HDMI. Стоимость устройства ? 74$. Редакторы сайта liliputing.com, используя слот для SD-карт, запустили на MK802 полноценную десктопную версию Ubuntu 10.04, описав процесс установки образа системы на SD-карту и сняли видео работы мини-компьютера. Отмечается, что, хотя запуск тяжёлых приложений, таких как OpenOffice и Firefox занимает довольно много времени, но работают программы сравнительно шустро, без заметных лагов; на видео промежуток между кликом по значку Firefox и его запуском проходит около 8-9 секунд. Посмотреть видео


Java vs. C#? Что может быть лучше вечного спора? Нет, данная статья не посвящена очередному бенчмарку, и даже не является holy war, не стоит даже вопрос: ?кто круче?. Для каждой задачи существует свой инструмент. Сравнивать C# и Ruby, например, не имеет смысла, т.к. их целевое предназначение совершенно разное, да и природа также. Однако именно C# и Java являются наиболее близкими по своей философии. Очень часто коллеги, пишущие на Java, даже не подозревают о многих (!!!) вещах, которые предоставляет (или, наоборот не предоставляет) C#. Если Вам интересно посмотреть на C# и Java без субъективизма, а также узнать внутреннее устройство той или иной возможности, тогда вперед. Читать дальше →


Греческий экономист Янис Варуфакис (Yanis Varoufakis), который в последнее время не сходит с экранов BBC, CNN и Bloomberg Television в связи с греческим кризисом, рассказывает, как судьба занесла его в компанию Valve. В последнее время Янис стал известным экспертом и получает сотни писем в день от отчаянных инвесторов и бизнесменов. Сначала он принял сообщение от директора Valve за спам, но затем заинтересовался. Руководитель игровой студии предложил ему заняться изучением виртуальной экономики. Оказалось, что это очень увлекательное дело. Таким образом, компания Valve стала вторым или третьим разработчиком, чьи игры будет анализировать штатный профессиональный экономист. Первопроходцем тут является компания CCP и игра EVE Online ? там Эйольфур Гудмундссон (Eyj?lfur Gu?mundsson) уже пять лет публикует квартальные отчёты с обзором игровой экономики, изменением индексов цен и прочей статистикой. Читать дальше →


Последнее время на Хабре стали появляться статьи про OpenShift, что привлекло моё внимание, ведь платформа действительно интересна и грех в ней не поковыряться, да и так совпало, что я начал задумываться найти альтернативу моему уютному Dropbox-репозиторию Maven в связи с отменой возможности иметь прямые ссылки и папки Public в целом ( пруф: habrahabr.ru/post/145864/ ). Итак, сегодня мы с Вами будем устанавливать Maven-репозиторий под управлением Nexus под собственные нужды, а Ваш покорный слуга поделится костылями знаниями, приобретёнными будучи первопроходцем в этом деле. Читать дальше →


Три месяца назад на Хабре публиковалась история о том, что корпорации Prentke Romich Company (PRC) и Semantic Compaction Systems (SCS) ? производители аппаратных устройств в области Augmentative and Alternative Communication (AAC) стоимостью до $9000 ? подали иск против врачей-разработчиков программы Speak for Yourself за $300, которая реализует те же самые функции на iPad. Программы AAC позволяют изучать язык и разговаривать, выбирая на экране нужные пиктограммы. Рынок подобных устройств чётко поделен между крупными корпорациями, которые обладают толстыми пакетами патентов. История стала достоянием гласности со слов мамы девочки Майи, для которой программа Speak for Yourself стала единственным способом общаться с внешним миром. Несколько дней назад мама с горечью сообщила, что после юридической переписки компания Apple приняла решение удалить Speak for Yourself из каталога iTunes, несмотря на отсутствие соответствующего судебного постановления, а только на основании жалобы от PRC и SCS. Читать дальше →


Почти год прошел с момента первого обзора ASUS Transformer TF101. C тех пор гибридный планшет ASUS успел получить обновление до Android 4 и? морально устареть. Компания уже выпустила Slider, Slate, Transformer Prime ? устройства премиум-класса, и вот теперь появился ASUS Transformer Pad 300T (TF300T) ? новое доступное устройство, которое пришло на смену первому Трансформеру. Планшет уже поступил в продажу, а в самое ближайшее время ожидаются поставки новой модели класса hi-end ? Transformer Pad Infinity (и не будем забывать о неведомом Padfone). Скорость выпуска продуктов ASUS поражает ? несколько месяцев назад писали обзор Transformer Prime. Откровенно говоря, TF300T не сильно отличается от Prime: батарея держит чуть меньше, дисплей не такой яркий (10-дюймовый экран имеет 350 nit яркости, а не 600). Оба планшета работают на Tegra 3 под управлением Android Ice Cream Sandwich, обладают практически идентичной 8-мегапиксельной камерой, корпус TF300T, несмотря на пластик, заимствует многие элементы дизайна более дорогого собрата. На этом, казалось бы, обзор можно было бы завершить, но самое интересное, как обычно, вас ждет дальше. Читать дальше →


18 июня 2012 в 17:00 (Мск) Санкт-Петербургская группа ALT.Net проводит онлайн встречу, на которой Артем Смирнов расскажет про опыт использования FubuMVC ? MVC фреймворка для .Net. Доклад будет проводится на русском языке по live meeting: www.livemeeting.com/cc/mvp/join?id=KFJP23&role=attend&pw=D%254%5B%5DMNb2 (ссылку лучше открывать в IE). Регистрация не требуется. Примерный план: 1. Семейство Fubu: обзор основных проектов. 2. FubuMVC: основные архитектурные отличия от Asp.Net MVC. 3. Поведения и матрешки. 4. Convention over configuration 5. Как работают политики. 6. Composition over inheritance. 7. Configuration time vs Runtime. 8. Конвенции и политики: ? встроенные ? методы-расширения ? лямбды ? классы 9. Конфигурация FubuMVC ? Action discovery ? Routing ? View attachment ? Actionless views 10. Ветвление: FubuContinuations 11. Assets 12. Клиентская история: jquery continuations и fubuvalidation ? Политики на javascriptе. 13. Преимущества и недостатки.


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


Многим из нас чуть не ежедневно приходится сталкиваться с недружным строем разнообразных разъёмов для подключения между собой различных устройств. Вспомнить хотя бы многообразие портов на некоторых компьютерах некоторое время назад, когда на одном системном блоке можно было встретить COM, LPT, PS/2, MIDI, USB и FireWire одновременно. По счастливому стечению обстоятельств, COM, LPT, PS/2 и FireWire на современных бытовых компьютерах вымерли, теперь для целей подключения периферии у нас остался только USB. Разнообразной периферии стало больше. А интерфейсов ещё больше. В этом топике я оставлю за кадром беспроводные интерфейсы, а также аналоговые проводные, и расскажу о существующих проводных интерфейсах для передачи дискретных сигналов. Читать дальше →


Часто бывает так, что поставив новую стабильную систему, да ещё и отмеченную как LTS, вам всё равно хочется установить новое ядро (в котором, например, улучшено энергосбережение и наконец-то заработает ваш новый планшет Genius). Патчить и собирать ядро из исходников ? игра, конечно, интересная, но для ленивых пользователей Ubuntu существует готовый репозиторий. Одна беда ? скачивать пакеты и следить за обновлениями придётся вручную. До недавнего времени за обновлениями можно было следить, к примеру, на сайте где ко всему прочему публиковались списки команд для каждой архитектуры, которые можно было просто скопировать в терминал. Но недавно появился скрипт который и послужил мотивом для создания этого очерка. Я искренне верю, что авторы скрипта задавались единственной целью ? перестать публиковать надоевшие списки команд и объяснять в комментариях какая у кого архитектура, но тем не менее скупая мужская слеза покатилась по моей щеке когда я смотрел на его содержимое. Поэтому я решил сделать паузу и вспомнить как же это делалось раньше, когда деревья были большими, а иногда даже бинарными. Читать дальше →



Последний год я работал над реализацией вирусного сканера для одной антивирусной как ни странно компании. Пост являет собой выжимку приобретенных знаний, и повествует хабрасообществу о внутреннем устройстве как ни странно антивирусного сканера. Сканирующий движок или сканер ? это фундамент антивирусного пакета. Являет собой бэк-энд антивируса и, как правило представлен в виде dll, так как сканер используется сразу несколькими программами из пакета. Графическая оболочка в этом случае ? лишь красивая обертка для отображения результатов движка. Всю полезную работу, делает движок в бэк-енде. Читать дальше →


В свое время карманные персональные компьютеры Psion были чрезвычайно популярными. Не так давно на Хабре появился обзор одного из КПК от Psion, выпущенного еще в 1999 году. В свое время эта компания была популярнее, чем Palm, да что там ? мало кто в то время мог соперничать с Psion в сфере бизнес-КПК. Но дальше дело не пошло, и компания не смогла стать настолько популярной, насколько могла бы. Хотя багаж, если так можно выразиться, за ?плечами? Psion немалый. Читать дальше →


Игровой контроллер Kinect, как известно, работает на базе инфракрасного проектора с монохромной КМОП-материцей ? он вполне подходит на роль 3D-сканера для составления трёхмерных моделей. Если подключить Kinect к цифровой камере, а результат съёмки обработать в специальной программе, то можно создавать очень необычные кинематографические эффекты. Именно для этого предназначен open source программный пакет RGBD Toolkit (проект на github). Читать дальше →


I. Суть проблемы. В список основных предназначений XMLHttpRequest, конечно, не входит запрос HTML, чаще этот инструмент взаимодействует с XML, JSON или простым текстом. Однако связка XMLHttpRequest + HTML хорошо работает при создании расширений к браузеру, которые в фоновом режиме опрашивают на предмет новостей сайты, не предоставляющие для этого почтовую подписку, RSS или другие экономные API или предоставляющие эти сервисы с какими-то ограничениями. При создании нескольких расширений для Firefox я сталкивался с такой необходимостью. Работать с полученным от XMLHttpRequest кодом HTML при помощи регулярных выражений ? способ очень ненадёжный и громоздкий. Получить DOM от XMLHttpRequest можно было лишь для правильного XML. Поэтому приходилось следовать хитрым советам на сайте разработчиков. Однако начиная с Firefox 11 появилась возможность непосредственного получения DOM от XMLHttpRequest, а в Firefox 12 была добавлена обработка таймаутов. Я испытал новую возможность на создании мини-индикаторов новых топиков для двух небольших форумов, и это оказалось очень удобным (50 строчек кода плюс расширение CustomButtons ? вот и готовый индикатор за пять минут, с опросами по таймеру и четырьмя состояниями: нет новостей, есть новости, ошибка и таймаут). Всё работало как часы. Поэтому я попытался убрать из кода своих расширений все прежние костыли и ввести туда новый удобный парсинг. Однако при работе с сайтом rutracker.org возникла странная проблема (тестирование проходит на последней ночной сборке под Windows XP; очень прошу прощения за все косяки в коде и формулировках: у меня нет программистского образования и опыт мой в этой сфере, к сожалению, очень невелик.). Читать дальше →


В комментариях к статье Алгоритмическая неразрешимость ? это не препятствие для алгоритмического ИИ я высказался, в свете того, что Почему-то все зациклились на задачах NP. Но никто почему то не ставит задачи БЫСТРЕЕ решать задачи класса P (вплоть до мгновенного ответа) и намекнул, что проблемы построения ИИ заключаются скорее в принципиальной (непреодолимой) медленности компьютеров построенных по принципу машин Тьюринга. В статье же говорилось о теоретической проблеме алгоритмической неразрешимости на примере задачи останова. Человек решает задачу останова, но делает это с ошибками, вероятность которых повышается с усложнением программ. Способность человека решать алгоритмически неразрешимые проблемы (как массовые проблемы) является крайне сомнительной. Его способность находить решения для отдельных частных случаев ничего не доказывает, ведь это под силу и компьютеру. и вот тут кажется недооценен ?алгоритм? работы человека с нахождением частных случаев. Не под силу это компьютеру, ему не хватает устройства, благодаря которому он мог бы выделять частные случаи. Конечно, в комментариях в этой статье ? многие сразу закодировали эти частные случаи, но речь же идет о том, чтобы компьютер сам это осуществил бы при решении. Представляется, что нахождение частных случаев как минимум принципиально снижает сложность расчетов. Человек упрощая и идеализируя затем переходит к формулированию законов, тем самым переходя на качественно другой уровень. И вот это компьютеру не доступно. Но все по порядку. Читать дальше →




Composer (getcomposer.org) ? это относительно новый и уже достаточно популярный менеджер зависимостей для PHP. Вы можете описать от каких библиотек зависит ваш проект и Composer установит нужные библиотеки за вас! Причём Composer ? это не менеджер пакетов в классическом понимании. Да, он оперирует с сущностями, которые мы будем называть ?пакетами? или библиотеками, но устанавливаются они внутрь каждого проекта отдельно, а не глобально (это одно из основных отличий от старого-доброго PEAR). Кратко, как это работает: У вас есть проект, который зависит от нескольких библиотек. Некоторые из этих библиотек зависят от других библиотек. Вы описываете в своём проекте те библиотеки, от которых непосредственно зависит ваш код. Composer находит нужные версии требуемых библиотек для всего проекта, скачивает их и устанавливает в папку вашего проекта. При создании Composer авторы черпали идеи и вдохновение из аналогичных проектов: npm для Node.js и Bundler для Ruby. Изначально он был спроектирован и разработан двумя людьми Nils Adermann и Jordi Boggiano, сейчас в проекте участвует более двадцати контрибьюторов, Проект написан на PHP 5.3, распространяется под лицензией MIT и доступен на github. Первые коммиты были сделаны апреле 2011 года и на сегодняшний день Composer находится в стадии ?alpha3?. Однако, он уже достаточно стабилен и используется многими популярными PHP проектами (например, Symfony 2). Список проектов использующих Composer можно посмотреть на сайте packagist.org ? это официальный репозиторий Composer пакетов. Кстати, на недавней конференции Devconf 2012 разработчик фреймворка Yii в своём докладе упомянул, что Yii2 скорее всего тоже будет использовать Composer. В этой статье я кратко опишу основные возможности Composer и мы попробуем создать демонстрационный проект использующий Composer для загрузки необходимых библиотек. Все примеры будут доступны на github.com и bitbucket.org. Читать дальше →


Отписаться от этой рассылки

No comments:

Post a Comment