

Why Aren't You Developing in the Cloud? - treeder
http://blog.iron.io/2012/04/why-arent-you-developing-in-cloud.html

======
nickpp
Because I am not stupid to pay monthly fees instead of single upfront
licenses.

Because my desktop screams while my net connection is so so.

Because a native UI kicks the sh*t out of any web interface, in looks,
perfomance and integration.

Because I am paranoid and I like my data in MY local net.

Because I do not mind a bunch of (easily scriptable) installs.

I short because the technical problems I am trying to solve go way beyond a
trivial LAMP app...

~~~
olalonde
> Because I am not stupid to pay monthly fees instead of single upfront
> licenses.

You just insulted everyone here who pays monthly fees for software, including
Github & Dropbox customers.

In addition, the overwhelming success of SaaS vs native apps leads me to think
that your personal tastes and concerns are not representative of the average
consumer.

~~~
fusiongyro
When the average consumer has to choose between two goods they don't
understand, they always base their decision on price. As they become more
savvy, they begin to understand why the market has other, more complex or
expensive, options. SaaS may have been a success in the short term, but our
industry tends to have centralization/decentralization cycles. We seem to be
in a centralization phase right now, but the downside of that is well-known,
it just hasn't manifested in a catastrophic way recently. Once it does, I'd
expect a large (but not total) exodus from SaaS back to run-this-on-your-own-
hardware solutions like we've had in the past.

~~~
carimura
That's an interesting perspective. I agree we have gone through cycles of
centralization/decentralization and that events will cause flutters of
movement in both directions, that's natural. As another comment mentioned, a
hybrid approach will likely be a strong story in the years to come.

However the real _purpose_ of innovation is not to simply drive price down,
rather, to create enabling technologies that move mankind forward and allow
people to do things they've never even imagined. We're seeing massive things
with massive processing power and data, all while someone else manages that
infrastructure, who LOVES managing things at scale, who I can't afford to hire
an who has become the expert I never will be.

If the goal is simply to reduce cost, then we aren't creating something big.
We're just moving money around.

~~~
fusiongyro
In a way, I think reducing cost is often (not always) a necessary first step
to enabling the big-picture visions you're describing. For example, cheap
desalination means water for drought-struck Saharan Africans; cheap food saves
lives worldwide; cheap computing leads to the situation we have today. "Moving
money around" is not valueless by itself; that is, after all, what banks (and
even currency itself) exist to accomplish, and manage to scrape by at it.

But again, taking your position at face value, I would counter that the level
of expertise needed to maintain the data needs of most people is very modest
compared to the level of expertise needed to sell everyone that amount of data
at scale. If your needs are not dramatic (and most people's aren't) then "the
cloud" may turn out to be more expensive than doing it yourself on top of the
usual downsides of outsourcing. Not everybody has a scalability problem. And
if you do have a scalability problem but your income is directly proportional
to the scale, it may be cheaper to run it yourself anyway and hire those
scalability experts. There are more cloud providers every year, not fewer, and
Amazon and Google did it out of necessity and made a profit long before they
realized they could monetize it.

In short, I think there are arguments for and against, like everything else,
and people should understand the upsides and the downsides before choosing.
Once the pendulum swings back there will be people leaving the cloud who
probably should be there and I'll be arguing for them to use it, but for right
now it seems like the herd is recklessly choosing the cloud without
understanding why.

------
cmelbye
Am I the only one that hates the "cloud" buzzword? I'm trying to wade through
the meaningless crud in this article, and I can't quite pinpoint what this
article is advocating. It seems like he's simply suggesting to run your
database, message queue, etc. on a remote server so you don't have to install
it locally. That's not at all a new concept, and he's still advocating that
you use a local editor/IDE, so you'd still need to install that as well as
your language interpreter, external libraries, etc... Am I missing something?

------
victork2
Please, please everybody, before saying that the cloud is amazing let it
resist the test of time. I am myself using some cloud software but there is
one thing that is not yet being reflected very well, the ugly monster that
lurks everywhere: _Legacy_.

How will AWS/RackSpace/SaaS software handle legacy data/ code in, let's say 10
years? I have no answer to that question and I bet few people have it but time
is a tough mistress for computer software and data. The good thing when your
data is not in the Cloud, especially when you don't control the inner
mechanics of a database like SimpleDB is that you can migrate, change it the
way you want at the moment you want. When you have no control over your data,
well bad things could happen in the future.

