I ran into an interesting roadblock today. I did ok in implementing most of the story for today — I set up a page to view a study group, first showing the study group info (which for now, only consists of a name), and then setting up a table to show the associated users in that study group.

I used a custom SQL query and did a join on ASP’s user table and my custom StudyGroup_Users table (a table which listed the study group IDs corresponding to user IDs). The purpose of the join was so that I could reach into the ASP user table and pull out… oops, it’s not there. What I should be pulling out is probably the user’s alias, or maybe their first name and last name. Where is this data stored again?

Oh yeah, I stored it in ASP’s handy Profile system. Ok… so I need to access the user aliases from the Profile system. But one problem. The Profile system is meant to store and retrieve data for the current user… that is, the one currently using the website. That user doesn’t get to see what other users’ Profile data is.

As it turns out, I misunderstood the scope of the Profile system — it only provides access for the current user’s data, so if I want a user alias or first name/last name stored, that can be visible to other users (such as in a class listing or a study group listing), I can’t store it in the Profile system.

Problem is, there’s quite a few things I’ve done up to this point that have used the data I’ve been storing in the Profile, so I’m going to need to go back and redo those things. Ouch.

I’m not sure what the accepted Agile or XP way is of redoing a bunch of stories that got a fairly fundamental decision wrong… but as the “customer,” I’m going to say to the developer, “Ok, you goofed, but you’re learning it for the first time, so let’s make some estimates for next release to fix things. In the meantime, maybe you can implement this release’s stories as far as you can?”

Ok, I can live with that. And it’s a good thing the customer for my first ASP project is me!

Anyhow, I have a semi-“proof of concept” page, where I’m just showing the usernames of the study group members, but this will have to change. Most likely I’m going to add Alias as a field into ASP’s users table, so it should just be a tiny change to fix this page, once I’ve migrated the data out of the Profile system.

View Group