title image
| sealed is our fate
written in stone?
free will requires
we make our own
| the journey of life
destination unknown
guided by our choices
a new world is grown
| struggling to make
the best decisions
we are guided only
by distant visions
Wishing you the best of visions,

Scott Arnold

Welcome to Scott Arnold's personal web site.

(5/28/2009)
Worthy of support: H.R. 1456: Consumer Overdraft Protection Fair Practices Act
To extend the protections of the Truth in Lending Act to overdraft protection programs and services provided by depository institutions, to require customer consent before a depository institution may initiate overdraft protection services and fees, to enhance the information made available to consumers relating to overdraft protection services and fees, to prohibit systematic manipulation in the posting of checks and other debits to a depository account for the purpose of generating overdraft protection fees, and for other purposes.

(3/31/2009)
I have now completed a beta version of my backup software named CatBack. This is a companion to the earier mentioned CopyCat, though CatBack is actually more mature than CopyCat at this point. You can download CatBack and try it out if you like. After you expand the ZIP file, you can run catback by executing catback.jar. You can also use CopyCat if you want by executing copycat.jar, though the only real reason to use it is to take advantage of copy functionality. If you use a Mac, hang on awhile longer; I'll be putting up a .dmg file for CatBack. It's still a beta, so you may find a bug or two if you use it enough. Feel free to email me with feedback or feature requests.

(2/23/2009)
I've written a new Java application called CopyCat. Also made note of it on my Software Projects page.

(2/12/2009)
I brought my Software Projects page up to date. That is all. Have a good day.

(2/5/2009)
So...I set up CVS on my server in the basement to manage my Java source files. In addition to providing file versioning, it allows me to easily work on my code from just about anywhere, which is what I really set it up for. However, it is not a simple task (especially on Windows, as the documentation really doesn't cover Windows). For anyone who wants a quick how to for setting up CVS on Windows, just look below. It's only the bare basics, with no consideration given to security or setting up a proper branch structure, but it will get you up and running. Also, if you hadn't considered it, you might want to also check out Subversion and Git for version control.

Setting Up CVS on Windows

  1. CVS is not really Windows software. It's used mostly on Linux and to a lesser extent Mac OS X. There are a few issues with running CVS on Windows. However, there is a site that markets CVS software for multiple platforms including Windows, and the basic server software is free. Download and install the CVSNT Windows Server software (which at it's heart still uses CVS).
  2. Run the basic CVSNT server utility that should now be in your start menu. You can't do much with it really, but you can at least set up your repository location. Sorry, I don't have a good step-by-step for this, but it's pretty easy to figure out.
  3. Not sure if the CVSNT install sets up the CVSROOT environment variable or not. You can type "echo %CVSROOT%" on the command line. If it doesn't show your repository location, then edit your environment variables and add CVSROOT as a new environment variable with a value equal to your repository path.
  4. Also, for ease of use, you might want to edit your PATH environment variable and add the path to the folder with cvs.exe in it. I think the default location is "C:\Program Files\CVSNT\". Double check to make sure.
  5. The remaining steps assume you have some existing code you wish to move into your new CVS installation. For these steps you will need to use the command line. From the command line, navigate to the folder that has the files you wish to import into CVS.
  6. Run command: cvs import -m "Imported Source" <repository-directory> <name> start
  7. When you set up Eclipse, it will want you to specify a module. So next, we set up a module for the imported code. Run command: cvs checkout CVSROOT/modules
  8. Edit the "modules" file in a text editor and add a new line as follows: <module-name> <repository-directory>
  9. From the same directory where you ran the checkout, check it back in with the following command: cvs commit -m "Added module" CVSROOT/modules
  10. From the same directory, run command: cvs release -d CVSROOT
  11. Set up a windows account to use for accessing CVS. If you are using XP, it will need to have admin privileges due to some glitch. Without admin privileges, you won't be able to check files in.
  12. If it's not done already, you should set up the machine to use a static IP address on your network. Write down the IP address for later. You'll need it when setting up Eclipse on other computers. From the command line, you can just run the following command to get your IP address: ipconfig
  13. I don't think you need to have a username and password for CVS itself; at least, not with this simple install. However, if you do want to add a user and password in CVS, you can use the following command (you should be prompted for password): cvs passwd -a <username>
  14. You should now be able to access your files in Eclipse from anywhere on your network. In Eclipse (and this is specifically for the Ganymede version), go to "File->New->Other...". You should see a folder with name CVS. Open it, select "Projects from CVS" and click "Next".
  15. The next page has a bunch of fields to fill in. for "Host", enter the IP address of your CVS server. In "Repository path", enter the path of the repository.
  16. For user and password, enter the username and password you set up.
  17. Assuming you didn't change it during the install of CVS, leave Connection type as "pserver" using the default port (which is 2401 by the way, something you will need to know if/when you decide to make your files available over the internet). Click "Next".
  18. On the next screen, enter the name of the module you set up and click "Next".
  19. The next 2 pages, the "Check Out As" pages, you can leave everything as it is and click "Next" on both.
  20. You should now be on the "Select Tag" page. If you didn't get fancy and set up proper branches (something I didn't cover here), just select "HEAD" and click "Finish". Your project should now appear in Eclipse if everything worked as planned.

