Extremely foggy with a chance of flash flooding?
In conformation to all my erstwhile blogs, this one comes a long time into my torpid self, among cisrcumstances which are extremely foggy with a chance of flash floods and I am concerned, immensely concerned.
Howbeit, it is not the weather that is accountable for my perplexities but the technological revolution that has widely gained the term- "Cloud". However, it is the concept and ideas behind it that seem to be extremely foggy in terms of global perception and if this goes on, there is a good chance of flash floods. Before you go calling me a muttonhead (or an equivalent in whatever language/ slang you curse in for that matter), please do consider the following 'iotas':
Inadequate Vision
Most organization are just diving into this cloud without proper understanding of their needs and future goals. Yes, the cloud means you can expand or go smaller but proper/ correct usage of the cloud means the development of very specifically designed systems. This also means that from among the hundreds of cloud services, you have to choose the right solution so you can actually make the most of it. An example would be if I use AWS, I can implement APIs' using EC2 Servers(For maximum control of design), ECS (Using docker containers for rapid deployment; but longer development time), AWS Beanstalk (For quick deplyment and development) or simply AWS API (For simple, less compute systems). But this choice is not just to resolve the issues at hand but with a clear vision for the future. As you get mre used to any of these services, you application will grow as per a very specific design and a complete overhaul for meeting the growing needs may be resource intencive.Improper System Designs
I propose talking to 5 'cloud-based' professionals. They all will have a different interpretation of the same systems and heck, even of this so-called 'cloud'. Everyone's ideas are very specific to their use cases and needs. This is okay but perspective doesn't chance facts. For example, the organization resources/ ideas should not drive cloud-based development but rather, the needs of this cloud-based development should drive the organizational goals. You just cannot have all that cake, eat it and that too without any consequences! You have business goals pertaining to say sales; which determines the product but the infrastructure choice and needs should determine the development and not the other way round. Why would you run a single process light application of large dedicated servers just to ensure you have those resources that 'may be needed' instead of designing your application to use load balancers and dynamic resource allocation actively.- Poorly implemented Security
Affirmative, Amazon, Google, Microsoft, and Facebook - all have great security measures in place but in terms of safety, your system is only as strong as the weakest link in your system. Great doors and amazing locks will not safeguard you from that one person who failed to lock the door. This means that even if the organizations do everything in their power - to enforce MFA, encryption, use secure databases, train employees to keep locations safe, use proper security groups, get costly insurances - in general, give everybody a hard time, it won't safeguard anybody if the application users don't play their part. With the cloud, everybody has a similarly implemented system - which takes away a lot of guesswork on the part of malicious 'hackers'. I can subscribe to AWS, setup a great application and see how I can hack it. If I can on my system, I may be on yours too. It is just like giving everybody similar doors and locks and hoping they keep their keys in good shape and use them properly. Even if they do, nothing can stop me from designing that 'skeleton key' based on my experience with all these doors I have on-demand access to. No longer do I need to buy a 100 different ones of these and arouse suspicion; I can just rent them like anybody else.
I do accept that all of the above may merely be me reflecting what everybody knows and may be very prejudiced opinions - but I'd love to get in a discussion with that one guy who 'thinks' he knows otherwise. You can't do it all, but at least learn about all the options and then do the best you can. The clouds are limitless and spread all along the horizon. Do not let the fog blind your vision and do not allow these clouds to become an illustration of poor management decisions. If something is new, doesn't means it the best for new and similarly if you 'think' something is the best, it doesn't undervalue the good ol' thing called 'research'. I promise this cloud grows faster then you can see and you need to have the proper approach to be able to sail your ship through.