Обновить
33
0
Sam Protsenko@skb7

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

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

Функциональное программирование для всех

Время на прочтение33 мин
Охват и читатели357K

Доброго времени суток. Это статья — перевод заинтересовавшего меня поста в блоге аспиранта Университета штата Нью-Йорк в Стоуни-Брук. Статья в доступной форме описывает основные концепции функционального программирования, их преимущества и недостатки. Думаю она будет полезна широкому кругу читателей, которые сомневаются, нужно ли им углубляться в мир функционального программирования или нет. Пожелания, предложения и замечания по переводу и терминологии принимаются по личной почте.

Мнение переводчика может иногда не совпадать с мнением автора, но переводить статью было крайне занимательно.

UPD: альтернативный вариант перевода вы можете найти на rsdn (спасибо flamingo за ссылку).
Читать дальше →

Самый важный инструментарий

Время на прочтение5 мин
Охват и читатели23K
Давно хотел написать на данную тему, но создавая топик, подвис минуты на две, пытаясь понять, куда его запихнуть (в какую тему). В итоге запихнул в программирование, но тема актуальна вообще для всего хабра в целом. Речь идет о глазах.

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

Приступим.
Читать дальше →

Водяное охлаждение своими руками: теория и практика

Время на прочтение5 мин
Охват и читатели337K
В этой статье я постараюсь рассказать о своей попытке изготовить систему водяного охлаждения для процессора в домашних условиях. При этом опишу основные моменты и технические тонкости на примере собственного опыта. Если вам интересно подробное иллюстрированное руководство по изготовлению, сборке и установке такой системы, то добро пожаловать под кат.

Трафик, много картинок! Видео процесса изготовления в самом низу.

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

Власть над демонами или автозапуск в Linux

Время на прочтение5 мин
Охват и читатели376K
Для реализации автозапуска в Linux написано уже немало и на разных языках, но приходится искать, потому постарался свести большую часть тут. Здесь не рассказывается полностью весь процесс с нуля, но предоставлено достаточно информации и ссылок, чтобы сделать атоматический запуск программ в Linux реальностью.
Читать дальше →

Из чрута — на поверхность: как, почему и что делать?

Время на прочтение2 мин
Охват и читатели26K
Основано на реальных событиях.

Представьте себе, что у вас есть крупный проект, для которого необходимо собирать софт. А ещё у вас есть желание замутить сборочную ферму, на которой ваши подчинённые будут собирать нужный софт. А ещё это всё происходит под Linux-ом, и каждому надо организовать «чистое» окружение с минимумом затрат. Как это сделать?

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

А через неделю после интеграции этого решения и после увольнения сотрудника «икс» вы просыпаетесь — а на сервере девственно чистый жёсткий диск. Злодей уничтожил труды разработчиков, работа встала.

Почему же он сумел удалить всё, если был в «защищённом» «запертом» чруте?
Читать дальше →

Скринкасты в линуксе, личный опыт

Время на прочтение4 мин
Охват и читатели10K
openshot
Чуть больше года назад я публиковал здесь на хабре скринкасты. Недавно вышел последний и хотелось поделится опытом создания скринкастов под линуксом.
Читать дальше →

Удобство наблюдения, atop

Время на прочтение3 мин
Охват и читатели125K
Добрый день, сообщество,
На Хабре уже говорилось о всевозможных TOP- овых утилитах, на этот раз, я хочу попробовать рассмотреть поближе утилиту atop. Постараюсь немного сравнить ее с существующими утилитами наблюдения за производительностью и научиться читать выводы данной команды.
У системных администраторов задача наблюдения за производительностью встает чуть ли не каждый день, и конечно же хотелось бы все это сделать в рамках одной утилиты и без особых танцев с бубном, как мне кажется удобнее всего в таком случае использовать команду atop.
Читать дальше →

10 самых популярных игр для Ubuntu по версии UALinux

Время на прочтение1 мин
Охват и читатели15K
Недавно я постил новость о том, что команда UALinux создала репозиторий с играми для Ubuntu. Согласно информации от UALinux, репозиторий стал очень популярным среди пользователей Ubuntu, и по статистике обращения к репозиторию ребята выстроили рейтинг десяти самых популярных игр из представленного списка (а он весьма немаленький).
Читать дальше →