(2/3/2009)
I've set up a stub page for information on the My Movies Java project. It's now called MyMo.

(1/27/2009)
I mentioned in my last update that I've been playing around with the HTML5 canvas functionality. Specifically, I've been writing a graphing engine. You can
see an example here.

1/24/2009

I've been playing around recently with drawing on web pages using the <canvas> tag. Some early adopters of the canvas tag functionality do not provide a way to draw text onto the canvas. Below is a method I wrote that can accomplish this task using absolutely positioned div elements. While I wrote it specifically for canvas, it should actually work on any HTML element, should you find a reason for it. It could use a little more refinement, but it works well enough as shown. So far tested to work on IE6 and Firefox 2+. (note: to use canvas in IE, look up "excanvas" on the web)

PointAlign.LEFT_OF_POINT = 1;
PointAlign.CENTER = 2;
PointAlign.RIGHT_OF_POINT = 3;
PointAlign.ABOVE_POINT = 4;
PointAlign.BELOW_POINT = 5;
function PointAlign() {
}
function drawText(canvasId,text,x,y,hAlign,vAlign,textStyle) {
	var canvas = document.getElementById(canvasId);
	x += canvas.offsetLeft;
	y += canvas.offsetTop;
	var canvasParent = canvas.offsetParent;
	var div = window.document.createElement("div");
	div.appendChild(window.document.createTextNode(text));
	var divStyle = "position:absolute; visibility: hidden; left:0px; top:0px;";
	if (textStyle) {
		divStyle += textStyle;
	}
	var isIE = /*@cc_on!@*/false;	//IE detector
	if (isIE) {
		div.style.setAttribute("cssText",divStyle);
	} else {
		div.setAttribute("style",divStyle);
	}
	// div must be placed before offsetWidth and offsetHeight attributes provide proper numbers
	canvasParent.appendChild(div);
	if (hAlign) {
		if (hAlign == PointAlign.CENTER) {
			x -= Math.round(div.offsetWidth / 2);
		} else if (hAlign == PointAlign.LEFT_OF_POINT) {
			x -= div.offsetWidth;
		}
	}
	if (vAlign) {
		if (vAlign == PointAlign.CENTER) {
			y -= Math.round(div.offsetHeight / 2);
		} else if (vAlign == PointAlign.ABOVE_POINT) {
			y -= div.offsetHeight;
		}
	}
	div.style.left = x + "px";
	div.style.top = y + "px";
	div.style.visibility = "visible";
}

(1/5/2009)
Happy New Year everyone! Been awhile since I updated anything here. I'm currently working on a new program to manage my movie rankings. It's not done yet, but a "beta" version of it is basically done. It is responsible for updating and building the My Movie Rankings page. The new page look is somewhat unfinished at the moment, but I went ahead and uploaded it anyway. In addition to adding about 40 new titles, the new page can now be sorted by clicking on the table column headings.

(4/25/2008)
The Bradford Pear trees are blooming, and once again I feel an overwhelming urge to buy a chainsaw. The ninja-stench of the Bradford Pear tree is insidious. For awhile you will smell nothing, and just when you think it's safe to breath again, it hits you like a ton of rotten fish. Why? Why plant these horrific trees? Sure, they are pretty. But do people really favor something that looks good rather than something that smells good? I don't know, but I myself would much rather have an ugly tree that smells good than a pretty tree that smells...well...like a Bradford Pear.

PS: The surveillance server is coming back soon! Stay tuned!

(4/17/2008)
I discovered something interesting about my D-Link router today. As I was examining it's operation, I discovered that the login page, after submission, was not returning a cookie with a session ID. Normally when logging into a web application, the website will set a cookie with a session ID. This ID is how the website knows you are logged in, and it is used to identify you as you move from page to page on the website. So how does the router know I am logged in? To my surprise, it apparently doesn't. After successful log-in, it redirects to a page that is not secured in any way. Meaning I don't have to log in at all. I can access any page on the router so long as I go directly to that page. I wonder how many other routers out there are like this? Next I need to try enabling the remote management and see if it suffers from the same lack of security when accessing it from the Internet.

(11/11/2007)
Added recipe for the best chili ever to my cookbook.

