![]() |
Wednesday, December 31, 2003 |
Roland Weigelt says: There are many exciting .NET topics waiting for us in 2004. Simply too much stuff to be tried and understood, too much knowledge to be gained. If you're making plans for 2004, here's one single thing I can fully recommend: If you're not already doing it, start writing unit tests using a test framework. Unit testing is one of these "I really should be doing this" concepts. Even though I read and heard about unit testing years ago, I only started doing it in 2003. Sure, I always had some kind of test applications for e.g. a library - who hasn't written one of those infamous programs consisting of a form and dozens of buttons ("button1", "button2", ...), each starting some test code. And it's not as if my software was of poor quality. But looking back, unit testing was the thing in 2003 that made me a better developer. I'm using NUnit for my unit tests; it's so easy to use that a typical reaction of developers being introduced to NUnit is "What? That's all I have to do?". To get started, visit this page on the NUnit website, and follow the steps in the first paragraph "Getting Started with NUnit". When I began writing unit tests in early 2003, I wrote tests for existing code. If this code (e.g. a library) is already successfully in use, this can be pretty frustrating, because the most basic tests are all likely to succeed. My first tests where pretty coarse, testing too much at once - maybe because the trivial tests (e.g. create a class instance, set a property and test whether reading it has the expected result) seemed like a waste of time. In the course of time I moved more towards "test driven development", i.e. writing tests along with the code, often even before the implementation is ready. Now, if I create a new project, I always add a test project to the solution. This way my code and the corresponding tests never run out of sync. If I make a breaking change, the solution won't compile - it's that easy. If you take this approach (writing test very early), even testing the most basic stuff can be pretty rewarding:
So... what about a New Year's Resolution to start writing unit tests? 1:12:48 PM ![]() |
Source: Jan Tielens' Bloggings The default System.Windows.Forms.DataGrid provided by the .NET Framework is a little bit limited in functionality. Therefore I've spent some time during my holidays building an extension to this default grid: the ExtendedDataGrid. At this point I've released a Beta version: 0.1 including these features:
New features and probably bug fixes will come soon so if you have any comments, questions, remarks, ... please let me know. If you are intrested in the ExtendedDataGrid, you can monitor this RSS Feed of the latest news. I know all these features are available as sample, code snippet, article, ... on the web, but I just hated to implement some of them all of the time, for each project. Also, if you are planning to use this component, or if you are just intrested: let me know, your support will motivate me to make further improvements. :-) Btw, happy new year to all of you! 1:01:04 PM ![]() |
Source: How to Save the World
12:20:21 PM ![]() |
![]() |
Tuesday, December 30, 2003 |
This magazine continues to push awesome content. Read this excerpt, but then go read the entire article. - Andy
If you want to build the most powerful company possible, then your first job is to help every person generate compelling answers to 12 simple questions about the day-to-day realities of his or her job. These are the factors, argue Marcus Buckingham and his colleagues at the Gallup Organization, that determine whether people are engaged, not engaged, or actively disengaged at work.
1. Do I know what is expected of me at work? (c) 1992-1999, The Gallup Organization, Princeton, NJ. All rights reserved.
7:22:51 PM ![]() |
![]() |
Saturday, December 27, 2003 |
Source: Ming the Mechanic The Real World. While looking for something else I incidentally ran into this little thing in somebody's webzine from '96. A vision I apparently wrote, although I can't remember exactly where. 10:28:11 AM ![]() |
![]() |
Friday, December 26, 2003 |
Source: The Scobleizer Weblog At the end of every year, it's good to think of a new BHAG -- for a Big Hairy Audacious Goal. What's your BHAG? [The Scobleizer Weblog]8:01:20 PM ![]() |
![]() |
Thursday, December 25, 2003 |
Awesome Post !!! Yearend fugue First, Mother Jones has an interview with Tony Kushner in which the "Angels in America" playwright states, with crystalline precision, the essential fact of the 2004 election. This should be etched into the consciousness of everyone who hopes that things in the U.S. can be put back on course:
One light of hope this year is that the citizenry has important and still-underestimated tools at its disposal to egg its leaders on to greatness. If you're keeping up with the blogosphere you may be sick to death by now of reading about the power of many-to-many decentralization, "social software" and the Dean campaign's remarkable online successes. But what if you're stuck inside the Beltway? Frank Rich's Sunday column this week serves as a useful reminder that most of the Washington press corps remains utterly and pathetically clueless about what has already happened during this election cycle. Jay Rosen's annotation of Rich's column is well worth reading, too. So we're fortunate to live at a moment when the technologies many of us have enthusiastically embraced for two decades are showing signs of achieving social and political ends beyond simply bringing delight to geekdom or fueling the stock market. Cory Doctorow has good words here:
(And Kevin Werbach points out that technology and policy are always intertwined.) Finally, as many of us retreat from the daily grind to take year-end stock, I want to offer you this wonderful passage that Kevin Kelly cited earlier this month on his Cool Tools blog. It's from a book titled "Art & Fear: Observations on the Perils (and Rewards) of Artmaking," by David Bayles and Ted Orland, that I will have to add to my 2004 reading list.
Which, I suppose, is an anecdotal version of the Nike slogan, "Just do it." But I prefer the Samuel Johnson version: "Nothing will ever be attempted, if all possible objections must be first overcome." Thanks to Salon's subscribers for keeping us going through these thin years -- and special thanks to all the Salon bloggers for keeping their "quantity" and "quality" fires stoked. Happy holidays to all. [Scott Rosenberg's Links & Comment] 9:28:47 AM ![]() |
![]() |
Wednesday, December 24, 2003 |
Source: WebLogs @ DotNetJunkies.com Okay, it's time to take the wraps off. Kathleen Dollard, simply the smartest person I know, has finished her Code Generation in Microsoft .NET book for APress. I guarantee that this will be the hardest book you read in 2004, but also that it will be the single most important book for making you as productive as you can be as a .NET or SQL Server programmer. You know all that boring, repetitive code you write for a typical application? Do away with it and generate it automatically, letting you focus on all the custom, interesting, fun, and ground-breaking code that goes into every application. Disclaimer: I am the book's tech editor and was Kathleen's go-to guru for XSLT. So I'm intimately familiar with everything the book talks about--particularly as chief guinea pig, since I was the first person to do a real application using her templates and techniques--and I can heartily recommend it. Even if you use a framework or other development technologies, you'll learn a lot from her explorations of codegen in .NET. My #1 book recommendation for 2004, even though it hasn't started yet! [WebLogs @ DotNetJunkies.com]6:50:14 PM ![]() |
Source: Frans Bouma's blog Signing your assembly, newbie guide. Follow these easy steps. The first 4 steps you only have to do ONCE in your life. Step 5-7 you only have to do ONCE per project.
*Pfew* I have to lay down now to take some rest after this long, thorough lecture. Sorry people, but you don't need a plugin which requires registration to do this easy stuff. If you can program software, you can sign your assembly. If not, what are you doing near that keyboard? ;) The signed assembly can be freely distributed to your clients/customers. They can reference it in their .NET projects without having to worry about public keys, public tokens or other hard to understand material. The world is already very complex, let's not make the easy stuff look like it's very complex also. Update: Thanks to 'Prima Donna' Robert Mclaws for pointing to a typo in the title. 2:39:22 PM ![]() |
![]() |
Tuesday, December 23, 2003 |
Source: Keith's Weblog Michael Chrichton to the Commonwealth Club in San Francisco:
I could make a similar point about secular humanism and evolutionism. Well, I suppose I have in the past. I'm trying to remember a quote I heard about man being inherently religious. I thought it was by Francis Schaeffer (it's possible I was thinking of something by C.S. Lewis as well), but I found this from Edmund Burke: "Man is by his constitution a religious animal...atheism is against, not only our reason, but our instincts". I'm not sure whether I think this contradicts Burke, or supports him, but I'd say that man is so religious that he makes even atheism into a religion. [Keith's Weblog]5:32:30 PM ![]() |