.NET Support on Heroku(blog.heroku.com) |
.NET Support on Heroku(blog.heroku.com) |
I have found Heroku to be going downhill a lot, but after moving away from it I often feel a bit of regret from this decision. You get _so much_ operational niceness out of the box with Heroku.
I'm having trouble interpreting that blog post to understand what it might actually mean for me or if I'd want to use it or what advantages it would have, looking forward to learning more.
> Today, OCI images are the new cloud executables. By moving to OCI artifacts, all Fir apps will be using images with compatibility across different environments. This means you can build your application once, run it locally, and deploy it anywhere, without worrying about vendor lock-in or compatibility issues.
Is this something I can try out locally without signing up for heroku first?
Duh. You guys have completely forgotten who your audience is. Your audience is _application developers_. I have no idea what all that mambo jambo means in that article _and thats why I pay Heroku_.
I'm on Heroku because I don't want to know about cloud native and fir and open telemtry are. You tell me I should get excited on Heroku? How about improving your autoscaling options so the narrow response-time-based scaling is not the only option?
All that article tells me is that you guys are maybe improving your underlying infrastructure. Meh. Good for you. From a customer (AKA Application Developer) perspective nothing has changed.
I’ve been working in my spare time to try to create an open source version of this, in case it would be useful to anyone else in the future https://github.com/czhu12/canine
If Heroku works for you, that is good. Ignore my comment.
I really don't think they're losing money on onboarding, but I can totally see an argument for the fixed costs being so high that it doesn't work out.
However, when I was "forced to" use Docker containers instead of custom build packs (Heroku also supports them), I didn't look back: It's a non-vendor-locked, portable, industry standard, which works with every framework of my choice, not just Django and Spring Boot. It also doesn't need an extra effort to support.Net, or anything else for that matter.
https://www.linkedin.com/feed/update/urn:li:activity:7267639...
Why would you bother with Heroku?
GCP isn't well seen in that regard.
Pretty sure you can't build an ASP.NET Core app in Visual Basic.NET (as it lacks support for some modern language features the framework needs).
F# is on the same spot, hence why I nowadays say CLR has changed meaning to C# Language Runtime, the whole mantra of Common Language Runtime and Common Language Specification compliant libraries are now gone.
F# at least is officially supported for ASP.NET Core, and has official ASP.NET Core templates in Visual Studio.
then k8s happened. deis workflows adopts k8s but it's never finished. deis team acquired by Microsoft not long after iirc.
Also see https://devcenter.heroku.com/articles/dotnet-heroku-support-...
.NET is the only (cross-platform) server runtime anyone should consider running Server Apps on.
Both scale to zero, are portable, and allow full use of your language/runtime/framework of choice. Take any app you are deploying to instance compute today and add a Dockerfile and ship it.
AWS App runner comes close, but doesn't have the option to scale to zero.
I wish they had maintained momentum and attempted to price competitively, but at this point its probably too late.
To go along with that we've built and maintain a Rust framework for writing CNBs https://github.com/heroku/libcnb.rs. I maintain the Ruby CNB and so I'm pretty excited to see some of my stuff in action.
> Heroku already supports building and deploying containers
Kinda. Heroku created a container ecosystem before OCI images were a thing. Apps deployed to the current Cedar infrastructure are deployed as "slugs" basically a tgz of the application directory that's loaded onto an LXC container, and unzipped to run on a base image (also called a stack) https://devcenter.heroku.com/articles/slug-compiler.
One big benefit of moving towards a standards compliant future instead of homebrew, is that customers also have access to that ecosystem. That's what enables things like being able to run and debug application images locally. It's the standards and community. We went fast and blazed some trails, now we're aiming to "go far," together with the community.
The other article that's not been linked yet is this one https://blog.heroku.com/next-generation-heroku-platform. It's still not exactly what you're asking for "give me the application features" but it is a little less lingo heavy.
One thing kinda hidden in there:
> and AWS Graviton into the platform.
That means ARM support. Already the Heroku supported buildpacks work with both AMD (x86) and ARM (aarch64). Think mac Intel versus M(1/2/3/4) chips.
> From a customer (AKA Application Developer) perspective
I posted another comment earlier. Local debugging with CNBs is pretty neat. But I also agree, I see this still as an "investment" phase. This is the start of the work, that gets us more fun stuff later.
> How about improving your autoscaling options so the narrow response-time-based scaling is not the only option?
This is not my team, so I'm speaking not from first-hand experience. It's my understanding that Kubernetes has a pretty rich ecosystem for autoscaling. On our current platform, if someone wants to try out an autoscaler, it's a bespoke solution and difficult to try in the wild. Moving to a more standards based and community backed infrastructure means what's easy to do on Kubernetes, should also be easy for us to do on Heroku on the new platform.
I hear that you care about autoscaling options and I'll pass that along. Anything specific in that area?
That is why I point that the change of meaning in C from CLR.
The “classic” buildpacks cannot natively produce docker images but CNBs can https://devcenter.heroku.com/articles/buildpacks.
I guess I was assuming it was computed, not manually entered, therefore it's the most trivial of bugs, and was just trying to have some fun with a bug report
Now do the same in Visual Studio New Project, language F# or VB, without similar community projects.
And companies which strictly choose only whatever comes out of box are unlikely to use F# anyway. The concept itself is incorrect and, I argue, must not be applied beyond ASP.NET Core and EF Core. There are no "first-party" frameworks in many other languages in either case so it is an unfair and flawed argument in the context of .NET.
Do you want a refresh from Visual Studio.NET and further releases until this stop being a thing?