Archives
-
Collections and caching redux.
In feedback to the Collections and caching post, ServProvAdmin asked enough quick questions to fill a whole post.
-
The most frequently questioned answer in I.T.
The post on “the two most frequently asked questions in I.T.” gets a fair bit of traffic and is worth following up with an easy suggestion to try:
-
Collections and caching. Don't hit the database, hit memory.
What's a collection? The dumb answer is that collections are objects that implement ICollection. A slightly better answer would be to say that collection is a group of instances of any given object type or struct. One customer is an instance, many customers is a collection.
-
Validating Sections of a Page... Again.
The other day I described how to check the values of individual validation controls on a page rather than the entire page. It worked fine, but it meant writing blocks of code that I found kinda klunky (see that post for an example).
-
Generating a Comma-Delimited File from a DataSet
This is a pretty simple block of code. There are other ways to export a CDF, this works for me.
-
Validating Sections of a Page
I built a DataGrid with an EditTemplate to edit records and a FooterTemplate to Add records. I made the footer invisible and put a ButtonLink just below the grid to expand the footer. Then I made an if (IsValid) {}
section around my code to Update a record, and another around my code to Add a record. -
The two most frequently asked questions in I.T.
The two most frequently asked questions in I.T.:
1) How long will it take?
2) How much will it cost? -
Version Switching between 1.1 and Whidbey
I almost forgot to mention the handiest utility for anyone who installs the .NET 2.0 Framework: Denis Bauer's ASP.NET Version Switcher. Since it is simply a beautiful GUI for the command-line aspnet_regiis.exe utility, it works great for switching all your applications between 1.0, 1.1 and now 1.2x. Go get it!
-
ASP.NET 2.0
Finally, the cone of silence is lifted.
-
Grand Rapids .NET User Group Presentation: Distributed .NET
Slides
The slide deck I used was a combination of decks by Clemens Vasters and Steve Swartz. While my presentation was designed to teach the patterns and language of all varieties of distributed development, theirs are focused on code and data respectively. -
Home Page Updates in RSS
I'm not much of a repeat site visitor. News and blogs are in the daily routine but little else. For sure not with any consistency. By the same token I can't expect friends or family to stay up to date with changes on my site. So I've added an RSS feed to erobillard.com.
-
CanCon Junction
Background: Gerry and Larry are at a Canadian music awards show. Larry blurts out that "Nickelback is the new Triumph." A half glass of gin and tonic was up Gerry's nose by the time Larry says, "It's all cyclical, man." And so the games began. Warning: Excessive Canadian content may confuse foreigners.
-
Meet! Grand Rapids User Group, October 21
Who: Eli
-
Community? Further defined.
In the last segment the key to communities was defined (it's about identity), and today we look at the taxonomy at the next level. The hardest part for people to figure out is “why would someone want to do it that way?” We identify only with our own experience, it is hard to understand the preferences of other people. The only thing to do is to ignore all sense of “good” and “bad” and move on to identifying the subtleties, whatever they are. No one's asking you to live in their world, just understand it. The two factors that differentiate communities are style of participation and type of audience (or "location of the ego").
-
Community? Identity.
A lot of people write and talk about “Community.” “How to Jumpstart a Community.” “How to Nurture a Community.” “The Ideal Community.” The murkiest part is always answering the question, “What is community?”
-
A picture...
“A picture is worth a thousand words.” -Napoleon Bonaparte.
-
Article in the Top 20 at SSWUG
Quick, before it disappears -- my Converting from Access to SQL Server article is the 19th of “Most popular stories for the last month” at the SQL Server Worldwide User's Group (SSWUG) site. Next let's see how it does when linked from more pages than just my February 17, 2003 blog.
-
Social Cyberspaces
This CNet interview with Marc Smith is essential reading for anyone interested in online communities. Marc is Microsoft's resident sociologist and his insights on slicing and dicing message threads into community indicators is fascinating reading.
-
Personas and Champions
There are several reasons why the concept of personas is so useful to design, and a few are touched on in Alan Cooper's recent “Origin of Personas” article. One point not covered is this simple fact: When you design with specific people in mind, and help these people improve their quality of life by easing their daily tasks, you create champions for your product.
-
Episode #1, In which DotText Lives.
To confirm the dead simple sexiness of the new DotText UI, check out the centerfold below. Design kudos to http://scottwater.com/blog/ and http://xl8.net/. It's enough to make a man wanna blog again, I guess the hiatus is over. Bluntward ho!
-
TechEd: Day Three
My brain is full and happy. Now to decompress.
-
TechEd: Day Two
This is a placeholder, I do plan to write a bit about Tuesday and put up a few pictures fromthe conference but at this point I'd rather jump straight to today. To be updated...
-
TechEd: Day One
Day one was pretty groovy. The best part about a gathering of wired-folk* is putting faces to the names and running into old friends and acquaintances. Marcie and I are staying with at Chateau Swienton this week -- Stephen is a co-lead of the Fort Worth .NET Users Group, on the board of the ASPInsiders, and a terrific developer. We've known him on the lists for a couple years but only met during the ASPAces summit just over a year ago in Redmond. It was good to finally meet his family and giant dog.
-
At TechEd!
Arrived this morning, looks good. Checked out Don Box's "Don of Web Services" first. Good speaker, good talk. Rather than an educational spout ("here's how you do this"), it seemed a demonstration that things finally work the way they should ("it now does this"). That's a bigger turning point than it looks in print.
-
Bad CRM and Network Solutions
Since losing its monopoly as a domain registrar Network Solutions has steadily hemmoraged customers and they wonder why. Beyond a history of oxymoronic "customer service" they also suffer from lousy CRM.
-
IBuySpy caveat
From Simon Fell #:
-
The Key to Successful Discussions
The difference between failure and success lies in whether you are seeking an argument or an agreement.
-
Common Sense and Opt In
Why do sites insist on making people click a "Remember Me" checkbox? Unless you're a Hotmail.com with a highly-mobile user base on public machines, most of your users are coming from the same machines -- their own -- over and over. Make it an option, but save your users a click and turn it on by default.*
-
Custom Error Pages in ASP.NET
First, turn on custom error reporting in the web.config and name the file you will use as your default handler:
-
Don Box on Evolution
Don Box:Old stuff gets older.New stuff replaces it.Even XML will eventually be overtaken by something else.When this stops happening, I'm changing professions.Well sometimes things just work. Then, unless "fashion" matters, they don't change. Either the thing reaches a level of simplicity that can't be improved upon (seen any new designs for coat hangers lately?) or they become so entrenched that only a major industry shift will have any effect on their dominance.An example of the latter would be TCP/IP. It just works. We got it right and now the level of focus is on secondary things -- appliances to interpret and route it, encryption, and so on. Even as addressing migrates to IPv6, the mechanics don't change all that much, just the size of the address space. It amounts to a new feature, conceptually closer to making int32 available in addition to int16, not so much like the jump from IPX/SPX to TCP/IP, or from CISC to RISC where designers need to change their language entirely.XML is one of those things that is is general enough it probably won't change all that much, though our tools for manipulating and expressing it will. It is inherently flexible and already proven useful whatever the culture, character set, industry, or methodology it is applied to. It just works.The boundary of focus was once the PC, then the network, then the WAN, then the Internet. Next it's about connecting the Internet to mobile devices and everyday objects.At the same time, business has moved from connecting PCs to connecting the Enterprise to connecting companies with XML and next will be about communication among industries.When the boundaries stop moving, then I'll change professions. Don, in the meantime, save a seat by the pool.Further reading: -
Chris Brumme, Stephen Hawking, and Mario Andretti
Through all this buzz on Chris Brumme's new blog, I haven't seen much mention on Brad Abrams' relatively-new blog at the same site. It's also damn good, and also shares FAQs culled from internal MS feeds. Check it out.
-
Blog Categories
Scott's recent rant on signal-to-noise in the dotnetweblog community should get people thinking about self-control. Unfortunately, the feedback he received puts the burden on his end (the distribution layer) to create topical aggregate feeds and global categories. That should not be where the responsibility ends.
-
Generating Amazon Links: Now Like Butter
With the updated Amazon Link Generator you can generate links to Amazon.com complete with your personal AssociateID easier than ever. Anyone who's used it knows that Amazon's own tool for the purpose is kinda klunky, and it's a hassle hacking together your own URLs.
-
Generating Amazon Links
When writing blogs it is handy to include links to related books at Amazon.com. It points the reader to good resources, and if you have an AssociateID you can even make a few bucks when your click-throughs result in sales at Amazon.
-
Open Source vs. Commercial
Scott's been tracking the open source vs. commercial debate and I've been meaning to weigh in.
-
GenericUI
GenericDB gets the coolest fans. Jack Bellis just created GenericUI, a stylesheet and graphic element package to help non-designers build better looking interfaces. Like Chuck Speerly's Custom Buttons for GenericDB, this is a way to "professionalize" any UI.
-
Smart Software: Listening and Taste
Learn how to build software that people love to use. Understand why meeting "user requirements" leads to software people hate. Software needs to listen and react appropriately -- with taste. Warning: This article is designed to make you think.
-
My turn. . .
Last month I tried the same test and came out HP-UX. I lost the link, just did it over expecting the same result to paste here but damn:
-
Blogmarket
-
Smart Software: Listening and Taste
I learned a life lesson from drum teacher Pierre Beluse at a gathering of Canadian Youth Orchestras back in 1988. It was during a lesson on snare drum technique. I was good, my skills were at a peak. Like most things, being at a peak meant that to go any higher I needed to be knocked down to where I could try for a higher peak. Good teachers are like sherpa guides that way.
-
Fifth Lazy Form
Last Week: The Lazy Programmer (1LF, 2LF, 3LF, 4LF)
-
Fifth Lazy Form
Tim Marman shared a terrific story about using Lazy Programming to overcome workflow bottlenecks:
-
Mike. Harsh. Blogs.
Mike Harsh is a Microsoft WinForms PM with a new blog. He also quietly released the nifty RegionMaster controls complete with source overnight.
-
See the Web
"TouchGraph provides a hands-on way to visualize networks of interrelated information."
-
Community-building Article
Regular readers of Joel on Software will know that Joel posted a terrific article on Building Communities with Software. He built a simple moderated Forum app that removes barriers to posting (like registration). His article describes the rationale behind every step of the the design, and for an online forum intended to provide software support, it is a good model. As a community-builder, I'm not so sure. But that's fodder for another day.
-
Lazy Programming III
I am still finding prior references to lazy programming, each with a slightly different and useful perspective to add. The most interesting part for me is that several people have come up with roughly the same idea independently and put it into similar words.
-
More Lazy Programming
After yesterday's post, I did a quick survey today of prior references to "lazy programming" and found a few kindred sites and posts in the Wiki web.
-
More Blissential Blogs
Datagrid Girl: Now with Blog!
-
The Lazy Programmer
Whenever I am asked why something should be done "a certain way," the answer at the front of my mind usually begins, "Laziness. This is the easiest way." Then I spend a minute recomposing the answer in terms of "efficiency" or "best practises." But enough. It is time to stop villifying laziness and start recognising the virtue of the true key to successful programming.
-
The Lazy Programmer
Whenever I am asked why something should be done "a certain way," the answer at the front of my mind usually begins, "Laziness. This is the easiest way." Then I spend a minute recomposing the answer in terms of "efficiency" or "best practises." But enough. It is time to stop villifying laziness and start recognising the virtue of the true key to successful programming.
-
Building Online Communities
Someone asked: What advantages does a listserv have over forums (or newsgroups)?
-
Converting from Access to SQL Server, a GenericDB User's Guide
Abstract:
-
Blimey
So I once suggested that ASP.NET support a way to both declare and seed multiple variables in a single line, like so:
-
The Java Problem
Chris Sells posted a link to the document quoted below. The first sentence sets the tone:
-
Baby's got a brand new blog.
Hi, I'm Eli. Welcome to my Weblog. To learn more about me, visit my Home Page. To learn what I do, keep coming back here.