Посмотри: морской бой на angular + socket.io https://github.com/arturasz/sea-battle но надо разбираться - работает ли. Все найденные ошибки можешь отправить прямочком в этот репозиторий GIT - заодно потренируешься работать над open source проектом.
AlikDex: gulp/grunt - это автоматизация. меньше ручной работы. Собрать зависимости, конвертация форматов (Haml->HTML, CoffeScript->JS, LESS->CSS), PNG spritы, SVG Setы, обфускация, сжатие. Всё, что нужно для сборки пограммного продукта.
Данные нужно же в какие-то макеты подставлять. Не JSON ведь пользователю показывать :( Знаю, что некоторые практикуют передавать по AJAX целые куски готового HTML.
Впиши слово debugger перед "try {", то есть первой строкой этой функции. Браузер остановится ровно тогда, когда эта функция будет вызвана. Можно посмотреть значения переменных и проверить, какие именно условия выполняются.
entermix: я не согласен. если надо заархивировать папку с архивом, то оба приведённых варианта кода эту задачу решают. Я бы ради реализации одной функции не стал углубляться в ООП.
Никита: Крупный проект есть, но его как раз сейчас четверо тюнят. https://icons8.com/ - сейчас оцениваем понятность и удобство интерфейса, привлечение и удержание посетителей, экономическую привлекательность продуктов, варианты диверсификации. Есть мелкие, для себя. У них очень небольшая посещаемость.