Михаил
А как обстоят дела с готовыми чатами на js? Имеет смысл думать на тему выкладывания в открытый доступ или нет смысла тратить на это силы? Чат на вебсокетах и node.js (не работал, как раз будет повод разобраться).
Vitaliy
Ребят, у меня странный вопрос =)) просто тут много людей)) есть PDF, в нем поля куда можно ввести текст. Вот как это поле передвинуть мальца?)))
Misha Kulakovsky
Misha Kulakovsky
потому что там интегрировано в основную систему, учетки юзеров там уведомления и все такое
Misha Kulakovsky
думаю у большинства так же будет
Михаил
У меня так же, нужен чат для панели управления. Идея в том, чтобы его выделить в отдельный модуль, который максимально просто подключается на стороне клиента и сервера. Тогда можно вложить больше времени и коллективный разум. 2-3 дня довольно оптимистичный прогноз. Как бы мне не понадобилась целая неделя.
Дима
А потом ещё пара лет на всякие мелочи
Михаил
В javascript дефайны есть? Ищу и не нахожу. Хочу сделать так: #define callError(e) return this.callError(user, req, res, e);
hlomzik
Боже, лол, нет
Михаил
Зря, зря, зря.
Михаил
Узнал, что приватных функций тоже нет. Как дальше жить.
Чурка
Эм, Михаэль-сама, откуда препроцессору взяться в интерпертаторе ?
Чурка
Он же однопроходный.
Smooth Operator
Он же однопроходный.
ну вообще то нет
Чурка
А, ну если считать трансляцию в байт-код...
Smooth Operator
я про hoisting
Чурка
А, это... На самом деле, оно и в один проход реализуется, учитывая гомогеничность подхода JS к организации кода ("все - поле: классы, функции, перменные")
Чурка
Ну или "все - свойство", вопрос терминологии.
Чурка
Это в Питоне надо код проанализировать, прежде чем отличить вызов функции от создания объекта.
Чурка
А в JS это официально одно и то же.
Чурка
Кстати, приватные ф-ии тоже противоречат идеологии по факту.
Чурка
Сущность может вообще распределена быть, если захотеть. Все упирается в текущее значение this.
Чурка
И никто не мешает инъекциям кода в объект, например.
anoru
А потом ещё пара лет на всякие мелочи
Правда. Слишком оптимистично надеяться написать аналог телеграма за неделю на языке, который начали изучать)
Михаил
Правда. Слишком оптимистично надеяться написать аналог телеграма за неделю на языке, который начали изучать)
Аналог телеграмма пишется за месяц, а я хочу всего лишь чат, недели должно хватить.
Oleg
Это смотря что вкладывать в слово "аналог"
Oleg
Старые жигули и ламборджини последней модели - тоже аналоги, и то и то автомобили
Oleg
Ну и собрать можно крупноузловой сборкой из 5-6 частей, а можно разработать каждый болтик с нуля
Oleg
Так что лучше конечно просто определиться а что и в каком виде нужно
Oleg
Ибо слово аналог сильно разно люди могут воспринимать
Oleg
Особенно те кто в этой сфере многое повидал
Oleg
А написать чат - где-то видел как тестовое задание в двух компаниях
Oleg
Нода, экспресс и сокет ио
Oleg
Так что да, чат можно и за 4 часа запилить
anoru
Аналог телеграмма пишется за месяц, а я хочу всего лишь чат, недели должно хватить.
Аналог и за год не написать одному человеку. Под капотом здесь много всего, тем более и приложений разных навалом
Михаил
Это смотря что вкладывать в слово "аналог"
То, что похоже на чат телеграмма, работает, с минимальным функционалом и имеет возможности для развития, то есть с понятной и расширяемой архитектурой, а не набором костылей.
Oleg
Вот с последним сложно, остальное вполне за неделю
Azein
"Аналог телеграма за месяц" это чушь, конечно же.
Azein
Тем более одним разработчиком.
Михаил
Не чушь. Но понятно, что без шифрования и в максимально простом исполнении.
Дима
Извините
Дима
Я один только сетевой протокол для телеграма уже месяц пишу
Дима
https://github.com/zerobias/telegram-mtproto/tree/develop
Михаил
Ок, аналог телеграмма, без протокола. Уровень задачи не тот, чтобы использовать специальный протокол. Нет, можно обернуть в шифрование, но зачем делать плохо. А чтобы делать хорошо, надо вложить много сил. И очень желательно, чтобы это было кому-то нужно.
Михаил
Вебм? В первой версии да. Это все можно прикрутить, были бы причины.
Дима
И 48 часов в сутках
Дима
И деньги безлимитные
Narek
Кстати, есть полностью опенсорсный аналог телеграма (с сервером)
Narek
https://github.com/actorapp
Михаил
И деньги безлимитные
Так время или деньги? Одного из двух вполне достаточно. Хотя, лучше взять 72 часа.
Дима
Нет, надо оба
anoru
Так время или деньги? Одного из двух вполне достаточно. Хотя, лучше взять 72 часа.
Предлагаю тебе погуглить сколько денег тратит Дуров на телеграм с учетом, что ничего за него не получает. Сколько разработчиков у него и какие зп они получают. Будешь очень удивлен
Narek
сомневаюсь, что в открытом доступе есть инфа сколько получают разработчики)
Дима
На разрабах он кстати экономит
anoru
Я точно читал схожее, но щас не найду уже.
Дима
Емнип, у каждой платформы по одному
anoru
>Дуров тратит на Telegram $1 млн собственных денег в месяц Это, кстати, раньше. Сейчас более
Narek
http://secretmag.ru/longread/2016/04/26/kak-durov-raskruchival-telegram/
Narek
вот хорошая статья, кстати
Narek
https://github.com/actorapp
там и про это есть))
Михаил
Все уже написано до нас. Надо писать что-то новое.
Михаил
Что-то совсем перестаю понимать логику включения файлов в ноде. Изначально думал, что достаточно сделать require('./config.js') и это будет аналогично тому, если бы этот код был написан в текущем файле. Но нет. Мне в каждом файле писать var ConfigNest = require('./config.js').ConfigNest; , если нужна эта переменная ? Или можно ее объявить как-то глобально, чтобы она была доступна во всех включаемых файлах?
Smooth Operator
ну знаешь, у нас тут в js модульность завезли
Smooth Operator
и писать в глобальный неймспейс тут дурной тон
Vladimir
Приветы! Подскажите пожалуйста как во втором вебпак+бабеле побороть дублирование _interopRequireDefault функции при каждом импорте, transform-runtime не работает почему-то
Дима
В каждом файле свой
Дима
Хотя может бть один общий
Дима
Но я даже не задумывался, меня и так устраивает)
Vladimir
Vladimir
в бандле в каждом модуле свой, один и тот же
Vlad
its by design
Vladimir
В первом вебпаке runtime-мом можно было вынести эту функцию в отдельный модуль и эта функция не дублировалась, а тут никак не получается что то(
Vlad
я уверен они не одинаковые
Дима
Ну насчет этой функции не уверен, но вообще такая возможность есть официально
Vladimir
Или еще как вариант есть ли возможность подключить webpack.optimize.DedupePlugin(), во втором его тоже нет( боль.
Дима
Dedupe нет, потому что он по умолчанию работает