I think the words "infected me with his enthusiasm and his energy" most accurately describes Phil.
When Phil became a bartender, he found some old post I wrote from years and years ago that asked people from outside the US to send postcards. So he sent me several post
cards and a REALLY long letter telling me how excited he was to be part of JavaRanch. He emphatically invited my to Europe so he could take me to all sorts of fun places.
I'm having a really hard time accepting that this news is true. How can a guy bursting with life ....
Here is an e-mail that Phil sent me recently. I think it is an excellent demonstration of what Phil is like.
-----
Hi Paul,
Let me start with your last point first:
> 5) I think that whenever a JR staffer gets a passion for trying
> something, I should do everything in my power to facilitates
> the realization of that passion. I think this is a
> cool project and look forward to the results.
Thank you so much for that "green light".
When I see a film, I never hesitate to push on the "Stop" button when the
film is bad.
When I published J-LAF's first build, I pushed on the "Pause" button,
deciding not to
work on the project more till I'd receive:
- your approval (or disapproval)
- the first *technical* feedbacks,
finding wise to let others decide if the film is good enough to make me push
on the
"Play" button again, or bad enough on the contrary, to decide to simply push
on "Stop".
In the meantime, you know the health issue I'm now facing. I still don't
know when I'll
be operated (it can be next week as next month, I see my cardiologist once
more tomorrow).
OOH it handicaps me (I *must* rest, no other choice), but OTOH it gives me
some
free time (and my fingers running on the keyboard a few hours per day don't
make my
heart work that much

).
I didn't receive any technical feedback yet, but your personal
encouragements above are
more than enough to make me push on "Play" again and work a little on build
01 from tomorrow
morning.

Once more, *THANK YOU*!
> 1) AOP is very powerful and can do some amazing things. With
> AOP you can be sure that something is implemented correctly in
> every method. Performance issues are very interesting.
I have in my todo_list writing a small program whose only goal will be to
measure
the performance overhead due to interception. Not only it will interesting
to have
it just to publish some "Here is the cost" information, but it will help me
in the
optimizing phase of the development.
> 2) One of the great strengths of java is the simplicity of the
> language. Anybody that knows some java can generally figure out
> what is going on in a method or class. AOP violates that. A guy
> new to a project can spend weeks trying to figure something out
> only to discover the AOP part: "The debugger must be broken
> because it keeps talking about code that isn't there!"
You're right. Now honestly, a pure OO Java application can be tricky (and
badly written)
enough to lead to the same results. Another argument could be that if AOP
was
better known (and that's one of the project's goals), the guy new to the
project
would think of some AOP working behind the scene after a few ... minutes
instead
of weeks.
> 3) I think that most projects that have used AOP did it because
> AOP is cool, not because it was a best fit.
That's probable. Any new "fashioned" model or technology starts to be
overused. But a better education about AOP in Java should help in that area.
And better educating Java developers is our daily mission, right?
> 4) AOP can be a fit for a project if a developer has the
> discipline to thoroughly document how the project strays from
> standard java. Therefore helping teammates and
> future developers from spending weeks discovering AOP.
I totally agree with you about the documentation requirements, but not on
the
"how the project strays from standard java" part of your sentence.
Java is a programming *language* while AOP is a programming *model*
(complementary
to OOP) which can be implemented (for most of its features) in pure
*standard* Java.
Dynamic Proxies (that J-LAF uses for its interceptions) are in J2SE since
... 1.3.
Not only it's standard Java, but it's even not new. Just not known enough
IMO.
Paul, your message made my day. And as my days are not very pleasant these
days,
each day made is welcome.

(*)
Thanks again,
Phil.
(*) PS: I know my English is bad on average, but counting the number of days
in
that sentence (more than half a week

), I guess I beated my record with
that one...
