> Dayum, dude...

> And I thought *I* was long-winded... cooooooool!

> Someone who goes thru keyboards faster than I do! hehe

Heh. I dunno... I've had this little jobber here for several years. I
like it ... I actually got it at a little independant computer shop
around the corner from the place where I lived with my ex in Orlando,
primarily because it was so small. I was tired of (still am) seeing or
working with desk-swallowing behemoths with keys or buttons for
everything from email and irc to emptying my recycle bin. Although
Tiff occasionally takes all the keys off to clean it, which may help
with its lifespan. Though for a few months I thought it was broke
because (I realized accidentally) she interposed the alt and windows
keys on the left side, so I thought the left alt key was broke until I
turned the machine on one day and got an unexpected response from
ctrl+windows+del.

> I just happened to be skimming the code example and saw
> the isDefined thing. I saw it, and questioned it. Glad
> you weren't put out.

Nah, no reason to be.

> I'm all for annoying people, except people you respect.

Heh. I'll try and stay on your good side then. :)

> You definitely make some good points. Especially since I
> also find structKeyExists() painful and/or difficult to
> type. And I ALWAYS spell it strucktKeyExists the first
> time around, and it gives me many errors, and the errors
> say unto me "variable undefined" and yea do I say then,
> "farging iceholes, I done did it agin'..."

Did you see in the newspaper the other day that Marone declared
"Fargan' War"?

> I use full syntax in on-list examples because I fear that
> those who read it may inherit (or discover) bad habits in
> my code, and they may later accuse me of being silly, lazy,
> or, worse, utterly lacking in proper geek comportment.

I often describe actual code as pseudocode just because it's
incomplete, like if I put elipses in it with a description like
<div>...some stuff...</div>. I guess that's par for course for me -- I
often tend to think and/or speak in a very open-ended fashion...
sometimes. :) ENFP if Meyers/Briggs interests you at all. Though I've
gotten to a point where I'm sort of "picking my battles" with regard
to giving people advice on mailing lists -- or in general. It comes
from noticing over the years that although people are grateful for
advice which helps them solve a problem they've asked about, they
often ignore or are actively put off by unsolicited advice, even if on
my end it's given in good spirit. So if a guy says, "why doesn't this
piece of code work" these days I try and stick more to the subject of
why that code doesn't work than offering advice for general "good
habbits". Otherwise I just get frustrated when I offer advice left and
right only to see it ignored. There are exceptions -- I still rant
about people using arrays where I think they ought to use a structure.

> As far as the DB example, that's a return from a SQL
> Server built-in stored procedure, and it will ALWAYS
> return a minimum of 2 query objects... since my data
> access layer is wrapped in a CFC and it's a one-off
> call to a simple DAO to execute the sproc it seemed
> much more sensible to code one function-local struct
> and return the data to the caller than to write a
> complicated system (it's a base DAO and 3 extension
> classes as it is) wherein I have getters and setters
> for anywhere between 1 and 8 resultsets, possibly
> more than one sproc call (depending on which extension
> class I'm calling), and all the data (or, at least
> very most of the data) is always going to be needed.
> Since they're not long resultsets anyway, I elected
> to sacrifice a little bit of overhead on behalf of
> a simpler design.

Ahh, see in that context of it being a built in sproc it make a lot
more sense to me. :) Given your description I'm thinking you're using
SQL Server's features to perform some of the db meta-data management I
accomplish in the onTap framework with JDBC methods.

> Incidentally, since I was returning the data in a
> struct, I discovered that I had a situation wherein
> my tableDAO may return either 7 OR 8 resultsets,
> depending on the structure of the table. The issue
> that ensued is very difficult to explain
> understandably.... so bear with me. <snip>

> What I ended up doing was adding a private method
> that reconstructs the return value on the fly,
> looping over the struct generated by the sproc call
> and keying off unique column names in the datasets
> to reorder the struct. As I write this, I begin to
> think it's probably not the best way, but...
> it worked. And it proved to me that there is
> definite value in API-based coding.

> I hope that made sense.

I didn't find that hard to follow at all... Possibly because I'm
familiar with the need to perform similar "snafu-correction" myself.
The onTap framework was originally designed for CF5 and when MM
released MX some of the changes to the behavior of functions caused a
lot of the framework functions to break. Specifically the fact that,
while isArray(arguments) still returns true, it is in actuality false
and no other array functions will work on the arguments array. I was
accustomed to manipulating the arguments array like is possible in
JavaScript to create wrapper functions, particularly wrappers which
aren't interested in the number or type of arguments, but simply want
to pass the arguments on to another function. The problem is that in
order to accomplish this goal, you need to be able to manipulate the
arguments array -- remove arguments specific to the wrapper, etc. I
ended up creating yet another function just for the purpose of getting
an array from an argument collection... What a mess... but it's over
now. :)

And yea, API's, absolutely! :) They're the reason I finally have work
I feel comfortable handing over to an intern. Now I need an intern. :)
If you haven't already seen it, check out
http://www.fusiontap.com/demo/powerontap.htm -- this is the example
that shows the work I would hand over.


s. isaac dealey     954.522.6080
new epoch : isn't it time for a change?

add features without fixtures with
the onTap open source framework

http://macromedia.breezecentral.com/p49777853/
http://www.sys-con.com/story/?storyid=44477&DE=1
http://www.sys-con.com/story/?storyid=45569&DE=1
http://www.fusiontap.com


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:197575
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to