• Почему не нужно использовать RJS

      У jQuery есть встроенная фича — если сервер ответит с content-type=text/javascript библиотека выполнит ответ автоматически.

      jQuery.ajaxSetup({
      	accepts: {
      		script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
      	},
      	contents: {
      		script: /(?:java|ecma)script/
      	},
      	converters: {
      		"text script": function( text ) {
      			jQuery.globalEval( text );
      			return text;
      		}
      	}
      }); 
      
      


      Поэтому в рельсах довольно распространена тактика «ответь строчкой Javascriptа вместо правильного JSON, который придется обрабатывать».

      Читать дальше →
    • Оптимизация беспроводного подключения или iwconfig может всё

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


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

      Пожалуйста, при чтении данного руководства держите под рукой открытую справку (страничку man) по iwconfig. Я опишу только одиночные примеры различных команд. Справка вам даст намного больше детализированной информации относительно того, как оптимально всё настроить.

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

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


        Александр Круглов — Ruby — Эту книгу можно использовать как справочник и как отдельный учебник по Ruby. Для изучающих Rails считаю исчерпывающим руководством по языку. Версия языка изучаемая в этой книге — 2.0.0p247.

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

        Читать дальше →
      • История о двух мостах

        • Translation


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

        «Мы построили его через ущелье, на дне которого протекала река», — рассказывал он своему другу. «Оно было широким и глубоким. Мы потратили два года на одно только изучение рельефа, выбор архитектуры и материалов. Мы наняли лучших инженеров и спроектировали этот мост, на что ушло ещё пять лет. Мы заключили договор с самой большой строительной фирмой на изготовление опор, конструкций и постройку дорог, соединяющих будущий мост с близлежащими магистралями. Десятки людей погибли при постройке моста. Наш мост был многоуровневым — под основной трассой могли ходить поезда, и ещё у нас были отдельные дорожки для велосипедистов. Этот мост олицетворяет значительную часть моей жизни».
        Читать дальше →
      • Linux для профессионалов: как подготовить макет к печати в типографии

        • Tutorial

        Небольшая преамбула


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

        Я намеренно не хочу затрагивать такие комплексные аспекты, как редактирование изображений и подготовка трехмерных визуализаций в Blender. Так же я не ставлю задачу обучить читателя пользоваться профессиональным инструментарием. Для этого есть документация и масса пользовательских ресурсов. Цели настоящей серии я бы очертил так:

        • Устранить предвзятое мнение относительно невозможности использования *nix систем для профессиональной деятельности отличной от работы программиста или администратора сети;
        • Показать, что за счет модульности архитектуры *nix систем и использования программного обеспечения с открытым исходным кодом, следующего стандартам POSIX, многие операции, на которые в привычном рабочем окружении я ранее тратил часы а то и дни, могут весьма просто автоматизироваться, либо решатся за считанные минуты;
        • Поделиться опытом и показать, какой инструментарий выбирают специалисты (в частности, какой выбрал я в процессе поисков) и какие решения могут быть наиболее приемлемы для тех или иных задач.


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

        Буклеты: пражский электронный GPS путеводитель и Interplay Medium

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

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

        История тяжелого проекта: немного о бюрократии, инфраструктуре и процессе разработки ПО


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

        Заказчик — довольно крупный инвестиционный банк. Число конечных пользователей: более 10 тыс.

        Команда проекта
        • более 200 разработчиков (из них 31 тим лид, 7 мастер тимлидов)
        • 3 архитектора, один из них главный
        • 19 тестировщиков (1 лид, 2 на нагрузочных испытаниях, остальные на функциональном тестировании)
        • 5 системных администраторов, в зоне ответственности которых управление СУБД и выше. Администрирование ОС и аппаратной части в зоне ответственности специальной HW team
        • переменное число (от 2 до 16) аналитиков, работающих на part time
        • 12 технических писателей и переводчиков
        • 3 руководителя проекта, постоянно руководит один — второй и третий на подмене во время отпуска, болезни или выступают в качестве ассистента руководителя проекта когда активны и доступны.

        Читать дальше →
      • Создание превью изображений на клиенте: борьба с прожорливыми браузерами

          Всем привет! Сегодня задача у нас следующая: необходимо создать интерфейс для загрузки картинок, который бы генерировал перед загрузкой превьюшки небольшого формата. На данный момент HTML5 вовсю шествует по планете, и, казалось бы, как это реализовать должно быть предельно ясно. Есть несколько русскоязычных статей на эту тему (вот, например). Но тут есть одно но. В рассматриваемом там подходе не уделено никакого внимания расходу памяти браузером. А расход может доходить до гигантских размеров. Разумеется, если загружать одновременно не более 5-10 картинок небольшого формата, то все остается в пределах нормы; но наш интерфейс должен позволять загружать сразу много изображений формата не меньше, чем у современных фотоаппаратов-мыльниц. И вот тогда-то свободная память начинает таять на глазах.
          Постараемся вернуть украденную память
        • Домашний ЧПУ-фрезер как альтернатива 3D принтеру, часть первая — выбор станка

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

          Звучит удивительно, да? Как-то само слово станок в народе ассоциируется с производством, с отдельными помещениями и специально обученным персоналом. В действительности, существует большой класс ЧПУ-станков, рассчитанных на настольное использование в офисе и на малых производствах, а при желании — и дома. При этом цена маленьких ЧПУ-фрезеров приближается (чтобы не сказать равна) к реальной цене 3D-принтеров.

          Жизнь сложилась так, что последний год с гаком я занимаюсь изготовлением литьевых форм для полиуретановых изделий на ЧПУ-фрезере. Поскольку до этого 10 лет оттрубил в IT ритейле, а образование не имеет никакого отношения ни к инжинирингу, ни к ЧПУ, осваивать технологии пришлось с нуля. За прошедший год я подрос с должности оператора-фрезеровщика до инженера-конструктора, а затем и до замдиректора по технологиям, моими стараниями ЧПУ-парк предприятия вырос с одинокого старенького роланда до 5 разнокалиберных станков. В связи с чем еще свеж и актуален опыт выбора, покупки, пусконаладки, тюнинга, эксплуатации и ремонта различных ЧПУ-станков.

          И вот — решил поделиться опытом с сообществом. Я осознаю сам, и прошу принимать во внимание читателей, что я — самоучка без базового инженерного образования, все нижеизложенное основано исключительно на личном опыте.
          Читать дальше →
        • Анимация SVG-элемента path

          • Tutorial
          Думаю многие видели обзоры игровых консолей нового поколения от Polygon (Vox Media). Это те, где консоли отрисовывались в стиле blueprint'ов:

          PlayStation 4

          Обзоры выглядели круто, довольно необычно и ново. О том как реализована основная фишка обзоров — SVG анимация, как сделать нечто подобное самому, и какие ещё «секретные» возможности скрывает старый добрый SVG в плане анимации элемента path — можно узнать под катом.
          Читать дальше →
        • Все технологии туннелирования IPv6 понятным языком

            Ура-ура, появился хаб IPv6!
            В этой статье я хотел бы рассмотреть все актуальные способы туннелирования IPv6 через готовую IPv4-инфраструктуру, описанные в RFC 7059. Один из немногих RFC, написанных понятным человеческим языком, кстати.
            Вы все еще сомневаетесь, нужен ли вам IPv6?
            • У всех устройств белый IP. Никаких NAT, никаких пробросов портов
            • Выше скорость скачивания торрентов за счет пиров, имеющих IPv6-адрес, но с «серым» IPv4.
            • В некоторых случаях, выше скорость доступа к сайтам (YouTube через IPv6 не тормозит по вечерам)
            • Доступ к сайтам, заблокированным в РФ, имеющим IPv6-адрес (nnm-club, например)
            Но это еще не все. Представьте ситуацию, когда у вас сломался DHCP-сервер, а на компьютер в этой сети нужно побыстрее бы зайти. Он не получает IP-адрес, вы не можете на него зайти. Беда. Однако, если у вас был просто включен IPv6 — даже не настроен — то вы можете просто пропинговать магический адрес ff02::1, получить ответ от этого компьютера (т.к. у него в любом случае будет link-local IPv6-адрес!) и зайти на него.

            Ну да ладно, перейдем к туннелированию.

            6in4
            Один из самых старых способов туннелирования, придуманный аж в 1996 году, и до сих пор очень популярный. Такие крупные туннель-брокеры, как Hurricane Electric, gogo6 и SIXXS используют его. Использует протокол 41 (не путайте с портом!) и не работает через NAT. Поддерживается всеми современными ОС из коробки.
            Читать дальше →
          • Дюжина дизайнерских косяков



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

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

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



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



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





                20 основных причин провала старапов по версии ToWave


                Читать дальше →
              • Как и зачем я решил начать собственное дело

                  Салют, Хабр!
                  Недавно я уволился с довольно завидной должности (главного архитектора) в довольно неплохой компании (Acronis) и с непоколебимым решением в мозгу больше не работать по найму переехал из Москвы обратно в Ереван, откуда семь лет назад понаехал в Златоглаво-Нерезиновую. Учитывая необычность произошедшего и часто задаваемый вопрос «но почему?!», я решил разобраться в собственных мыслях и озвучить их вслух для себя самого и тех, кто может почерпнуть в моих размышлениях что-то для себя полезное. Короче говоря, это рассказ о том, почему я оставил высокооплачиваемую перспективную работу в международной компании ради сомнительной перспективы начать собственное дело, и как я собираюсь дальше жить.
                  Читать дальше →
                • Легкая печать с мобильных устройств или AirPrint без AirPrint



                  Как оказалась, далеко не все мои знакомые пользующие планшеты и смартфоны не первый год, не знают как сбросить на почту страницу из Safari, не говоря уж от том как её распечатать . Тоже самое можно сказать и про владельцев Android. — этим значком мало кто пользуется.
                  Хочу поделиться с хабраобществом опытом расшаривания домашнего принтера для мобильных устройств. Кому интересно прошу подкат.
                  Читать дальше →
                  • +6
                  • 43.9k
                  • 6
                • Такие авторы на ТВ нужны: пример Вернера Херцога

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

                    Однако, не всё потеряно. Как когда-то визионер по имени Кристофер Нолан дал новую жизнь «кино про супергероев», теперь другой визионер может спасти образовательное ТВ. Его зовут Вернер Херцог.



                    Этот человек снимает очень необычные и интересные документальные фильмы на самые разные темы. Вот, например, «Там, где мечтают зеленые муравьи» — о конфликте австралийского племени и корпорации, которая добывает уран на месте древнего святилища (это было задолго до «Аватара» Джеймса Камерона). А вот «Земля тишины и темноты» о жизни слепых и глухих в Баварии. «Баллада о маленьком солдате» о гражданской войне в Никарагуа, содержащий уникальные интервью с 12-летними партизанами. «Гашербум – сияющая гора» об альпинисте, который решил покорить все вершины в мире. «Пастухи солнца» о племени кочевников Сахары. «Эхо темной империи» об императора-людоеде Бокассе. «Уроки темноты» о катастрофе на нефтяном месторождении, фильм почти без диалогов. «Фата Моргана» о феномене оптических иллюзий в пустыне. «Счастливые люди: год в тайге» о жизни российского села Бахта (можно подробнее прочитать здесь). «В бездну» — расследование тройного убийства в Техасе. «Встречи на краю света» о людях, сбежавших от своей прошлой жизни на Антарктиду. «Белый бриллиант» о постройке первого гибрида корабля и воздушного шара (и тестовом полёте по Южной Америке – это было до мультика «Вверх»). «Человек гризли» об исследователе, жившем среди медведей (это было до «Человека среди волков» Шона Эллиса). «Пещера забытых снов» о рисунках неандертальцев, снятая в формате 3D.
                    Читать дальше →
                  • Sensu — фреймворк для мониторинга

                    • Tutorial


                    Немного истории

                    В 2011 году в DevOps-среде возникло движение, объединившееся под хештегом #monitoringsucks, и критиковавшее существующие системы мониторинга за отсутствие гибкости. Что именно их не устраивало — прекрасно иллюстрирует эта презентация.
                    Если вкратце — хочется людям некоего стандарта API для взаимодействия между компонентами мониторинга, ну и появления самих этих компонент, чтоб из них строить гибкий и умный мониторинг.

                    Итогом этой волны недовольства стали массовые обсуждения проблем и привлечение внимания к интересным утилитам типа Sensu и Riemann.

                    В 2013 году хештег в сообществе сменился — теперь это #monitoringlove. Произошло это благодаря развитию opensource-утилит для мониторинга.

                    Из новых утилит наибольший интерес представляет Sensu. Riemann я не стал всерьез рассматривать, поскольку на данный момент у него нет никаких средств для обеспечения отказоустойчивости, да и сама идея писать конфиг на Clojure мне не сильно нравится.

                    Именно о Sensu я и расскажу в этой статье, опишу базовые принципы работы и приведу пример решения типичной задачи мониторинга.
                    Читать дальше →
                  • Антивирусное сканирование по доступу на Samba

                    Доброго времени суток, уважаемые пользователи Хабра.

                    После очередной вспышки вирусной активности в сетевой папке нашей организации я задумался об ее антивирусной защите. Речь идет о сетевой папке, за которую отвечает Samba, работающая на Debian Wheezy.

                    Обратившись в гугл за информацией, я нашел 2 актуальных на текущий момент способа:
                    Читать дальше →
                    • +19
                    • 11.6k
                    • 3
                  • Общество телефонных зомби

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

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

                    Не поймите меня неправильно, технологии — это великая сила, которая помогла нам достичь удивительных высот (мы отправили людей на е***ую луну). Но это не мешает мне думать, что наши недавние изобретения скорее снизили качество нашей жизни, чем улучшили. Мы превратились в общество телефонных зомби, склонивших головы над светящимися экранами в бесконечном поглощении бесконечных объемов бесполезной информации.
                    Читать дальше →
                  • Извлекаем золото из старой электроники



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

                      Инженер и химик Джозеф Мурчинсон (Josehf Murchison) опубликовал на сайте Instructables пошаговую инструкцию, как выплавлять золото из старых электронных приборов, которые вы собирались выбросить на свалку: старые ноутбуки, телефоны, камеры, принтеры, сканеры и прочее ненужное барахло.
                      Читать дальше →
                    • Танцующий Бендер на CSS3

                        Хабр, я понимаю, что сегодня еще далеко не пятница — но увиденное при себе держать нет сил.

                        Танцующий Бендер Родригес на чистом CSS3

                        image

                        Создан или вручную, или при помощи Sencha Animator.

                        Для всех, кому понравится: вот более сложные примеры того, что может быть сделано при помощи CSS3 (и рассказ о них с концеренции CSSConf.eu).