Hacker News new | past | comments | ask | show | jobs | submit login
MoonHome: Remote Development Environment (moonhome.io)
173 points by wut42 14 days ago | hide | past | favorite | 94 comments

I find the pricing structure surprisingly similar to Hetzner Cloud. There are the same RAM and CPU core tiers running the same AMD EPYC 2nd Gen (one to one and onto mapping).

Except prices for storage is almost double. And hourly costs are higher which is kinda hidden by not assuming 24/7 operation compared to Hetzners monthly pricing. You will pay less with Hetzner as they also offer hourly billing.

More smoking guns, while moonhome.io is hosted by Amazon both app.moonhome.io and alpha.moonhome.io (shared by the founder on Twitter) resolve to which is static. which is an Hetzner IP. [1]

For my own legal safety i am not claiming that this service is just reselling Hetzner Cloud. Just that i found a lot of things that convinced me that that could be reselling Hetzner Cloud. Same disclaimer applies to all comments i made in this thread.

[1] https://web.archive.org/web/20211014004453/https://mxtoolbox...

> More smoking guns

What is your agenda? What do you have against this guy and his service he's offering? You have other comments that seem negative toward this service or its creator.

Heroku is "just the Amazon cloud", but at a higher price. Of course it offers additional features which some people find beneficial enough to justify the higher price compared to bare AWS.

Likewise, if MoonHome is providing attractive extra features (simplicity, turnkey) on top of Hetzner, then shouldn't it charge more than Hetzner?

In my experience, Hetzner is a great foundation to build on if you're happy with Frankfurt/Helsinki being your endpoints. So this is a plus to me.

> What is your agenda?

I just like Hetzner a lot and instantly recognized the pricing hardware tiering structure. I was a bit suspicious how the could sell it cheaper per month as Hetzner (which excited me) until I noticed that by monthly they mean when you shut down your machine every night.

I also couldn't find anything on their website that says where they are hosting it.

As I like Hetzner fan I am sad that there wasn't a reference to Hetzner. The website to me advertises Hetzner Clouds features a lot more then service they provide on top.

Hetzner is a good place and I also used that fact in another reply to say that this service is not unrealiable because it runs on someones else's infrastructure.

I think that the person considering subscribing should know it runs on Hetzner as that has Latency implications of the services are in Gunzenhausen, Falkenstein or Helsinki. Hetzner is also a regional company for me as I lived quiet close to them

I ran a little code on this comment:

    >>> sorted({w: comment.split().count(w) for w in comment.split() if comment.split().count(w) > 1}.items(), key=lambda x: -x[1])[:3]
    [('I', 9), ('Hetzner', 7), ('that', 7)]

7 sentences, 7 occurrences of "Hetzner". It really does read like a CEO-optimized advertisement.

Doing my best? Do you have some suggestions for rewordings? I am not a native speaker, so you are welcome.

By not talking about your specific supplier as part of your branding, you increase the flexibility to change your supplier later on. For now, moonhome.io probably uses hetzner, later they may get a deal for something else, or start running their own data center directly or who knows what else.

Do you really care if your iPhone RAM chips or CPUs were phabbed by Samsung or TSMC? OLED panel from LG that year, Samsung the next year, etc.

Perhaps I'm missing something from the home page, but which additional features does it offer exactly? Automatic system updates, which is possible to do with just normal linux distributions anyway?

I mean it says "MoonHome is not a browser-based cloud IDE. You get full access to a remote server over SSH.". So you get ssh access, just like you would with a VPS.

All I see on the main page as far as technical functionality goes is just VPS features phrased differently.

From what I've read on the main page plus some of the documentation pages is that it gives you

- preconfigured dev environment with some tools already installed (using asdf, which is easy to add more tools with)

