I recently discovered https://lekh.app which uses web assembly. I had a conversation with the developer and he told me that he is using web assembly for the core diagramming and shape recognition logic. The app is for diagramming and whiteboarding.
The whole diagramming and AI (to recognize shapes) is compiled into ~1M of web assembly.
I am the developer of https://lekh.app When I first experimented with the web assembly, it was kind of magic for me. I had a diagramming app called Lekh Diagram (https://lekh.app/diagram.html). The core logic was written in C++ and is being used in Android and iOS apps. I wanted to make a collaborative web version of the app. Initially I thought I would have to rewrite everything in Javascript. But when I first tried to compile all the c++ code into web assembly, it was around 4M of web assembly. And the performance was awesome. I was pretty satisfied with 4M. Then I started developing the Lekh Board (web version of the diagramming app). Later in the development phase, I realized there is a flag which I can pass to reduce the size further. Then I got the web assembly size ~1M.
I am not surprised by your calculation. Amazon has to earn from the service it provides. It is not on the basis of no-loss no-gain.
It is well known that the EC2 is great if you have to quick start your system without worrying about the hardware infra. It is also good for initial quick scaling. And it is good to some extent of scaling after that it is not advisable? If would be cheap, then why not other big companies will use amazon rather than managing their own data center?
Understood that Amazon needs to make a profit, but these are still dollars that I need to pay for, that I could be feasibly be using for something else (hiring great developers perhaps.)
I think the advantage of EC2 is exactly fast scaling, and an easy sell to management (no big upfront.) But as we started using it at size and consistently, it is just cheaper to run our own hardware as the blog attests to.
We do all the racking and cabling using "remote hands" directed from our SAs in India, and so far for us this has not been the complex part. Getting the Hadoop configured and our software running efficiently if several orders of magnitude harder, and EC2 doesn't I think help here. If anything it hinders as we are dealing with virtual hardware. There have been several posts about "lemon" EC2 instances and how you should test your instance before using it.
Using EC2 also takes away a part of the risk. If your startup fails in a year, then you don't get stuck in the end with a pile of hardware (for which you paid big bucks).
I guess that the best would be to use EC2 in the beginning, when you don't really know how much hardware you need, and later on use EC2 only for demand spikes.
Yes - this is what we are doing. With this 4x cost differential however, we calculated that it takes only 6-8 months to have the hardware pay for itself, so if you plan to be in business in that time frame you are better of buying.
80 pct seems to be exaggerated. I live in India and have seems big cities to small villages. I know that big population lives on half dollar a day but not 80%
Vice-Versa is also true. There are few things that universities are good at, most of the professionals are not. I don't think it is wise to compare universities with professionals.
There is similar pattern in other type of industries too.. As you grow in the career path, you move more towards management role.
If you write code, most of the time you spend on very small part of a big software. Your impact is very less on the overall product. Being an architect, you have more impact on the product
You certainly have more of an "impact", but that might be just that everyone hates you.
However I'll go with the nugget of wisdom in your post: Some coding involves lots of hard work to small parts of a program, so you don't have much overall impact on the product.
This is typically because you're doing it wrong. You're either using the wrong language (eg. C for a GUI product), or you're reimplementing wheels when you should be using a library, or you're not able to inspire others to join the project and help out on some details.
Or, very very rarely, what you're doing is ground-breaking and highly skilled. You can only write one line of code each day because it needs so much thought. This is not something that one often associates with "architect" and "program manager" in an organization.
Just used Delicious and Evernote together. With keeeb I don`t have to use 2 tools (and their cluster-function is nice for my research to do's at a financial investment company)