@dlangru

Страница 104 из 719
Dmitry
14.11.2016
19:37:24
Ну геоинформатикой занимаюсь по работе

Oleg
14.11.2016
19:37:33
Ааа

Массивы данных какието сложные обрабатываете?

Это тот случай когда говорят что Д используется в науке?

Google
Dmitry
14.11.2016
19:39:20
Да для сложных данных обычно есть уже готовые инстурменты. Тут нужно задачи решать какие-то весьма тривиальные. Типа из БД данные взять и что-то с ними сделать несложное. Но из-за того, что хочется универсальных решений, чтобы можно было сделать простой переносимый бинарик в итоге остановился на Ди т.к. ве остальное со своими проблемами какими-то

0x9d8e
14.11.2016
19:39:26
Как раз сейчас упёрся в производительность вычислений над довольно малым количеством данных. На сервере норм, а в браузере переписанный на js код подтормаживает (но конечно быстрее чем на сервер каждый раз бегать). То ли js такой медленный то ли я им так владею.

Dmitry
14.11.2016
19:40:40
Вот геопортал один сделал простенький (серверная часть на Ди), но в итоге в JS все обновилось, и апгрейд очень геморный, а серверную часть чертыхаясь сделал, но она с багами и где-то падает, а я даже логгер не могу нормальный прикрутить

Dmitry
14.11.2016
19:41:27
Да там с даннмии работать очень неудобно. Я посмотрел и какие-то тривиальные вещи вообще через зад делаются

Dmitry
14.11.2016
19:42:40
В итоге Ди для меня слишком низкоуровневый, а ничего другого, что бы лучше подходило на рынке нет

0x9d8e
14.11.2016
19:44:40
А бекенд на чем? Почему не переписать этот блок в нативный модуль?
На питоне бекенд. На сервере то проблем нет, а вот в браузере тормоза начались. В принципе знаю как переписать js чтобы не тормозил, но во-первых это уже не будет почти тупым портированием (т.е. любое изменение вносить дольше, да и апи разный), а во-вторых код будет более трудным в отладке и понимании.

0x9d8e
14.11.2016
19:48:31
Профайлером смотрел?
Пока нет, вот закончу уже до стадии "всё работает" и займусь. Тут есть места, где надо наитупейший кеш на уровне вызова метода всунуть, если не хватит, придётся поискать ещё затыки и в крайнем случае в более процедурный стиль переписать.

Google
Dmitry
14.11.2016
19:49:04
Да только ноду под кучу задачь из серии бинарик написать не прицепишь

Dmitry
14.11.2016
19:50:06
Я почему-то его проскочил

А сейчас уже не понимаю — есть ли смысл переучиываться

т.к. на Ди время было вгрохано уйма

Сейчас разве что Swift рассматриваю как вариант

т..к. за него хорошо платят

Pavel
14.11.2016
19:51:55
Впринципе языки похожи процентов на 60-70

если ты разрабатываешь хорошо на одном, то и на другом будешь

там примерно те же классы, объекты, наследование, модульность

исключения, типизация

те же паттерны

Dmitry
14.11.2016
19:52:41
Ну вот да, только никак учить его не сяду

после смены работы время вообще нет на что-то новое

старое бы не забыть

Dmitry
14.11.2016
19:54:03
А на новой работе тоже ситуация интересная. Как таковой нужен только Питон — а с остальными языками неразбериха

Dmitry
14.11.2016
19:54:36
т.е. контора не разработческая. Там просто задачи по разработке есть

Google
Dmitry
14.11.2016
19:54:56
ну вот пока да юзаю...

Oleg
14.11.2016
19:57:28
Питон же рулит

Так все говорят)

0x9d8e
14.11.2016
19:58:44
Странно кстати, что никто не делает (наверняка делают) средств чтобы упаковать интерпретируемые скрипты (или лучше байт-код) вместе с интерпретатором в бинарник.

Dmitry
14.11.2016
19:59:36
только там столько зависимостей, которые я думаю тупо не заведутся

0x9d8e
14.11.2016
20:00:19
Хотя как-то с lua'шным игровым движком игрался (love2d), там игра как раз в один "бинарник" (на самом деле как раз бинарник с zip-архивом склеивается и всё как я понял) упаковывается.

Dmitry
14.11.2016
20:01:04
вот да, луа кажется годным и понятным языком

0x9d8e
14.11.2016
20:01:08
То есть роботодателю ещё и не всё равно как именно получен этот бинарник?

Oleg
14.11.2016
20:01:31
Для луа есть клон ноды.. Хотя блин голая нода это несколько файлов

Node.exe

Oleg
14.11.2016
20:01:53
Щас даже проверю

Да, node.exe

