Archives

Archives / 2003
  • Any Bloggers in Washington DC?

    Any bloggers in Washington DC that might want to get together for lunch or dinner this weekend?  I am in Washington DC this week and most of next week.

  • Partial Solution to my 0x8000FFFF error

    For those of you that might remember my post about a catastropic error I was getting, I want to follow up on the problem.  I have spent a few hours over the last couple of weeks on this issue.  I finally set down and called Microsoft Developer Support on Monday afternoon.  Three hours later, I have a partial answer.  There is a bug in certain situations in Windows 2000 and in all situations of Windows 2003 Server that I have run into.  The bug involves the loading of the VB6DEBUG.DLL.  On working with support, we came across the fact that the DLL is not being loaded when a request is being made against the COM+ objects loaded in a debug session.  I can move the VB6DEBUG.DLL file into the path and that removes the problem with the catastrophic error, but there are still a number of items that will not correctly debug.  Ah, the joys of VB6 & COM+................

  • Need Assistance - 0x8000ffff catastrophic error when debugging VB6 COM+ objects

    Hi all. I am trying to debug some Vb6 COM+ components under Win2k3 server. I have inherited this code from someone else. I have loaded the components into a COM+ application. I have the com+ app running as the interactive user. When I run the components through the debugger and call them through the web browser, I get an 0x8000ffff catastrphic error. When I don't run the components within the debugger, everything runs normally. I can compile the components fine. The compiled components work properly when called directly,
    the problem is when running underneath the debugger.

  • Huntsville talk on Windows Services

    I did a talk on Windows Services in Huntsville, AL in the middle of October.  I was shocked that there was more than one person there that knew what I was talking about.  I had four people that asked really intelligent questions regarding the security context of a Windows Service.  I was shocked because most people have a deer in headlights kind of look when I do my Windows Service talk. 

  • I am tired of being marketed to...............

    I saw where someone posted a mention of the MS article “A Guide to Building Enterprise Applications on the .NET Framework.”  This article is horrible.  It provides no value what so ever to developers.  I, as a developer and someone that builds applications that have large numbers of users and millions of transactions each day, sees ZERO value in this article.  It tells me nothing of value.  It has no code within it.  It is nothing more than marketing drivel.  This article is not a guide to building enterprise applications but a sales pitch on using their technologies.  There is no code.  No specific situations addressed.  No performance implications of doing anything.  Basically, there is nothing that provides value to me as a developer.  Halfway through the article, I felt like the child that had been given a lump of coal for Christmas as a joke.

  • Interesting info on Sql Server 2k

    I have taken over another application, separate from my complaints of Tuesday, where I have found something very interesting.  There are a couple of places where Classic ADO recordsets are used for inserting and updating data.  A couple of the fields that are being updated have fields where a time value is stored in the datatime field, but with no associated date.  When I converted this to a SQL based insert / update, I was now getting the “1/1/1900” placed into these fields that were only suppossed to be storing the time, as I had assumed I would be getting with just the recordsets insert / update.  Well, it appears that if you place “Dec 30, 1899” infront of the time entry, you will only have the time entry stored in the field.  Found this by using Sql Profiler and seeing what has done with a recordset based insert.  Pretty interesting piece of info.  Why these folks have decided to separate the date and the time of the operation into separate fields, I have no idea.

  • For the database challenged amongst us.........

    Do not pull all the records back from a table or view and then do an ADO Filter operation.  This is typically a bad thing, causes too much network traffic, and is a general inefficient use of resources.  Lets not say “select * from table.”  Let's do at least a “select * from table where ........”  You could also do a “select col1, col2, col3, ... from table where ......” which would be even better.  Don't send too much info across the wire.  Don't use too many resources.  If you have some database experts in your development group, look into using stored procedures.  Oh the pain......Oh the agony.....

  • Have you ever done 508 Accessibilty testing?

    When you use standard controls and form elements, the tools that allow disabled people to access your application can work fairly well.  If you write your own controls and do your own thing, these tools can have problems.  Well guess what.  This application that I am working on uses a custom written datagrid built using an .htc based control.  Can you guess how well this control works with regards to 508 accessibility?  It kind of works, but the formatting information is causing problems and the bottom line is that this animal will be a pain.  Gee, this control has no value, but the whole UI of the app is built around this stupid control.  Getting this thing to work will be a pain.  Ripping it out is not an option due to the whole UI of the app being written around the control.  Use standard controls whenever possible.

  • How is .NET a lockin strategy?

    Ok, somebody explain how .NET is a locking strategy?  I don't see it?  I don't get it?  .NET is a better development environment for web based applications.  It provides a better and more secure platform for applications.  It opens up the internals of Windows systems better than VB ever did or could.  I can write Windows Services faster, quicker, and easier than before.  Wonder how hard it is to write an NLM now (wonder if most people even know what an NLM is anymore)?  I have been using Web Services for 3 years now.  I do not care what the other side's operating system is.  I know how to architect a solution that is not platform specific.  It makes no difference to me.  I transfer standard XML across the wire.  How is this a lock-in?  If this is a lock-in strategy, then maybe Wardens Ballmer and Gates can throw the key away to my cell.

  • How long have I been doing this?

    Somebody just reminded me how long I have been doing this programming thing.  Here is something from 1990.  I don't think that 36 is that old.  Written some x86 ASM (just a little), Embeded Controller ASM, C and C++ on Unix, lots of client-server VB, Mathematic (which I still think is the absolute coolest language, started with it in early 1989 on a Mac), and of course, .NET.

  • Meatballs rolling across the floor

    If you can't tell, I have walked into a project that used every non-standard approach to development I have ever seen, including attempting to create their own version of an ASP.NET file parser and execution envivonment.  All I can really do is some “Meatball Surgery” to attempt  to shore up some loose ends.  The app basically works, but it has a number of architectual problems and resulting limitations. 

  • You are not smarter than Microsoft

    No matter how much you want to think it, you are not smarter than Microsoft.  Do not think that you can create a better version of ASP, ASP.NET, VB, C#, Office, or whatever over a weekend.  If you work for Microsoft, Oracle, IBM, or another tech company, than yes, you can do your own thing.  If you don't work for a tech company, than don't think that you can compete with them without millions, and possibly billions, of dollars.

  • Washington, DC.

    I am up in Washington, DC until next week.  If you are interested in having lunch, email me.  I'm always interested in talking to other developers.

  • A Bad Afternoon

    Unfortunately, I had to take my cat to the vet and have it put to sleep.  He had kidney failure and there was nothing that could be done.  He had lost a lot of weight and could hardly move around anymore.  His name was "Z."  He was a cool cat.  I got him in October of 1991 (along with a black cat that I named "Midnight" ) when I was at Georgia Tech finishing my Master's Degree in Electrical Engineering. 

  • Huntsville, Here I come (in October)

    Got an email from Dan "The Man" Wygant for the Huntsville .NET User Group.  He has asked me to come back to Huntsville and do another talk on .NET for them.  I went in the Fall of 2002 and did a talk on "ASP.NET Server Control Basics."  We haven't settled on a topic yet, but I need to come up with a basic talk for them.  I have done talks on Windows Services & Threading recently.  If you have a good idea for another talk, please give me a suggestion.

  • My buddy is back in the fold

    A friend of mine has just recently lost his job at an online training company.  He is the best developer, programmer, and architect I have ever seen (he also runs a little at the mouth, but I do to).  His name is Michael D. Long.  He is a Microsoft MVP.  He wrote some articles about Windows DNA a couple of years ago.  He is going to be doing some work for my company.  I am excited to be working with Mike again after several years.  If you can get by the rough edges, he is a great programmer!!!!!!!!!!!

  • Watching other processes

    Over a year ago, I wrote a Windows Service in .NET to watch the web server process of IIS (InetInfo.exe) and to stop that service and restart it under certain conditions.  I had set the app up to run under a timer and wake up every couple of minutes to check the state of IIS.  While it worked, I always wondered about how do I check for processes that are currently running and a few other things.

  • Helping the local community

    I recently have gotten involved with a local small business organization.  I have written an application that allows them to post information to a database about their business.  That part of the application is protected by a userid and password.  Another part of the application allows anyone to search the information in the database for a company with certain parameters.  I have written this at no cost to the local chamber of commerce (Knoxville Chamber Partnership) or to those in the small business organization.  I have written this with the hope of helping my community.  Obviously, it is a .NET application.  It is not pretty, because I am not a pretty pictures, flaming logos, twirling and spinning kind of guy.  The artsy fartsy stuff is for the graphic designers. 

  • Didn't make it to TechEd, but I did make it to the gym.

    Yesterday was my best workout in a LONG time.  I worked out on the eliptical trainer where not only do you work your legs, but you also work your arms (back and forth).  For a thitry minute session, I burn 630 calories according to the screen on the machine.  While it is hard to compare calories burned between machines because none of them are very accurate, i do know that I worked out harder than I ever have on that machine.  My legs were sensitive the rest of the night..................

  • Oracle being Netscaped?

    I read this article that some others have commented about.  I have worked with Oracle on several major projects.  In all of these projects, I have found 1 thing that Oracle does very well that Sql Server does not.  If I want to do a genealogy, it is very easy with Oracle to do a genealogy and find the parents / children of an entry.  It is not as easy to do this with Sql Server.  This is very helpful in a manufacturing environment when you might want to find out all of the input materials for an output product that is defective.  Given the fact that using Oracle within a MS environment has not been something that has caused headaches in the past, it is no wonder that MS is gaining marketshare.  Add to this the problem of knowing how to properly tune Oracle and the pain that that intales, and Sql Server looks better and better.

  • .NET Spider

    I had been playing around with the idea of a Web Spider in .NET.  I had been throwing around some ideas in my mind.  Then this morning, I looked at an article in an old MSDN Mag issue (October 2002).  It had an article about a spider in it.  I downloaded it and it ran under VS.NET 2003.  I am really looking forward to diving into that code and taking a look at the code. 

  • What happened this week?

    I ate lunch on Monday with three of my good friends.  They are excellent, high quality developers.  Not only would I trust them with my life, I would trust that what they said about code was 100% true.  Two of them said that when their company is sold this summer that they will most likely be out of work.  On Tuesday, thanks to my sickness(es) over the last several months, we lost additional work from a customer.  I also got an email saying that another customer said that they decided to shelve a project I was working on for them.  On Wednesday, I got a call from a friend of mine that he lost his job just and hour or two before.  What happened that I missed in the news?  Is this "Get rid of good developers week?"  Or maybe I am finally seeing the signs that the work situation is pretty bad right now all over?

  • Sick again

    Hi folks.  I have been under the weather too much this year and I am sick once again.  This is the sixth time i have been sick since January 1.  Accept for about a 5 week window, I have been nothing but sick, sick, sick this year.  I have been to the doctor and I feel better for a week or two and then bang, I am sick again.  I went again yesterday.  They drew blood so we might see what is going on. 

  • Who makes a better programmer?

    I read the following on Kirk's Blog.  I dont think I quite agree with it.  I have had to work with people that all they have is an MCSD and a AS degree from a tech school.  There are some good people out there, but when you look at a majority of the code that they produce, I am not impressed by most of the code.  I have a friend of mine that calls this type of code "Bobby Logic" as it was named after a guy named Bobby.  Bobby Logic is this type of logic produced by programmers that try and make things harder or use the latest coolest thing when a simple approach would have been the quickest way to satisfy the customer's needs.  I think a full four-year degree shows that someone has made a commitment to education and is capable of more.  Obviously, things like experience need to be taken into account.  I just feel that it takes a number of items to create a successful programmer (experience, education, intelligence, understanding what the customer's needs are, familiarity with the programming environment, and programming language skills).

  • Non-tech part of being a consultant

    There are several non-tech parts of being a consulting company.  Some are fun, some are not. Yesterday I had to do one of the harder non-tech parts of running a consulting company.  I had to let one of our developers go.  He is a good person.  I did not enjoy doing it, but I had no other choice.

  • Warren Buffett

    I got to meet Warrenn Buffett on Tuesday.  He was in the big city of Knoxville to meet with Clayton Homes, a company that Berkshire Hathaway just bought.  He is a very friendly person, which I did not expect.  He was asked what he thought about the current economy.  He said that he didn't think that things were as bad as the media were protraying them to be.  He then added that the only thing that could really things bad would be if Alan Greenspan ran off to South America with Anna Nicole Smith..........................

  • The importance of .Dispose()

    I was checking out the Oracle OTN forums last night trying to get some good info on the Oracle Data Provider for .NET (aka ODP.NET).  I ran across a post that reminded me that there is more to be done when writing good .NET code than just depending on the garbage collector.  The postor stated that he was seeing memory allocations that were continually going up for inetinfo/aspnet_wp processes(s).  The person from Oracle stated that this was consistent with not calling the .Dispose() method for each object (OracleConnection, OracleCommand, .....) created with ODP.NET. 

  • Golf on Saturday!!!!

    I played golf today.  While I shot an 89 and am not a world beater, i felt really good about how I played.  I had ended last year with a 12 handicap, which is starting to be respectible.  Since I had not played a round of golf since last October and I had surgery 6 weeks ago, I was just hoping to break 95.  Then at the last second, I decided to play with everyone else from the championship tees.  I am even more shocked that I was able to be respectible.  Hopefully, I will play well again on Sunday (yeah, I decided to play 2 days in a row).  I'll be playing with this same group on Sunday. 

  • Starting to work on an outline / TOC for a new .NET book

    I  talked to my publisher the other day and she wants me to start working on an outline / TOC / proposal for a new book.  I am really STOKED about this one.  Writing a programming book is very hard work and not a lot of reward (aka money), but it is a great excuse to work with new technologies and get access to the real beta program.  I feel that this gives me a leg up in the consulting business and part of the game that must be played.

  • TimeTracker Starter Kit

    I download the TimeTracker Starter Kit from www.asp.net.  I am going to be going through it and seeing how I can incorporate some of the features into our TimeSheet application.  I think it is really cool that MS is doing this.  For all of those people that bad mouth MS (and I have been one in the past), I am impressed that they have created these example applications!!!!!!!!!  Whoever came up with this idea should be congratulated.

  • 12 Days in a Row

    Made it to the gym this afternoon.  Performed a slightly different workout today.  I used a different eliptical trainer today where I could use my arms.  My back got sore within about 5 or 6 minutes, so I had to alternate between using my arms and not using them.  It sure does feel good to get into the gym and workout.

  • Why do I post more on working out than .NET?

    DGG and I were talking over IM the other night.  She was wondering why I post so much about working out rather than .NET.  I love .NET.  I find it is a great environment to develop ASP.NET and other applications.  I really do like what it has built in.  The reason I post so much about working out is that I am so excited about how I look and feel.  About 8 years ago, I got hurt in both of my feet and developed a medical condition called plantar fasciatis.  That has to be one of the most painful things in the world.  It literally felt like a knife was being shoved up into my foot.  I had no motivation to do anything.  I was almost afraid to move for fear that I woul hurt my feet worse.  As a result, I ballooned up to 250 pounds.  My right foot healed, but I had to have surgery on my left foot.  I went back to exercising, but the weight did not go away.  During the summer of 2001, I started working out really hard in an effort to lose as much weight as possible.  I dieted, worked out, and the weight came off.  I still workout everyday, or nearly every day (at least six times a week).  My current weight is somewhere between 200 and 205 pounds.  I think that as the swelling from the surgery I had in February, 2003 continues to subside (the doctor said it will take three to six months for it to completely go away), I think I will be in the 195 to 200 range this summer.  Once I can ramp my workouts back up to the pre-February 2003 surgery, I know that I will once again be in better shape than I was when I was in high school or college. 

  • 11 Days in a row

    I have been in the gym 11 days in a row.  On Monday, I had my best workout yet.  The intensity was pretty high.  According to the eliptical trainer, I averaged 23 calories per minute for 30 minutes.  While I don't think that the numbers are accurate, because I use the same machine each time, I do use the calories per minute as a general test of intensity.  I did my 30 minutes this morning, but I was just too tired to do more than just go through the motions.  Still, that's better than doing nothing.

  • Gym Rat

    I swore that I wasn't going to the gym today, but I went this afternoon.  Once again, I increased my intensity on the eliptical trainer. I was planning on playing golf on Saturday, but after looking at the forecast and the radar, I decided that I would go to the gym today and on Saturday.  It sure feels good to work out again.

  • Calendar Control in ASP.NET

    I have been using the Calendar control for a long time, but I always seem to be initializing it to a value like today, yesterday, or tomorrow.  The other day, I had to initialize it to a value from a year and a half ago and the calendar control continued to show today's month with now date selected.  I thought that was pretty odd.  I began to search through and find that there is a property of the control that is called .VisibleDate which sets the date that is shown to the user, which is different that the .SelectedDate property.  That is very cool and very well thought out, though it was confusing for a few minutes.  I can make other months visible and keep the selecteddate of the control. 

  • More on the gym

    I was in the gym on Wednesday & Thursday (forgot to post it).  Each day I have increased my intensity on the elliptical trainer over the last.  I have been to the gym 6 days in a row and done a 30 minute session on the eliptical trainer each time.  I have tried to do chest and back exercises, but my back is just a little bit too sore to do either chest or back exercises at this point.  Oh well, that soreness from surgery will pass soon enough.  I am just so glad that I have been able to get back to doing some training.  This weekend, I am going to try and get out and play golf.  I love to play golf, walk, and carry my bag.

  • Hit the gym this morning

    I was at the gym at 5:30 am this morning.  That's four days in a row after four weeks off after having surgery.  I had 40 minutes of aerobic activity on an eliptical trainer.  It is good to be back in the gym.

  • Starting back

    I had surgery on February 24th.  I got to workout on Saturday March 22nd for the first time since February 23rd.  I also worked out on Sunday March 23rd.  I feel so much better.  I also went to the golf driving range on Saturday.  I am looking forward to getting back into the gym this week.

  • Searching a log file for bad guys

    Last year, I wrote some command line utilities to search an IIS log file for hack attacks.  The utilities are written in c#.  I wrote these two utilites in about an hour, so I hard coded some stuff to look for some things that were specific to our needs.  I would love to find someone with more knowledge of hack attacks and could help me expand it some.  What am I looking to do with the utilities?  I have no idea.

  • Uncle Kirk comes to visit

    Kirk Allen Evans came to Knoxville to talk to the Knoxville .NET User Group on 3/20.  Kirk did a really good job.  I thought that Kirk did a really good job of explaining the objects, when to use which object, and the performance issues associated with each object.  That is something that not a lot of folks do and there is very little support in most documenation.  Most people and documentation just throw the info out there like a firehose gushing out water and it is the reader / listeners responsibility to understand the performance issues associated with any objects.  Throughout his talk, Kirk kept bringing up performance and memory issues associated with different objects and the places where each object would be useful.  The bottom line is that Kirk knows his shit when it comes to XML and did a really good job on his presentation.

  • Working on my TimeSheet Program

    Back when I was working on my book, I wrote some code to be a timetracker / timesheet asp.net program.  I wanted to use that as the basis for the code examples in my book, but with consulting, I just flat out ran out of time and was not able to finish it and make it a real live running application.  I have had an opportunity to sit down over the last few weeks and actually turn this into a running asp.net program now and we are planning on using this with a customer.  The application is mostly an asp.net application.  I am planning on putting using webservices to allow customers to access some information so that they may read their information.  First, I need to finish up the admin side so that an admin user can create bills for customers and their projects.