in

ASP.NET Weblogs

Phil Scott's WebLog

Quite exciting this computer magic

June 2003 - Posts

  • DoNotCall .NET

    http://www.donotcall.gov/default.aspx

    National Do Not Call list went into effect today, and the sign up seems to be done in ASP.NET.  And it's broken.  And looks like crap if you can get in. 

    I almost feel like giving up my time for consulting for this cause.

  • More Validation and Cancel

    Edit Big Time: Setting e.Cancel = false in the form closing event actually let's you exit the program.  Go figure.  And I feel like an idiot for not figuring this out sooner.  Is today still Monday or something?

    A little clarification on my post about trying to "cancel" on the Validating event.  I understand how to work around this behavior, but I think all the work arounds I've seen so far suck.  The work, but it sucks to have to resort to these things.

    I'm not trying to just "get this work" on a form.  In one of my classes I teach, they spend a decent part of a chapter and lab on working with the Validating event.  I would really like to not have to talk about detecting WM_CLOSE messages, figuring out where the mouse is located and also keeping track of when the Close method of the form is being pressed in order to properly set e.Cancel = true on a TextBox.  I'd rather just juggle things in the Leave event VB5 style. 

    My official answer is "don't set e.Cancel = true in the validating event because you won't be able to close the form down.  Plus, nobody likes being stuck on an invalid field anyways" until someone can point towards something that, well, works normally.

  • Validating and Closing a Form

    Ok, I give.  If you set e.Cancel = true in a validating event (for a textbox for example), how can you make it so the form can be closed?  Like clicking the X or even calling me.Close.

    I think I'm slowly losing my mind.

    Edit: Chris Kinsman's solution, while pretty snazzy, is just plain silly to have to resort to these shenanigans. 

    Man, I can't wait for Chris Sells' book.

  • Missing the Future

    In regards to the (in)famous Missing Future article, I just wanted to throw in my somewhat related rambling.

    I felt silly getting a Computer Science degree.  I mean, I have a college degree in what is a really fancy tool.  I mean, I understand its a complex topic and there is a science to it, but I really don't think that in 2031 people will need to get computer science degrees to work on computers.  In fact, I hope people won't need to get computer science degrees to work on computers.  I seems like going to outboard motor school or something to me.

    I would hope people would get a biology, chemistry, math, physics or political science degree and just use whatever computer tool is out there 28 years from now.

  • Underpant Gnomes

    Kent's suggestion to build your own compiler reminded me of my great idea.  A new programming language called D-Flat.  It would be C# without the stupid case sensitivity. 

    1. Build D-Flat and VS.NET integration.  Make D-Flat's intellisense work as well as VB's.
    2. ?
    3. Profit

    I still can't figure out why a programming language benefits by being case sensitive.  I mean look at the guidelines on it.  Ritchie Hughes makes some pretty good arguments in my previous post about this subject (see the comments in C#ase Sensitive), and while he brings up some things I haven't thought about, I still stand by my statement.  I just don't see the benefit in being able to having a case sensetive langague.  I mean, I could go crazy with unicode in naming things, but it just makes it harder on everyone else.  Even just using ë would probably drive people nuts. 

    My programming language would allow only a possible leading underscore, characters a-z (case insensitive), numbers at the end of the identifier.  And that's it.

  • Testing User Input

    Scott Lock's post about people wanting to enter 1-800-CALL-ATT into a phone field reminded me of a data entry "problem" some students of mine ran into a couple years ago.  Keep in mind that while I live in the wonderful city of Louisville (15th largest US city), it happens to be surrounded by Kentucky.  Anyways, these students from eastern Kentucky (think the Hatfields' home) happened to be doing some type of batch updates.  If I recall correctly, they were trying to get a whole bunch of records from one hospital merged into another system.  Problem was, in this batch of seemingly properly formated data, it was failing to do the update.  So they went to task finding the problem record.

    This issue at hand:  Someone's first name was "#1 UK Fan" and the checks on the system didn't like # in people's names.

    My dad had a friend in college whose last name was List.  The system his college used would print everything in memory (or something like that) if it encountered the keyword list.  He went through school with a last name of List*.  Although looking at how some of the high school kids are spelling their names, I wouldn't be surprised if someone manages to accidently produce a sql injection query into their lastname.  Scott; 1=1'// or something like that.

  • 70-310

    Lorenzo is looking into the 70-310 exam.  Not to scare you, but that exam was easily the hardest exam of the MCSD.Net track in my opinion.  The problem that I had going into the exam was the title was basically yelling out "XML Web Services" so I was like "oh, just throw on a WebMethod attribute, a little WSDL and a way I go."  The problem is the "and Server Components."  They really should have called the exam ".NET distributed applications."  I think I got more questions on remoting than XML Web Services, which would surprise a lot of people who take the tests without looking at the exam matrix (which happens a lot, many people failed the VB6 exams because they thought the knew VB back and forth.  The problem, they didn't know jack about COM). 

    That being said, it does kinda work out in the test takers favor.  Since the exam covers XML Web Services, remoting, serviced components, windows services and ado.net it doesn't ask any indepth questions on any of the topics.  But it also meant that this was the only exam that I actually had to do some preperation to make it through safely (.NET Remoting and Windows Services just don't come up that often for me day to day). 

    The only thing that I used to study was Tim's Exam Links.  I posted something about them in February so here's my summary from then: "What he's basically done is taken Microsoft's list of skills you need to pass the exam, and provides links to MSDN or other websites where you can pick up the skill.  So say you haven't done much in the ways of 'Provide multicultural test data to components, pages, and applications,"' there are three links to get you up to speed on that topic."

    As for books, I've got Mike Gunderloy's exam guides for the Windows and Web exams and they are quite good.  I feel pretty confident in recommending his XML Web Service and components book too.

    Another book that I've been flipping through which I think is fantastic is Matthew MacDonald's Microsoft .NET Distributed Applications: Integrating Web Services and Remoting.  Now, I'm not saying this book with replace Tim Ewald's Keith Ballinger's or Ingo's books on my bookshelf, but for your average Mort who hasn't been doing DCOM/COM+ development for the past six years, this book is pretty darn good at getting your started.  Then pickup Tim, Keith and Ingo's books to fill in the rest. 

  • Almost Free Full Tech Books

    After signing up for Safari for a trial membership, I decided to go ahead keep it on a subscription basis.  Well, not a week goes by and I have already filled up my bookshelf.  You see, when you sign up you get to choose how big you want your bookshelf to be, the smallest being five bookshelves and the largest being thirty.  If you "check out" a book, you must keep it on the bookshelf at least thirty days.  That means if you have a five slot bookshelf, and you check out five books on the first day, it will be thirty more days until you can grab another one.  It became pretty clear that a ten slot bookshelf just wasn't going to cut it for me, so I decided to go balls out and get the thirty slot bookshelf.  Even I would be pressed to read thirty books in thirty days.  I've managed to fill up 20 slots, but in a week a couple of my books should be available to be removed in case any new books become available that I'm interested in paging through.

    So far the service is great.  I'm reading all kinds of books I probably wouldn't have dropped $50 bucks to flip through in my spare time.  Most of my bookshelf contains books on Linux, Oracle, Presentation Skills and stuff like that.  But I've also picked up a couple of books that I've been meaning to pickup but economic restrictions have stiffled the ol' book buying fund.  I recently added Inside Microsoft .NET IL Assembler and Mastering Visual Studio .NET.  Both good .NET books that I wish I would have purchased months ago now that I've had a chance to sit down with them, but without Safari I probably would have missed out totally.  Not to mention that I am personally saving any where between $200 and $400 a month on books (I like books). 

    But I do have a couple of complaints.  First of all it seems browsing by category is in need of an overhaul.  You certainly can read ASP.NET Data Web Controls Kick Start or Essential ASP.NET.  You just won't find them in the .NET category.  Even Essential .NET doesn't even make the cut for the .NET category.  What I've been doing is just going through all their books in reverse order based on when they added the books.  Yes, I have a lot of time on my hands.

    My other complaint has to do with font sizes.  I'm reading these suckers on a pretty big monitors with the resolution set pretty high for working in VS.NET.  It would be nice if I could change the font size easily.  There doesn't seem to be a setting for this, and it ignored the text size setting in IE.  The solution, Mozilla Firebird.  Firebird does increase the font sizes for you.  I might make my own "safari reader" that overrides the built in CSS file for reading the documents. 

    The pros easily out weigh the cons though.  Heck, in my pursuit of .NET books I might have missed I've ran across books that I would have never even thought to search for.  The search feature is awesome, and pretty quick to boot through the books you've checked out, making find code snippets pretty darn easy . They seem to be adding 10-20 books a week.  Although of the sixty four books they've added in the past month, only four have been .NET related.  Well, the number swells to about eight if you include MSSQL and Win2k3.  I'm not saying that .NET is being ignored, it is just a wide collection of books here. 

    I should also mention that through my work I have access to Books24x7.com, but I hardly access it.  The UI is straight from 1994, and is pretty clunky to boot.  I don't know if that's ElementK's (through which my work gains access) fault or Books24x7 though, so your mileage may vary. 

    Two last things.  You can sign up via O'Reilly or InformIT. They appear to me to be the same service with a slightly different look.  Infact, I was able to sign on with my account that I use on O'Reilly's site on the InformIT site.  Both have the same books and pricing.  The other thing I should mention is that they've got an RSS feed for their new books.  SharpReader tends to choke on it, although it is a valid feed. 

    Ok, this is getting a tad bit too long.  Note to self: Don't drink Mountain Dew and write at the same time.

  • Microsoft Concedes Defeat?

    Microsoft recently announced that they were dropping IE for the Mac because Safari is better due to it having access to the underlying Mac API (see Scoble for a bunch of relevant links.  I guess you could have figure that out for yourself though).  Besides all the irony involved in this, it just doesn't seem like Microsoft to just give up on a market.  I just don't get it, especially coming after the announcement that IE can't be upgraded without a change to the underlying OS.  But here's my knee-jerk reaction.

    Conspiracy theory #1 says that Microsoft is getting the heck out Macintosh land.  I haven't heard much about Office 2003 on Apple yet.  Of course, I'm not exactly Mr. Current Events when it comes to MacOS news.  Edit: Providing once again I'm an idiot, the Mac edition of Office is right on track according to this CNet article.

    Conspiracy theory #2 says that Microsoft is going to try to reinvent the World Wide Web, Microsoft Style.  Changing the browser in ways that a new OS can only deal with sounds to me like some pretty major security changes.  Changes that they can't do on the Mac.  Or on Linux for that matter.  Any major change on the browser that deep in security would almost dictate a change on the server side of things too.  Changes I would think would be difficult, if not impossible for software like Apache or Netscape's server to keep up with.  You want secure internet browsing?  Get Microsoft Windows 2006.  You want to provide a secure connection to your clients?  Get Microsoft Windows 2006 Server. Built for Security.  Or something like that.

    Now, Microsoft can do whatever the heck they want in 2006 with their OSes (OSs?  OS's?).  That's their business, and from what I've read about Longhorn and security it looks good to me.  My concern is where ASP.NET is going to be.  ASP.NET doesn't target anything besides IE well, and Microsoft is dropping IE.  Where does that put us in the future?  Designing sites that only target people running Longhorn?  I hope not. 

    Now those are just some slashdot style knee-jerk reactions.  I'll make the assumption that Microsoft has far too many smart people working for it to go that route.  But glaring at us right now is Microsoft's disintrest in supporting the web standards.  By not fully supporting the DOM, CSS1 and CSS2 for another 3 years Microsoft is effectively stalling web development as it stands.  I can't use the stupid min-width tag because IE is stupid. 

    And what really sucks is there is seemingly nothing we can do about it, and Microsoft knows this.  No way can any company move to Firebird.  Too many crappy web developers only target IE.  No way you can get those crappy web developers to take Firebird into account because not enough people run it (although that number is going up).  Not to mention trying to get ASP.NET to produce valid HTML is pretty tough (and I think XHTML is impossible without some serious hacks).  Serious lock-in.  And it is starting to eat at me.

    I don't care about IE lacking a popup blocker, themeing, tab browsing or whatever bell and whistles that other browsers have now.  That only effects the single person using that browser.  By Microsoft refusing to support web standards, it hurts the entire web. 

  • Mozilla/IE Control

    You know what would be a neat control?  A wrapper for the IE webbrowser control AND the mozilla brower chumpy.  It would have basically an enumeration that let's you choose which one the control creates, and have it delegate the calls to the control of your choosing.  Maybe a method called IsMozillaInstalled would be nice too.  Really should be easy to create I would think.  Of course, I'm a complete idiot when it comes to COM interop.

    The one gotcha I can think of off the top of my head would be handling errors related to Mozilla not being installed or properly configured.  I might give this a shot.  COM interop has been one subject that I've been able to avoid for the most part, and Adam's book has gathered enough dust since I last flipped through it.  Hmmmm...

More Posts Next page »