За последнее время мы довольно много узнали об OpenGL, в том числе научились управлять камерой, работать с текстурами, а также с моделями. Настало время поговорить о чем-то намного более интересном, а именно — об освещении. Интересна эта тема, потому что ничего готового для работы со светом в OpenGL нет, все нужно писать самостоятельно на шейдерах. В рамках этой заметки мы рассмотрим освещение по Фонгу. Это довольно большая тема, поэтому говорить мы будем исключительно об освещении. В том, как делаются тени, придется разобраться в другой раз.

Некоторое время назад на сайте xakep.ru была опубликована занятная статья Что отпугивает на собеседованиях: 20 практических советов от работодателей. Мне стало интересно, а что, если написать такую же статью, только наоборот? То есть, вместо того, чтобы спросить работодателей о том, что отпугивает их от кандидатов, спросить айтишников, что их отпугивает от работодателей во время собеседования. Что из этого получилось — смотрите под катом.

Злые языки говорят, что CLion подходит только для проектов, использующих CMake. Что даже проекты на CMake он может индексировать 12 часов, а потом упасть с out of memory. А если каким-то чудом CLion не упадет, то будет адски тормозить и подсвечивать весь код красным. Что единственной нормальной IDE для C++ якобы был и во веке веков останется Visual Studio. Сегодня мы с вами убедимся, что к таким выводам люди приходят не от большого ума, и что за пять минут несложных рассуждений в CLion можно успешно открыть любой проект — неважно насколько большой и используется ли в нем CMake.

По моим наблюдениям, в России компания Parallels больше всего известна, как разработчик популярной виртуальной машины для MacOS. Особо продвинутые также могли слышать, что компания имеет какое-то отношение к OpenVZ и CRIU. Но мало кто знает о других продуктах компании. Сегодня мы познакомимся с некоторыми такими продуктами, а именно Parallels Virtual Automation и Linux дистрибутивом Parallels Cloud Server. С их помощью мы за считанные минуты поднимем IaaS на собственном железе, который будет мало чем уступать Amazon Web Services или, скажем, Google Cloud, а в чем-то будет и превосходить.

В холиварах на тему Erlang/OTP против Scala/Akka сторонники Erlang часто используют аргумент, что дескать в Akka нет интроспекции. Имеется в виду, что нельзя получить текущее состояние актора, нет аналога etop или Observer, и вот это все. Это правда, сама по себе Akka таких инструментов не предоставляет. Но, оказывается, на практике их можно очень просто реализовать своими силами.

Некоторое время назад мы научились создавать контейнеры в Linux, используя OpenVZ. Сегодня мы познакомимся с OpenVZ Web Panel. Это приложение, которое позволяет управлять OpenVZ-контейнерами на нескольких физических машинах через веб-интерфейс. Фактически, при помощи OpenVZ и OpenVZ Web Panel вы можете за час работы построить маленький AWS или Google Cloud на собственном железе.

Samba — это открытый пакет программ для nix-систем, в которых реализованы некоторые фичи, предоставляемые Windows Server. Samba может выступать в качестве контроллера домена, сервиса Active Directory, может шарить принтеры и директории по сети. В рамках этой заметки мы рассмотрим использование Samba в качестве файлового сервера. Мотивация для использования именно Samba, а не, скажем, FTP, может быть разная. Как минимум, с ее помощью и вправду очень удобно перекидывать файлы между Windows- и Linux-машинами. Просто монтируешь каталог и вперед.

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

Сейчас наблюдается большой ажиотаж в отношении технологий контейнерной виртуализации. И почему-то в этом контексте особенно часто упоминается Docker, словно это вообще единственное решение для создания контейнеров. А тем временем существует технология, которая не только ничем не уступает Docker, но и по некоторым оценкам опережает ее как минимум лет на пять. Технология эта называется OpenVZ. О причинах малой популярности OpenVZ мне остается только гадать. Однако, надеюсь, что данная статья хотя бы отчасти исправит положение дел.

Так получилось, что этот выпуск посвящен всякой распределенщине. Под катом вы найдете ссылки на полезные ресурсы по теме, пейперы по реализации распределенных транзакций, непонятные, но очень интересные новые распределенные СУБД, и не только. Предыдущие выпуски: сентябрь 2015, август 2015, июль 2015, июнь 2015.