Jeff Makes Software
The software musings of Jeff Putz
-
What happened to forums.asp.net?
What happened to http://forums.asp.net/? I decided to post my last blog entry to the forum there, and I can't even scroll down the forum list using Firefox and the fastest currently available Intel CPU. I know Paul mentioned this a few weeks ago, and now I'm seeing the same thing. It won't scroll "like butter" as Steve Jobs would say.
-
How to store the ambiguous "object" used as key to Membership records
The ASP.NET Membership API calls for System.Object to the be the type used as the ProviderUserKey. This way, your provider can use whatever you'd like as the key field for your user records. The built-in SQL Server provider, for example, uses a Guid.
The provider I wrote uses an int instead. That part doesn't concern me... it's what I use in other calling code. For example, I might have an Orders table that is associated with Membership users. But how do I keep it provider agnostic? Sure, the object representation in .NET can simple be System.Object, but when it's time to store something in that Orders table, how do I get object to the database?
Any suggestions? -
The death of People and full adoption of Membership and Profile
Way back in early 2004, when I began writing my book, I wrote Membership and Profile providers that acted as wrappers to the People class in POP Forums, which I used for a very long time to store user data. It seemed like a good plan at the time, because then anyone could jack into the forum's user management using the familiar interface. They couldn't do the opposite though, because all kinds of junk was dependent on People, and there were several relationships in the data there too.
But alas... what I've always wanted was that two-way street for integration. The provider model makes this easy enough, but you more or less have to let this user data live in its own little world. That was always obvious to me, but I've let my own sites and projects dictate the best way to rewrite the forum, which is stupid. That's the very reason I've had to shoehorn things into that format.
So taking a clean-sheet approach, I've spent the last few evenings refactoring the providers and ditching People entirely. It's liberating. There will be some SQL scripting to deal with when it comes time to deploy in my own sites, but when it comes to user data, it should be the last time I ever have to do it. The benefits are already clear with some peripheral projects I want to do, and even a theoretical single-login system across all of my sites. Good times!
I've been so energized to write code again lately. Not sure why. It's odd that when I was slacking, er, being self-employed, I wasn't motivated to do much of anything. Now that I've gone back to a day gig and talk to people smarter than me, I'm spending my free time writing my own stuff again. My personality is seriously odd. -
Going to Mix06!
Quite unexpectedly, I got an invite to attend Mix06 in Las Vegas next month. Normally this conference costs a grand to attend. So I'm in, no matter what it costs to get there and stay at the Venetian (where Blue Man Group also lives, I might add).
-
Locking up my code in the Vault
After screwing around with, what did I call it, The Steaming Pile of Crap that is Visual SourceSafe 2005 in Internet mode, I remembered that SourceGear's Vault was still free for the single user. So I installed that on my server, installed the client, works like a champ from within Visual Studio 2005.
I don't quite understand why VSS has been so neglected over the years. Aside from the HTTP capability that only works under perfect circumstances, it really hasn't changed in at least five or six years. I hope it wasn't for the sake of using Team System, because God knows anyone outside of a major corporation can't afford the server product. -
VSS 2005 Internet install a steaming pile of crap
Wow, who signed off on this complete piece of crap? Seriously, if you Google for "sourcesafe 2005 internet" you'll see just how many hoops people had to jump through to get the damn thign working.
I haven't actually tried it myself, but it shouldn't be any harder than pointing a new Web site in IIS to the directory where the ASP.NET app resides. Why the hell is it so hard to get it setup.
I haven't even tried to connect to it via Visual Studio. Can't wait to see how that goes. -
Great post on web.config files
I know this is many moons old, but K. Scott Allen has a great post on web.config files and the configuration API, including details about external files and preventing app restarts.
-
The torture of the application recycle
I always read about this kind of thing, but can't imagine why anyone has the problem. Right now, it's happening to my current employer's test box.
The ASP.NET process is recycling frequently and seemingly at random. We can't figure out why. However, we did fire up the new health monitoring code in our web.config, and the app restarted because, it said, the "configuration changed."
Well, that certainly qualifies as one of the reasons an app will restart, but no one is molesting any configuration. Any theories? -
Exploring the hobby to middle market
I think about the middle people a lot. I'm one of them. I'm not an enterprise architect, but I'm not a PHP script monkey either. I don't get rich off of the sites that I maintain, but I make a good chunk of change that supports my expensive gadget habit. The bulk of people like me use the LAMP stack, if you're inclined to believe the analysts and consultants. That's a bummer.
Let's face it, I use Microsoft's platform because it's what I was exposed to, much in the same way that we typically adopt the religion practiced by our parents. Now that I'm older and wiser (hahahaha, yeah right), I tend to feel that having made a choice to go from ASP.old to ASP.NET was a good one, and sticking with my own brand of Christianity seems to be working OK too.
But here's the thing... I don't feel like I'm being served well by Microsoft and the community in terms of getting what I need. I get along any way, but that's because of my tenacity for knowing as much as I can, regardless of what practical use I put that knowledge to. Let me explain.
First there's the product at the core of our world: The .NET Framework and the visual tools. Best stuff ever as far as I'm concerned. This is one area where Microsoft has done a good thing, giving away the express products. That took some real balls to get the stuff out into the open for free. It's a good first move, even if they haven't done a good job about getting the word out about it.
Then there's the issue of education. I have a lot of mixed feelings on this, and I'm sure purists will tell you that .NET, an object-oriented development platform, just isn't intended for the hobbyist and middle markets. I think that's a load of crap, because while there is a huge shift in thinking that script monkeys have to make, it's not impossible to grasp. But getting there is insanely difficult because Microsoft documentation tends to all be high level, and it's hard to read if you're a n00b. Articles around the Net also tend to talk over the new or transitional person. I'm not sure how you address this, though I think there's room for three kinds of documentation to satisfy different levels of experience.
Books help, but far too many beginner books treat ASP.NET like a variation on script, which is not helpful. I tried to address the totally ignored middle-people segment with my book, and while people seem to like it, it hasn't been well marketed by the publisher. Then the high-level books tend to just be re-hashes of Microsoft documentation.
I guess where I'm going with this education thread is, how do we get people beyond asking the same old questions over and over again in forums? Who really owns that responsibility anyway? Honestly I don't know.
Finally there's the issue of good applications we can use for free, as either a base for various projects or as a learning tool. I admit that burden falls on people like me and higher. There's a lot of mediocrity at one end, and brilliance at the other end that's too hard for the middle folk to understand given their experience. I've been on a real "simple is better" campaign as of late, but it's funny how different people see "simple" as different things.
Am I making any sense here? I want people like me to embrace .NET the way I have, but it seems hard. It wasn't easy for me, and had I not been laid off like a hundred times, I doubt I would've gotten there (let alone write a book). -
The little Internet business that could
There are a lot of little businesses on the Internet. Some are electronic extensions of real-world things like garage sales (eBay "workers") while others are totally new ideas that have reached critical mass (Digg). The important thing to note here is that there was little to no cost involved in getting these businesses started.