- preconfigured firewall (which of course is easy to do yourself, but it's done already)

- instructions on how to do some of the ssh tunneling things necessary to connect your local apps/tools with the remote ones

- "managed" OS (kept updated for you)

- support, someone to ask for help if you're stuck trying to do something

None of these are particularly difficult to do on your own, but this just packages them all into a service.

If you roll your own with a VPS, then you do have some setup to do if you want to harden and configure it. Then you have to choose/use a tool to manage that configuration so you can spin up and blow away an instance on demand.

It may be some (a lot?) more expensive than a bare, plain VPS, but perhaps the it is worth 10-20$/mo for a dev who wants to travel light (cheap laptop/chromebook) and have one less thing to worry about.

It is awesome that you parsed all that out. I wish those were advertised on the front page clearer instead of Hetzner Clouds server pricing structure for a higher price (I would say some upcharge like at most almost double) with a little bit misleading pricing. I was mislead for 5 min. Maybe a switch over the table between X hours per month and 24/7 could make that clear.

Also scouring many cloud providers and finding the most performance per dollar one is also a service the person provided once. If they will always to try to get the best deal for their customers, let them know that.

I am not sure how many of those features could be implemented by just a docker container or something similar.

> If you roll your own with a VPS, then you do have some setup to do if you want to harden and configure it.

I actually considered doing something similar using Hetzners cloud API once. An end point for distributed computing and Hetzner was place that seemed to cheapest performance/dollar with hourly billing. [1]

[1] https://github.com/freemin7/discount-cloud-geekbench-5

What would be wrong if they're reselling Hetzner? Obviously the price difference come from whatever they include on top.

Actually wondering about this as well, currently considering making my own SaaS, though it's not like there's that many approaches to do billing.

In my eyes, a pretty good option would be to automate VPS provisioning and allow each client to order a particular amount of resources, with the software installed on top of them. That way, multi tenancy can be limited to services that handle provisioning, billing and setup, while the individual instances can allow avoiding a single point of failure as far as the day to day operations are concerned.

Basing pricing on the underlying VPS costs with a profit margin in mind just seems like one of the few ways to do it, why would there be anything wrong with it, if the SaaS provides value?

There is not and if Hetzner would have been mentioned on the website I wouldn't have done detective work to find out it is hosted and I wouldn't have written any messages. Maybe there is something with branding that they can't tell they run on Hetzner but then they should work that out with Hetzner orbtgey are trying to hide. Anyway I saved people a registration and possibly renting an instance to figure out where they are.

If you are mostly reselling compute and storage be transparent where you get it from.

> If you are mostly reselling compute and storage be transparent where you get it from.

Genuine question: why or why not?

If someone is reselling compute with very few changes and wants to hide where it's sourced from, then i guess it's understandable from a business perspective but at the same time could indeed be considered dishonest. Is that your reasoning?

But at the same time, if someone is reselling compute with custom software or non-trivial automation around it, then i guess the software/automation itself is the product, in which case the compute is just a means to an end? At least in my eyes, if i'd be buying services from something like Mailgun, or something like Heroku, i might not necessarily care that much about where it's running from (except for maybe caring about latency). Would you agree with a statement like that?

Doesn't it all seem a bit blurred, where to draw that line of what's okay and what isn't? Is reselling compute without references to the underlying host/company not somewhat common?

The reason why I make any judgement about this is because I am an utilitarian. I see 3 Booleans that influence the outcome

- Is it product that adds value?

- Is the person inspecting the website a customer or a potential competitor?

- Is the platform of which the computation is resold listed?

I am only interested in cases where the product actually adds value. So I we can discard that other part of the possibility tree and demand that every company acts as if it adds value.

This leaves us with a 2x2 grid.

- potential customer & transparent: The user can make an educated decision before having to register, for additional hardware questions people can look at the original hoster, website focused on value add, using trusted hoster gives legitimacy

- potential competitor & transparent: competitor can clone your service without creating an account

- potential consumer and no transparent: greater uncertainty for consumer, "Why does he hide it", maybe negative experiences because it wasn't obvious that might not be suitable for tasks due to particular issues with underlying hoster (such as ping time), positive features (such as Hetzner running on green energy) are lost, with unclear hoster reliability of the infrastructure in question, lack of access to historic data that does exist.

- potential competitor & not transparent: competitor has to create to learn in what data centers the servers are as creating an account and renting a few instances would allow him infer any information he needs to know

We can suspect there are more customers than potential competitors and competitors are ore willing to learn about your service then people visiting the website by having this information available you make the life competitors are single digit $ harder, at the cost of having a harder time getting the trust of many more customers and potentially losing business.

So either the product should 't exist xor it is irrational to not make this information available easily as it hurts reseller and potential customers more than it hurts a slightly motivated cloner of the service.

Thank you for the writeup! That is solid reasoning, even if many of the companies out there would prefer not to publish too much information about the underlying infrastructure, or their expense structure.

My only nitpick would be this:

> ...using trusted hoster gives legitimacy

This can also simply lead to all of the smaller/regional hosts out there to be viewed as not trustworthy, just because they're not known to a wider audience and therefore haven't got the positive reputation that the likes of DigitalOcean, Vultr, Scaleway, Hetzner and many others could have!

> This can simple lead to all of the smaller/regional hosts out there to be viewed as not trustworthy, just because they're not known to a wider audience and therefore haven't got the positive reputation that the likes of DigitalOcean, Vultr, Scaleway, Hetzner and many others could have!

While I agree that this is a concern it is my opinion orthogonal to (I mean it literally becomes an irrelevant when you project along) the question "transparency good or bad?"

A hosters name gives you something you can Google. If there a post from someone 4 years ago asking whether it is any good the answers gives you helpful information independent from marketing claims. You might also be able to look at IP ranges and their trust scores or reverse DNS IPs to find out in what neighborhood you end up.

There is nothing bad with Hetzner being resold. But people should be aware that Hetzner is running underneath, so they can be informed about latency concerns, compare reliability and that these servers are running on green energy.

No issues in itself, but would rule out my use as Australia to Europe latency is bad enough but it seems to be that hetzner how some of the higher latency routes

I created an account to play with it and noticed that when updating the ubuntu packages I see it uses the hetzner mirror > Get:1 https://mirror.hetzner.com/ubuntu/packages focal-updates/main amd64 libpam0g amd64 1.3.1-5ubuntu4.3 [55.4 kB]

and the IP address is owned by "Hetzner Online GmbH"

Thanks this is as I expected. Have fun with your instance! I wasn't prepare to setup spending money so I tried to figure out where it was hosted without buying an instance.

Where exactly do you find these prices in Hetzner Cloud? They appear to be at a minimum twice as expensive to me.

A 16 vCPU and 32GB RAM server costs €59.38 per month. If you want dedicated vCPU then you'll have to pay €166.48 per month.

They seem to automatically unprovision the server when not using them. The mlnly prices listed are

"price estimate based on average usage of 160 hours per month."

If you chdkc the hourly price They about twice as expensive as hetzner clouds offerings

You know, he could be using a dedicated server hosted on Hetzner.

What's the value-add here over a traditional VPS? Codespaces (or Coder/code-server, or gitpod) have the benefit of launching in your browser and being really easy to destroy/spin up if needed. This seems like you're paying for a box and you'll get SSH credentials to connect to it.

Ease of use counts for something, of course, but the market for this is developers that probably either know how to use DigitalOcean or don't know what SSH is and will stick with Codespaces or its alternatives. Static IPs are also interesting, but given the use case for me is being able to nuke my dev environment just like I nuke a git branch, as long as it's accessible somewhere I don't know how much that matters.

(I'm not trying to be down on this at all, I don't know where I'd start with launching a VPS provider. But I think there's something missing from this landing page.)

I think it just resells Hetzner cloud offer at a premium.

> Currently, MoonHome is a single-man operation, 100% self-funded.

I wouldn't highlight this on the homepage as I don't think it's a plus. I personally wouldn't want my dev environment to depend on a single person operation.

Single founder of a self-funded business here.

If you'd rather depend on a larger company, you have to take into account that:

1. The costs will be much higher, because somebody needs to pay for all those salaries, benefits and offices. Hope you are ready to cover those.

2. It's just a façade anyway: a "serious company" makes us feel all warm and fuzzy, but can fold at any time without warning.

3. If it's a VC-funded company, there is no eventual exit outcome that is good for you as a customer: the business will either get acquired (with the service you are using being shut down or folded into something else), go bankrupt, or in the extremely rare case do an IPO (the service you are using will then degrade as the company will be adding mass-uptake features and upselling, see Dropbox). In other words, you aren't really a customer: you are growth material for the company, to be used and discarded once goals are achieved.

In contrast to that, single-founder businesses can be stable, mature, and sustainable over many years, much more so than services offered by larger companies.

Actually, in my experience, it's easier to get useful support for a paid product/tool/plugin that's developed by a single person or a small team, than for a product made by a big company.

Compared to what?

If you ran this yourself, like I do on LightSail, that would be a (worse) one man operation.

The risk of a one-man operation in this case is pretty clear.

If the one dude running this gets hit by a bus, your dev environment vanishes and is useless, all data lost.

If you instead use LightSail, it's clearly better. You'd need quite a few Amazon employees to be on the same bus before a small accident would result in LightSail vanishing and becoming useless.

With both this, and hand-rolled stuff on LightSail, if you get hit by a bus yourself, of course the environment is useless, but that's an identical risk for both of them.

Fair. But would you rather know it's a one man operation and avoid it, or not know, thinking there is a team, and then get stung in the manner you're suggesting?

At least owner conveyed us what is the case and we can give him the feedback that this is my concern and ask him if he can resolve this.

Usually in big enough contracts as part of due diligence you find out if something is a one man operation or not.

These days, aside from configuration (which is no small thing), one's data is often stored or at least very frequently backed up in the cloud.

If this service vanished overnight, you would likely just lose the time it takes to tune a similar dev environment. If you have a git repo with your dot files and such, and you use symlinks where possible in your tools to refer to your master config repo, then re-setting up your dev env can be nearly instant.

If this service was database hosting, then I would be more concerned about 1-person operation.

In many midsize and large enterprises critical functions are not redundant. There is just the one person knowing how to do X or Y. If that one person disappears, your service will be down for a long time even if the company still exists.

Compared to GitHub Codespaces or LightSail which have proper support teams behind the products.

LightSail (AWS) don't manage the OS upwards for you.

You're right. However, I'd rather have myself as a single point of failure (for OS and VS Code server) than another individual. Keep in mind that you're also trusting an individual with your codebase.

Good points. I think the OP's service needs to introduce a second person/founder, for sure.

If, as i suspect, this is just a resold Hetzner Cloud at a premium, so i would not worry about reliability.

If there's an issue with the server, you cannot reach out to Hetzner directly. You need to contact the individual behind MoonHome who might be asleep or sick.


It's a well-designed site, but as others have noted, there aren't enough details about how it works, how data is handled, and its security for this to be something I would ever even think about giving money to.

I don't have a problem trying to undercut Codespaces by selling a hosted preset cloud-environment offering, even if it is just built atop Hetzner, but I do have a problem with the lack of clarity about what it is and how it works.

There is a huge niche/hobby that is there are tons of VPS resellers and smaller hosts who just throw up a rack or two in a data center and then sell cheap VPS boxes, but the thing is, when you get something from a lowendbox type of place or an upstart VPS provider, you usually understand that the company might not be around forever, that support is spotty, and that you're on your own. When you target something as a hosted remote dev environment, for me, that requires a lot more trust (whether it should or shouldn't) because it's my dev environment.

