V
изучение алгоритмов - очень интересное занятие, развивает ум и дает практические задачи для повышения навыка кодирования на каком-либо языке
Bald
Anonymous
🏁Александр
пирожок знаете где? 🙂 Что мешает почитать это по необходимости
Bald
они азимут движения в 9 бит запихали. Э - экономия
🏁Александр
если ты не тупая не обучаемая пробка, быстро всосешь
V
есть такое желание у некоторых людей, называется саморазвитие
heavycharged
heavycharged
я почти не пишу алгоритмами, в основном всякие CRUDы, но с удовольствием почитываю за алгоритмы, и прочее.
🏁Александр
Anonymous
а потом вы вместе за руки пойдете писать парсеры за еду? 🙂
да со мной так и было уже в одной компании. Руководитель, спрашивая за эти вот алгоритмы, думает что он именно таким образом найдёт того, кто решит все его проблемы. Хотя для меня это очевидно бред полный. Нужно искать человека с опытом по твоим технологиям, по каким-то фреймворкам, по достижению конкретных задач.
🏁Александр
для меня только 1 критерий для изучения чего либо, даст ли это +X денег к окладу или нет. И сколько времени нужно на этот X, и можно ли быстрее по другому
Daniel
тогда пройдите в JS-еры. там каждый новый фреймворк приносит плюс к окладу
doc
Daniel
[:|||:]
V
человек не только должен уметь бизнес-задачи решать, но и в команду влиться. по ответам на такие вопросы и знаниям становится понятно насколько уживется данный товарищ
🏁Александр
(нет)
V
еще как, я вот вас послушал и понял, что мы бы не сработались
Мерль
Математику уже затем учить надо, что она ум в порядок приводит
🏁Александр
я вспоминаю одного фронтендера, он все угрожал менеджеру физической рассправой (встретить после работы) 🙂
🏁Александр
но это не отменяет его профессионализма
heavycharged
просто кто-то материалист, и забил на развитие. если будут платить за хелло-ворлды, будет писать хелло-ворлды.
Daniel
ну не. мы это делаем за деньги, в основном.
просто денег, как ни странно, бывает достаточно, чтобы уже не нырять в каждую встречную выгребную яму
Alexandr
Пока умные головы тут собрались, подскажите, плиз.
Как лучше организовать такую вещь: Есть данные которые должны переодически обновляться из редис. Эти данные используются в разных местах(только чтение) и обновляться будут через метод update. Ну как хранить эту структуру? переменную пакета?
Сейчас я сделал так, https://play.golang.org/p/2h3Fuh8GsuG
Pauline
heavycharged
у меня деньги вторичны. первое - это кайф от работы. а кайф от работы, это наверное узнавать новое, знать больше, делать крутые вещи.
Daniel
Alexandr
а где читатель?
читатель будет в этом же пакете в разных местах, а может и не в этом пакете
Alexandr
явного обращения к структуре из другого пакета не будет
Daniel
а я хочу увидеть, будет ли в нем взятие лока
Daniel
и, если будет, то какое
Alexandr
на чтение лока не будет, лок на записи только
Alexandr
хотя если подумать, то лок нужен, ну тогда RWLock()
Anonymous
Anonymous
спасибо почитаю.
Daniel
Daniel
тогда я предложил бы сделать так: в atomic.Value положить указатель на массив, и подменять его в апдейтере.
Alexandr
Daniel
ага
Alexandr
ага
чтоб избавиться от mutex ?
Daniel
ага
Alexandr
Daniel
атомик в этом варианте (один редкий писатель, много читателей) будет существенно быстрее
Daniel
и, главное, никакакой очереди читателей, пока апдейтер новые данные готовит
Мерль
Daniel
какая такая потеря данных?!
Мерль
какая такая потеря данных?!
Если две горутины одновременно попробуют подменить массив в атомик, то часть апдейтов может быть потеряна
Мерль
Но, скажем так, в данном конкретном случае, если я правильно понимаю, вполне может подойти
Daniel
это вообще работает только если апдейтер один, конечно
Daniel
но тут-то он один
Oleg
всем привет, кто может подсказать, какие есть основные юзкейсы Gosched? возможно я не совсем понял принцип работы, и всё очень очевидно, но в любом случае, буду благодарен за объяснения)
Daniel
в одном-единственном случае его имеет смысл применять - когда ваша горутина крутит вычисления долго, и не вызывает ни внешних функций, ни ввода-вывода. тогда, для улучшения распределения процессорного времени между горутинами, имеет смысл в каком-нибудь из циклов звать Gosched
Oleg
Daniel
когда ей шедулер управление вернет - тогда и продолжает
Мерль
Danila
Можно ли на go писать модули для python?
Stanislav
можно, но не нужно
კაცი
Danila
Roman
там хоть синтаксис отличается, а то все одно и то же
ainu
По моему, в нашем стане предатель
Dmitry
пздц, как будто пользователь будет на твой код смотреть
Anonymous
О, меня просили написать баббл сорт в стартапе. Сказали нет, что у него О(n^2). Полезли гуглить, удивились и сказали круто!
Денег все равно не дали, только опцион) Ну, они и умерли через пару месяцев))
Антон
Антон
Ах да, это ж Go, тут не парсер-комбинаторов
Антон
Можно ли на go писать модули для python?
Можно, но не нужно. Модули для Питона пишут тогда, когда скорости нативного Питона не хватает. А Go мало того, что не самый быстрый, так ещё и функции с сишным ABI вызывает с большим оверхедом, плюс сами эти функции будут на голых указателях, что делает сборщик мусора не особо полезным
Daniel
go довольно быстрый, если с питоном сравнивать
Daniel
но лучше не модули писать, а сервисы
Daniel
а вам бы все монолиты пилить...
Антон
"Вам" — это кому?
Daniel
тем, кто данные по сети гонять не хочет
Anonymous
Подскажите, пожалуста, по sql. У меня есть таблица, в которой есть столбцы id и user. Когда я делаю запрос:
c.db.QueryRow("SELECT id FROM users WHERE user = 'first'"), мне возвращается ErrNoRows.
Но когда я в том же запросе пишу user в кавычках, то я получаю правильный результат:
c.db.QueryRow(SELECT id FROM users WHERE "user" = 'first')
Почему название столбца нужно брать в кавычки, ведь во всех примерах их пишут без кавычек? База Postgre
Daniel
скорее всего, дело не в кавычках