Как стать автором
Обновить
0
Карма
0
Рейтинг
Евгений @gentz

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

  • Подписчики 3
  • Подписки 4
  • Публикации
  • Комментарии

Systemd за пять минут

Блог компании Southbridge
Наша компания занимается администрированием веб-серверов на базе CentOS. Довольно часто наши клиенты используют веб-приложения на базе python, ruby или java. Для автозапуска подобных приложений есть готовые шаблоны для написания стартап-скриптов. Но прогресс не стоит на месте, вышел уже второй релиз CentOS 7 и, следуя старой традиции «не ставить dot-zero релизы на продакшен», мы начинаем предлагать клиентам сервера на базе CentOS 7.1 (1503).

В CentOS7, так же как и в его родителе RHEL7, используется systemd — менеджер системы и служб для Linux, совместимый со скриптами инициализации SysV и LSB. systemd обеспечивает возможности агрессивной параллелизации и много всего прочего.

image

Огромный монстр с множеством возможностей, гибкими настройками и мегабайтами документации…

Но что делать, если стоит задача быстро-быстро, вот прямо вчера, сделать автозапуск некоего сервиса?
Давайте выжмем из документации минимально необходимый набор информации для создания простых старт-стоп скриптов.
Знакомство с systemd
Всего голосов 70: ↑66 и ↓4+62
Просмотры429K
Комментарии 58

Разработка привлекательных реалистичных пользовательских интерфейсов

Дизайн
Перевод
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →
Всего голосов 212: ↑205 и ↓7+198
Просмотры8.2K
Комментарии 49

Полезные книги для программиста в геймдеве

ПрограммированиеРазработка игр
Привет, Хабр!
Ничего не писал со времен своей первой статьи, решил, что пора это исправить.

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

Ниже я даю рецензии на книжки, которые считаю очень полезными в различных разделах computer science, которые используются в геймдеве. Я намеренно опускаю книги по C++ и алгоритмам: мне кажется, эта тема уже настолько изучена и освещена, что больше про нее не стоит рассказывать.

Я старался покрыть максимальное количество разных топиков, особенно тех, что спрашивают на собеседованиях. Я старался воздерживаться от domain-specific литературы: профессионалы и так знают. Все картинки содержат ссылки на амазон.

А какие книжки нравятся вам?
Также в комментах можете писать, на какие темы вам были бы интересны посты.

Читать дальше →
Всего голосов 67: ↑62 и ↓5+57
Просмотры94K
Комментарии 12

Руководство по собеседованию на вакансию PHP-программиста

PHP
Из песочницы
Вездесущий… это определённо то слово, которым можно описать язык PHP по отношению к вебу. Он действительно вездесущ. В настоящее время, среди всех серверных языков программирования, PHP используется наиболее широко. На нём написаны более 80% сайтов, при этом следующий по популярности ASP.NET со своими 17% остаётся далеко позади.



Почему? Что позволило PHP стать настолько популярным и широко используемым? На этот вопрос нет однозначного ответа, но простота использования языка, безусловно, существенный фактор, поспособствовавший его успеху. Новички в PHP могут быстро выйти на достаточный уровень и разместить динамический контент на своих веб-сайтах с минимум познаний в программировании.

Именно в этом и заключается основная проблема поиска высококвалифицированных PHP-разработчиков. Относительно низкий порог вхождения и 20 лет развития языка привели к тому, что PHP-программисты стали такими же вездесущими, как и сам PHP. Многие из них могут на законных основания утверждать, что «знают» язык. Однако разработчики, которые действительно являются экспертами по PHP, способны создавать куда более функциональное, надёжное, масштабируемое и простое в сопровождении программное обеспечение.

Как же отличить тех, кто обладает реальной компетентностью в PHP (не говоря уже о тех, кто входит в 1% наиболее опытных кандидатов) от тех, у кого только поверхностные знания?
Читать дальше →
Всего голосов 96: ↑73 и ↓23+50
Просмотры248K
Комментарии 107

