Today I am old and I have an EVO

Today is the Summer Solstice and my birthday. Today I am 56 and in 4 days, Emerald wil be 22 months. Dang, I feel old.

On another note, I stopped by BestBuy and picked up the EVO I ordered. So far, I am very impressed with it. In fact, I am very impressed with it. I connected it via bluetooth to my Nissan Pathfnder and it worked perfectly.

Thank you HTC. Finally a model that works with a Nissan.

Tomorrow, I root the phone and start working on my own custom ROM.

Four years Old

It has been exactly four years since my current notebook arrived at my doorstep from Toshiba. My first laptop was a Toshiba 405CDT and I've been a Toshiba 'Fanboy' ever since. The current system is a Satellite A100-S8111TD with 4GB of memory and 400 GB drive, running Windows 7.

The battery only last about 20 minutes, and it is far from perfect. The power switch has problems. The Caps Lock LED will not turn on. One of the battery clips is broken. It shows a lot of wear but overall it runs great and I have grown to depend on this ancient technology.

I almost hate to retire this machine, but in a couple of weeks, its replacement will be here and this unit will be used to run the Light-O-Rama light display.

Time for a new notebook

After a year of procrastination, today I order a new notebook. I usually wait no more than three years. This time almost four years has gone by with the same computer. That's darn good considering how tough I am on hardware. My current system is running so well I hadn't noticed how old this thing is.

I don't have an exact count, but I think this is the 14th Toshiba laptop/notebook I have owned. Some have been replaced when only a year old and others at three years and they have all been Toshiba models.

[More]

Time for a new phone

A few weeks ago, I broke my HTC Touch Pro. It was a great phone and I was very happy with it. But with all good things, it is no longer being offered.

My wife has an iPhone and she is very happy with it. The big problem with the iPhone is it keeps dropping calls. I never dropped a call with the T9ouch Pro and in fact, you could call me a HTC fanboy.

[More]

Translating from Roman to Decimal Numbers

Ray posted an entry on his blog dealing with converting Roman Numbers to decimal numbers. I ran his code and pointed out that IIX returned 10 instead of 8.

A debate ensued on whether IIX is valid. Ray replied:

Now I'm going to ask you to put up or shut up! ;) If you can find me proof that IIX (or IIC, etc) is valid, I'll support it. ;)

It is still undecided if IIX is valid. I felt it should return the correct value or no value at all. But then I thought, if the number was ever used, the converter should convert it. So I took Ray's code, made some changes and now it should convert any Roman Numeral you throw at it.

EDIT: I found a serious flaw in the logic. Here is the correct code, even though the other did work in most cases. The first code failed on MCCCIIIX. It returned 2107 instead of 1307.

view plain print about
1<cfscript>
2/**
3 * Converts Roman numerals to decimal.
4 *
5 * @param input      Roman number input. (Required)
6 * @return Returns a number.
7 * @author Raymond Camden (ray@camdenfamily.com)
8 * @version 1, February 2, 2010
9 */

10function romantodec(input) {
11    var romans = {};
12    var result = 0;
13    var pos = 1;
14    var char = "";
15    var thisSum = "";
16    var subSum = 0;
17    var nextchar = "";
18        
19    romans["I"] = 1;
20    romans["V"] = 5;
21    romans["X"] = 10;
22    romans["L"] = 50;
23    romans["C"] = 100;
24    romans["D"] = 500;
25    romans["M"] = 1000;
26
27    while(pos lte len(input)) {
28        char = mid(input, pos, 1);
29        subSum += romans[char];
30        if(pos != len(input)) {
31            nextchar = mid(input, pos + 1, 1);
32            if(romans[char] == romans[nextchar]) {
33                pos++;
34            } else if(romans[char]
< romans[nextchar]) {
35                result = result + romans[nextchar] - subSum;
36                subSum = 0;
37                pos += 2;
38            } else {
39                result = result + subSum;
40                subSum = 0;
41                pos++;
42            }
43        } else {
44            result = result + subSum;
45            pos++;
46        }
47    }    
48    return result;
49}
50</cfscript>

I am pretty sure there is a better way yo do this, so please feel free to leave suggestions and ideas.

Two great announcements

Today was a good day for developers. Adobe released AIR 2.0 beta 2 and Google will stop support for IE 6.

I am excited for AIR 2.0 as it adds: enhanced support for interacting with printers, support for the detection of mass storage devices, multi-touch and gesture support and the webkit has been updated with HTML5/CSS3 support.

And now for something completly different:

[More]

Making MySQL 5.1 work with the old driver

An interesting problem at work that I forgot I knew the answer to. At the agency there is a set of very old Microsoft Access applications getting data from a very old MySQL 4.0 server. The server that the data base resides on is being replaced with a Dell 2950 and I want to upgrade all the software. With MySQL 5.1 installed the Access applications, using the 3.51 driver, could not connect to any of the databases. When checked against the DSN an error came back as: Client does not support authentication protocol.

[More]

One month old

Today marks the one month anniversary since the rebirth of this blog. I had made the decision to write at least one entry each day. After a month of blogging, there are times when I don't have an entry worth blogging about. So I have decided to try Monday to Friday for the time. I will see how that goes and maybe I will spend less time on my laptop during the weekend.

Adobe Community Professionals: Denver

Two weeks ago Adobe released the latest list of community experts, at the same time, rebranding the program. Denver is the home to 7 of these professional experts. I have met most of them and look forward to meeting the rest. Congratulations to all of them.

David Hassoun, RealEyes Media, Rich Internet Applications

RJ Owen, EffectiveUI, Flex

Brian Reyman, , InDesign

Rob Rusher, On3, Flex

Juan Sanchez, EffectiveUI, Flex

Paul Trani, Starz Entertainment, Web Design

John Wilker, 360|Conferences, Flex

Potential ColdFusion information Solr disclosure issue

Adobe released a securitry bulletin for ColdFusion 9 today.

ColdFusion by default allows collections created by the Solr Service to be accessed from any external machine using a URL. This allows users to access information about the collections as well as search and index them.

Adobe recommends affected ColdFusion customers update their installation using the instructions below:

Follow the instructions below to disable external access to the Solr collections:

1.Open the file jetty.xml located at {ColdFusion-home}/solr/etc for Server install or {Solr-Home}/etc directory for other type of installs.

2.Look for the following property. There are two occurances of the property in the jetty.xml file. Locate the uncommented property.

view plain print about
1<Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set>

3.Add the following property just below the above property

view plain print about
1<Set name="Host"><SystemProperty name="jetty.host" default="127.0.0.1"/></Set>

This will set the access to the Solr collections from the browser to localhost only

4.Restart Solr Service.

More Entries