• JSON vs. HTML (XML?). Что использовать в AJAX запросе?

    JSON это данные в голом виде, не привязанные к текущей реализации на фронтенде. Отдавая разметку HTML с сервера разработчик привязывает серверную часть к определенному виду на фронтенде. Если меняется дизайн, нужно менять весь бэкенд. С JSON в этом случае будет проще работать. Логику на сервере в этом случае можно вообще не менять, а изменить только логику на фронтенде.
    Во-вторых JSON-данные меньше размером, чем HTML-разметка, что снижает нагрузку на сервер и трафик.
    В-третьих генерация HTML на бэкенде это дополнительная нагрузка на сервер. Лучше нагрузить клиент (браузер), особенно если речь идет о высоконагруженном сервисе (high load).
    В третьих отдавая данные в виде JSON, можно сократить количество запросов к серверу, за счет объединения данных для разных участков html в одном JSON. А вот с HTML-разметкой такое не прокатит.
    P.S.: Отдавать разметку в ajax-запросе уже давно считается дурным тоном.
    Ответ написан
    1 комментарий
  • Когда изучать npm, grunt, bower, git и т.д?

    @flor_master
    Могу верстать, могу не верстать.
    На самом деле все очень просто.
    NPM - это пакетный менеджер который идет вместе с node.js, С помошью него можно устанавливать все что вы перечислили выше и другие модули, программы.

    Gulp, Grunt - это консольные утилиты. Они взаимозаменяемы. Они делают рутинную работу за тебя: компилируют Less Sass, склеивают скрипты, минифицируют скрипты, стили, делают спрайты, оптимизируют картинки и даже поднимают свой простенький вебсервер и LiveReload.

    Gulp или Grunt - Дело вкуса. Мне понравился больше Gulp. Он быстрее.

    Git - Система контроля версий твоего кода. Она позволяет организовать совместную работу нескольких разработчиков над ним проектом.

    Bower - просто утилита, которая быстро тебе скачивает необходимые библиотеки и из хависимости. Что бы ты не лазил по сайтам разработчиков. Например тебе надо установить jquery - ты просто в консоли пишешь Bower install jquery и тебе скачивается Jquery.

    Я считаю что Git в современной работе просто необходим как воздух.
    Gulp или Grunt и Bower сильно облегчили мне жизнь.

    Думаю что для устроиства на работу ключевым знанием будет Git. а потом уже все остальное.

    Gulp или Grunt и Bower - очень легкие программы для первичного использования. Их Можно попробовать и решить нужны ли они тебе или нет - за очень короткий промежуток времени.
    Ответ написан
    1 комментарий
  • Когда изучать npm, grunt, bower, git и т.д?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    npm/bower упрощают установку сторонних библиотек. Чтобы ходить по сайтам и скачивать jQuery, jQueryUI, Bootstrap и т.д., все это ставится одной командой.

    grunt/gulp -- таскраннеры, позволяют организовать хитрую компиляцию/склейку файлов/минификацию и прочее, что может понадобиться фронтендеру. Во-первых, это не только LESS, но еще миллион всяких вещей, во-вторых, это настраивается на проект и один раз (то есть не надо каждому разрабу ставить WinLESS и настраивать его).

    git/mercurial/svn -- система контроля версий. В команде без этого никуда (и никто за вас не будет коммитить код), но и при одиночной разработке есть профит.
    Ответ написан
    Комментировать
  • Как удалить не используемые стили из CSS файла?

    @sergikzv
    Для gulp и grunt есть плагин uncss вроде, автоматом при сборке будет чистить.
    Ответ написан
    Комментировать
  • Где найти сложные макеты для верстки?

    Symphony
    @Symphony Куратор тега CSS
    Где найти сложные макеты для верстки?

    Макеты начинающих дизайнеров посмотрите
    Ответ написан
    4 комментария
  • На повестку дня: Ruby On Rails или Node.js или php или Python?

    @Shetani
    Программисты для своего проекта выберут то, на чем они пишут. И каждый посоветует свой фреймворк.
    P.S. Сам за руби, тут как раз вебинар в воскресенье будет, может что-то для себя почерпнете.
    Ответ написан
    1 комментарий
  • Как заставить работать социальные share-кнопки Pluso с turbolinks Rails?

    if (window.pluso)if (typeof window.pluso.start == "function") return;

    тут же ясно видно, что если window.pluso есть - то ниче не делать.
    Могу предложить переписать код так, чтобы в page:receive очищать все записанные в window элементы pluso:
    $(document).on("page:receive", function(){
      window.pluso = null;
      window.ifpluso = null;
    });


    Отказ от турболинкс - это явно не решение данного вопроса, так как в загаловке указано "с turbolinks"
    Ответ написан
    1 комментарий
  • Как заставить работать социальные share-кнопки Pluso с turbolinks Rails?

    viktorvsk
    @viktorvsk
    Послать в жопу турболинкс, очевидно же
    чего вы им хотите добиться?
    Ответ написан
    3 комментария
  • В чем суть интерфейсов в программировании?

    ptchol
    @ptchol
    Linux system administrator
    Интерфейс это фактически регламент взаимодействия.
    Класс который реализует интерфейс обязан реализовывать все его методы.
    В интерфейсе вы описываете лишь сигнатуры методов, то есть вы указываете что класс наследник должен уметь делать, но как он будет это делать, тот решает сам.
    Таким образом вы уверенны, что если класс реализует тот или иной интерфейс, все объекты данного класса имеют определенный набор методов.
    ООП - мир абстракций :) Впустите его в себя :) Интерфейсы это еше одна абстракция позволяющая отделить описание от реалзиации.

    "Придумать класс с правильным именем" - так вы не сможете заставить "наследников" реализовывать функционал.

    Интерфейсы располагаются на уровень выше классов, если можно так выразиться. Они неявно "объединяют" классы схожие по каким то общим признаком, и которые обязаны (по логике вашего приложения) реализовывать те или иные методы.

    interface Instruments {
        final static String key = "До мажор";
        public void play();
    }
    class Drum implements Instruments {
        public void play() {
            System.out.println("бум бац бац бум бац бац");
        }
    }
    class Guitar implements Instruments {
        public void play() {
            System.out.println("до ми соль до ре до");
        }
    }


    p.s: программисты дополнят и поправят.
    Ответ написан
    2 комментария
  • На каком уровне нужно знать математику и другие точные науки для того чтобы спокойно начать осваивать веб-программирование?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Я со скепсисом смотрю на такие вопросы, и вот почему: сама по себе математика может и не нужна, хотя и тут есть с чем поспорить, но каким прилежным программистом или дизайнером Вы можете стать, если не хватило сил на школу или ВУЗ? Ну не верю я во все это: я не учился в школе не потому что я тупой или ленивый, а потому что мне это не надо. Именно из таких ребят и получаются быдлокодеры и говнодизайнеры, уж извините.
    Мне в школе вообще не надо было в учебники заглядывать, чтобы получать пятерки по математике, физике и др. предметам, почему Вы имеет такие низкие знания? Дело не в оценках, ясное дело, просто школьная программа математики простая, и ВУЗовская, если не брать в расчет специализированные ВУЗы - тоже. Если Вы не имели возможности учиться, например, из-за болезни или войны на родине, и теперь бьетесь над вопросом: что сначала - подучить математику или сразу за программирование браться - то да, поддержу, пропускайте смело математику и начинайте программировать, пробелы можно устранить и по ходу дела. Но если причиной лень или неспособность - то задумайтесь, может и не следует начинать браться за такое дело.
    Ответ написан
    2 комментария
  • Что выбрать во фрилансе: фронтенд, бэкенд или мобайл?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Верстать не скучно, если вам нужно не только сверстать а еще и всю клиенсткую логику реализовать. Только html+css никому не нужны, во всяком случае я считаю таких разработчиков лишним звеном. А вот нормальные front-end разработчики - это хорошо.

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

    На постсоветском пространстве рулят PHP, как бы там не кричали что язык так себе. Все языки не лишены недостатков. Да и с заказами проблем нету, как и с фреймворками, средствами тестирования/разработки, менеджерами пакетов и т.д. По сути разницы сейчас нету, брать php или питон (он тоже не лишен пережитков старых версий, проблем каких-либо). Руби свой пик популярности уже пережил, язык крутой, но меня лично раздражает подход к разработке навязываемый им. Так же есть еще своя ниша где царит javascript/node.js

    Я не люблю java, но тут ничего не поделать. Можно конечно писать на xamarin + c#, но толку? java не краткий язык, это правда, но по сути не так уж там все и страшно. Попробуйте.

    Сейчас время такое, что не особо важно где вы живете. Главное что бы интернет был и стремление учиться. Удаленную работу всегда можно найти, так что все же выбирите то направление которое вам нравится, но не ограничивайтесь этим, просто пробуйте что-то еще.
    Ответ написан
    4 комментария
  • Какой облачный хостинг выбрать под проект на Ruby On Rails?

    Отлично подходит для Rails-приложений Digital Ocean (http://digitalocean.com/). Есть все что вам нужно, из того что вы указали в своем вопросе. Ну и цена очень приятная.

    Ответ написан
    2 комментария
  • Symfon2 или Ruby on Rails 3 для стартапа?

    reaferon
    @reaferon
    Я бы в подобной ситуации выбрал бы RoR3.
    Стартап — он всегда стартап, есть риск, что не «выстрелит». А знания останутся в любом случае.
    То есть как ни поверни — не прогадаете :)
    Ответ написан
    Комментировать