Делаем настольное устройство для изготовления печатных плат в один клик

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

image

Ниже я расскажу о том, как делал этот девайс.
Читать дальше →
Всего голосов 161: ↑161 и ↓0+161
Просмотры145K
Комментарии 164

Beaver mysql logger или как найти ошибку в MySql приложении

MySQL
Recovery mode
Здравствуй Хабр!

Периодически возникает необходимость отследить запросы, которые отправляет Ваше приложение к базе данных. К примеру:
— Вам нужно отладить/доработать чужой код;
— Запросы генерируются с помощью сторонней библиотеки (к примеру ActiveRecord), не понятно, какие именно и сколько их;
— Нужно оптимизировать приложение: посмотреть какие запросы и сколько их, посмотреть explain этих запросов.

В этих ситуациях на помощь приходит Beaver mysql logger.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Просмотры5.4K
Комментарии 8

Модулятор REM-фазы сна

Программирование
Из песочницы
В данной статье предлагаю рассмотреть создание достаточно быстро (~30 секунд) устройства вводящего человека в состояние транса или гипнотического состояния.

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

Началось все с попыток научным образом описать и объяснить феномен осознанных сновидений или другими словами ОСов. Для чего мне пришлось сделать массу экспериментов над собой и окружающими. Как правило эти эксперименты были безболезненными хотя случались исключения. В конечном мне довелось познакомиться с ребятами которые которые занимались этим исследованием более основательно. В частности у ребят оказался электроэнцефалограф (далее ЭЭГ), при помощи которого была снята ЭЭГ работы мозга человека во время осознанного сновидения.
Читать дальше →
Всего голосов 57: ↑54 и ↓3+51
Просмотры28K
Комментарии 61

YaLinqo (LINQ to Objects для PHP) — версия 2.0

PHPПрограммированиеФункциональное программирование
Что-что?

LINQ — это штука, которая позволяет писать запросы, чем-то похожие на SQL, прямо в коде. LINQ to Objects, собственно, позволяет писать запросы к объектам, массивам и всему тому, чем вы оперируете в коде.

Это ещё зачем?

Если у вас есть база, то у вас есть любимый ORM (или любимый голый SQL — кому как по вкусу). Но иногда объекты приходят из веб-сервисов, из файлов, да и вообще тьма тьмущая объектов может требовать нетривиальной обработки: преобразование, фильтрация, сортировка, группировка, агрегация… Применить бы привычный ORM или SQL — но базы-то нет. Тут на помощь приходит LINQ to Objects, в данном случае YaLinqo.

Что умеет?

  • Самый полный порт .NET LINQ на PHP, со многими дополнительными методами. Всего реализовано более 70 методов.
  • Ленивые вычисления, текст исключений и многое другое, как в оригинальном LINQ.
  • Детальная документация PHPDoc к каждому методу. Текст статей адаптирован из MSDN.
  • 100% покрытие юнит-тестами.
  • Коллбэки можно задавать замыканиями, «указателями на функцию» в виде строк и массивов, строковыми «лямбдами» с поддержкой нескольких синтаксисов.
  • Ключам уделяется столько же внимания, сколько значениям: преобразования можно применять и к тем, и к другим; большинство коллбэков принимает на вход и то, и другое; ключи по возможности не теряются при преобразованиях.
  • Минимальное изобретение велосипедов: для итерации используются Iterator, IteratorAggregate и др. (и их можно использовать наравне с Enumerable); исключения по возможности используются родные похапэшные и т.п.
  • Поддерживается Composer, есть пакет на Packagist.
  • Никаких внешних зависимостей.

Что случилось?

Прошёл год, как вышел PHP 5.5 со всякими вкусностями типа генераторов и исправленных итераторов. Так как на моей совести самый полноценный порт LINQ на PHP, то я решил, что настало время его обновить и воспользоваться новыми фичами языка.