Still, it's a nice idea and I'm sure we'll see more of these offerings pop up over time.

I've been doing a lot of this lately. I got the cheapest Macbook Air and SSH into my machine at the office. Tmux attach and go! Lag is never an issue for me. I could get used to this.

"Cheapest Macbook air" is still upwards of $1000 and more than capable of running serious workloads. This kind of remote development perfectly suits my $135 chromebook though.

> Lag is never an issue for me

Is that because you have extremely good latency to the VM or because delays while typing don't bother you? Just wanted to clarify as latency (especially over VPN) is what keeps me away from these solutions.

Typing lag...that reminds me of something I saw in the 90's. Someone was trying to figure out a production problem and asked for help. I sat down at their computer, and was trying to use their terminal shell window (HP/UX). It was terribly laggy, worse than I'd ever seen before. I asked if it was OK to exit and open a new window and they said OK. So I typed exit to close the telnet connection, then exit again to exit the terminal...but it didn't go away. So I typed exit again. and got another shell prompt. At that point I realized that they had been hopping from machine to machine without exiting. It turned out that the lag was from 22 nested telnet commands!

Check out Mosh, it’s an upgrade over ssh if you are doing remote development

No port forwarding though. Must use ssh


I’ve been using eternal terminal for this and it’s rock solid.

