How Fluent Cassandra Handles Runtime Types

Today I had the question come up about some wonky behavior with retrieving data from Cassandra for non-string types. Here is the issue in a nut-shell: dynamic obj = record.CreateSuperColumn(); obj.Id = 1234; obj.CreatedOn = DateTime.Now; obj.IsOnline = true; // blah blah blah save to database and retrieve Console.WriteLine(obj.Id); // (some unprintable characters) Console.WriteLine(obj.CreatedOn); // (some unprintable characters) Console.WriteLine(obj.IsOnline); // (some unprintable characters) To understand why this is happening we first must talk about how Cassandra stores data in the database. Cassandra stores everything by columns either by super-column or a regular column but for the sake of this post we are just going to talk about regular columns. These regular columns are made up for three properties: ...

June 7, 2010 · 4 min · 642 words · Nick Berardi

Your First Fluent Cassandra Application (part 2)

Last time I demonstrated how to create your first Fluent Cassandra app. After we finished learning about how to create records and save them to the database, I issued a challenge to implement comments for our command line blog app we created. I hinted at how I would have done it with this column family configuration: <ColumnFamily Name="Comments" ColumnType="Super" CompareWith="TimeUUIDType" CompareSubcolumnsWith="UTF8Type" /> And this is what we are going to implement today. ...

June 6, 2010 · 6 min · 1140 words · Nick Berardi

Your First Fluent Cassandra Application

As your are probably aware by now if you follow my Twitter status or have looked in to some of my recent posts. I am developing a library called FluentCassandra which is a .NET library for using the Cassandra database in a .NETty way. The project has progressed quite nicely in the last couple of months and I am finally ready to start talking about it and giving examples on how it can be used in your applications. So lets gets started… ...

June 2, 2010 · 6 min · 1160 words · Nick Berardi

That No SQL Thing: Column (Family) Databases

Just wanted to mention a very well written post that explains Column Family Databases, like that of Cassandra, in the most straight forward way that I have found to explain the concept to .NET developers. I have no doubt that most of you who read Ayende’s blog have already seen this, but for those that might have missed the post, or don’t follow him, here it is: http://ayende.com/Blog/archive/2010/05/14/that-no-sql-thing-column-family-databases.aspx The fictitious fluent interface that he demonstrates in this blog post was a great inspiration to my own Fluent Querying that I have included in Fluent Cassandra.

May 24, 2010 · 1 min · 95 words · Nick Berardi

6 Git Commands To Get You Started

I have heard a lot of chatter on blogs and twitter about how people just don’t get git. They exclaim it is too hard to learn, too hard to work with, doesn’t make sense, and on and on… To put this bluntly, I think they are just complaining for the sake of complaining, or at the very least they never bothered to learn how to use git. So as a remedy to this, I am publishing the only 6 git commands that you really need to know to get yourself started for a project where you are the sole-developer. ...

May 21, 2010 · 2 min · 383 words · Nick Berardi

.gitignore Config File For .NET Projects

I wanted to post this mostly for my future reference. But I think it is also equally as useful to anybody else with a .NET project that is using the Git as their source control, and want to make sure non-code extras that come with .NET projects don’t get checked in. .gitignore File This file specifies the paths and files to ignore in your project. Each line constitutes a new path, and each one can use basic RegEx to generalize the ignore checking. ...

May 19, 2010 · 1 min · 196 words · Nick Berardi

TimeUUID only makes sense with version 1 UUIDs

In a world where we are all use to dealing with objects we often forget that everything gets reduced to ones and zeros before being transmitted over the wire to the destination. Most times the destination easily handles converting this object back in to an object on the other side that is easily understood and consumed. The frustration comes when we run in to a situation where the other side doesn’t understand our transmitted data. This can often cause us to pull our hair out, become irritable, and throw out hands up in disgust. Well recently I have been doing all that when trying to solve what sounds like simple problem on the surface. Sending the bytes of a Type 1 UUID, or GUID, over the wire from .NET to a server running on Java. ...

May 16, 2010 · 4 min · 720 words · Nick Berardi

Download My Visual Studio Color Scheme

As a developer I spend probably way too much time in front of Visual Studio, and if you are like me you start optimizing the color schemes, fonts, and layout of code for maximum readability. And it is a huge pain in the butt if you have to port these settings and preferences across multiple computers for work, home, and whatever other computer you sometimes program at. That is why I was delighted to stumble across studiostyles.info, which allows you to configure the color schemes of Visual Studio. It even generates compatible settings files for Visual Studio 2005, 2008, and 2010, so there is no more need to keep multiple settings files in sync across your machines for the different flavors of Visual Studio you program in. ...

May 3, 2010 · 3 min · 481 words · Nick Berardi

Show CodeRush Xpress 10.1 Menu in Visual Studio

As promised here is the updated scripts for CodeRush Xpress 10.1, which was released about a week ago. The Keyboard Command Way Shift+Ctrl+Alt+O The Registry Hack Way Show Menu for CodeRush Xpress (x86) Show Menu for CodeRush Xpress (x64) As seems to be my habit I will state this again: I really wish DevExpress would stop treating the registry as a dumping ground and creating a new parallel registry path with each new install, it makes customizing the registry settings very difficult to keep up with. I could see it for each major version, but common is a new registry path really needed for each minor version?

April 23, 2010 · 1 min · 107 words · Nick Berardi

Visual Studio Extensibility - Code Camp 2010.1 Presentation

Here is a copy of the presentation that I presented at the Philly Code Camp 2010.1 today. If you attended, thank you. If you didn’t attend here is the basic overlay of what I presented for you. Here are a couple of links used and referenced in the presentation: msdn.microsoft.com/vsx blogs.msdn.com/visualstudio The source of the examples I used: editorsamples.codeplex.com/ github.com/managedfusion/spark-visualstudio

April 10, 2010 · 1 min · 60 words · Nick Berardi