paaleksey

8 февраля 2016, Worldwide

# Понедельник 34 твита

Всем привет! С вами @paaleksey, в настоящий момент простой Go-разработчик, организатор встреч Golang Moscow и соведущий @GolangShow

8:32

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

8:32

Ну и говорить мы будем не только о Go, так что не отписывайтесь, передоза Go у вас не будет. :)

8:33
@backendsecret а какой была твоя жизнь до Go?

Basic, Pascal, C, C++, Ruby, Python и многое другое. А также большие, маленькие и свои компании и стартапы. twitter.com/viatsko/status…

8:44
@backendsecret @paaleksey @GolangShow привет, а можно подробнее про встречи? я бы посетил одну из таких :)

Проще всего вступить в meetup.com/Golang-Moscow/ и ждать. twitter.com/anton_davydov/…

8:46

Из других ресурсов сообщества стоит отметить Slack-чат 4gophers.ru/slack, сам 4gophers.ru и группу groups.google.com/forum/#!forum/…

8:49
Ребята, какой (и почему) ЯП для бекенда лучше всего выучить ещё? Пишу на ноде. Кложур? Питон? Гоу? @backendsecret

С ноды многие уходят на Go: zef.me/blog/6191/the-… Сам я писал на ноде, но после Twisted совершенно не впечатлился twitter.com/notarseniy/sta…

8:51
@backendsecret а почему гоу? Какие альтернативы? (вдруг уважаемые читатели помогут в этом вопросе?)

1/2 Если в сравнении с нодой, то (1) Go как язык лучше, чем JavaScript (wtfjs.com) twitter.com/notarseniy/sta…

10:25

2/2 (2) работа с concurrency и сетью в Go просто прекрасна.

10:25
@backendsecret Разве есть что-то хуже JS?

1/2 It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: … twitter.com/pinyslutty/sta…

10:27

2/2: as potential programmers they are mentally mutilated beyond hope of regeneration. © Edsger W. Dijkstra

10:27

Какой язык вы в основном используете при разработке бэкенда?

10:36

И, к слову, собеседую людей, я понял, что из-за распространения VM люди перестали понимать разницу. В чём она, по вашему?

10:38
@backendsecret мы же сейчас говорим про те VM которые "virtual machines" (и CT - Containers как их антипод) ?

Те VM, которые Virtual Machine в JVM (Java Virtual Machine) и YARV (Yet Another Ruby VM). twitter.com/en_austin/stat…

10:43
@backendsecret в связи с добавленным ниже, вопрос должен звучать «Какой язык, как вам кажется, вы в основном используете при разработке…»

Пожалуй. Так в чём разница, на ваш взгляд? twitter.com/devgru/status/…

11:05
@backendsecret VM берет управление системными примитивами на себя (память, процессы, потоки).

Ок, но как это связано с интерпретируемостью и компилируемостью? twitter.com/alexgorkunov/s…

11:06
@backendsecret JIT относить к компилируемым, как я понимаю?

На мой взгляд, ни VM, ни JIT не влияет на компилируемость/интерпретируемость _языка_ (в отличии от реализации). twitter.com/listochkin/sta…

11:08
@backendsecret вообще не связанные понятия. Для C есть интерпретаторы, для Java - ahead-of-time компиляторы.

Давайте для простоты называть язык компилируемым, если для него можно написать компилятор. Интерпрет. можно всегда twitter.com/listochkin/sta…

11:15

Для каких языков нельзя написать компилятор? Что мешает?

11:17
@backendsecret не пробовали labix.org/gopkg.in как замену godep?

Мы используем gopkg.in, но это не замена. Пакет должен быть готов к тому, чтобы его импортировали через gopkg.in. twitter.com/alexgorkunov/s…

11:20
@backendsecret Для русского.
11:21
@backendsecret компилятор можно написать для любого языка.

Можно и так сказать, но в некоторых случаях он будет содержать в себе интерпретатор. :) Это не тру компилятор twitter.com/listochkin/sta…

11:22
@backendsecret но ты так и не ответил на мой первоначальный вопрос: Just-In-Time Compiler - это Compiler?

JIT – это свойство реализации, но не языка. twitter.com/listochkin/sta…

11:26
@backendsecret язык не может быть “компилируемый” - реализация может быть

1/3 Очень распространённое мнение, но я позволю себе с ним не согласится. twitter.com/listochkin/sta…

11:33

2/3 На мой взгляд, фундаментальная разница между компилируемыми и интерпретируемыми языками заключается в четырёх буквах – eval.

11:33

3/3 Если в языке есть возможность выполнить строку кода на этом языке, то в реализации обязан быть интерпретатор.

11:34
@backendsecret эм, если он компилирует, то что именно не тру? шашечки, цвет, фломастер?

Является ли компилятор компилятором, если результирующий код содержит интерпретатор этого языка? :) twitter.com/iamstarkov/sta…

11:35

Пока что в опросе побеждают интерпретируемые языки – 70% против 30%. Почему вы предпочитаете их? Что определило выбор?

