• Настройка UEFI-загрузчика. Самое краткое руководство в мире

    • Tutorial

    Как устроена загрузка современных ОС? Как при установке системы настроить загрузку посредством UEFI, не утонув в руководствах и ничего не сломав?


    Я обещал "самое краткое руководство". Вот оно:


    1. Создаём на диске таблицу разделов GPT
    2. Создаём FAT32-раздел на пару сотен мегабайт
    3. Скачиваем из интернета любой UEFI-загрузчик
      (нам нужен сам загрузчик, это один бинарный файл!)
    4. Переименовываем и кладем этот файл на созданный раздел по адресу /EFI/Boot/bootx64.efi
    5. Создаём текстовый конфиг, кладем его там, где загрузчик ожидает его увидеть
      (настройка и местоположение конфига зависят от конкретной реализации загрузчика, эта информация доступна в интернете)
    6. После перезагрузки видим меню загрузчика
      (Если на диске установлена Windows 8 или 10 — с большой вероятностью это руководство сокращается до пунктов 3 — 5.)

    TL;DR не надо прописывать путь к загрузчику в новых загрузочных записях UEFI — надо файл загрузчика расположить по стандартному "пути по-умолчанию", где UEFI его найдет, и вместо загрузочного меню UEFI пользоваться меню загрузчика, которое гораздо проще и безопаснее настраивается

    Читать дальше →
  • NoSQL – коротко о главном



      Сергей Туленцев (TextMaster)


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

      Кому будет полезен этот доклад? Это обзорный доклад с претензией на структурированность. Если вы что-то где-то когда-то слышали про NoSQL, то через 40 минут вы будете знать гораздо больше, вы будете легче ориентироваться в терминах и более уверенно выбирать базы данных для своего проекта.

      Поговорим также про типичные примеры применения и как не надо применять NoSQL базы данных.
      Читать дальше →
    • Я хочу, чтобы сайты открывались мгновенно

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


        Я хочу, чтобы мой сайт открывался быстро
      • Подсветка синтаксиса несколькими строками javascript

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

          Для случаев без кодоизврата (а их большинство) можно использовать такой код:
          code = code
          // ключевые слова (список неполон, написал, что в голову пришло)
          .replace(/(var|function|typeof|new|return|if|for|in|while|break|do|continue|switch|case)([^a-z0-9\$_])/gi,
          '<span class="kwrd">$1</span>$2')
          // всякие скобочки
          .replace(/(\{|\}|\]|\[|\|)/gi,'<span class="kwrd">$1</span>')
          // однострочные комментарии
          .replace(/(\/\/[^\n\r]*(\n|\r\n))/g,'<span class="comm">$1</span>')
          // строки
          .replace(/('.*?')/g,'<span class="str">$1</span>')
          // функции (когда после идентификатора идет скобка)
          .replace(/([a-z\_\$][a-z0-9_]*)\(/gi,'<span class="func">$1</span>(')
          // не люблю восьмизначные табы, пусть лучше будет 4 пробела
          .replace(/\t/g,'    ');


          под катом CSS, плагин jQuery, пример и некоторые пояснения-рассуждения
        • Как начать и не бросить писать ОС

          Очередной велосипедЧитая Хабр в течении последних двух лет, я видел только несколько попыток разработки ОС (если конкретно: от пользователей pehat и iley (отложено на неопределённый срок) и Igor1024 (не заброшено, но пока больше походит на описание работы защищённого режима x86-совместимых процессоров, что бесспорно тоже необходимо знать для написания ОС под x86); и описание готовой системы от alman (правда не с нуля, хотя в этом нет ничего плохого, может даже наоборот)). Мне почему-то думается, что почти все системные (да и часть прикладных) программисты хотя бы раз, но задумывались о написании собственной операционной системы. В связи с чем, 3 ОС от многочисленного сообщества данного ресурса кажется смешным числом. Видимо, большинство задумывающихся о собственной ОС так никуда дальше идеи и не идёт, малая часть останавливается после написания загрузчика, немногие пишут куски ядра, и только безнадёжно упёртые создают что-то отдалённо напоминающее ОС (если сравнивать с чем-то вроде Windows/Linux). Причин для этого можно найти много, но главной на мой взгляд является то, что люди бросают разработку (некоторые даже не успев начать) из-за небольшого количества описаний самого процесса написания и отладки ОС, который довольно сильно отличается от того, что происходит при разработке прикладного ПО.

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

          Читать дальше →
        • Об э- и иммиграции. В этот раз — Монреаль

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

            image
            Читать дальше →
          • Сборка кастомной прошивки OpenWRT

            Не так давно озадачился поднятием на своем роутере D-Link DIR-320 сервера OpenVPN. Но после установки прошивки OpenWRT оказалось, что на 4-х мегабайтной флешке роутера не осталось достаточно места для установки OpenVPN. Выходом из ситуации стала сборка собственного варианта прошивки с помощью Image Generator, что позволило при том же наборе пакетов получить прошивку меньшего размера.
            Читать дальше →
          • Фреймворки делают разработчиков тупыми?

            • Перевод
            Предлагаю вам перевод записи блога, автор которой подметил глобальные тенденции современного программирования. Хотя речь идет о Java, с которым я никогда не работал, я нашел много до боли знакомого.

            На прошлой неделе я проводил несколько интервью, чтобы нанять Senoir Java developers с опытом около пяти лет. После них я почувствовал, что фреймворки делают жизнь разработчиков проще, но в тоже время делают их тупее. Каждый указывает практически все новые фреймворки в своем резюме в виде «Мощный опыт работы с Spring, Hibernate, Web Services и так далее».

            Вот как проходили собеседования.

            Я: Вы использовали Spring в своем последнем проекте. Какие преимущества использования Spring?
            Претендент: Мы можем настраивать beans в XML, а Spring возьмет на себя создание экземпляра и отдаст его нам.
            Я: Если Spring только для создания объектов, зачем он вообще нужен – я могу напрямую создать экземпляр, используя «new». Почему мне стоит настраивать имена классов в XML и получать объект из Spring?
            Читать дальше →
          • Нано-эппл, или как стать производителем электроники

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

              Со времени моего последнего поста о Чехии прошло уже более двух лет! Я его закончил фразой:

              «В следующий раз я расскажу о том, какими способами стоит переезжать, что делать по приезде, какое пиво пить, с кем дружить, про девушек и первые впечатления! И самое главное, я опишу, что мне и знакомым тут не нравится, что бы сбросить розовые очки с некоторых импульсивных мигрантов!


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

              Кто же виноват, что я так долго не писал ничего о Чехии?! Конечно, в первую очередь я сам. А именно ровно через полгода после поста о получении ВНЖ в Чехии я вернулся на Родину в Россию, где провел полтора года. Назад в Прагу я приехал всего две недели назад, хотя пару раз я ездил в Чехию на месяц погостить. Кстати, сейчас тот пост уже мало актуален, многое за два года поменялось и пока я не до конца понял что, напишу отдельный пост, как выясню все нюансы.

              Как раз сложности иммиграции и мои „розовые очки“ сыграли со мной злую шутку и я был вынужден вернуться и уехать из Чехии. За красивой и беспечной жизнью в Праге я не замечал, как рассыпаются мои дела в России и как мои отношения в семье ухудшаются из-за того, что я очень мало времени уделял им, стал экономить на всем, что меня окружало и прежде всего на себе самом. В итоге мы в спешке вернулись назад спасать то, что там еще оставалось, спасать себя и семью в том числе.

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



              Итак, по порядку…
              Читать дальше →
            • Снайпер ebay на конкретном примере

              Поскольку подробного описания снайперов аукциона ebay на Хабре я не нашёл, решил поделиться собственным опытом. Вы узнаете, что такое снайперы вообще, и как пользоваться одним из них в частности.
              Читать дальше →
            • Проектирование посетительского поведения приема дисконтной карточки в интернет-магазине

                Сейчас у меня есть клиент (я об этом уже упоминал), который хочет вывести в Украину новую бонусную систему. Потихоньку она перерастает в платежную. Планы чрезмерно амбициозные, а делается все на коленке. Деньги у клиента большие, но человек старой закалки и привык все делать на лету. Особенно это касается IT.

                Как следствие, при тестировании процесса активизации карточки потенциальным владельцем возникла куча проблем. Кратко — 3 шага с возвратом на один шаг, 2 шага для дальнейшего входа в систему, неудобный ввод неудобного пароля. В итоге прогнозируемая эффективность — максимум 10%. Это все следствие отсутствия проектирования посетительского поведения.

                Меня подрядили описать «логику того, как работает окошко ввода номера карточки и зачисления бонусов с посетителем». То, как в данный момент работает вся структура (системой боюсь назвать).

                Я же окрестил это «проектированием посетительского поведения», разбил на три части: посетитель без карточки+оформление оператором карточки, посетитель зачисляет бонусы на карточку, посетитель расплачивается карточкой.

                По идее, все это должно было быть в одном документе, т.к. все это описание процесса одного скрипта. Но объединение логик стало бы очень громоздким и неудобным для изучения, особенно — далеким от IT людям.

                В начале работы, «главный» всего этого предприятия после моих объяснений и цены выдал: «да я это за полчаса на коленке с каким-нибудь владельцем магазина за пиво нарисую». Обидело, честно. В итоге процесс, который занимает у посетителя не более одной минуты, был описан за 4 дня полностью отведенных под эту работу.

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

                Для себя я поставил задачу сделать процесс работы с карточкой в интерфейсе интернет-магазина максимально простым, защищенным от ошибок и вредительства, четко описать поведение операторов на местах. И ОБЯЗАТЕЛЬНО таким, чтобы в случае каких-либо проблем посетитель мог оперативно, без истерик решить их. Ведь проблемы напрямую влияют на конверсию в магазине, если процесс взаимодействия с окном для ввода карты будет затруднителен — это незамедлительно скажется на конверсии. И клубная система, вообще, будет терять участников.

                Получилось, что в спроектированном поведении (далее кратко буду называть «логикой»), есть 3 группы, так называемых, заинтересованных лиц. То есть субъекты, которые принимают участие в процессе. Оператор, посетитель и скриптик. Последний тоже производит в логике важные действия, поэтому я и его зачислил в группы заинтересованных лиц.

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

                Я опишу ключевые моменты, которые были раскрыты благодаря проектированию процесса.

                Читать дальше →
              • Учебник по контекстной рекламе (Бабаев, Евдокимов, Иванов)

                  imageВсем привет. Мне тут на рецензию дали книжку по контекстной рекламе.

                  До этого на рынке видел только два материала на эту тему — от Бегуна и от Яковлева. Тема была раскрыта не полностью.

                  Ну что, давайте по плюсам:
                  — Нормальный дизайн (что редкость в нашей среде), качественная бумага (приятно в руках держать), низкая цена
                  — Ребята собрали под одной обложкой лучших практиков Рунета. Я, правда, не всех знаю. Но квалификация того же Довжикова, Бабаева, Амилющенко, Веселова, Кучумова и еще 2-3 человек не вызывает сомнений
                  Читать дальше →
                • Новичкам про Windows Phone 7

                    По результатам двух мероприятий (BizSparkCamp и Nokia Developers Day) набрал для себя некоторое количество полезной информации про Windows Phone 7. Ранее с этой платформой был практически не знаком по очевидным причинам (в России этих устройств пока нет), так что впечатления абсолютно чистые, ничем не замутненные.

                    Вкратце: платформа весьма интересная и перспективная, но некоторые идеологические моменты выглядят довольно таки спорными. Подробности — см. ниже.
                    Читать дальше →
                  • RackTables — наглядно и подробно о том, что установлено в стойки

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

                      Зачем это мне?


                      Типичная ситуация. У админа (или группы админов) в хозяйстве уже не одна стойка с оборудованием — серверы, маршрутизаторы, дисковые полки и массивы, PDU, и так далее. Вполне логично предположить, что необходимо владеть информацией о том, что где стоит, какие сервисы где крутятся, сколько жестких дисков воооон в том сервере. Самый простой вариант учета серверного оборудования — какая-нибудь табличка в excel. Но это не интересно. Статично, ненаглядно. Не вэб-два-нольно. А вот в RackTables…
                      Читать дальше →
                    • Средство для синхронизации любых файлов с Google Account: SyncDocs

                        Syncdocs – Google Docs Sync and BackupУзнав из недавно пробегавшей статьи, что появилась возможность закачивать в Google Docs любые файлы, а так же ознакомившись со смешными ценами на дополнительное пространство, я было возрадовался этой возможности и начал искать инструменты, с помощью которых можно было бы синхронизировать свои документы с данным сервисом. Меня в первую очередь интересовала возможность хранения данных в облаке и синхронизации этих данных с несколькими компьютерами. Однако радость моя была недолгой. «Родного» клиента от Google так и нет, а сторонние средства либо тяжелые, либо требуют дополнительной оплаты за возможность использовать все доступное место в облаке. Так и не подобрав инструмент по вкусу, я отказался от этой идеи.

                        Однако буквально сегодня появилась задача, решение которой всерьез облегчилось бы наличием синхронизации через облако. Я посмотрел несколько вариантов с другими сервисами, но вернулся к поискам утилиты именно для Google Docs. И, самое интересное, нашел именно то, что мне подошло — SyncDocs.

                        Утилита, которая в настоящий момент имеет статус беты, предназначена для синхронизации и резервного копирования любых файлов с Google Docs. Предназначена она под Windows (но, как оказалось, отлично работает и в Linux под wine) и имеет как «установочную», так и portable-версию.
                        О возможностях под катом
                      • Порнография с точки зрения эволюционной психологии

                          Данный топик был написан по следам бурных обсуждений на Хабре ряда новостей, так или иначе связанных с порно (раз, два, три, четыре). В этих и подобных топиках подымается тема цензурирования интернета и запрета порнографии вообще либо отдельных её жанров. Хотя хабрасообщество в целом довольно либерально относится к порно, обсуждение влияния его на психику — особенно детскую — выливается обычно в нешуточные драмы (самая серьёзная, на моей памяти, была тут).

                          Между тем, сколько-нибудь заслуживающих доверия данных о влиянии порнографии на общественное и личное здоровье в этих обсуждениях нет; более того, мои попытки по-быстрому найти какие-то вменяемые данные в интернете не увенчались успехом. В поисках ответов на вопросы мне пришлось погрузиться довольно глубоко в научные исследования, и кое-что я в итоге нашёл. Краткий синопсис современных научных взглядов на порнографию и её влияние на человека будет дан под катом после небольшого FAQ'а.

                          Вопрос: картинки будут?
                          Ответ: будут.

                          Вопрос: какое отношение этот топик имеет к Хабру?
                          Ответ: он интересен читателям Хабра.

                          Вопрос: нет, всё-таки, какое отношение имеет топик к тематике Хабра?
                          Ответ: никакого; просто я считаю, что Хабр — это, прежде всего, определённая аудитория, а не тематика.

                          Вопрос: почему в блог «Интернет»?
                          Ответ: потому что Internet is for porn.

                          Если Вам не исполнилось 18 лет, под кат лучше не ходить
                        • Нормализация запросов в Директе или немного о подводных камнях в подборе слов



                            Коллеги очень часто просят меня писать побольше о подводных камнях и различных секретах Яндекс.Директ. В этой заметке я расскажу о подводном камне №1 — нормализации или склейке запросов.

                            Итак, есть клиент РК в тематике авиабилеты. Тематика очень широкая, огромное количество трафика. Есть задача «показываться любому кто ищет любую информацию о любом направлении, доступном для авиаперелета, цена перехода должна быть минимально возможной — 30 копеек». Ок, задача понятна, настраиваем (здесь — подробнее о том как настраивать одноцентовые РК).

                            Первичный медиаплан показал очень неожиданную картину. Вот фрагмент скриншота из «Оценки бюджета»


                            Статистика показов дает нам информацию о том что весьма непопулярное у туристов направление в столицу Индии запрашивается в 4-8 раз чаще чем популярные направления в Европу. Но это же бред какой-то! (с)

                            Смотрим семантическое ядро запроса «Москва Дели» и очень удивляемся.
                            Читать дальше →
                          • О процессоре AMD E-350 и о нетбуке HP PAVILION dm1-3100er на его основе

                              AMD пришла на рынок нетбуков!


                              Всякий раз, когда речь заходит про выбор мобильного компьютера, внимания в первую очередь удостаиваются ноутбуки и нетбуки, построенные на платформе Intel. Это закономерно. Таких предложений – большинство, отличаются они немалым разнообразием, да и по сочетанию потребительских качеств к интеловским мобильным платформам нет никаких особых претензий. Тем не менее, положение Intel на рынке мобильных решений вполне может пошатнуться. Угроза идёт со стороны процессоров, которыми в ближайшее время собирается наводнить рынок компания AMD, – Ontario, Zacate и Llano.



                              Это – принципиально новые продукты, относящиеся к семейству AMD Fusion. Желая подчеркнуть их оригинальность, компания даже придумала специальную аббревиатуру для их обозначения – не CPU, а APU (Accelerated Processing Unit). Новизна заключается не только в названии. Суть APU состоит в том, что в одном процессорном полупроводниковом кристалле располагаются не только x86 вычислительные ядра, но и ядра графические. При этом идея состоит в том, что часть повседневной работы может выполняться не только традиционными x86-ядрами, но и силами графического ускорителя, шейдерные процессоры которого прекрасно приспособлены к потоковым вычислениям.
                              Читать дальше →
                            • Asterisk для дома

                                Что такое Asterisk и зачем он нужен дома



                                Asterisk это открытая виртуальная PBX (телефонный коммутатор). Подробнее про Asterisk можно почитать в блоге Asterisk IP-PBX. Началось все с того, что я получил довольно крупный счет от местной телефонной компании за меджугородные переговоры. Вариантов платить меньше было собственно два: либо покупать карты IP телефонии и звонить с домашнего телефона по карте, либо звонить с ПК через SIP провайдеров. Первый вариант неудобен тем, что надо искать и покупать карты нужного провайдера IP телефонии, а второй тем, что привязан к компьютеру. Решение пришло, когда я узнал про Asterisk. Его можно было подключить и к городской телефонной линии и к SIP провайдеру и к домашнему стационарному телефону. Дома у меня уже имелся сервер, на котором можно было все установить.
                                Читать дальше →