(10/6/2007)
Parts of this site is getting way out of date. I'm considering dropping this site in favor of scottandcari.net, the joint website for my wife and I. Our joint website is currently still dedicated only to our wedding, but it will be expanded and become our future home on the web in the months to come.

(8/29/2007)
Here's a little something goofy for everyone:

(7/3/2007) If you are looking for the Citrix ICA Client for 32-bit Windows, follow the provided link. Bookmark it too, as I won't be providing a link to it for much longer. The file you want is ICA32T.EXE, the minimum Citrix ICA client for web browsers. Thanks.

New Page! (1/27/2007)
Check out my new page on Alternative Fuel Vehicles. It only has information on electric vehicles at the moment, but I'll try to expand on it later. Cari and I will be keeping our eyes on both Tesla and Phoenix Motors. Maybe someday Ford or Chevy will offer something more than half-assed hybrid attempts.



Red Panda

I recently ran across this curious and cute little creature while browsing the web. It is a native of China, and is most commonly known as the Red Panda. However, it is also known as the Fire Fox. This immediately got me thinking about the best browser for the web, the Firefox browser. I've always thought the Firefox browser mascot was just a fox with a fiery tail, but maybe someone had the Red Panda in mind when the browser was given it's name.


It looks like weather.com is trying a new temperature scale out. Temperature is measured in some unit that is represented by an "F", which I think might stand for FUBAR.

weather.com screenshot

New Poem! (1/17/2007)
In Dreams, dedicated to Murphy.

New Link! (1/9/2007)
Check out University of Pittsburgh professor Bernard L. Cohen's publication on The Nuclear Energy Option. It's old, but a good read. At least read Chapter 14, which gives a good argument for how other alternative energy options are supplements, and not replacements for nuclear power.

Recently Updated! (11/25/2006)
My Gift Ideas is now up to date for Christmas 2006. May add another item or two in the next two weeks.

New Page! (10/26/2006)
I've added a page on Moral Dilemmas that I extracted from a book I read. It is not in the main drop-down menu as it's just a temporary page that I will take down after awhile. Read it while it's there -- it includes an excerpt of the book covering some rather interesting thought experiments.

Recently Updated! (9/6/2006)
Updated My Movies with the latest ratings. Since January, I have apparently watched 27 previously unranked movies, which takes me up from 290 titles to 317 titles. Also made some minor updates to the Cookbook (added new ingredient to queso recipe and made a few new recommendations here and there).

- End Updates -
All updates prior to 9/1/2006 have been purged.



Thank you for visiting!

Murphy and I

This site best viewed with:
Mozilla Firefox or Safari


Tesla banner


Get Firefox! Get Firefox and take back the web!


And here is a nice link for all the standard browser plugins.

Don't Use IE Internet Explorer may cause mental health problems in Programmers.


This web page is ... um ... mostly standards compliant. Valid HTML 4.0 Transitional





Earth

One Earth...

One Chance...

Our Home.

Help keep Earth clean and safe...

...a place we can be proud to call home.





Shadow and Sun

poem art

Sometimes we are the sun,
shining light on everyone;
keeping the world from an eternal night,
to bring us day this must be done.

Sometimes we are the shadow,
hiding from the light of day;
out of sight despite the suns glow,
only darkness leads the way.

Sometimes we are the man between,
sometimes hidden sometimes seen;
on one side shadow and on one side sun,
it is the nature of our being.

So when you turn and see your shadow,
and feel like running far away;
just turn again and see there's sometimes sun,
and light will brighten up your day.

-- Scott (~2/2004)




Gifts of Life and Love

I once had love, but it had a cost
Once was found, but now is lost.
The grandest gift, if one could choose
The grandest gift, that one can lose.

You and I, forever together
Simple dreams, nothing better.
But like a sunset, an end of day
You leave me cold, and drift away.

Thoughts of darkness that will never end
But time does pass and renew again.
A new day dawns and the sun does rise
Bringing forth again those beautiful skies.

despite the sadness, despite the loss
I find I'm stronger despite the cost.
hurt and strife, I rise above
for the gifts we know as life and love.

-- Scott (~11/2004)




I wrote this one in 15 minutes while tipsy. However, I don't think it accurately depicts my philosophy, so I'll elaborate a bit. My chief complaint with the war in Iraq is that the political and military leadership has not sufficiently communicated to the public why we are there, what steps we are taking, and why we believe it is the right thing to do. Details are key. Give us a web site, or news briefings, or something, where we can read about some of the good tasks we are performing in Iraq. Leaving the public both here and abroad somewhat in the dark breeds doubt and discontent, and endangers proper historical record. We need at least enough information to give us confidence, and I do not think we are getting it.

Dogs Are Barking

dogs are barking
from their house on capital hill
never taking action
barking and standing still

