# What is Ironic?

First, there were computers. A big bad computer was called a server. It could chomp down on calculations and serve many people at once. 


But a computer needs an owner, a manager who tells who to serve, what to do. And few could run it to its full potential. 

Some like Marvin would languish depressed, doing meagre tasks for big-name figures, Others would just do their work and play with bugs when they were bored. Also, computers didn't come for free - the bigger you had, the costlier they were, and not to even mention the cost of electricity incurred to feed, and their regular individual maintenance.

Someone thought, 'what if we could break this computer's mind into many pieces?' - call them `virtual machines` as opposed to, you know, the real one sitting in front of you and who you've got accustomed to. That way we could hand each of these virtual machines to different people or to run totally independent projects. Hand them virtually of course, you would still have the machine in front of you and in your control, but you could rent mindspace to people far away, or to your friends  or people working for you. 

This idea turned out great, most people knew how to use a computer, but not necessarily a bigger computer well. By breaking it into smaller virtual machines with power that people actually needed, efficiency improved. Also, each virtual machine (VM) user had less to worry about other users knowing the secrets they shared with their VM. Since it was not exactly one machine everyone was using, but different self-contained computing environments or *mind spaces*. So even if your neighbouring user broke their VM, you'd be least bothered - yours would continue to work undisturbed. 

And so, this situation was working well, still is as of year 2021.
Many people came up with their solutions for doing this virtual machine business. You had commercial vendors like AWS and Azure. On the other hand, there were also open source initiatives like OpenStack. 

One word to introduce here is 'The Cloud'. It is essentially just a bunch of virtual machines with accompanying virtual network, virtual storage and other solutions.
If you have many real machines, and you turn them into loads of virtual machines and enable people to conveniently use them from far away, you have a 'Cloud'.
Here's how OpenStack describes itself: 

> What is OpenStack? OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface. 

Now, continuing the story, some people decided they did not like these 'virtual machines'. They needed a real full machine all for themselves. They had their reasons, say requiring increased security or power, or just wanting more control. And so they tasked this cloud orchestrator originally built to generate and manage virtual machines to hand them an interface to the full solid bare-metal machine instead.  Now, isn't that ironic? Yes, indeed, that's [Ironic](https://en.wikipedia.org/wiki/OpenStack#Bare_metal_(Ironic))! Literally :)

Ironic (OpenStack's Bare Metal Provisioning Program) is the project I am working on as an intern. I shall give you a walk through its internals in a subsequent post. 

Note: This piece has ample contribution from author's imagination and common folklore. As such, it is not meant as a history lesson.
Think of it like a grandma explaining `ironic` to a five-year-old. 
Which in itself self is ironic because the author feels like a 5y old in comparison to assured readers.

For some history see - https://en.wikipedia.org/wiki/Cloud_computing#History



You may find me on oftc going by cenne [irc-link]