The Weekly Source Code 2
Sponsored By
In my new ongoing quest to read source code to be a better developer, I now present the second in an infinite number of a weekly series called "The Weekly Source Code." Here's some source I'm reading this week that I enjoyed.
- DasBlog 2, SubText, BlogEngine.NET, SingleUserBlog - All these blog engines are FULL of good (and bad) source. Each is a treasure trove of patterns, anti-patterns, techniques, libraries, ideas and good fun. I love firing up the source to a new blog engine as the specification is well-known and the solutions are endless.
- OpenTheme - A really strange but truly fascinating XML-based GUI toolkit (ala XAML). The article is tiny, but the source is pretty expansive.
- Charles Cook is the reigning king of XML-RPC on .NET with his very clean XML-RPC.NET library. However, Clemens has been causing trouble (the good kind) on the dasBlog team lately, and is currently moving our prototype dasBlog 3.5 forward with WCF for all non-HTML endpoints. He's using this opportunity to create XML-RPC using WCF (Indigo) (download source). If you're familiar with the crazy XML-RPC format and you're looking to learn about how WCF isn't just about SOAP, this is a good sample to start with. (Windows Live Writer uses XML-RPC to talk to most blogs, by the way.)
- While browsing Charles Cook's site, I noticed this post from January about Wesner's Hard Problems, Simple Solutions post. Wesner points to a regular expression engine in 14 lines of Python and suggests this could be ported to C# using iterators and anonymous functions. Charles responds with some really interesting C# code that I'm still getting my small head around. I believe what Charles is asking for is extension methods.
- And jagged segue...speaking of using XML-RPC on the server-side, Charles put up a sample earlier this year on how to use System.Net.HttpListener as a basis for an XML-RPC server. Both his and Clemens samples give you the building blocks to start using Windows Live Writer or BlogJet as a content management front end to your (whatever it may be) own content management system; you might also use these samples to add XML-RPC to your own blog engine...and that brings this Weekly Source Code full circle.
Feel free to send me links to cool source that you find hasn't been given a good read.
About Scott
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.
About Newsletter
I'd recommend reading the source for Paint.NET. I was really impressed by how cleanly commands were implemented there.
I want to second what Dominick said - I've been reading a chapter every second night or so, and it's been really inspiring to see how top-notch developers think and approach problems.
I'm really liking the code reading posts - a great way to get examples of how to do things and to reinforce positive habits/patterns. It's also nice to see people's ideas on what to read, so keep those coming. CodePlex, SourceForge, Google Code and the various other open source project sites have really made a lot of good code available
I'm working my way through EntLib right now. It's interesting to see how it's changed since it was "application blocks". The last time I looked through the code was right after the Data Access Application Block was introduced, and things have gotten much more sophisticated since then.
I'm working my way through EntLib right now. It's interesting to see how it's changed since it was "application blocks". The last time I looked through the code was right after the Data Access Application Block was introduced, and things have gotten much more sophisticated since then.
Comments are closed.
check out "Beautiful Code" from O'Reilly.