meanwhile our guns are ablaze
fire lights the night sky
for years months and days
how many will die?

do we bring them liberation
or might we have gone wrong
are we an empirial nation?
who would Jesus bomb?

allies turn their backs
debts burn faster than cinders
dogs in their packs
how will history remember?

-- Scott (5/27/2005)




Tonight I was thinking about my someone special, as I often do. I cannot think of a good way to express or share my feelings in a way that sufficiently explains how much I care about her and all she has added to my life. Nevertheless, I have tried to encapsulate these feelings into a short poem about the love that we share.

Our Love
Dedicated to Cari

a tribute to love
and to whom I adore
for the love we have
to share and explore

together in love
together we care
deep in our hearts
forever to share

a feeling of content
that will never die
a wonderful peace
that lives deep inside

-- Scott (7/30/2005)




This is a song I wrote, though I don't have any actual music to play with it. This is sort of a rough draft, and is still subject to edit. I will try to compose the music for it at a later date.

Time and Friends

-1st segment-

I saw you walking down the street
Kicking rocks, staring at your feet
head hung low, walking slow
A heavy weight upon your shoulder

I walk closer, I start to approach
But I stop, I don't want to encroach
What should I do? I feel for you
The day is getting colder

I decide to follow you to work
I can see your feeling hurt
I saw you cry, but don't know why
There must be someway I can help her

Working at the corner station
Selling gas to endless patrons
I walk in the store through the door
Your selling tickets at the counter

-chorus-

Keep living
I've been there too
Don't give in
There's more life ahead of you

Keep searching
There's nothing else to do
You'll make it
Time will see you through

-2nd segment-

I stand there feeling sort of foolish
I'm not sure how that I should do this
Grab a can of pop in hand
I slap it on the counter as something to buy

She slowly spins around in place
She seems relieved to see a friendly face
She looks at me and I can see
She's near breaking down - a tear is in her eye

I say what is someone so smart and pretty
doing working in this part of the city?
doing chores for this store
Working for them when they should be working for you?

You say my life is mostly stalled
Sometimes I think of ending it all
But you come by again, and I remember when
you said "with time and friends you'll make it through"

-2nd chorus-

Keep living
I've been there too
Don't give in
There's more life ahead of you

Keep searching
There's nothing else to do
You'll make it
Time will see you through

-last segment-

You have your stories
and some of them are bad
We all have our stories
but they won't all be sad

Don't give up on time
Time won't give up on you
Don't give up on friends
Time and friends will see you through

- ending chorus -

Keep living
I've been there too
Don't give in
There's more life ahead of you

Keep searching
There's nothing else to do
You'll make it
Time will see you through

Keep living
We've all been there
Don't give in
to hate and dispair

Keep searching
There's nothing else to do
You'll make it
Friends will care for you

-fade out-

Friends will care for you
Time will see you through

Friends like me and you
In time we'll make it through

-- Scott (8/23/2005)




The Game

Life's a game. You have to play it. Play it right, and you just might make it.
They'll tell you it's not, they'll tell you that a lot. But watch them close, they'll take their piece and play it.

For every ninja in game, you'll find a ninja in life. They'll try to take your job, or even steal your wife.
Play it wrong, and you'll be called a villian. Play it right, and you're a hero to millions.

It's all in how you play, and that's the scary thing. That the villain and hero might have done the same.
Villain behind bars while the hero lives large, and that makes the hero worse, but that's how you play the game.

The righteous man stops...to think about it. How can he win the game without being corrupted by it?
Villainous hero or heroic villian. What to do? So he plays to hold; neither win nor lose.

But maybe that's the real game, like it was all a secret. To neither win nor lose, just pick a spot and keep it.
Can drive a man insane, to try and think about it. Where if you win you lose, but if you hold you win it.

So hold the line; that's the battle plan. Don't reach the bottom or top, just be the middle man.
So if you're on the right, move into the middle. For the middle's right; just come left a little.

A game where if you win you lose, but if you hold you win it. But you have to play; you're already in it.
And once you're centered and righteous, then just stay the same. Can't really do any better in this crazy game.

-- Scott (3/16/2006)




In Dreams
Dedicated to Murphy

Nothing can begin without an end.
But no matter how much I will miss you now, I'd do it all again.
And maybe it's not as final as it seems.
Maybe I will see you in my dreams.

I cried as I layed you out to rest.
But if you're still out there somewhere, and can hear one last request...
It doesn't have to be as final as it seems.
Will you come visit me, come visit in my dreams?
If you're still there somehow and fate allows, come and be my guest.
It doesn't have to be as final as it seems.
Come visit me, come visit in my dreams.

-- Scott (1/17/2007)


Last Updated 5/28/2009 by Scott Arnold Valid HTML 4.0 Transitional