Starting From Scratch
I'm going to pretend that I know nothing about computing and the industry. I think it's the only way I can maintain my sanity. I know too much and it is hindering my ability to do anything. So my new approach is to throw out all of my paradigms and start from scratch. In other words, I'm killing my strategic thinking and paying attention to the stuff right in front of my face.
What's in front of my face is AWS. It is the platform for the next 100 days. Forget the next year or anything else. My intent is to master Amazon, not to leverage its capabilities for my EPM vision or anything like that. It's to get in it and walk around it and make it my home.
What I've been up to.
What I have learned in the past year is the importance of infrastructure and a few things about making it work better for myself and my customers. Speaking at a very high level, I have changed the way I think about computing in general and EPM in specific. What I have decided is that infrastructure is the critical difference in productivity because when application people run up against infrastructure walls, that is when the most time is lost and people are the most frustrated.
The solution is both simple and complex. It is simple because the infrastructure game has been completed and the answers are out there. It is the cloud, but more specifically it is in customizable elastic platforms. It is about enabling applications to float free of IT constraints by defining a stack that can be put together and taken apart and rebuilt quickly and reliably. It is complex because it requires you to abandon a large number of assumptions about application environments, learn what you don't know and expand your technical discipline. And of course it means you have to exert control over your customer's environment, which is generally the very last thing they will allow you to do. I am not going to talk about strategies for getting decision makers to migrate applications to the cloud - I'm going to talk about the new skillset, the relevant problems and what I see.
Application Software is Temporary
This is a relative term. But it is buggy and temporary when compared to infrastructure software. Infrastructure software, including operating systems, disk subsystems and networks are more reliable and predictable. They are a bit more complex to understand, but once you know them, they behave well. You are much more likely to find bugs and grey areas in apps software and APIs than in infrastructure.
Stacks Are Cheap
Once upon a time not long ago, the phrase ‘disk is cheap’ changed the way we thought about computing. All the old naming conventions and file hierarchies changed when we got beyond FAT, when we could mount drives and consider RAID alternatives and hot swap or NAS or SAN. Now I’m saying that not only is disk cheap, but servers are cheap, and stacks of servers are cheap as are the configurations between them. In order to master the new compute paradigm, you need to understand how to erect, modify, collapse, destroy and rebuild whole stacks. Long ago, the most dangerous command was ‘format’. Now imagine that you can ‘format’ entire infrastructures. That’s the new discipline.
Data Must Persist
Data must persist in all forms, as must metadata. Everything you do to transmute, compute and play with data is transient. Think of your business rules as a set of protocols. These protocols must exist above and beyond the data, but the data itself stays around in your stacks. What applications you use to communicate and manipulate your data is transient as well. In other words, your applications are just babysitting your data, but data really lives in your infrastructure. Databases are merely applications. What matters most about database technology is how quickly you can spin it up and spin it down, swallow raw data and spit it out.
The Datacenter is the Map
A company needs a data center. And now all of the models of real interest are about how you build, customize, and destroy compute resources. It’s pretty much simple as that.
Secure or Die
It’s your net against the world. You live in the Matrix and every individual can be an Agent. Your network should be penetration tested. Your security model should be very robust in terms of creating access and destroying access. If you have to cheat, ever, then you are ultimately doomed.
OODA Speed
You’ve heard of it before. The OODA loop is the benchmark of competitiveness. The faster you can iterate through design, build, test & deployment the more adaptive your applications will be, the more competitive advantage you have. Now widen the scope from applications to application systems and thus to infrastructure and compute resources. That’s where my head is at.
Assume AWS
Assume that Amazon will be the platform. Assume that Amazon is, essentially, what the computer is in Star Trek – what the Ship Mind is in Iain Banks’ Culture Series. It is the global compute facility and the last place you have to shop for your datacenters. So then here is the shopping cart – the AWS products:
|
CloudFormation |
ElasticBeanstalk |
S3 |
|
CloudFront |
Elastic MapReduce |
SES |
|
CloudWatch |
IAM |
SNS |
|
EC2 |
RDS |
SQS |
|
ElastiCache |
Route 53 |
VPC |
If you can understand and master these products, then you can be king of your own datacenter and establish compute resources for any organization of any size, from your home. That is my intention, and that’s where I start. Nothing I know about computing matters in the same way it used to. It’s a whole new world.


Comments
Post new comment