• Как бесплатно получить Micro аккаунт на GitHub студенту в России



      GitHub — популярный сервис который позволяет осуществлять «социальную разработку», другими словами предоставляет веб-оболочку для Git и предоставляет бесплатный хостинг для вашего кода.

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

      О том как получить возможность создавать приватные репозитории мы и поговорим.
      Читать дальше →
    • NodeConf EU 2013 — впечатления

        Nodeconf.eu в этом году проходила с 9 по 11 сентября, в городке Waterford, на юге Ирландии. Это одна из немногих конференций которая проходит в Европе и полностью посвящена Node.JS. Презентации проходили в центре города, а практические занятия закрепляющие выступления проводились на острове скромно названном (на время проведения мероприятия) Nodeland. Всего участвовало 140 человек. В этом посте я собрал материалы с конференции, а также свои впечатления.

        Читать дальше →
      • RESTful API на Node.js + MongoDB

        Я, будучи разработчиком мобильных приложений, часто нуждаюсь в backend-сервисах для хранения пользовательских данных, авторизации и прочего. Конечно, для подобных задач можно использовать BaaS (Parse, Backendless, etc…). Но свое решение — это всегда более удобно и практично.

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

        В данной статье будет рассмотрено построение REST API для мобильного приложения на Node.js с использованием фреймворка Express.js и модуля Mongoose.js для работы с MongoDB. Для контроля доступа прибегнем к технологии OAuth 2.0 с помощью модулей OAuth2orize и Passport.js.

        Пишу с позиции абсолютного новичка. Рад любым отзывам и поправкам по коду и логике!

        Содержание

        1. Node.js + Express.js, простой web-сервер
        2. Error handling
        3. RESTful API endpoints, CRUD
        4. MongoDB & Mongoose.js
        5. Access control — OAuth 2.0, Passport.js

        Читать дальше →
      • Разбор регулярных выражений



          Хочу просто поделиться недавно найденным сервисом для работы с регулярными выражениями. Да, это еще один сервис. Но у него есть особенность — он позволяет не только составлять регулярные выражения, но и помогает разбирать уже написанные — эдакий regexp-декомпилятор.
          Сервис называется Regex101.

          Читать дальше →
        • Набор регулярных выражений для MarkDown

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

          Недавно столкнулся с тем, что в новом проекте надо было сделать подсветку синтаксиса для языка разметки MarkDown. В последнее время он достаточно популярен в разных местах. Долго гуглил, в результате пришлось все писать самому и долго тестировать чтобы все работало правильно.
          Под катом набор регулярных выражений, которые ищут основные элементы разметки MarkDown в варианте для Objective-c.
          Читать дальше →
        • Подробно о Xamarin

          Вы неплохо владеете языком C# и платформой .NET в целом? Вам надоело стоять в стороне и смотреть, как кто-то другой пишет крутые мобильные приложения вместо вас? У меня есть для вас кое-что интересное! То, что поможет вам изменить сложившуюся ситуацию и позволит писать отличные мобильные приложения, не требуя отдельного изучения Objective-C и Java. Я расскажу вам о продукте Xamarin. Подробно и правдиво.

          Что это?



          Xamarin — это фреймворк для кроссплатформенной разработки мобильных приложений (iOS, Android, Windows Phone) с использованием языка C#. Идея очень простая. Вы пишете код на своем любимом языке, с применением всех привычных для вас языковых фич типо LINQ, лямбда-выражений, Generic`ов и async`ов. При этом вы имеете полный доступ ко всем возможностям SDK платформы и родному механизму создания UI, получая на выходе приложение, которое, строго говоря, ничем не отличается от нативных и (по крайней мере по заверениям) не уступает им в производительности.

          Фреймворк состоит из нескольких основных частей:
          Читать дальше
        • Хотите создать свое мобильное приложение?

            Disclaimer:
            Данная статья представляет собой вольный художественный пересказ-перевод вступления книги "App Savvy
            Turning ideas into ipad and iphone apps customers really want
            "

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

            Оглавление
            Введение
            Стратегия
            Глава 1: Оцениваем идею вашего мобильного приложения
            Глава 2: Что должно быть в вашем приложении?
            Глава 3: От идеи к концепту

            Разработка
            Глава 4: Поиск команды: вам нужна помощь
            Глава 5: Получаем рабочее приложение
            Глава 6: Улучшаем приложение перед тем, как добавить его в App Store

            Запуск
            Глава 7: Готовимся к загрузке приложения в App Store
            Глава 8: Строим нашу маркетинговую стратегию
            Глава 9: Оцениваем успех и обдумываем будущие разработки


            Вероятно, как и многие, вы тоже очарованы ошеломительным успехом смартфонов и планшетов – этих умных гаджетов, работающих на операционных системах от Apple, Google и Microsoft, которые сейчас есть фактически у каждого. Во многом успех этих устройств обусловлен магазинами приложений – App Store в случае iOS, Google Play на Android и Marketplace на Windows Phone, которые открывают перед пользователями огромное количество возможностей, которое было недоступно владельцам классических мобильных телефонов.
            Читать дальше →
          • Подборка полезного для любителей Twitter Bootstrap

              В подборке инструменты, плагины и другие полезности, облегчающие работу с Twitter Bootstrap. Предыдущая подборка.

              Инструменты




              Bootstraptor — подборка большого количества бесплатных и премиум тем, в том числе Starter Kit, на основе Bootstrap.
              Читать дальше →
            • Yaxy — proxy-сервер для веб-разработчика

                Yaxy — proxy-сервер, подменяющий различные части HTTP-запросов и ответов на указанные в config-файле значения. Я не буду здесь описывать, как поставить, настроить и запустить сервер, это всё описано в readme репозитория. Здесь я опишу различные случаи, в которых Yaxy очень помогает, а то и вовсе незаменим.

                Под катом 9 примеров использования Yaxy
              • Не повторяйте моих ошибок на собеседовании

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

                Также рискну обрисовать пути решения проблем, состоящие в том, чтобы поменять то, что можно поменять (в основном — себя), а не то, чего изменить нельзя (скажем, рынок труда).

                Ошибка №1
                Соискатель получает столько приглашений на собеседование, что не в состоянии их обработать.
                Логичный вывод соискателя: «на рынке острый дефицит кадров, так что могу отсеивать компании как хочу, отфутболив тех, кто заикнется о коде на бумажке, сортировках или гномиках». Возможна и менее скромная вариация того же вывода: «раз меня все хотят, значит, я классный профессионал, могу всем диктовать свои условия». Звучит, вроде, логично, но абсолютно бесполезно.

                Я предлагаю взглянуть на корень ошибки (да-да, это ошибка). Если соискатель получает слишком много приглашений — значит, он неправильно составил резюме. Ведь именно резюме послужило причиной лавинообразного интереса.
                Читать дальше →
              • Silicone Skeleton — настроенный Silex


                  Если вы не один раз начинали новые проекты с использованием Silex, то вы знаете что каждый раз в начале нужно настроить его под себя: добавить провайдеры, переопределить некоторые сервисы, определить структуру каталогов, и т.д. Со временем у вас появляется базовый набор для Silex которые вы используете для создания нового проекта.
                  Но если у вас его нету, предлагаю вам ознакомиться с моим: Silicone Skeleton.
                  Читать дальше →
                • Полиморфизм без виртуальных функций

                  • Translation
                  В этой статье представлен паттерн, который может быть использован для обеспечения динамического связывания без использования виртуальных функций для вызова перегруженных методов для объектов неоднородного контейнера при его обходе.
                  Читать дальше →
                  • +19
                  • 31.3k
                  • 2
                • Отчёт со Всероссийского Открытого Чемпионата по программированию


                    Первый день: как видите, многие финалисты со своими ноутбуками

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

                    Кто и откуда приехал?


                    Участвовало 3500 программистов со всей России, из стран СНГ и совсем немного — из других стран. К первому туру было отобрано 2000 участников, ко второму — 400, а в финал в Москве вышло 50 человек. Уровень в этом году был явно выше чем в прошлом: либо сказались тренировки и то, что турнир набирает известность, либо то, что в игру включились гости из других стран. Приезжали участники финалов прошлых лет.

                    В финал попало 16 москвичей, 14 петербуржцев, по двое жителей Екатеринбурга, Нижнего Новгорода, Саратова, один участник приехал из Новосибирска. Также в финал вышли по трое из Беларуси, Польши, Украины и даже один человек из Японии. По правилам турнира мы оплачивали дорогу всем, кроме жителей Польши и Японии, а проживание оплатили каждому участнику.
                    Читать дальше →
                  • Разработка мобильных приложений: с чего начать



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

                      Читать дальше →
                    • Онлайн редактор для Bootstrap— LayoutIt

                        Twitter Bootstrap становится всё популярнее и популярнее, многие используют его в своих проектах, думаю еще больше людей используют для прототипирования интерфейсов. Я не исключение. И вот сегодня утром наткнулся на интересный сервис — LayoutIt. По сути LayoutIt — это онлайн редактор для создания интерфейсов с использованием Bootstrap. Редактор представляет собой Drag & Drop интерфейс.

                        Читать дальше →
                      • Symfony 2: Полезные библиотеки и бандлы

                          Уже около полугода для разработки веб-проектов используем Symfony 2. Накопился список полезных библиотек и бандлов, не входящих в состав symfony-standard, но значительно экономящих время и избавляющих от изобретения велосипеда.



                          Обзор больше теоретический и включает следующие разделы:
                          • Админгенераторы
                          • Пользователи
                          • Импорт/экспорт xls
                          • API и OAuth 2.0
                          • Меню/навигация
                          • Мультимедиа
                          • Формы
                          • Поиск
                          • Пагинация
                          • Файловая система
                          • HTTP клиент

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

                          Читать дальше →
                        • За что я ненавижу аутсорсинговое системное администрирование. Взгляд со стороны клиента

                            Пост гнева.


                            Чтобы мой пост гнева не был похож на выяснение отношений — я намеренно не буду называть аутсорсинговую компанию, которая нас обслуживает. Имена в тексте мной изменены. Я не стремлюсь очернить моих нынешних сисадминов. Этот пост — просто крик души, возможность немного спустить пар. И может для кого-то из сисадминов интересно посмотреть на проблему глазами озверевшего клиента.
                            А еще я хотел бы понять — аутсорс администрирование — это всегда так? Или мне элементарно не повезло? Или наоборот мне очень повезло, а у остальных еще хуже?
                            Читать дальше →
                          • Как сэкономить деньги в Amazon Web Services — выбор эффективной архитектуры

                              Всем привет!

                              Сегодня поговорим на тему как «профессионально сэкономить» деньги при использовании облачных сервисов Amazon Web Services при размещении веб-решений, адаптированных для России. Мы активно используем сервисы данного облачного провайдера для проектов компании почти 2 года и постоянно занимаемся оптимизацией расходов. Довольно странно, что важная тема оптимизации расходов на Amazon Web Services, очищенная от маркетингового булшита, как-то не особо представлена в сети. Постараюсь предметно поделиться опытом и обозначить явные выгоды и ошибки, которые следует учесть при проектировании веб-систем.

                              Читать дальше →
                            • DNS сервер BIND (теория)

                                Основная цель DNS — это отображение доменных имен в IP адреса и наоборот — IP в DNS. В статье я рассмотрю работу DNS сервера BIND (Berkeley Internet Name Domain, ранее: Berkeley Internet Name Daemon), как сАмого (не побоюсь этого слова) распространенного. BIND входит в состав любого дистрибутива UNIX. Основу BIND составляет демон named, который для своей работы использует порт UDP/53 и для некоторых запросов TCP/53.

                                Основные понятия Domain Name System


                                Исторически, до появления доменной системы имен роль инструмента разрешения символьных имен в IP выполнял файл /etc/hosts, который и в настоящее время играет далеко не последнюю роль в данном деле. Но с ростом количества хостов в глобальной сети, отслеживать и обслуживать базу имен на всех хостах стало нереально затруднительно. В результате придумали DNS, представляющую собой иерархическую, распределенную систему доменных зон. Давайте рассмотрим структуру Системы Доменных Имён на иллюстрации:
                                Читать дальше →