…piece about their use of Redis which serves as a nice step through basic uses of that store. Vineet Gupta has attempted a more detailed and wide ranging review of the current options - it's an interesting read, but I do increasingly wonder why so many of the arguments for non-relational data stores seem to be focussed on performance when there's an equally strong "right tools for the right job" line that comes of realising not everything necessarily maps to …
To get you started, have a look at Vineet Gupta's excellent overview of the NoSQL landscape .
Don't Believe Everything You Hear
If someone tells you that you should try a specific tool, ask him why. If the answer is speed, or because it's written in Erlang and scales insanely well, it's time to call bullshit on him. MySQL can be fast too, that's not an issue. It's nice to be able to have a database that you can scale up to hundreds of nodes …
At Directi, we are taking a hard look at the way our applications need to store and retrieve data, and whether we really need to use a traditional RDBMS for all scenarios. This does not mean that we will eschew relational systems altogether. What it means is that we will use the best tool for the job - we will use non-relational options wherever needed and not throw everything at a relational database with a mindless one-size-fits-all approach.
I migrated my blog from Windows Live Spaces to Blogger via Wordpress in the process of resurrecting http://www.vineetgupta.com/ .
Choice of blogging platform - the two choices were wordpress and blogger. Wordpress has a lot of plugins going for it, and supports static pages. However, I ended up choosing blogger for the following reasons:
Everything in blogger is free. Wordpress charges for certain services which were important to me - custom domains and custom CSS
We recently started off on a couple of projects that target the JVM. The team had no prior Java experience but had worked on C#/.Net. We found Java tedious and ceremonial and decided to investigate the other languages that target the JVM - Groovy , Scala and Clojure . These notes summarize findings based on my interpretation of the language specs, examples and scanning the project sites. They are not based on any real programming experience on these languages.
We recently augmented the team working on our desktop product. At the core of the product is XMPP - the protocol that drives several instant messaging servers and clients, sites like Chesspark and now Google Wave. Since XMPP is not known by many people, let alone be understood well enough, every time we on-board someone new, they have to go thru a steep learning curve. This post is an attempt to make it easier to understand the protocol .
What is XMPP
entity_767 …
When the Twitter reply feature tweak story started breaking, my first reaction was - this could be us in future. Watching Twitter struggle with the change and the backlash it generated was a big public lesson in product design, tech implementation and communications, and I thought I should document it here, lest I ever forget it.
For the uninitiated, Twitter recently removed a setting where you could see responses by people who you follow to other people who you don't follow. This …
One of the cornerstones of the . PW platform is the Wall - the real time aggregate of activities being done by an entity and its network. So while I am personally rather inactive on the various social networks (way too distracting), the recent announcement by FB on opening up their feed via activity streams led to some analysis and thought - here's a summary.
The Premise
A user carries out several activities across multiple systems - posting items, joining forums, connecting to people, etc.
After publishing my previous post , I had thought that I would not be coming back to Crypto for a while. However, today evening Sebastiaan posted on SCRAM on one of the Directi mailing lists, and I got compelled to write down this one.
Authentication in Cryptography has two aspects: data authentication and entity authentication. Data authentication is addressed using HMACs and Digital Signatures (discussed in my previous post). What we are talking about …
Most developers whom I have come across, lack a solid grasp of the fundamentals of cryptography. When a developer who does not understand crypto needs to use crypto, several things can go wrong:
• Not understanding the implications of using some crypto technology in the code
• Not realizing where to use crypto
• Not implementing crypto correctly and hoping that the implementation is correct
• Not implementing crypto correctly, but feeling secure because "we have used cryptography"