Tuesday, November 28, 2006

App.Config

I've been guilty of using the AppSettings tag in the app.config file to hold my custom settings. I haven't seen a single person that has used custom tags. I had read about them once, a long, long, long, time ago, but I never looked into them because it was just too easy to use the AppSettings tag. Last week I read a great post taking you step by step through the process of setting up a custom tag. This is great!!! I wish more posts were as concise.

Undelete Plus

For anyone who wants gone to actually mean gone you will want to read this post on Undelete Plus. This software scans the hard drive for deleted files that haven't been overwritten. Yikes!!! This is almost a must have for anyone quitting a job. You'll want to make sure that anything that you wanted gone is actually gone. It's also a must for anyone about to sell a computer.

Tuesday, November 21, 2006

Java Growing pains

I've been busy lately trying to pick up Java. I'm finally on a project at work where I get to use Java and it's been very painful. My first project is a Websphere portlet that I'm going to use Java Server Faces for. I've never done anything Java, which makes me completely overwhelmed. A co-worker is helping me get started by pointing me in the right direction with example projects to look at, and I've gotten what I think is a lot of the backend code written. Now I want to have some kind of test for it, so I was trying to use JUnit. That wasn't bad at all, my experience with NUnit and about 10 minutes reading on the web and I had it up and running.

However, I cannot get a simple date object to work, and that is what I want to write my first test against. I have read 20 examples online and they all are getting now, I want to be able to test against a specific time other than now. I'll just have to keep looking. Expect more posts as I learn how to do more things in Java.

Tuesday, November 14, 2006

ARG!!!

Or to borrow a quote from Dilbert "GAH!!"

I've been trying to get Rational Application Developer and Websphere Portal setup on my work computer now for over a week. Every day, all day, I just install and wait. This is the most painful installation process that I've ever been through.... Oh wait, I did try to setup a version of RedHat linux before that was more painful.

When are companies going to learn that the most pain in the ass introduction to their product is the installation. Even if the product itself is only so-so, at least it should have a super simple, error free installation process. Put the CD in, run it. There should be no other pains. I don't even like having to reboot in the middle, that's only an issue when the install is trying to touch shared functionality that is already installed. Why can't they just check for an existing version if it's new enough, then leave it alone.

I'm sure that using Java is not going to be nearly as bad as installing it. However, for just over a week, my computer has been practically crap. I haven't been able to do anything, because the install just kills it. This has got to be the most expensive install ever.

Thursday, November 09, 2006

Personal development

Isn't it amazing how a book can affect a person very differently depending on where he is in his own personal development? A person just starting out can read a book and think that it's total hogwash and crap, while somone several years into their career can read the same book and think it's a godsend. On the other hand, there are some books that are absolutely awesome, if they are the first one that you've read, but they aren't very good if you have read similar types of books.

Pretty much no matter what the first agile book I read was going to be awesome. It was introducing me into new ways of doing things that I was desperately ready for. But if I had been reading about agile in blogs and magazine articles for the previous year, then the first book would have just felt like a rehash of the ideas.

I notice this a lot when I read books. I'm always conscious of the fact that if I hadn't already read 10 other books on this topic, that this one would be really good. It's written well, I enjoy it, and the information is good. But I got part of it from book 1 and part of it from book 2 and most of the rest of it from book 3, but this one chapter was really interesting.

The other day I was discussing "The pragmatic programmer" with a friend and he was talking about how it completely changed his life, and I was a tad shocked. I'm reading it right now and there's only been one thing in it so far that I don't think I'm already doing. Then he told me, "Well, it was one of the first books of that kind that I read when I was just getting started programming". That made sense. A lot of books are that way. The book itself is timeless, but the timliness of it to the reader is very important. Jonas used to love for me to read him "Goodnight Moon", Then for a long time Ady wanted it everynight too. Now, neither of them want it, and I could probably recite it from memory, but before long, Jaden will love hearing goodnight moon. You get the point.

Here are a few books that I have read that I think are excellent, and really affected me, but it may have just been the timliness of reading them.
"Atlas Shrugged" - this is probably still by far my most favorite book. I've read the monstrous text 3 times. My favorite is probably still the 70 page chapter that John Galt takes over the radio. If you have read it, you know what I'm talking about.

"How to Win Friends and Influence People" Dale Carnegie wrote a masterpiece. I've read this twice in the past year, and I'm looking to try and go to some of his training on this topic. I've almost completely changed my attitude on several key areas in my life and they have not only made me more positive and happy, the changes have caused me less problems with others.

