• Rust 1.5: Cargo с блэкджеком

      Под новогодние праздники был выпущен Rust 1.5. Так как близится релиз 1.6, хочу наверстать упущенное, и рассказать о том, что появилось в последней стабильной версии. Существенные изменения затронули Cargo!
      Читать дальше →
    • Выпущен Rust 1.4

        Честно по графику встречаем Rust 1.4. Релиз вобрал в себя 1200 патчей с момента последнего релиза. Основное внимание уделили стабилизации языка, а это уже серьёзный аргумент, в пользу того, что язык приобрёл понятные формы, синтаксис и стандартную библиотеку.
        Читать дальше →
      • Rust попал в индекс TIOBE

          Октябрьский индекс TIOBE обновил положение Rust в «пищевой цепочке». Язык занял почётное 49-е место войдя в 50-ку популярных языков потеснив Closure. Для сравнения в 50-ку не попадают весьма интересные: Common Lisp, Julia, Go.
          Читать дальше →
        • Обработка ошибок в стиле panic/defer на Python

            Обработка ошибок в Go построена не на закостенелом механизме исключений, а на новом интересном механизме отложенных обработчиков. В качестве интересного исследования я реализовал такую обработку ошибок на Python. Кому интересно, заходите.

            Читать дальше →
            • +18
            • 7.4k
            • 7
          • Взаимодействие интерпретаторов Python-IronPython-Jython

              Возникла необходимость в решении такой задачи: как обмениваться данными между разными интерпретаторами Python?! Отыскал несколько решений, но хочу рассказать об одном, на мой взгляд, самом удобном.
              Читать дальше →
            • Ninja IDE – открытая среда разработки для Python


                Оказывается, существует «ещё одна IDE» питоническая IDE: написана на Python (с использованием Qt) для Python, распространяемая по GPL. Удивительно, что не все разработчики знают о её существовании (и сам не знал), хотя проект активно зреет уже 2 года и сделано много интересного. Встречайте: Ninja IDE.
                Читать дальше →
              • Делаем standalone exe на IronPython

                  Иногда требуется написать маленькую программу, которая будет распространяться в виде исполняемого файла, и при этом не хочется, чтобы с программой ещё было море файлов. Один exe-шник и всё, да при этом хочется, чтобы его написание не занимало много времени (какой-нибудь лёгкий язык).
                  CPython в комплекте с py2exe или cx_Freeze не даёт требуемого результата: много файлов и большой размер программы, хотя и работает очень быстро. Хорошее решение смог получить в IronPython с помощью встроенного компилятора pyc. Даже IDE не потребовалась. Подробности под катом.
                  Читать дальше →
                • Разворачиваем cron в Windows

                    Стандартный планировщик Windows штука мощная, но столкнулся с проблемой, которая не позволила мне легко им пользоваться в «домашнем» выпуске Windows. Пришлось установить в систему настоящий cron. Ни капли не пожалел!
                    Как к этому пришёл, и что из этого поучилось под катом.
                    Читать дальше →
                  • Валидация в JavaScript с помощью Valid8

                    Часто приходится «насыщать» интерфейсы с помощью JavaScript. В основном работаю через jQuery, всё нравится, но одна беда – валидация. Постоянно приходится изобретать «велосипед», искать в сети обрывки кода; а ведь хочется написать пару строчек без углубления в детали. Радость не заставила себя ждать: нашёл библиотеку Valid8 (произносится как validate), и, наконец, решил проблему написания кода валидации.

                    Как пользоваться


                    Пользоваться библиотекой оказалось очень просто, чего не скажешь о склеивании jQuery «обрезков» из интернета. Чтобы подключить библиотеку, нужно зайти сюда и нажать заветный Download. Скачается архив, в котором особый интерес представляет файл jquery.valid8.js, его копируем в папку с js файлам нашего проекта и подключаем библиотеку в html:
                    <script src="/js/jquery-1.6.3.js" type="text/javascript" charset="utf-8"></script>
                    <script src="/js/jquery.valid8.js" type="text/javascript" charset="utf-8"></script>
                    

                    Допустим у нас есть форма:
                    <form><ul>
                    <li><input type="text" id="inputSome" /></li>
                    </ul></form>
                    

                    Добавляем валидацию (по умолчанию только проверка обязательности заполения), передавая в качестве параметра строку с сообщением об ошибке. Работаем в стиле jQuery:
                    $('#inputSome').valid8("Заполни это поле!");
                    

                    После того как поле получит фокус и вы из него выйдете не заполнив, объемлющий тег (в нашем случае li) получит класс стиля error.
                    Для визуализации ошибок добавим CSS в head нашего документа:
                    <style>
                    .error input { background:pink; }
                    </style>
                    

                    Валидация готова. Все.

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