0x9d8e
14.11.2016
20:03:28
Мне в луа не понравилось то, что большинство либ мёртвые велосипеды и в итоге на каждую ерунду приходится писать ещё один мёртвый велосипед . Да ещё и с ООП такие дела, что вариантов оного 100500 и естественно не шибко совместимых.

Dmitry
14.11.2016
20:03:59
Кому интересно вот мой портал 188.227.17.149:8080 работает только вход под пользователем

Oleg
14.11.2016
20:03:59
https://luvit.io

https://luvit.io
Вот такая шняга есть

Dmitry
14.11.2016
20:04:20
кучу всего остального включая поиск космоснимков тоже не работает

Google
Dmitry
14.11.2016
20:06:39
к теме про логгер. заработал такой вариант: fLogger.put(e.msg);

хер его знает как оно там будет в реале... и вообще почему падает

Oleg
14.11.2016
20:09:11
Щас сделаю тебе портабл ноду

Заодно и мне пригодится

В TypeScript какраз же сделали защиту от нуллабилити, которую в D доколе завезут? чтобы меньше падало

Без PATH не прокатывает. Обломчик. А что там с вычислениями на Го?

Да там с даннмии работать очень неудобно. Я посмотрел и какие-то тривиальные вещи вообще через зад делаются

Tsundershark
14.11.2016
20:27:48
Так ведь от такая штука есть: https://github.com/igorklopov/enclose

Oleg
14.11.2016
20:37:10
Admin
ERROR: S client not available

qwe
15.11.2016
03:57:03
@DmitryBubnenkov если приходится считать много, то использовать Python нормально. Там есть Numpy, Scipy. Эти либы работают быстро. Если делаешь уже что-то за их рамками и без этого не обойтись, то тогда приходится уже брать компилируемый ЯП.

Без PATH не прокатывает. Обломчик. А что там с вычислениями на Го?
Там нельзя перегружать операторы и нет static assert. Из-за чего неудобно перемножать матрицы.

Dmitry
15.11.2016
04:47:50
Про питон то это понятно, но у меня все что в нем нужно вшито в ПО с которым я работаю. Там по факту куча расширений над Питоном для работы с геоданными

Кстати а в шарпе и яве где бы логгер нужно было объявить чтобы он везде был виден?

Grigirii
15.11.2016
11:07:01
я немного пропустил момент, но почему это нельзя? отдельный класс синглтон, инициализирующийся в самом начале. импорт этого класса отовсюду, где нужен логгер и поехали. так в андроиде логер стандартный работает, так у всех консольный вывод работает. в чём проблема то?

Oleg
15.11.2016
11:08:10
с чего вдруг?
Такой, чтобы не делать импорт, как Дмитрий хочет

Google
Oleg
15.11.2016
11:09:12
вообще никого не понял...

я прочитал, Дмитрий создаёт в app.d логгер и хочет его использовать везде

но зачем он объявляет его в app.d для меня пока загадка

объявить то его можно в специальном модуле mymegalogger.d, его в свою очередь импортировать, а уже в app.d перед всем кодом, который использует этот логер просто его создать

Oleg
15.11.2016
11:11:14
Так ты кодом показывай как это сделать, и чтобы работало с vibed

Oleg
15.11.2016
11:12:04
vibe-d другая истори, там своё (рыжее) видение всего происходящего

но сейчас найду

мне кажется абсолютно так же

ну почти

сейчас код напишу и скину

Grigirii
15.11.2016
11:14:37
без импорта по месту использования обойтись не получится. в лучшем случае сделать public import в модуле, который отовсюду импортится. это сделает импорт логера неявный, что помоему хуже. конкретно в vibe.d есть своя система логирования и можно просто написать свой, дальше позвать http://vibed.org/api/vibe.core.log/registerLogger и пользоваться стандартными функциями логирования

Oleg
15.11.2016
11:18:41
безумно медленно тянет из инэта 30ый vibe =(

Oleg
15.11.2016
11:21:25
app.d import vibe.core.log; import other; void main() { func(1); setLogFile("output.log", LogLevel.trace); func(2); } other.d import vibe.core.log; void func(int i) { logInfo("call func %s", i); }

после setLogFile("output.log", ...) всё выводится не только на консоль, но и в файл 'output.log'

Oleg
15.11.2016
11:23:56
сс @DmitryBubnenkov

Oleg
15.11.2016
11:26:50
а вообще же можно stdout переопределить в файл

а можно и вообще ничего не менять, а пользовать journalctl, который сохраняет вывод программ, запущенных через systemctl (systemd)

а можно и не использовать journalctl, а просто myfile > output.log

Oleg
15.11.2016
11:30:34
А вдруг у него винда, а stdout когда это стал потокобезопасный?

Дмитрию еще нужно чтобы вайбед в лог креши выводил

Это както делается?

Oleg
15.11.2016
11:41:22
смотря какие крэши

Страница 104 из 719