"Raving fans" This book made me want to do more customer service. For a time I seriously considered getting into some kind of sales role to be able to get the satisfaction that this book made me feel.

"Driving Growth through Innovation". This book is about idea generation and corporate creativity. Both of these topics are still very dear to me. A lot of the things that I do are done with creativity and idea generation in mind. I was so inspired when I read this book that I proposed an idea generation plan at my company and even volunteered to work on off hours to completely manage it. Yes I was probably crazy and wouldn't go that far anymore, but the desire to benefit from the awesome intelligence and creativity of all of the employees at a company still makes me giddy.

"Weaving the Web" a historical book about the origins of the internet by it's creator, Tim-Berner's Lee. I got a new perspective on what the internet could be and became a huge fan of blogs and wiki's which are Mr. Lee's original view of the internet.

"Keys to Success" by Napolean Hill. Dale Carnegie is the master of getting along with others, Napolean Hill is the master of self mastery. This book elevated my already strong dedication to continued learning.

"Getting things done". Ok, this one is a tentative entry. I'm only half through the book. I love it. I already feel better about my own organization and my stress level on a ton of things has drastically changed. On the flip side, I'm just starting to incorporate the process into my life and I don't know if it will stick long term. But I think that it will, mostly because I want it to and will dedicate myself to following through on it.

I could rant for days and days about the books that I've read that I hate, but I'll leave it with the ones that are most important to me.

True Geeks spin pens

That's right! True geeks can spin their pens and do all kinds of neat tricks with them, because we have notihing better to do. While others talk about relationships and watch daytime tv, we learn new things and practice our pen spinning.

If you are a beginning geek and you haven't mastered your own pen spinning yet, then I suggest checking out Pentrix. This is a site for geeks of all ages. Remember, you are what you do.

Wednesday, November 08, 2006

Posting Code

I've had some issues with posting my code samples. Blogger does not have a nice way for me to just copy my code into the post and have it show up nicely. Until I find something better I'm converting all of my source code to html and then pasting it into my post. This is not a simple process.. I have to copy my code into a converter, run the conversion, view the html code as source, copy it, and then paste it into my post. It would be nice if there were an easier way to do this. But for now, I'm using the longer conversion process. If you are interested, I use txt2html on the web to convert my code to html. It's a good free application.

Show and hide a div based on a dropdown list

I've been playing with some javascript. I've seen more and more web pages that show and hide pieces based on values in the page without reloading the page, so I wanted to see what it took. I searched and had to find answers at several different sites, so I thought I'd put my research into a single place. If nothing else, I can refer back to this later.

First, I placed the Javascript code to show and hide the DIV immediately after my BODY tag.

<script type="text/javascript">

<!--

function showmessage(id, id2) {

        if(document.getElementById(id2).value == 'MAC')
show_div(id);
else
hide_div(id);

}

function hide_div(id) {

        var e = document.getElementById(id);
e.style.display = 'none';

}

function show_div(id) {

        var e = document.getElementById(id);
e.style.display = 'block';

}

//-->

</script>



Then in my code where I want the message to go, I have a DIV tag.
<div id="sometimes" style="display:none;"><br>You really should select something else.</div>

I have the default set to hidden, because I only want it to show when a value is selected.

Finally, in order to show an hide it, there has to be a change that causes it. I have a select value determining whether or not the message is shown, but the examples I saw all showed it from an Anchor tag. Anytime a form event could fire though, the function could be called to show or hide the div.

<select ID="FavoritComputer" NAME="FavoritComputer" onChange="showmessage('sometimes', 'FavoritComputer');">

Tuesday, November 07, 2006

Synthetic Photosynthesis?

Scientists have discovered the structure of the catalyst for photosynthesis.

This is awesome. Photosynthesis is a very efficient way to split water and could be used to make Hyrogen cheaply. This is awesome. Making hydrogen cheaply is one of the biggest problems with going to a Hydrogen economy. Even if Hydrogen is healthier for the atmosphere and more efficient, it's very cost prohibitive at the moment.

Personally I'm a proponent of using renewable clean energy sources such as wind, solar, wave, and hydroelectic methods to generate the hydrogen to at least make it cleanly. However, all of these are fairly inefficient methods of generating electricity. There have been some great strides in both solar and wind efficiency over the past 2 or 3 years. Wave and Tidal energy are just in their infancy and nobody is benefiting from these at all right now, over the next 10 years while these kinds of energy plants roll onto the grid we'll at least get a little boost in clean energy. I haven't read anything about any kinds of improvements in hydroelectic plants to make them more efficient. We already have a lot of these, if they could be refitted with new hardware inside the plants that are more efficient, that would be another big benefit.