Printing Address Labels with Coldfusion
This is a hack, for sure, but this does output a pdf that will print on Avery 5260 address labels:

<cfdocument format="PDF" scale="80" marginleft="1" margintop=".25" marginbottom=".25" marginright=".05">
<!--- Specify the number of columns to return --->
<CFSET NumCols = 3>

<!--- Use a table--->


<CFOUTPUT query="Seeds">

<CFIF (CurrentRow MOD NumCols) IS 1>

<td height="115" <div style="width: 1000px" >#plant_name#<br />
#dateFormat(now (),"mm/dd/yyyy")#</div></td>



What I Use To Confirm Deletes
Here's the code I use to make the use confirm the decision to delete something:

In the head:

function confirmDelete(delUrl) {
  if (confirm("Are you sure you want to delete")) {
    document.location = delUrl;

The Delete Link:

<a href="delete_this.cfm?ID=<cfoutput>#del.ID#</cfoutput>" onClick="return confirm('Are you sure you want to delete?')">DELETE THIS</a>

Bob with All Troughs
All the troughs have been constructed in Bob, but we're waiting to put the liner in the final trough until we have the 3" PVC plumbed through the hole it will cover.

Lock Down Coldfusion Directories in Apache
If you're using Apache webserver, like I am, and Coldfusion, block these administrative directories in the CFIDE directory, for security's sake. These lines should be entered in the httpd.conf file:

<LocationMatch "/CFIDE/administrator/"> 
order deny,allow 
deny from all 
#allow from local and EWH 
allow from 
allow from 

<LocationMatch "/CFIDE/adminapi">
order deny,allow
deny from all
#allow from local and EWH
allow from
allow from

<LocationMatch "/CFIDE/componentutils">
order deny,allow
deny from all
#allow from local and EWH
allow from
allow from

Distributed Everything
Here's some advice from Ven Portman on hosting your own internet stuff and getting away from the walled gardens. I've been thinking along these lines, too, for quite some time:

Distributed everything

So I?ve illustrated the problem. Now I want to talk about a few of the solutions I?ve discovered in the past few years of pulling my own shots.

  1. CJDNS + Hyperboria. There are around 100 people living and working on another Internet called Hyperboria. It?s based on a mesh networking router called CJDNS. If you get someone to peer you in, you?ll discover another Internet that?s a whole lot freer than this one. Visit Project Meshnet
  2. IRC. Everyone who wants to make sure their messages land use IRC as a backchannel now.
  3. Duckduckgo. The search engine that gets you out of your filter bubble, and respects your privacy.
  4. The creator of has a new federated social network called Pump. Visit him at
  5. Host your own web server. Get your own VPS (Digital Ocean is only $5 a month) and host your own web server. Deploy using Node.js using Bitters.

When in doubt, start by learning some Internet basics. HTML5 and CSS3 are a good start for anyone who?s never learned how to code. Then move on to JavaScript and the other favorite languages of the Internet.

We?re not going to get through this by pushing buttons on centralized services.

If you want to use the Internet in 2013, you need to pick up some tech skills. In a few years this will probably be all figured out and no one will be intercepting your iMessages.

Until then, let?s send everyone a strong message by deleting our accounts on centralized services and learning how to use the distributed Internet.

Visit my distributed website at

Can't convert Variant of type 8 to desired type 14
Can't convert Variant of type 8 to desired type 14

I've run into this error message a couple of times now, and each time it has taken me far too long to correct it.

In the end, the problem lies in data that is copied from one source to another, usually from Excel into Access, and the error doesn't show up in every field, nor is it something you can see. Generally, the solution is to delete the offending data and re-key it manually.

Using Coldfusion To Direct Domains
You can use Coldfusion to direct domain requests to specific directories. Here's what the code looks like:

<cfif server_name IS "">
<cflocation url="directory2" addtoken="no">
<cfelseif server_name IS "">
<cflocation url="directory3" addtoken="no">
Coldfusion and Dreamweaver
I was setting up Coldfusion on a new computer recently when I started running into some problems getting Dreamweaver to play nice. I was getting strange issues previewing in the browser. In some cases the preview reverted to Google! Well, it turns out Dreamweaver has changed the way it deals with the local server, and it's been a while since I've had to use Dreamweaver. In CS5 you must specify the following in the Testing Server Web URL: localhost:8500/"your folder in wwwroot"/.

An exception occurred while instantiating a Java object. The class must not be an interface or an abstract class. Error: '.
I received this error when attempting to upload an excel file to use with Ben Nadel's poiutility.cfc:

An exception occurred while instantiating a Java object. The class must not be an interface or an abstract class. Error: '.

Problem? I still had the file open. Duh!

Parsing Dates for MySQL
MySQL requires dates in the 2012-08-15 format. I haven't had success using LSParseDateTime to clean dates for insertion, but '#LSDateFormat(, 'yyyy,mm,dd')#' works fine. For numbers and currency #LSParseCurrency(FORM.dollars)# and #LSParseNumber(FORM.number)# work, allowing you to format numbers and currency in the FORM (like 1,344.56 and $535.00) and still insert the values properly in MySQL.

I've Had Just One User Since May 2010
Back in January of 2010 I failed my annual physical exam. My blood pressure was measured at 168 over 80. Apparently this is high. I was told by my doctor to get a blood pressure machine and start taking my blood pressure every day in the hopes that it would report that my blood pressure is normal and that I tested high at my physical exam because of anxiety. OK. To skip to the end of the story, yes, my blood pressure is normal, at most times, but tends to be high when measured by medical professionals. 

I hate paper lists, so I wrote a quick little web app so I could record my blood pressure on a daily basis and keep track of the resulting average.  Because I am who I am, I registered and exposed my little application to the world.

In May of 2010, user number 653 recorded his/her first blood pressure and pulse readings. User 653 has entered data every day since.

Making Textarea Work With iPad
You can't use rich text in textareas when using an iPad or iPhone. So, to check for iPad or iPhone and remove the rich text feature do this:

<textarea name="post" cols="60" rows="10" id="post" <cfif (REFind("iPad|iPhone|iPod|Android", CGI.HTTP_USER_AGENT) GT 0)><cfelse>class="wysiwyg"</cfif>></textarea>

Coldfusion Datefield Not Opening Calendar Window
I was having an unusual problem with a coldfusion form this morning, where my cfinput fields of type="datefield" would show the tiny calendar icon, but wouldn't open the popup window. I couldn't find any discussion of this issue anywhere, but I kept looking at code until the obvious jumped out, as it always does. The site I was working on was heavily ajaxed, and it seems I had lost track of form names. The form that was exhibiting abnormal behavior had the same name as another form on the page (ultimately). Changing the form name fixed the issue.

Focusing on Your First Form Field
I've had mixed results with scripts that attempted to set the focus on individual form fields, but this one has worked well for me in a number of situations. First, place this script right before </head>:

<script type="text/javascript">
// This will focus first non-hidden text or textarea field on the first form.
function focus_first ()
    var form = document.forms[0];
    if (form != null && form.elements[0] != null)
        for (var i = 0; i < form.elements.length; ++i)
            var field = form.elements[i];
            if (field.type!="hidden" && (field.type=="text" || field.type=="textarea"))

Then, make sure your <body> tag includes onload="focus_first()", like:

<body onload="focus_first()">

Exporting to Excel in Coldfusion 9
In past versions of Coldfusion, I was able to export a page to Excel by including this code in the heading:

<cfcontent type="application/">

Coldfusion 9 no longer recognizes this type of page as an Excel file, but the following code will work:

<cfheader name="Content-Disposition"
value="inline; filename=AllRevDist.xls">
<cfcontent type="application/">

Detecting Mobile Device Using Coldfusion
Here's the code I use on Extended Tribe to detect mobile devices and disable rich text editing in my textarea fields:

<cfif (REFind("iPad|iPhone|iPod|Android", CGI.HTTP_USER_AGENT) GT 0)><cfelse>class="wysiwyg"></cfif>

Here's the long version:
 <textarea name="post" cols="60" rows="10" id="post" <cfif (REFind("iPad|iPhone|iPod|Android", CGI.HTTP_USER_AGENT) GT 0)><cfelse>class="wysiwyg"></cfif></textarea>

Poi Problem
I had a problem again today with Ben Nadel's poi solution for uploading excel spreadsheets and inserting the data in your database. The error I got was:  An exception occurred while instantiating a Java object. The class must not be an interface or an abstract class. Error: '.

The solution was to delete several of the rows at the end of the spreadsheet. Somehow something gets into one of the blank rows that you can't see. Deleting rows after your data always seems to fix the problem.  

Why Everyone Needs Their Own Server
It's getting to the point where Web 2.0 is beginning to fail. Each man for himself and the internet providers against all.  But that's a different story, after all. The good old US of A is by far the highest priced provider of broadband access, except that it isn't broadband (by definition). But it sure is expensive. Competition, schmompetition.
Coldfusion Rounding Issue
I had a very strange problem recently with my production server rounding numbers for only one of my sites. For example, it was displaying $35.67 as $36.00. The problem, I think, was that I was inserting sums into a table, using cf_sql_numeric. This is the first time I've encountered the need to use a table to store sums, so I haven't run into this problem before. Luckily, after much thought, I checked the list of available cf_sql datatypes and found this one: cf_sql_money. I made the change in my code and the problem disappeared.
MySQL Date Fields and PHP and jQueryUI
Here's how to quickly make jQuery UI work with MySQL date fields. Insert these scripts in the head of the document:

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"></script>
<script type="text/javascript">

// Datepicker
inline: true
//hover states on the static widgets
$('#dialog_link, ul#icons li').hover(
function() { $(this).addClass('ui-state-hover'); }, 
function() { $(this).removeClass('ui-state-hover'); }

Make sure to set your input like this:

<td><input type="text" name="ck_date" value="" size="32" id="datepicker"></td>

Then, to get MySQL to work with a date field, change this:

inline: true
To this:

$('#datepicker').datepicker({ dateFormat: 'yy-mm-dd' 

Using Session.MM_Username in a PHP MySQL Query
When you want to use Session.MM_Username in the WHERE clause of a query, use this example for reference:

$username = $_SESSION['MM_Username'];
mysql_select_db($database_CostFlow, $CostFlow);
$query_accounts = "SELECT cost_accounts.autonum, cost_accounts.acnt_type, cost_accounts.acnt_num,  cost_accounts.acnt_compcode, cost_users.user_name, cost_users.user_compcode
FROM cost_accounts, cost_users 
WHERE cost_accounts.acnt_compcode = cost_users.user_compcode AND cost_users.user_name = '$username'
ORDER BY acnt_num ASC";

Validating Fields In Dreamweaver
Now that I'm learning PHP, I can't lean on the built-in functions that Coldfusion has. For instance, I was having trouble with the Validate Form behavior. Here's the correct way to do it:

I have added the action behaviour validate form and event onBlur to the email text field and name field for an order form and selected for the name "required" and "anything". and for the email field required and email address. Other fields such as name and message I have not validated. Saved and uploaded however I can still send the form with just 'test' in the message field with no prompts for the required fields to be filled in. What am I missing. Do I need to add an event to the send button?  I have a separate q about adding many forms to a shopping cart. Any advice would be much appreciated.Thanks Michael

ANSWER: Apply to form's submit button the same form validation and the event is onClick. Thats all! 

Setting Default Contacts List in Outlook
Every time I change computers or have to install Outlook in an Exchange setting I end up with the Global Contacts list being the default, and I always forget how to change the default list. This is how:

  1.. On the Standard toolbar, click Address Book.
  2.. In the Address Book dialog box, on the Tools menu, click Options.
  3.. In the Show this address list first list, click Contacts.
  4.. Click OK.

Uninspired At Times
This is one of those days when I'm completely uninspired to work on any of my projects. I have a project time line going for Extended Tribe, but I'm up against a wall of doubt, wondering who I think I'm kidding with the decidedly amateurish code and techniques the site consists of. Some days you just want to give up. I also thought to tackle the production database at work, but it is so convoluted now (40 tables and 130 queries) that the thread of what I'm trying to accomplish can easily escape me. These are good days, then, for doing trivial and mundane maintenance, if I can find some. Yum.
Coldfusion, WHERE Clause with Dates
In coldfusion, when using an MS Access database, I often build queries in Access and then paste the SQL into my coldfusion page. When filtering (using the WHERE or HAVING clauses) by date, Access surrounds a date with pound signs (#1/1/2055#). Coldfusion uses hash or pound signs as pointers, so such a query will fail. The answer is to use double pound signs (##1/1/2005##).

Sending bulk email with Coldfusion
Here's an excellent write-up on sending bulk email with cfmail. However, since I've already checked for bad email addresses before sending them to the cfmail page, I've reduced my code to something far simpler, just a loop through a table that has a field marked "Yes" for those folks I want to send mail to. Near the end of the loop I then update that table, changing the field from "Yes" to "No". After the loop is a counter which shows how many emails remain to be sent. The page refreshes after five seconds and cfmail has been successfully throttled.
Strange Datefield Behavior in Internet Explorer
I was having a problem with the fieldbox in a cfinput type="datefield" when using Internet Explorer. The calendar was hiding behind the field (not to mention some other strange sizing behaviors). I found this solution at StackOverflow:

Well, you have to encapsulate your datefield within a div with both position:relative and Z-index value, as in :

<div style="position:relative; z-index:3">
<cfinput type="dateField" name="info_dateDebutPub" value="#dateformat(info_dateDebutPub,'dd/mm/yy')#" mask="dd/mm/yy">

Feature Free
As I get older (and older, and older) I marvel at the ability of our new technologies to bring us information at volumes never before available. These days I fight to reverse the trend of complexity towards a minimalism that will allow me to get through the day without so much frustration that I can't get a grip on what my life is about. Now, the most useful tools seem to be the ones that simplify all this complexity in a way that actually makes me glad to be part of this technological assembly line. Today I posted to Single Function a new site I built to save myself some time, Record My Blood Pressure. Anything that frees up a few minutes is welcome, so I'm always on the lookout for good minimalism tools.
Preventing Session Hijacking
Session hijacking is a valid concern for all web developers. One of the easiest ways to hijack a session is by reading cookies and impersonating a user at one of the popular web sites. In Coldfusion, you can secure your cookies like so:

<!---<cfif IsDefined("Cookie.cfID") AND IsDefined("Cookie.cfToken")>
	<cfset Variables.cfID_local = Cookie.cfID>
	<cfset Variables.cfToken_local = Cookie.cfToken>
	<cfcookie name="cfID" value="#Variables.cfID_local#" secure="Yes">
	<cfcookie name="cfToken" value="#Variables.cfToken_local#" secure="Yes">

Also, you need to set the ALL of your cookies (not just CFID and CFTOKEN) to be secure.

Basically just just call <cfcookie> tag for each cookie and make sure to set the SECURE attribute to yes.

To secure the JSESSIONID (which is important), make sure to explicitly set it with a <cfcookie> tag and set the value to be SESSION.SESSIONID (since the JSESSIONID value is the same as SESSION.SESSIONID).

Recordcount Syntax
I always forget the easy things. Here's the correct syntax for a recordcount question:

<!---<cfif #QueryName.RecordCount# EQ 0>--->

Webhostingpad Path
Here's the real path for uploading files to webhostingpad:


Network problem, session aborted due to internal error in remote procedure call
I got this error:

Network problem, session aborted due to internal error in remote procedure call
which turned out to be a database issue, division by zero.
Coldfusion Testing Server Setup
The correct settings for the localhost coldfusion testing server is as follows:


Eliminated Dangerous Characters
I've been looking for a way to eliminate suspect characters from my title field in my addpost form. This is because I stupidly built the ID structure around the post title instead of the autonum key. Oh Well. Anyway, I rooted around in regular expressions and found that this does the trick so far. The new line goes right after:

<!---<cfif IsDefined("FORM.MM_InsertRecord") AND FORM.MM_InsertRecord EQ "form1">--->

Here's the new line:

<!---<cfset Form.NewTitle = REReplaceNoCase(FORM.Title, "[^a-zA-Z0-9 '()-_?.]", " ", "ALL")>--->

Remember to uncomment these lines.

You then replace Form.Title with Form.NewTitle in the Select statement. 

SMTP Setting For GearHost
When using cfmail on a site hosted by GearHost, the server must be set in the tag as so:


CFMAIL is a ColdFusion tag that can be used to send mail from a script. Here is an example of a script using CFMAIL to send a message.

<cfmail to = ""
       from = ""
       subject = "test email"
 server = "localhost">
       This message was sent by an
       automatic mailer built with cfmail:
       = = = = = = = = = = = = = = = = = = = = = = = = = = =
       = = = = = = = = = = = = = = = = = = = = = = = = = = =
<center>Message Sent Successfully</center>

Winsock Fix
I'm certainly no expert, but I am called upon, regularly, to fix computers that appear to be victims of viruses or trojans, many of which are acquired simply through browsing the internet. I have had universal success in fixing connectivity problems by using winsockfix, from Option^Explicit Software. It basically resets your TCP/IP settings to the Windows XP defaults.

You can download it here.
How To Display Current Time Minus One Hour
Here's how to display the current time minus one hour, which is useful to me because my shared server is one hour to the east, time-zone-wise.

value="<cfoutput>#TimeFormat(Now()-.0416,"hh:mm tt")#</cfoutput>"

How to reference MS Access database in CF8 64bit
Special thanks to:


CIW Professional:

Hi folks,


I think I found the way of adding MS Aceess (2007) to CF8 (64bit) on OS Vista Premium (64bit).

I did have problem doing this for some time and I have visited many forums looking for an answer. However today I think I found the answer how to connect the MSAccess db. If you remember it was very easy to do this with the 32 bit where we had an option for "Microsoft Access for Unicode. In the CF8 64bit you do not have this option but only "Microsoft Access". I think the problem was because CF8 was point to the Windowssystem32 directory instead of SysWOW64. Both system32 and SysWOW64 hold same application - ODBC Data Source Administrator (odbcad32.exe). If you open the one under SysWOW64 an click on Drivers tab you will see that all drivers are there. But if you open the one under system32 (same filename) you will notice that there is only one driver listed, well at least that's what I saw in my PC. NOTE: you will need to have an admin rights in order to open these files.

Then I decided to overwrite the file from SysWOW64 to system32 ( note: you will need to assign full control in order to overwrite this file, to do so right click on the file, choose properties and then security tab, make sure that you have all ticks under the permission for SYSTEM box). After you done this there is more work for you to do.

Double click on the application or you can open via the Control Panel  > Administrative Tools > Data Sources (ODBC).

Now you will open the same application but this time you will have all drivers listed in it.

Click on System DSN tab and then Add button. Choose the drivers ( in this case Microsoft Access Driver (*.mdb) and click finish.

In the data source name enter the name of the database

Click select and navigate to the folder where you have Access file is saved in. When you select the folder, in the left panel you will see the database file(s). Select and click OK. Click OK again. The database will appear under the System Data Sources window. Click Apply and then OK. The application will close.

Open CF8 Admin page and navigate to the Data Sources.
Give a name to your database in the Data Source Name filed and choose Microsoft Access as your driver.

Click Add button.

Database File  navigate to your MS Access Database file.

System Database File - C:windowssystem32system.mdw ( enter as it is)

Use Default User name  tick this box

Click Submit.

You will get an error at the top:
Unable to update the NT registry. Variable DRIVERPATH is undefined.

Do not worry. Click Cancel this will take you back to the Data Sources window. Click Verify All Connections button and you will see OK against your MS Access database.

If you use Dreamweaver you will see it under the databases. Ola! now you have MS Access connected via the MS Access drivers.

I have attached document with screenshot for you to follow. If it is working then I will be happy to know that I somehow contributed to help those who had the same problem as I had ( not anymore ).

Any questions please email to

Restrict Access Based on IP Address
I'm developing a timeclock application that needs to restrict access based on the visitor's IP Address. This code worked on my testing server but not on any of my production hosts:

<cfset Session.IPAdd="#CGI.Remote_Addr#">
<cfquery name="IPs" datasource="101TC">
SELECT Table_IpAllowed.autonum, Table_IpAllowed.IPAllowed
FROM Table_IpAllowed
WHERE (((Table_IpAllowed.IpAllowed)="<cfoutput>#Session.IPAdd#</cfoutput>"));

<cfif IPs.RecordCount EQ "0">
<cflocation url = "iprejected.cfm">

Based on a couple of forums I visited, this is probably a bug in Access 2007. I finally found some code here that was almost usable. With a few added parentheses the working code became this:

<cfif #cgi.remote_addr# NEQ
"12.345.678.9" AND #cgi.remote_addr# NEQ ""> <!--- Redirect To An Error Invalid Page Access --->
<cflocation url='iprejected.cfm' addtoken='No'> <cfexit method='EXITTEMPLATE'> </cfif>

Obtain Site Visitor IP Address
In coldfusion it is stupidly easy to obtain your visitor's ip addresses. I am building out a timesheet application that requires a restriction based on where the employee is loggin in from. Obviously it wouldn't make sense to allow them to log in from home (or anywhere except work). Here is the simple variable that acquires the address:


Travel Adapters
On this trip to Avila Beach I realized that I need to put together an adapter pack to take on trips. I will need a miniature stereo to RCA adapter for audio. We could use an HDMI to composite adapter in order to use the VAIO to show movies on a big screen. May as well have a regular HDMI cable as well.
My Two Latest Project Ideas
Here are my latest two project ideas:

A local produce-distribution hub, inspired by eFarm.  This would be a local-to-Ventura resource that would tie producers, distributors, and consumers together to deliver the freshest and healthiest fresh produce. This service could include everyone who is currently involved in our two Farmer's Markets, both sellers and buyers. It could also easily include local produce stands and vendors such as those on the Avenue.

The second is a local-to-Ventura delivery service based on a shared network of individual's vehicles whose routes are plotted each day and slightly re-routed to pickup and deliver goods at super low cost. Individuals would share their vehicle space with packages that could be passed off at participating locations (hubs) close to where most people drive anyway. In this way local delivery could be accomplished at very low cost. If it was expanded into Los Angeles it could even be popular. This service could be combined with the local produce distribution idea.

The Unique Name Syndrome
Having joined Facebook recently, I have come to discover that I am the victim of "Unique Name Syndrome". I admit to some small regional fame in my youth, and was surely known to many more people than I could have known.

Since my name is not only unique but also memorable, it is likely that scores of individuals have googled me in these past years.

Facebook has given them a way to reach out to me. I can only say that not everyone ages gracefully, myself undoubtedly among them, and that some sleeping dogs should emphatically be left reclining.

Son of a Lightning Rod Salesman
My father was, among other things, a lightning rod salesman. I got to help him install lightning rods on houses, barns, and other buildings (and trees) for most of my life. I also lived in an area of Colorado noted for its ferocious lightning storms. I had many brushes with lightning, including having my hair stand on end during a lightning storm, and several times seeing lightning strike within a hundred feet of where I stood.
Too Few Parameters
I recently got this database error message:
[Macromedia][SequeLink JDBC Driver][ODBC Socket][Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 3.
I've taken to using Access lately to generate SQL and copying the queries into my coldfusion. The problem is that Access returns the parameters in the WHERE clause with full quotes around them. In order for the query to work in coldfusion, the parameters must have single quotes.

Dealing with Antivirus2009
Here's a snippet from a Reddit thread that may help with fighting Antivirus2009:

For those who are having trouble updating or installing your anti-spyware and anti-virus programs due to Antivirus 2009 and its ilk, here is the solution.

This particular virus was bundled with a hidden process named TDSSserv.sys It's a service that re-directs all software updates to (your own computer) so that nothing will update. It also prevents Malwarebytes and Hijack This!(probably more) from installing or running.

What you need to do is go to Start, Control Panel, System, Hardware, Device Manager, Show Hidden Devices.

Scroll down to Non-plug and Play Drivers and click the plus icon to open those drivers.

Then search for TDSSserv.sys.

Right click on it, and select Disable.

Note If you select Uninstall, it will install itself again when you reboot the system, so DON'T select Uninstall.

Now people will be able to update and use their programs and delete the virus. I used Malware Bytes.

---------I just C/P from comments from somewhere on the interwebs, but it helped me once. I had the same problem trying to install malwarebytes, even after renaming the installer. This fix helped with that issue as well. This will allow Malwarebytes to be installed without changing the name, without being in safemode, without installing it 3 times. (Though you should run it from safe-mode anyway because it has an easier time deleting locked files). Also clear your temporary internet files/history/cookies, it will speed up your scans immensely.

Multi-step OLE DB Operation Generated Errors
Today one page returned:

Error Executing Database Query.
> Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.

As it turns out, this was due to a division by zero problem, which returned a simple "Error" notification in one field in Access. This error can also be returned as:

Error Executing Database Query.
[Macromedia][SequeLink JDBC Driver]Network problem, session aborted due to internal error in remote procedure call, connection closed.

I also had this error return under different circumstances and my hosting service determined it was due to the following:

This was a problem being caused by the access jdbc driver. I changed the driver for your DSN to the default in ColdFusion 8 and that fixed the problem.

No Value Given For One Or More Required Parameters.
When you get this error, look for quotes in your parameters, like this:

 UPDATE Table_Production SET TesterStart=
  <cfif IsDefined("FORM.TesterStart") AND #FORM.TesterStart# NEQ "">
  , "TesterEnd"=
  <cfif IsDefined("FORM.TesterEnd") AND #FORM.TesterEnd# NEQ "">
  , TodayDate=
  <cfif IsDefined("FORM.TodayDate") AND #FORM.TodayDate# NEQ "">

I don't know where they came from, probably Dreamweaver. I know, I know, nobody should use Dreamweaver, etc., etc.

Optimizing Pages For iPhone
To optimize your pages for the iPhone (for instance, removing the rich text editing feature) you can run this code at the beginning of any page that may need to be optimized:

<!--- detect iphone --->
<cfif findNoCase("iphone", cgi.http_user_agent)>
   <cflocation url="optimizedpage.cfm" addToken="false">

DailyRazor Hosting
The DailyRazor hosting wasn't good. Had to cancel.

The Third Element
Lithium is the third element in the Periodic Table of the Elements. If you haven't seen this movie, drop everything and go NOW. Besides being used as a treatment for anxiety, Lithium is also used in the manufacture of batteries, most notably laptop batteries, but also batteries that are used in electrically powered automobiles. There is much speculation that electric vehicles are the wave of the future, and as such, any resource that is necessary to the manufacture of such vehicles must take its place as one of the prime resources on the planet. There's an interesting article here about where most of the planet's Lithium comes from. It's a really nice looking place, too.

LiFePO4 Battery Facts
Here's a good link to information on Lithium Iron Phosphate batteries. These are the ones I use to power the motor on my bike.

Also, I use Anderson Powerpole connectors to connect the batteries to the motor and charger.

Coldfusion Authentication Fails
When I can't get my login page to open a restricted page, I first have to check to make sure all the application names are the same, then make sure to put this at the top of the login page:

<cfapplication NAME="whatever" SESSIONMANAGEMENT="yes" SESSIONTIMEOUT="20">

More Alternative Energy Analysis
Here's another terrific article about the math of alternative energy. Professor David MacKay of the Cambridge University Department of Physics is the featured source.

My Electric Bike
I've electrified my bicycle so I can get up the hill to our house without killing myself. Now I can ride it to work! Here's the bad boy parked at my office:

More data type mismatch in criteria expression
In querying by date range I was having the old familiar dtmice errors popping up and ran across the fix here. Here's the finished code:

<cfquery name="Recordset2" datasource="Database">
FROM Query_DOGInjectorsDetail
WHERE TodayDate BETWEEN #createODBCDate(form.startdate)# AND #createODBCDate(form.enddate)#

and here's a query of this query:

<cfquery name ="Recordset1" dbtype="query">
FROM Recordset2
WHERE Injector = '#Form.injector#'</cfquery>

While rebooting the server at work this morning, I received the following notification:

LCERPZH.exe has encountered problems and is unable to start.

To my disbelief, astonishment, and horror, there are no results returned by Google for "LCERPZH.exe".


Syntax error in UPDATE statement.
I get this error a lot when using the Update Form Wizard in Dreamweaver. This time it turns out I was using a field called "password", which is a reserved field in MS Access. To fix the problem I had to change:

  <cfif IsDefined("FORM.password") AND #FORM.password# NEQ "">


  <cfif IsDefined("FORM.password") AND #FORM.password# NEQ "">

No "Action"
It took me an hour to track down the reason one of my contact forms wasn't working. In the cfform header, I put action="signupthanks.cfm" to direct the user to a thank you page after submitting the email. I guess cfmail won't work with anything in the "action". More likely, any entry in this parameter simply bypasses the rest of the code once the submit button is clicked.

Union All Select
I've got this query in the daily email notification page at Tribe 101:

SELECT Query_PostsWithNewComments.postsid, Query_PostsWithNewComments.sdate,, Query_PostsWithNewComments.title,, Query_PostsWithNewComments.category, Query_PostsWithNewComments.stime
FROM Query_PostsWithNewComments
UNION ALL SELECT Query_titlelist.postsid, Query_titlelist.sdate,, Query_titlelist.title,, Query_titlelist.category, Query_titlelist.stime
FROM Query_titlelist;

It's returning duplicate posts. I can't remember now why I included the ALL statement, but I know there was a reason. I'm going to remove ALL for the time being and wait to see why it was there.

Am I a Hacker?
Here's a wonderful little page about hackers. If you're not quite sure what a hacker is, this is the right place to find out. This article so reminds me of my day job.
Data type mismatch in criteria expression
This one pops up all the time and can be very frustrating. What you tend to forget is that the error could be happening in any of the fields, not just the Where whatever = "blah". So, you've got to take out one field at a time to find the culprit. In an Update Record behavior, it's usually a date field.

Error notification
Here is some code I just used to catch duplicate title errors at Extended Tribe:

... CFML code ...


The insert record behavior goes here.

<CFCATCH type="database">

<CFIF cfcatch.NativeErrorCode EQ 0>

 <cflocation url="duptitle.cfm">


SUBJECT="Error on #GetCurrentTemplatePath()#">

<cflocation url="errorpage.cfm">



This method works because I made the title field in Access indexed with no duplicates. Having dedicated pages for the error notification is a good idea, too.


Validation in Coldfusion Forms
The first thing you'll need to do is convert all those crusty INPUT tags to CFINPUT. The CFINPUT tag is one of those extended controls that ColdFusion users adore. It has two extremely flavorful options: validation and requirement. You already know what validation means. Requirement means that if information is not valid, an alert box will honk at you until good data is entered. Let's make the simple changes to that will get this done.

You can add validation to your form manually. All you have to do is add three attributes to your CFINPUT tag: REQUIRED, VALIDATE, and MESSAGE. If you set Required to "Yes," the form won't submit if the field is blank. If users try to do it anyway, they 'll get whatever you put in the MESSAGE attribute. VALIDATE lets you check to ensure that the form input is in a certain format. If it's not, you'll get the MESSAGE attribute. Available formats are integer, long, date, eurodate, time, telephone, ZIP code, credit card, and Social Security number.

If we were going to add validation and requirement to the phone field, our code would look like this:



message="Please enter your phone number in XXX-XXX-XXXX format."





You only need to change the input tags to cfinput that you need to validate. Don't forget to change the closing tag to /cfform. Also, remove and cfoutput tags from inside the cfinput tags as they are not needed. Also remember to take out the cfoutput tags in the cfform action= parameter.

Page Security in Coldfusion
Securing all the pages on your site with Coldfusion is easy. Today I uploaded this new version of Whompyjawed and started getting error messages because I only wanted to secure the admin section.

There is one page where I used conditional logic to determine whether to show the links to the update pages. That's where I was getting my error messages.

The answer is to put this line of code on the page where you need to test the user's role:

<cfparam name="Session.MM_UserAuthorization" default="1">

How To Avoid Hot-Linking
To avoid hot-linking an image, prepend before the URL. To show a thumbnail of the image, prepend before the URL. Details: When posting on message boards or blogs, often you want to show or link to an image on another website. Directly showing or linking to that image is called hot-linking. It's generally bad because it leeches bandwidth from the host site, and as a result many webmasters have their servers set up to prohibit hot-linking. The typical work-around is to do the following: * Save the image to your hard drive * Navigate to a free image-hosting website * Enter the path to the image on your hard drive * Wait for it to upload * Copy the new URL and paste it into your message-board or blog post That's rather tedious. Well lets you simply enter the original URL in your post as you normally would, but with written before the URL. When this is viewed, the image will be copied once to, and from then on the image will always be served from instead of the host site. Additionally, a thumbnail is automatically generated, which can be accessed by adding before the original URL.
New Macs
I got a new mini mac for Xmas and Linda got a new Macbook Pro to replace her ailing VAIO. Neither of us have used Macs since the early nineties and the relearning process has been interesting. I'll be adding some helpful links here to help us in the process. Here's a good general-purpose list.
Verity Search
Here's the procedure my coldfusion host, CrystalTech, said to use to create a verity search collection (a site search tool using coldfusion). Create a file to open that has this code: <cfcollection action="create" collection="WildcatCollection" path="d:inetpubcoldfusionhostwildcatdataservicesverity"> <cfindex collection="WildcatCollection" action="update" key="d:inetpubcoldfusionhostwildcatdataservices"> Use just the second half to do updates. This code returned results, but the links were broken ( CrystalTech support, though responsive, was ineffective. CrystalTech forums were seemingly in an alien language. I had to resort to deep digging in the documentation and trial and error, two of my favorite methods for problem solving (not). The proper code after the collection is created: <cfindex collection="WildcatCollection" action="refresh" type="path" key="d:inetpubcoldfusionhostwildcatdataservices" urlpath="" extensions = ".htm, .html" recurse="no">
Yet Another Hare-Brained Scheme
But it's not mine this time...

The author of this article is unknown, sorry.

When we think of the energy resources that we rely upon everyday, what words come to mind?

Oil. Nuclear. Hydroelectricity. Solar. Hydrino. Wind. Gas.

Spot the odd one out? The word hydrino is understood by few - and accepted as a reality by even fewer. But if a small company situated in Cranbury, New Jersey has its way, hydrino is a word that will soon be as commonly understood as all the others, ushering in a golden age of abundant energy, research and causing a transformation in society that will be - at a minimum - comparable to the introduction of the electricity grid.

That company is BlackLight Power. Set up in 1991 in what was previously a Lockheed Martin satellite manufacturing facility, this small outfit has made claims that initially appear dismissible as completely pie in the sky, yet it has managed to secure interest from some highly respected investors to the tune of over US $50 million. These individuals and companies have effectively entrusted BlackLight Power to overturn some of the most fundamental rules of quantum physics, an expectation that has caused many a raised eyebrow across the scientific as well as investment communities.

The stakes are difficult to comprehend. This technology, if real, could radically alter the value of trillions of dollars of energy generation infrastructure and future investment patterns worldwide. But the key question remains - is it real? What is the truth? Are we soon to see a new world of limitless energy, or will this company go down the path of countless other scammers, except taking down millions of dollars and the reputations of some formerly brilliant investors with it?

To find out the answer, let's have a look at some background and go back to a time when another - possibly related - supposed breakthrough was about the change the world.

Back to the Future: Cold Fusion v2.0 or is it?

The world of alternative energy can broadly be divided into two sections: first, we have the relatively established players such as solar energy, wind power and wave generators, which use accepted technologies and methods for generating energy in somewhat novel ways. There is nothing fundamentally unknown about these technologies and the way they use physical laws is not questioned.

Then, we have the flip (an apt word in many cases) side: unproven technologies based on theories which exist largely in the realm of fringe science, often associated with claims of perpetual motion or other concepts which partly or completely go against fundamentally understood physical laws relating to energy conservation. Devices and concepts that predominate in this field include the Joe Cell, the Searl Effect, the Adams Motor and assorted "vacuum energy" devices, all of which promise near unlimited energy, but to date have produced nothing except confusion, derision and more than a few lawsuits from hoodwinked investors.

There have, however, been hints that some non-mainstream technologies could have some substance to them. One of the most famous of these was cold fusion. The cold fusion saga is one of the most interesting in modern science, combining not only cutting edge research, but media manipulation, political intrigue and - allegedly - big business interference&at least according to the conspiracy theorists.

Cold fusion is supposedly a nuclear fusion reaction (where lighter nuclei join together to form heavier particles) that occurs at temperatures and pressures which are close to atmospheric conditions, as opposed to the extreme conditions in a Tokamak reactor type device (where temperatures exceed 100 million Celsius), which tries to create a "hot" fusion reaction. This approach has been researched for over a quarter century and has produced some positive results, but commercial viability remains distant, at best.

In 1989, two scientists from the University of Utah claimed to have achieved room temperature fusion reactions, gaining worldwide fame&which soon transformed into notoriety as the global scientific community joined pro and anti cold fusion camps in the debate as to the validity of their findings.

Scientists around the world tried to repeat the experiments, with disappointing results  largely as a result of somewhat ill defined experimental methodologies. The un-reproducibility of the original findings caused scathing reports in the prestigious scientific journal Nature, with the original cold fusion results being aggressively challenged. Subsequent years saw cold fusion discredited into the realms of fringe science, with many capable scientists scared off further research into the area.

Nevertheless, low level investigations have continued worldwide and whilst not conclusive, sometimes reactions are reportedly being observed that do not appear to conform to the classical understanding of chemistry and / or physics, though stating that these are nuclear reactions may perhaps be a bridge too far. There is no agreement as to what people are observing or even what actually did occur back in 1989.

Many people now see BlackLight Power as a revision of the cold fusion saga. There is a world of debate as to whether BlackLight Power has perfected a cold fusion process or something else. However, since cold fusion itself is a process not properly understood, the question remains hard to answer. But what is clear is that the controversy surrounding both claims, despite the more than 16 years that separate them, is much the same.

The original controversy about cold fusion focused on two individuals, but BlackLight Power has one intriguing individual as the driving force.

The Initiator: Quack or Visionary?

The man in question is Dr. Randell (Randy) Mills, the founder of BlackLight Power. The 6'5", lanky Mills is the son of a farmer and for some time was a farmer himself. As a teenager, the prodigal Mills ran a very profitable business on land he leased to raise corn. But despite, or perhaps because of, his obvious business acumen, he did not see himself as college bound.

Like many individuals of uncommon brilliance, Randy did not have a stellar introduction to academia. Bored for many years with classes that were clearly way beneath his capability, his lack of attendance at so many high school lectures and disinterest in those few he did attend seriously jeopardized his graduation. His native genius did not translate into fine marks in most cases.

Fate, however, intervened in the form of a freak accident which caused him to re-evaluate his life and ideals. After badly slicing up his hand and spending 5 hours in surgery, he gained a realisation that his life could have ended then and there and thus he became determined to find out as much about the universe as possible. With a new found zest, he used profits from his business to fund attendance at the prestigious Franklin and Marshall College, where he graduated first with ease and enrolled at Harvard to become a doctor.

His Harvard Medical School years were characterized by outstanding results achieved with little apparent effort, passing with such ease that it was obvious to all that barely a little more focus would result in achievements of world significance. But interestingly, he simultaneously undertook a number of science based courses at MIT, where he also excelled - courses that caused him to start questioning quantum theory. The workload for any normal student would have been horrendous, but Randy sailed through, the result of not only being brilliant, but of being truly enthused about what he was both learning&and discovering.

Whilst an MBS may seem a somewhat unusual background for an individual who wishes to overturn quantum physics on its head, it is clear evidence that the man is highly intelligent, but when combined with his excellent results in such a broad range of areas it shows him to be unconventional thinker with a mind on a par with those of the greatest inventors.

Clearly, Randy is not some unqualified backyard hobbyist, but that does not automatically mean his claims are correct. He is a genius and has unquestionable achievements in an area where he is highly qualified, but he has ventured into a field where others with more impressive credentials vehemently discredit his claims.

The Claims: A New Technology&and A New Physics?

So what, exactly, are Dr. Mills and BlackLight Power saying they have discovered?

Hydrogen, the most abundant element in the Universe, is the focus of the companys claims. Essentially, BlackLight Power states to have invented a new process that lowers the energy state of the hydrogen atom (one proton being orbited by one electron&though that again is something that is questioned, as we will see below).

In physics, the grounded state is the natural state of all atoms, where the components of the atom are in "perfect" balance. What Blacklight Power claims is that it has discovered a way to make the orbiting electron move below its ground state, closer to the proton nucleus (at least in the classical reckoning. In reality, what Dr. Mills is hypothesizing is that the hydrogen atom is not so much an electron orbiting a proton but rather, a proton surrounded by a shell of energy). The transition process from the ground state to the new state is supposed to release a huge amount of energy - far more than that required to initiate the reaction - across a broad range of the EM spectrum, creating a type of plasma in the process.

According to convention, 13.6 eV (electron volts) of energy is needed to separate the orbiting electron from the proton. Naturally, this means that if a proton and electron are combined, then 13.6 eV is released in the process. But if it is possible to go below the grounded state, then the amount of energy released is far greater.

The method for achieving this is a catalytic process that varies in application (and for obvious reasons is not fully explained), but it involves the presence of - for example - potassium atoms or strontium ions. The hydrogen atom becomes a hydrino, with a radius of anywhere between one half to one fifth of the original particle. In the process, a huge amount of energy is released. The net energy release in this reaction is a remarkable 68 eV.

Trouble is, quantum theory states this is impossible - the grounded state of an atom is simply the lowest energy state possible and that anything that contradicts this is impossible.

Some details as to this process can be found here:

If Mills is right, then quantum physics is wrong. And that is something which is does not sit well with many individuals with credentials at least as impressive as Dr. Mills.

Also, what is being described here seems suspiciously close to an explanation of cold fusion, which is causing further consternation among those who remember the nightmare that occurred back in 1989. This is a state of affairs no one wants a repeat of. However, not everyone is a critic.

The Supporters and the Detractors.

Very often, claims for alternative energy of this nature attract fringe science groups and individuals, who despite their best intentions often do more harm than good to the cause they are trying to support.

This is where it gets interesting. BlackLight Power has secured various levels of backing from both NASA and the US Navy: neither organization is exactly bereft of exceptionally capable scientific talent, or of rigorous methodological approaches to evaluating extravagant claims.

But it does not stop there. The Company's Board boasts names of impeccable pedigree: they include Michael Jordan, Chairman and CEO of EDS; Neil Moskowitz, the CFO of CSA First Boston; General Merrill McPeak (ret.), the former Chief of Staff of the USAF and Vice-Admiral Michael Kalleres (ret.), a senior USN officer who once commanded the US Second Fleet and Military Sealift Command. Other directors are also individuals of remarkable achievement and credentials.

What is especially noteworthy here is the involvement of the former military officers. There is no way that any of these individuals would have accepted Board positions with BlackLight Power without having the claims of the company tested to some degree by the scientific arms of the respective former services in which they held strategic roles and it is likely that they would have had access to resources not available or even known to the general public. Without doubt, the US military sees something in these claims and wishes to have some control as to the company's future.

But again, this cannot be regarded as proof that the theory works. It could merely be indicative of the perilous state of both US scientific research and decision making.

What the US military would have (should have?) done is subject these claims to rigorous testing. The results of these - assuming they were undertaken - have not been revealed, but there have been other attempts to replicate the experimental protocols of Blacklight Power. On the positive side, Prof. Maas, a chemist from the University of North Carolina, has examined the claims of the company and observed its experiments. His conclusion is one of cautious optimism: whilst he cannot explain fully what is being observed, he has seen enough to rule out trickery, error or misinterpretation. Of course, a key test of any scientific hypothesis is independent reproducibility on as wider scale. This was the great failing of cold fusion, where somewhat sloppy wording in describing the experimental parameters and a blatant error in gamma radiation data back in 1989 was later brutally picked apart by the media. BlackLight Power so far is a mixed bag: it has generated enough independent evidence to make it fairly certain something interesting is happening, that it is not a scam. But others have tried and failed to achieve anything, making them believers that BlackLight Power has perpetuated a scam, though possibly not deliberately.

But could a scam fool so many capable people? Would not due diligence have long ago discovered if there was a fraud? Not always. Breakthrough physics such as this by definition means that there are very few - if any - experts in the field other than the people claiming the new process or invention. There exists little external ability to critique the claims with anything like the required level of validity. Thus, BlackLight Power exists in a rarefied world: too much evidence to be dismissed offhand, but not enough evidence to persuade conclusively.

Conclusion: Too intriguing to ignore, too dubious to support.

There is no simple answer to BlackLight Power. Its claims are superficially extravagant enough to be dismissed out of hand, yet it has attracted proponents whose credentials would prima facie make them extremely difficult to deceive. It has promised much for many years and so far nothing substantive has happened&yet the research that the company puts out is scholarly and has attracted reputable supporters.

The truth may lie somewhere in between. Perhaps BlackLight Power has stumbled on some unusual chemical reactions, but may have misunderstood or misinterpreted their discovery and that - at best - the future of their technology will be for high school student experiments, rather than transforming the world. Or is the case - as some conspiracy theorists would like to believe  that evil, dark powers are deliberately stalling this technology in a Machiavellian conspiracy of global proportions to ensure they extract the best deal from it and the greatest amount of profit from existing energy sources before they are rendered obsolete? Such a theory may be intriguing, but sadly, the X-Files has long since ceased production.

Whatever the case, BlackLight Power cannot be ignored.

With certainty we can only lead to one conclusion: Blacklight Power has done something truly remarkable. Time will tell whether it has actually done anything useful.
Browsing the World Wide Web
Here's a comment recently posted to the "Build Your Own Job" post:


Posted by Anonymous on September 19, 2006 10:09

Hi, I can't figure out how to get rid of these items on the side of the page ------------------------> when they're covering up other text. Please advise.


First, I'd like to thank Joella for actually reading this page, and I thank all the rest of you, too. Both of you. Now, I hear these kinds of comments nearly everyday where I work; it's part of my job. Computers have changed the way many of us interact with the world and that would be a far better thing if computers (and the software that runs them) could be depended upon to work like, say, a refrigerator. Your refrigerator sits there calmly making cold air for years on end without maintenance of any kind (save cleaning, one would hope). Try that with a computer. The problem Joella alludes to (which I could not reproduce) is probably due to the "version" of her chosen browser, which I further assume to be Internet Explorer. For the uninitiated, let me say this about Internet Explorer: Please stop using it. Download Firefox now. You will get used to the slightly different interface within minutes and will save your computer exposure to countless bad things. Those of us who dabble at HTML, which is the programming language of the world wide web, know that getting your web pages to look exactly the same no matter what browser is looking at it is nigh on to impossible. It's similar to what might happen if television broadcast had never been standardized. You'd need a different television to watch each channel.

So, I don't know why the stuff on the right side of the page is covering up the text. I can't get it to do that with the two browsers I have (yes, IE is one of them). If this question were posed to me by, say, my boss, I'd take the time and effort to figure it out. But from Ventura, I can't see what Joella is seeing. As with so many other things in life, it's every man and woman for himself or herself. And Microsoft against everybody.

By the way, if it sounds like I've taken offense at Joella's comment, please chalk it up to my imperfect writing abilities. In fact, I'm always interested in what other people discover when they're using their computers. Strangely, I've always had a fascination for computing, and now it is a big part of my job. Besides letting me do what I enjoy, it has also been quite a character-building process, as those of you who know me well can easily guess. Thanks again, Jody.
Technology, Ain't It Grand?
Technology wastes so much of our time. Here are some tips on how to get revenge on a technological world.

The designers of some elevators include a hidden feature that is very handy if you're in a hurry or it's a busy time in the building (like check-out time in a hotel). While some elevators require a key, others can be put into "Express" mode by pressing the "Door Close" and "Floor" buttons at the same time. This sweeps the car to the floor of your choice and avoids stops at any other floor.

Most elevators have the option for this to work, but on some of them the option is turned off by whoever runs them. This is a rather fun hack, so the next time you are on an elevator, give it a try, you have nothing to lose.


How To Change A Southwest Airlines Boarding Pass From a "C" or "B" to an "A"!

Note to self: Tell airlines that HTML based print-at-home boarding passes are a bad idea. The info below is very innocuous, but if you think about other things that could be done.....

If you fly Southwest, you know that being a B or C is undesirable. If you print your boarding passes, you never have to be in that group again.

1) Use Firefox (IE cannot correctly save the web page).

2) When viewing your boarding pass, click "File" then "Save Page As". You want the "Save as Type" to be "Web Page, Complete".

3) Save this graphic: somewhere on your hard drive.

4) Use any HTML editor to change the "B" or "C" graphic on your saved boarding pass to the "A" graphic that you saved.

You now have an A boarding pass. I'm told that this works perfectly, and that the A, B, or C is not embedded or associated in any way with the barcode on the side. My informant says to watch the screen attached to the boarding pass scanner the next time you are boarding on Southwest. He says it just turns green and says "Valid Boarding Pass" - nothing about boarding group.
Coldfusion and Access
Sometimes Coldfusion can be a bit of a challenge. This week I struggled with a formatting problem with some code that was returning the following error message:

[Macromedia][SequeLink JDBC Driver][ODBC Socket][Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

I suspected a formatting problem in a date/time field I was using and as it turns out, I was right. The best link I could find addressing the problem is here.

The actual fix, since I don't have access to the root of the server I'm using, is to format the date/time the way MS Access wants it. I had a devil of a time finding the correct syntax, but it is this:

#DateFormat(Recordset1.StartTime,'MM/DD/YYYY')&' '&TimeFormat(Recordset1.StartTime,'HH:mm tt')#

Seems simple enough, eh? The first few times I went looking for this I ran across the correct answer given with an incorrect example. Ugh!
Computer Security
I'd like to share with you a few of my computer security concerns. We all consider our computers remarkably useful tools, and we have a tendency to treat them as appliances (taking for granted that they'll run on their own without our intervention). However, being tools, they require maintenance to work properly and safely. The security threats I'll discuss here arrive from three sources: email, browsing the web, and remote access. When it comes to email, please remember that we should never open an attachment unless we are ABSOLUTELY sure of the source. This is the easiest way for malicious hackers to get into your computer.

All the computers at work, and hopefully your home computers, are protected by a program called Avast. This program, in its default implementation, defends against viruses, Trojan horses, keystroke loggers, and malware (spyware and adware). But even Avast isn't immune to bugs. It was recently discovered that the installation files could, in some cases, make it possible for someone else using your computer to gain access to your files. For this to happen, someone would need to be able to log onto your computer, so this is only a problem if your computer is not password protected. Still, Avast has fixed the bug, and you may need to download the program again, and re-register. I'll be happy to do this for you.

Another malicious attack that comes via email is "phishing". This is where you receive an email that seems to come from a legitimate source, like Citibank or PayPal, telling you that you account has been compromised or otherwise breached and that you need to follow a link to a page where you'll be asked to enter you personal information such as login name, password, account number, etc. These bogus sites, which look just like the real ones, then use your personal information for illegal purposes. The best advice, in the past, was never to follow these links, and if you had concerns simply to enter the address of the legitimate page in your browser address bar and check on your account at the legitimate source. This is no longer good enough. A recent DNS (Domain Name Service) hack led people to malicious sites even if they had manually entered the address in their browser. The best advice is to never enter personal information into a web page if told you need to update or confirm your information. Do this only after calling the institution to confirm any message you may have received from them.

Web browsing is another vector for fraud. Internet Explorer, because of its built in ability to share and execute programs (Active X), is inherently insecure. See this story for a current vulnerability:,1895,1944579,00.asp.

The browser I recommend is Firefox, which is much more secure for everyday use. Computer code is so complex that there will always be new exploits (ways to get into the code being run on your computer). Making sure you have the latest security updates for your operating system is your first line of defense. That's why all the computers at work are set to update automatically. Again, Avast will help protect you from malicious sites when you are browsing the web.

The third door for hackers is through remote access. We use Remote Desktop Connection at work, which provides us with username and password protection. Our default password is a combination of numbers and letters and is at least seven characters long. That is the least we can do to make it hard for hackers to gain access to our computers. Software is freely available that will enter every word in the dictionary, in all its permutations, into our password request field in a matter of minutes. You should change your password from the default (ask me if you don't know how), but don't replace it with something easy to hack. Make it a combination of letters and numbers and at least seven characters long. Obviously, we should never share our passwords and we should change them periodically.

As you can see, there are numerous ways in which someone can gain access to your computer and the information on it. A virus is bad enough, but it can be removed. If someone gains control of your computer then they'll have access to all the information on it and to all the information on the network that you have access to. If this unhappy event occurs, our first problem is detecting it. That part is up to me. Often, however, a compromised computer will simply result in LOST data. That's why backups are so important. You do back up the data on your home computer, don't you?
Amazon Offers Online Storage
EWeek posted this article today.'s Amazon Web Services on March 14 announced Amazon S3, an inexpensive, reliable storage service that allows small companies to instantly scale their growth.

Amazon S3 offers software developers a highly scalable, reliable, and low-latency data storage infrastructure at low cost, according to the Seattle-based company. It provides developers with access to the same storage system that Amazon uses to run its own infrastructure, company officials said.

"Amazon S3 is based on the idea that quality Internet-based storage should be taken for granted," said Andy Jassy, vice president of Amazon Web Services, in a statement. "It helps free developers from worrying about where they are going to store data, whether it will be safe and secure, if it will be available when they need it, the costs associated with server maintenance, or whether they have enough storage available. Amazon S3 enables developers to focus on innovating with data, rather than figuring out how to store it."

Jassy said Amazon S3 lets developers pay only for what they consume and there is no minimum fee. Developers pay $0.15 per gigabyte of storage per month and $0.20 per gigabyte of data transferred, Jassy said.

Amazon S3 provides a Web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the Web.

The new Amazon storage service enables developers to write, read and delete objects containing from one byte to 5GB of data each; each object is stored and retrieved via a unique developer-assigned key; objects can be made private or public, and rights can be assigned to specific users; and Amazon S3 uses standards-based REST (Representational State Transfer) and SOAP (Simple Object Access Protocol) interfaces designed to work with any Internet-development tool kit, company officials said.

Amazon S3 already has some early users, including the University of California, Berkeley's Stardust@Home team, which is responsible for NASA's "Stardust@Home" project. The team is using Amazon S3 to store and deliver the 60,000 images that represent the data collected from its dust particle aerogel experiment. These images will be delivered to 100,000 volunteers around the world who scan the images looking for dust particles from comet Wild2.

"We quickly ran into challenges when we started the project using our own infrastructure," said Andrew Westphal, project director of Stardust@Home, in a statement. "Using Amazon S3 has allowed us to proceed without having to worry about building out the massive storage infrastructure we realized that we needed to successfully complete the project. The fact that Amazon S3 is an Internet-connected storage service is particularly useful to us as we expect the data examination phase of the project to take only a few months. We can quickly ramp up and back down again without a huge investment."
This blog was originally built from a community portal application called cfxtreme which was in turn built using coldfusion. I can barely use coldfusion at all, and I'll never be accused of being a developer, but I truly enjoy tinkering with web pages, whether static or dynamic, and I always have. One of these days someone's going to come along and expose my lack of expertise to somebody else (won't that be awful) and I'll no longer get to pretend I know what the hell I'm doing. By the way, whompyjawed is an old southern expression my father used to use. It means, basically, asymmetric. It is usually used in the context of something being out of alignment or crooked. My face, for instance, is slightly whompyjawed.

I've cobbled together a few websites using coldfusion and my favorite is simply my own notebook where I keep my contacts and dates to remember and so forth. It comes in handy on a regular basis and I have complete control over it. What that means, naturally, is that it's probably insecure to the point of being public and misses best practices by a wide margin. Nonetheless, it gives me pleasure to screw around with it, especially when it works the way I want it to.
I'm very paranoid about losing data, and where I work I'm in charge of backing up everyone's data, including files on the server. I use Retrospect, and like it just fine, but I have never really trusted tape backups. However, I will continue to use tape as long as I can because it adds one more layer to my scheme and tapes are quite portable. But then, so are today's external USB drives. I have one USB drive attached to the server, and it receives a full backup every night. This drive is really handy for restoring accidentally deleted files or anything else from yesterday. It's much faster than the tapes. I do make a full backup to tape each night, as well. I also rotate the tapes like this: one tape for each day of the week except Friday, when I use one of my five weekly tapes. I take the most recent weekly tape off site. I also have a second USB drive that I restore a full backup to every couple of weeks. This USB drive also goes off site. If I could, I'd have USB drives for each day of the week. As my company grows I'm going to have to set up a machine or two just for backups.