Облачные вычисленияМного облаков. Один API. Нет проблем!

Логотип DeltacloudРазвитие некоторых аспектов программного обеспечения, в большинстве случаев, вполне предсказуемо. Один из основных трендов — это постоянное увеличение уровня абстракции.

Для наглядности, приведу пример с системами хранения данных. Итак, все началось с файлов. В самом начале мы использовали только файлы, где и хранили все наши данные, и обращались к ним напрямую из программы. Рано или поздно это всем надоело и мы перешли к СУБД. Количество рутинной работы уменьшилось, и мы обращались к серверу БД уже через SQL-запросы.

Но через какое-то время это стало тоже неудобно. Мы захотели иметь возможность переходить от одной СУБД к другой без кардинальных изменений исходного кода.

Мы разработали DAL — абстракцию, где низкоуровневый API для доступа к каждой базе данных разносился по драйверам, которые подключались по мере необходимости. А сам пользователь общался исключительно с высокоуровневыми объектами, получающие запросы и возвращающие результат.

Но спустя некоторое время и эта схема перестала давать нам нужную гибкость.

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

МыслиМудрость цитаты

Мудрость цитаты заключается в прозрениях, которые возникают после ее постижения.

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

TwitterИзбранные твиты #1

Twitter bird [256x256]Я активно использую twitter. Ежедневно я читаю огромное количество сообщений. И среди них попадаются просто потрясающие экземпляры!

Решил открыть рубрику, где буду собирать все твиты, которые мне понравились.

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

Если Вы еще не решились завести себе twitter-аккаунт, думаю, теперь Вы захотите это сделать.

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

Игры для программистовГотовые программы для игр Colobot и Ceebot

Астронавт-колоботерПоследнее время с поисковых систем стабильно приходят пользователи, пытающиеся найти у меня готовые программы для игр Colobot и Ceebot.

Поэтому я решил срочно исправляться. В этом посте я собрал некоторые программы, которые позволят Вам сэкономить время или посмотреть, как программируют в Colobot другие игроки.

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

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

Аккуратно! Ваш скролл может умереть мучительной и жестокой смертью.

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

LinuxОшибка: VirtualBox can't operate in VMX root mode

Сегодня столкнулся с одной проблемой на своей Linux Mandriva: VirtualBox OSE отказался загружать виртуальную машину, мотивировав свой отказ следующим:

VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot.

VBox status code: -4011 (VERR_VMX_IN_VMX_ROOT_MODE).
Код ошибки: 0×80004005
Компонент: Console
Интерфейс: IConsole {1dea5c4b-0753—4193-b909-22330f64ec45}

Эта известная проблема, неоднократно упоминающаяся в багтрекерах. Причина заключается в том, что VirtualBox OSE конфликтует с виртуальной машиной ядра Linux — KVM.

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

ЛичноеИнтересные факты обо мне #1

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