Me too. I'm on very powerful hardware but the thin-client nature of using Remote-SSH is friggin' sweet.

This is a really rich description of a completely standard VPS.

The more you tell, the more you sell. David Ogilvy

A remote dev environment is just one of many use cases for a VPS. They're not the same thing at all.

My brain just isn't good at servers. I have set up many generic cloud servers over the years, but I always hate doing it, it takes me ages to get it right, and I find it hard keep track of everything once set up, and I'm always worried I might have set up something wrong and end up with a security hole or a runaway bill. If I was looking to set up a remote dev environment right now, I would be far more inclined to spend a few dollars per month in overhead for someone to hand-hold me through the process, by providing a clear and simple pricing structure, docs, and support, all narrowly focused on the use case of remote dev environment.

If you're someone who is comfortable playing around with servers, then it makes more sense for you to go lower-level and just set up your own VPS, as you'll probably value the extra freedom and flexibility. For many developers though, that flexibility isn't worth it for the extra complexity and time it takes.

You don't have to setup anything whatsoever for VSCode Remote-SSH. You give it an IP and user+pass/ssh-key and it takes care of the rest.

Not sure I follow. Presumably that IP has to point to a server that actually exists? What do you mean it takes care of the rest?

The steps necessary for replicating the service are logging into let's say Digitalocean and pressing "create droplet".

