
John
12.09.2018
14:14:04

Vladimir
12.09.2018
14:14:44

Александр
12.09.2018
14:16:08
Node.js - не существует!

Roman
12.09.2018
14:17:50

Google

Михаил
12.09.2018
14:17:51

Roman
12.09.2018
14:19:07
потихоньку начинаю сравнивать proposal'ы: https://github.com/romshark/Go-2-Proposal---Immutability#41-proposal-spec-add-read-only-slices-and-maps-as-function-arguments-20443

Roman
12.09.2018
14:19:42
эт луа?
смысл в том, что на больших степенях go становится в разы медленнее lua

Roman
12.09.2018
14:21:08

Roman
12.09.2018
14:24:56
это ещё надо доказать, пока-что я не уверен одинаковы ли алгоритмы
https://paste.ubuntu.com/p/4nCFXzK8mG/
https://paste.ubuntu.com/p/qqFxhcTd2Q/
поправленные варианты. считают сумму i^24 от 0 до 10^9.
root@wks:~/bench# time ./bench
4.0000000500001234e+223
real 0m7,744s
user 0m7,723s
sys 0m0,003s
root@wks:~/bench# time luajit f.lua
4.0000000500001e+223
real 0m1,754s
user 0m1,738s
sys 0m0,001s
все потому что https://paste.ubuntu.com/p/wHYnNWj866/

Roman
12.09.2018
14:27:15

Roman
12.09.2018
14:27:44

Roman
12.09.2018
14:27:46

Roman
12.09.2018
14:27:55

Roman
12.09.2018
14:28:14

Roman
12.09.2018
14:28:35

Google

Vladimir
12.09.2018
14:28:36
@Romshark ну jit jit'у рознь. Какой-то делает лучше код, какой-то нет

Roman
12.09.2018
14:29:10

Vladimir
12.09.2018
14:31:48

Roman
12.09.2018
14:32:20
@Romshark а как ты предлагаешь скриптинг на go куда-то встраивать?

Roman
12.09.2018
14:41:23

eugene
12.09.2018
14:43:31
Здравствуйте, подскажите, а удалённую работу на go джуниором реально найти?

Daniel
12.09.2018
14:43:47
для джунов все плохо

Алексей
12.09.2018
14:44:02
не надо джуном удалённо устраиваться

eugene
12.09.2018
14:44:25

Daniel
12.09.2018
14:44:44
именно на go - да
а общий - 3-5

eugene
12.09.2018
14:45:08
понятно, спасибо

Roman
12.09.2018
14:50:18

Kendr
12.09.2018
14:50:40

Daniel
12.09.2018
14:50:44
на js можно, на них спрос ажиотажный

Roman
12.09.2018
14:51:01

Kendr
12.09.2018
14:51:09
От востребованности зависит, а не от языка
Если точнее

Google

Roman
12.09.2018
14:51:35
ну хрен знает
может в России иначе, в Германии это практически невозможно

Kendr
12.09.2018
14:52:48
Но это не точно насчет Германии

Roman
12.09.2018
14:53:29
имеется ввиду конторы с представительством в Германии

Aleksandr
12.09.2018
15:06:30
Здравствуйте. Кто то наблюдал снижение скорости вызова функции time.Now() в версии go 1.11?
после обновления Go с версии 1.10 до версии 1.11 проект стал кушать процессора в 2 раза больше
По pprof на 2 месте по потреблению процессора - time.Now

Roman
12.09.2018
15:15:01
https://github.com/golang/go/issues/22876
тоже предлагает implicit conversion from mutable to immutable
но я по прежнему не уверен хорошо ли это

Dmitri
12.09.2018
15:28:07

Dmitry
12.09.2018
15:28:36

Bogdan (SirEdvin)
12.09.2018
15:44:29
А садить девов игру скриптовать, ну такое)
Стоит так же помнить, что большинство тормозов в игре от движка и нехватке времени на оптимизацию, а не от скриповых языков.

