@gogolang

Страница 229 из 1630
Yuliya
13.04.2017
13:14:15
200 000+

redbeard
13.04.2017
14:15:48
удаленки нема? эх...

Constantine
13.04.2017
14:19:30
тимлид и на удаленку

такое потянешь?)

Google
Constantine
13.04.2017
14:19:41
как удаленно раздавать пиздюлей нубам?

redbeard
13.04.2017
14:20:00
по скайпу или с ребятами с pro.embedded спаять раздавалку :)

Илья
13.04.2017
14:20:07
просить наказать себя самому?

Constantine
13.04.2017
14:20:15
можно и себя самого наказывать

Мерлин
13.04.2017
15:37:35
Палю лайфхак

Олег
13.04.2017
15:41:07
?

Мерлин
13.04.2017
17:02:32
i just merged a buncha changes into #golang dep - and put up what'll be weekly updates about the state of the tool! https://sdboyer.io/dep-status/2017-04-10/

Slava
13.04.2017
17:20:34
200 000+
Перепощу вашу вакансию у нас в Слаке

Мерлин
13.04.2017
17:21:08
https://www.activestate.com/blog/2017/03/go-object-oriented-developers?utm_source=golangweekly&utm_medium=email

Привет :3

Slava
13.04.2017
18:19:05
привет

Vadim
13.04.2017
18:19:44
Привет :3
Ааа, вотоноче)

Google
Мерлин
13.04.2017
18:19:58
Vadim
13.04.2017
18:20:31
#мерльнепродайся :)

Мерлин
13.04.2017
18:21:16
#мерльнепродайся :)
Ни в жисть, зуб даю, сувенирный, с кипра

Andrey
14.04.2017
11:45:11
Всем привет! Пришел запрос по HTTP (го сразу в отдельную горутину выпуливает запрос) я что-то делаю, потом надо забрать результаты через некоторое время, если я в ней вызову таймер и после таймера заберу результаты, это же не криминал ), в ожидание же будет только эта горутина ?

Daniel
14.04.2017
11:54:01
Только эта

Но сама идея вышлядит странно

Что клиент будет делать во время этого таймера

?

Andrey
14.04.2017
15:59:52
Ну скажем если это будет jquery то таймер в 10сек не сделает погоды, поглядит на крутящиеся часы)) просто длинк диагностику с порта не сразу отдает а в среднем через 5-10, а бывает и 15 секунд @onokonem

Andrew
14.04.2017
16:56:09
Через http get даёт диагностику?

Andrey
14.04.2017
18:51:10
Нет по snmp, через set пишем, ждем пока опросит, потом забираем, через http планирую в crm отдать @NXShock

Roman
14.04.2017
20:25:59
привет всем. Подскажите, как это красиво записать? inputFiles, _ := ioutil.ReadDir(test.inputPath) inputCount := len(inputFiles) resultFiles, _ := ioutil.ReadDir(test.resultPath) resultCount := len(resultFiles)

Aleksandr
14.04.2017
20:57:37
Roman
14.04.2017
20:59:01
не, может это можно как-то сократить)

Aleksandr
14.04.2017
21:09:30
Никита
14.04.2017
21:09:31
ошибки не игнорируй сначала)

Slava
14.04.2017
21:12:16
следующий вопрос будет, подскажите, у меня не работает, почему?

Никита
14.04.2017
21:18:57
следующий вопрос будет, подскажите, у меня не работает, почему?
ошибки не игнорируй и почитай, в чем там ошибка )

а ой

Nikolay
14.04.2017
22:15:53
@SolidlSnake скрапер для инстаграма на Go, вот год назад делал такое для одного проекта, можно объединить усилия и сделать что-то общее и полноценное https://github.com/xboston/go-instagram-scraper

Google
Andrew
15.04.2017
03:16:02
⬆️ вот до чего доводит людей Go ?

Vadim
15.04.2017
11:01:49
Всем привет, сюда еще вроде как не вбрасывал, небольшое исследование на тему того как кто что мониторит и не очень https://goo.gl/forms/FuWNKOlFhwHM738u2 нужно больше ответов, чтобы хоть как-то составить картину :)

