Thursday, February 17, 2011

Mubarak is Out, Who's Next?

It worked!

Movements like the ones in Egypt and Tunisia fail more times than not. Typically brute force from the ruler is enough to deter them, but it was never used in Egypt. I give a huge kudos to the Egyptian military for what appears to be truly acting in the interest of the people.

And now there have been similar uprisings in Yemen, Bahrain, Libya, Iran, and others. Like planting many seeds in a field, only some of these can sprout into a full grown revolution.

I'm very interested to see how these revolutions turn out in both the short and long term. I fear these revolutions leaving a power vacuum that is, more often than not, filled by militant groups. I do not envy the weight on the shoulders of the youth of these countries, as they face decisions that can shape their nation, region, and ultimately the world. I wish them the best of luck and hope they make decisions for the right reasons.

My personal opinion is that a revolution in Iran would shake the current geopolitical stage to the core. Iran is a country that is arguably the most widely despised, yet most technologically advanced and quickly if not already capable of producing nuclear weapons. The previous Iranian Revolution was quite a feat and may give hints at how another revolution may take place. Should a rather bloody protest succeed (I am looking at Libya), I believe Iran will be right behind it. Will this all lead to good, bad, or the same old? Either way it is very intriguing and something I will be sure to follow very closely.

Saturday, January 15, 2011

NFL Divisional Round Playoff Predictions

Here we are, the final 8 teams in the running for the Super Bowl. Seattle is the only team that seems out of place, Atlanta is the big question mark, another Ravens-Steelers battle, and New England is being New England. Here are my thoughts:

Baltimore Ravens at Pittsburgh Steelers: 
This series is always hard fought and physical, and this one will be no different. This will be their third meeting this season after splitting the previous two games. Both teams won on the road and Pittsburgh is hosting, but I don't think that will matter much in this game. I see the Steelers really pulling away with this game in a surprisingly high scoring affair. Of course in this rivalry that means a 22-16 Steelers win. On a side note, this has a VERY good chance of being the first playoff game to use the new overtime rules!

Green Bay Packers at Atlanta Falcons:
I think this one will be another hard fought game, making for another great Saturday of football. This is truly Atlanta's, and Matt Ryan in particular, chance to prove themselves. Of course the same could be said of Aaron Rodgers and this young Packers team. The surprising performance from rookie James Starks last week killed the Eagles, and I think he will be the deciding factor again today. Packers win a tight one 31-30.

Seattle Seahawks at Chicago Bears:
This game will be closer than most expect. The Seahawks aren't that good, but neither are the Bears in my opinion. Jay Cutler has a big arm and when he is sharp he can be great, that just doesn't happen often enough for me. Hasselbeck has playoff (and Super Bowl) experience and that does matter. So does homefield advantage and so I think the Bears win this one 28-21.

NY Jets at New England Patriots:
Another third meeting of the season and another split series. The Patriots are a different team now though. They are in Super Bowl shape already and the Jets are a run of the mill playoff team. I have a hard time seeing the Jets hang in there and so I'll keep it short with a Patriots win 34-12.

I think it will be another great weekend of games. And if I am right we will have an amazing pair of games next weekend! Steelers at Patriots and Packers at Bears that is an epic weekend!

Tuesday, January 11, 2011

Just say noSQL

I was trying to catch up on my 1000+ news items in my Google Reader (successfully I might add, though I cheated quite a bit), when I stumbled on this great article: 7 Exciting Web Development Trends for 2011. The entire article is a good read and source of further information, but item number one really intrigued me, noSQL. The term noSQL is referring to any non-relational database and an overall shift in database management instead of one particular technology. What really caught my interest was this line from the above article:
Another big factor for me is the simplicity it brings to my schema: your data models can now become a lot more sane. I can’t wait to not muck around with my models just to make it fit into the relational model.
I have often over complicated very simple database models to meet a general level of normalcy and reap the benefits it offers, regardless of how often I took advantage of them. This solution sounded great, so I dug further.

A quick google and we find what appears to be the Ultimate Guide to the Non-Relational Universe right after the wikipedia entry. But this page gives me a headache, so I looked further into the examples listed under Taxonomy on the wikipedia page. I chose Google's BigTable under "key/value store on disk" and Apache's Cassandra under "eventually-consistent-key/value store". A few key points I gathered:

  • BigTable -  "it departs from the typical convention of a fixed number of columns, instead described by the authors as "a sparse, distributed multi-dimensional sorted map", sharing characteristics of both row-oriented and column-oriented databases." BigTable is designed to scale into the petabyte range across "hundreds or thousands of machines, and to make it easy to add more machines [to] the system and automatically start taking advantage of those resources without any reconfiguration".
  • Cassandra - "The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model."

This guy doesn't like noSQL, but he writes a good article! I gathered from his article that using a noSQL approach will not have any benefit and will only add a learning curve unless you are planning to scale to Google size soon. I can fully see the validity of his point, however, I am intrigued by the players in this movement and always looking to learn the latest and greatest. Even if it doesn't take over the world, it will probably give some insight into the next big thing.

And since Facebook open-sourced Cassandra. (Yay Facebook!!) and Google provides a BigTable interface on their App Engine, I ended up focusing on these two options so that I could experiment with them. Let the fun begin!