At Last, Amazon adds DynamoDB Auto Scaling

Earlier this month, Amazon added a long-requested feature with the introduction of auto scaling to DynamoDB. This allows read and write capacities of DynamoDB (of tables and global secondary indexes more accurately) to be adjusted automatically based on the demand. If you haven’t used DynamoDB before, you might be wondering why is this important? One reason: cost. DynamoDB charges you by how much you provision. You end up paying the full cost by provisioned amounts, even if you use less. In other words, if you overprovision (e.g. for peak load), you’ll pay extra during the non-peak hours, when it is used less. On the other hand, if you underprovision (e.g. for average load), the performance of your application will suffer due to throttling when load exceeds the provisioned capacity.


AI Is Not Magic. How Neural Networks Learn

In my previous blog post, I claimed that “AI is not magic.” In this post, my goal is to discuss how neural networks learn, and show that AI isn’t a crystal ball or magic, just science and some very slick mathematics. I’ll keep this very high level.

Let’s start with a hypothetical scenario. Suppose we are building an app to identify hot dogs. Take a picture and the app will tell you if it’s a hotdog or not. Total App Store domination.



AI Winter is Coming?

AI winter is a period of ‘reduced funding and interest in the field of artificial intelligence.’ AI winters are preceded by hype cycles and ambitious claims of what AI can do. Money into research and AI companies pours in and expectations are inflated. But it doesn’t last and after a while, pessimism takes over the community and spreads to press, investors and government. Budgets are slashed, funding is stopped and AI research virtually dries up. There have been two AI winters: first one in the 1970’s and the next in the 1980’s.


Fix Employee Weaknesses or Focus on Their Strengths?

In “First, Break All the Rules: What the World’s Greatest Managers Do Differently” the authors, Marcus Buckingham and Curt Coffman, have put together their observations from more than 80,000 Gallup interviews they conducted with various leaders and managers over a period of 25 years. The book is full of excellent insight into what great managers do and don’t do and debunks several traditional management myths. One such myth is that people are capable of almost anything if they work hard enough or everyone has unlimited potential. According to the authors, this is a complete fallacy and while it is an uplifting thought, it is far from reality.


Tweaking TCP for Real-time Applications: Nagle's Algorithm and Delayed Acknowledgment

TCP is a complex protocol.

Don’t get me wrong. It is a marvelous piece of engineering that gives us the reliable data transmission guarantee that other protocols don’t provide. Reliable data transmission between two devices on the internet is no walk in the park and TCP uses a lot of magic under the hood to make things happen. Generally, it does a fine job of abstracting away low level details and its default settings work fine for most general purpose use cases. However, once in a while, things don’t go according to plan and we need to pop open the hood and do some tweaking. It is in these situations, that some knowledge of TCP comes in very handy.