I have a lot of questions about this. What kind of machine can I provision? Can I make a remote mac for XCode shenanigans? What if I have some awful Windows thing I need to rebuild but don't want to install Visual Studio locally any more, is this a decent substitute for running up a local VM?

What kind of security is sitting around my source code? How would I guarantee when I stopped using the service that a copy wasn't kept somewhere?

Is it backed up / a snapshot done regularly? What kind of control do I have over those snapshots, the timing of them and deleting them if I decide to stop using the service?

> What kind of machine can I provision?

Virtual Private Servers with AMD EPYC 2nd Gen cores, probably resold from Hetzner Cloud at a premium.

> Can I make a remote mac for XCode shenanigans?

Maybe QEMU, probably runs Linux.

> How would I guarantee when I stopped using the service that a copy wasn't kept somewhere?

The offer GDPR compliance just like Hetzner Cloud

> Is it backed up / a snapshot done regularly?

Nothing on the website. Since they charge more for storage, maybe they do something?

The pricing seems reasonable and more or less inline with what an equivalent VPS would cost. I have a couple questions:

> When not used, Moonhome is disconnected from the network for maximum protection. When running, it sits safely behind the built-in network firewall.

So does this mean when I ssh in it proxies and forwards the connection to the actual host which is otherwise unexposed to the public internet? Seems like a reasonable thing to do, I guess.

> We update system images every night, so you don’t have to worry about any of that.

Okay, this seems fine at first glance but it’s really unclear. If I have Go installed, for example, will that be updated automatically or are my own development tools fully under my control and up to me to update? Also, what is the underlying distribution behind all of this? Is it just running ‘apt upgrade’ on a cron job or are you doing something else?

Is it a giant stack of Docker containers with some persistent storage?

Is this open source? Can I run a single command on a North American Digital Ocean droplet and run this closer to home? I don’t see much point in putting my dev env on the other side of an ocean.

> more or less inline with what an equivalent VPS would cost.

I am curious of what the VPS options would look like pricewise, and how would a DIY approach entail.

A 32GB DigitalOcean droplet is $192 a month . A 32GB VM in OVH is $62.56 a month. Same thing in Oracle Cloud is around $145 (according to their confusing cloud cost estimator), and AWS r3.xlarge with 32gb is around $252

"Monthly price estimate based on average usage of 160 hours per month."

Not apples to apples.

You get an awfully similar selection of instances to the ones you get a MoonHome in the standard tier at Hetzner Cloud.

At a glance, the screenshot on the main page seems indistinguishable from Visual Studio Code with the remote-ssh plugin, which is my daily driver and works fantastic.

Interesting that more and more people seem to be using remote dev environments. Do you have any guides on building a good setup? I get the VS Code + ssh plugin part but how do you manage urls / domains and keeping things private?