Поэтому, кроме этого, я решил периодически публиковать интересные факты обо мне:

  • Моя основная ОС: Linux Mandriva (KDE4). Я очень ответственно подхожу к процессу настройки собственной системы, потому что именно от нее зависит моя производительность, как программиста. Вообще очень люблю возиться с системой, допиливая ее до совершенства. Вы ведь знаете какой это кайф, когда в итоге получаешь стабильную и красивую систему которая работает только так, как я этого хочу.

  • Я использую OpenSource и свободное программное обеспечение при прочих равных. Но иногда приходиться отступать и от этого правила.

  • У меня 4 монитора. Три внизу, один сверху. И я уже не представляю (вру, представляю), как можно использовать только один монитор. Особенно много времени потратил на настройку драйвера nvidia и KDE для организации удобного desktop`а. Возможно, напишу об этом заметку.

  • Я подписан на пол-тысячи различных блогов, большое количество twitter-аккаунтов и коллективных блогов. Я трачу порядка 4-5 часов каждый день на изучение новых технологий, блогов, новостей из мира IT и web-разработки. Кстати, если Вы еще не зафоловили мой twitter-аккаунт — можете это сделать прямо сейчас.

    Ваша работа не должна мешать Вам тратить столько времени на самообразование, сколько вы захотите.

  • Каждую неделю стараюсь изучать различные способы повышения личной эффективности. Читаю новые книги, статьи, идеи. Пробую некоторые идеи на практике. Благодаря другим блогерам постоянно получаю огромное количество рекомендаций различных книг и фильмов, за что им огромное спасибо.

  • Веду TO-READ список, куда я помещаю названия всех книг, которые мне порекомендовали. Предпочитаю IT-тематику, финансовую и бизнес-литературу и книги про саморазвитие и самосовершенствование.

P.S. Хочу поблагодарить Макса Крайнова за то, что он, по моей просьбе, высказал свои соображения и мысли на тему образования со своей финансово-инвестиционной стороны.

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

ОбществоПодготовка к интервью

Максим ШумаковБлагодаря посту про образование я познакомился с замечательным человеком и читателем моего блога, Максимом Шумаковым.

Максим работает в Крымском гуманитарном университете. Преподает в колледже при университете информационные технологии для будущих менеджеров. Он — пример тех преподавателей, которые не останавливаются в развитии, а постоянно стараются улучшать учебный процесс.

Например, он внедряет систему автоматического тестирования Moodle. Учит студентов создавать бизнес-планы.

Умеет разрабатывать сайты, используя Joomla и немного программирует на PHP.

Максим из тех преподавателей, которые хотят помочь студенту выучить материал, а не просто получить зачет. Хотя я и не общался с ним лично, уверен, он добрый и интересный человек.

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

Поэтому прошу вас задавать любые вопросы Максиму. Он, кстати, со своей стороны, обещает интересные истории из жизни преподавателя.

Все вопросы я позже соберу вместе, и оформлю их в виде отдельного поста-интервью с Максимом.

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

ОбществоУниверситет отучает учиться?

Lego education Продолжаю развивать нашу социально-важную тему и отвечать на критику других людей, пытаясь высказать свою точку зрения на этот вопрос.

Университет учит учиться

Эту красивую отмазку обожают использовать в высших учебных заведениях. Самое смешное, что некоторые школы тоже любят ее.

Кроме этого любят использовать следующие аргументы:
Школа/Университет даёт детям знания
Школа/Университет учит мыслить системно
Школа готовит к поступлению в институт
Школа/Университет даёт социальную среду
Школа/Университет учит работать в коллективе

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

ОбществоШкола — это аналог тюрьмы!

We don`t need no education?Мой предыдущий пост про высшее образование вызвал огромные дискуссии. Я также поднял это обсуждение на Хабрахабре, так как мой блог не сравниться с количеством его аудитории, где набралось порядка 200 комментариев.

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

Выражаю огромную благодарность всем, кто поучаствовал в обсуждении этой животрепещущей темы. Спасибо за огромное количество писем мне на почту, twitter и jabber. Спасибо за вопросы и истории из своей жизни. Мне было очень интересно их читать.

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

Давайте перейдем к обсуждению некоторых контраргументов.

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

ОбществоИнфляция и образование

EduflationНет. Не нервничайте. Я не буду в очередной раз рассказывать Вам байки про $самизнаетечто. Окей, тогда при чем здесь образование? — спросите Вы. При всем! Дело в том, что прямо на наших глазах происходит одна ужасная вещь, мимо которой нельзя пройти равнодушным и которую мы просто обязаны заметить.

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

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

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

ОбществоНе испорть жизнь своему ребенку

РебенокЗнаешь почему большинство людей становятся «рабами» общества? Знаешь почему они бесцельно проводят свою жизнь в офисах компаний или просто спиваются?

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

Ты не поверишь, но существует всего лишь две причины:
Они генетически предрасположены быть ведомыми.
Их испортили родители

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

БезопасностьНачните думать!

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

