• Exploride — как превратить Lada в смарткар за $299



      «Дизельный» скандал с содержанием вредных веществ в выхлопных газах двигателей «Фольксвагена» многих заставил задуматься — если нас вводят в заблуждение на таком уровне, то за что, в конце концов, мы платим? При том, что все «инновации» — которые, как оказывается, не всегда таковыми являются — влетают нам в хорошую копеечку.
      Узнать больше
    • Common Lisp IDE


        Доброго времени суток, уважаемый читатель!
        Перед каждым новичком в мире языка программирования Common Lisp
        возникает проблема выбора среды разработки — Integrated Development Environment (далее, IDE).

        Существует большое количество IDE для Common Lisp. Перечислим некоторые, самые распространенные, из них:

        Для Знатоков
        Знатоки могут возразить относительно последних двух пунктов списка.
        Ведь, казалось бы, Lispbox = Emacs + Slime?!
        Но, если внимательно посмотреть на сайт Lispbox, то, под ссылками для скачивания пакета, Вы увидите:
        Last updated: February 6, 2011.

        В данной статье я подробно расскажу как установить и настроить кроссплатформенную среду разработки для Common Lisp, как скачивать и устанавливать дополнительные библиотеки при помощи quicklisp — менеджера пакетов Common Lisp. Будет много полезных ссылок на ресурсы и материалы по языку.
        Речь пойдет о связке GNU Emacs & Slime.
        Если Вас интересует Common Lisp, Вам нужна кроссплатформенная, мощная, интерактивная Common Lisp IDE с блэкджеком и дамами дебаггером и дизассемблером (внезапно!), то, прошу под кат…

        Читать дальше →
      • Как я использую PostCSS

        CSS-препроцессоры в своё время значительно облегчали работу по написанию CSS кода. Однако в некотором роде все они были несовершенны и имели значительные изъяны в работе. А потому на смену препроцессорам пришёл постпрепроцессор PostCSS.

        Это довольно таки мощный инструмент, облегчающий работу с CSS. Постпрепроцессор уже сегодня используется в таких крупных компаниях как Twitter и Google. Кроме того, по сообщениям разработчиков Bootstap, пятая версия CSS-фреймворка вероятнее всего также будет написана на PostCSS.
        Читать дальше →
      • Смена временных зон в Mac OS X Snow Leopard

        Введение


        В связи с отменой перехода на летнее/зимнее время посвящается.

        В Mac OS X настройки часовых поясов находятся в двух местах: /etc/localtime и /usr/share/icu/icudtXXX.dat.
        /etc/localtime, который является сиволической ссылкой на /usr/share/zoneinfo/[установленная time zone, например Europe/Moscow], задает настройки временных зон для консоли.
        Системные часы, приложения Mail и прочие берут настройки тайм-зон из /usr/share/icu/icudtXXX.dat.

        30 октября 2011г. у меня случилось следующее: в Terminal'е и различных консольных утилитах время правильное(localtime был заранее обновлен), а в Mail, системных часах и прочем отстает на час.

        Решение проблемы


        Читать дальше →
      • Бесплатные SSL-сертификаты на 2 года от WoSign

          Доброго времени суток, уважаемые товарищи Хабра.
          На написание статьи заметки, меня побудила статья: «Мигрируем на HTTPS».

          Напоминаю, что китайцы в лице компании WoSign до сих пор раздают бесплатно сертификаты и теперь не обязательно знать китайский язык для того, чтобы его получить. Метод по статье «Бесплатные SSL-сертификаты на 2 года с поддержкой до 100 доменов» на данный момент не работает и за сертификат китайцы хотят от ¥488.

          Читать дальше →
        • Сделай сам: MSc Computer Science на уровне топ американских университетов из дома

            Вступление


            Давно хотел написать статью про образование в Computer Science, но руки не доходили. Решил все-таки это наконец сделать. Итак, о чем пойдет речь? Речь о том, что из себя представляет диплом MSc Computer Science топовых университетов США (во всех подробностях, включая основные курсы, книги и проекты) и как ему соответствовать.

            Почему именно MSc? Это — некая развилка: с одной стороны после MSc — вы уже готовый к жизни инженер (да, речь идет о инженерной подготовке, как мне кажется это самое больное место в нашей системе образования), с другой — можно спокойно идти по пути PhD. Как известно, в PhD программу можно попасть и не особо умея программировать — особенно это касается теоретического Computer Science. С другой стороны найти работу программиста тоже дело не очень сложное, и часто не требует мощного образования. Но достигнув уровня MSc — вы получаете возможность разбираться как во всех новый идеях в Computer Science, так и возможность их воплотить в практику. То есть с одной стороны круто разобраться в каком-нибудь deep learning и сделать в нем что-то новое, а также взять и написать свою операционную систему (кто так сделал?). Причем вы не зажаты в рамки узкой специализации (если конечно продолжаете учиться). То есть вы теперь — универсальный солдат, готовый на все.

            Надеюсь что эта статья будет полезна:
            1. Студентам, которые хотят соответствовать высоким стандартам топ вузов США, или собирающиеся туда в аспирантуру по Computer Science
            2. Профессионалам, которые хотят закрыть «дыры» и пробелы
            3. Может кто-то из преподавателей возьмет на заметку для своих курсов.
            4. Студентам, аспирантам американских вузов — хотелось бы тоже получить фидбэк, особенно касается последних трендов в образовании

            Что же здесь будет написано? Минимум философии и общих мыслей: конкретная программа undergraduate и graduate курсов, конечно из дисциплин наиболее мне близких. Все курсы были лично прочувствованы на собственной шкуре, по этому и пишу. (Я пытался записаться на все интересные курсы, которые были, но мой основной упор — системное программирование, базы данных и искусственный интеллект. Отсюда конечно некий bias, но пытаюсь предложить более-менее универсальную программу).
            Читать дальше →
          • Анализ алгоритмов аудиоаналитики

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

              Осторожно: статья может долго грузиться — много картинок.
              Автор: Михаил Антоненко.
              Читать дальше →
            • Избавляемся от JavaScript в социальных кнопках (Facebook, VK, Twitter и др.)

              • Tutorial
              Как мы избавились от JavaScript-библиотек социальных сетей, ускорили скорость загрузки страниц и использовали RESTful API для “шаринга” и “лайков”.


              Читать дальше →
            • Оптимизируем страницу при помощи собственных социальных кнопок

              Здравствуйте,

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

              image

              В статье рассматриваются доступные, готовые для использования социальные кнопки, проблемы с которыми мы столкнулись при их использовании, и описан простой способ как сделать свои кнопки для нескольких популярных социальных сетей.
              Читать дальше →
            • Arduino за 1$



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

              Скажу за себя — мне Arduino нравится. Тем, что можно быстро что-нибудь работающее соорудить. По сути, мне не нравятся только цены. Ну, дорого же. Модуль на порядок дороже использованного в нем микроконтроллера. Такие размышления неоднократно подталкивали меня к тому, чтобы «соскочить», но потом я открывал Aliexpress и заказывал очередную порцию. Китайская версия Arduino Nano — 3-4$. Pro Mini (без USB) — 2-3$.

              Потом стало интересно — а где предел минимальной розничной (или микрооптовой) цены. Но так, чтобы можно было работать, а не искать хаки с целью сэкономить пару байт. Пара вопросов к всемирному разуму, кратчайшее изучение матчасти, решение: «Буду ковыряться с ATTiny, но чтобы с Arduino».
              Стоя и в гамаке
            • Юнит тесты на Си — нет ничего проще

              Прочитав статью «Тестирование встроенных систем» и комментарии к ней я был несколько поражен тем фактом, что многие хабровчане знакомы с книгой «Test Driven Development for Embedded C (Pragmatic Programmers)» и framework-ом Unity, но не используют весь арсенал средств, которые предлагают ребята из throwtheswitch.org.

              Хочу кратко поделится опытом использования этих самых средств.
              Читать дальше →
            • Cемантическое слияние JSON файлов в Git

              Операция слияния (merge), выполняемая стандартными средствами git, хорошо работает для текстовых файлов, содержащих исходные тексты программ. Но слияние текстовых файлов, содержащих жестко структурированные данные, в частности JSON — это большая головная боль.

              Для решения этой проблемы можно подключить к git'у отдельный инструмент слияния для JSON-файлов, который не работает построчно, а учитывает структуру JSON-объектов.

              Предлагаю использовать для этого скрипт на javascript, который анализирует сливаемые JSON-файлы и делает слияние на основании структуры и вложенности объектов JSON.
              Читать дальше →
            • «Never say never» или Работаем с таймзонами правильно

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

                TL;DR: Работа с таймзонами — это боль и унижение. Никогда не работайте с таймзонами!

                Итак, все кругом твердят вам, что при получении времени от пользователя нужно сразу же переводить его в UTC, работать со временем нужно только в UTC и хранить время тоже нужно строго в UTC. Совет, на первый взгляд, выглядит разумным, и следование ему делает вашу жизнь проще… Если только ваша программа не предполагает сложной работы с датами. Записать в базу данных дату и время регистрации пользователя на сайте? Сохранить время отправки сообщения или дату создания заказа в интернет-магазине? Вывести сообщение в лог с указанием даты-времени? Используйте UTC и всё будет в порядке, можете даже не читать эту статью дальше. Любое текущее время можно совершенно спокойно конвертировать в UTC и забыть о проблемах. Но что, если мы хотим работать с временем в будущем? Или в прошлом? Например, если мы пишем сервис календаря, или сервис для отложенной отправки сообщений?

                Читать дальше →
              • Продвинутый Gulp и Browserify: интересные трюки

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

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

                Поэтому я постарался убрать все упоминания проекта и повторно публикую (с доработками и правками) статью, которую по сути никто еще не видел. Если вы фанат grunt — почитайте хотя бы вторую часть: то, что вы не любите gulp, не значит, что вы не любите browserify.

                Краткое содержание:
                1. Простой способ обработки ошибок;
                2. Универсальная структура для хранения исходных файлов;
                3. Объединение нескольких потоков (например, скомпилированный coffee и js) в один;
                4. Создание потока из текста;
                5. создание собственных плагинов для Browserify;
                6. создание плагинов из плагинов Gulp для Browserify.

                Читать дальше →
              • Ещё одна метеостанция, пошаговая видеоинструкция

                • Tutorial
                Последнее время все более популярна стала тема метеостанций. Наверное создание собственной погодной станции является хорошей практикой в освоении ардуинки. Хочу внести свой небольшой вклад в это благое дело.
                Хочу представить Вам видео урок по работе с датчикам температуры, влажности, давления, и выводу этих данных на дисплей.Возможно эта информация кому — то поможет начать свой путь в мир микроконтроллеров.
                Если интересно - смотрим
              • Как продвигать игру в AppStore: делюсь опытом на примере Wordrive

                  Хочу поделиться опытом по продвижению своей новой игры для iPhone/iPad — Wordrive.

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

                  Итак, вот у вас готово приложение и оно появилось в AppStore. Первый поток людей на него направляется из iTunes/App Store, сам собой — за счет появления в «новинках». Рассчитывать на него нечего — он как пришел, так и уйдет через пару-тройку дней. За это время нужно делать все, чтобы о программе или игре стали писать в сети. Если программа за это время сможет собрать еще и интернет-аудиторию, то выйти в топы будет сильно проще. А чтобы ее собрать, к моменту запуска в App Store нужно уже много что сделать.

                  Читать дальше →
                • Удаленная работа на Бали (Индонезия)

                    Привет всем!



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

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

                    Как читать этот пост? Я знаю два типа читателей те что умеют читать и нет:

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

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

                    И вот еще что. Не смотря на сухое вступление, рассказ будет вестись в легкой манере непринужденного юмора с Евгением Ваганычам в почетной ложе, с большим количеством деепричастий, отступлений и коверканий русских слов самым извращенным образом. Если кого-то подобный вид изложения не устраивает по каким-либо причинам, советую пролистать текст дальше, не заходя за хаброкат и быть хеппи, что дорогой автор избавил Вас от мучительного чтения на этих строках. На самом деле, данный пост объединяет большое исследование вопроса путешествий в абсолютно незнакомую страну без каких-либо агентов горящих путевок ада с одной стороны, и ценный опыт, за который было заплачено много денег, которые ты, дорогой читатель 1й или 2й категории, сможешь легко сэкономить как в поездке на Бали, так и любую другую страну мира для удаленной работы. Если Вы готовы, откидывайтесь в кресле поудобнее, мы поехали.



                    Читать дальше →
                  • Как правильно покупать товары на Ebay

                      image
                      Тема Ebay в связи с его русификацией становится очень актуальной, поэтому решил поделиться с хабрасообществом несколькими советами из области как правильно покупать товары на Ebay, чтобы не нарватся на мошенников и сделать правильную покупку. Большая часть описанного основана на личном опыте.
                      Читаем далее
                    • Java вместо javascript (gwt+netbeans)

                        Когда я увидел gwt и gwt-ext, я подумал, что меня где-то обманули, когда не рассказали об этом раньше. Мучения с отладкой скриптов с использованием ExtJS были долгими, мы использовали Java как серверную платформу, вручную занимались сериазилацией/десереализацией серверных объектов, подгоняли блоки с помощью css и занимались многими другими вещами, отнимавшими кучу времени. Однако, можно все это оставить позади. Теперь можно рисовать красивые экстовые окошки кодом на Java (not js)! GWT — замечательная вещь. Она позволяет нам уйти от написания js-кода, потому что генерирует js-код самостоятельно; и программист может даже его не смотреть, потому что отлаживать его можно тоже в исходниках на Java!Далее я постараюсь рассказать, как настроить
                        gwt под netbeans.
                      • GWT + iBATIS

                          В серию Google Web Toolkit:
                          ibatis
                          Способы работы GWT-приложения с базой данных на сервере при помощи iBATIS. Этот материал будет полезен тем, кто занимается разработкой GWT-приложений как пользовательских интерфейсов для баз данных. Pассмотрим »