
Ask HN: Experiences with cloud-based dev platforms? - beat
Are you using, or have you used, a cloud-based IDE or development environment like Koding, Cloud9, CodeAnywhere, etc? What do you like about it? Dislike about it?
======
mikegreen
Disclaimer: I'm just a product/biz guy that codes on the side.

I started using CodeAnywhere earlier this year to manage a small PHP+mysql
geospatial email system for an aviation charity I do the tech for...so wanted
something cheap (its $120 a year?) and able to teach a non-tech how to go in
and make a change (as I don't want them making edits in the github UI). I was
also using my Chromebook a lot while traveling and using shared space, so I
needed a decent dev environment without Chrome plugins/jankiness/slowness from
a 4gb system.

They have Android and iOS apps that make changes when on the go a touch
easier, though code on a Nexus is pretty rough on a plane :-)

So far, pretty good - initially they were making changes to how containers
were created and destroyed, causing some changes in the syntax of how a
container is defined thus causing mine to be troublesome. However, their
support was pretty responsive and got it sorted out.

gomix.com as mentioned here already is pretty new but has been reliable for me
so far. It is a fogcreek venture so I imagine it will mature pretty quickly.

~~~
ivan_burazin
Hi, I am the founder of Codeanywhere. Thanks for the kind words and let me
know if I can help with anything :)

~~~
marktangotango
I took a stab at this domain (online dev environment) with a service recently,
and it's really hard! So congrats on codeanywhere, it's really nice. My
qustion is; how does code anywhere handle mobile users? Every syntax
highlighting text component I tried utterly failed on mobile slash touch
devices.

~~~
ivan_burazin
Well we have native mobile apps :) Although be warned the ones on the store
are a bit out of date with new ones coming out in a matter of weeks!

------
greenspot
I started with them. First Cloud9, then Nitrous and eventually, I ended
with...

\- A cheap VM on Digital Ocean close to my location

\- tmux

\- vim

I have never been so productive before and they give me more flexibility than
any cloud dev service at a much cheaper price point. And now after two or
three years, I am a tmux, vim, console pro. Everything else compared feels
slow and limited.

~~~
throw20161123
What size droplet do you use and what kind of apps do you develop on it?

I see the cheapest one has only 512MB RAM.

~~~
dsl
It is VIM, not Eclipse. A few megabytes of memory is really all you need.

~~~
icebraining
Depends if you also want to run tests, like one often does in their local
machines.

------
torkalork
Gomix ([https://gomix.com](https://gomix.com)) is my current favorite. It
might not have as many bells and whistles as the others you listed, but it
"just works" more of the time than any other platform I've tried.

------
benologist
I'm a big fan of Cloud9. Since you can use Cloud9 on your own hardware pretty
easily you're not forced to treat it as a part-time-IDE-for-X you can just use
it for everything (it supports dozens of languages) and being online or
locally hosted becomes just an irrelevant detail. I've used it for web and
android projects.

I dislike the proprietary ones, I don't think proprietary developer tools
should be supported anymore tbh, but they force you to use them only-for-x and
that means you're looking at alternatives every other time too!

~~~
beat
Part of my thinking here is to get a dev environment that is 100% independent
of my laptop - I don't need local files, or local configuration. Currently,
I'm using Vagrant on a Mac, and that works well, but it's also wedded to a
computer I'd like to put into semi-retirement, and I don't want to spend a
fortune on a new one. The idea of just using cheap Chromebooks for dev sounds
very appealing.

~~~
didgeoridoo
Cloud9 has been a delight so far. It doesn't require local files — parent was
just saying that you can use it as an IDE on your own arbitrary box (e.g. a
DigitalOcean droplet), but that doesn't stop you from using the default option
of a Cloud9-provided Ubuntu container. Another big win with C9 is
"collaborative mode", which lets you pair with someone remotely, each with
their own cursor in the same file. I've been using that a lot to integrate
closely with a front-end developer who is taking care of the views while I
simultaneously write the backend logic.

------
ivan_burazin
Thanks for this great question! As the Founder of COdeanywhere I am also
really keen on hearing the answers. Also feel free to ask me anything you guys
like.

Best

~~~
beat
Well, question for my platform... I'm building client apps in Go to run on
linux boxes. The core client is a scheduler that runs as a daemon, schedules
execution of other apps, and sends results to a remote API. Is this something
that can be done from within the CodeAnywhere platform?

~~~
ivan_burazin
Sure, you can either connect Codeanywhere to your Linux boxes via SSH or you
can use the Boxes Codeanywhere provisions for you.

------
bear1728
I've used [https://cloud.sagemath.com/](https://cloud.sagemath.com/) with
great success. Especially with writing Sage code, LaTeX, Python, Go,
Javascript, and a bunch of others. It's especially nice since I can work on
any of these collaboratively with others. Right now I'm using it with a small
team writing a bunch of markdown files with math, which smc (sage math cloud)
handles great.

~~~
drxyzzy
I started using SageMathCloud a couple years ago while taking courses from edX
and Coursera in physics and data science. I liked it enough that I joined the
project as volunteer contributor. At 60+ MOOCs completed, I still use SMC for
online learning. Most valuable features to me: 1) not having to install tons
of software locally; 2) consolidation of work from different courses &
schools; 3) Sage units of measurement and symbolic expressions (good for
physics); 4) Jupyter notebooks and sage worksheets, so work from a study
session reads like a lab notebook rather than a jumble of scratch paper notes.