Что нового?
Всего голосов 34: ↑29 и ↓5+24
Просмотры14K
Комментарии 45

Программируем Raspberry Pi на голом железе

C++
Из песочницы
Tutorial
До сих пор Raspberry Pi остается одним из самых популярных технологических гаджетов.На эту плату Вы можете установить практически любую операционную систему. Но сегодня мы поговорим о том, как писать программы для этой платы без операционной системе, пользуясь лишь аппаратными средствами.

В чем подвох?


На первый взгляд задача кажется тривиальной: скачиваем keil, создаем проект… Но все не так просто. Все среды программирования(keil, IAR, Atolic) поддерживают максимум ARM9.У нас же ARM11. Это связано с негласным правилом, что на голом железе пишут до ARM9, а после на Линуксе. Но все-таки есть одна лазейка: arm-none-eabi-gcc поддерживает любой ARM.
Вторая проблема заключается в том, что под данный процессор(BCM2835) нет никаких конфигурационных файлов, header'ов и т.д. Здесь нам на помощь придет загрузчик Raspberry Pi. И ничего, что он пропритетарный. Он выполняет две функции: инициализирует процессор и его периферию, а также передает управление ядру kernel.img. Мы просто замаскируем свою программу под ядро и загрузчик её запустит.
Читать дальше →
Всего голосов 70: ↑67 и ↓3+64
Просмотры94K
Комментарии 62

Десктоп в домашнем сервере или «всё-в-одном»

Настройка LinuxСистемное администрированиеСетевые технологии
image
Цель: недорого собрать систему поддерживающую проброс PCI-устройств в виртуальную машину (c IOMMU). Создать полноценное рабочее место, поднять виртуальный маршрутизатор и еще полезные мелочи.
Читать дальше →
Всего голосов 46: ↑37 и ↓9+28
Просмотры84K
Комментарии 40

Основы репликации в MySQL

MySQL
С репликацией серверов MySQL я познакомился относительно недавно, и по мере проведения разных опытов с настройкой, записывал, что у меня получалось. Когда материала набралось достаточно много, появилась идея написать эту статью. Я постарался собрать советы и решения по некоторым самым основным вопросам, с которыми я столкнулся. По ходу дела я буду давать ссылки на документацию и другие источники. Не могу претендовать на полноту описания, но надеюсь, что статья будет полезной.
Читать дальше →
Всего голосов 72: ↑70 и ↓2+68
Просмотры301K
Комментарии 44

Десятка лучших консольных команд

Оболочки
imageВ данном посте я расскажу о наиболее интересных командах, которые могут быть очень полезны при работе в консоли. Однозначных критериев определения какая команда лучше другой — нет, каждый сам для своих условий выбирает лучшее. Я решил построить список команд на основе наиболее рейтинговых приемов работы с консолью от commandlinefu.com, кладовой консольных команд. Результат выполнения одной из таких команд под Linux приведен на картинке. Если заинтересовало, прошу под кат.
Узнать больше
Всего голосов 382: ↑346 и ↓36+310
Просмотры194K
Комментарии 215

Дайджест интересных новостей и материалов из мира PHP за последние две недели № 28 (6—20 октября 2013)

Блог компании Zfort GroupРазработка веб-сайтовPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Всего голосов 49: ↑37 и ↓12+25
Просмотры17K
Комментарии 11

IPv6 — он рядом. Часть 1

Сетевые технологииСерверное администрированиеIPv6
Из песочницы


Сегодня идет множество дискуссий насчет сроков по внедрению IPv6 везде и всюду. Но очевидно одно: без телодвижений крупных компаний ничего не выйдет. Google уже использует IPv6, существуют сети, которые предоставляют IPv6, в том числе некоммерческие.
В этом посте я хотел бы рассказать не только как приобщиться к миру IPv6, но и некоторые тонкости, связанные с ним, о которые мне пришлось споткнуться.
В данном случае рассматривается не самый тривиальный сценарий настройки, в котором используется домашний сервер и вы полностью распоряжаетесь выделенным вам адресным пространством.
Читать дальше →
Всего голосов 70: ↑68 и ↓2+66
Просмотры44K
Комментарии 115

