Category Archives: Programming

When Events Go Bad

Yes­ter­day, I dis­cov­ered the dark, evil, brood­ing side to using lamb­das to hook up events, even though they look so cool. Here’s an exam­ple: pub­lic void GetCustomerOrders(string stor­eId) { Proxy.DocumentDownloadCompleted += (data) => this.HandleCustomerOrders(data); Proxy.GetXML(“customerorderservice.svc/customerorders/” + stor­eId); } All well and good, that works like a champ. Usu­ally. As long as you don’t want to

ASP.Net MVC Training Kit Released

Microsoft has released a train­ing kit for their ASP.Net MVC frame­work which you can read about here and get here.

I’ll Ajax The Crap Out Of Your Site

I have no idea if this guy is for real or not but I want to work with him just to watch him “pull your data asyn­chro­nously from every ori­fice of your server.” That is the sweet­est solic­i­ta­tion for a job I’ve ever seen I think. And I say that hav­ing seen 2 or 3

ASP.Net MVC 1.0 Released

It’s ALIVE! This is a suc­cess for Microsoft and the ASP.Net MVC team. The soft­ware is solid, does what it is sup­posed to and doesn’t get in the way of the devel­oper. It makes it easy to test, it’s exten­si­ble and it makes writ­ing web pages fun. I wrote a web­site back in Novem­ber using

Note To Self: Linq To SQL STILL Doesn’t Support Back References

This is a pub­lic ser­vice announce­ment. If you’ve got a class like this: [DataContract(Namespace = “”)] [XmlRoot(Namespace = “”)] [Table(Name = “dbo.PurchaseOrder”)] pub­lic class Pur­chase­Order : Domain­Base { [DataMem­ber] [Column(IsPrimaryKey = true, IsD­b­Gen­er­ated = false, Can­Be­Null = false)] pub­lic Guid Id { get; set; } [DataMem­ber] [Association(Name = “FK_PurchaseOrder_PurchaseOrderDetails”, Oth­erKey = “Pur­chase­OrderId”, Stor­age = “details”)] pub­lic

More Programmer Porn

Yum. Pro­gram­mer par­adise indeed. One of the down­falls of being a con­sul­tant is never hav­ing a set up like that.

What ASP.Net Gets Wrong But ASP.Net MVC Gets Right

Ready to Quit ASP.Net I have to admit, I love writ­ing web apps on the MVC framework.

TDD Efficiency

Microsoft Research has put out a paper with data that shows imple­ment­ing TDD increases your devel­op­ment time by 15–35% but decreases your pre-release defects by 40–90%. This is in line with my expe­ri­ence and women’s intu­ition. I haven’t quite made it through the entire paper but you can read it here.

Silverlight Security Exceptions With WCF Services

From the pub­lic ser­vice announce­ment depart­ment, this is an issue I recently strug­gled with and since I didn’t find much help on the web, I thought I’d con­tribute. If you’re try­ing to hit WCF ser­vices (ours are REST­ful but I’m pretty sure this hap­pens on reg­u­lar ser­vices as well), you may get weird secu­rity excep­tions

Continuous Deployment

When Con­tin­u­ous Inte­gra­tion just isn’t hard­core enough. What an amaz­ing and fas­ci­nat­ing place that must be to work, an envi­ron­ment where dis­ci­pline to their process enables them to deploy code to pro­duc­tion up to 50 times a day. The scripts that mon­i­tor sta­tis­tics and per­form analy­sis on the result of the par­tial roll­out are inge­nious. But