Constantine
15.04.2017
11:23:14
ну и добавить про то, что приватное апи юзается и прочее

Vadim
15.04.2017
11:44:43
Ответы публичны?
ну я потом как хотя бы несколько десятков наберу начну писать про то, "как никто нихрена не мониторит" :)

Daniel
15.04.2017
14:13:11
ну как минимум мы все мониторим

Мерлин
15.04.2017
17:02:10
#Multiplexing #Golang #Channels to Maximize Throughput | The #MongoDB Engineering Journal http://crwd.fr/2pbucgq https://pbs.twimg.com/media/C9bAZ2IXcAAiyjw.jpg

proposal: Go 2: "result" type · Issue #19991 · golang/go https://github.com/golang/go/issues/19991

corpix
16.04.2017
04:01:58
proposal: Go 2: "result" type · Issue #19991 · golang/go https://github.com/golang/go/issues/19991
Это прям коробка пандоры, потому что если будет result то захочется сделать паттерн матчинг(как в русте, чтоб не забыть обработать все кейсы), и вообще, если уж реализовывать такую штуку как result то нужно будет красивее поддержать алгебраические типы данных в го. Автор пропозала там кстати ссылается на https://github.com/golang/go/issues/19412 , но говорит что можно их не использовать, что как-то странно. На мой взгляд если в го такое делать то АТД нужны как воздух

Slach
16.04.2017
08:55:49
Люди объясните тупому... у меня есть s строка которую я преобразовал из []byte b := []byte{16,17, } s := string(b) len(s) выдает 16 как при записи в CSV файл через encoding/csv получается больше 16 байт??? 16 байт это UUID преобразованный из строки через http://github.com/satori/go.uuid

Alexey
16.04.2017
09:38:56
Добавляется перевод строки?

Slach
16.04.2017
09:39:22
https://play.golang.org/p/o6GKCzs2aU хуже вместо 18 байт получаю 29

2017/04/16 12:37:14 len(s)=16 2017/04/16 12:37:14 size csv_wtf.csv = 29

Alexey
16.04.2017
09:40:22
Да, уже вижу в конкурирующем чате, давай там

Мерлин
16.04.2017
10:10:24
2017/04/16 12:37:14 len(s)=16 2017/04/16 12:37:14 size csv_wtf.csv = 29
16 - это в сыром виде, просто байты 29 - это длина сериализованного в человекочитаемый вид uuid

Slach
16.04.2017
10:11:19
29 - это длина сериализованного в человекочитаемый вид uuid это не так

в человеко читаемом было бы 36 байт UUID

Мерлин
16.04.2017
10:11:54
А, блин, точно

Google
Мерлин
16.04.2017
10:19:22
в человеко читаемом было бы 36 байт UUID
Замени s := string (u.Bytes()) на s := u.String()

Slach
16.04.2017
10:23:59
и??? мне не надо писать в CSV 36 символьную строку

мне надо именно 16 байт записать

Мерлин
16.04.2017
10:26:03
мне надо именно 16 байт записать
А как ты представляешь запись произвольных байт в csv файл, то есть файл текстового формата?

А если среди этих байт будет символ разделителя?

Slach
16.04.2017
10:28:08
0x0A ??? 0x0D ??? а там в encoding.csv как раз стоит проверка ... в целом вообще так то надо просто снаружи кавычки " поставить а если есть внутри кавычки " заменить на повторение ""

если внутри есть перенос строки то пусть он остается а вот если есть кавычка, то по идее она дожна быть двойной

Aleksandr
16.04.2017
10:29:22
0x0A - это 4 байта)

ты не можешь смешать бинарный формат и текстовый

Slach
16.04.2017
10:34:22
'0x0A' это блин Rune Literal это 1 байт

я просто привел их в том виде чтобы понятно было

байт с десятичным значением 10 и байт с десятичным значением 13 может встречаться внутри UUID это файт

