• Источники для изучения Node.js?

    HoHsi
    @HoHsi
    lem_prod:
    сам начинал знакомство с кантора, не все его примеры на 5.х работали, не верите мне, посмотрите ленту комментариев под скринкастом, там активно обсуждают, что не работает с 4\5.х версиями

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

    вот на счет ядер, не буду особо спорить с моим ламаным английским, но на сколько я понял с официальной документации, этот объект кластера позволяет задействовать все ядра.

    Правильно, каждый спавн старается выхватить себе ядро (если система дает), но это не делает Node.js многопоточной. По сути дела это все равно, что запустить несколько раз node.js программу (с оговоркой на то, что они могу общаться между собой). Но это не треды.

    что вам не нравится в доках экспреса я не знаю.

    В eng доках все ок, русские доки местами неполны. Все.
  • Источники для изучения Node.js?

    HoHsi
    @HoHsi
    ну во первых, сейчас уже версия 5.7 стабильная, на днях обновили как раз, 4.х это версия длительной поддержки, я бы рекомендовал сразу 5+, потому что пока вы закончите обучение, 4.х может уже быть не актуально.

    В самой Node.js со времен мерджа с IO.js ничего не поменялось (я про API). Так, что все версии обратно совместимы (т.е. код написанный во время 0.1x спокойно работает на 4 и на 5, если сомневаетесь сделайте тест на Travis).

    хорошей русской актуальной литературы НЕТ
    порядок обучения, какой я бы советовал, ссылки.

    Почему же, Кантор был не плох, хотя я уже знал Node до него, но мне он показался вполне толковым. Хотя иногда он использовал странные архитектурные решения, но спишем это на синтетику.

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

    Бред. Node так и работает в одном процессе и ядре. То что она научилось спавнить процессы и говорить с ними, не делает ее мультикорной (так как мультикор зачастую достигается тредами, которые быстрее). А спавн просто запускает несколько одинаковых процессов параллельно.

    а, и на под конец, когда будете знакомится с express, на официальном сайте есть русская инфа с примерами.

    Вот пожалуй тут как раз нет актуальности, Русская документация весьма странная.
  • Как подменить результат вызова стандартного node.js модуля в тестах?

    HoHsi
    @HoHsi
    Захар Орлов: хотя, если вы используете TravisCI у них можно подтянуть все что угодно в конфиге, просто "git" до вашей сторонней программы, и все.
  • Как подменить результат вызова стандартного node.js модуля в тестах?

    HoHsi
    @HoHsi
    Захар Орлов: ну сделайте ENV переменную, которая в зависимости от своего значения будет подгружать либо нормальную библиотеку, либо заглушку.
    let child_process;
    if (process.env.NODE_ENV === "testing") {
      child_process = require('./fake-testing-cp');
    } else {
      child_process = require('child_process');
    }
  • Что делает что делает Meteor.bindEnvironment?

    HoHsi
    @HoHsi
    "Метеора идет в одном потоке, не так как в Node.js."
    не знаком с метеором (только слышал), а что значит не как Node.js, ведь метеор, как я знаю это платформа над Node?
  • Переменная не хочет переопределяться. Почему?

    HoHsi
    @HoHsi
    Даниил Боровков: кастыльность не в geolocation, а в использовании setTimeout для проверки апрува от пользователя
  • Переменная не хочет переопределяться. Почему?

    HoHsi
    @HoHsi
    Алексей: Абсолютно серьезно. 22 строчки, и у нас есть промисифированная функция, которую можно переиспользовать.

    Что касается "внутри", то это верная дорога в Callback hell
  • Переменная не хочет переопределяться. Почему?

    HoHsi
    @HoHsi
    Алексей: осмелюсь предположить, что спрашивающий - новичок. И сейчас он воспринимает любой более менее работающий ответ как верный, и фиксирует его у себя в голове. А потом, когда такой джун приходит под ваше крыло начинается веселый рефакторинг и PR'ы.

    Так-что, все что, является костыльной альтернативой, лучше либо вообще не рассказывать, либо уточнять что это ужасный вариант.
  • Как удалить объект через функцию?

    HoHsi
    @HoHsi
    oleshkin: ради всего святого, не доходите. Я искренне надеюсь, что товарищ пошутил (но он недавно предложил другому человеку проверять значение переменной через setTimeout)
  • Node.js как замена PHP?

    HoHsi
    @HoHsi
    На счет либ, что вы сбросили - да, есть еще async. А теперь скажите мне, эмулировать синхронность - это не костыль?))

    Вторая ссыль - ошибочная, я это упомянул. На счет того, что это еще не стандарт, согласен, но учитывая, что это уже стандарт в TS, Babel и прочих популярных препроцессорах, в скором появлении их в стандарте сомневаться не приходится.
    Касаемо Async - это не совсем то, это очень старая либа, она расчитана на callback, а не на промисы, так что считать ее костылем вполне резонно, а вот нативный Async/Await - нет.

    Ну как сказать, в случае разделения нод между серверами вам так или иначе придется использовать внешние хранилища, типа redis или memcache, даже на ноде (например под те же сессии). На счет opcache - он и так в ram хранится.

    Возможно мы не поняли друг друга, я имею ввиду конфиги вроде i18n и прочих, которые можно спарсить один раз в RAM и быстро оперировать с ними (а порой они оооочень долго парсятся, особенно если сделаны с удобным API)

    потому, что автор спросил про замену php, а php - это web.

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

    Посмотрите количество вакансий php и node, обычно перспективней учить то, что более востребовано))

    Дык раньше все повально учили perl, basic, ASM, двоичное шифрование, транзисторную распайку. Технологии устаревают, и node.js это тоже не минует (это лишь вопрос времени), так что появись более удобный для меня инструмент, я без особой боли перейду на него.
  • Node.js как замена PHP?

    HoHsi
    @HoHsi
    index0h: а в чем костыльность нативных await?

    Касаемо кодогенерации, пререндера в кеш, конфигов в редисе и прочего - вот настоящие костыли, это уход от проблемы, а не ее решение (все он в любом случае медленнее и менее удобны чем RAM).

    А почему мы сравниваем только вэб? Если это что-бы как-то оправдать сравнение с PHP, то да, но язык учится не на один проект, и куда перспективнее знать Node.js, а не PHP.
  • Node.js как замена PHP?

    HoHsi
    @HoHsi
    Пардон ссылка на Async/Await - не на нативные, это эмуляция, но я думаю не составит труда загуглить "ES7 Async/Await"
  • Node.js как замена PHP?

    HoHsi
    @HoHsi
    Под задачи, с последовательным выполнением ноду лучше НЕ брать.

    Полнейший бред:
    co
    Нативный ES7: async/await

    Учитывая все это + хранение стейта, загруженых файлов в RAM (Что позволяет хоть все конфиги держать в YAML. P.s а он весьма долго парсится), возможность оперировать с C++ либами - Node.js уже давно оставил PHP позади.

    И не забывайте, что PHP язык веба, а JS в последнее время стал общим (хоть мобильные приложения, хоть сайты, хоть консольные утилиты).
  • Как лучше брать оплату за работу (фикс за объем / фикс за время / почасовая)?

    HoHsi
    @HoHsi Автор вопроса
    Как я понял у ребят стартап, и они сами не знают, что хотят.
  • Как лучше брать оплату за работу (фикс за объем / фикс за время / почасовая)?

    HoHsi
    @HoHsi Автор вопроса
    В том то и дело, что заказчик сам предлагает часы
  • Как лучше брать оплату за работу (фикс за объем / фикс за время / почасовая)?

    HoHsi
    @HoHsi Автор вопроса
    А если откинуть моральную и философскую часть, по вашему ИМХО как лучше брать?
  • Как лучше брать оплату за работу (фикс за объем / фикс за время / почасовая)?

    HoHsi
    @HoHsi Автор вопроса
    Петр: тут скорее не уникальность навыков, а качество и скорость выполнения.
  • Как лучше брать оплату за работу (фикс за объем / фикс за время / почасовая)?

    HoHsi
    @HoHsi Автор вопроса
    Петр: ок, а как тогда адекватно оценить свои навыки, и сколько запросить за час?