I lament what could have been with heroku. I did some back of the envelope calculations for what it would have cost for my own startup to run on it and it came out to significantly more than what it costs us on aws INCLUDING our dedicated devops guy. They really killed its utility for anything bigger than a hobby project.
As the founder of a local cloud very similar to Heroku, I understand Heroku's limitations. It's a balance between control and convenience. The simpler everything is, the better it's suited for small projects, but the less control you have for complex projects. Unless you're just running a hobby project, you'll be using Kubernetes and similar services with full control and the complexity that comes with it. Heroku uses AWS, which means they can't make computations cheaper, otherwise the economics don't add up.
In my experience, we (I won't advertise) have prices several times lower, and we try very hard to accommodate more serious projects, but 99% of projects are small and consume less than 200 MB of RAM. This is simply the nature of this market and product.
Yeah. It used to be the go-to for starting simple projects. We have quite a bit of other options in this space now, though - GH Pages, Cloudflare workers, Vercel, Netlify, etc etc...
> I lament what could have been with heroku. I did some back of the envelope calculations for what it would have cost for my own startup to run on it and it came out to significantly more than what it costs us on aws INCLUDING our dedicated devops guy.
That's...nuts. o_O
Are you doing something special, do you guys already have a lot of traffic?
I wrote this post - for anyone curious, Heroku's .NET support is built on our open source .NET Cloud Native Buildpack (CNB), which is written in Rust and produces standard OCI images.
You can use it anywhere, even locally, for free. The example in the post uses the .NET 10 file-based app feature we added support for today, so if you want to try the same functionality locally, you can do something like this:
# Create a minimal .NET 10 file-based app
echo 'Console.WriteLine("Hello HN");' > Hello.cs
# Build an OCI image using the .NET CNB
pack build hello-hn --builder heroku/builder:24
# Run it with Docker
docker run --rm -it --entrypoint hello hello-hn
# Output:
Hello HN
No, you are not alone.for non-tech population, it may make sense that .NET 5 is continuation of .NET 4. But the tech crowd knows .net 5 is to .net 4 is what angular 2 is to angular 1.
With .net 4 still in active use, the naming makes it harder
Might be more confusing when you consider that ".NET 5" is actually the continuation of ".NET Core 3.1", not ".NET Framework 4.x"[0].
Microsoft has historically been pretty bad at naming stuff (sometimes hilariously so, see Microsoft PlaysForSure[1] for an example - spoiler: it surely didn't play for long).
The rebranding from .NET Core 3.1 to .NET 5, and from .NET 4.x to .NET Framework, did make sense to me though - and increasingly so as development continues on ".NET > 5" with yearly releases, while ".NET Framework 4.x" is in maintenance mode.
the drop of .NET core branding definitely makes it worse. as the other projects(like asp.netcore, efcore) just can't drop "core" from their names on a whim.
in my opinion, they should have kept "core" branding, but shortened it to ".NET" for marketing and only for marketing.
in a better world, Microsoft would ditch the name ".NET" altogether and invent a new one. like LVM (lightweight virtual machine)
I lament what could have been with heroku. I did some back of the envelope calculations for what it would have cost for my own startup to run on it and it came out to significantly more than what it costs us on aws INCLUDING our dedicated devops guy. They really killed its utility for anything bigger than a hobby project.
As the founder of a local cloud very similar to Heroku, I understand Heroku's limitations. It's a balance between control and convenience. The simpler everything is, the better it's suited for small projects, but the less control you have for complex projects. Unless you're just running a hobby project, you'll be using Kubernetes and similar services with full control and the complexity that comes with it. Heroku uses AWS, which means they can't make computations cheaper, otherwise the economics don't add up.
In my experience, we (I won't advertise) have prices several times lower, and we try very hard to accommodate more serious projects, but 99% of projects are small and consume less than 200 MB of RAM. This is simply the nature of this market and product.
This is exactly why we built https://canine.sh, to try to rebuild Heroku in the open source
We begged heroku for years to lower their prices but they just kept increasing it.
I even showed a rep a side by side comparison of heroku vs raw AWS costs and it was 8x. Absolutely couldn’t justify
Isn't Dokku doing that already?
There are several https://gist.github.com/ptman/1b9e3a992e6c8aeecc86b5f1fd1c5f...
Yeah. It used to be the go-to for starting simple projects. We have quite a bit of other options in this space now, though - GH Pages, Cloudflare workers, Vercel, Netlify, etc etc...
> I lament what could have been with heroku. I did some back of the envelope calculations for what it would have cost for my own startup to run on it and it came out to significantly more than what it costs us on aws INCLUDING our dedicated devops guy.
That's...nuts. o_O
Are you doing something special, do you guys already have a lot of traffic?
No, Heroku is just bonkers expensive
There is also .NET 10 release post for more general discussion on .NET 10 that somehow fell off the ranking: https://news.ycombinator.com/item?id=45888620
I suppose congrats to Salesforce for inventing the most expensive way to run .Net 10?
$1 per function call is possible. /s
Isn't that what make.com tries to achieve? Already at 1c per node invocation...
I wrote this post - for anyone curious, Heroku's .NET support is built on our open source .NET Cloud Native Buildpack (CNB), which is written in Rust and produces standard OCI images.
You can use it anywhere, even locally, for free. The example in the post uses the .NET 10 file-based app feature we added support for today, so if you want to try the same functionality locally, you can do something like this:
The "classic" Heroku buildpack shown in the demo video is just a thin wrapper around the CNB implementation: https://github.com/heroku/buildpacks-dotnetI came here to see if AppHarbor was still running and was pleased to see this post :D
Hi Joel! I guess you could say AppHarbor's spirit lives on - ".NET on Heroku" feels like a pretty fitting successor to "Heroku for .NET", right?
Also, the AppHarbor blog is technically still running, so there's that :)
Hope you're doing well!
Day 1 support for a new runtime is impressive.
How long does it take AWS Lambda to support the latest Node.js LTS release?
How does running on expensive clouds become newsworthy?
TIL: Heroku is still online. A shadow of its former self but still there.
I upvoted it before reading, thinking it was Haiku (OS) not Heroku (overpriced SaaS thing). Maybe others did the same?
Just you
.net is probably one of the top 10 worst names in history or is it only me?
Probably. But I got over it 25 years ago. I think of it as “dotnet” in my head which seems better.
this is the way .. I mostly just think of it as c# too (I know f# etc exists but nobody I know is using it)
No, you are not alone.for non-tech population, it may make sense that .NET 5 is continuation of .NET 4. But the tech crowd knows .net 5 is to .net 4 is what angular 2 is to angular 1.
With .net 4 still in active use, the naming makes it harder
Might be more confusing when you consider that ".NET 5" is actually the continuation of ".NET Core 3.1", not ".NET Framework 4.x"[0].
Microsoft has historically been pretty bad at naming stuff (sometimes hilariously so, see Microsoft PlaysForSure[1] for an example - spoiler: it surely didn't play for long).
The rebranding from .NET Core 3.1 to .NET 5, and from .NET 4.x to .NET Framework, did make sense to me though - and increasingly so as development continues on ".NET > 5" with yearly releases, while ".NET Framework 4.x" is in maintenance mode.
[0]:https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotn...
[1]:https://en.wikipedia.org/wiki/Microsoft_PlaysForSure
the drop of .NET core branding definitely makes it worse. as the other projects(like asp.netcore, efcore) just can't drop "core" from their names on a whim.
in my opinion, they should have kept "core" branding, but shortened it to ".NET" for marketing and only for marketing.
in a better world, Microsoft would ditch the name ".NET" altogether and invent a new one. like LVM (lightweight virtual machine)