Tilt-Shift фотографии своими руками

Время на прочтение5 мин
Охват и читатели67K
Что такое Tilt-Shift объективы и что с их помощью можно сделать знают многие. Недавно на хабре была статья о Tilt-Shift генераторе, который создает этот эффект путем обработки обычной фотографии. Но программка эта написана только для Windows, да еще и платить за нее надо. Все плагины для графических редакторов почему-то тоже требовали денег и лицензий. Поэтому было принято решение с этим вопросом разобраться самостоятельно и сделать инструмент пусть немного проще профессионального софта, и не идеально симулирующий оптику объектива, но бесплатный, открытый и доступный всем желающим! Что из этого получилось, а что нет — можете посмотреть сами.
Всех заинтересовавшихся прошу под кат. Текст, код, картинки.

Фанаты собрали уже $1.3M на Wasteland 2

Время на прочтение3 мин
Охват и читатели20K
imageБрайан Фарго (основатель Interplay) уже несколько лет хочет создать продолжение игры Wasteland (1988). В своё время игра стала прародительницей жанра постапокалиптических RPG, в первую очередь — культовых Fallout 1 и 2. Однако, найти издателя для продолжения оказалось непросто.

Несколько дней назад Брайан от лица его компании InXile начал проект по сбору средств для создания Wasteland 2 при помощи сервиса KickStarter.

«Пожалуй, это последний шанс создать продолжение Wasteland. Мы пытались убедить издателей не один раз, но они отказывались. Они не нашли ничего интересного в крепкой игре старой школы.»

Необходимая сумма в $900'000 была собрана за рекордные 42 часа.
Читать дальше →

КартонБот v1.0 — утилизируем картон с пользой для мозга

Время на прочтение6 мин
Охват и читатели31K
Количество попыток собрать робота у меня – не счесть. Но, то материалов не хватало, то навыков их обработки, то каких-то узлов, то знаний, как все эти штуки связать вместе. Если знакома такая ситуация – я постараюсь рассказать свой опыт сборки робота из подручных материалов и каких-то узлов купленных на eBay.
image
Робот обошелся мне в 35$ и два дня отпуска, но восторг, испытанный от его первых движений, стоил намного больше. Если заинтересованы – прошу под кат (много картинок).
Читать дальше →

Пользовательские литералы в C++11

Время на прочтение5 мин
Охват и читатели45K
Более полугода прошло с момента принятия стандарта C++11. В сети можно найти много материалов посвященных новому стандарту, однако большинство из них касаются самых простых возможностей, самых сладких. Я говорю о лямбда-функциях, системе автоматического выведения типов, новых спецификаторах, умных указателях и т.д. Да, это действительно интересные вещи и, можно смело сказать, они одни из самых полезных и часто используемых. Но на них свет клином не сошелся, и новенький C++11 предлагает нам не только их.

Ниже я хочу рассказать о пользовательских литералах — весьма полезном средстве, хоть и не в повседневных целях.
Читать дальше →

Приводим в порядок розетку

Время на прочтение2 мин
Охват и читатели63K
Начну статью с маленького заявления.

Я ненавижу блоки питания и зарядные устройства!

Нет, я не говорю о компьютерных, ноутбучных БП или еще каких-нибудь хитрых девайсах. Я говорю о той отрыжке промышленности, которую по-английски называют wall charger. Они отвратительны: их можно воткнуть не в каждую розетку, тяжелые, объемные, расшатывают и ломают розетку. Они перекрывают соседние гнезда в удлинителях, выпадают, да и просто выглядят неэстетично.
Как видите, из пяти гнезд два пропадают впустую.



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

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

Подключение цветного LCD с сенсорным экраном к микроконтроллеру

