Blog

  • What kind programs do you write?

    I often get asked, "Now, what do you do?" and when I try to explain it I get these blank stares and gapping mouths to which I pause then say, "I make web pages." Their eyes light, heads nod, and they declare, "OOooh!" Quickly followed by a subject change.

    What do I really do? Right now I am writing an application that allows service providers to advertise their services. So someone seeking a service goes to the website and enters what they are looking for and the matching providers pop up. Sounds simple enough right? Well, if I do my job correctly it will appear amazingly simple to the end user. The behind the scenes programming complexity is awe inspiring. As a minor example, the administrator has to take requests from service providers to be apart of the website. Then the administrator has to create the service provider profile which implies an administrative website that only the staff can access (roles based security). A profile! That’s simple right? Just a database table with all the descriptions of the provider and services offered right? Not really. In actuality it is a very complex system of related lookup tables. Since I cannot predict all the variants of services and pieces of services that may be offered, the system was built to allow the administrator to dynamically add and remove qualities from the service profile. Certainly a detailed specification could have made that simpler but would have resulted in a limited application where as this one can grow to meet the future needs of the client (I know..the simpler approach would have produced more billable hours in the future..blah blah).

    Of course, the service provider has to have their own website to be able to manage the details of their service without having to labor the administrator. However, the client does not want the service provider to be able to make certain changes to the profile without approval. So I have had to create a change request table in the database to accept pending changes from the service providers to be accepted or rejected by the administrator. Now there’s a level of complexity that echoes changes throughout the site!

    I love my work!

  • Listening to constructive criticism

    Yesterday I was told "If you smoked as much as you twitter you’d look 92." Perhaps I should slow down a bit.

  • Of Grasshoppers

    Student: Being a father is a guaranteed way to regularly feel like a cad.
    Master: Being a father is a guaranteed way to regularly feel like a superhero.

  • GW Needs to See Sicko

    Democratic lawmakers in Washington say they’re drafting a health care reform bill that would expand coverage for low-income kids. President Bush says he’ll veto any such legislation, warning that it would lead the nation "down the path to government-run health care for every American."
    …
    What’s particularly galling about Bush’s position is that it’s coming from a man who just underwent a colonoscopy performed at the taxpayer-funded, state-of-the-art medical facility at Camp David by an elite team of doctors from the taxpayer-funded National Naval Medical Center in Bethesda, Md.
    [Source]

  • Tech Issue of the Day

    Today’s terribly frustrating error causing a long delay in a short process is:

    Parameter index out of range (1 > number of parameters, which is 0).

    It is the result of this simple insert:

    <cfquery name="createrole" datasource="#application.gDataSrc#">
        INSERT INTO #application.projectidentifier#_theroletable {
           fooASInt,
           barAsInt
        } VALUES {
           <cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#fooAsIntValue#">,
           104
        }
    </cfquery>

    UPDATE: Whoops. I see the typo! There is a big difference between {} and (). Should have been:

    <cfquery name="createrole" datasource="#application.gDataSrc#">
        INSERT INTO #application.projectidentifier#_theroletable (
           fooASInt,
           barAsInt
        ) VALUES (
           <cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#fooAsIntValue#">,
           104
        )
    </cfquery>

  • Job Op Pays $240,000 per year

    If you are a web developer (like me) and know AJAX, then you can get a job paying $240,000 per year.

    Training on the application software will begin prior to deployment and will take place in Virginia. Deployment will be period of 6-12 months. A Department of Defense secret clearance within last 24 months. [Source]

    Tempting?

  • And an afternoon of troubleshooting goes to one line

    So IIS v6 wasn’t letting form variables post. <cfdump var="#form#"> would show an empty structure. CF’s built-in webserver on the development box worked fine. Changing the method from post to get made things even stranger with the query string using &amp; instead of &. I finally found the solution. I had used the obscure html tag <base"

    <base href="http://domain.com/">

    IIS v6 did not like this. Removing that one line fixed the problem. So much for trying to be the perfect coder.

  • I need sponsors quickly!

    Last year Cathy, Barry, Jay and myself had a blast raising money for Farm Aid with Blogathon 2006. Cathy has participated in Blogathon several years. This year I thought we were taking off. I was mistaken. Thank you Barry for inspiring us this year. I like the cause.

    Star has done an incredible service for Tommy. Star has a waiting list. It took us 3 years to get accepted into the program and I have heard of some folks waiting 7 years. Once they complete their indoor arena, they will be able to double capacity and reduce the waiting lists (as I understand). Please support us by making a pledge for this Saturday’s (in 3 days) Blogathon! You can follow our 24 hours of blogging at http://domesticpsychology.com/blogathon/.

    sponsor me

  • Oh! That acid rain…

    Wow! The things that we miss. I just learned that Pennsylvania has had an underground fire burning for 45 years and that it is likely to burn for another 245 years!

    An exposed vein of coal ignited in 1962 due to the standard policy of burning the garbage on a weekly basis in the borough landfill, located in an abandoned mine pit in the southeast portion of Centralia. Attempts to extinguish the fire were unsuccessful, and it continued to burn throughout the 1960s and 1970s.
    …
    There are no current plans to extinguish the fire, which is consuming an eight-mile seam containing enough coal to fuel it for 250 years.
    [Source]

    Apparently, at $42 million, it is cheaper to move a town than extinguish the fire.

    The federal and state governments gave up trying to extinguish the fire in the 1980s. “Pennsylvania didn’t have enough money in the bank to do the job,” says Steve Jones, a geologist with the state’s Office of Surface Mining.
    …
    Across the globe, thousands of coal fires are burning. Nearly impossible to reach and extinguish once they get started, the underground blazes threaten towns and roads, poison the air and soil and, some say, worsen global warming. … The United States, with the world’s largest coal reserves, harbors hundreds of blazes from Alaska to Alabama. Pennsylvania, the worst-afflicted state, has at least 38—an insignificant number compared with China and India, where poverty, old unregulated mining practices and runaway development have created waves of Centralias.
    …
    Scientists estimate that Australia’s BurningMountain, the oldest known coal fire, has burned for 6,000 years.
    …
    …in the United States; near Glenwood Springs, Colorado, for example, an old coal mine has burned for the past 100 years.
    [Source]

    So, why are we still using coal?

  • Of Grasshoppers

    Student: Words.
    Master: Sharper than knives.

  • The power of positive thinking

    Because we should all live like we are Ferris Bueller. Thanks Cathy!

    Ferris handles everything because he tells himself he can. Cameron can’t handle anything because he tells himself he can’t. [Source]

  • Of Grasshoppers

    Student: I will not be overwhelmed!
    Master: One cannot accomplish a single task when thinking about all other tasks.

  • Relaxed and staying that way

    I have returned from a jaunt in the woods (story to follow later). I feel renewed! My taunters are still at large but I will not fall into their trap of living a panicked, stressful way. Prior to this trip I slipped into a very reactionary lifestyle. I have returned to responsiveness and plan to remain so. Let’s see what happens. Time to open and read 9 days of email.

  • Of Grasshoppers

    Student: The apprehension is terribly stressful.
    Master: Thinking about the worse case is often more horrible than living it.