Прототип корпуса для электроники: вырастить или фрезеровать?

Блог компании PromwadПроизводство и разработка электроники
Tutorial


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

Как всегда, уделим внимание самым актуальным вопросам и дадим полезные советы, исходя из нашей практики:
  1. Из каких материалов делается прототип корпус для электронных устройств?
  2. Обзор современных технологий прототипирования: что выбрать? Тут мы рассмотрим разные 3D-принтеры и сравним их с технологией фрезеровки на станках с ЧПУ.
  3. Как выбрать изготовителя прототипа, какие документы предоставить подрядчику?

Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Просмотры33K
Комментарии 15

Как изготовить рабочий прототип электронного устройства

Блог компании PromwadПроизводство и разработка электроники
Tutorial


Мы продолжаем публиковать статьи о разработке и производстве сложной современной электроники. В этот раз расскажем об изготовлении прототипов и опытных образцов. Любой проект включает в себя эту стадию, от ее результатов зависит дальнейшая судьба устройства — выход на массовое производство или отправка на доработку.
 
Рабочий образец воплощает в себе результаты работы инженеров, программистов, промдизайнеров и технологов. Его щупают, рассматривают и оценивают, сравнивая ожидаемое с действительным.
 
Зачем вообще нужны эти прототипы? Сколько штук их нужно изготовить в рамках проекта и сколько это стоит? Какие документы нужны для производства опытных образцов? Ответы на эти вопросы вы найдете под катом.
 
Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Просмотры42K
Комментарии 48

Сеть беспроводных устройств на Arduino

Я пиарюсь
Из песочницы
Микро-контроллер на платформе Arduino — отличная платформа для хобби-проектов различной степени сложности и полезности. Не буду утверждать, что платформа Arduino есть наилучший выбор для профессиональных решений (скорее соглашусь с обратным), но для моих любительских «поделок» в области домашней автоматики это оптимальный вариант. Т.е. контроллер хорош сам по себе, но, если к тому же он перестанет быть «самим по себе», а будет уметь «общаться» с себе подобными, при этом не обрастая дополнительными проводами, то его полезность и применимость может многократно вырасти. Итак, начнём строить наш домашний SkyNet…
Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Просмотры84K
Комментарии 21

Пишем свой интерпретируемый шестнадцатиричный язык программирования для QR-кодов

Ненормальное программированиеПрограммирование
Вдохновившись проектом Google Glass, я подумал, как хорошо было бы сделать крайне простой, но мощный инструмент дополненной реальности специально для таких очков. И почему бы не сделать его на основе такой широко используемой технологии как QR-коды. Так родилась задумка языка QuRava — набора байтов, записанных в QR-коде и интерпретируемого в полноценную программу, реализующую часть возможностей языка Java.

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

Читать дальше →
Всего голосов 51: ↑42 и ↓9+33
Просмотры14K
Комментарии 37

Небольшой эксперимент сетевой независимости

Настройка Linux*nix
Где-то год назад я решил для себя провести небольшой эксперимент. Я заметил что привязка к облачным сервисам становится всё более проникающей, и подумал проверить — что собственно нужно для того, чтобы немного отвязаться от серверов разных корпораций бобра.

Задача была в том чтобы попробовать насколько мощное или простое железо нужно для небольшего домашнего сервера чтобы запустить сервисы которые мы с такой лёгкостью передаём корпорациям.
Читать дальше →
Всего голосов 160: ↑144 и ↓16+128
Просмотры68K
Комментарии 228

Информация

В рейтинге
Не участвует
Откуда
Пушкин, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность