Кому несколько фотонов быстрого света? :)

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

Впрочем цель этой заметки в другом. Laravel 5 позиционируется как Full-Stack фреймворк, который во многом самодостаточен из коробки. Там много прекрасных компонентов и ещё больше расширений цепляется через Composer. Но всё-же есть ниши, где Laravel не столь хорош — это те сценарии, когда нужно супер-быстрое, отзывчивое приложение. Там, где задержка в ответе в 30-45 миллисикунд от среднего значения, это уже заметный, а может и катастрофичный тормоз. Можно такие приложения писать и на native PHP — и они будут столь же сверх-быстры, но раширять и поддерживать их в команде не так-то уж и просто…

Впрочем, встречайте — Lumen! От создателей своего большого брата Laravel 5 (и частично на его базе и создан). По умолчанию тут отключено практически всё кроме базового скелета приложения. А то, что надо, вы включаете вручную. Всё, на чём можно было сэкономить, не потеряв в гармонии, уже отключено или вырезано под корень. Просто идельная штуковина для небольших сервисов, которые требуют быстрой обработки — какие-нибудь платёжные сервисы, или сервисы каких-то регистраций, где происходят сотни-тысячи запросов/транзакций в секунду.

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

Две утилиты для работы с флешками и картами памяти

В этой заметке я хочу рассказать о двух утилитах, которые оказались просто палочками-выручалочками не один раз. Rufus — создаём загрузочную флешку. SD Formatter — восстанавливаем оригинальную разметку флешки.

Читать далее Две утилиты для работы с флешками и картами памяти

Hyper-V в роли ключевой проблемы для 64-bit виртуалок

Некоторое время назад столкнулся с тем, что замечательный Vagrant не хочет запускаться под Win8.1. Т.е. программа работает, но вот образы грузить не хочет. В качестве эмулятора используется VirtualBox. Хотя эти же самые образы на этом же компе, но под линуксом прекрасно запускались и работали. Как уже позже заметил — образы систем были 64-битные, а в VirtualBox создавались только 32-битные виртуалки.

Сегодня опять вернулся к этой проблеме и решение нашлось. Хотя не знаю, каких радостей  и приключений оно мне может ещё принести, но посмотрим. Суть проблемы в том, что в системе может работать только один менеджер виртуализации. И в винде по умолчанию им был встроенный Hyper-V. Отключаем эту фичу, перезагружаемся и в VirtualBox волшебным образом появляется возможность создавать 64-битные машины. И сразу все несколько образов начинают грузиться как положено.

Собственно сама волшебная команда. Запускать в командной строке с правами админа:

Dism /online /disable-feature /featurename:Microsoft-Hyper-V

Дополнено:

Похоже, что это просто Windows за несколько лет на столько забилась всем-чем, что выкинуло подобное. На свеженькую-новенькую 8.1 VirtualBox втал ровно, все 64 бита были на месте и ни никаких шаманств не потребовалось вовсе! :)

Линукс десктоп и 21 век :)

Первый день c Ubuntu прошёл нормально. Пока всё идёт как надо. Но кое-какие тонкие моменты уже начинают проявляться. Самое интересное, что очень многие детали по юзабилити если не полностью, то концептуально сюда перебрались из MacOS X. И это хорошо. По этому общий совет (для переходящих) таков: Если вам нужна какая-то особенность, то ищите схожий вариант реализации. А то интернет весьма полон старых добрых проверенных статей как делать раньше, но среди них весьма редко попадаются современные решения из позднего 21 века. :)

Вот вам первый пример. Даже два в одном.

  1. Настроить подключение к OpenVPN
  2. Подключить win-шару с рабочего файлового сервера

Раньше всё делалось парой скриптов из нескольких комманд. Оно и сейчас, конечно, будет так работать, но вот эстетические чувства (для Desktop системы) уже страдают. :) Да и хочется решение в два клика и без свалки из скриптов. Тем более, что у современной Убунты столь симпатичный внешний вид.
Читать далее Линукс десктоп и 21 век :)

Back for good

Давным давно меня начало раздражать то, что Windows начала жить своей собственной жизнью. Включена система, не трогаешь её… А внезапно она как начнёт что-то сама делать — и диск под 100%, и проц туда же в компании всех вентиляторов. А минут через 5-10 успокаивается. Быстрая попытка выяснить в чём дело не помогла — фигня через системные службы происходит, так-что это может быть что угодно.

И вот вчера это в очередной раз выбесило на столько, что заменил жёсткий и поставил на него Ubuntu. :) Правда должен сказать пару вещей. С Убунтой последние лет 5 я и так тесно общаюсь, но исключительно с серверной и исключительно через терминал. А вот десктопами полноценно не общался где-то с середины 2000 и надо заметить, всё приятно поменялось в позитивную сторону!

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

Zombicide

В данной заметке хотелось бы рассказать о прекрасной настольной игре от Guillotine Games — Zombicide. На детальный обзор это не потянет, т.к. ну слишком много всего. :) Скорее так — на общие впечатления от игры + отчёт по одному сценарию.

Читать далее Zombicide

Laravel Framework

Если вы программируете на PHP, то наверняка вам в последний год попадался на глаза фреймворк Laravel4. Если вкратце, то это то же самое, что и Play! в мире Java/Scala или Rails у Ruby.

Главная и ключевая особенность — полная и законченная структура всего проекта — используется классический MVC (основа частично взята из Symphony). Файлы организованы весьма органично и лаконично. Работа с базой через Eloquent ORM. За визуализацию отвечает Blade. Весьма гибкий и одновременно простой рутер. Ну а в качестве фундамента для всех модулей используется Composer, что даёт очень широкие (если не бесконечно неограниченные) в возможности расширения функциональности. И так можно продолжать долго. ;)

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

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

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

WordPress 4.1 и новая тема 20-15

На днях вышло очередное обновление WordPress. Оно для меня и осталось бы очередным, если бы не одно НО. Возможно это всё субъективно, но разработчики очень круто запили редактор.

Тексты набирать стало одно удовольствие! В визуальной форме ну ни чем не отличается от plaintext — всё-равно как в блокноте на своём компе. Никаких микро/нано-лагов, как в прошлых версиях, где тоже всё было в меру плавно, но иногда чуть-чуть чувствовалась задержка. Тут же всё просто летает!

И полноэкранный режим чуть улучшили. Текущий вариант тоже нравится. Но хотелось бы получить и возможность «белого листа».

В общем и целом — разработчики как всегда молодцы! :)

BitTorrent, как замена Skype для передачи файлов. UPDATED

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

Сегодня с другом мы провели тест. Цель — перекинуть 8Гб файл максимально просто и эффективно. Интернет о обоих норм, torrent-клиенты сейчас как в 2008 Skype – практически на каждом компьютере. И вот мне стало интересно, можно ли на скорую руку сварганить свой торрент и используя эту технологию переслать файл. Конечно, мне не хотелось запускать свой трекер (тогда уж можно и FTP сервер запустить или через какой Dropbox/Yandex перекинуть), но и постить файлы публично не хотелось. И оказывается решение уже давно есть — публичные открытые трекеры! :D Читать далее BitTorrent, как замена Skype для передачи файлов. UPDATED