Help

I currently work professionally as a Java Web/Business Programmer, but my experience lies in everything from device driver software, to distributed programming, to API programming.

My participation in the OSS community includes several How-to's, a couple of which are accepted as the definitive How-to's in the OSS community, including the Java COMM API How-To for Linux and the Citrix ICA Client How-to.

For more information, check out http://www.agaveblue.org.

Location: Somewhere in Kansas
Occupation: Purveyor and peddler of all things Java (Java Architect)
Recent Entries
29. Jul 2008
User Interfaces....
16. Jul 2008
Someday Maybe... The future of HA?
26. Jun 2008
Home Automation to Me (Wade)
19. Jun 2008
What is a blog?
Tags
AgaveBlue News
08. Jul 2008, 05:09 CET
In this article, I discuss three common exception handling mistakes, why they are mistakes, and the  more...
23. Jun 2008, 18:29 CET
The Java Collections Framework was a wonderful addition to the langauge... but it's fundamentally  more...
23. Jun 2008, 01:39 CET
OpenRemote is an open source project to create the ultimate universal remote that can control  more...
17. Jun 2008, 21:39 CET
How SLASH makes parsing XML much easier.
17. Jun 2008, 13:06 CET
AgaveBlue is the new home of The Java X10 Project.

User Interfaces....
29. Jul 2008, 15:29 CET, by Wade Wassenberg

The topic of User Interfaces has come up, and while I'm prepared to yield to the expertise of the JBossians (as they call themselves), I think that this is one of the keys to our success here.

Because we are dealing with various hardware protocols and various devices, and potentially various display types, I think we need to come up with an approach that separates the presentation from the meta-language used to describe the presentation, from the OpenRemote controller server, to the various hardware interfaces.

So it might look something like this:

(Presentation Layer)
|
(? GUI Engine/Presentation Meta-Language ?)
|
(Communications Layer)
|
(OpenRemote Server/JVM)
|
(Various Hardware interfaces, C daemons, child JVMs)

Now my concern here is that I can't quite grasp whether or not the GUI Engine/Presentation Meta-Language layer needs to be split between widget definitions and control definitions. Logically it seems that a lightswitch widget is a lightswitch widget is a lightswitch widget regardless of what protocol it hooks into. So we need the Presentation Meta-Language to somehow map an instance of a lightswitch widget to an address:

<Lightswitch>
<UI_Label>Living Room A</UI_Label>
<OR_Address>LvRmA</OR_Address>
</Lightswitch>

And then we have a GUI engine that can render this XML into a GUI. Then when the user interacts with the widget, it sends whatever to the OpenRemote server, then on the OpenRemote Server, it's almost as if we need another mapping file:

<Device>
<Protocol>x10</Protocol>
<GUI_Address>LvRmA</GUI_Address>
<HW_Address>A5</HW_Address>
</Device>

Then, as Christian is wanting to do, we provide a GUI utility that can be used to generate the GUI metadata. But I think we also provide a utility to generate the device metatdata as well. Should this be all wrapped up in one utility, or should there be separate utilities? Or am I just plain off my rocker?

It seems if we create these layers of metadata, then this thing becomes a whole lot more extensible, and more agile to change as our breadth of devices expands.

Personally, I have no interest in purchasing an iPhone until the device and subscription prices come waaayy down, so for me, in place of an IPhone, maybe I use an iPod Touch, or some other hand-held device, so I need the GUI to be done in such a way that I can port it to whatever device I decide to use.

Likewise, even though I bring X10 stuff to the table here, I'm pretty down on the fact that the stuff hasn't made any strides to improve and become less buggy, and there haven't been any new killer devices released. So X10 has me disappointed, so I want this to be flexible to other hardware down the road.

Someday Maybe... The future of HA?
16. Jul 2008, 23:03 CET, by Wade Wassenberg

I know I've mentioned this a couple of times, but I want to make an entry dedicated to this idea I have...

Someday, I'd like all of my devices to have an IP address on my LAN:

