HPUNIX Сайт о ОС и не только!

Языки программирования

Распознавание лиц средствами JavaScript

Не могу удержаться от соблазна пересказать еще одну заметку с ХабраХабра — «Поиск лиц на картинке при помощи JavaScript и Canvas».

Распознавание лиц средствами JavaScript

Вы, может быть, лицезрели, как многие программные продукты для работы с изображениями могут отыскивать на этих изображениях людей по лицам. Эта разработка уже издавна выдумана и обкатана, хотя и не безупречна. Итак вот, китайский программер Лю Лю (Liu Liu) воплотил этот метод при помощи JavaScript и Canvas.

Разработка веб-приложений на Yesod Восемь тысяч двести двенадцать Введение

Позвольте громозвучно объявить о том, что не так давно маленькая группа энтузиастов, посреди которых есть и я, начала работу над русским переводом книжки Developing Web Applications with Haskell and Yesod. В сей заметке я желал бы представить вашему вниманию предварительный вариант перевода первой главы этой книжки.

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

Работа с регулярными выражениями в Scala
Работа с регулярными выражениями в Scala

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

В общем, рядовая ситуация из серии «скачать и пропарсить», берем Perl и вперед. Но ведь мы уже много раз так делали, не любопытно! Давайте лучше поглядим, как управится с этой задачей Scala.

Работа с XML в Haskell и фреймворке Yesod

Будет преувеличением сказать, что работы над переводом книжки о веб-фреймворке Yesod близятся к окончанию, но большая часть пути уже точно пройдена. В текущее время не переведено несколько глав, а те, что переведены, еще предстоит перепроверить. Сейчас я желал бы представить на ваш трибунал предварительный вариант перевода 27-ой главы «xml-conduit», перевод которой не без пинков со стороны Darkus’а я окончил на деньках.

Работа с Excel-файлами в Scala

В сей заметке рассматривается код на Scala, генерирующий электрическую таблицу в формате xlsx, содержащую, кроме данных в ячейках, формулы, графики и украшательства типа выделения текста жирным шрифтом. Как обычно, по ходу изложения объясняются особенности языка Scala, которые ранее не подверглись рассмотрению в этом блоге.

В мире Java для работы с различными офисными форматами файлов существует восхитительная библиотека POI.

Пытаюсь изучать Objective Caml

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

И чтоб никаких матанов типа монад, аппликативных функторов, iteratees и застежек.

Прощай, FreeBSD

Реальным постом мне хотелось бы уведомить вас о том, что неделю вспять я снес FreeBSD со собственного ноутбука Asus X51L, тем совсем избавившись от этой ОС в собственной жизни. Сейчас я счастливый убунтовод и юзер Android. Под катом перечислены предпосылки, которые вынудили меня отрешиться от FreeBSD.

Начнем с поддержки железа. Моя попытка установить PC-BSD на Asus Eee PC 1215P не увенчались фуррором, а Ubuntu встала безо всяких танцев с бубнами и подцепила все железо.

Простые вещи, понимание которых пришло ко мне со временем Восемь тысяч двести двенадцать часть первая
Простые вещи, понимание которых пришло ко мне со временем Восемь тысяч двести двенадцать часть первая

Будучи юным и доверчивым, я желал перепробовать на практике все новомодные NoSQL-решения, знать все необыкновенные языки программирования и писать код, покрытый тестами более, чем на 98%. Я считал, что при желании смогу идиентично отлично разбираться как в веб-разработке, так и в написании драйверов для FreeBSD.

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

Простые вещи, понимание которых пришло ко мне со временем Восемь тысяч двести двенадцать часть вторая

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

Наша программка довольно хороша

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

Простой HTTP сниффер на Perl
Простой HTTP сниффер на Perl

Решил вот написать собственный HTTP сниффер. Не то, чтоб имеющиеся решения, всякие там FireBug, Wireshark, tcpdump и urlsnarf, плохо работали. Просто какие-то они не совершенно комфортные либо не всегда делают то, что мне вправду необходимо.

Ну как «решил написать» — как обычно пишутся программки на Perl. Я взял модули Net::Pcap и Sniffer::HTTP, накидал графический интерфейс в wxFormBuilder и связал сии составляющие голубой изолентой при помощи пары сотен строк кода.

Программная транзакционная память в Haskell

Программная транзакционная память (software transactional memory, STM) — это механизм взаимодействия меж потоками, имеющий ряд существенных преимуществ перед обычным подходом с внедрением блокировок. Благодаря этой заметке вы узнаете, как работать с STM в Haskell.

Примечание: До того как продолжать чтение, ознакомьтесь с заметкой Работа с нитями/потоками в Haskell.

Работа с транзакционной памятью похожа на работу с транзакциями в базах данных.

Причины, по которым мне нравится Haskell

Последний гиковcкий выпуск Radio-T (номер 253) вышел на уникальность увлекательным. Речь зашла о Scala, рефакторинге, TDD, багтрекерах, и даже (наконец!) о моем возлюбленном Haskell. К огорчению, тема «чем же так неплох этот ваш Haskell» не была в подабающей мере раскрыта.

Такое чувство, что большая часть айтишников вправду не понимают плюсов многофункционального программирования. В этой заметке я постарался развернуто обрисовать, за что мне нравится Haskell.

Примеры использования wxWidgets

Как и обещал, пишу продолжение собственной заметки про wxWidgets. В этом посте будет описана установка wxWidgets и Code::Blocks под разными операционными системами, базы сотворения GUI при помощи wxSmith, также приведены маленькие примеры кода.

1. Установка wxWidgets и Code::Blocks

Creating interactive QT hello world GUI application using QT Creator.

Так как мы имеем дело с кроссплатформенной разработкой, здесь все находится в зависимости от применяемой нами ОС. Под Windows необходимо скачать wxPack и компилятор MinGW отсюда, последнюю версию Code::Blocks без MinGW отсюда и утилиту wx-config.exe отсюда.

Пример использования генетических алгоритмов

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

Постановка задачки последующая. Есть огромное количество точек, принадлежащих графику некоторой функции. Необходимо отыскать полином N-ой степени, проходящий как можно поближе к этим точкам. Другими словами, необходимо аппроксимировать функцию.

Пример использования Common Test, EUnit и Meck

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

Найти на сайте: параметры поиска

Windows 7

Среда Windows 7 на первых порах кажется весьма непривычной для многих.

Windows 8

Если резюмировать все выступления Microsoft на конференции Build 2013.

Windows XP

Если Windows не может корректно завершить работу, в большинстве случаев это

Windows Vista

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