• Смотрим кино с субтитрами сразу на двух языках

      Увидев только что на Хабрахабре вот эту блогозапись, подумал, а нельзя ли сделать так в Линуксе. Оказалось — можно. Причём метод не зависит от проигрывателя видео, главное, чтобы программа поддерживала субтитры в формате ASS.

      Скриншот
      Читать дальше →
    • Компиляция. 1: лексер

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

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

        Далее в посте:

        1. С какой стати писать компиляторы?
        2. Общий план
        3. Анализ текста
        4. Практический пример
        5. Как это работает?
        Читать дальше →
      • NerdDinner. Шаг 1: Новый проект

        • Перевод
        Это первый шаг бесплатного руководства «NerdDinner», которое показывает, как построить маленькое, но полноценное веб-приложение, используя ASP.NET MVC.

        Начнем наше приложение NerdDinner(ужин для ботанов) с выбора пункта меню File>New Project.

        Мы увидим окно «New Project». Для создания ASP.NET MVC приложения, мы выберем пункт «Web» в левой части окна, а далее шаблон проекта «ASP.NET MVC Web Application» в правой части.

        image
        Читать дальше →
      • Фильтруй базар: пишем простой и функциональный фильтр данных

          image
          Кто-то спросит, каким образом фильтры грубой очистки топлива на картинке справа относятся к PHP\IT в целом? Очень просто! Скрипт, о котором пойдет речь дальше, очень схож как по назначению, так и по функциональности с данными приспособлениями. Каждый понимает, что реализовать более менее универсальный фильтр «сверхтонкой очистки» (в нашем случае — выполняющий любые пожелания пользователя) на практике не всегда оказывается тривиальной задачей. Однако, реализовать что-то действительно простое, но при этом функциональное и достаточно применимое вполне реально. Что это, собственно, за «реально» и с чем его едят — смотрим под катом.
          Читать дальше →
        • Скриншоты сайтов своими руками

            Проблема создания скриншотов web-страниц прямо на сервере встает достаточно редко, но, как говорится, метко. Хватишься иной раз, так гугль дает ссылки на какой-нибудь парсер уже существующего сервиса. Но, господа, это же не наш метод!

            Покопавшись, можно найти что-нибудь типа связки xvfb (виртуальный фреймбуффер) с каким-нибудь браузером, например xvfb+opera, или khtml2png, который тянет за собой фигову тучу kde'шных либ. А ведь так хочется какого-нибудь легкого standalone скриптика...

            Решив посвятить немного времени изучению вопроса, обстоятельно исследовал имеющийся инструментарий.

            Читать дальше →
          • Как прокачивать мозг

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

              Не правда ли, картинка объемна?

              Итак, как известно, мозг — важнейший орган нашего тела. Кто-то говорит, что он — самая сложная вещь во вселенной. И незнание некоторых его особенностей может очень плачевно сказать на жизни человека.

              Но обо всем по порядку.

              Понимание роли мозга


              Нет невежества страшнее, чем невежество по отношению к самому себе.

              Мозг управляет почти всем в нашем организме — от дыхания, работы органов чувств до сложных мыслительных процессов и воображения. Существует множество методик и советов по развитию, однако, как я убедился, мало какие делают упор на роль мозга в процессе.
              Читать дальше →
            • Монетизация проекта: 8 + 4 способa заработать ничего

                WEBO SoftwareЭто, видимо, уже третья статья (первая, вторая) на тему построения софтверного бизнеса в России «с нуля». В прошлой просили рассказать о наших моделях монетизации — рассказываю (акцент сделан на самих моделях, а не на построении каналов продаж программного обеспечение вообще.)

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

                Но все по порядку.
                Читать дальше →
              • Удобное заполнение расписаний с JQuery

                  Эта история произошла с Дмитрием Дубовицким — программистом «Бюро Пирогова».

                  Однажды случилось мне заниматься одним весьма интересным проектом. По ТЗ нужно было заполнить расписаниие занятий фитнес-клуба в неком XML. В принципе, ничего сложного — прочитал XML, заполнил данными таблицу на экране, но… Как же клиент будет редактировать расписание и править xml-файл? руками?
                  Выход прост — это можно сделать мышью!
                  Читать дальше →
                • Привычки полезные каждому веб-программисту

                    У веб-программистов со временем вырабатываются привычки, которые въедаются в рабочий процесс на уровне рефлексов. Взять хотя бы данные из формы — каждый толковый программист, как только встречает их, тут же обрабатывает на предмет корректности. Порою даже сам не замечает.

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

                    Количество элементов на одной странице

                    Разбиваете список на страницы? Как будет выглядеть вторая страница для списка из 101 элемента, если ваше волшебное число 100?

                    Читать дальше →
                  • Запуск виртуальной машины в VirtualBox без GUI

                      VirtualBoxИногда возникает необходимость запустить виртуальную машину на хосте без иксов. Я расскажу о том как это сделать, имея доступ к хостовой системе только по ssh + rdp (Remote Desktop Protocol). процесс я буду описывать для OC Ubuntu 9.10 в качестве хоста.
                      Читать дальше →
                    • Fidonet. История одного пойнта (2010-й год)

                        image

                        Предисловие


                        Данная статья не претендует на то, чтобы стать руководством к действию, а лишь рассказывает историю о том, как отдельно взятый интернетчик подключился к сети Фидонет в (страшно представить) 2010-м году.

                        Тем, кто уже потянулся мышкой к окошечку «Написать комментарий», дабы оставить для потомков что-то вроде: «Федо — R.I.P.», рекомендую сделать три глубоких вдоха-выдоха и дочитать этот текст до конца.

                        История моего интереса к сети Fidonet (можно смело пропустить)


                        Читать дальше →
                      • Создание простой MVC-системы на PHP 5

                        • Перевод

                        Предисловие


                        В этом руководстве Вы узнаете, как построить простую систему по архитектуре MVC (Model-View-Controller, Модель-Отображение-Контроллер) на PHP 5.1 с использованием возможностей библиотеки SPL (Standard PHP Library, Стандартная Библиотека PHP).

                        Читать дальше →
                      • Программируем стартап Веб 2.0 на PHP

                          Программируем стартап Веб 2.0 на PHP
                          Итак, вы воодушевлены идеей стартапа Веб 2.0. Вы полагаете, что придумали что-то оригинальное и свежее. Вам видится эффектная реализация вашей идеи. Вы верите, что ваш проект произведет революцию на рынке. Если именно такие мысли занимают вас, самое время заняться бизнес-планом. Планирование бизнеса – это отдельная дисциплина и об этом можно найти множество литературы. Впрочем, если вы не имеете опыта составления бизнес-планов, лучше прибегнуть к помощи профессионалов. Чем хуже спрогнозирован бизнес, тем выше риски его краха.

                          Однако допустим, что вы располагаете привлекательным бизнес-планом, вы ожидаете самоокупаемость проекта уже через 2 года от момента его старта, и предвкушаете ежегодный 50% рост его рекламного потенциала. В MS-Visio подготовлены многообещающие схемы пользовательского интерфейса проекта. И даже более того, ваш дизайнер, вооружившись модным руководством, в рекордные сроки обозначил графический вид проекта. Так, что сверстанные в лучших традициях безтабличной верстки типовые страницы пользовательского интерфейса дожидаются своего звездного часа в вашей локальной папке проекта.
                          Читать дальше →
                        • CSSDoc — формат комментариев для CSS

                            Уже неоднократно видел утверждение, что CSS необходимо комментировать, чтобы потом было проще сориентироваться себе или тому, кто также поддерживает или будет в дальнейшем поддерживать ваш код. Но почему-то никто не предлагает использовать какой-то универсальный формат комментариев, который был бы понятен всем, хотя в программировании такое используется повсеместно: JavaDoc, JSDoc, PHPDoc и т.п.

                            Несложно догадаться, что рано или поздно кто-нибудь бы захотел использовать подобный формат комментариев в CSS и такой формат появился: CSSDoc. Спецификация пока что имеет статус черновика, но ничто не мешает начать пользоваться основными правилами уже сейчас.

                            Если интересно, то нужно нажать на эту ссылку.
                          • HOW-TO pptpd+freeradius2+mysql+abills 0.50b для малого офиса или мелкого провайдера на Ubuntu 9.10/10.04

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

                              ubuntu 9.10, с целью обновиться до 10.04, ничего не трогая.
                              pptpd 1.3.4-2
                              freeradius2.1.0
                              abills 0.5
                              dictionary.microsoft

                              Разработчик биллинга находится здесь: abills.net.ua
                              Хотелось бы выразить большую благодарность разработчикам данного биллинга!

                              Цели:
                              1.Обеспечить интернетом локальную сеть.
                              2.Учет трафика
                              3.Учет финансов
                              4.Создание тарифных планов.
                              5.Ограничение по скорости
                              6.Шифрование 128bit, причин много.
                              7.Без шифрования, но используя mschapv2.
                              8.Шифрование личного кабинета (apache SSL)
                              9.Возможность модернизации: интеграция почтового сервера с биллингом и т.д. Есть много модулей платных и нет.

                              Читать дальше →
                            • Где погрызть гранит науки

                                image Здравствуй, хабрасообщество. Я знаю, ты любишь халяву. А еще ты любишь учиться. Ведь так? А что может быть лучше для хабравчанина бесплатного образования? Вот и решил собрать специально для тебя подборку из ссылок, где можно набраться уму-разуму в области IT.
                                Все нижеперечисленные ресурсы абсолютно и официально бесплатны и свободны, что не может не радовать.

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

                                Большое спасибо в помощи добавлении ресурсов vansickle, RedFox, kagen, theinterman, sM1Le.

                                Англоязычные ресурсы



                                Компьютерные науки



                                OpenCourseWare MIT




                                Одно из самых больших хранилищ учебных курсов. Здесь собраны практически все курсы, которые преподаются в Massachusets Institute of Technology, который по праву считается одним из лучших в мире. На сайте всего 1900 курсов, а тех, которые преподаются на факультете Electrical Engineering and Computer Science я насчитал более 200. Состав большинства курсов: краткие конспекты лекций, подробное описание курса, календарный план, задания на лабораторные работы, задания на курсовые проекты и экзамены, промежуточные модули. К некоторым курсам прилагаются и видеолекции.

                                смотреть другие сайты
                              • Привет, я принес Идейник!

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

                                  логотип идейника


                                  Итак, идейник — это сервис для творческих людей, он умеет хранить ваши идеи так, как вам будет удобно.
                                  Читать дальше →
                                • Настройка разрешения на внешнием мониторе (openbox)

                                    image
                                    С недавнего времени пересел на OpenBox (дистрибутив CrunchBang).

                                    У меня ноутбук, дома я подключаю к нему внешний монитор.
                                    Сразу же столкнулся с проблемой, что после загрузки системы, на мониторе и ноуте ставится низкое разрешение.
                                    Через grandr выставляю нормальное разрешение. Но после перезагрузки все настройки слетали, и приходилось все выставлять по новой.
                                    Читать дальше →
                                  • 7+ превосходных инструментов для оптимизации изображений

                                    • Перевод
                                    Перевод статьи 8 Excellent Tools for Optimizing Your Images
                                    К сожалению на момент перевода один из сервисов перестал работать. Но хабровчане предложили еще много хороших решений!

                                    Одним из самых простых способов уменьшить время отклика страниц на вашем сайте является оптимизация изображений.

                                    Есть несколько бесплатных инструментов помогающих уменьшить и оптимизировать изображения. В этой статье вы найдете удобные инструменты для создания картинок для веба настолько маленьких по весу, насколько это возможно.
                                    Обзор инструментов — под катом.
                                    Читать дальше →
                                  • И ещё один способ генерации PDF

                                      Навеяно топиком о генрации PDF с помощью ghostscript и Inkscape.

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

                                      Итак, генерация PDF с помощью QT

                                      Читать дальше →