These are chat archives for synrc/n2o

7th
Dec 2015
Что отсюда я могу выкинуть? Чтобы понять, как это все работет?
Никогда не любил примеры, в которых сразу строят вундерпрограмму
Andy
@m-2k
Dec 07 2015 11:43
лол
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 11:43
Не, ну я серьезно )
Andy
@m-2k
Dec 07 2015 11:45
ты сразу скажи что ты любишь
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 11:46
Спасибо )
Roman
@AstRonin
Dec 07 2015 11:47
в общем-то там нечего убирать, там только запуск сервака... можешь убрать все что связано с users...
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 11:50
Да, я так и думал. Просто все новое для меня в n2o. Язык-то знаю, а современные разработки нет. Даже ребар, и тот мозг выносит
Конфигами
Andy
@m-2k
Dec 07 2015 11:51
ребар нинужен
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:04
Ну, мад ведь ребар-компатибл?
Кстати, я asakura-kazumi. Сайтом с комиксами вас мучил
То есть, получается, я закидываю инициализацию сюда:init([]) -> case cowboy:start_http(http,3,port(),env()) of
{ok, _} -> ok;
{error,_} -> halt(abort,[]) end, sup().
init([])   -> case cowboy:start_http(http,3,port(),env()) of
                   {ok, _}   -> ok;
                   {error,_} -> halt(abort,[]) end,
<сюда>
sup().
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:09
Роутер вызывает Модуль:main/0
Andy
@m-2k
Dec 07 2015 12:49
да. и event(init) при ws подключении
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:52
Вебсокеты еще не везде, так что я пока хочу простой http. Вебсокетами потом займусь, когда разберусь, как с ними здесь работать
Andy
@m-2k
Dec 07 2015 12:54
не везде?
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:55
Я не уверен, что у всех стоят последние версии браузеров
Andy
@m-2k
Dec 07 2015 12:56
а, ну всё с тобой понятно теперь
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:56
Хотя, если учесть, что все, кому нравятся комиксы, наверняка обновляются
В любом случае хочу сначала освоиться

Начать с чего-то такого:

route(<<"comic/:name/read[/:ch_num]">>) -> comic_read;
route(<<"comic/:name">>) -> comic_showinfo;

...

% comic_read
ComicName = wf:q(name),
ChapterNum = case wf:q(ch_num) of
    undefined -> 1,
    Num -> Num
end,
Vitaly Shutko
@sokal32
Dec 07 2015 12:58
ну как сказать не везде http://caniuse.com/#feat=websockets
много где)
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 12:58
Да, я смотрел caniuse
Andy
@m-2k
Dec 07 2015 12:59
для дегенератов есть же xhr-pooling
Vitaly Shutko
@sokal32
Dec 07 2015 13:00
на самом деле если использовать селф дескриптивные сообщения то нет особой разницы как их передавать
это всего лишь транспорт
у нас api доступен в одном и том же виде и по ws и по http
спасибо bert+asn1 за это
передаем бинарные сообщения в теле методом post
ответ так же в бинарном виде в теле
если сообщения небольшие то можно и get запросами слать
в base64
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:02
То есть, могу сразу начать с вебсокетов?
Vitaly Shutko
@sokal32
Dec 07 2015 13:02
ну мое мнение, что да, но лучше спроси у более авторитетных людей еще)
Andy
@m-2k
Dec 07 2015 13:02
можешь сразу со SPA начать и сервить статику через nginx
Vitaly Shutko
@sokal32
Dec 07 2015 13:04
ну просто если правильно выстроить архитектуру, то есть ресурс, ты с ним производишь какие-то манипуляции, это главное, а есть его представления в разных форматах и методы передачи туда сюда (транспорт), это уже обвес
поэтому мне кажется с чего начинать насрать, главное правильно начать
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:06
Да у меня не особо мудреный ресурс. Упрощенная версия http://comic.naver.com
Чисто свои комиксы выкладывать + бложик
Vitaly Shutko
@sokal32
Dec 07 2015 13:06
тогда тебе не нужны вебсокеты)
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:06
Плюс комментирование глав
Roman
@AstRonin
Dec 07 2015 13:07
ерланг тоже не особенно необходим :)
Vitaly Shutko
@sokal32
Dec 07 2015 13:07
если хочется single page, то хватит обычных xhr
хотя для пуша со стороны сервера можно
если комментарии подгружаются постоянно
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:07
:point_up: 7 декабря 2015 г., 18:07
А мне просто нарвится эрланг )
Vitaly Shutko
@sokal32
Dec 07 2015 13:08
ну это не грех, язык то хорош)
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:08
Когда только с ним познакомился в одну из суббот, через два дня, в понедельник си-подобные функции и циклы показались мне жуткими
Очень быстро привыкаешь к паттерн-матчингу
Vitaly Shutko
@sokal32
Dec 07 2015 13:09
даааа
паттерн матчинг это просто дар богов
Ryuuji Kagami
@kagami-ryuuji
Dec 07 2015 13:33
Кстати, обязательно генерить html прямо в модуле?
body()    -> [ #panel{id=history}, #textbox{id=message},
               #button{id=send,body="Chat",postback=chat,source=[message]} ].
Или эти записи проходят какую-то обработку?
Andy
@m-2k
Dec 07 2015 13:36
Можешь юзать erlydtl
Через #dtl{}