• Как стать React разработчиком в 2018 году

    • Перевод


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

    Адам Голаб, эксперт по React и JS, составил пошаговый учебный план, который поможет вам стать разработчиком с нуля либо укажет направление для дальнейшего повышения навыков в профессии.

    План Адама представляет собой список основных пунктов, которые вам нужно изучить самостоятельно. Мы добавили описание, а в некоторых сложных моментах указали ссылки на дополнительные справочные материалы, с помощью которых вы получите ответ на вопрос: «Что я должен узнать как React-разработчик?».
    Читать дальше →
  • Архитектура построения Single Page Application на основе AngularJS и Ruby on Rails

    Заинтересовавшись методологией построения SPA-приложений на Ruby on Rails, я пришел к некоторым идеям, которые реализуются теперь в каждом моем приложении и впоследствии даже были выделены в отдельный гем Oxymoron. На данный момент на Oxymoron написано более 20 достаточно крупных коммерческих рельсовых приложений. Хочу вынести гем на общественный суд. Поэтому дальнейшее свое повествование буду вести уже на его основе.

    Пример готового приложения.
    Читать дальше →
    • +13
    • 21,3k
    • 5
  • 7 смертных грехов программного проекта

    • Перевод

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

    Читать дальше
  • Скрипт управлениями доставками интернет-магазина


      Разбирая архивы наткнулся на свой скрипт трёхгодичной давности для управления окнами доставок интернет магазина. Скрипт называется The Maasdam Project в честь дырок от сыра.

      Зачем это?



      Любому интернет магазину приходится решать проблему планирования доставок и коммуникации с покупателем:
      • на какой день можно обеспечить доставку?
      • в какой временной интервал (окно) её можно сделать?
      • можно ли в это окно ещё засунуть один заказик или служба доставки лопнет?


      Для решения этой проблемы был написан прототип, который позволял разметить географические зоны доставки, создать расписание службы и дать покупателю понятный интерфейс для самостоятельного выбора удобного интервала.
      Читать дальше →
      • +7
      • 14,4k
      • 3
    • oDesk (Upwork). Мой опыт за полтора года

        Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
        image
        Читать дальше →
      • 6 лучших инструментов для создания отличного сайта на Joomla

        • Перевод
        image

        Разработчики, и те, кто ими не является, используют системы управления контентом для работы с сайтами. Этих систем довольно много, но особо популярны среди них три: WordPress, Drupal и Joomla.

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

        JSitemap


        Карта сайта – это список важных страниц, который помогает поисковикам вроде Google найти и проиндексировать важный контент. JSitemap – один из лучших генераторов карт для Joomla, который предлагает инновационный способ работы с картами сайта. По утверждениям создателей, это расширение на 400% увеличивает видимость сайта поисковиками.

        После установки JSitemap вам не придётся ждать момента, когда поисковик просмотрит весь ваш сайт – вместо этого вся информация сразу сможет отправиться в базы поисковиков.
        Читать дальше →
      • Матрица компетенций Ruby on Rails разработчика

          Как начинающему Rails разработчику понять, в какую сторону копать, чтобы как можно быстрее стать опытным программистом? Понятно, что нужно работать, работать и еще раз работать. Но кроме этого важен горизонт, который даст понять, в какую же сторону нужно идти по дороге к званию профессионала.

          Два месяца назад мы запустили оффлайн&онлайн курсы в Харькове по Ruby on Rails для начинающих RubyBursa. Из особенностей — половина занятий было в учебном классе, половина в формате вебинара. Мы поставили жесткие условия выполнения домашних заданий и за первое невыполнение участники получали желтую карточку, за второе — красное и выбывали с курсов. Такие «драконовские методы» позволили 35 из 40 участников дойти до конца со 100% выполнением всех домашних задач.

          Некоторые ученики в процессе учебы интересовались: «а что же дальше?». Наш преподаватель Оксана специально в виде ответа на этот вопрос подготовила пробную версию матрицы компетенции Ruby разработчика. Не претендуем на академичность и понимаем возможную спорность предложенной схемы.

          Определите сколько баллов у вас есть суммарно по всем направлениям и подведите итог в конце статьи:
          Читать дальше →
        • О том, как я написал простое приложение для Android/iOS

            Хочу сразу отметить, что это не статья от профессионала, скорее взгляд любителя на мобильную разработку, скажем так, «с нуля». Мое основное занятие — это создание сайтов. В данное время я работаю у провайдера интернета и занимаюсь поддержкой внутреннего биллинга/сайта и так далее (PHP и немного Perl), довольно скучное занятие, скажу я вам. В общем, я обычный провинциальный «программист».

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

            Придя на работу в один из серых скучных дней, я решился и написал в поиске Google «как сделать мобильное приложение». Это было очень наивно. Кажется, я даже попробовал задать вопрос на Toster, «с чего начать разработку под мобильные приложения», тогда я еще не понимал насколько глупым воспринимается этот вопрос профессионалами.
            Читать дальше →
          • Система уведомлений о событиях на сайте (на примере аудиоплеера ВКонтакте)

              Приветствую.

              Думаю, многие, кто имеет аккаунт ВКонтакте и слушает там музыку, замечали, что если на одной вкладке включить трек, а затем уже на другой включить второй, первый трек уйдет в паузу. Примерно то же самое происходит с различными уведомлениями (новое сообщение, ответ на комментарий/запись и т.д.) — отображается оно только в активной вкладке. Кому интересно как это работет и каким образом сделать подобное у себя на сайте, милости просим за хабракат.
              Читать дальше →
            • Must-know для iOS-разработчиков

                10 недель назад мы запустили проект для iOS-разработчиков под названием Digest MBLTdev. После первого выпуска количество подписчиков превысило 1 000 человек. Как это работает? Наши топовые разработчики Руслан Гуменный и Саша Черный изучают материалы в сети, тщательно отбирают ссылки, которые не должны остаться без внимания, и формируют из них пятничный выпуск. Далее выпуск отправляется всем подписчикам на указанный имейл или по Safari Push Notifications.

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


                Читать дальше
              • Создание универсального веб-приложения сайта Habrahabr.ru при помощи Web App Template

                • Tutorial

                Хабровчане, привет!

                В предыдущей статье мы с вами познакомились с шаблоном для создания универсальных веб-приложений – Web Application Template. Если кратко, то Web Application Template позволяет вам «превратить» сайт в приложение для Windows, Windows Phone или Android, добавив в него возможности интеграции с ОС и механизм распространения через магазин приложений.

                Сегодня мы рассмотрим практический пример: как при помощи Web Application Template быстро и просто создать веб-приложение для Windows и Windows Phone на основе сайта habrahabr.ru.
                Перейти к созданию приложения
                • +24
                • 40,6k
                • 2
              • Тонкости Rails 4 — Turbolinks

                • Перевод
                • Tutorial


                Гем под названием Turbolinks способен неплохо ускорить ваше приложение, используя JavaScript для обновления контента на странице. Он включен по умолчанию в Rails 4, но я покажу, как можно использовать его уже сейчас в программах, написанных на Rails 3. Также вы узнаете о некоторых подводных камнях.
                Читать дальше →
              • Аутентификация в Rails-приложениях с помощью Devise. Часть 1: базовая настройка

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

                Devise — это ruby-гем, предоставляющий возможности для аутентификации в rails-приложениях. Devise работает в связке с гемом Warden, который в свою очередь предоставляет сам механизм для аутентификации в rack-базированных ruby-приложениях. Основные особенности Devise описаны ниже:
                • основан на Rack;
                • является законченным MVC-решением, основанным на Rails;
                • разрешает вход в систему по нескольким моделям одновременно;
                • основан на модульности: использует только то, что вам действительно необходимо.

                Итак, приступим к установке и настройке Devise для вашего rails-приложения. Дальнейший процесс для удобочитаемости будет разбит на отдельные шаги.
                Читать дальше →
              • 7 золотых правил одного программиста

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

                  Компьютер всегда прав


                  Самая раздражающая ситуация в программировании — когда код верный, но не работает. “Да тут три строчки, блин, просто негде ошибиться! Наверное баг! Пойду потрачу три дня на изучение баг-репортов компилятора/интерпретатора/фреймворка...”. Возникает чувство, будто компьютер над вами издевается!

                  Тут главное помнить, что в этих трех строчках есть ошибка. Если код работает не верно — значит код написан не верно. Точка. Виноваты только вы. Универсальный совет — идите спать! Ну или хотя бы отвлекитесь на чашку чая. Когда, через некоторое время, вы вернетесь к коду, наверняка станет ясно, что тут лишний оператор отрицания, или перепутаны две переменные с похожими именами, или еще какая-нибудь мелочь, в которой мы никогда никому не признаемся.
                  Читать дальше →
                • TheRole 3. Авторизация для Ruby on Rails

                  • Tutorial
                  TheRole — гем для организации ролевого распределения на RoR сайте (с панелью управления)

                  TheRole

                  Gem Version Build Status 

                  tl;dr


                  Еще один (1001-ый) способ обеспечить разграничение прав в web-приложении. Концепт данного решения был довольно давно реализован на PHP, и позже был переписан на ruby. Ввиду простоты реализации описанный подход может быть применим в любом MVC фреймворке вроде Rails, Laravel и.т.д.

                  В тексте я попытался подробно раскрыть, не только техническую интеграцию решения в приложение, но и причины предлагаемой реализации.
                  Узнать больше о TheRole
                • 22 photoshop-плагина для фронтенд-разработчика

                  Предлагаю читателям «Хабрахабра» подборку 22 дополнений (скриптов) помощников, необходимых фронтенд-разработчику.

                  Hexy


                  Hexy

                  Печально выбирать слои в макете и каждый раз запускать палитру цветов только для того, чтобы получить шестнадцатиричное значение того или иного цвета. Hexy позволяет использовать инструмент «Пипетка»: нажмите на цвет объекта и скопируйте его непосредственно в буфер обмена.
                  Читать дальше →
                  • +22
                  • 68,3k
                  • 9
                • Как мы делаем бюджетные сайты

                  • Tutorial


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

                  Но комментарий пользователя m00t задел довольно чувствительную для меня струнку. Конфликт интересов бизнеса и интернет-агентств. Множество “мертвых” сайтов, живущих ровно до первого продления доменного имени. Такая ситуация заставляет меня грустить.

                  Поэтому в качестве вводной части выступают мои размышления о том, почему не всегда необходимо делать сайт на %framework_name%. Возможно мысли очевидные, возможно нет, но так тому и быть, без них пост будет не совсем полным. И да — то что подходит для нашего дальневосточного рынка, может не подходить для вашего.
                  Приступим.
                • 10 ошибок в Ruby / Ruby on Rails, которые легко исправить

                  • Перевод
                  Программисты делают ошибки в коде. Некоторые просто раздражают (ошибки, не программисты – прим. переводчика), другие могут быть действительно опасными для приложения.
                  Представляю вам свою подборку из 10 распространенных ошибок разработчиков Ruby/RoR и советов о том, как их избегать. Надеюсь, они помогут сократить вам время отладки кода.
                  Читать дальше →
                • 300 потрясающих бесплатных сервисов

                  • Перевод


                  Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



                  A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

                  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
                  • Bootswatch: Бесплатные темы для Bootstrap.
                  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
                  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
                  • Strikingly.com Domain: Конструктор веб-сайтов.
                  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
                  • Withoomph: Мгновенное создание логотипов (англ.).
                  • Hipster Logo Generator: Генератор хипстерских логотипов.
                  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
                  • Invoice to me: Бесплатный генератор счета.
                  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
                  • Slimvoice: Невероятно простой счет.

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