• Возможно ли в node.js зашифровать исходный код?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    Для того, чтобы приложение могли поддерживать только Вы есть гораздо более надежный способ, придумывайте как можно больше абстракций и используйте больше паттернов, а еще лучше - сделайте свой фреймворк, это самое надежное, и пусть кто-то разберется.
    Ответ написан
    Комментировать
  • Возможно ли в node.js зашифровать исходный код?

    Denormalization
    @Denormalization
    1) И свести на нет всё удобство разработки на nodejs
    2) jsbeautifier и все труды - пшик.

    Зачем придумывать себе проблемы, и искать пути их обхода? Что за тяга к самоистязанию?
    Ответ написан
    Комментировать
  • Реально ли разорить конкурента накрутив ему клики по ссылке в Яндекс директ?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    Во-первых есть защита от накрутки. Во-вторых есть лимиты бюджетов на кампанию (в сутки, в час и так далее). В третьих, на место в поиске всё это никак не повлияет.
    Ответ написан
    Комментировать
  • Реально ли разорить конкурента накрутив ему клики по ссылке в Яндекс директ?

    He11ion
    @He11ion
    PHP-monkey
    Яндекс возвращает часть средств и правит статистику по итогам пост-анализа кликов, совсем уж топорно вряд ли получится открутить.
    Ответ написан
    Комментировать
  • Реально ли разорить конкурента накрутив ему клики по ссылке в Яндекс директ?

    Система защиты довольно слабая, при наличии нескольких живых человек это более чем реально.
    Ответ написан
    Комментировать
  • Реально ли разорить конкурента накрутив ему клики по ссылке в Яндекс директ?

    Arseny_Info
    @Arseny_Info
    R&D engineer
    Накруткой кликов в лоб не выбьете. Если у конкурента плохо настроенная кампания, можно пробовать навредить другими способами (например, «подпорками»).
    Но лучше все-таки улучшать свой проект, а не пытаться испортить жизнь другому.
    Ответ написан
    Комментировать
  • Реально ли разорить конкурента накрутив ему клики по ссылке в Яндекс директ?

    @balamut108
    Py
    Во-первых реально сжечь рекламный бюджет через клики на Яндекс, но надо понимать, что это делается конечно же не через нажатие 500 раз по рекламе. Во-вторых рекламный бюджет не имеет прямой связи с фин. балансом компании, поэтому если у вас есть цель разорить конкурента, то это не самый эффективный способ.
    Ответ написан
    Комментировать
  • Как корректно считать кусками файл в UTF8 из под node.js?

    @Aves
    И где только удалось откопать такую форму применения fs.read ?..
    Read читает байты, поэтому читать надо в буфер, и потом преобразовывать с помощью StringDecoder:
    var fs = require('fs');
    var fd = fs.openSync('./text', 'r');
    var decoder = new (require('string_decoder').StringDecoder)();
    var buf = new Buffer(10);
    var list = [], str, bytesReaded;
    
    while (bytesReaded = fs.readSync(fd, buf, 0, 10, null)) {
        str = (list.pop() || '') + decoder.write(buf.slice(0, bytesReaded));
        list = list.concat(str.split("\n"));
    }
    console.log(list);

    А лучше для таких вещей использовать потоки, если указать кодировку, будет читаться нужное количество символов, а не байт:
    var fs = require('fs');
    var list = [];
    fs.createReadStream('./text', {encoding: 'utf8'})
        .on('readable', function() {
            var str, chunk;
            while (chunk = this.read(10)) {
                str = ((list.pop() ||'') + chunk);
                list = list.concat(str.split('\n'));
            }
            list[list.length-1] += (this.read() || '');
        })
        .on('end',function() {
            console.log(list);
        });
    Ответ написан
    2 комментария
  • Как корректно считать кусками файл в UTF8 из под node.js?

    printf
    @printf
    Ем детей.
    А вот эта https://github.com/jahewson/node-byline штука работает корректно?

    По-хорошему надо считывать байты (Buffer), а не строки, тогда не будет ломаться ничего. А в строку превращать непосредственно перед использованием.
    Ответ написан
    Комментировать
  • Как правильно рекламироваться в пабликах ВК?

    devpull
    @devpull
    Истина где-то рядом...
    Поделюсь опытом относительно рекламы внутри Вконтакте:

    1. Понимание портрета потенциальной аудитории: пол / возраст / интересы / геолокация, если есть сайт, то с определением ранее сказанного поможет метрика или аналитикс; если сайта нет - поможет здравый смысл и анализ аудитории групп-конкурентов.

    2. Анализ групп конкурентов: кто они / что делают / сколько подписчиков / откуда

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

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

    Возможно что-то вам пригодится.
    Ответ написан
    Комментировать
  • Как добиться ожидания результата функции в операторе if?

    @lavrok
    Front-End Developer
    Можно сделать и полностью синхронный вид этого всего с помощью генераторов (плюс promises).
    В ноде уже можно смело использовать, плюс избавления от безграничной вложенности и геморойного дебагинга.
    habrahabr.ru/sandbox/67590
    Ответ написан
    Комментировать
  • Как понять принципы ООП?

    onqu
    @onqu
    weasy
    Чтобы понять принципы ООП, книги не требуются. Взгляните вокруг себя. Всмотритесь в любой объект в реальном мире, опишите его наиболее подробно (материал, размер, цвет, вес, плотность, составные части и т.д.), это будут его свойства. Опишите, что и каким образом этот объект умеет делать (включаться, складываться, кушать электроэнергию, взаимодействовать с другими объектами или окружающей средой и т.д.), это будут его методы. Подумайте, для чего используется этот объект, что ему нужно изменить или добавить, чтобы использовать в других условиях или целях, и на основе всех собранных знаний создать более удобный экземпляр, это будет наследование и полиморфизм. Теперь немедленно забудьте обо всем, используйте объект по назначению, это будет инкапсуляция. Дальше останутся только тонкости выбранного Вами языка, шаблоны, методологии и прочаяие ересь тренды.
    Ответ написан
    2 комментария
  • [Асинхроность и nodejs] Кто что использует против callback hell и почему?

    MarcusAurelius
    @MarcusAurelius
    автор Impress Application Server для Node.js

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

    
    var dataRequests = [];
    // массив запросов к разным данным (БД, файлы, сетевые вызовы)
    var dataResults  = {};
    // я предпочитаю не использовать массив results, который дает async
    // а вместо этого делать именованные фрагменты данных
    // и писать их в свой хеш
    
    // добавляем один запрос к данным
    dataRequests.push(function(callback) {
    	db.queryRow(
    		'SELECT * FROM TableName1 where Field1=?', [someValue1],
    		function(err, res) {
    			dataResults.firstPiceName = res;
    			callback(err, null);
    		}
    	);
    });
    
    // добавляем второй запрос к данным
    dataRequests.push(function(callback) {
    	db.queryValue(
    		'SELECT count(*) FROM TableName2 where Field2=?',
    		[someValue2],
    		function(err, res) {
    			dataResults.secondPiceName = res;
    			callback(err, null);
    		}
    	);
    });
    
    // вызываем массив запросов асинхронно
    async.series(dataRequests, function(err, results) {
    	// тут делаем бизнес-логику над dataResults в котором у нас есть
    	// все фрагменты данных .firstPiceName и .secondPiceName
    	// и формируем общий результат
    });
    

    А еще рекомендую ставить тег "node.js" на вопросы по ноде.

    Ответ написан
    1 комментарий