Re: [jug-discussion] September 8 meeting -- Taking the Plunge with IntelliJ

2009-08-31 Thread Chad Woolley
William started it!  Gmail made it worse by threading it in.

I'd say go ahead and turn off this list (with an autoresponder rejection
email pointing to the new one if you can), people are gonna keep posting to
it by accident...

On Mon, Aug 31, 2009 at 10:42 AM, Warner Onstine  wrote:

> this list is no longer in use. please use tucson-...@googlegroups.com
>
> On Mon, Aug 31, 2009 at 10:27 AM, nlesiecki wrote:
> > Wow, sorry I can't be there. VMS and EBlox luminaries in the same room.
> :)
> >
> > Nick
> > On Aug 30, 2009, at 5:30 PM, William H. Mitchell wrote:
> >
> >> A regular activity at No Fluff Just Stuff symposiums is a show of hands
> >> poll for who's using what tools and technologies.  When the topic turns
> to
> >> IDEs, and the moderator asks, "IntelliJ?", most of the symposium
> speakers
> >> raise their hands, along with a few in the audience.  Then on "Eclipse?"
> >> just about everybody in the audience raises their hand.  Then somebody
> >> shouts, "Who'd pay for Eclipse?", and just about every hand goes down!
> >>
> >> Some liken the Eclipse vs. IntelliJ question to frontier vs. walled
> >> garden.  Things are very nice inside the garden but sometimes you find
> >> yourself peeking over the wall at interesting new things that the
> gardener
> >> hasn't had time for yet.  Others liken choosing a tool just because it's
> >> free to being in an arranged marriage.  Or maybe the proposition is
> >> benevolent dictatorship vs. anarchy.
> >>
> >> Andy Barton has spent a lot of time on the J2EE frontier but recently
> >> decided to experience life in the IntelliJ garden.  In this talk, Andy
> will
> >> demonstrate moving an Eclipse project to IntelliJ Idea and will discuss
> the
> >> productivity benefits IntelliJ offers over Eclipse.
> >>
> >> About the speaker:
> >> Andrew Barton is the technical director of eBlox, Inc.  He has been
> >> developing web application solutions in Java for more than 10 years.
> >>
> >> When and Where:
> >>
> >> Tuesday, September 8, at the offices of Video Monitoring Services (VMS),
> >> 5151 E. Broadway Blvd Suite 450, Tucson, AZ.  (Be sure to sign in at the
> >> desk on the first floor.)
> >>
> >> Meet and greet at 6:30; the presentation starts at 7:00pm.  Drinks of
> all
> >> sorts at On the Border (5205 E. Broadway) at 8:45 or so.
> >>
> >> -
> >> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> >> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
> >>
> >
> >
> > -
> > To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> > For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
> >
> >
>
> -
> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
>
>


Re: [jug-discussion] September 8 meeting -- Taking the Plunge with IntelliJ

2009-08-31 Thread Chad Woolley
Here's a post I wrote recently comparing IntelliJ and Eclipse (RadRails) for
Ruby development:

http://pivotallabs.com/users/chad/blog/articles/933-the-great-ruby-ide-smackdown-of-09

On Mon, Aug 31, 2009 at 10:27 AM, nlesiecki  wrote:

> Wow, sorry I can't be there. VMS and EBlox luminaries in the same room. :)
>
> Nick
>
> On Aug 30, 2009, at 5:30 PM, William H. Mitchell wrote:
>
>  A regular activity at No Fluff Just Stuff symposiums is a show of hands
>> poll for who's using what tools and technologies.  When the topic turns to
>> IDEs, and the moderator asks, "IntelliJ?", most of the symposium speakers
>> raise their hands, along with a few in the audience.  Then on "Eclipse?"
>> just about everybody in the audience raises their hand.  Then somebody
>> shouts, "Who'd pay for Eclipse?", and just about every hand goes down!
>>
>> Some liken the Eclipse vs. IntelliJ question to frontier vs. walled
>> garden.  Things are very nice inside the garden but sometimes you find
>> yourself peeking over the wall at interesting new things that the gardener
>> hasn't had time for yet.  Others liken choosing a tool just because it's
>> free to being in an arranged marriage.  Or maybe the proposition is
>> benevolent dictatorship vs. anarchy.
>>
>> Andy Barton has spent a lot of time on the J2EE frontier but recently
>> decided to experience life in the IntelliJ garden.  In this talk, Andy will
>> demonstrate moving an Eclipse project to IntelliJ Idea and will discuss the
>> productivity benefits IntelliJ offers over Eclipse.
>>
>> About the speaker:
>> Andrew Barton is the technical director of eBlox, Inc.  He has been
>> developing web application solutions in Java for more than 10 years.
>>
>> When and Where:
>>
>> Tuesday, September 8, at the offices of Video Monitoring Services (VMS),
>> 5151 E. Broadway Blvd Suite 450, Tucson, AZ.  (Be sure to sign in at the
>> desk on the first floor.)
>>
>> Meet and greet at 6:30; the presentation starts at 7:00pm.  Drinks of all
>> sorts at On the Border (5205 E. Broadway) at 8:45 or so.
>>
>> -
>> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
>> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
>>
>>
>
> -
> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
>
>


Re: [jug-discussion] friendly reminder

2009-08-08 Thread Chad Woolley
On Sat, Aug 8, 2009 at 3:22 PM, Warner Onstine wrote:
> I'm pulling the plug on the site (and this list) in a little over a
> week, please sign up over at
> http://groups.google.com/group/tucson-jug. Please join (if you want to
> keep up with all the goings on and meetings here in town).


Can we set up an autoresponder or something which contains a reference
to the new list?  Doesn't google groups or google sites let you set up
address/domain aliases?

-- Chad

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



[jug-discussion] Ruby vs. Groovy

2009-06-08 Thread Chad Woolley
An objective comparison of Ruby vs. Groovy:

http://yehudakatz.com/2009/06/04/the-importance-of-executable-class-bodies/

Comments are welcome from Groovy aficionados on the list - if they are
good, you should post them directly on Yehuda's blog :)

-- Chad

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] 502 status

2009-06-02 Thread Chad Woolley
On Tue, Jun 2, 2009 at 11:12 AM, Andrew Lenards wrote:
>> In other news I want to move the JUG site from Confluence. We have two
>> options:
>> 1) I can create a quick and dirty WordPress site for it on my new box
>> 2) We can just bite the bullet and move it to a Google Group and add
>> pages there with a redirect from tucson-jug.org to there
>
> Whichever is easier - personally.  I think that would mean #2

Yep, Google Groups aren't perfect but they are pretty close to zero
maintenance and provide list/forum/web space/file uploads.  I
run/admin several groups.  Usually it is fine to just trust anyone who
is known/interested/responsible help with admin/maintenence.  Spammers
show up eventually, then you just turn on moderate first post, other
than that pretty much no hassles for the mailing list.

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Hudson?

2009-05-20 Thread Chad Woolley
On Wed, May 20, 2009 at 6:14 PM, Chad Woolley  wrote:
> On Wed, May 20, 2009 at 5:41 PM, Todd Ellermann  wrote:
>> Contact me off list if you want a linux service start/stop script for hudson.
>
> Yep, that's a must in my book for any real CI tool.  Here's the one we
> wrote for CCRB:
>
> http://github.com/thoughtworks/cruisecontrol.rb/tree/master/daemon

Hey, out of curiosity, how does hudson and/or your init script handle
killing all the builder's child and descendent processes (e.g. from
servers that were spawned by the build, such as an app instance and
servers for integration testing via selenium and jsunit, or
solr/lucene, etc...)?  As you can see from my link above, it was a
pain for me, I had to do a lot of shelling out and hacking to find the
process group and make sure everything was killed.

And the real test - how does it handle killing process trees on
windows as well as posix?

I just saw that Shucker said this is a also pain on continuum.  CCRB
doesn't even handle this natively, but the stop param to my init
script does, so that's what I use to kill everything...

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Hudson?

2009-05-20 Thread Chad Woolley
On Wed, May 20, 2009 at 5:41 PM, Todd Ellermann  wrote:
> Contact me off list if you want a linux service start/stop script for hudson.

Yep, that's a must in my book for any real CI tool.  Here's the one we
wrote for CCRB:

http://github.com/thoughtworks/cruisecontrol.rb/tree/master/daemon

> We haven't gotten to the point where we need to distibute builds across a 
> farm of build servers but that also seems amazing straight forward to setup.

Yeah, that's one feature of hudson that seems really sweet.

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Hudson?

2009-05-20 Thread Chad Woolley
On Wed, May 20, 2009 at 4:31 PM, Todd Ellermann  wrote:
> After spending a week fighting with cruisecontrol I switched to hudson and
> haven't looked back.

Just to be clear, you mean CruiseControl JAVA, not CruiseControl.rb
(in ruby), correct?

If so, I agree with you, CC java sucks big ones...

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Hudson?

2009-05-20 Thread Chad Woolley
On Wed, May 20, 2009 at 3:57 PM, Andrew Lenards
 wrote:
> Is anyone using Hudson (it's an extensible continuous integration engine)?
> Has anyone played with it?

I've heard people like it, but I personally prefer something more
lightweight and easily hackable, and in my preferred language - so I
use CruiseControl.rb.

However, Hudson is mature, open source and has a lot of plugin
support, so it is probably a good choice, especially for a java shop.

I'll also use this opportunity to prompte my project which lets you
easily set up a new CI box (using ccrb, of course) by running only two
simple scripts:

http://github.com/thewoolleyman/cinabox

I even made a screencast :)

http://s3.amazonaws.com/assets.pivotallabs.com/99/original/cinabox_screencast.mov

-- Chad

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



[jug-discussion] A Brief, Incomplete, and Mostly Wrong History of Programming Languages

2009-05-08 Thread Chad Woolley
This is really funny:

http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html

-- Chad

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] If you started a web project on the JVM today...

2009-05-02 Thread Chad Woolley
On Fri, May 1, 2009 at 12:37 PM, Richard Hightower
 wrote:
> This is very nascent and I have not deployed an real world app yet. But if I
> was working on a green field app. This would be something I would consider.

Well, if we're opening it up to "stuff I haven't used yet":

Ruby on Google App Engine

http://blog.bigcurl.de/2009/04/running-sinatra-apps-on-google.html

-- Chad

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] next month - preso on what's new in groovy 1.6?

2009-03-05 Thread Chad Woolley
I might be able to make this one.  I'll have to get my JRuby heckling ready...

On Thu, Mar 5, 2009 at 5:34 PM, William H. Mitchell
 wrote:
> Sounds great!  Count me in.
>
>
> -
> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
>
>

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Next meeting, Feb 10

2009-02-10 Thread Chad Woolley
http://www.dbunit.org/

"DbUnit is a JUnit extension (also usable with Ant) targeted at
database-driven projects that, among other things, puts your database
into a known state between test runs. This is an excellent way to
avoid the myriad of problems that can occur when one test case
corrupts the database and causes subsequent tests to fail or
exacerbate the damage."

This sounds very similar to Rails fixtures (part of ActiveRecord).
Before every test, it truncates all the tables and uses YAML files to
load specific scenarios into the database.  Usually you leverage
transactions so that everything runs in a single transaction, and you
just roll back the transaction to place the DB back in the original
(empty) state and ready for the next test.

Many people use Ruby to test apps written in other languages - I
wonder if this would be another useful situation for this - use
Ruby/Rspec/Fixtures to drive high-level functional tests of
stored-procedure logic.

Also, Fixtures (which is the general pattern used by dbunit - specify
scenario data in XML/YAML) have gotten a bad reputation in the Rails
community - because they are a huge pain in the ass to maintain over
time as your schema changes.  Many people prefer to go with an
Object-Mother pattern, where you define a domain-specific Object
Mother which has a simple Domain Specific Language to easily create
test objects/data and load them into the database (again, DSL's like
this are very clean and easy to write in Ruby by leveraging
blocks/lambdas).  E.g.:

include ObjectMother
create_widget(:name => 'foo) do
  create_subwidget(:size => 10) do
create_subsubwidget  # no block, uses default values
  end
end
# now these records and data (including default values for
non-specified fields) exist in your database in tables widget,
subwidget, and subsubwidget

Way prettier and more maintainable than XML or even YAML

Also, keep in mind we also leverage ActiveRecord migrations, so we
never have to manually manage the DDL/schema - just run "rake
db:migrate" and all pending schema changes are automatically applied -
and can be rolled back to any specified version as well (although this
obviously takes much more care and attention for destructive
rollbacks).

Also, there are Oracle adapters for ActiveRecord...