Sergey
12.09.2018
16:17:01

Александр
12.09.2018
16:31:55
хмхм
я тут думаю, а не сделать ли у хедлера еще один метод register куда скормить экземляр роутаера
что бы регистрировать "не отходя от кассы"

Google

Мерлин
12.09.2018
16:37:04
Все видосы с GopherCon 2018
https://www.youtube.com/playlist?list=PL2ntRZ1ySWBdatAqf-2_125H4sGzaWngM

Александр
12.09.2018
16:38:31
@onokonem мне бы конечно интересно было ваше мнение по этому вопросу

Aleksandr
12.09.2018
16:39:28

Daniel
12.09.2018
16:39:43
не дал себе труда, если честно

Александр
12.09.2018
16:40:21
type MyHandler struct {
...
}
func (h *MyHandler) RegisterRoute(router *httprouter.Router) {
router.GET("/users", h.Collection)
router.GET("/users/:GUID", h.Get)
}

Aleksandr
12.09.2018
16:40:53
это подроуты будут или как?

Александр
12.09.2018
16:41:09
в main:
router := httprouter.New()
myHandler := handlers.NewMyHandler(...)
myHandler.RegisterRoute(router)

Admin
ERROR: S client not available

Александр
12.09.2018
16:41:26
тобишь вообще изюавиться от регистрации в main

Aleksandr
12.09.2018
16:41:46
что-то странное

Александр
12.09.2018
16:42:02
ну просто "полотно" из 50 строк на регистрацию
такое себе
(когда очень много мелких хедлеров)

Daniel
12.09.2018
16:42:18
зато все очевидно
я бы оставил полотно

Александр
12.09.2018
16:42:42
я хотел хотя бы CRUD туда завернуть
что бы не мешался

Aleksandr
12.09.2018
16:43:22
ну сделай так хотя бы:
router := httprouter.New()
module.RegisterRoutes(router)
хэндлер то зачем этим занимается?

Александр
12.09.2018
16:43:47
а что за модуль то?

Google

Aleksandr
12.09.2018
16:43:56
просто. функция
конфигурирующая роутер

Александр
12.09.2018
16:44:13
ну просто тогда полотно перекочует просто в другое место

Aleksandr
12.09.2018
16:44:45

Daniel
12.09.2018
16:44:56
неееее

Александр
12.09.2018
16:45:02
в КАЖДЫЙ из хедлеров по 3-4 строчки

Aleksandr
12.09.2018
16:45:22
не, я вас не понимаю

Daniel
12.09.2018
16:45:31
теперь это уже не полотно, а клочки его

Aleksandr
12.09.2018
16:45:44
у меня есть роутер, есть 30 эндпойнтов. чего где у меня в каждом будет? 30 хэндлеров

Александр
12.09.2018
16:46:38

Aleksandr
12.09.2018
16:47:05
если у тебя проект на модули по бизнес-задачам разбит, сделай несколько registerRoutes например

Александр
12.09.2018
16:47:51
router := httprouter.New()
myHandler := handlers.NewMyHandler(...)
myHandler.RegisterRoute(router)
myHandlerTwo := handlers.NewMyHandlerTwo(...)
myHandlerTwo.RegisterRoute(router)
ну я так и хотел

Aleksandr
12.09.2018
16:48:19
ну да. но только не хэндлеры это должны делать

Александр
12.09.2018
16:48:51
ну там вся регистрация это три строчки
можно конечно фабрику сделать еще одну

Aleksandr
12.09.2018
16:49:38
router := httprouter.New()
module1.RegisterRoutes(router)
module2.RegisterRoutes(router)
module3.RegisterRoutes(router)
module4.RegisterRoutes(router)

Александр
12.09.2018
16:50:56
у меня хедлеры в одном пакете все
я их просто по файлами внутри разбил

Aleksandr
12.09.2018
16:51:24
тогда возвращаемся сюда