uPortal IRC Logs-2012-01-25

[04:41:18 CST(-0600)] * Topic is 'http://uportal.pastebin.com/ - https://wiki.jasig.org/display/UPC/uportal+IRC+Logs' set by EricDalquist!~apollo@76.210.64.142 on 17:44:12 CDT(-0500)

[09:53:41 CST(-0600)] <drewwills> fwiw it seems to work w/o -t on origin branches... but needs the -t on upstream

[09:53:43 CST(-0600)] <EricDalquist> ah

[11:39:16 CST(-0600)] <athena> hey EricDalquist - have you noticed any performance differences between jodatime and the java6 calendar api?

[11:39:23 CST(-0600)] <athena> does jodatime use the calendar stuff under the hood?

[11:39:39 CST(-0600)] <EricDalquist> I haven't noticed but I haven't looked

[11:39:41 CST(-0600)] <EricDalquist> and no

[11:39:49 CST(-0600)] <EricDalquist> it is a 100% from scratch impl

[11:40:25 CST(-0600)] <EricDalquist> it even uses its own TZ database I believe

[11:40:33 CST(-0600)] <EricDalquist> http://joda-time.sourceforge.net/tz_update.html

[11:43:11 CST(-0600)] <EricDalquist> http://joda-time.sourceforge.net/faq.html#performance

[11:43:11 CST(-0600)] <athena> terrific.

[11:43:18 CST(-0600)] <EricDalquist> according to jodatime its all faster (tongue)

[11:43:24 CST(-0600)] <EricDalquist> also their date formatting class is thread safe

[11:43:26 CST(-0600)] <athena> exactly what i was hoping to hear (tongue)

[11:43:29 CST(-0600)] <athena> oh! that's awesome

[11:43:44 CST(-0600)] <athena> bet we can speed up the calendar portlet quite a bit, in that case

[11:43:58 CST(-0600)] <EricDalquist> yup

[11:44:25 CST(-0600)] <EricDalquist> and since most everything in joda is immutable it fixes pretty much all thread saftey issues

[11:44:43 CST(-0600)] <EricDalquist> there are mutable versions of the classes if you really need to do lots of modification operations

[11:44:56 CST(-0600)] <athena> that's awesome

[11:45:05 CST(-0600)] <athena> really i think it covers our use cases really well

[11:45:08 CST(-0600)] <EricDalquist> yeah

[11:45:15 CST(-0600)] <EricDalquist> it was pretty nice to work with for the eventing stuff

[11:45:21 CST(-0600)] <athena> stuff like "i just want a date that represents midnight today whatever today means for our world user"

[11:45:25 CST(-0600)] <EricDalquist> SO much easier than the jdk objects

[11:45:31 CST(-0600)] <EricDalquist> yup

[11:45:43 CST(-0600)] <EricDalquist> or defining an object that is "33 days"

[11:45:56 CST(-0600)] <EricDalquist> which doesn't actually have a duration

[11:46:03 CST(-0600)] <EricDalquist> until you pair it with an instant in time

[11:46:13 CST(-0600)] <EricDalquist> it is just a much nicer model of time

[11:49:38 CST(-0600)] <athena> yeah

[11:49:39 CST(-0600)] <athena> (smile)

[11:49:47 CST(-0600)] <athena> wish ical4j used it

[11:49:56 CST(-0600)] <EricDalquist> (smile)

[12:46:37 CST(-0600)] <Arvids1> Just wanted to note that today I was badly hit by https://issues.apache.org/jira/browse/XALANJ-2438

[12:48:28 CST(-0600)] <Arvids1> ... that bug makes <xsl:key name="myKey" match="/layout/folder/folder[...]" use="position()"/> unusable since position() evaluates ALL elements in XML document (sad)

[13:03:28 CST(-0600)] <athena> EricDalquist: i don't know the last time i was so in love with an API

[13:24:12 CST(-0600)] <EricDalquist> athena: ?

[13:26:29 CST(-0600)] <EricDalquist> the joda-time API?

[13:26:46 CST(-0600)] <athena> yeah

[13:27:03 CST(-0600)] <EricDalquist> its pretty awesome isn't it

[13:27:08 CST(-0600)] <athena> the calendar portlet could actually wind up with a sane codebase :0

[13:27:11 CST(-0600)] <athena> that like, works.

[13:27:14 CST(-0600)] <EricDalquist> yeah

[13:27:22 CST(-0600)] <EricDalquist> it really simplifies date/time work SO much

[13:27:39 CST(-0600)] <EricDalquist> I don't think I'm ever going to touch Calendar again

[13:30:37 CST(-0600)] <athena> no kidding

[13:31:02 CST(-0600)] <EricDalquist> well and the fact that there are interefaces too

[13:31:09 CST(-0600)] <EricDalquist> like in many places you can get by with a ReadableInstant

[13:32:04 CST(-0600)] <EricDalquist> or ReadableDateTime

[13:45:12 CST(-0600)] <athena> yeah (smile)

[13:45:23 CST(-0600)] <athena> do you know if java's TimeZone class is thread-safe?

[13:45:44 CST(-0600)] <EricDalquist> I don't

[13:45:47 CST(-0600)] <athena> apparently not.

[13:45:51 CST(-0600)] <athena> yeah

[13:45:54 CST(-0600)] <athena> java calendar

[13:45:55 CST(-0600)] <athena> no good

[13:45:56 CST(-0600)] <athena> (tongue)

[13:46:00 CST(-0600)] <EricDalquist> yeah

[13:46:13 CST(-0600)] <EricDalquist> hard to write enterprise apps when the core JDK classes aren't thread safe

[14:22:10 CST(-0600)] <athena> yeah (tongue)