13:22
@backendsecret быстрее старт и разработка, когда скорость выполнения ещё не так многое решает. Потом да, приходится перепиливать (:

1/2 На Go скорость старта и разработки почти как у Ruby и Python, гораздо выше чем у других компилируемых языков twitter.com/vanadium23/sta…

13:35

2/2 Жертвовать приходится немногим. Лично для меня это одна из киллер-фич.

13:35
@backendsecret а какого рода у вас проекты на го?

HTTP API, WebSocket API, CLI – все самые типичные области его применения. twitter.com/alexgorkunov/s…

13:43
@backendsecret в http-api испольуете json? Как огранизуете презентационный слой (model->json)?

Всем советую посмотреть на protobuf v3, в котором есть официальное отображение из/на JSON: developers.google.com/protocol-buffe… twitter.com/alexgorkunov/s…

14:02
@backendsecret например в ruby есть rabl, activemodel-serializers а у вас?

Нам хватает либо тегов на структурах данных, либо методов MarshalJSON/UnmarshalJSON на ней: golang.org/pkg/encoding/j… twitter.com/alexgorkunov/s…

14:04

Пожалуй, к вечеру стоит сообщить, что свои первые строчки на Go я написал, когда работал в Microsoft. :)

16:16

# Вторник 6 твитов

Утро для автора этого твиттера началось с письма счастья от DigitalOcean, в связи с чем у меня к вам опрос: вы проверяете свои бэкапы?

5:59
@backendsecret единственный способ проверить бэкап раскатать бэкап. До того как бэкап не раскатан он не бэкап.

Как показала практика, делать это нужно регулярно, а не один раз. twitter.com/cluevick/statu…

6:10
Реальная катастрофа. Ни одного желающего на вакансию программиста с зарплатой в 100000 рублей. moikrug.ru/vacancies/1000…
8:04
@backendsecret автоматически тестирую с Ansible

Мы теперь тоже будем, ага :( twitter.com/dimaip/status/…

8:12

Между тем Amazon сделал два больших анонса: aws.amazon.com/ru/lumberyard/ и aws.amazon.com/ru/gamelift/ Второе – опять бэкенд без опыта бэкенда

15:47
@backendsecret Это же отлично. Меньше бакендов, больше продуктов.

И меньше бэкенд секретов :( twitter.com/freiksenet_ru/…

16:00

# Среда 9 твитов

Утро для автора это твиттера опять началось с счастья, но на это раз не в переносном смысле. У меня сегодня ДР. :)

6:49

Сегодня я должен стать на год умнее. Предыдущие ведущие, откройте секрет: как вы умудрялись вести этот твиттер и работать?..

6:51
@backendsecret что думаешь о backend as a service?

Для разработчиков мобильных приложений – хороший способ валидации идеи. Но если полетело, надо быстрее слезать. twitter.com/nemons/status/…

7:12
@backendsecret потому, что он рано или поздно закроется? :)

И это тоже. :) Ещё оно будет вас ограничивать. И стоимость будет расти стремительно. twitter.com/operatino/stat…

7:34
@backendsecret хватит работать, давай жги в Твиттер! Я слышал что в GAE можно бесплатно захостить go и даже с БД. Какие ограничения?

Бесплатно только первая доза или с очень серьёзными квотами: cloud.google.com/appengine/docs… twitter.com/petrmyazin/sta…

8:02

Ну и ограничения самого AppEngine, который PaaS. Например, Go там всё ещё 1.4.

8:04
@backendsecret есть личный кабинет для b2b клиентов,max 1-2K хитов в день и база ~30К документов (счета/акты) - это влезет в бесплатный GAE?

Технически – да. Но у вас не будет никакой поддержки и SLA, что критично для b2b. twitter.com/petrmyazin/sta…

10:57

Вы, наверное, часто задумывали сделать свой aaS, лучше существующих. Мой вам совет – сначала продайте его пользователям, а потом делайте.

11:07
@backendsecret Если я продам пользователям то, чего у меня самого нет, я уже никогда не буду ничего делать :D (куча историй с кикстартера)

Нет, вы же продадите, например, подписку на месяц. Для жизни это мало. :) twitter.com/webholt/status…

11:12

# Пятница 9 твитов

Наверняка в вашем бэкенде есть метрики и логи. Они вместе или отдельно? Извлекаете метрики из логов? (опрос)

8:56

Опрос идёт, но вы так же можете писать почему вы так делаете. Буду ретвитеть.

9:19
@backendsecret я 5 лет назад сделал aaS, который перед этим продал самому себе. С тех пор 5 лет им пользуюсь каждый месяц (менеджер финансов

А налоги заплатили с продажи? :) twitter.com/fodoj/status/6…

13:11

Ок, большинство собирает метрики отдельно, а логи отдельно. А тексты ошибок и бэктрейсы исключений? (опрос)

13:22
@backendsecret с fremium легко налоги платить

Под «продать» я имел ввиду за деньги, чтобы можно было зарабатывать. Себя убедить пользоваться своим aaS несложно twitter.com/fodoj/status/6…

13:38
@backendsecret у меня они прилетают сразу в тикет в хелпдеске :)

При проблемах на сервисе ложится и хелпдеск? twitter.com/strizhechenko/…

13:39
@backendsecret по логам можно\нужно делать статистический анализ, а по бек-трейсам дебажить

А зачем по логам статический анализ? Для метрик? twitter.com/d1b/status/698…

13:40
@backendsecret дык это же error.log

А как собирать с нескольких серверов? twitter.com/de_gis/status/…

15:53

Прямо сейчас мы пишем очередной выпуск @GolangShow, подключайтесь! golangshow.com/online/

18:58

other