"Modern notebooks prioritize pretty screen and battery time. And when you do need some more computing power you end up with hot casing and laud fans. It is no longer a pleasant experience. "

I guess they mean modern mac notebooks

And presumably 'loud' not 'laud'

"We do not have access to your data"

How can I independently verify the accuracy of this claim?

You could encrypt your drive to be sure.

It would have to be E2E encrypted which would break the functionality of a remote development environment

If the developer is here, I like the website! One question that stands out to me, after visiting your site I don't really see how this is significantly different from a VPS. The features (CPU, ram, bandwidth, public IP address, semi-managed OS, storage) seem to be more or less on par with what I would pay with AWS Lightsail, Linode VPS or a dozen other providers.

> We do not have access to your data

Pretty sure that this isn't true.

"Use Visual Studio Code with integrated Git, Terminal and IDE features just like you would use it locally."

Is this using rsync or ? What is the best way to synchronize local disk with the remote server?

Curious if this could work with iPad pro. There are a few cloud IDE things in this space, but MoonHome's pricing is much friendlier.

Visual Studio Code has built-in support for remote development. It runs a local agent on the remote server via SSH which does essentially whatever you would be doing locally (e.g. viewing, editing, searching) and only sends the minimal results you need over the network.


VSCode has an existing remote option that uses ssh as the transport. Maybe it's leveraging that?

There is an open source implementation of this you can just spin up in docker.


I've been using it for a couple of years now. It's been amazing for me. Run a server at home and I can just edit stuff on the fly via browser from where ever I am.

Can I run intellij on it?? Or is this intended for more docker based workflow... Either way it looks interesting... congrats on the launch.

Jetbrains IDEs have hooks where you can run the ide local and execute code on an external machine. You can also host the IDE on the server and use the ide in a browser although I've never tried that before


google cloudshell is also free for GCP users and has a lot of the same use cases as this. I've been using it for building and pushing docker images, among other things.

> Cloud Shell is available at no additional cost for Google Cloud customers.


`gcloud cloud-shell ssh --authorize-session`

Hey guys, there are these things called “workstations.” Have heard of them?

Having a personal workstation in university (kept it at home and had a VPN set up to connect to my LAN) was probably one of the best choices I made. I could carry a cheap disposable laptop that served as a web browser and dumb terminal and the powerful machine was just a SSH connection away.

Yeah, I don't understand the thinking behind this product when you can buy a recently decommissioned Dell, HP or SuperMicro server with a pile of memory and a couple of fast Xeons in it, load up your Linux of choice and go to town with QEMU. This beast here has two ethernet ports as well, so one is dedicated to the I/O for the QEMU VMs and they appear on the local network as actual machines via a bridge. Stick an old ATI HD6750 in it and run two QHD monitors. You may need some mechanism to make it a bit quieter but on the whole it's cheap, awesome and easy to keep running. Got a Big Sur VM, a Windows 2019 server, Windows 10 and a Solaris VM just for giggles because I like to watch the old screen savers sometimes. Remote access: no problem. Power consumption: err...

Best of all, HP have integrated lights out on their enterprise gear, so if you need to reboot it remotely, you can!

god i wish my power costs were not 0.38€/kwh for me renting servers is cheaper all around(https://www.hetzner.com/de/dedicated-rootserver/ax41-nvme)

Whenever I ran the numbers, decommissioned servers were hard to justify. They are cheap to buy, but you pay that back quickly in electricity. And if you want something that's not incredibly noisy you pay a decent premium for that.

This is cool. I wish there was something like this for MATLAB.

Neat, I forgot about this. Thanks!

Typo “ laud fans” should be “loud fans”.

what's the simplest way to have a fool-proof time based scheduler for an AWS instance?

Lovely how we now resell in 2021 the enterprise computing model from 1980's timesharing systems.

Is that good or bad?

Bad, we just go around in circles, with the browser replacing green phosphor terminals.

But how do you know that reintroducing the mainframe model is the mistake, not that we completely got rid of it?

Or maybe the total dominance of personal computers was an intermediate state caused by the low availability of good enough network connections

When your data is in someone else computer, it is a big mistake.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact