• Как обновить ядро в системе без перезапуска сервисов (пошаговая инструкция)

      Как вы думаете насколько реально зайти на машину по ssh, обновить систему, загрузить новое ядро и при этом оставаться в той же ssh сессии. Сейчас есть модное движения по обновлению ядра на лету (ksplice, KernelCare, ReadyKernel, etc), но у этого способа есть много ограничений. Во-первых, он не позволяет применять изменения, которые меняют структуру данных. Во-вторых, объекты в памяти могут уже содержать неверные данные, которые могут вызвать проблемы в дальнейшем. Здесь будет описан более «честный» способ обновить ядро. На самом деле, сам способ уже давно известен [1], а ценность этой статьи в том, что мы разберем все в деталях на реальном примере, поймем, насколько это просто или сложно, и чего стоит ждать от подобных экспериментов.
      Читать дальше →
    • Давайте уже разберемся в DNS

      • Translation

      image
      Внимательный читатель найдет на этой картинке IPv6


      Люди часто озадачены доменами. Почему мой сайт не работает? Почему эта хрень поломана, ничего не помогает, я просто хочу, чтобы это работало! Обычно, вопрошающий или не знает про DNS, или не понимает фундаментальных идей. Для многих DNS — страшная и непонятная штука. Эта статья — попытка развеять такой страх. DNS — это просто, если понять несколько базовых концепций.


      Что такое DNS


      DNS расшифровывается как Domain Name System. Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.


      Вот и все. Правда. Вы или ваш браузер запрашивает значение для ключа www.example.com, и получает в ответ 1.2.3.4.

      Читать дальше →
    • Хабразвук

        Увидев наполненный красивыми графиками и трагическим пафосом пост "Хабр умирает?", я задумался: а как бы вся эта красота могла звучать? Когда выдалось немного свободного времени, я скачал данные и натравил на них Sonic Pi. Теперь я знаю, как звучит Хабрахабр, и хочу поделиться этим забавным опытом.
        Читать дальше →
      • Обзор инфракрасного датчика CO2 MH-Z19

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

          В отличие от старых датчиков CO2, MH-Z19 не требует специфического напряжения или высокой мощности и умеет передавать данные через UART и PWM.


          Читать дальше →
        • 350+ полезных ресурсов, книг и инструментов для работы с Docker

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

          Читать дальше →
          • +28
          • 81.2k
          • 8
        • Микроник — электронный конструктор для детей. И для таких взрослых, как я

            На этих выходных я раздобыл себе вещь, которая многим покажется очень простой, но я давно с таким детским азартом не проводил выходные. Речь идет об электронном конструкторе "Микроник", который придуман в «Амперке» Кириллом Коротковым и Василием Басалаевым.



            Читать дальше →
            • +9
            • 20.5k
            • 8
          • Мифы и рецепты Docker

            Вокруг постоянно говорят про Docker. Я знаю что вы отвечаете: «Это что-то про контейнеры, виртуализацию, облака», «У нас все и так работает», «Это все баловство», «Он не запустится на нашем старом ядре линукса», «Точно так же можно подготовить образ для облака и запустить его», «Можно просто настроить LXC, chroot или AppArmor». Вы знаете, что он вам не нужен. Очередная модная штука. В конце концов, просто лень разбираться. Но любопытно! Тогда, читайте. Это серия из шести заметок.

            Если вы не слышали о контейнерах в Линуксе, вот список страниц, которые надо прочитать, чтобы понимать о чем речь:


            Поставьте Docker, он небольшой. Для Windows и Mac можно просто поставить Toolbox: www.docker.com/toolbox. Создавать виртуальную машину и настраивать лучше из командной строки, а не через графическую обертку. Прочитайте несколько уроков из мануала. Здесь я пишу о том, чего в документации нет.

            Docker — это не виртуализация.


            Вот какой у меня линукс:

            Welcome to Ubuntu 15.04 (GNU/Linux 3.19.0-15-generic x86_64)
            
            Last login: Tue Aug 18 00:43:50 2015 from 192.168.48.1
            gri@ubuntu:~$ uname -a
            Linux ubuntu 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/                                       Linux
            gri@ubuntu:~$ free -h
                         total       used       free     shared    buffers     cached
            Mem:          976M       866M       109M        11M       110M       514M
            -/+ buffers/cache:       241M       735M
            Swap:         1.0G       1.0M       1.0G
            

            Запускаю CentOS:

            gri@ubuntu:~$ docker run -ti centos
            [root@301fc721eeb9 /]# uname -a
            Linux 301fc721eeb9 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
            [root@301fc721eeb9 /]# cat /etc/redhat-release
            CentOS Linux release 7.1.1503 (Core)
            [root@301fc721eeb9 /]# free -h
                          total        used        free      shared  buff/cache   available
            Mem:           976M         85M        100M         12M        790M        677M
            Swap:          1.0G        1.0M        1.0G
            

            Docker — это не chroot, их функционал частично совпадает. Это не система безопасности вроде AppArmor. Docker использует те же контейнеры, что и LXC, но интересен он не контейнерами. Docker — это ничего из того, что я думал о нем до того, как прочитал документацию.

            То же ядро, память, файловая система, а дистрибутивы, библиотеки и пользователи — разные.

            Docker — это инструмент объекто-ориентированного проектирования


            Регулярно возникает вопрос, является ли конфигурация nginx частью веб-приложения. Системные администраторы спорят с разработчиками. Но недавно в мире появились devops и захотели вместо последовательно-процедурного вызова команд из bash думать привычным OOP. Docker дает инкапсуляцию, наследование и полиморфизм компонентам системы, таким как база данных и данные. Это значит, что можно провести декомпозицию всей информационной системы, выделить приложение, web-сервер, базу данных, системные библиотеки, рабочие данные в независимые компоненты, внедрять зависимости из конфигов, и заставить все это работать одной группой, одинаково на разных компьютерах.

            Такой подход можно использовать, чтобы снизить потери рабочего времени дорогих front-end разработчиков на настройку базы данных и Nginx. Чтобы уйти от vendor lock-in. Не обломаться когда openssl на сервере не поддерживает cipher, используемый в API госучреждения. Чтобы приложение работало независимо от версии PHP или Python на сервере заказчика. Создавать open source не только в виде кода, но и настройкой пакетов из нескольких приложений, написанных на разных языках, работающих на разных слоях OSI.
            Читать дальше →
          • Как выбрать проектор — полное руководство

              Последнее обновление и актуализация данных в посте — 4 октября 2019.



              Опыт нашей службы поддержки показывает, что очень немногие разбираются в проекторной (или "проекционной") технике. Если вы задумались о приобретении проектора, то наверняка встанете перед нелегким выбором. Тем, кто не сталкивался ранее с этим видом техники, сложно сориентироваться в огромном ассортименте, который предлагают магазины, и выбрать оптимальный проектор для конкретных целей. В этой статье мы расскажем об основных типах проекторов, а также о наиболее важных характеристиках проектора и помещения, на которые следует обратить внимание при выборе устройства:


              • Условия использования
              • Яркость
              • Качество цветопередачи
              • Контрастность
              • Разрешение
              • Способы установки
              • Разъемы и интерфейсы
              • Сетевой функционал
              • Ресурс лампы
              • Поддержка 3D
              • Требования к обслуживанию

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

              Читать дальше →
            • Осознанные сновидения, фаза быстрого сна и маска Remee — можно ли управлять своими снами

                На ночь глядя я познакомлю вас с историей изучения осознанных сновидений, расскажу о ключевых фигурах в науке, которые стояли у истоков открытия быстрой фазы сна, или REM, а также коротко поделюсь своим опытом «осознанных снов» с маской Remee

                Добрый вечер!


                Читать дальше →
              • Linux HA на основе Pacemaker

                  В своей предыдущей статье я вкратце коснулся темы создания High Availability решения на основе демона heartbeat. Однако, как выяснилось, что-то сложнее чем 2-х узловой кластер на нем делать не так уж удобно. Изучение проблемы вывело меня на след проекта Pacemaker. Его-то мы сейчас в кратце и рассмотрим.
                  Читать дальше →
                • Платье, которое разделило интернет

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

                    image


                    Казалось бы, какие тут могут возникнуть сложности? Но единства в этом вопрос нет: три четверти опрошенных считают платье бело-золотым, а одна четверть — сине-черным. Согласитесь, это странно. В чем же дело?
                    Читать дальше →
                  • Как быстро создать опрос на вашем сайте с помощью форм Google?

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

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

                      Есть несколько подходов в создании подобных форм:

                      • Формы можно сделать, используя теги HTML и завязать нажатие кнопки «Отправить» с отправкой введенных данных вам на email

                      • Можно сделать связку PHP+MySQL (или любой другой язык программирования и базу данных) и все введенные данные сохранять в базу данных для дальнейшей работы.

                      • Если ваш сайт сделан с использованием какой-нибудь популярной CMS (например, Joomla, Drupal или WordPress), то вы можете поискать в сети плагины, модули и компоненты, которые достаточно просто позволяют создавать формы

                      • А можно для создания форм обратной связи использовать бесплатные инструменты всем известного Google.Docs

                      И в этой статье я хотел бы показать как с помощью Google.Docs вы можете легко и быстро создавать всевозможные формы опроса для ваших сайтов.
                      Читать дальше →
                    • Очень быстрый и эффективный способ расслабления глаз

                        Предисловие


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

                          Как можно превратить слово в картинку? Об этом повествует книга «Word as Image» от Ji Lee, бывшего креативного директора Google Creative Labs. В книге представлено более 100 способов такого превращения. Книгу можно приобрести на Amazon, как источник вдохновения. Я думаю, must have для художников логотипов, о чем повествует промо-ролик (почему-то не встраивается в топик).

                        • Хабрахабр: немного статистики и альтернативный топ вопросов и ответов

                            Мне так понравилось анализировать хабр(), что я решил проанализировать недавно созданный раздел хабра: вопросы и ответы. Уже сейчас видно, что этот раздел будет таким же веселым, как и остальные.

                            Итак, я проанализировал 1775 вопросов и получилась такая статистика:
                            Читать дальше →
                          • Как создать свое первое приложение для iPhone

                            • Translation
                            Что если бы вам давали по рублю каждый раз, когда вы слышите выражение «У меня отличная идея для нового приложения”. Сейчас все говорят об одном и том же. iPhone создало беспрецедентное нововведение для людей как в обществе программистов так и вне. И для тех, кто находится вне среды разработки, этот процесс остается загадкой.

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

                            1. Есть хорошая идея?


                            Как же узнать – хорошая ли у вас идея или нет? Первый шаг: насколько цельна идея. Шаг второй: ответьте на вопрос – имеет ли она хоть один показатель успеха?

                            image

                            Решает ли ваше приложение уникальную проблему? До того как лампочка была изобретена, кто то должен был крикнуть «Эй, омерзительно трудно читать под светом свечи!”. Разберитесь что делать сейчас «омерзительно” трудно и как ваше приложение может сделать более комфортным жизнь тех людей, которые его будут использовать.

                            Dog Tricks

                            Предназначено ли ваше приложение для какой нибудь специфической ниши? Несмотря на то, что для поиска AppStore нет никакой статистики, масштаб использования приложений растет вместе с расширением приложений в AppStore. Найдите нишу со страстными поклонниками (любители домашних животных, например) и создайте приложение, которое будет интересно специфической категории людей.

                            Do Not Press

                            Заставляет ли людей хохотать? Это не поддается прогнозам. Если вы можете придумать что нибудь смешное, вы несомненно на верном пути и ваша идея может стать золотой. Вчера я нажимал красную кнопки «не нажимать” в течении 5-и минут.

                            Wine PhD

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

                            Popper

                            Будет ли приложение интерактивным? Давайте посмотрим правде в глаза, многим из нас нравятся именно такие приложения. Удачные игры и приложения привлекают пользователей именно требованием действий!



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

                            Читать дальше →
                          • Набор велосипедов Yii разработчика

                              От автора

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

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

                              Читать дальше →
                            • Cebit 2014 глазами робота Webot

                                В прошлый раз наш робот организовывал удалённое посещение выставки Skolkovo Robotics. Теперь мы отправили его в Германию в город Ганновер на выставку Cebit 2014.

                                В этот раз у вас будет 3 минуты, чтобы посмотреть выставку. Не забудьте, что роботом можно управлять только из браузеров Google Chrome и Opera Next. Получить доступ к роботу вы можете на нашем сайте: https://wicron.com/ru/queue.
                                Читать дальше →
                              • Как отключить поиск на новой вкладке Chrome

                                  Chrome New Tab Page

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

                                  1. Заходим в chrome://flags.
                                  2. Находим пункт «Enable Instant Extended API» / «Включить расширенный API Живого поиска» и выбираем Disable/Отключено.
                                  3. Нажимаем кнопку Restart/Перезапустить в полоске, появившейся внизу окна.
                                  4. Profit!
                                • Git и публикация сайта

                                  • Translation
                                  При попытке отредактировать этот старый пост слетело всё форматирование. Может быть я его когда-нибудь исправлю.

                                  Я потратил несколько месяцев на борьбу с глюками Git-svn и обдумывание разных вариантов, прежде чем пришёл к этому методу организации рабочего процесса с сайтом — простому, гибкому и удобному в работе.

                                  Основные преимущества:
                                  • Делая push из удалённой копии мы автоматически обновляем live-копию сайта
                                  • Правки файлов на сервере не будут разрушать историю коммитов
                                  • Простота, не нужны особые правила выполнения коммитов
                                  • Можно применить к уже запущенному сайту, без повторного деплоя или перемещения файлов
                                  посмотреть, что там такое