Saturday, February 12, 2011

Reviewing ReactiveUI

I am reviewing the ReactiveUI code now and I have to say it’s some of the coolest code I’ve seen in a while!

I really like the base ReactiveValidatedObject class for building ViewModels.  The view models become so much easier for validation and INotifyPropertyChanged:

string _Name;
[Required]
[StringLength(35, MinimumLength = 3, ErrorMessage = "Names have to be between 3 and 35 letters long")]
public string Name {
get { return _Name; }
set { _Name = this.RaiseAndSetIfChanged(x => x.Name, value); }
}


The MemoizingMRUCache class looks very handy and I also like how the logging is accomplished.



The sample that comes with it has great comments and I learned more about MEF in the process.



It has a Ruby feel to with with a rake build script.



I have so much more to review.

Friday, February 04, 2011

we hatez your browser or how not to design web sites in 2011!

While visiting the www.MVA.Maryland.gov website I discovered the following message:

The eMVA store is not available to Google Chrome users. Please use another browser.


In the words of Jar Jar... "how rude"

Monday, November 22, 2010

Cheating at Bejeweled Blitz on Facebook

My new bot is complete and is scoring greater than 800k.

Check it out at http://cheatatbejeweledblitz.com/

Thursday, October 21, 2010

Your Android may one day be infected at it's core

Last night's BaltoMSDN presentation by Mike Wolf was on Windows Phone 7 development.  When I heard that all apps would need to be certified by Microsoft, I thought, "Oh, No.  Here we go with the oppressive oversight".  But after a little surfing this morning regarding mobile OS's and security I came across this white paper describing how the entire Android OS could be infected with Ad/Malware.

http://appanalysis.org/tdroid10.pdf

Let's hope Microsoft get's security right on the WP7 but is not as oppressive as Apple in app certification.

Sunday, October 10, 2010

HTML5 Canvas

I thought it was time to start learning some HTML5 so I dove into the Canvas element.

View it here