Некоторые же занимаются защитой ради защиты. В WordPress они переносят админку в папку DFjkKSnx38, затем ставят блокировку по IP-адресу. После чего упорно продолжают защищать вход в администраторский аккаунт, разрешая только 4 ошибки при вводе пароле за 20 минут, блокируя IP-адрес в ином случае. Они устанавливают SSL и используют только HTTPS. Затем ставят captch`у и вход через openID, сервер которого находится в контейнере корабля посреди тихого океана.

Понимаете о чем я? И их все равно взламывают с тем же успехом. Просто потому что они не учитывают одной важной детали.

Представим, что они идеально защитили свой WordPress-блог. Представили? И на следующий день его легко взламывают!

Вопрос: Как это могло произойти?

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

О блогеМодернизация блога

МодернизацияВ ближайшее время я планирую качественно улучшить блог. Под улучшением я понимаю общее улучшение юзабилити и удобства использования сайта.

В этом посте я собрал все основные проблемы, которые заметил. Также постараюсь написать возможные их способы их решения.

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

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

Игры для программистовCore Wars. Учимся эмулировать!

Core Wars logoCore Wars! Эти два слова вызывают трепет. У программистов появляется легкая дрожь, волнение. Потому что на них накатываются воспоминания о счастливом юношестве.

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

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

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

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

Игры для программистовRobocode

Слоган RobocodeЯ продолжаю серию статей про игры для программистов. Напомню, в прошлый раз мы узнали про игры Colobot и Ceebot.

Сегодня я расскажу Вам про отличную игру Robocode. Она предназначена для обучения языку Java, и имеет большие функциональные возможности, несмотря на кажущуюся внешнюю простоту.

Robocode — это обучающая игра с открытыми исходными кодами, разработанная Mathew Nelson и Flemming Larsen. Ее целью было облегчение изучения языка программирования Java.

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

Игры для программистовColobot и Ceebot

ГеймпадВ мире всегда существовали некоторые закрытые общества, которые доступны только ограниченному кругу людей. Для того, чтобы попасть туда нужно было обладать чем-то необычным. Например, ездить на Bentley или курить Behike.

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

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

Их существует огромное количество, каждая игра по своему интересна, у каждой своя архитектура, свой API-интерфейс. Так как всех их невозможно охватить в отдельной заметке — я решил начать серию заметок про различные игры.

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

phpBB3Функция request_var ()

BigBoxВ phpBB все данные, отправляемые пользователями, скрипт получает с помощью функции request_var ().

Ее использование позволяет в некоторой мере защитить web-приложение от SQL-инъекций, XSS и прочих уязвимостей. Она совершает первичную обработку, проверяя, чтобы значение, переданное пользователем, было нужного нам типа.

Все возвращаемые функцией значения также очищаются от посторонних символов с помощью stripslashes () и htmlspecialchars ().

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

phpBB3Функция trigger_error ()

Ошибок не избежать

Функция trigger_error () в коде phpBB 3 используется повсеместно. Я решил в этой заметке сделать более подробный обзор этой функции.

Сегодня мы рассмотрим синтаксис, возможные параметры, а также примеры использования.

trigger_error () генерирует ошибки/предупреждения/замечания или непосредственно страницу с каким-нибудь сообщением, например, «Ваша тема была успешно создана».

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

phpBB3Внешняя авторизация

Человеки, входящие в phpBBДовольно часто возникает необходимость в интеграции phpBB с другой системой, например с Drupal или Joomla. В этом случае Вам повезло — готовые модули для использования единой базы пользователей c phpBB 3 в обоих системах уже созданы.

Если же Вам нужно сделать единую авторизацию с более экзотической системой, то придется все делать самому. Ну или заказать разработку у специалистов.

К счастью, разработчики phpBB предусмотрели эту проблему, и заранее сделали механизм авторизации легко расширяемым. В этой статье мы попробуем написать свой простой плагин авторизации.

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

phpBB3Создание новой страницы

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

Это может пригодиться, если Вам понадобится создать страницу, которая выглядит также как и Ваш форум.

Например, содержащая описание сайта или его правила.

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



земляные работы в Донецке