Абстракция, уровни абстракции

abstraction-levelsВ этом видео затронута очень сложная для объяснения тема — тема абстракции в программировании. Я выразил свои мысли на эту тему, которые, возможно, помогут кому-то разобраться с этим вопросом.

Читать далее Абстракция, уровни абстракции

Что есть контроллер? (видео)

Разговор о том, чем является контроллер в разных типах приложений. Контроллером зачастую называют разные вещи в разных фреймворках и типах приложений. Я попытался немного расставить точки на «и» в этом вопросе и рассказал свое понимание сути контроллера абстрактно — независимо от типа языка и среды. Понимание сути контроллера дает понимание того, какой код должен попадать в контроллер, а какой наоборот, должен попадать в другие части системы.

Читать далее Что есть контроллер? (видео)

Архитектура веб приложений: интерьер (видео-лекция)

Архитектура веб-приложений: интерьерРассказ о возможной внутренней архитектуре ориентированных на масштабируемость, обслуживаемость и расширяемость веб-приложений, разрабатываемых на PHP или подходящих для Веба языках программирования. Реализация компонентного подхода внутри приложения, фунционального разделения кода, введение уровней абстракции копонентов.

Читать далее Архитектура веб приложений: интерьер (видео-лекция)

Архитектура веб приложений: экстерьер (видео-лекция)

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

Читать далее Архитектура веб приложений: экстерьер (видео-лекция)

Классификация знаний в области программирования

CSМеня иногда спрашивают, что нужно выучить, чтобы стать программистом. Вопрос несколько наивный, т.к. нормально ответить на него по-моему невозможно. Т.е. для начала нужно выяснить, каким программистом нужно стать. Да и вообще, программистом ли? Кроме того, на рынке востребованы как высококвалифицированные дорогие специалисты, так и “рабочая сила”. Пакет знаний и опыта первых и вторых отличается в значительной степени.

Читать далее Классификация знаний в области программирования

Nginx: пример конфига для сайта с плюшками

nginxПросто готвый пример универсального конфига nginx с использованием php-fpm, и секциями для базовых инструментов (phpMyAdmin, RockMongo) и функционалом для закрытия сайта в режим обслуживания. Сервер одновременно слушает и HTTP, и HTTPS. Все запросы с www перекидываются на адрес «без-www».

Читать далее Nginx: пример конфига для сайта с плюшками

Nginx: сайт в режиме обслуживания, кроме разработчиков

nginxНа днях стала задача: сделать средствами nginx возможность перевода сайта в режим обслуживания для всех пользователей, кроме разработчиков. Под режимом обслуживания понимается то, что все запросы к скриптам сайта должны выдавать одну и ту же страницу с сообщением о том, что сайт временно недоступен (плюс HTTP-ответ с кодом 503).

Читать далее Nginx: сайт в режиме обслуживания, кроме разработчиков

Решение насущных задач на ruby: объединить файлы логов по порядку в один

Дано: каталог с файлами xxx.access.log, xxx.access.log.1, …
Требуется: объединить файлы в один большой в порядке по суффиксам (1, 2, 3, …).
Особенность: сортировка по именам файлов дает неверный порядок (1, 10, 11, …, 2, 20, …)
Читать далее Решение насущных задач на ruby: объединить файлы логов по порядку в один

Рестарт Apache в случае недоступности сайта

Иногда нужны простые но эффективные средства решения насущных задач. Например, у меня сложилась ситуация, когда сайт периодически начинает выдавать ошибку 500, не отмечая ничего в логах. Похоже, падает расширение PHP (подозрения на APC, но не в этмо суть). Рестарт Apache лечит проблему. Так как разбираться в ее истоках сейчас времени нет, я решил применить временное простое, но эффективное решение:

Читать далее Рестарт Apache в случае недоступности сайта

Internet Explorer и стратегии Microsoft

В августе 1995 года вышла первая версия Internet Explorer. В те времена активно рос и развивался Интернет, и для решения базовой задачи пользователя Windows — выхода в Сеть — Microsoft нужен был хороший браузер. В 97 году была выпущена переработанная с нуля версия 4.0 — это и есть настоящий предок всех следующих версий (более ранние версии вовсе были разработаны за пределами Microsoft).

Читать далее Internet Explorer и стратегии Microsoft

Гордиться нужно не результатами, а их достижением

В СССР ценились именно результаты — конкретные победы, а не процесс их достижения. Чем больше было достигнуто побед, тем больше поводов для гордости. Результаты со временем накапливались, а люди все больше расслаблялись — какие же мы молодцы, столько всего сделали — и переставали стремиться к чему-то новому. Особенно ярыми достижениями были победа в войне и последующее восстановление страны. Неимоверная гордость за эти события живет в умах даже нынешних поколений, хотя уже давно бы пора переключиться на что-то насущное. Только вот нет ничего насущного — не на что переключаться. Поэтому основа идеологии в Беларуси по-прежнему базируется на достижениях 60-летней давности.

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

Сейчас весь прогресс там, на западе. Что-то изменить без вмешательства посторонних факторов, уже невозможно.

Какое будущее операционных систем?

Посмотрите на Windows 8. Ребята из Редмонда наконец-то пересилили себя и начали ломать классический интерфейс Windows. Новое рабочее пространство пользователя больше похоже на веб-сайт, чем на классический «Рабочий стол». Значительно расширилась интеграция с Сетью всего программного стека Microsoft. Даже учетная запись пользователя Windows теперь по умолчанию представлена учеткой Windows Live. Microsoft Office становится облачной платформой, появляется новый центральный сервис хранения данных — SkyDrive. Читать далее Какое будущее операционных систем?

Я.Субботник в Минске, 2 июня

Я.Субботник в Минске пройдет 2 июня по адресу: Минск, ул. Кирова 13, отель «Crowne Plaza», зал «King».

Регистрация на мероприятие начнется 16 мая. Количество мест ограничено.

Для тех, кто не попадёт в число участников или не сможет лично присутствовать на Я.Субботнике, будет организована онлайн-трансляция.

Подробную информацию о мероприятии читайте здесь.

Про Active Cloud (Active.by; отзыв)

Сегодня на CloudCamp послушал 10-минутный доклад о том, как поднимали свое облако Active.by (aka Active Cloud). Было услышано много восхищённых отзывов от технического директора Руслана Райкевича о том, что у них в итоге получилось.

С одной стороны их труд действительно достоин уважения. Они сделали относительно недорогое решение за короткий срок в условиях ограниченных финансовых возможностей. Причем, эту услугу они вывели на мертвый рынок Беларуси. С другой стороны фейлов в Active Cloud получилось немало. Как раз об этих фейлах я и хочу рассказать. Читать далее Про Active Cloud (Active.by; отзыв)

Бесплатный валидный (подписанный) SSL-сертификат через StartSSL

Итак, вы хотите получить бесплатный SSL-сертификат для своего сайта (для HTTPS). На сколько я знаю, единственный сервис, который выдает бесплатные валидные годовые сертификаты — это StartSSL. Израильская компания занимается цифровой сертификацией и является официальным Центром сертификации (CA) в PKI.

StartSSL раздает валидные годовые SSL-сертификаты бесплатно. Другие компании берут за это деньги начиная примерно от $20 в год. StartSSL зарабатывает на сертификатах более высоких классов, включая сертификат с расширенной валидацией, а базовый сертификат делает бесплатно. Их идея заключается в том, что они не берут деньги за сервис, в котором не используется труд людей (базовая валидация домена производится автоматически).

Читать далее Бесплатный валидный (подписанный) SSL-сертификат через StartSSL