• История Linux. Вкратце о главном

      Корни Linux прослеживаются ещё с 70-х годов 20-го века. Точкой отсчёта можно считать появление операционной системы Unix в 1969-м году в США в фирме Bell Laboratories, дочернем подразделении компании AT&T. Unix стала основной для большого количества операционных систем промышленного класса. Самые основные из них отображены на этой временной шкале:


      Читать дальше →
    • С&С Classic: качай бесплатно, Коммандер!

        Новость на пару дней устарела, но внимания всех ценителей, безусловно, стоит: компания Electronic Arts в субботу, 13 февраля, выложила для бесплатного скачивания золотую классику C&C. Это Command & Conquer: Tiberian Sun (1999 года выпуска) и дополнение Firestorm, Command & Conquer: Tiberian Dawn (1995 год), два диска, для GDI и NOD и Command & Conquer: Red Alert (1996 год), два диска, для союзников и Красной Армии.

        Два последних подарка уже и не подарки, так как были доступны и раньше. Однако на страничке Command & Conquer Classic теперь весь набор любимых старых, но не устаревших игр серии C&C. Мало того, EA не поленилась и сделала патч, который позволяет запустить C&C 20-века на новой ОС Windows 7. Патч снабдили подробным инструкциями.

        Ну не молодцы ли? ;)

        via compulenta
      • Долгожданный релиз Хабрафутболок

          image

          Как и было обещано (не забыто), конкурсные дизайны футболок были выложены в магазине Gozo. Все кто хочет футболку С тематикой Хабра уже могут оформить заказ, а участники могут пойти и посмотреть чьи, и какие работы были одобрены.
          Желающим, бесплатно наносится никнейм в 2 места на выбор:
          — спина под воротником;
          — левый или правый рукав по краю.
          Читать дальше →
        • Спать мало, но правильно?

            Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
            Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
            Читать дальше →
          • Занимательная наука

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




              Читать дальше →
            • Экскурсия по Международной космической станции

                Последнее время на Хабре популярна космическая тема, поэтому многим, я думаю, будет интересно посмотреть на видео-экскурсию по МКС, проведенную астронавтом НАСА Майклом Финком. Видео снято несколько месяцев назад, но поиск по сайту результатов не дал.



                остальные 3 части
              • Почему США и СССР одновременно прекратили полёты на Луну

                  Ровно 40 лет назад 20 июля 1969 года команда американских астронавтов во главе с Нилом Армстронгом осуществила первый полет на Месяц.

                  И все же интересно почему за 40 лет больше не было полетов?
                  Почему США и СССР одновременно прекратили полеты на Луну?

                  Еще более непонятным был дальнейший отказ от этого способа исследований вовсе. Что скрывается за таким решением? Может быть, чья-то конкретная угроза? Этого мы не знаем. Однако в скором времени и американцы прекратили полеты на Луну, хотя вроде бы недалеки были от постройки лунного городка и лунного космодрома… Непонятные вещи творятся и с аппаратами, запускаемыми на Марс. Точность старта и возможность корректировки направления полета теперь, казалось бы, вещи сами собою разумеющиеся. Однако одна за другой станции проходят в немыслимой дали от пункта назначения, в другом случае — перед самым ответственным моментом (выходом к планете) — вдруг навсегда пропадает связь… Американцы тоже прочувствовали это в экспедициях на Марс и Венеру.
                  Читать дальше →
                • Пять способов вызвать функцию

                  • Translation
                  Мне часто приходится сталкиваться с JavaScript-кодом, ошибки в котором вызваны неправильным понимаем того, как работают функции в JavaScript (кстати, значительная часть такого кода была написана мной самим). JavaScript — язык мультипарадигменный, и в нем имеются механизмы функционального программирования. Пора изучить эти возможности. В этой статье я расскажу вам о пяти способах вызова функций в JavaScript.
                  Читать дальше →
                • UTF-8 в PHP. Часть 1

                    Здравствуйте, этим постом я хотел бы попытаться приблизить светлое будущее, в котором все используют «кошерную» кодировку UTF-8. В частности это касается наиболее близкой мне среды – веба и языка программирования – PHP, а в конце серии мы подойдём к практической части и разработаем ещё одну велосипедную библиотеку.
                    Читать дальше →
                  • Работаем с jQuery Templates. Часть третья, jQuery Templates Plus

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

                      Дополнительные функции плагина включают:
                      1. Набор команд, существенно упрощающих изменение отрендеренных шаблонов при изменении связанных с ними данных;
                      2. Событие rendered, которое вызывается после того, как отрендеренный шаблон добавляется в структуру документа.

                      Код дополнительных функций вынесен в файл jquery.tmplPlus.js, поэтому для их использования вы должны добавить ссылку на этот файл:

                      <script src="Scripts/jquery-1.5.js" type="text/javascript"></script>
                      <script src="Scripts/jquery.tmpl.js" type="text/javascript"></script>
                      <script src="Scripts/jquery.tmplPlus.js" type="text/javascript"></script>


                      Читать дальше →
                    • Технические работы

                        С четверга на пятницу Хабр переехал на новую структуру frontend-backend (что является одним из этапов апгрейда всего и вся), вроде полёт нормальный. Всё происходило примерно так:


                        Но всё же, если вы заметили чего-нибудь необычное: всякие обрывы страниц, 50х, просто пустые страницы и т.д. — пишите в этот пост. Особенно это касается тех, у кого плохое соединение с интернетами (GPRS и иже с ними, просто ужасный провайдер или dial-up, если кто помнит, что это такое). Если не сложно, не поленитесь взять в руки свой мобильник или смартфон и пролистать несколько страничек сайта на предмет аномалий (может мы очень затянули гайки с тайм-аутами). Статистика всякая нужна.
                        Читать дальше →
                      • Свободное ПО: «проверка лицензионности»

                          Перед руководством организации, которая перевела свои компьютеры под управление «свободных» операционных систем, постоянно маячит угроза «проверки хозяйственной деятельности». Среди прочего, проверять она будет и лицензионность установленного на компьютерах программного обеспечения. И, разумеется, унесет весь компьютерный парк «на экспертизу», не найдя на привычном месте «лицензионной наклейки» от Windows.

                          О реальности такого исхода и о том, как с такими «проверками» бороться, мы сегодня и поговорим.

                          Реальна ли угроза?

                          Читать дальше →
                        • Дешевые SMS для интересных проектов и хороших людей

                            Представляю вашему вниманию сервис для отправки SMS через HTTP/HTTPS API.

                            LittleSMS.ru

                            Для кого предназначен сервис?

                            • Интернет-магазинам (уведомление о новом заказе).
                            • Небольшим проектам с системой уведомлений по SMS.
                            • Сисадминам (уведомления о состоянии сервисов, оборудования и т.п.).
                            • Вам? Напишите, обсудим.
                            Читать дальше →
                          • А как сделать X на языке Y?

                              Часто, когда требуется решить какую-то задачу на новом или старом и позабытом языке возникают довольно простые вопросы, например у меня сегодня возник вопрос как сделать проверку на null (nil, none, nothing, empty) в Tcl.

                              RosettaCode — хрестоматия программирования, содержит решения типовых задач на разных языках, вот например решение моей.

                              Просмотреть решения можно по задачам, языкам, библиотекам.

                              Конечно, ответы на такие вопросы поисковая машина дает довольно быстро путем ввода аналогий из других языков, равно как и любой мануал по языку, но наличие такого «конвертора» знаний на новый язык весьма удобно.
                            • Станция УВБ-76 подала четвёртый сигнал за 30 лет

                                Коротковолновая радиостанция УВБ-76 расположена в деревне Поварово в 40 км к северо-западу от Москвы (фото со спутника). Среди радиолюбителей всего мира известна как «жужжалка» (The Buzzer). Начиная с 1982 года она круглосуточно передаёт в эфир непрерывный шум на частоте 4625 кГц (линк на онлайн-трансляцию). Жужжащий звук длится 0,8 секунды, прерывается на 1-1,3 секунды и повторяется 21-34 раза в минуту. Назначение станции неизвестно.

                                За все 28 лет вещания было зарегистрировано всего три случая, когда в эфир вышло голосовое сообщение. Каждый раз это было некое зашифрованное послание на русском языке. И вот 23 августа 2010 года это случилось снова.

                                Как сообщают западные радиолюбители, примерно в 17:32 GMT станция УВБ-76 передала следующее сообщение: «УВБ-76, УВБ-76 — 93 882 НАИМИНА 74 14 35 74 — 9 3 8 8 2 Николай, Анна, Иван, Михаил, Иван, Николай, Анна, 7, 4, 1, 4, 3, 5, 7, 4» (mp3).
                                Читать дальше →
                              • Отправка СМС из PHP скрипта или командной строки

                                  image
                                  Если у вас есть необходимость в отправке СМС сообщений из консоли или PHP программы, то вы можете воспользоваться следующими командами:


                                  HTTP:
                                  http://sms.ru/sms/send?api_id=00000-0000-0000-000&to=79255005050&text=hello+world
                                  Консоль (необходимо установить curl):
                                  curl http://sms.ru/sms/send\?api_id=00000-0000-0000-000\&to=79255005050\&text=hello+world
                                  PHP:
                                  $body=file_get_contents('http://sms.ru/sms/send?api_id=00000-0000-0000-000&to=7925500505&text='.urlencode(iconv('windows-1251','utf-8','Привет!')));
                                  Описание параметров, варианты ответа и очень приятный сюрприз
                                • Жесткий диск умер — теперь работает как часы

                                    image

                                    Когда говорят, что устройство работает «как часы», то подразумевают, что это значит очень стабильно и надежно. Все мы мечтаем, чтобы с нашими «винчестерами» ничего плохого не случалось, но они любят отказывать самым непредсказуемым образом. Один такой свой диск я переделал, так что он теперь буквально работает как часы. Идея сделать устройство посетила после посещения выставок, где видел похожие рекламные девайсы. Мозг сверлила назойливая мысль — «неужели не смогу»?

                                    Читать дальше →
                                  • Фокус с HeadScript (сборка в один файл)

                                      Если сделать так:
                                      <?php $this->headScript()->appendFile('/js/my1.js');?>
                                      <?php $this->headScript()->appendFile('/js/my2.js');?>
                                      <?php $this->headScript()->captureStart() ?>
                                        var action = '<?php echo $this->baseUrl ?>';
                                      <?php $this->headScript()->captureEnd() ?>

                                      <?php echo $this->headScript(); ?>
                                      <?php echo $this->magicHeadScript(); ?>


                                      то вместо чего-то типа такого:
                                      <script type="text/javascript" src="/js/my1.js"></script>
                                      <script type="text/javascript" src="/js/my2.js"></script>
                                      <script type="text/javascript">
                                        var action = '/123';
                                      </script>

                                      получим на выходе:
                                      <script type="text/javascript" src="/cache/js/1b1004a203..._compressed.js"></script>

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