Про герконы еще из детства воспоминание, как батя принес несколько с работы (конец 80х однако, где еще их тогда он мог добыть ;)), мы спаяли простую схему — геркон, лампочка и батарейка, и запрятали в картонную коробку, которую на следующий день я торжественно отнес в садик, где целый день вызывал всеобщий восторг, поднося магнитик к определенному месту на коробке, после чего лампочка загоралась. Вот такие простые развлечения были у нас в детстве )))
В статье, на мой взгляд, не хватает самого главного — как организовать процесс деплоя приложения. Одно дело сгенерировать болванку, а совсем другое — сделать удобный процесс выкатки новых версий в продакшен. И тут есть множество различных вариантов, интересно было бы посмотреть ваш подход к данной задаче.
Будет немного странно наверно платить $19 в месяц за мониторинг сервера, который стоит ~ $5 в месяц. Да, у них есть триал, но триал обычно лимитирован по времени (не стал уточнять, потому что для этого надо регистрироваться)
Я вот много лет был убежденным сторонником windows. Дело в том, что в те времена, когда я только учился пользоваться компьютером, альтернативы по большому счету не было. Да, мне попадали в руки дистрибутивы линукс, и я их даже устанавливал себе на компьютер дома. Но что с ним делать дальше? Под виндовс были доступны тонны софта с варезных дисков, фотошоп, саундфордж, брайс3д (классная штука для рендеринга красивых «фотореалистичных» ландшафтов) в которых я зависал часами. Я не был тогда ИТшником или программистом (если что — речь про старшие классы школы и первые курсы института), скорее ИТ-энтузиастом, и винда мне давала все, что мне было надо для удовлетворения любопытства.
А линукс пугал, реально, командная строка вызывала фрустрацию и чувство паники. Если винду можно было исследовать кликая мышкой в рандомные настройки и смотреть, что выйдет, то консоль просто не давала никакой мысли для размышления, никак не раскрывала своих возможностей. Учтите, что в те времена интернет был по карточками, а книга по линуксу, которую мне дали почитать никак не помогла. Короче я остался на винде, и когда закончил институт и на работе понадобилось писать программы, я не особо думая выбрал .net (о чем не жалею кстати) — опять же просто потому что вижуалстудия была просто шикарна и был полностью офлайновый msdn.
Линукс в моей жизни появился значительно позже — когда мне понадобилось поднять vps и оказалось, что vps с виндой стоят значительно дороже, чем с линуксом. Переборов свои страхи я начал изучать — спасибо гуглу и особая благодарность стэковерфоу. Было тяжело, но постепенно запомнились основные команды и стало легче. И я понял за что любят линукс.
И я тоже его полюбил. Но я никогда не поставлю его себе в качестве десктопа. Потому что винда шикарна в этом качестве. Потому что я чувствую здесь себя как рыба в воде. И идея поменять ее на линукс снова вызывает у меня давно забытые чувства беспомощности и фрустрацию.
Точно. А потом решили отрефакторить название переменной, и вот уже у Беспокойного Энди, который уже месяц медитирует каждый день стало nan сессий или undefined сессий… А у Нервного Джо, который скачал приложение только сегодня, все нормально работает. Разбирайтесь теперь с этим. И как там TS, сильно помог? До сих пор спокойно спится?
Если что, это не критика в сторону TS (обожаю его). Просто по статье так прямо он все проблемы решает и можно расслабиться…
Мне почему-то вспомнился анекдот, который заканчивается словами «Наверно что-то не так с консерваторией». На мой взгляд перелом произошел, когда частный бизнес понял, что для развития ему нужна наука и там появились деньги не только государственные, но и частный капитал. Вот в этот момент туда устремились ребята, для которых важно не «удовлетворять собственное любопытство за счет государства», а делать карьеру и получать гранты, а для этого нужна результативность любой ценой.
я могу спать немного спокойнее, зная о том, что переменные в моём проекте не могут совершенно неожиданно менять свои типы.
Я вот не могу спать спокойно, потому что теперь у меня куча забот чтобы правильно все это хозяйство типизировать.
Когда сидишь и разбираешься, почему tsc выдает ошибку там, где все правильно и на js код в этом месте работает без проблем, иногда очень жалко времени.
Стоит выбирать транспорт (если уж брать аналогию с транспортом), который довезет тебя до пункта назначения оптимальным образом и без особых проблем в пути. И да — иногда это может быть велосипед.
На мой взгляд мидлвары появились как раз потому что их было вот так вот просто реализовать. Ну а потом, как говорится, понеслось, и вот — все как в тумане, а потом вдруг оказывается, что мы потеряли контроль на реквестом из респонсом и любой из 100500 разработчиков, которые приложили руку к созданию мидлваров, взятых в наш проект из сомнительных репозиториев, которые не обновлялись с 2017 года, может сделать, пусть ненароком, практически все что угодно с данным до того, как они доберутся к тому месту в программе, которое мы контролируем. И словив проблему, мы будем дебажить до рези в глазах эти цепочки вызовов мидлвар в попытке понять, что происходит.
Я думаю самое главное зло, это сама концепция цепочки middleware и то, что мидлвары вообще могут что-то менять в реквесте. Что, на мой взгляд могло бы сделать эту концепцию немного более приемлемой:
1. Концепция контекста. Сам реквест readonly, если надо передать что-то дальше по цепочке — для этого есть объект контекста.
2. Мидлвара может добавлять свою информацию в контекст, и может читать то, что добавлено другими мидлварами, которые установлены для нее в зависимостях, что приводит нас к следующему пункту.
3. Должна быть реализована система зависимостей, т. е. например, авторизация может зависеть от аутентификации, а аутентификация от мидлвары, которая вытаскивает Auth token из реквеста.
Если бы изначально такое было сделано в экспрессе, было бы сейчас значительно меньше проблем.
Давайте не будем о грустном ))
Охотно верю, но все равно нет ))
А линукс пугал, реально, командная строка вызывала фрустрацию и чувство паники. Если винду можно было исследовать кликая мышкой в рандомные настройки и смотреть, что выйдет, то консоль просто не давала никакой мысли для размышления, никак не раскрывала своих возможностей. Учтите, что в те времена интернет был по карточками, а книга по линуксу, которую мне дали почитать никак не помогла. Короче я остался на винде, и когда закончил институт и на работе понадобилось писать программы, я не особо думая выбрал .net (о чем не жалею кстати) — опять же просто потому что вижуалстудия была просто шикарна и был полностью офлайновый msdn.
Линукс в моей жизни появился значительно позже — когда мне понадобилось поднять vps и оказалось, что vps с виндой стоят значительно дороже, чем с линуксом. Переборов свои страхи я начал изучать — спасибо гуглу и особая благодарность стэковерфоу. Было тяжело, но постепенно запомнились основные команды и стало легче. И я понял за что любят линукс.
И я тоже его полюбил. Но я никогда не поставлю его себе в качестве десктопа. Потому что винда шикарна в этом качестве. Потому что я чувствую здесь себя как рыба в воде. И идея поменять ее на линукс снова вызывает у меня давно забытые чувства беспомощности и фрустрацию.
Если что, это не критика в сторону TS (обожаю его). Просто по статье так прямо он все проблемы решает и можно расслабиться…
Я вот не могу спать спокойно, потому что теперь у меня куча забот чтобы правильно все это хозяйство типизировать.
Когда сидишь и разбираешься, почему tsc выдает ошибку там, где все правильно и на js код в этом месте работает без проблем, иногда очень жалко времени.
Все правильно, если знаешь яваскрипт, то в каком-то смысле знаешь ноду. А яваскрипт они судя по всему знали, раз у них в стеке был англяр.
1. Концепция контекста. Сам реквест readonly, если надо передать что-то дальше по цепочке — для этого есть объект контекста.
2. Мидлвара может добавлять свою информацию в контекст, и может читать то, что добавлено другими мидлварами, которые установлены для нее в зависимостях, что приводит нас к следующему пункту.
3. Должна быть реализована система зависимостей, т. е. например, авторизация может зависеть от аутентификации, а аутентификация от мидлвары, которая вытаскивает Auth token из реквеста.
Если бы изначально такое было сделано в экспрессе, было бы сейчас значительно меньше проблем.