В глубине веков, когда .NET был молодым, новым и любимым разработчиками корпоративного программного обеспечения, была идея An Idea. Некоторые разработчики, которые любили .NET и C #, но также хотели расширить свой кругозор, пытались перенести экосистему в те места, где Microsoft не собиралась переходить к ней: на другие платформы; смешивание с системами, отличными от Windows, IIS, SQL Server и MSMQ; использование библиотек, выходящих за рамки самого Framework, а также внутренних ORM и веб-фреймворков Microsoft. Идея стала известна как ALT.NET, и усилия тех, кто ее продвигал, были доблестными, но они боролись с неумолимой волной и потерпели неудачу.

Многие из этих разработчиков, разочарованные инерцией и апатией, с которыми они столкнулись, искали удовлетворения где-то еще в объятиях более открытых платформ и более предприимчивых сообществ. Некоторых соблазнило дружелюбие Ruby и простота Rails. Некоторые увидели возможность в Node.js. Третьи намеревались исследовать взрывной рост языков, нацеленных на якобы более открытую JVM. Большинство из них, вероятно, купили MacBook. Мечта об ALT.NET мелькнула и выглядела наверняка умирающей (хотя все еще есть кое-какие препятствия, усеянные точками вокруг мира).

Но потом случилось забавное. Что-то давно дремлющее шевельнулось в Редмонде; отважная банда мягкотелых решила дать отпор застою в своем пуле. Они хотели попытаться вернуть сердца и умы разработчиков, которые их оставили. Они начали создавать новый .NET: такой, который мог бы конкурировать с Ruby и Node, Scala и Go; что еще важнее, тот, который был разработан открыто при участии сообщества. Все началось с Project K, попытки создать версию ASP.NET MVC, свободную от оков ужасного System.Web, но со временем превратилось в нечто более амбициозное: воссоздание самого .NET как кроссплатформенного, платформа с открытым исходным кодом, с инструментами командной строки и поддержкой многоплатформенного редактора.

Это не было гладко. Раннее видение простоты, подобной Node, было связано с более широким видением расширения нового .NET на всю экосистему, включая старый .NET, UWP и Xamarin. Фальстартов было больше, чем плей-офф «Сихоукса», и до сих пор не ясно, когда все обещанные элементы наконец-то будут на своих местах. Но с выпуском Visual Studio 2017 7 марта, который наверняка будет иметь если не законченный, то, по крайней мере, почти финальный релиз-кандидат .NET Core 2.0, похоже, что у нас может быть настоящая стабильная платформа для начать продвигаться вперед.

Что может быть лучше для того, чтобы возродить дух ALT.NET?

А как будет выглядеть ALT.NET в 2017 году?

Вот мое мнение; Я надеюсь вскоре увидеть больше разнообразных идей от сообщества.

Я хочу, чтобы приложения .NET работали в современных облачных средах; как в Linux, так и в Windows; в Docker Swarms и Kubernetes Clusters и на «бессерверных» платформах; на AWS, Google Cloud и Joyent, а также в Azure; на ARM, а также на Intel.

Я хочу видеть решения .NET, построенные как микросервисы и распределенные системы, использующие шины сообщений и распределенные кеши, а также акторы и гексагональные архитектуры, с библиотеками для всех видов вспомогательных услуг и инфраструктуры.

Я хочу, чтобы разработчики .NET так же восхищались последними разработками в области разработки программного обеспечения, как и их коллеги из других экосистем; Я хочу увидеть, как они работают на MacBook или Linux, а также на Windows, используя Visual Studio Code или Jetbrains ’Rider, а также Visual Studio 2017.

Я хочу, чтобы C # и F # использовались для создания таких вещей, как Redis, Kafka или Elasticsearch, а также бизнес-приложений, приложений и игр.

Я хочу увидеть .NET, который принадлежит не только Microsoft; тот, у которого есть процветающее и мотивированное сообщество, двигающее его вперед, толкающее в новых направлениях, заставляющее делать то, о чем раньше никто не думал.

Итак, давайте возродим идею ALT.NET. Давайте посмотрим, что мы можем с этим сделать, где мы можем это сделать и как далеко мы можем это продвинуть. Давайте проводить встречи, на которые люди хотят приходить, потому что им не терпится увидеть, что происходит в нашем мире. Давайте попробуем Nancy вместо MVC, Postgres вместо SQL Server или Paket вместо Nuget. Давай повеселимся.