Bayesian Filters Are Cool

3/29/2007 3:44:32 PM
I've been working on a little side project and found the need to filter data into "good" and "bad" types of data. After a bit of research, I settled on giving a simple Bayesian filter a try. I essentially modelled my approach off of what I had seen in spam arena since the ideas about good/bad data were similiar (though my data includes both words and numbers).

Well let me just say - cool stuff. Surprisingly easy to implement and once you get them trained, they do a very good job. I've trained my filters on about 1000 pieces of data and so far, the filter is able to correctly filter out the bad data at about a 90-95% rate, which is more than good enough for my scenario.

I read a quote somewhere once that said Google used Bayesian Filters like Microsoft used if-then statements. Well, if true, that is a scary thought now that I have experienced them first hand.


Slick Thoughts

Vista Gadgets - What The Heck

3/19/2007 1:15:41 PM
I know this has been pointed out countless times before, but how in the world did Vista ever make it out the door with the Sidebar not supporting WPF? HTML and javascript is the way to develop a supposedly cool Vista feature. Ohhhhh my.

I have to get into some gadget development to prototype some things for a customer, and after having experienced the goodness that is WPF, all I can say is "Some one should be shot". Stuff that would take a little smattering of XAML is utterly painful in HTML/javascript. Partly because I am a javascript hack, but also because it just feels so wrong when I am creating something for Vista.

I am sure it has something to do with some lame brain idea to have some kind of synergy between Live Gadgets and Vista Gadgets, but with the whole Live strategy seeming to be in utter disarray (or at least I have no clue what it is, and that says a whole lot right there), no WPF gadget support just seems ridiculous.

Ok... I will go crawl back under my rock now.



Should I Be Able to Elect the French Prime Minister?

3/13/2007 10:21:08 AM
A DFL representative (democrat for you non-Minnesotans) in the Minnesota legislature has submitted a bill that will grant non-citizens (see illegal immigrants, tourists, you name it) the right to vote in local elections. I sit here, absolutely dumb founded that anyone, Replican, Democrat, Communist, whatever, would actually submit such legislation.

The actual citizens of a country should be the only ones allowed to vote for their elected representatives. Why not just mail 50 million absentee ballots each Minnesota election to various countries around the world. Might as well hand out ballots as part of the customs process at the airport. Seriously, what right would I have to vote in France? None. And why should I? I am not French, I am not a citizen of the country, and I have very little attachment to the country. Not only that, but the door to rampant voter fraud and "mass importation of temporty voters" is left wide open. Who could not vote? How would you know if they voted more than once? Unreal.

Apparently the DFL in Minnesota figures anyone and everyone, citizen or not, should be able to vote. The only good news is that if the bill is passed, it will require a vote by actual Minnesota citizens to make it turn into law. Hopefully, Minnesotans are smarter than to go down that slippery slope.



Extension Methods with ScottGu

3/13/2007 8:57:39 AM
Scott has yet another great post, this time on Extension Methods. I didn't know about this new feature, but now am very excited to get to use it!



WPF and the Missing DataGrid

3/12/2007 10:57:24 AM
I've been getting into WPF more and more lately. It is a lot of fun and once the tooling really catches up and there are more example apps and tutorials, I think the learning curve will drop a lot. One of the big complaints I hear is the WPF does not ship with a datagrid. There are a couple of third party options, but now that I have started to actuall build some stuff with WPF, I think you have to really step back and see if you really need a datagrid.

The datagrid makes it easy to lay out data, especially in the layout challenged world of WinForms (as compared to WPF at least). Using nothing but a simple listbox, you can do some wonderful things as far as data display. For a lot of scenarios, this easily replaces what you were using the datagrid for. With a touch more work, you can easily add some sorting and filtering capabilities as well.

If you need advanced mult-column sorting or filtering, inline data editing, etc. then maybe you do need one of the 3rd party grids. But if you need to do basic display/sorting/filtering/etc., WPF gives you all the tools.


Slick Thoughts

You are Worth the Value of What You Work With?

3/9/2007 9:58:30 AM
I read this interesting post concerning the "Myths of Linux". While I think the article is pretty good and agree with a lot of it (some of it seemed a bit of hyperbole), one section made me sit up and think.

Discussing who is really benefited by Linx, the author states

Employees often are valued based on the cost of what they work with. The higher the cost, the easier it is to justify an employee’s salary. More important, if a product is expensive, the focus is often on the cost of the product, but if the product is free, the focus is on the cost of the employees.

I thought that was very interesting and in many ways true. As just a quick data point, for a very long time (perhaps still true today), UNIX administrators made a lot more money than Windows administrators. This was despite that fact that in the early years of Windows one could argue that the Windows gang had to do a lot more work on a per server basis than the UNIX folks did. But UNIX cost a lot, and thus justified the higher salaries. Some of that was of course due to UNIX requiring a bit more knowledge, but really, it was not enough to justify the wage descrepency when compared to work load.

So what happens when the product you support is free? The perceived value of what you do is not all that high. Or worse, it is perceived as something that can be done equally well for less money than what you are making now (see outsourcing). It was an interesting point. I haven't thought it through all the way, but does commodization of a product commoditize the people that are experts in that product?


Slick Thoughts

C# 3.0 Object Initializers

3/9/2007 9:33:48 AM



C# 3.0 Automatic Properties

3/9/2007 9:32:37 AM
Nice write-up of C# 3.0 Automatic Properties and how it works under the covers. A feature I am really looking forward to.



Visual Studio SP1 Released

3/6/2007 4:55:32 PM



Movie Physics

3/6/2007 10:55:49 AM
A fun read on physics (or not so much physics) in movies.



Powered by BlogEngine.NET
Theme by Mads Kristensen

About the author

Jeff Brand Jeff Brand

This is the personal web site of Jeff Brand, self-proclaimed .NET Sex Symbol and All-Around Good guy. Content from my presentations, blog, and links to other useful .NET information can all be found here.

E-mail me Send mail


<<  August 2014  >>

View posts in large calendar

My Twitter Updates


Recent comments


The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2014

Sign in