s := string(u.Bytes()) log.Printf("u.Bytes()=%v",u.Bytes()) for i, v := range s { log.Println(i,v) } вот такой код выводит следующее 2017/04/16 13:56:18 u.Bytes()=[225 57 60 98 135 122 74 220 143 251 241 191 10 51 124 95] 2017/04/16 13:56:18 0 65533 2017/04/16 13:56:18 1 57 2017/04/16 13:56:18 2 60 2017/04/16 13:56:18 3 98 2017/04/16 13:56:18 4 65533 2017/04/16 13:56:18 5 122 2017/04/16 13:56:18 6 74 2017/04/16 13:56:18 7 1807 2017/04/16 13:56:18 9 65533 2017/04/16 13:56:18 10 65533 2017/04/16 13:56:18 11 65533 2017/04/16 13:56:18 12 10 2017/04/16 13:56:18 13 51 2017/04/16 13:56:18 14 124 2017/04/16 13:56:18 15 95 в общем никто случайно не знает CSV пакета который умеет писать сырые байты? т.е. реально проблема в том как идет итерация по строке =(

т.е. полюбому руны при записи дают больше чем 1 байт =( для каждого байта который больше 127 идет попытка вытащить utf-8 codepoint в качестве "символа"

Aleksandr
16.04.2017
11:04:44
т.е. полюбому руны при записи дают больше чем 1 байт =( для каждого байта который больше 127 идет попытка вытащить utf-8 codepoint в качестве "символа"
ну это же правильное поведение руны. руна не один байт маппит, а последовательность байтов в руну, равную символу utf-8

csv - это текстовый формат. Писать туда бинарный дамп не по rfc, и соответственно вряд сторонние пакеты csv будут такое поддерживтаь. пиши сам либу

Slach
16.04.2017
11:16:48
> Писать туда бинарный дамп не по rfc простите но это не так =) RFC 4180 не ограничивает содержимое строк и их кодировку он только определяет delimiter и field quoting и line breaking правила

https://tools.ietf.org/html/rfc4180#page-2

Konstantine
16.04.2017
11:24:01
Отличная тема, чтобы подраться за гаражами, ящитаю.

Google
Мерлин
16.04.2017
11:54:35
The ABNF grammar [2] appears as follows: file = [header CRLF] record *(CRLF record) [CRLF] header = name *(COMMA name) record = field *(COMMA field) name = field field = (escaped / non-escaped) escaped = DQUOTE *(TEXTDATA / COMMA / CR / LF / 2DQUOTE) DQUOTE non-escaped = *TEXTDATA COMMA = %x2C CR = %x0D ;as per section 6.1 of RFC 2234 [2] Shafranovich Informational [Page 3] RFC 4180 Common Format and MIME Type for CSV Files October 2005 DQUOTE = %x22 ;as per section 6.1 of RFC 2234 [2] LF = %x0A ;as per section 6.1 of RFC 2234 [2] CRLF = CR LF ;as per section 6.1 of RFC 2234 [2] TEXTDATA = %x20-21 / %x23-2B / %x2D-7E

Смотрим на пункт в конце (TEXTDATA)



Вот ascii таблица для удобства

Это раз

Во-вторых, когда ты пишешь данные в csv.Writer, то он итерируется по рунам каждого поля. Так как ты записываешь не utf8 строку, то у тебя получается каша

Вот здесь с куском, выдранным из csv.Writer https://play.golang.org/p/ApEks2cCnX

Это два

Вот здесь с куском, выдранным из csv.Writer https://play.golang.org/p/ApEks2cCnX
Там как раз получается 26 байт (- 3 байта на кавычки и точку в конце)

Slach
16.04.2017
12:02:04
ну это да, тут я уже понял и ссылки на это я уже приводил и пытался как раз понять откуда WriteRune лишние байты дает разобрались... invalid unicode sequence имеет отдельную константу ;)) спасибо тыкнули мордочкой помогли определиться что делать дальше

Мерлин
16.04.2017
12:03:39
Пиши в csv uuid.String() и будет тебе счастие

Slach
16.04.2017
12:05:18
Пиши в csv uuid.String() и будет тебе счастие
не будет ибо вставлять мне это дело надо в Clickhouse ;) у которого как раз есть оптимизация на такой случай и который подобный набор байт в CSV как раз поймет

https://clickhouse.yandex/reference_ru.html#UUIDNumToString(str)

ну и с учетом того что вставлять мне надо много

Страница 229 из 1630