I have debated using small virtual machines for specific tasks for a while, but have found it hard to justify the cost or the time to understand the complexity of the offerings of various providers without incurring a cost to “figure it out”. I can see great use in firing up a Linux vm when I want to learn something linux oriented, or using a pre-built vm to save me the hassle of learning how to setup some “tool” (e.g. Apache, node, wordpress, etc)
I needed a way to get my feet wet to see if I liked the experience, without understanding first what I might find. Unfortunately, Azure seems to still require lots of guess work because it offers many different options at different prices for the many configurations of each item… So I end up stuck in a mess of wondering “what the hell is this about and will I possibly be charged a fortune?” Instead of rolling out systems to provide me with a hands on understanding of what I need.
I have looked at amazon’s offerings and they seem to fall into the same category, and while their pricing is getting better,there still are a multitude of options and pricing schemes.
I feel a little bad that my reasoning largely was “I am only casually interested, so why should I have to wade through and understand complicated pricing before I can try the system?”. It’s almost as if I was saying “it’s too hard, so I won’t even try”. That’s the last thing I want to do, but for a casual investigation, I don’t want to have to learn all of the complexity when I would rather be learning some new technologies.
I keep looking at the pricing hoping that it becomes such a “who cares, it costs nothing” expense that it doesn’t matter if I get suckered into buying a virtual machine that is 10 times more powerful than what I need/want, and so I started looking at the price of VM’s again recently after various providers started lowering their costs.
Eventually I found Digital Ocean… They have loads of tutorials, and 6 (or so) prices. So it’s petty easy to know what you are committing to when you sign up with them. And they have a $10 coupon that you can apply when you first sign up (google a bit and you’ll find it). Their cheapest machine is only $5 per month, so that’s effectively two free months.
Given that I don’t like the server I was hosted on before (it’s old… And showing its age), I thought I would try out moving my blog over to a VM where I could try out Ghost (apparently the new hotness), and see what I could do there.
So… Cheap, simple options, and clear instructions and help – that’s what it took to get me to try out a vm.
As it turns out a 768mb ram, tiny CPU, Linux box is really easy to work with and seems to handle a simple blog really easily. I have probably remade the VM four or five times, starting with a Ghost instance and ending up with this WordPress one.
As it turns out, Ghost is missing loads of useful things like: a simple UI for changing templates or doing basic customisation to the site, an app for iOS and Android that let’s me edit posts easily (and while I am offline). Eventually I gave up when I was digging around using nano to edit json files to set up some basic things I needed.
After that experience, I decided to try out some nodejs, because now I could spin up a new vm easily with the tools I needed already setup. This removes one of my biggest frustrations with learning new things… Getting stuck in the complexity of some completely unrelated item that should just be a quick detour but ends up being a 5 hour hair pulling fight with some silly configuration item.
After that I wondered if I could move a php site of my dad’s over to a vm to get one more item off the old server my blog used to be hosted on, and firing up a VM with a LAMP stack pre-configured is as simple as creating the wordpress VM.
I’m not saying it’s the worlds friendliest scenario, but it certainly has given me a really simple way to try out new tools without having to invest any time in figuring out “why for the love of all that is good and holy in this world, the developer decided to not document the one setting that is breaking my installation?”
It’s almost like all the promises Microsoft has made about “infrastructure as a service revolutionising business” are true… And this time it’s not something that “only works on Microsoft”. (I am not trying to be anti Microsoft… I have just grown to mistrust their sales mantras)
Hopefully I can share some learning I experience with Node and a MongoDb soon… And possibly even something from the setup of the LAMP achine and MySQL.
But until then, go try out some cheap Virtual Machine somewhere and see what you can make