Be smart, be patient.

~~~
treeder
I agree with this, it's generally a good idea to use services that don't lock
you in and provide common interfaces so you can move your data or take in
house at any time. Like <http://www.mongolab.com> for instance uses standard
MongoDB and IronMQ (<http://www.iron.io/products/mq/features>) supports the
beanstalkd protocol so at any point, you can take your data and easily switch
just by changing endpoints.

------
bennylope
This is not the first time I've heard this argument from a "cloud services
provider", and surely it won't be the last.

I've found you can get very far on those four points (minimal configuration,
accessible, collaborative, and minimal production-development gap) using
shared virtual images, specifically using Vagrant. It's probably not a good
solution if you require massive amounts of test data in development, but
unless that's the case I just don't see the benefits of using SaaS components
for development's sake.

~~~
carimura
Very true.. But often it's the service providers that think about these hard
problems daily, talk to their customers, and attempt at making the world a
better place by building great products. In the process it's really hard not
to form opinions about the future. :)

Disclosure: I work for Iron.io

------
JoeAltmaier
I need processor support for certain assembler optimizations. Cloud servers
don't let me constrain the processor version.

------
jasonkester
Perhaps if the question were rephrased as "Why aren't you developing in
Notepad", it would be easier to answer.

If you look at the spectrum of ways to edit code, with edlin at one end and
VS.NET+ReSharper at the other, you wouldn't find a single one of the existing
Cloud IDEs sitting more than 5% of the way off the zero end of the scale.

Give it time, and they'll get there. I'm looking forward to that day with
great hope, but it still seems like it's a long way off.

------
openspectrum
Don't we need to define the term "cloud" before we even attempt answering this
question? Cloud can be SaaS (according to Salesforce and many other SaaS
companies). Cloud can be IaaS such as that provided by a datacenter
owner/operator. Cloud can be shared elastic hosting such as that provided by
Amazon, Azzure, etc.. Cloud can even be private elastic hosting or "Cloud in a
box" such as that the client owns/controls/manages the physical hardware AND
virtualization software. Cloud can be a hybrid solution such as what has
already been mentioned... but effectively serves as any combination of the
flavors listed above. Last but not least, Cloud can simply mean anything
"online" for most who are not geeks and still think the internet works by way
of magic.

Thus... if the term is not defined... for the sake of this thread... I don't
see how anyone could argue that they are NOT already developing in the Cloud?
So... iron.io, what does "cloud" mean to you?

~~~
treeder
Cloud has a lot of different meanings these days so it's nearly impossible to
really define it, but it is possible to think of them in various different
contexts:

\- Consumer cloud or SaaS for consumers (gmail, rdio, facebook, etc) \- SaaS
for business (salesforce, box, etc) \- Cloud Infrastructure Services (amazon,
rackspace, etc) \- Cloud Application Services - higher level services on top
of cloud infrastructure (heroku, iron.io, mongolab, papertrail) \- Private
clouds (which can include several of the above) \- etc...

In this article I'm referring to cloud application services because those are
the high level services that just take a couple lines of code and a couple of
minutes to configure and use.

------
tylermenezes
Because I spend 30% of my time developing in cars, planes, and coffee shops
without free wifi. Because, unless I'm learning a new framework, I'm often
more productive in those spaces.

Because every second I can't work because of something beyond my control is
agonizing. I put one of the biggest reasons for Github's success is that it
uses Git, which is intentionally not dependent on a central repo.

Because people who think "the cloud" is the answer to everything are jokes.

Because there isn't even a problem. Set up a VM which mirrors your prod
environment and give it to your developers. Done.

Because any cloud-based system which is powerful enough to support some of the
applications I've developed isn't going to be any easier to configure than
just setting up my own VM.

Because paying to develop is stupid. It's a disincentive to trying new
projects.

------
cjensenius
One word, debugging. Stopping program execution at a break point and
inspecting a memory location can be incredibly helpful.

------
xpose2000
Because my dedicated server with a managed host is cheaper and more convenient
than doing everything myself.

I use some cloud services, but not all. Nothing wrong with a hybrid solution.

------
nhebb
> Software-as-a-Service (SaaS) has become the most popular way to consume
> software

I'd love to see data that backs up that claim.