Finally, sorry I can't make this preso, I've got other commitments :(
Good luck Rene...

-- Chad

On Mon, Feb 9, 2009 at 10:14 AM, TR  wrote:
> All
>
> Rene will be presenting on using dbUnit testing with stored procedures.  The
> presentation goes through several examples and an interactive exercise.
>
>
>

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Unsolicited - Re: help me

2009-01-28 Thread Chad Woolley
Yes.  You know what happens if you don't keep your Chias DRY:

http://commons.wikimedia.org/wiki/File:Chia_pet.jpg

On Wed, Jan 28, 2009 at 6:11 PM, Kit Plummer  wrote:
> Apply DRY principles first.
>
> On Jan 28, 2009, at 4:46 PM, Christopher Sharp wrote:
>
>> Out of the blue and completely unsolicited from a person I have never
>> heard of before, I received the following request below.
>>
>> I don't at the moment have the time to answer, but if anybody else has, I
>> would be grateful to know.
>>
>> Christopher
>>
>> -Original Message-
>> From: chinh nguyen 
>> To: cmshar...@aol.com
>> Sent: Tue, 27 Jan 2009 6:33 pm
>> Subject: help me
>>
>> i'm doing my work about "find X element in N random element"
>> i have the code.
>> private void chia1()
>>{
>>Random rand = new Random();
>>for (i = 0; i < cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox1.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia2()
>>{
>>Random rand = new Random();
>>for (i = cl.n / 100; i < 20 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox3.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia3()
>>{
>>Random rand = new Random();
>>for (i = 20 * cl.n / 100; i < 30 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox5.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia4()
>>{
>>Random rand = new Random();
>>for (i = 30 * cl.n / 100; i < 40 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox6.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia5()
>>{
>>Random rand = new Random();
>>for (i = 40 * cl.n / 100; i < 50 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox7.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia6()
>>{
>>Random rand = new Random();
>>for (i = 50 * cl.n / 100; i < 60 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox8.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia7()
>>{
>>Random rand = new Random();
>>for (i = 60 * cl.n / 100; i < 70 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox9.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia8()
>>{
>>Random rand = new Random();
>>for (i = 70 * cl.n / 100; i < 80 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox10.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia9()
>>{
>>Random rand = new Random();
>>for (i = 80 * cl.n / 100; i < 90 * cl.n / 100; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox11.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>private void chia10()
>>{
>>Random rand = new Random();
>>for (i = 90 * cl.n / 100; i < cl.n; i++)
>>{
>>m[i] = rand.Next(99);
>>textBox12.Text += "" + m[i].ToString();
>>cl.m1[i] = m[i];
>>}
>>}
>>
>> can you help me optimize it.
>> thanks.
>>
>> A Good Credit Score is 700 or Above. See yours in just 2 easy steps!
>
>
> -
> To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
> For additional commands, e-mail: jug-discussion-h...@tucson-jug.org
>
>

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Meeting tonight, Command line tools Programmers should know.

2009-01-13 Thread Chad Woolley
I'm in SF this week, but if you have any materials I'd love to see
them posted.  This sounds like a great presentation.

On Tue, Jan 13, 2009 at 7:45 AM, TR  wrote:
> All
>
> See you tonight!
>
> TR
>

-
To unsubscribe, e-mail: jug-discussion-unsubscr...@tucson-jug.org
For additional commands, e-mail: jug-discussion-h...@tucson-jug.org



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-10 Thread Chad Woolley
On Wed, Dec 10, 2008 at 12:12 PM, Kit Plummer <[EMAIL PROTECTED]> wrote:
> Like the sheep we are!

No, the goats.  And I'm the troll under the bridge.  And you, Kit,
were rather gruff.

Ba-da-bum!  Thanks, I'll be here all week...

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-10 Thread Chad Woolley
On Wed, Dec 10, 2008 at 11:18 AM, Richard Hightower
<[EMAIL PROTECTED]> wrote:
> Just not such a big fan of the Java is dead stuff.

Yes, but that part was essential to my goal of getting an interesting
thread going on this mailing list ;)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JRuby vs. Groovy (was: Any News on the Holiday Party?)

2008-12-10 Thread Chad Woolley
On Wed, Dec 10, 2008 at 10:51 AM, Hollamon, Andrew
<[EMAIL PROTECTED]> wrote:
> This attitude worries me when I see it amongst professional developers.
>
> Not depending on the internal implementation details of something is such a 
> fundamental OO and CS tenant, that I cant believe people just accept it as 
> okay.
>
> You should _never_ write code that depends on the deep dark details of that 
> particular version's implementation if at all possible to avoid it.  That's 
> just bad.
>
> It results in tightly coupled code that will break with minor version 
> upgrades or bug fixes in the platform.
>
> A language/framework should publish a contract (whether that be interfaces, 
> documentation, or whatever) that users can adhere to, without having to worry 
> about how its implemented, which could change from minor version to minor 
> version.

True, but software development is still a (very imprecise) art.  The
'right' way to do things doesn't exist, and probably never will.
Hacking and bending something to your will is fine - if it's 90% of
the way there, and you can make it 100%, go for it.  If your language
of choice makes that easy and natural, all the better.

You can extend a library to make it do something you want without
violating encapsulation at all.  In Rails, we usually do this by
having a "foo_extensions.rb" under the lib folder, or perhaps a folder
with multiple files.

Or, if you are really disciplined and cool, you can fork the gem,
patch it, automatically generate a gem, and use your forked version
until your patches are rolled back in to the main release.  Github
makes this really easy, it's really a paradigm shift compared to the
releative difficulty to fork, hack, package, release, and deploy Jars.
 Maven helps some, but it is not standardized like the RubyGems spec,
and requires a lot more investment (all github needs to autobuild and
publich a gem is a single valid gemspec file).

Having said that, I totally agree that fundamental OO principles
should not be violated in the pursuit of that goal.  See my comments
on Nick's dependency injection thread.  I think Rubyists result to
monkey patching far too often, and often structure their code in ways
that are not amenable extension through good OO practices.

Merb is a good example of folks who are getting this right.  After a
false start, they are now VERY explicit about what is a public API,
and what is a private API, and have strict deprecation procedures,
versioning rules, etc.

I'd say Rails is an example of the first implementation breaking
really good ground in a bold way, but not getting it quite right ;)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-10 Thread Chad Woolley
On Wed, Dec 10, 2008 at 10:47 AM, Kit Plummer <[EMAIL PROTECTED]> wrote:
> It has been my overwhelming experience that software
> engineers are very bad (for whatever reasons) at recognizing the hammer they
> are holding isn't the right one.

I'd rather have a Golden Hammer than a Golden Salami...

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Feast at what time?

2008-12-10 Thread Chad Woolley
On Wed, Dec 10, 2008 at 8:53 AM,  <[EMAIL PROTECTED]> wrote:
> So what time do we meet at Feast on Tuesday?

Unfortunately, I'll miss this.  I'll be in San Francisco, writing Ruby ;)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-10 Thread Chad Woolley
On Tue, Dec 9, 2008 at 10:45 PM, Richard Hightower
<[EMAIL PROTECTED]> wrote:
> JRuby is cool. If I were going to use Ruby, it would most likely be Jruby.

You've [still] conveniently ignored my point about JRuby being able to
take advantage of both the Java and Ruby ecosystems [as opposed to
Groovy].

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-10 Thread Chad Woolley
On Tue, Dec 9, 2008 at 11:22 PM, Richard Hightower
<[EMAIL PROTECTED]> wrote:
> Ha. I am no troll. This is a Java list after all. I am quite un-trollish in
> saying that Java is not dead on a Java list and using evidence to support my
> assertion of the un-deadness of Java.

Even though the list and group is still a "JUG", there have been (at
least a couple I remember) of in-person meetings where people have
(unofficially?) agreed that non-Java stuff was fair game.

Plus, JRuby, as a Sun-developed dynamic language for the Java Virtual
Machine, is very on topic for a Java group.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JRuby vs. Groovy (was: Any News on the Holiday Party?)

2008-12-10 Thread Chad Woolley
On Tue, Dec 9, 2008 at 10:45 PM, Hollamon, Andrew
<[EMAIL PROTECTED]> wrote:
> Documentation is freaking terrible.  Most of the good documentation is in 
> video clips, which just makes me sad.

True, but depends what you mean by "good".  The Rails rdoc is ok, and
there's several other sites, or you can just google the method name
(often what I do).

But, as Kit said, this isn't usually a big deal.  A lot of the more
well-written stuff is intuitive, simple, and follows the principle of
least surprise.  Also, Ruby tends to be so clean that you can often
see what is going on just by digging a short way into the library.
Agreed, for many people (Java developers) would be aghast at (code is
the documentation), and consider it a drawback of Ruby, but I think
that is one of the differences in the cultures.  In dynamic languages
(won't even exclude Groovy), it's so easy to reopen classes and hack
what you want, you spend a lot more time digging in, understanding,
changing, and extending the libraries you use.

>
> Tools are freaking terrible.
>

Agreed.  But, as Kit said, this is getting better.  IntelliJ is what
my shop uses primarily (and now RubyMine).  It it getting some decent
support.  Personally, I have been getting more and more attached to
lightweight but powerful editors like TextMate, without all the chrome
and startup time of a full-blown IDE - especially for open source
hacking where I may work on 3 different projects in an hour on a plane
or before I take my son somewhere.  Losing 3 minutes having to
configure each project for the IDE is just a pain.

> Deployment can be downright painful until you get used to the 6000 little 
> quirks of the platform.

True.  This is painful, and twiddling mongrels and monit scripts makes
me feel like I'm in the dark ages.  That's why I think Jruby's ability
to leverage all the java deployment infrastructure and scalability
tools is a big plus.

> All that being said  its amazingly fast (to develop in) and productive.  
> The code tends to be quite compact and beautiful.

Yes.  That is why it makes people happy :)

> I do miss my interfaces, documentation, and tools from the Java world though. 
>  Oh to be able to do an F3 or CTRL-T in my Rails code and just follow the 
> references.

Check out IntelliJ Idea/RubyMine.  They are making some decent
progress on this - as well as kickass support for Javascript and other
stuff.  Idea is a nice IDE, if you want to use an IDE.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Java is dead... Here we go again....

2008-12-09 Thread Chad Woolley
On Tue, Dec 9, 2008 at 8:29 PM, Richard Hightower
<[EMAIL PROTECTED]> wrote:
> For now I will stick to Java and Groovy with glee in my heart that I can get
> paid for something that I love to do.

Damn, didn't mean for the trollfest to turn ugly.  But it's fun to watch.

Anyway, Rick, a few points:

1. I get paid to write Ruby, and I enjoy it more than I ever enjoyed
writing Java.  But, as Kit said, I also work with a lot of really
cool, REALLY smart people.  I worked with some really cool smart
people when I was doing Java, but just a few of them, not a LOT of
them.  Smartness was the exception rather than the rule in standard
java developers, in my experience.  In Ruby it seems to be the
opposite.  I'm a biased troll, though...

2. I could care less what most developers in the world write (mostly
outsourced/offshore/corporate maintenance drones I bet, but I can't
back this up...).  This is the nature of the adoption curve.

3. You've conveniently ignored my point about JRuby being able to take
advantage of both the Java and Ruby ecosystems.  Ruby has tons of
sweet, cutting-edge, actively maintained, frequently-released,
supremely hackable open source tools, libraries, and frameworks, which
is facilitated by things like RubyGems and widespread GitHub adoption.
 When those don't work for you for some reason, JRuby lets you plug in
any proven, performant, scalable Java library.  As I said, language
preference and market share aside, don't you agree this is a
compelling advantage of JRuby?

Remember, I love you all.  I just love to troll too :)

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Since Chad Mentioned Guice

2008-12-09 Thread Chad Woolley
There was a talk by Jamis Buck (a big java DI guy) at RubyConf where
he claimed DI was unnecessary in Ruby or other dynamic languages.

That's me heckling him at the end.  Essence of my comments:  I agree
that DI *frameworks* are unnecessary, but I still think the Registry
pattern is a good way to architect any application.  It drives loose
coupling and high cohesion - which is a good thing, especially for
developers who don't know what those are or why they are good.  I
think many Rubyists overuse mixins and underuse basic OO, which leads
to more complex and more confusing code in general, and more
monkeypatching and brittleness than necessary.  A bunch of small dead
simple objects is easier to understand, debug, extend, and fix.

-- Chad

On Tue, Dec 9, 2008 at 2:32 PM, nlesiecki <[EMAIL PROTECTED]> wrote:
> (Or did he?)
>
> My article on Google's Guice, the latest, greatest* DI framework:
>
> http://www.ibm.com/developerworks/library/j-guice.html
>
> (* your view may vary.)
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JRuby vs. Groovy (was: Any News on the Holiday Party?)

2008-12-09 Thread Chad Woolley
It was mentioned in the previous thread that this is not a web app.

As for JRuby vs. pure Ruby.  However, this is the JUG list, and the
question on JRuby performance was my chance to be a troll with a
point, especially since there's been Groovy vs. Ruby debates on here
before ;)

Depending on the target deployment environment (windows?  lots of
users?  Intranet?) JRuby might still be a better choice, since the JVM
is ubiquitous (and native Ruby on Windows still sucks).

-- Chad

PS: Don't forget the JOrganic JJelly with a side of JJuice...

On Tue, Dec 9, 2008 at 1:59 PM, nlesiecki <[EMAIL PROTECTED]> wrote:
> If I was from-scratching a website, I'd definitely look at JRuby on JRails.
> With JPeanut sauce on my JTofu.
>
> Nick
>
> On Dec 9, 2008, at 12:04 PM, Chad Woolley wrote:
>
>> Here's the latest performance numbers on JRuby:
>>
>>
>> http://antoniocangiano.com/2008/12/09/the-great-ruby-shootout-december-2008/
>>
>> Summary - JRuby is doing very well; came in second after Ruby 1.9; and
>> compatibility is good and getting better all the time.
>>
>> Ok, troll time:
>>
>> My opinion - definitely try JRuby over Groovy.  You get all the
>> benefits of the Java ecosystem: native calls to java libraries, JVM
>> execution, JIT compilation, packaging, war/ear-based deployment, etc,
>> etc.  Most importantly, however, you get a language that was designed
>> to "make people happy".  Most Rubyists - especially those with
>> experience in other languages - agree it achieves this goal well.
>>
>> As for Groovy, I still say it is an attempt to make a static language
>> (Java) appear dynamic.  They've done a decent job, but when you really
>> compare it to using native Ruby, the warts and sharp edges poke
>> through.
>>
>> The only argument I see in favor of Groovy is integration with the
>> Java ecosystem, which JRuby effectively negates.  Conversely, all
>> language or syntax preference or prejudice aside, the Ruby ecosystem
>> is also very rich (rubygems and github), and you cannot take advantage
>> of this with Groovy.  Why not be able to choose from the best of both
>> worlds?
>>
>> Java is dead, long live the JVM.  JRuby FTW in the enterprise.
>>
>> -- Chad
>>
>> On Mon, Dec 8, 2008 at 3:45 PM, Todd Ellermann <[EMAIL PROTECTED]> wrote:
>>>
>>> One more side note.  JRuby runs on the JVM as well, and for a while was
>>> out
>>> performing the native Ruby interpreters. Not sure if that is still true.
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] JRuby vs. Groovy (was: Any News on the Holiday Party?)

2008-12-09 Thread Chad Woolley
Here's the latest performance numbers on JRuby:

http://antoniocangiano.com/2008/12/09/the-great-ruby-shootout-december-2008/

Summary - JRuby is doing very well; came in second after Ruby 1.9; and
compatibility is good and getting better all the time.

Ok, troll time:

My opinion - definitely try JRuby over Groovy.  You get all the
benefits of the Java ecosystem: native calls to java libraries, JVM
execution, JIT compilation, packaging, war/ear-based deployment, etc,
etc.  Most importantly, however, you get a language that was designed
to "make people happy".  Most Rubyists - especially those with
experience in other languages - agree it achieves this goal well.

As for Groovy, I still say it is an attempt to make a static language
(Java) appear dynamic.  They've done a decent job, but when you really
compare it to using native Ruby, the warts and sharp edges poke
through.

The only argument I see in favor of Groovy is integration with the
Java ecosystem, which JRuby effectively negates.  Conversely, all
language or syntax preference or prejudice aside, the Ruby ecosystem
is also very rich (rubygems and github), and you cannot take advantage
of this with Groovy.  Why not be able to choose from the best of both
worlds?

Java is dead, long live the JVM.  JRuby FTW in the enterprise.

-- Chad

On Mon, Dec 8, 2008 at 3:45 PM, Todd Ellermann <[EMAIL PROTECTED]> wrote:
> One more side note.  JRuby runs on the JVM as well, and for a while was out
> performing the native Ruby interpreters. Not sure if that is still true.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Spam

2008-11-21 Thread Chad Woolley
On Fri, Nov 21, 2008 at 10:04 AM, Christopher Sharp <[EMAIL PROTECTED]>wrote:

> I opened what I thought was a message from this group, and found instead
> spam on Viagra and other similar products.  It was in the form of an image.
>

I didn't get it.  Do you use Gmail?  If not, consider it...


Re: [jug-discussion] Early Bird Discount ends October 31st...SpringAmericas 2008 returns December 1-4th to Hollywood, FL (JUG Discount Available...)

2008-10-21 Thread Chad Woolley
On Tue, Oct 21, 2008 at 4:08 PM, Kit Plummer <[EMAIL PROTECTED]> wrote:

> The latest OSGi spin Spring is spinning is a little gross.  Why do I need
> to "buy" their 8x8 block when I can go down the street to Apache and get a
> Felix 2x2 block?  But, anyway...
>

Why use a DI "Framework" at all when you can probably get everything you
need (at least in the early iterations) with a homegrown Registry pattern in
a single file?  Like this, for example:

http://geminstaller.rubyforge.org/svn/trunk/lib/geminstaller/registry.rb

Yeah, hackish and primitive, but definitely the simplest thing that worked -
and allowed me to avoid a DI "framework' and have NO library dependencies in
this utility.

-- Chad


Re: [jug-discussion] Next week's meeting

2008-10-09 Thread Chad Woolley
On Thu, Oct 9, 2008 at 4:32 PM, William H. Mitchell <
[EMAIL PROTECTED]> wrote:

> I've often thought it would be interesting to start meetings with a quick
> circle around the room to give people a chance to seek real-time advice on
> issues they currently face and/or pass along useful things they've recently
> come across.
>

Yes.  If you add the requirement to be standing up, hold questions until the
end, and observe a time limit, you have lightning talks ;)


Re: [jug-discussion] Next week's meeting

2008-10-08 Thread Chad Woolley
On Wed, Oct 8, 2008 at 6:52 PM, William H. Mitchell <
[EMAIL PROTECTED]> wrote:

> I don't know if anything is lining up for next week's meeting but if not
> I've got an idea for a low-effort plan B: "Destination Unknown Hack Night".
>
> The idea is pretty simple -- show up, possibly with your laptop, and in the
> span of two hours (or is it 90 minutes?), we quickly settle on something of
> sufficient mutual interest and try to make some progress with it.  Maybe
> it's a tool you've been meaning to try out, maybe it's an open source
> library that's getting some buzz, maybe it's an interesting little
> programming problem.
>
> I'd say to timebox the topic selection to fifteen minutes, and be a good
> sport if the topic settled on isn't your favorite.  Obviously, it'd be
> important to come with an open mind and a "Why not?" attitude.
>
> I'd also say to not limit the scope to Java.  For example, if an
> interesting programming problem were to turn up, it could be attacked in
> whatever language one chose.  Also, there are lots of tools that are useful
> across many platforms and/or languages.
>
> 'Just a thought...
>

Could be interesting, but it would suck if the topic ended up being
something lame.  I mean, something that doesn't interest me.  Especially
since I'd have to give up a prior standing commitment to make it.

We could also do the lightning talk thing - strict 5 or 10 minute limit, and
people can go twice or more if they want, but on a different topic.  Do we
actually have enough people with interest, motivation, and chops to do a
lightning talk session?  Maybe not this time, but another.  If not, well...
that's sad.

On a related note, here is Zed Shaw's latest endeavor:

http://freehackersunion.org/

-- Chad


Re: [jug-discussion] No longer at Weymouth Design

2008-10-06 Thread Chad Woolley
Great, thanks William.  If it were a Google Group, I'd volunteer to co-own,
but anything else is above my threshold of time/effort investment.  Don't
want to know any more passwords ;)

On Mon, Oct 6, 2008 at 4:42 PM, William H. Mitchell <
[EMAIL PROTECTED]> wrote:

> A while back Warner mentioned passing along the duties he's been so good to
> do for so many years.  I'd be happy to pick up with mailing list
> maintenance.
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


Re: [jug-discussion] No longer at Weymouth Design

2008-10-06 Thread Chad Woolley
can we remove this address from the list, then?

On Mon, Oct 6, 2008 at 11:18 AM, Mark at Weymouth <
[EMAIL PROTECTED]> wrote:

> To whom it may concern,
>
> Mark is no longer with Weymouth Design. Please contact Tom Kraft at
> [EMAIL PROTECTED] if you need assistance.
>
> Thank you.
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


[jug-discussion] Re: How can I get the PID of a process started by ant ?

2008-09-10 Thread Chad Woolley
On Wed, Sep 10, 2008 at 9:07 AM, Chad Woolley <[EMAIL PROTECTED]> wrote:
> How can I grab the PID for this process, or of the parent Ant process?
>  Is the PID hidden by the JVM sandbox security, and my only option is
> to grep the output of ps from the process invoking Ant?

Hmm, here is a hack which works on unix shell, which is probably good
enough for me, even though I'll probably have to figure out the
inheritence:

http://forums.sun.com/thread.jspa?messageID=1536884

$$ ftw...

Thx,
-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] How can I get the PID of a process started by ant ?

2008-09-10 Thread Chad Woolley
Hey, I have a java question :)

I have an Ant target (the Jsunit start_server target, actually) which
starts a java process using the  Ant target.

How can I grab the PID for this process, or of the parent Ant process?
 Is the PID hidden by the JVM sandbox security, and my only option is
to grep the output of ps from the process invoking Ant?

Thanks,
-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Radio Buttons

2008-09-01 Thread Chad Woolley
On Mon, Sep 1, 2008 at 12:01 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> I count Tom as a good friend and valued colleague but I've got to
> respectfully disagree with him on this point.  I don't see a charter on the
> JUG website but for History, I see this: The Tucson Java Users Group was
> established to provide information about Java and Java related technologies
> to its members, to facilitate contacts between its members and to promote
> the use of Java technology in Tucson, Arizona. That seems to allow questions
> from students, whether on homework assignments or not, or very basic
> questions from anybody.  Perhaps Tim's instructor and TA (if any) are
> off-line for this holiday weekend, and Tim wants to keep moving.

I agree, with conditions.  You can post for help to the list, if you
follow these rules of etiquette:

1. Make an effort to google and find a solution yourself, and provide
links to what you found, and a reasoned explanation of what you have
tried, and why you are still confused.  This is the most important
step.  Often, the process of documenting why you are confused, and
describing why your google results have failed you, will cause you to
find the solution yourself.  I can't count how many times I've done
this myself.  If you are still confused, and can clearly describe why
you are confused, and can give examples of how google has failed you,
then by all means, post and ask for help.  That's a perfect use of
this list, in my opinion.

2. Use a pastie solution like http://gist.github.com for your code
samples - don't paste inline

3. Keep the same message subject for the entire thread (so people can
use Mute in Gmail if they don't like it, or easily archive the entire
thread at once)

If you follow these rules, and Tom or anyone else still doesn't like
these messages, then they can set up a filter in their mail program to
ignore all posts from you.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Radio Buttons

2008-09-01 Thread Chad Woolley
On Sun, Aug 31, 2008 at 8:45 AM, Tim Worden <[EMAIL PROTECTED]> wrote:
> You said that in IRC you put the code in a "paste bin and then send a link",
> how do I do this or where can I find out more about this.

http://gist.github.com/

This is cooler than all the other pastie solutions because you can
edit and fork them.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JUG Talk Topics Ideas

2008-08-16 Thread Chad Woolley
On Sat, Aug 16, 2008 at 3:06 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> Well, I'd be happy to see a good demo of TextMate, too! :)

Hehe.  Actually, I think textmate sucks pretty hard in its own ways -
such as no directory-tree-specific search (a horribly glaring
omission).  I'll often have to fall back to grep or Idea if I need to
do some real searching to filter a lot of hits.

Also, I'm a lowest-common-denominator guy, especially since I switch
back and forth so much (vi on terminals, textmate on my own, usually
Idea at work), and I can't remember things as well as I used to.  For
example, command-home shift-downarrow command-x is my preferred way of
moving lines around - I don't bother with the move-block shortcut
(which is useless in Textmate anyway because it LEAVES YOUR CURSOR ON
THE OLD LINE!).

I like to think that I think more than I edit, so it's OK if I don't
know all the shortcuts ;)

Anyway, maybe we can think of structuring the Nugs - gonna keep
dissin' that J ;) - to allow 5 minute lightning talks like this in
addition to the normal topic.  Maybe do them first, and have a hard
stop - 5 mins demo and 5 mins questions, then move on.  That also
works good for me so I don't have to stress if I commit and can't show
up after all (like this month I was gonna come but I had to play drums
for my church at the last minute).

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JUG Talk Topics Ideas

2008-08-15 Thread Chad Woolley
On Fri, Aug 15, 2008 at 11:40 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> Chad: It sounds like you may be just the person to help folks decide whether
> IntelliJ Idea presents enough advantages to offset the learning curve and
> the pain of migration! :)

Actually, probably not.  I myself prefer to use TextMate on my own,
because I like the speed, lack of chrome and big easy fonts.  I only
use IntelliJ when I pair at work with someone who prefers it.  Also, I
only use it in Ruby - so I can't really speak to the Java refactoring
and other Java-specific stuff - only that I've heard it is as good or
superior from people who have used it.

Maybe I was too strong to say it sucks, it's not any specific thing.
The generic differences are mostly about the speed and "feel" of
searching, SCM integration, file navigation, etc.  I think the
single-project focus in idea vs the multi-project eclipse approach
also makes a difference in a lot of things.  Most of the same
functionality is in eclipse, but it just feels noticably clunky
compared to Idea when I've briefly gone back to it.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JUG Talk Topics Ideas

2008-08-14 Thread Chad Woolley
On Thu, Aug 14, 2008 at 4:23 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> Just like last year, a lunch-time show of hands at NFJS for "Who uses
> Eclipse?" seemed to raise just about every hand in the room.  And, just like
> last year, a follow-up from Neal Ford -- "Who'd still use Eclipse if they
> had to pay $400 for it?" -- made every one of those hands disappear.(*)

I use IntelliJ Idea and TextMate mainly now.  I gotta say, I think
eclipse sucks next to Idea.  If you are into a full-blown IDE (in
other words, don't like textmate/VIM/Emacs/etc), intelliJ is the best
one.  ANd I gotta say, if you are a software developer and cannot
afford top spend $400 to get a top-of-the-line tool that you will use
every day of your professional life, then you should start looking for
a different job :)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] JUG meeting August 12 will be a Git-together

2008-08-12 Thread Chad Woolley
On Thu, Aug 7, 2008 at 1:26 PM, Andrew Lenards <[EMAIL PROTECTED]> wrote:
> The JUG meeting August 12 will be a Git-together.

How did this go?  I had to miss due to other commitments, but it
sounded like fun...

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Git question

2008-08-12 Thread Chad Woolley
On Tue, Aug 12, 2008 at 12:42 PM, Andrew Lenards
<[EMAIL PROTECTED]> wrote:
> There is a hook for doing stuff after a `git-pull` - btw... a `git-pull` is
> really just a `git-fetch` + `git-merge`.  So the post-merge

Great, thanks for researching this.  I wonder what is the best
approach to try.  Ideally, I'd like to do it with git submodules,
which would be pure-git, no external libs required.  However, I'm not
sure if there would be limitations with the post-merge + git
submodules, vs. post-merge + piston/braid/etc.  I'll try it out...

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Git question

2008-08-10 Thread Chad Woolley
Thanks Andrew.  I suspected that was the case.  Thanks for doing the
research for me so I didn't have to do it myself.  Seems like an
egregious hack, an oversight in the high-level Git architecture, or
lack of foresight in how it would actually be used.

Here is a blog post I did recently on other other thing that is really
preventing me from moving to Git for all my projects:

http://pivots.pivotallabs.com/users/chad/blog/articles/479-best-practices-for-managing-external-plugins-libraries-which-live-in-git-

See you Tuesday, looking forward to the Git-together...

-- Chad

On 8/10/08, Andrew Lenards <[EMAIL PROTECTED]> wrote:
> Chad - that's totally bizarre...  based on the tutorials and cheat sheet I
> have, you remove a branch form a repo with the following:
>
> `git branch -d $branch`
>
> There is a pretty active git channel on irc.freenode.org - I asked about
> this and here's the explanation I got.
>
> `git push` is the only command that can make changes to a remote repository.
>
> It creates and updates branches - and it has been overloaded to delete
> branches (since it's the only outgoing communication command).
>
> Apparently the key to that github link is the colon.  If you know that `git
> push origin foo` is really shorthand for `git push origin foo:foo` (because
> usually the local branch and remote branch have the same name).  So when you
> say:
>
> git push origin :somebranch
>
> You're pushing nothing to somebranch.
>
>
> Below is the transcipt of the answer I got from spearce:
>
>
> [21:43]  question - how do you remove a remote branch?  Is this
> github link wrong:
> http://github.com/guides/remove-a-remote-branch
> [21:43]  lenards: that link is actually correct
> [21:45]  spearce: I don't understand why it works... why would `git
> push` be how you remove a remote branch?
> [21:45]  lenards: git push is the only command that can make
> changes to a remote repository.  it can create branches, update branches,
> and it was overloaded to delete branches, since its the only outgoing
> communication command.
> [21:47]  spearce: thank you... okay - but the syntax shown looks
> like the same way I'd push changes to that remote branch
> [21:49]  lenards: if you look carefully at the syntax the source
> side of the argument is empty (the stuff before the :).  we are technically
> pushing _nothing_ to the remote branch to cause its deletion.
> [21:51]  spearce: hmmm... okay so if I was pushing to a remote
> branch to update it... how would it look? `git push origin
> localbranch:remotebranch` ?
> [21:51]  lenards: correct
> [21:51]  and its common for localbranch and remotebranch to be the
> same name, so "git push origin A" is an shorthand for "git push origin A:A"
>
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] Git question

2008-08-09 Thread Chad Woolley
Here is the GitHub guide on how to delete a remote branch:
http://github.com/guides/remove-a-remote-branch

That guide, and the man page for git push, give me absolutely no clue
on why or how this syntax works.

Can someone explain or give me a link?

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] stepping back from the JUG

2008-08-07 Thread Chad Woolley
On Thu, Aug 7, 2008 at 1:26 PM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> I've given this a lot of thought and as much as I hate it I think I have to
> step all the way out of the JUG stuff. I just don't have the time or energy
> right now to devote to it.

Thanks for all your hard work and dedication over the years...

> Over the next month or so I will be upgrading my box to a new OS and do some
> house-cleaning. This has been brought up periodically before and I'll bring
> it up now. If the JUG decides to move off of my box I have no issues with
> that, and now would be a good time to do it (to save me from creating that
> whole directory and whatnot on the new hard drive).

I personally don't have the time or motivation to do much either,
especially not as long as the group still has the J-word in the
title...

But seriously, we live in the era of hosted services.  If not for the
mailing list address, I'd recommend scrapping the whole manual
Atlassian install and switching to a Google group.  It has mailing
list, wiki, etc.  Unfortunately, that would change the group address,
screw up peoples filters, etc.  The admin could manually invite
everyone to the new list (but only a few every few days, because of
Google Groups spam protection).

If we stick with Atlassian, I would think we should move it to some
cheap virtual host and get a sponsor (VMS) or paypal collection to pay
for it yearly.  However, this still requires a lot more hands-on admin
time and dealing with OS sysadmin, unlike the Google Groups
solution...

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Thanks for the presentation Brian!

2008-07-11 Thread Chad Woolley
On Fri, Jul 11, 2008 at 4:06 PM, Bashar Abdul
<[EMAIL PROTECTED]> wrote:
> class Person {
> String name
> def hasMany = [articles:Article]
> }
>
> You can use Hibernate's Criteria Builder:
>
> def c = Person.createCriteria()
> def results = c.list{
> articles{
> like('content','Paris Hilton')
> }
> }

OK.  If I understand, "def c" would be "def
articles_about_paris_hilton"?  This is still not as nice as
ActiveRecord, I think.  You are having to create custom helper methods
directly on the Model.  For example, bob.articles_about_paris_hilton
vs the (more OO and messagey) bob.articles.about_paris_hilton which
leverages the (nicely decoupled and Demeterish)
Article.about_paris_hilton?

However, Brian's points about the maturity and stability of Hibernate
vs. ActiveRecord are well taken.  I think it all depends on your
project.  For Agile startup social networking projects, the
flexibility, readability, and speed of ActiveRecord trumps.  For a
project where you really care about database integrity or ACID, you
would probably want to think about using some DSL on top of hibernate,
like GORM.  I still think the GORM syntax looks like poop compared to
Ruby and ActiveRecord, though :)

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Thanks for the presentation Brian!

2008-07-11 Thread Chad Woolley
On Fri, Jul 11, 2008 at 3:16 PM, Bashar Abdul
<[EMAIL PROTECTED]> wrote:
> If I got your questions right:
>
> Suppose you have this class:
>
> class Article{
> String author
> boolean published
> }
>
> To get all the articles published by Bob:
>
> def articles = Article.findAllByAuthor("Bob")AndPublished("True")

Not really.  I still want all bob.articles to return ALL of bob's
articles, but "bob.articles.published" should return only his
published articles.

And, to take it a step further than a simple property and illustrate
ActiveRecord's ability to define any method, I would also like a
about_paris_hilton method defined on the articles association, so I
could say "bob.articles.about_paris_hilton"

In ActiveRecord, this would look something like this (simple and
probably somewhat inaccurate, I'm no ActiveRecord guru):

class Person < ActiveRecord::Base

  has_many articles do
def published
  ...
end

def about_paris_hilton
  proxy_target.select { |article| article.about_paris_hilton? }
end
  end
end

With the new named_scope feature (contributed to Rails by one of my
colleagues), this is even easier: http://railscasts.com/episodes/108

Anyway, the point is that the associations themselves are objects
which you can extend with methods and functionality.  You don't have
to implement these helper methods directly on the model class.  This
allows you to make a very expressive and english-like API for your
model layer.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Google's Wire Format Goes Open Source

2008-07-11 Thread Chad Woolley
On Fri, Jul 11, 2008 at 1:08 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> I took a look at that link but the documentation seems incomplete -- I
> didn't see anything about specifying the number of stop bits.

What was it Brian said about Java being the new Assembly?

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Google's Wire Format Goes Open Source

2008-07-10 Thread Chad Woolley
These kids and their new-fangled protocols.  XML was good enough for
my grandfather, and it's good enough for me!  Why, we had to make our
angle brackets out of two sticks and baling wire...

On Thu, Jul 10, 2008 at 9:45 PM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> Very cool Nick, thanks for sharing!
>
> -warner
>
> On Jul 10, 2008, at 3:15 PM, nlesiecki wrote:
>
>> This is pretty cool:
>>
>>
>> http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html
>>
>> Protocol buffers are *the* lingua franca for RPCs, structured data
>> storage, and just about any data sharing you can think of at Google. If
>> you're building a distributed system and want to pass around messages in
>> something other (faster) than Xml, you should check out protocol buffers.
>>
>> Nick
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
> Warner Onstine - Programmer/Author
> New book on Tapestry 4!
> Tapestry 101 available at http://sourcebeat.com/books/tapestrylive.html
> [EMAIL PROTECTED]
> http://warneronstine.com/blog
>
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] IntelliJ Idea (was: Some thoughts on Scala)

2008-07-10 Thread Chad Woolley
On Thu, Jul 10, 2008 at 11:31 AM, Thomas Hicks <[EMAIL PROTECTED]> wrote:
> http://www.artima.com/lejava/articles/javaone_2008_dmitry_jemerov.html

I have to admit, Idea is a very nice IDE, especially for Java.  I
think it blows away Eclipse/NetBeans in most areas, except price (it
isn't free).  At Pivotal, most of our Ruby developers use it.  The
Ruby support is as good as any other IDE, and any shortcomings in Ruby
support vs other IDEs are outweighed by the overall maturity of Idea.

However, I am finding myself less and less tolerant of huge, slow,
chrome-heavy IDEs, especially since they have little or no refactoring
support in dynamic languages like Ruby.  Lately, I tend to use
TextMate.  It sucks in many ways and has numerous shortcomings, but it
is FAST, has minimal chrome, allows you to easily change font sizes,
and almost never freezes or crashes (unless you are doing project-wide
search in a huge project).  On the other hand, big IDEs take forever
to start up, and frequently freeze up or crash.  Sometimes, I will
code in TextMate, and only pull out Idea if I need to do a power
search or replace.

I would like to become a VIM power user, because it is a decent,
powerful, and truly cross-platform editor.  However, that is a big
learning curve, and I would miss my tabs and scrollwheel...

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Thanks for the presentation Brian!

2008-07-09 Thread Chad Woolley
On Wed, Jul 9, 2008 at 9:16 AM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> I just wanted to send out a quick note to everyone (and Brian) thanking him
> for the presentation last night.

Yes, I enjoyed it.  Regardless of which flavor we prefer, I think that
having all this momentum behind dynamic languages on the JVM is a
great thing.

Also, does anyone have links/examples of extending association proxies
in GORM?  Brian said this was possible, and I'd really like to see how
it is implemented as compared to ActiveRecord.  Does DataMapper have
this, too?  As a reminder, I mean something like defining a custom
"published" method on the articles association, so that
bob.articles.published results an array of only bob's published
articles.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] git, mercurial or bazaar?

2008-07-08 Thread Chad Woolley
On Tue, Jul 8, 2008 at 8:55 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> (Executive summary of his presentation: If you're not using git, you're an
> idiot, even if Google hired you.  Any questions?)

hehe, yeah that is a funny preso.  However, Linus did put a lot of
thought and effort into making Git do what he wants, and do it FAST.
It's nice...

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] git, mercurial or bazaar?

2008-07-08 Thread Chad Woolley
On Mon, Jul 7, 2008 at 11:09 AM, Andrew Lenards
<[EMAIL PROTECTED]> wrote:
> If you're forced to stay with an SVN repository - I know there is a git-svn
> bridge that is bi-directional.  So you can pull in an svn repo, branch,
> work, and merge within git - then export the result back to svn.  I've got
> links for that somewhere, but I think most of the interesting stuff will pop
> up in a google search.

I've used git-svn some, it works.  sudo aptitude install git-core
git-svn.  I installed via ports on mac, and I think git-core came with
git-svn?

Here's my delicious tags I've got so far, some stuff on git-svn there:
 http://del.icio.us/thewoolleyman/git  Also, the peepcode video is a
good intro.

svn:externals seems to be the one thing that Git can't do as well as
SVN.  I researched it (links on delicious also, but haven't played
with it).

I agree with Kit, no reason to stick with SVN, I'm switching
everything over as I get time.

I like GitHub, and have been recommending it, but they seem to have
some disturbing uptime issues (like right now)...

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Scott Segal Presentation

2008-06-18 Thread Chad Woolley
Which one did you finally pick, Scott?

On Wed, Jun 18, 2008 at 8:26 AM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> Hi Tom, The presentation is now available for download from the JUG Web site
> (front page).
>
> -warner
>
> On Jun 13, 2008, at 6:32 AM, Tom Michaud wrote:
>
>> Hi Scott,
>>
>> I don't remember if you mentioned this in the meeting.  Will the
>> presentation will be made available for all on the TJUG wiki?
>>
>> Thanks,
>> Tom
>>
>
> Warner Onstine - Programmer/Author
> New book on Tapestry 4!
> Tapestry 101 available at http://sourcebeat.com/books/tapestrylive.html
> [EMAIL PROTECTED]
> http://warneronstine.com/blog
>
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Groovy and JRuby

2008-06-08 Thread Chad Woolley
On Sun, Jun 8, 2008 at 11:55 AM, Kit Plummer <[EMAIL PROTECTED]> wrote:
> I do believe there are upsides to JRuby, or just Ruby that should influence
> people to take a look.  Like the fact that there is Ruby without the J.
>  IronRuby, Rubinius, and the like are intriguing in that Ruby is closer to
> the write once, run anywhere than the original attempt, Java.

Profound statement.  Especially coupled with the (admittedly
unproven-by-me) ability of JRuby to call existing Java libraries.

As I said in the other thread, I've found the open source culture in
ruby to be more fun, prolific, and productive than I ever found Java's
to be.  I think this is partially because of the community, and
partially because of the language itself.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Groovy and JRuby

2008-06-08 Thread Chad Woolley
On Sun, Jun 8, 2008 at 11:43 AM, Thomas Hicks <[EMAIL PROTECTED]> wrote:
> One thing that has turned me off from Ruby in the past is the fanatical
> and proselytizing behavior of the community members. Instead of
> just setting up strawmen and snidely knocking them down, why don't you
> put down the Kool-aid and educate us.

Hmm, other people say that Ruby has an especially nice community.  I
think the Ruby open source community is interesting, especially
projects like Rubunius that are turning the whole "ego based" open
source paradigm on it's head.  In Rubinius for example, one accepted
patch gets you full commit rights.  I wrote more about this here [1].

> 1) Have you actually used JRuby for any real world applications?

Nope.  I think JRuby is still getting the kinks worked out, but coming
along very well (Runs Rails now, so I hear).  The closest I got was
that I tried to convert an existing production app to run on JRuby.  I
ran into a couple of bugs.  Patched one, and reported the other one
(which was fixed in the next release).  After that I lost interest (or
rather focused on more interesting non-Jruby stuff).

So, I'm not qualified, nor motivated, to find the answers to the
following questions.  All I had time for at this point was to give
Groovy a (probably unfair) chance with the above test (what operations
are available on an array?).  As I said, that experience did not make
me want to explore further, and definitely didn't entice me in the
least to stop programming in Ruby.

So, anyone else (or nobody else) is welcome to answer these.  I was
just stirring things up, didn't want to actually do any work, other
than possibly making some Old Pueblo Developers consider looking into
Ruby and the world of Kool-Aid Flavored Happiness that awaits.

You know I love you all :)

> 2) What is it best at? What is it worst at?
> 3) How well does it integrate with Java?
> (Groovy and Java are highly integrated in several different ways.
> At a minimum, Groovy classes can extend Groovy and Java classes
> and interfaces. Java classes can also extend Groovy classes and interfaces.
> The Groovy MOP protocol adds even more power to the integration).
> 4) How does JRuby resolve the conflict between Java and Ruby data types?
> 4a) Does it support coercion? Autoboxing and unboxing?
> 5) How faithful is it to the Ruby language?
> 6) Does it implement all of Ruby?
> 7) Can JRuby use Ruby libraries?
> 8) Is JRuby up-to-date with mainline Ruby development?
> 9) How fast is it?
> 10) How good is the tool support (IDEs and so on)?
>
> I look forward to learning more about JRuby.
> cheers,
> -tom
>
>


[1] 
http://pivots.pivotallabs.com/users/chad/blog/articles/430-evan-phoenix-at-mountain-west-ruby-conf

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Groovy and JRuby

2008-06-08 Thread Chad Woolley
On Sat, Jun 7, 2008 at 10:26 PM, Thomas Hicks <[EMAIL PROTECTED]> wrote:
> To partially answer your original question: I use Groovy because it is
> built on top of a mature and immense language platform, so I don't
> have to reinvent the wheel every time I sit down to code.

How does JRuby not meet this requirement?  It can call Java classes,
and using a different (superior in my opinion) interpreted/dynamic
language is not reinventing the wheel, plus Ruby predates Groovy
anyway, by quite a while [1] :)

-- Chad

[1] http://www.levenez.com/lang/

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Groovy and JRuby

2008-06-08 Thread Chad Woolley
On Sat, Jun 7, 2008 at 10:26 PM, Thomas Hicks <[EMAIL PROTECTED]> wrote:
> Really? It's pretty similar in Groovy:
>
> groovy> [].class.methods*.name.toList()
> ===> [get, add, add, indexOf, clone, clear, lastIndexOf, contains, addAll,

OK, that seems to work.  Can't say that would have been my first guess
though. Whats up with the "*"?  It still not pretty, nor intuitive.
For example, look at the following train wreck resulting from playing
around in groovysh.  The best part is that I end with the original,
working, expression... NOT WORKING ANYMORE!  I don't even know what
groovysh is trying to tell me with the error "No signature of method:
[Ljava.lang.reflect.Method;.multiply() is applicable for argument
types: (java.util.ArrayList) ".  Whaa?  This does not meet the
Principle of Least Surprise for me. I remain - unconvinced.


chadmac:groovy-1.6-beta-1 woolley$ bin/groovysh
Groovy Shell (1.6-beta-1, JVM: 1.5.0_13)
Type 'help' or '\h' for help.
---
groovy:000> [].class.methods*.name.toList()
===> [get, add, add, indexOf, clone, clear, lastIndexOf, contains,
addAll, addAll, size, toArray, toArray, set, remove, remove, isEmpty,
trimToSize, ensureCapacity, hashCode, equals, iterator, subList,
listIterator, listIterator, toString, containsAll, removeAll,
retainAll, getClass, wait, wait, wait, notify, notifyAll]
groovy:000> []
===> []
groovy:000> [].methods
===> []
groovy:000> [].class.methods
===> [Ljava.lang.reflect.Method;@1bcd49
groovy:000> [].class.methods*
groovy:001> [].class.methods*.name
ERROR groovy.lang.MissingMethodException: No signature of method:
[Ljava.lang.reflect.Method;.multiply() is applicable for argument
types: (java.util.ArrayList) values: {[get, add, add, indexOf, clone,
clear, lastIndexOf, contains, addAll, addAll, size, toArray, toArray,
set, remove, remove, isEmpty, trimToSize, ensureCapacity, hashCode,
equals, iterator, subList, listIterator, listIterator, toString,
containsAll, removeAll, retainAll, getClass, wait, wait, wait, notify,
notifyAll]}
at groovysh_evaluate.run (groovysh_evaluate:2)
...
groovy:001> [].class.methods*.name.toList
ERROR groovy.lang.MissingPropertyException: Exception evaluating
property 'toList' for java.util.ArrayList, Reason:
groovy.lang.MissingPropertyException: No such property: toList for
class: java.lang.String
at groovysh_evaluate.run (groovysh_evaluate:2)
...
groovy:001> [].class.methods*.name.toList()
ERROR groovy.lang.MissingMethodException: No signature of method:
[Ljava.lang.reflect.Method;.multiply() is applicable for argument
types: (java.util.ArrayList) values: {[get, add, add, indexOf, clone,
clear, lastIndexOf, contains, addAll, addAll, size, toArray, toArray,
set, remove, remove, isEmpty, trimToSize, ensureCapacity, hashCode,
equals, iterator, subList, listIterator, listIterator, toString,
containsAll, removeAll, retainAll, getClass, wait, wait, wait, notify,
notifyAll]}
at groovysh_evaluate.run (groovysh_evaluate:3)
...
groovy:001> [].class.methods*.name.toList()
ERROR groovy.lang.MissingMethodException: No signature of method:
[Ljava.lang.reflect.Method;.multiply() is applicable for argument
types: (java.util.ArrayList) values: {[get, add, add, indexOf, clone,
clear, lastIndexOf, contains, addAll, addAll, size, toArray, toArray,
set, remove, remove, isEmpty, trimToSize, ensureCapacity, hashCode,
equals, iterator, subList, listIterator, listIterator, toString,
containsAll, removeAll, retainAll, getClass, wait, wait, wait, notify,
notifyAll]}
at groovysh_evaluate.run (groovysh_evaluate:3)
...
groovy:001> ahhh let me out of here!

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Groovy and JRuby (was Re: [jug-discussion] next month's meeting)

2008-06-07 Thread Chad Woolley
On Fri, Jun 6, 2008 at 4:14 PM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> As I've mentioned before, I liked Groovy from a distance but I found it to
> be frustrating to use.  My experience with Ruby was the opposite -- blah at
> first, but I quickly came to love it.

Thanks William.  I was waiting for someone who agreed with me to chime
in before I responded on the thread.

I've been using Ruby full-time, professionally for over two years now,
and a hobbyist for a while before that.  I used Java for several years
before that, some of them with Scott and crew.

To sum it up, Ruby makes me happy.  I enjoy programming Ruby more than
any other language.  Many other people who work with Ruby say the same
thing.  This is not surprising, because Matz had this goal in mind
when he created Ruby.  Here's some quotes from him:

"Does the world need another language? In theory, no. We just need the
Turing machine to solve all of our problems, in theory. Humans require
more sophisticated tools to program. It's a matter of human need. As
long as some people feel happy using Ruby, that's enough of a reason
for another language for me." [1]

""For me the purpose of life is partly to have joy. Programmers often
feel joy when they can concentrate on the creative side of
programming, So Ruby is designed to make programmers happy." [2]

So, philosophy is fine, but lets see some code to prove this example.
Here's an example.  Say I'm on a plane, and I am playing with (J)Ruby
and Groovy to compare them (which I was).  No interenets or reference
books, just the interactive interpreters.

The challenge is "show me all the operations you can perform on an
Array".  Here's how you do it in (J)Ruby:

chadmac:~ woolley$ jruby --command irb
irb> [].class
=> Array
irb> [].methods
=> ["frozen?", "sort", ...]
irb> [].methods.sort
=> ["&", "*", "+", "-", "<<", "<=>", "==", "===", "=~", ...] # almost,
but still has the methods from Object
irb> [].methods.sort - Object.methods
=> ["&", "*", "+", "-", "<<", "[]", "[]=", "all?", "any?", ...] # Ah,
just the methods from Array

This is a beautiful experience which follows the Principle Of Least
Surprise.  For example:

* Everything just prints out through the magic of duck typing, no
class cast exceptions
* [] IS an instance of an array
* If I want the class or methods of this Array instance, I just ask it
* If I want to sort the resulting array, I just call #sort
* The "-" (subtract) operator does the logical thing, which is
subtract the elements of one array from another.  So, [].methods.sort
- Object.methods gives me just the methods for Arrays

Now, I tried to do this same thing in Groovy (with groovysh), and I
failed frustratingly and miserably.  I could get to the point of
println'ing the methods of an Array (which is really an ArrayList in
lipstick), but could see no way to do the nifty array subtraction to
get rid of Object's methods.  Not to mention the numerous exceptions
when groovysh evaluates something that is not a string, and I have to
println to get anything shown.  Overall, confusion and NOT happiness.

As a challenge, why don't the Groovy fans attempt this same thing and
post it?  I'll wager you write a lot more (ugly) code, and as William
says, this is because Groovy is just too close to Java.

Now for the unsubstantiated uninformed rant (couldn't get by without
one of those):  As for Grails, why use a substandard Rails clone built
on a substandard Ruby clone?  Check out Merb, that's the latest
shiznit in Web Frameworks, and it is pretty sweet:
http://merbivore.com/  It is similar to Rails, except they are doing
all the things right that Rails does wrong.  And for the ORM fans,
check out DataMapper from the same crew:  http://datamapper.org/

Sorry I'll miss the meeting, but I'll make it to another one soon to
wax pedantic and give you Java guys grief ;)

-- Chad

[1] http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html
[2] http://www.artima.com/intv/rubyP.html

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] next month's meeting

2008-06-05 Thread Chad Woolley
On Thu, Jun 5, 2008 at 1:58 PM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> In preparation for the upcoming No Fluff Just Stuff Jay Zimmerman has
> graciously offered us a speaker, Brian Sam-Bodden. He has volunteered to
> speak on either "Groovy Metaprogramming" talk or "JRuby DSLs for Java APIs".
>
> I thought I would do an informal poll and see who was interested in either
> one of these.

I'd vote for JRuby if I were going to be there.  But I'm not :(

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Startup Drinks - Tucson

2008-05-06 Thread Chad Woolley
On Tue, May 6, 2008 at 10:28 AM, Andrew Lenards
<[EMAIL PROTECTED]> wrote:
> P.S. - I didn't know if I should pass this along to the jug-announce list or
> what, so if this is seen as "unwanted" mail I'll offer my apologies here.

Personally, I am fine with announcing new (but not necessarily
ongoing) Tucson geek-oriented social groups here.  It is good for the
community, regardless of whether is it Java or not.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Scala thoughts

2008-04-09 Thread Chad Woolley
On Wed, Apr 9, 2008 at 12:56 PM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
>  I think the problem with adding static typing rules is one of diminishing
> returns.  Abstractly speaking, imagine that a body of rules that can be
> described in one page of text eliminates 50% of common errors.  Ten more
> pages of rules eliminate the next 25% of common errors.  How many pages of
> rules would it take to get to 90%?  Would you choose to use a language that
> eliminates 99.9% of errors if its static typing mechanisms took 500 pages to
> describe?

A good testing framework can eliminate 90%+ of programming errors, and
only takes a couple dozen pages of API docs to describe.  Plus, you
don't have to use a compiler if you are writing in an interpreted
language ;)

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [4/8] Introduction to Scala

2008-04-03 Thread Chad Woolley
On Thu, Apr 3, 2008 at 11:02 AM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> This coming Tuesday Tom Hicks and Randy Kahle will be presenting on the new
> JVM language Scala.

Sorry, will be at work in San Francisco.  Codin' Ruby ;)

I really think it is a great goal to learn new languages frequently,
but at this point in my life, it's not happening for me.  Spare time
is spent hacking open source in a language I already know and like
(Ruby).  I'm going to have enough trouble learning all the other
things besides my language that change on a daily basis (like the SVN
to Git paradigm shift for open source).

Hope the talk goes well!
-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Meeting tomorrow [tonight!]

2008-03-11 Thread Chad Woolley
On Tue, Mar 11, 2008 at 11:36 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
>  I'm game for this but how about a quick show of hands -- who's
>  planning on coming?

Sorry, couldn't make it this week (and obviously behind on email too).
 I'll try for next month, if I'm in town.

Did anybody show, and do lightning talks?  If so, how did it go?

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Time-wise binary search of repository for when something got broken

2008-03-09 Thread Chad Woolley
On Fri, Mar 7, 2008 at 9:03 AM, William H. Mitchell
<[EMAIL PROTECTED]> wrote:
> Every once in a while I encounter a situation where a code change or
>  a library change breaks something in a system but the problem isn't
>  noticed until long after the critical change.

This is one case where I like to pull out a good IDE.  Integrated
viewing of svn blame, logs, and commit sets can help you pinpoint the
cause of the bug.
Eclipse has nice SVN integration, IntelliJ is good too.

You should have continuous integration too, ideally the research
approach is only required for bugs that got past your build.  I'm not
sure of the value of retroactively running tests, better to just fix
the bug and look at it as a learning opportunity: review your test
coverage and unit vs. functional vs. integration coverage (and
metrics, if you have them), and see how the bug got past.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Great Meeting

2008-02-13 Thread Chad Woolley
On Feb 13, 2008 10:29 AM, Thomas Hicks <[EMAIL PROTECTED]> wrote:
> I also would love to hear stuff on Python/Ruby as well, they are
>  welcome to join us, present, whatever.
>  I'd like to hear a little of this but, for several reasons, I would
>  be much more interested in hearing about things which are
>  more closely connected to Java and would allow us to build on
>  our huge investment in Java; such as Groovy, GRAILS, or Scala.
>  Perhaps Chad could tell us about JRuby instead?

Well, I remember that we decided (and semi-formally voted, if I
recall) a while back that introducing a non-exclusively-java focus to
the group would be accepted, and even productive.

And, to be honest, I am going to be prone to proselytizing, because I
am enjoying Ruby much more than I ever did Java.  I also like Tucson,
and would like to help build the Ruby community here, and find/convert
people.

As for jRuby, I did try it last week.  I don't think it's quite ready
for prime time (hacking and patches required to get one of our
projects to work on it, and still not done).  However, I think it is
very promising, especially with Sun's commitment to running non-Java
languages on the JVM, with JIT compilation and other improvements.

The JIT stuff, of which they've just released some really cool
sounding stuff recently, is huge IMHO.  Java is dead, long live the
JVM!

Here's a some relevant blog posts to this thread and the meeting.
First, here's Zed's rant that we were discussing at the meeting:

http://www.zedshaw.com/rants/rails_is_a_ghetto.html

Here is Rick's response to Zed's rant.  It's clear he's not a Ruby
convert.  I don't really agree - even though I'm not an MIT CS
language bigot type, I have worked with a lot of different stuff from
JCL and COBOL on up, and I like Ruby a lot :)

http://www.jroller.com/RickHigh/entry/thanks_zed_btw_syntax_matters

And, here is a post from one of my co-workers at Pivotal, a very
experienced developer with many years of Java under his belt, who is
working with Java after being on Ruby projects for a couple of years.

http://pivots.pivotallabs.com/users/alex/blog/articles/402-java-stink

Anyway, good to see you guys again, and I'm hoping to keep it up.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] Great Meeting

2008-02-12 Thread Chad Woolley
Good to see you all there.  Thanks for the preso Warner, I enjoyed
having a discussion with everyone about the flash world and related
topics.

And greetings to our first time guest - if you are on the list.
Sorry, I'm terrible with names.

Hey - what do you all think about trying Pecha Kucha [1] or Lightning
Talk [2] format for an upcoming meeting?  It can be anything - , a few
bullet points or slides with a minute or so each, just show something
cool you worked with recently.  You do have something like that,
right?!?

Also, I've made a couple of Ruby/Python friends here in Tucson, and we
were talking about starting a get together.  Haven't asked them, but
they might want to show some stuff and take advantage of the primo VMS
digs ;)  We also are planning to hit the Ruby/Rails group in Phoenix
next month, I'm going to try out my rubyconf preso.

Let me know what you think.

Thanks,
-- Chad

[1] http://en.wikipedia.org/wiki/Pecha_Kucha
[2] http://en.wikipedia.org/wiki/Lightning_Talk

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Thanks for the dinner TR!

2007-12-12 Thread Chad Woolley
sorry I missed.  I was in San Francisco for work, or I would have been there.

-- Chad

On Dec 12, 2007 8:20 AM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> Hi TR,
> Thanks again for setting up our little holiday dinner, as always I
> enjoy Feast :-).
>
> -warner
>
> Warner Onstine - Programmer/Author
> New book on Tapestry 4!
> Tapestry 101 available at http://sourcebeat.com/books/tapestrylive.html
> [EMAIL PROTECTED]
> http://warneronstine.com/blog
>
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] grails gets wrong

2007-12-12 Thread Chad Woolley
On Dec 12, 2007 8:19 AM, Warner Onstine <[EMAIL PROTECTED]> wrote:
> Ok, following up on my comments from last night about what I see
> missing from Grails. Here's the biggest one so far that I've seen.
> There is still too much configuration that you need to do. Rails is
> so simple configuration-wise. You're up and running in no time. I
> know with Grails you still have generators. But with Rails you have a
> lot less to generate (especially for your models). I'm not saying
> don't have properties in your models (I like that) but get rid of the
> stupid mapping files! :-P.

I rarely use the rails generators.  I usually just code them from
scratch or copy an existing file as a template.  If you do have a
simple crud scaffold, you can use generators, but that doesn't happen
a lot, especially if you are doing TDD.  The rspec scaffold generator
is pretty nice, and actually generates some decent tests (as opposed
to the default Rails scaffold-generated tests, which are worse than
nothing).

As for activerecord, there's a TON of cool stuff in activerecord.
It's not just has_many and belongs_to.  Callbacks and relationships
are very advanced, and extensible (and still buggy in some places).
It would be a huge task to re-implement everything that ActiveRecord
does.  Check out some of the posts by my colleague Nick Kallen on
pivotalblabs.com for examples of this advanced stuff (but it may be
down, we are about to switch from Typo to our own homegrown rails blog
app.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] Podcast on Ruby, jRuby, Groovy, and Polyglot Programming

2007-12-02 Thread Chad Woolley
http://www.javaworld.com/podcasts/jtech/2007/112007jtech006.html

This great podcast covers a lot of topics:

* Why Ruby is more fun
* Why Ruby is going to keep gaining ground in the enterprise (because of jRuby)
* The differences between jRuby and Groovy
* Why Groovy, cool though it is, will always be hobbled by its Java
legacy (JavaBeans)
* Why Ruby won't be (it's not Java, it's Ruby)
* The futility of hiring mediocre programmers
* How the JVM platform lets you use the right language for the right
job (and never have tell the Ops team that it isn't all Java)

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] meeting next tue

2007-10-07 Thread Chad Woolley
I don't think I can make it, unfortunately.

On 10/6/07, Warner Onstine <[EMAIL PROTECTED]> wrote:
> Hi all, if I don't here anything by monday then I'm going to cancel
> so we can free up the space.
>
> -warner
>
> On Oct 4, 2007, at 6:44 AM, Warner Onstine wrote:
>
> > Ok, I've just been slammed and won't have time to properly prepare
> > the Laszlo presentation for next Tue so I would like to propose a
> > couple of alternatives. I have enough material on these two
> > possible subjects:
> > 1) More on meta-programming with groovy
> > 2) Using Antlr (www.antlr.org) - a parser/lexer generator for
> > languages
> >
> > We currently have a presentation lined up for Nov from Bill
> > Mitchell and Andy (more on that later) so I can slide in Laszlo for
> > Dec. (I'll add it to the calendar on the site as we do have the
> > space for Dec even though we have not normally done a meeting
> > then). Let me know what you guys think,
> >
> > So, here's the possibles:
> > Oct. - Groovy or Antlr
> > Nov - Bill and Andy's presentation
> > Dec - Laszlo or no presentation as usual
> > Jan - move Laszlo here
> >
> > Sorry about this, but school and the book have taken over my spare
> > time completely (stupid Linear Algebra homework is eating me alive!).
> >
> > -warner
> >
> > Warner Onstine - Programmer/Author
> > New book on Tapestry 4!
> > Tapestry 101 available at http://sourcebeat.com/books/
> > tapestrylive.html
> > [EMAIL PROTECTED]
> > http://warneronstine.com/blog
> >
> >
> >
> >
> > -
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> Warner Onstine - Programmer/Author
> New book on Tapestry 4!
> Tapestry 101 available at http://sourcebeat.com/books/tapestrylive.html
> [EMAIL PROTECTED]
> http://warneronstine.com/blog
>
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] Re: Delivery Status Notification(Failure)

2007-08-24 Thread Chad Woolley
Does everyone else get this when responding to messages?  If so, can
whoever is responsible kill this subscription?


On 8/24/07, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:
> has not been delivered to the recipient's BlackBerry Handheld.
> The returned error status is 
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] professional degree programs

2007-08-24 Thread Chad Woolley
Don't blame him.  He didn't send it from his iPhone...

On 8/24/07, Aaron Rubin <[EMAIL PROTECTED]> wrote:
> you like to use question mark statements.?
>
> :P
>
>  - Aaron.?
>
> --- Steve Shucker <[EMAIL PROTECTED]> wrote:
>
>
> -
> I agree with Jon and Rob that a degree is not a
> prerequisite to asuccessful career and doesn't say as
> much about your abilities as yourexperience.� The


Re: [jug-discussion] professional degree programs

2007-08-24 Thread Chad Woolley
Man I haven't seen this many big responses on the list in a long time :)

My .02 - many of the smartest developers I've worked with in recent
years have had non-tech degrees like English, Sociology, etc.

On a related note:  IMHO, quality companies who "get it" with regards
to quality programmers don't care too much about degrees if you have
street cred.  For example, my company's interview process involves
pair-programming with the CEO technical lead, and pairing on real-live
projects.  I think suggesting this approach to potential employees is
a great way to distinguish yourself, and find out a lot about the
company in the process.

-- Chad

On 8/23/07, Craig Barber <[EMAIL PROTECTED]> wrote:
> Hey All,
>
> I'm going on the 3rd year of my full-time career in software
> development now. Probably not unlike many others out there I was
> enticed away from completing my undergraduate degree for full-time
> work at a software development startup, and now Im looking into
> finishing up my degree. Unfortunately I've discovered that the UofA's
> CS program isn't really practical for professionals such as myself,
> as most of their CS courses are only offered during core business
> hours. I was wondering if any of you out there have experience and/or
> opinions on the quality of some of the programs out there tailored
> for professionals. For example, I've been researching the University
> of Phoenix. They have an online program which offers a BS tailored
> for software engineering: http://www.phoenix.edu/
> online_and_campus_programs/degree_programs/
> degree_programs_description.aspx?progversion=5&locationid=-1
>
> For you employers and/or educators out there: Which programs do you
> consider reputable and of good quality? Which programs would you
> recommend staying away from? How do you measure up a potential
> employee who has a degree from a program like this compared to a
> traditional university? Any feedback is welcome.
>
> -Craig Barber
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Hi guys.... Crank Crud Intro... JPA/JSF Crud tool

2007-08-13 Thread Chad Woolley
On 8/13/07, Rick Hightower <[EMAIL PROTECTED]> wrote:
> I feel
> the productivety gain while using dynamic langauges is not as good as the
> productivty gain by using a good Java IDE. I'd rather have a good IDE then
> less lines of code. I realize that this may put me in the minority on this
> list but I am use to it.

The lack of a ruby refactoring IDE does really suck, but you learn to
deal with it :)  They are working on it, though - Jruby+netbeans, and
Ruby in Steel [1] on Visual Studio are two that I keep hearing about.
Also, some lightweight editors like TextMate do pretty well with the
idiom- and code-completion stuff.  I actually prefer TextMate
nowadays, which is a big conversion for a prior Eclipse devotee.  Less
chrome is nice :)  I'd switch in a second though if something could
give me foolproof project-wide method/Class renaming and such.

-- Chad

[1] http://www.sapphiresteel.com/spip.php?page=feature-list

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [8/14] Part 1 of Flex/Laszlo smackdown

2007-08-13 Thread Chad Woolley
I'm unable to attend because I'm at Agile 2007 [1], but I'll be there
in spirit...

-- Chad

[1] - http://agile2007.com/agile2007/index.php?page=sub/&id=610

On 8/13/07, Warner Onstine <[EMAIL PROTECTED]> wrote:
> This tuesday James Smith will be presenting part 1 of the Adobe Flex/
> OpenLaszlo smackdown. In this presentation he will cover:
> 1) Communication between Java and Flex
> 2) How to build a simple Flex application that does event posting
>
> Warner will be presenting the Laszlo side of this next month (Sept.
> 11th).
>
> Starting this month we are going to be in a new location at the
> UofA's Student Union, the Tubac Room.
>
> The Tubac room is on the 4th (top) floor of the Student Union:
> http://www.union.arizona.edu/infodesk/maps/sumc_maps.php?level=level4
>
> There is plenty of parking near to the Student Union all Lot 1s are
> free to park in after 5 pm. You can also park in the second street
> garage for $2. The parking lot that we have been parking at is not
> that far from the union if you still want to park there.
>
> All parking can be found on the UofA's Web site here:
> http://iiewww.ccit.arizona.edu//uamap/staticLarge/17.html
>
> Once the Web site is back up I'll add all of this to it.
>
> As usual we will start the meet and greet at 6:30, with the
> presentation at 7.
>
> -warner
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Hi guys.... Crank Crud Intro... JPA/JSF Crud tool

2007-08-11 Thread Chad Woolley
More OT-ness, sorry Rick...

I also find many (but far from all) things in Ruby/Rails follow the
Principle of Least Surprise.  As for Scaffolding, I actually don't use
it a lot.  Since we do Test-Driven Development, I often just start
from scratch.  Unless you are doing straight-up CRUD or REST
scaffolds, there often isn't a lot of useful stuff in the scaffold;
you end up deleting more than you use.  The standard-generated tests
certainly suck, and are worse than none at all in some cases, IMHO,
because they give people the idea that minimal, cookie-cutter tests
are OK.  Maybe that's what Venkat was talking about.

Rails still has a lot of warts, and is downright buggy in a lot of
areas, but the power of Ruby lets you fix these fairly elegantly [1]
in many cases.

Warts aside, Rails got a lot of things right.  Migrations is one of
these, as well as Capistrano.  The ActiveRecord implementation is
another - it's very powerful, flexible, and succinct, as illustrated
here: [2].

I'm not sure what Grails is doing different that is "class-first", or
why AR would be considered "table-first" in contrast?  Do you have to
explicitly define all columns in Grails model classes?  I'd consider
that a downside.  Regardless, once you start "getting" ActiveRecord
and Embrace the Conventions, it feels nice and cohesive.  There are
numerious gotchas of course, but once you know your way around (which
I'm still working on), you can quickly, easily, and elegantly do all
sorts of useful stuff in your Model layer.  You even start doing crazy
things like pushing everything you can down into your Model [3].  It
works out well, especially in RESTful architectures.

As a pre-emptive strike against the performance naysayers, I can point
to real world evidence [4] that with creative caching [5], you can
make the interpreted-language slowness a relative non-issue for many
sites.

Rails isn't for anyone, it would be nice if it didn't have warts, and
I can't conceive of attempting to write real Rails apps without a
disciplined and sophisticated testing approach, but I certainly like
it. YMMV.

-- Chad

[1] 
http://viewvc.rubyforge.mmmultiworks.com/cgi/viewvc.cgi/desert/trunk/lib/desert/rails/?root=pivotalrb

[2]  http://www.pivotalblabs.com/articles/2007/08/08/advanced-proxy-usage-part-i

[3]  
http://www.pivotalblabs.com/articles/2007/07/26/access-control-permissions-in-rails-access-control-permissions-in-rails

[4] http://www.pivotalblabs.com/articles/2007/06/27/rails-slashdotted-no-problem

[5] http://www.pivotalblabs.com/articles/2007/08/08/cacheable-flash

On 8/10/07, William H. Mitchell <[EMAIL PROTECTED]> wrote:
> I can't recall the name of the Rails adjunct that provided
> Grails-like scaffolding.
>
> I have to say that I like Grails' class-first approach better than
> Rails' table-first approach but it'll be interesting to see what the
> Grails guys come up with for migrations.  (At NFJS Jeff Brown said
> they're working on it...)
>
> A little OT...I've been working through "Groovy in Action" and hardly
> a session with Groovy goes by without an unpleasant surprise or
> two.  When learning Ruby there were numerous times when my intuition
> was correct about how two pieces would fit together.  With Groovy it
> seems like I'm constantly out of step.
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Hi guys.... Crank Crud Intro... JPA/JSF Crud tool

2007-08-10 Thread Chad Woolley
Or, in Rails:

ruby script/generate scaffold Employee

:)

On 8/10/07, Rick Hightower <[EMAIL PROTECTED]> wrote:
>
>  Please check out...
>
> http://www.jroller.com/RickHigh/entry/crank_crud_intro
>
>
>


Re: [jug-discussion] next language to learn?

2007-06-20 Thread Chad Woolley

On 6/20/07, eric biesterfeld <[EMAIL PROTECTED]> wrote:

I'm putting in a second for Erlang.

I looked at it a bit back, but I'm still waiting for a time to take it
further. (I really want a proof of concept on something at work, but I
think I'll wait for a few more months to present it...)


Just rewrite your PBX.  Didn't you see the video?  It's easy!

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] next language to learn?

2007-06-19 Thread Chad Woolley

Since processors will be multiplying instead of speeding up in the
future, I think erlang or something similar has got a lot of
potential.  Having the language handle multithreading for you is huge,
given how hard it is in other languages.

On 6/19/07, Thomas Hicks <[EMAIL PROTECTED]> wrote:

At 10:08 AM 6/19/2007, you wrote:
>On 6/19/07, Art Gramlich <[EMAIL PROTECTED]> wrote:
>>Erlang - You should at least work through the tutorial for it (and if
>>you haven't seen it watch the video where they do live updates to the
>>system).
>
>I think you mean this:
>
>http://video.google.com/videoplay?docid=-5830318882717959520
>
>It's hilarious - like programming meets Monty Python.


Oh, my gawd!this has got to be a deliberate jokeit couldn't be this
bad by accidentcould it?

The production values are atrocious; the dialog is horrible; everyone
is speaking in slow motion, stuttering, screwing up their lines;
but, worst of all, you learn next-to-nothing about Erlang!

It's not a collision with Monty Pythonit's a collision with those
"educational" filmstripes from the 50's.
 -t




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] next language to learn?

2007-06-19 Thread Chad Woolley

On 6/19/07, Art Gramlich <[EMAIL PROTECTED]> wrote:

Erlang - You should at least work through the tutorial for it (and if
you haven't seen it watch the video where they do live updates to the
system).


I think you mean this:

http://video.google.com/videoplay?docid=-5830318882717959520

It's hilarious - like programming meets Monty Python.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] next language to learn?

2007-06-18 Thread Chad Woolley

If your goal is to get a marketable skill, I'd say Ruby/Rails.  Lots
of Rails jobs out there, and more every day - especially if you want
to move to the Bay Area :)

On 6/17/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Hi all,
I've posted up a little thing on my blog about what should be my next
language, feel free to chime in (there or here).

http://www.warneronstine.com/blog/articles/2007/06/17/next-language-
to-learn

-warner

Warner Onstine - Programmer/Author
New book on Tapestry 4!
Tapestry 101 available at http://sourcebeat.com/books/tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Google Gears - in case you hadn't seen it elsewhere

2007-06-03 Thread Chad Woolley

It's Arial.  You can't get much more generic than that, can you?

I think my problem is that I'm using the Takahashi presentation
method, and I have huge fonts.  They are just slightly huger on Linux.
I'm sure it's just an edge case that never got tested somewhere,
fonts or not.

This is the type of thing that a browser-based platform solves.
Javascript under Firefox works pretty much the same on all platforms.

-- Chad

On 6/3/07, Dennis Sosnoski <[EMAIL PROTECTED]> wrote:

Chad Woolley wrote:
>
> I can't wait until they get Google docs offline.  I don't care about
> features, all I want is a consistent cross-platform office suite.  NO,
> OpenOffice is not it, I just created a presentation on my Mac,
> standard fonts, text only, no background, and it formats like crap on
> Linux.

I suspect your problem is fonts. I've never tried Mac, but OpenOffice
certainly does a very good job on keeping presentations compatible
across Linux and Windows providing you only use fonts which are
available on both. Which pretty much makes sense - it can't magically
create fonts that aren't present on the platform, so it just uses
whatever is available of the same general type.

Ironically, this generally means staying with the Windows "core" fonts
which were accidentally released for unrestricted use back in the '90s.
They're available for Linux distributions, so I assume they're also
available on Mac.

  - Dennis

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Google Gears - in case you hadn't seen it elsewhere

2007-06-03 Thread Chad Woolley

On 5/31/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

This I think is pretty slick, offline Web apps through a browser
plugin (firefox, IE,  windows, mac, and linux).


I think it's slick too.


http://gears.google.com

They provide an API that lets you run your Web application in offline
mode. Now some people don't get this:
http://www.37signals.com/svn/posts/347-youre-not-on-a-fucking-plane-
and-if-you-are-it-doesnt-matter


Yeah, some people don't get it.  I'm sure he has a cellphone dongle
thingy for his Macbook, but not everyone is the D to the H H.I
sure don't have one...  If the world makes One Laptop Per Child
widespread, then I'm positive that everyone won't have one.


Where does everyone see this thing going?



I can't wait until they get Google docs offline.  I don't care about
features, all I want is a consistent cross-platform office suite.  NO,
OpenOffice is not it, I just created a presentation on my Mac,
standard fonts, text only, no background, and it formats like crap on
Linux.

-- Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] tasks that developers do when learning a new language?

2007-04-25 Thread Chad Woolley

Hmm.  That sort of seems like a mixin, in a hackish way, but you can
almost feel the strain of a statically-typed language being bent to
behave in this way.  Also, they mention this, which seems like a real
drawback if you want to write clean OO code:

"...Note though that you can't add methods to classes, pass them to
Java code, and expect the Java code to be able to call them. Since
most people use statically typed Java with little reflection I doubt
this case would come up much anyway."

Ruby mixins are much cleaner:  http://www.rubycentral.com/book/tut_modules.html

Contrast this with a Ruby mixin, in which the "include" keyword
results in a real live instance method that is identical to all the
other pre-existing instance methods:

module Foo
 def fooit(a)
   a + "foo"
 end
end

class Bar
 include Foo
end

p Bar.instance_methods.sort  # <- fooit is an instance method

p Bar.new.fooit('bar') # -> 'barfoo'




On 4/25/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

I'm not that familiar with Ruby and mixins, but I believe that
Categories are the rough equivalent in Groovy.

http://docs.codehaus.org/display/GROOVY/Groovy+Categories
http://groovy.codehaus.org/Expandos,+Classes,+and+Categories

You'll have to look and let me know (but a quick web search *seems*
to validate this).

-warner

On Apr 25, 2007, at 6:34 PM, Chad Woolley wrote:

> I've heard Groovy doesn't do Mixins.  Is this true?  I think this
> makes it inferior to ruby (although I guess you could run AspectJ
> against Groovy bytecode, right?)
>
> On 4/25/07, William H. Mitchell
> <[EMAIL PROTECTED]> wrote:
>> I started out on a list of things to see if/how a new language has,
>> but I suppose I've ended up with more of a wish list:
>>
>>  Operator overloading, with arbitrary operators
>>  Support for functions as values
>>  Curried functions
>>  Anonymous functions
>>  Function composition
>>  Tuples
>>  Infinite-precision integers, with auto-transitioning
>>  Labeling of data structures via pattern matching
>>  Variable length argument lists
>>  Metadata support, like Java's annotations
>>  Run-time compilation of code
>>  Preprocessor, just like C
>>  Complete mutability--be able to augment/redefine integer
>> addition, for example
>>
>>  Implementation issues:
>> A good debugger (I like TDD but hands off my debugger!  This
>> means you!)
>> Fast compilation
>> Ability to produce a standalone binary
>>
>> It's interesting to note that things like object-orientation, garbage
>> collection, and exception handling have become so common that I'd
>> mostly finished my list before they crossed my mind.
>>
>> Python does pretty well on the above list but for some reason I have
>> trouble getting excited about it.  For years I'd admired Python from
>> a distance but after spending an afternoon with it, I was left with a
>> ho-hum feeling.
>>
>> My experience with Ruby was the opposite from Python -- I didn't like
>> what I first saw with Ruby but the more I learned, the more I liked
>> it.  Now I love it!  I don't think that Ruby comes close to Icon's
>> elegance and cohesiveness but Ruby has largely replaced Icon in my
>> toolbox.  (We'll see if Ruby rules for 24 years, like Icon did, if I
>> live that long...)
>>
>> Now I'm reading through Groovy in Action.  I have to say that Groovy
>> looks pretty good so far.  Groovy's very close integration with Java
>> allows interesting mix-and-match with Java and a low hurdle for Java
>> programmers.  In some ways the Java/Groovy relationship is like
>> C/C++.  Lots of programmers (like me!) got interested in C++ because
>> it allowed them to move to OOP but still use C libraries.  Groovy
>> opens the door for dynamic typing and great expressiveness without
>> losing the investment in Java libraries.
>>
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] tasks that developers do when learning a new language?

2007-04-25 Thread Chad Woolley

I've heard Groovy doesn't do Mixins.  Is this true?  I think this
makes it inferior to ruby (although I guess you could run AspectJ
against Groovy bytecode, right?)

On 4/25/07, William H. Mitchell <[EMAIL PROTECTED]> wrote:

I started out on a list of things to see if/how a new language has,
but I suppose I've ended up with more of a wish list:

 Operator overloading, with arbitrary operators
 Support for functions as values
 Curried functions
 Anonymous functions
 Function composition
 Tuples
 Infinite-precision integers, with auto-transitioning
 Labeling of data structures via pattern matching
 Variable length argument lists
 Metadata support, like Java's annotations
 Run-time compilation of code
 Preprocessor, just like C
 Complete mutability--be able to augment/redefine integer
addition, for example

 Implementation issues:
A good debugger (I like TDD but hands off my debugger!  This
means you!)
Fast compilation
Ability to produce a standalone binary

It's interesting to note that things like object-orientation, garbage
collection, and exception handling have become so common that I'd
mostly finished my list before they crossed my mind.

Python does pretty well on the above list but for some reason I have
trouble getting excited about it.  For years I'd admired Python from
a distance but after spending an afternoon with it, I was left with a
ho-hum feeling.

My experience with Ruby was the opposite from Python -- I didn't like
what I first saw with Ruby but the more I learned, the more I liked
it.  Now I love it!  I don't think that Ruby comes close to Icon's
elegance and cohesiveness but Ruby has largely replaced Icon in my
toolbox.  (We'll see if Ruby rules for 24 years, like Icon did, if I
live that long...)

Now I'm reading through Groovy in Action.  I have to say that Groovy
looks pretty good so far.  Groovy's very close integration with Java
allows interesting mix-and-match with Java and a low hurdle for Java
programmers.  In some ways the Java/Groovy relationship is like
C/C++.  Lots of programmers (like me!) got interested in C++ because
it allowed them to move to OOP but still use C libraries.  Groovy
opens the door for dynamic typing and great expressiveness without
losing the investment in Java libraries.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] tasks that developers do when learning a new language?

2007-04-24 Thread Chad Woolley

I knew there was some AOP library for Ruby but hadn't looked at it.
It looks like AspectR is rather limited, I think this is the
control-flow feature I'd want in order to only do something in the
context of a view, but it doesn't seem to have it:

"control-flow based crosscutting"

Anyway, I'd be hesitant to recommend dumping something like this in a
production app.  Seems like it would have the possibility of being
buggy and non-performant.  Much of the stuff it does do you could
probably design on your own with test coverage, and feel much more at
ease.

-- Chad

On 4/23/07, Warner Onstine <[EMAIL PROTECTED]> wrote:


On Apr 23, 2007, at 6:58 PM, Chad Woolley wrote:

> How "OO" is it?  In Ruby, for better or for worse, everything is an
> object.  Even classes themselves are objects.  This makes it possible
> (if not prudent) to do pretty much anything.
>
> How does it support cross-cutting concerns?  Lately, I have been
> missing the ability to do Aspect-oriented programming in Ruby.  For
> example, I want to HTML-escape the return value of any model getter
> which is in the call stack of a view.  We ended up doing it manually,
> for every field in every view.  When I started rambling about how you
> could do that sort of thing with 5 lines in AspectJ (and never have to
> worry about forgetting it for future fields), I just got blank
> stares...

What about AspectR? Or metaprogramming? I'll be honest I haven't
looked too much at Ruby's metaprogramming model, but the
HigherOrderMessaging stuff I posted a while ago looked like it might
be able to handle something like that.

-warner

>
> -- Chad
>
> On 4/21/07, Warner Onstine <[EMAIL PROTECTED]> wrote:
>> Hi all,
>> I was just curious, when you start learning a new language, what do
>> try and do first?
>>
>> Here are some of the ones that I look at:
>> - looping (how do I do a for loop)
>> - if, then, else
>> - switches (do they exist?)
>> - object and array creation (what types are there and how do I do it)
>>
>> In a sense this goes beyond just syntax and assumes that you (the
>> developer) already have some knowledge of how to program and are
>> familiar with OO.
>>
>> -warner
>>
>> Warner Onstine - Programmer/Author
>> New book! Tapestry 101 available at http://sourcebeat.com/books/
>> tapestrylive.html
>> [EMAIL PROTECTED]
>> http://warneronstine.com/blog
>>
>>
>>
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] tasks that developers do when learning a new language?

2007-04-23 Thread Chad Woolley

How "OO" is it?  In Ruby, for better or for worse, everything is an
object.  Even classes themselves are objects.  This makes it possible
(if not prudent) to do pretty much anything.

How does it support cross-cutting concerns?  Lately, I have been
missing the ability to do Aspect-oriented programming in Ruby.  For
example, I want to HTML-escape the return value of any model getter
which is in the call stack of a view.  We ended up doing it manually,
for every field in every view.  When I started rambling about how you
could do that sort of thing with 5 lines in AspectJ (and never have to
worry about forgetting it for future fields), I just got blank
stares...

-- Chad

On 4/21/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Hi all,
I was just curious, when you start learning a new language, what do
try and do first?

Here are some of the ones that I look at:
- looping (how do I do a for loop)
- if, then, else
- switches (do they exist?)
- object and array creation (what types are there and how do I do it)

In a sense this goes beyond just syntax and assumes that you (the
developer) already have some knowledge of how to program and are
familiar with OO.

-warner

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jug-discussion] OFF-TOPIC: Great Sysadmin?

2007-04-11 Thread Chad Woolley

Sorry if this breaks the no-job-offer taboo, but it's not like I'm a
headhunter, I just want to stop doing so much sysadmin at work :)

Does anyone know a GREAT senior unix sysadmin type?  By GREAT, I mean
mature, organized, experienced, responsible, hardworking,
detail-oriented, and *open-minded* - someone you would personally
vouch for.  This would be for remote work w/travel or relocation to
the Bay Area.

You can respond off-line to [EMAIL PROTECTED]

Thanks,
Chad

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] more DSL/Groovy fun

2007-04-11 Thread Chad Woolley

How does their classmock work?  A quick search of their docs for
classmock turns up nothing.

This is the trickiest part of a tdd/bdd/mock/stub framework in a
statically typed language like java, and one of the best things about
using it in a dynamic language like ruby.

-- Chad

On 4/11/07, Bashar Abdul <[EMAIL PROTECTED]> wrote:


For those interested, JBehave: http://jbehave.org/ is a java BDD framewor,
its already at version 1.0.1

Bashar


- Original Message 
From: Warner Onstine <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Sent: Wednesday, April 11, 2007 8:33:06 AM
Subject: [jug-discussion] more DSL/Groovy fun

This was sent out to the Groovy list this morning, an implementation
of Behavior Driven Development, inspired by RSpec (http://
rspec.rubyforge.org/), This one is of course called GSpec.

http://codeforfun.wordpress.com/2007/04/09/gspec-for-java-bdd/

Here's the code example he sent to the list:

> GSpec is still very alpha as I need to rework the method and property
> interception, however I'm putting it out there in an attempt to
> draw some
> interest (more so in the practice rather than the project). Honestly I
> should be spending more time developing and fixing the kinks in
> GSpec than I
> spend writing about it. Currently I'm working on using Groovy MOP for
> interception and I'm also now working on a term definition feature.
> The idea
> behind term definition is a means of allowing users to extend GSpec by
> defining additional grammar at runtime. Here's what it wold look like:
>
> the.context("A music store order entry system") {
>   definitions {
>  define 'accepted' { the.orderRepository.contains(it) }
>   }
>
>   initially {
>  the.orderRepository = new OrderRepositoryImpl()
>  the.orderProcessor = new OrderProcessorImpl()
>   }
>
>   specify("An order posted without items should NOT be accepted") {
>  def order = the.orderProcessor.createOrder()
>  order.submit()
>  order.should_not_be_accepted
>   }
>
>   specify("An order posted with items SHOULD be accepted") {
>  def order = the.orderProcessor.createOrder()
>  order.add new LineItem("MC Hammer's greatest hits Double CD",
> 21.99)
>  order.submit()
>  order.should_be_accepted
>   }
>
>   inConclusion { the.orderRepository.deleteAllOrders() }
> }
>
> Here's what happens. Any term behind the magic properties (i.e.
> should_be,
> should_not_be) is considered as a boolean bean property. If the
> property is
> undefined on the calling object then a list of "terms" supplied by
> the user
> in the definition section will be considered to resolve the call. I
> think
> it's pretty slick stuff. You probably think I'm crazy, but it might
> work
> out. Drop me a line if you have any other ideas to throw into the pot.

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail:
[EMAIL PROTECTED]
For additional commands, e-mail:
[EMAIL PROTECTED]





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] more DSL/Groovy fun

2007-04-11 Thread Chad Woolley

This is great news.  RSpec is the bomb.  I'm using it extensively at
work and in my personal work.  One of the committers is my co-worker,
and we met the original author (Steven Baker) at the last RubyConf.
Here's a video interview with him and Dave Astels (the guy who wrote
the book on TDD and came up with the concept for BDD):

http://www.infoq.com/news/2007/04/announce-astels-baker-interview

It'll be interesting to see how far they can get with this in
Java/Groovy.  RSpec relies heavily on Ruby magic for it's coolness and
ease-of-use.

-- Chad

On 4/11/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

This was sent out to the Groovy list this morning, an implementation
of Behavior Driven Development, inspired by RSpec (http://
rspec.rubyforge.org/), This one is of course called GSpec.

http://codeforfun.wordpress.com/2007/04/09/gspec-for-java-bdd/

Here's the code example he sent to the list:

> GSpec is still very alpha as I need to rework the method and property
> interception, however I'm putting it out there in an attempt to
> draw some
> interest (more so in the practice rather than the project). Honestly I
> should be spending more time developing and fixing the kinks in
> GSpec than I
> spend writing about it. Currently I'm working on using Groovy MOP for
> interception and I'm also now working on a term definition feature.
> The idea
> behind term definition is a means of allowing users to extend GSpec by
> defining additional grammar at runtime. Here's what it wold look like:
>
> the.context("A music store order entry system") {
>   definitions {
>  define 'accepted' { the.orderRepository.contains(it) }
>   }
>
>   initially {
>  the.orderRepository = new OrderRepositoryImpl()
>  the.orderProcessor = new OrderProcessorImpl()
>   }
>
>   specify("An order posted without items should NOT be accepted") {
>  def order = the.orderProcessor.createOrder()
>  order.submit()
>  order.should_not_be_accepted
>   }
>
>   specify("An order posted with items SHOULD be accepted") {
>  def order = the.orderProcessor.createOrder()
>  order.add new LineItem("MC Hammer's greatest hits Double CD",
> 21.99)
>  order.submit()
>  order.should_be_accepted
>   }
>
>   inConclusion { the.orderRepository.deleteAllOrders() }
> }
>
> Here's what happens. Any term behind the magic properties (i.e.
> should_be,
> should_not_be) is considered as a boolean bean property. If the
> property is
> undefined on the calling object then a list of "terms" supplied by
> the user
> in the definition section will be considered to resolve the call. I
> think
> it's pretty slick stuff. You probably think I'm crazy, but it might
> work
> out. Drop me a line if you have any other ideas to throw into the pot.

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] presenter for next week?

2007-04-07 Thread Chad Woolley

I will be working on a presentation about using Continuous Integration
in a "Web 2.0" environment - unit testing, jsunit, and selenium.  I
could do a special preview for the TJUG in the next few months or so.

-- Chad

On 4/2/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Is anyone up for doing a presentation next week (or know someone who
is)? If not we could have an informal get together to chat about DSLs
(since that seemed to bring up some good questions last time) or we
could chat about other things.

-warner

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Javascript Hijacking

2007-04-07 Thread Chad Woolley

What are the details of this exploit?  They are light on details other
than usage stats for "Web 2.0".  I guess they want you to buy their
software to find out more...

If we are talking about http (vs https), if you log in your user
normally and use session cookies to maintain a session, I don't see
how an Ajax/Ajaj app would be more vulnerable than a regular app.  If
somebody sniffs or steals your session cookie, you are compromised,
doesn't matter whether it's sent via an XMLHttpRequest or a regular
request.

Than again, I'm no security expert.  What am I missing, other than a
link with more details than this article?

-- Chad

On 4/5/07, William H. Mitchell <[EMAIL PROTECTED]> wrote:

In case you haven't heard...
http://www.fortify.com/news-events/releases/2007/2007-04-02.jsp


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [2/13] Andrew Petro and Duffy Gillman on Single Sign-On Solutions

2007-03-20 Thread Chad Woolley

Thanks!

On 3/19/07, Andrew William Petro <[EMAIL PROTECTED]> wrote:


 Quite belatedly, I have the CAS presentation materials posted in the wiki.

 Andrew


Chad,

 I hope it was good.  I'll have materials and links into the wiki this week
but probably not today.

 Andrew
-
To unsubscribe, e-mail:
[EMAIL PROTECTED] For additional
commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [3/13] Warner Onstine presents on DSLs in Java and Groovy

2007-03-07 Thread Chad Woolley

I'll be in San Francisco again for this one, bummer.

Guitar Tablature is my favorite non-computer example of a DSL.
Someone (I think the guy who wrote rake) pointed this out as a DSL
example in a talk on DSL's at RubyConf 2005.

Guitar tab is instantly recognizable and understandable to anyone who
is familiar with it, and you can even hear the chords and notes in
your head just by looking at it.  It's gibberish to a non-guitar
player.  Very simple, very tied to the domain (the fretboard), very
effective at communicating domain-specific information (where to put
your fingers).  A great DSL! :)

-- Chad

On 3/7/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Next Tuesday Warner Onstine will be presenting on creating Domain
Specific Languages in Java and Groovy at the Tucson JUG.

Domain Specific Languages have gotten some press in the past few
years, this talk will focus on what DSLs are and the techniques that
you can use to create a DSL in Java and Groovy with a few examples of
existing DSLs (that you may not have known were actually DSLs).

As usual meet and greet starts at 6:30 with the meeting itself
starting at 7.

Directions and parking locations are here - http://tucson-jug.org/
display/TJUG/Meetings

Also, if you have a Job to post you can now add this to our Jobs
page! - http://www.tucson-jug.org/display/TJUG/Jobs

These will be updated regularly (say every month or so), however if
you do post something and you fill the job please remove it. Also,
still looking for people to help with the Wiki, it only takes a few
seconds to create an account and only requires an hour or less each
week to help keep this content fresh and relevant.

-warner

Warner Onstine - Programmer/Author
New book! Tapestry 101 available at http://sourcebeat.com/books/
tapestrylive.html
[EMAIL PROTECTED]
http://warneronstine.com/blog




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [2/13] Andrew Petro and Duffy Gillman on Single Sign-On Solutions

2007-02-14 Thread Chad Woolley

I couldn't make this one, unfortunately.

Was it good?  Any materials to put on the wiki?

On 2/10/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Join us this coming Tuesday for Andrew Petro and Duffy Gillman who
will be presenting on SSO. Specifically CAS (for SSO management) and
Shibboleth (Federated SSO with authorization, and multiple
authentication providers).

As usual meet and greet starts at 6:30 at our normal meeting spot
(please note that we are not in the Gould Simpson building, but in
CCIT).

Meeting begins promptly at 7.

I have also moved our web-page to point at the confluence site -
http://tucson-jug.org/display/TJUG/Home
Directions to our meeting can be found here - http://tucson-jug.org/
display/TJUG/Meetings

I added everyone who put their names in the hat for the last meeting
so if you find that you don't want to be subscribed to this list you
can follow the directions here for unsubscribing - http://tucson-
jug.org/display/TJUG/Mailing+Lists

Unfortunately I will be out of town this week so I will not be in
attendance.

-warner



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [2/13] Andrew Petro and Duffy Gillman on Single Sign-On Solutions

2007-02-10 Thread Chad Woolley

Thanks for getting the homepage updated and moved, Warner...

On 2/10/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Join us this coming Tuesday for Andrew Petro and Duffy Gillman who
will be presenting on SSO. Specifically CAS (for SSO management) and
Shibboleth (Federated SSO with authorization, and multiple
authentication providers).

As usual meet and greet starts at 6:30 at our normal meeting spot
(please note that we are not in the Gould Simpson building, but in
CCIT).

Meeting begins promptly at 7.

I have also moved our web-page to point at the confluence site -
http://tucson-jug.org/display/TJUG/Home
Directions to our meeting can be found here - http://tucson-jug.org/
display/TJUG/Meetings

I added everyone who put their names in the hat for the last meeting
so if you find that you don't want to be subscribed to this list you
can follow the directions here for unsubscribing - http://tucson-
jug.org/display/TJUG/Mailing+Lists

Unfortunately I will be out of town this week so I will not be in
attendance.

-warner



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] Is AspectJ in my future?

2007-01-13 Thread Chad Woolley

AspectJ is fun.  I'll take the opportunity to hijack this thread and
spew some brief non-java pontification.

I've been working with Ruby, and it's interesting to contrast what you
can and can't do in ruby compared to Java + aspectJ.

Mixins:  You can do whatever you want with include keyword in ruby.
Really cool.  Throw it in a module and use it wherever you want.

Pointcuts/Joinpoints:  Not there in ruby, and I don't know of any
equivalent (does anyone else?).  I really miss being able to say "do
this before this method and after that method".

Incredibly long parsing/precompiling times for aspectj-ified java
projects, especially in IDEs:  Don't miss it at all.  Ruby's
interpreted.  Edit and refresh baby!  :)

-- Chad

On 1/10/07, William H. Mitchell <[EMAIL PROTECTED]> wrote:

At 05:20 PM 1/10/2007, Tom wrote:

>I'd like to have it, if you're giving it away.

Done!

I'll post to the list again if any more copies arrive.  (None today...)


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] [1/9] Tucson JUG - Google presenting on CSS and Web standards

2007-01-05 Thread Chad Woolley

I'll be out of town.  Sorry to miss it!

On 1/5/07, Warner Onstine <[EMAIL PROTECTED]> wrote:

Please join us this coming Tuesday for a presentation from the Google
offices in Phoenix. We will be in a larger location for this so make
sure you go to the right spot!



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [jug-discussion] build tools...

2006-12-24 Thread Chad Woolley

ANT:
If you want to be like most every over Java project in the world, use
Ant.  It works fine.  Just be sure to always remember: PROPERTIES ARE
IMMUTABLE.

MAVEN:
If you want to get a lot of extra bells and and whistles, such as
having all your dependencies automatically downloaded, versioned, and
shared outside of source control, and tons of built-in automated
reports and metrics, use Maven.  Be prepared for a big learning curve,
though.  As other posters mentioned, make sure you use Maven 2.  I
used to be a big fan of Maven 1, and used it a lot.  I even wrote an
open source plugins for it (for Emma).

However, I then stopped doing Java for a while, and during that time
Maven 2 came out.  Then, a few weeks ago, I pulled my Maven 1 project
off the shelf.  i couldn't even get the stupid thing to build.
External dependencies that used to be there in the "central Maven
repository" weren't.  They vanished off the face of the earth, because
they changed the organization of the repository for Maven 2.  Even
though I found some in individually hosted Maven 1 repositories, they
didn't have everything that the old central repository used to have,
and I was still missing enough stuff to be in dependency hell.  It
looks like the Maven folks were so impressed with themselves for
releasing Maven 2, they didn't even care about backward compatibility
for Maven 1.  Maybe this is a one time occurrence, but I've lost a lot
of faith in the product team because of this experience.

RAKE:
If you want to be ultracool cutting edge, use Rake.  It's a Ruby-based
build tool, and has all of the scriptable object-oriented goodness
that Ruby implies.  Also, with the popularity explosion of Ruby
(mainly due to Rails and David Hannemier-Hooha) you probably have as
much 3rd-party library support (RubyGems) as you do for Ant/Java.
There's even some tool called "Raven" that supposedly makes it easier
to use Rake for Java projects, but I've never played with it.

MAKE:
Well, it works.  Pretty much exactly the same as it did 15-20+ years
ago (or how much more?).  If that makes you feel comfortable and safe,
then go for it :)

-- Chad

On 12/23/06, Robert Zeigler <[EMAIL PROTECTED]> wrote:

Without starting a flame-war... ;)
I'm about to embark on updating a very brittle build process. It's
currently based on a combination of relying on the IDE + a bit of ant
In all honesty, I know make better than I know any other build tool, but
I'd rather not do this build in make. So, I'm looking for some input
into what build tool(s) you use, and why? Thanks!

Robert

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



  1   2   >