Время на прочтение9 мин
Охват и читатели98K
Добрый день, хабр. Сегодня я хотел бы поделиться некоторым опытом, касающимся подключения цветных LCD-индикаторов к микроконтроллеру. Эта тема уже поднималась на хабре (http://habrahabr.ru/post/139384/), поэтому данный пост может рассматриваться как дополнение к уже написанному моими уважаемыми коллегами.

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

С чего начинается устройство

Время на прочтение5 мин
Охват и читатели27K
Когда смотришь различные статьи радиолюбителей о изготовлении устройств, то там обычно устройство выполняет различные функции, делает это красиво и изящно. Но в 90% случаев само устройство представляет собой сколхоженное на коленке непонятное нечто с кучей проводов. Всё это связанно как правило с тем, что люди даже не задумываются как будет выглядеть их будущее устройство.




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

Спасительная флешка на основе дистрибутива Linux Debian/Ubuntu

Время на прочтение4 мин
Охват и читатели22K
Начну с сути идеи — куча одинаковых компов, на них требуется установить ОС Windows XP с одинаковым набором программ. Первая мысль — настроить один эталонный компьютер, снять с него образ жесткого диска и развернуть на остальных компьютерах.

Acronis не подходил по «религиозным соображениям» компании.

Поискав DIY решение, наткнулся на замечательную вещь ntfsclone из пакета ntfsprogs.

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

Отладка программ на C для начинающих

Время на прочтение3 мин
Охват и читатели36K
… или что делать если «Hello world!» упала.

Всё последующее в основном написано для ОС Linux и консольной отладки, хотя кое-что можно использовать и в других условиях.
Читать дальше →

STM32F1хх — продолжаем лечение от ардуинозависимости при помощи LCD

Время на прочтение14 мин
Охват и читатели128K
Добрый день, уважаемые хабровчане. В своей прошлой статье я рассмотрел применение замечательных микроконтроллеров STM32F1xx на примере управления сервоприводами. В этой статье мы обратимся к более интересному вопросу – управлению цветным графическим LCD-дисплеем. Помимо стандартной работы с дисплеем я постараюсь осветить вопросы использования особенностей микроконтроллеров STM32F для эффективного решения данного вопроса. Итак, начнем.
Читать дальше →

Обзор конференции Going Native'2012

Время на прочтение7 мин
Охват и читатели3.7K
Недавно завершилась конференция GoingNative’2012, организованная компанией Microsoft. Она проходила 2 и 3 февраля в Редмонде, и главной темой был C++11. Мне показалось, что это замечательное событие недостаточно полно освящено, и захотел исправить ситуацию.
«C++11 feels like a new language» Bjarne Stroustrup
«We’re all learning C++11» Herb Sutter
«We broke every single book on the planet, and we broke every single programmer on the planet» Herb Sutter

Герб Саттер во вступительном слове посвятил конференцию Деннису Ритчи, создателю языка C, и ключевому разработчику операционной системы UNIX.

Это очень важное событие для сообщества С++, где выступали и отвечали на вопросы люди, ставшие легендами в мире C++, во многом определяющие его развитие. Доклады очень интересные, и я вынес для себя много нового. Дальше идёт обзор всех докладов и сессий вопросов и ответов.
Читать дальше →

Виртуальные функции в C

Время на прочтение4 мин
Охват и читатели30K
Недавно мне задали вопрос: как бы я реализовал механизм виртуальных функций на языке C?

Поначалу я понятия не имел, как это можно сделать: ведь C не является языком объектно-ориентированного программирования, и здесь нет такого понятия, как наследование. Но поскольку у меня уже было немного опыта с C, и я знал, как работают виртуальные функции, я подумал, что должен быть способ сымитировать поведение виртуальных функций, используя структуры (struct).

Краткое пояснение для тех, кто не знает, что такое виртуальные функции:
Виртуальная функция — это функция, которая может быть переопределена классом-наследником, для того чтобы тот имел свою, отличающуюся, реализацию. В языке C++ используется такой механизм, как таблица виртуальных функций
(кратко vtable) для того, чтобы поддерживать связывание на этапе выполнения программы. Виртуальная таблица — статический массив, который хранит для каждой виртуальной функции указатель на ближайшую в иерархии наследования реализацию этой функции. Ближайшая в иерархии реализация определяется во время выполнения посредством извлечения адреса функции из таблицы методов объекта.


Давайте теперь посмотрим на простой пример использования виртуальных функций в C++
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Краматорск, Донецкая обл., Украина
Дата рождения
Зарегистрирован
Активность