Thermostat - I want to be able to ssh into my thermostat (or have a secure alternative) so that I can get statistics, find out the current settings, adjust the current settings, and find out the current temperature in the house.

Sprinklers - I want a Java-Enabled sprinkler system so I can write my own custom algorithm for using many different inputs (both locally, and some off the web) to determine my lawn watering needs.

Window Blinds - I want window blinds that I can program to open in the day and close at night so that my houseplants can get the light they need, without my neighbors being able to see me walk around my house in my underwear at night.

Music - I want single-source, multi-destination music control. I want to be able to make a playlist, and have a server play my music, and stream it to whichever room I'm in. And I want it to work the same for the rest of my family. If I go into a room and someone else is already listening to their playlist, then their playlist takes precedence until they leave the room, or until I enter a different space, or until they give the command to relinquish their playlist in favor of mine.

Door Locks - I want automatic door locks for my house... why have car's had automatic door locks for 30 years, but houses don't? What gives?

FridgeCam - I want a camera in my Fridge that takes a picture right before the light goes off when you close the door, and publishes that picture to the web (ok, so this one isn't probably very hard). But this way, I can check to see if I need to pick up some beer on the way home. :)

Lights - I want those auto-shutoff lights like they have in office buildings, only I want them to do a better job of determining if anyone is in the room (those pesky false positives).

TrashBot - I want a trash robot that wheels itself to the end of the curb on trash day, and wheels itself back after it figures out that the trash has been collected.

RabbitBot - I want a rabbit robot that catches rabbits, spays or neuters them, and releases them back to the wild. And if it catches the same rabbit twice, it conducts hostage negotiations to trade the captive rabbit for one of the other rabbits that have yet to be fixed.

Is this too much to ask?

Home Automation to Me (Wade)
26. Jun 2008, 03:27 CET, by Wade Wassenberg

What is home automation to me? To me, the perfect automated home must have the following characteristics:

A) It needs to be reliable.

My experience with current home automation devices show a pattern of unreliability. As I've stated several times in the past, the X10 stuff is horribly buggy. I get things that come on and shut off by themselves. In fact, this drove me to the point of disconnecting my X10 stuff just because I was tired of the lights coming on in the middle of the night while I was trying to sleep.

B) It needs to be affordable.

From what I've read, the good stuff (not the cheap-o x10 stuff) costs mulah. I'm not independently wealthy, so if it is cost prohibitive, then I don't own it.

C) It needs to be ubiquitous.

I'm pretty sure that this is one of the goals of openRemote, but it'll be interesting to see how mature we can make this. My dream automated home provides controls for lights, thermostat, locks (think car locks... why are automatic locks so prevalent in cars, but not houses?), garage doors, entertainment (stereo, tv, dvd, etc).

D) It needs to be extensible.

I can't think of everything, and I defy you to, as well. So when the next IPod comes out, or the next gotta have it gadget comes out, I want it to integrate seamlessly.

E) It needs to be standardized.

This goes along with the extensibility and ubiquity. Why is there a standard light socket in the U.S., and standard outlets, and everything else that ubiquitous, but not home automation? We need something that is standardized.

F) It needs to be asthetically seamless.

Some of the Home Automation stuff (including some X10 devices), are not seamless. I've got modules protruding from my sockets. Now granted, our current electrical fixtures aren't the most seamless things in the world... ever take the finishing plate off of an electrical outlet... pretty rough on the inside... but at least these things are somewhat integrated into our houses. From a Home Automation perspective, I want people to be able to come to my house and not know that my house is automated... From all appearances, it shouldn't be obvious.

And this is what a perfect Automated Home would be to me.

What is a blog?
19. Jun 2008, 21:34 CET, by Wade Wassenberg

In the words of the late Phil Hartman as Unfrozen Caveman Lawyer... What's a blog? This idea of a blog both frightens and confuses me... ok maybe he didn't say it, but if he were here now, he would!

Creative Commons License Content on this website is licensed under Creative Commons BY-NC-SA 3.0.