------
highd
I'm a vim+screen+mosh(+Jupyter) guy, so my environment is "cloud-based" as-is
(in that I'm mosh-ing to a dev server). I can see why some people might want
more fully featured IDEs, but this works for me. As I get better and better at
Vim it gets harder and harder to go away from the keybindings, as well.

I guess it depends on what you're looking for - i.e. some new kind of
collaboration workflow or a nice GUI or some other IDE features.

~~~
rbrcurtis
Are you using a VPS or what sort of dev machine are you using?

~~~
highd
I've gone through the process of port forwarding my router and setting up
dynamic DNS (who does that anymore? :) ) so I can hit my home desktop with an
Ubuntu VM on it and I usually have a few AWS instances up at any given time
for different projects. Then most of the active code gets synchronized between
machines via Github.

~~~
majewsky
> dynamic DNS (who does that anymore? :) )

I do! I used afraid.org at first, but since my company blocks DynDNS domains
(don't ask), I switched to gandi-dyndns [1] using my own domain.

[1] [https://github.com/jasontbradshaw/gandi-
dyndns](https://github.com/jasontbradshaw/gandi-dyndns)

------
angrymouse
Of them all the one i used the most was Codio.

It used to have a minimal set of things you could install but moved to a clean
Ubuntu box that you can pretty much muck about with and install what you like.

For Rails, it is perfectly suited and very easy to spin up an Ubuntu VM and
play.

I used Cloud9 before hand and though this was a while ago, I had a demo of an
Express thing with MongoDB and about 15 mins before said demo it started
falling apart.

I believe the uptime is pretty great, just a lasting impression of failing
just at the wrong time.

Codio seems to have pivoted however to be more about offering educational
institutions the ability to create courses etc. so though powerful, that is
what the developers are focused on now

Occasionally the version number of things lag behind in Codio and that is my
biggest gripe. That and PHP boxes not having mod_rewrite enabled out the box,
but that is just me

------
shireboy
Great question. I'm curious about what others do as well.

By day I am a .NET developer who typically uses Visual Studio. I do all of my
development on an Azure VM with all of my dev tools on it. This is very useful
because I can access it from anywhere and don't muck up a physical machine
doing it. I use a standard F4 instance and stay under my free MSDN credits
most months as long as I remember to turn it off (automation has fixed this
recently ;). Not exactly what you mean, but lots of the same benefits.

But, I do like to tinker and see what all the cool kids are using, so have
tried most of the ones you mention as well. I do think this model will become
way more common, but none have stuck so far for me. Most of that is that I
have customers that use VS and have a hard time imagining them using anything
else. But I also felt the "free SKU" on some of these to be a little limiting.
One or two projects or public-only projects means I have to commit to use in
my day job. I don't fault them for making money, but there is a barrier there
that limits me from using or recommending it. Also, if I'm learning something
new - especially tooling like webpack/grunt/gulp/yo/etc.- it can be difficult
to translate "getting started" style documentation to the specific
environment. If something goes wrong, I'm unsure if it's the environment or me
(though I assume the later ;)

As many have suggested, gomix is changing this some for me. I've used it to
learn node a bit more, and as a place for one-off tests of JS/HTML/CSS issues.
As with the others, I feel like I'd have a hard time recommending it for
production use at the moment, but really like it for things I don't
necessarily want in my or my customers' source control. It's zero-friction and
"just works" for a certain class of problem.

My _hope_ is that these mature so that 1) there is less vendor lock-in and
barrier-to-entry and 2) get more popular so that certain types of applications
don't need a full on dev environment to code for.

------
beat
For my personal interest, I'm developing an app on a Rails/Postgresql stack,
and client software that talks to the app in Go. I'm interested in finding a
cloud-based solution that supports both without a lot of DIY hand-rolling.

~~~
beat
If I could do the Rails stack gracefully, I could probably offload the Go
development to a regular VM on DigitalOcean. I may need to anyway, for
reasons. So from that perspective, I want a cloud-based system where I could
also ssh from it into a VM of my own.

------
elsurudo
I've been using Cloud 9 a bit to give my girlfriend coding lessons. Once she
acquired a base set of knowledge, I started giving her "assignments" where I'd
describe the program she had to build in comments.

When she has an issue, I hope onto the collaborative workspace, and we either
chat using the in-app function, or do a Skype voice call.

For collaboration, it is great. The environment is pretty slick as well. I
haven't used it for a "real" project yet, though. I'm not quite sure how the
collaborative functions would work with a VCS, for example.

------
divbit
(As long as you have fast internet) Codepen is so useful for making ui's... it
massively smooths out the fiddling process and also convenient to share a ui
with the debug / display mode or whatever it's called. I'm sure one could come
up with a similar offline software for the creation aspect, but since it's
hosted, it takes only two clicks to share a website demo, which seems like it
would be hard to duplicate without cloud.

------
orasis
I'm loving Cloud9 for JavaScript and Python dev. I love having a separate VM
per project and _nothing_ installed on my laptop.

