IRC Chat : 2008-03-22 - OpenMRS

00:00:00 <r0bby> who wrote this?
00:00:16 <docpaul> someone who programmed in .net about 6-9 months ago
00:00:23 <docpaul> er, c#
00:01:16 <r0bby> uhm
00:01:22 <r0bby> java.lang is imported for us...
00:01:54 <docpaul> do you enjoy reviewing and improving other people's code?
00:02:37 <r0bby> for one thing -- this is definitely antlrv2
00:03:49 <r0bby> yeh it is antlrv2
00:04:17 <r0bby> i dont know antlr well enough
00:04:24 <r0bby> :/
00:04:33 <docpaul> pathetic.
00:05:00 <r0bby> dont make me kill you
00:05:03 <docpaul> hehe
00:05:13 <docpaul> you didnt answer my question
00:06:13 <burke> it would make sense, she was doing this work in 4/2006, before v3 existed
00:06:22 <r0bby> yeh :)
00:06:28 <r0bby> I'm just saying
00:06:31 <r0bby> I can tell
00:07:31 <r0bby> http://antlr.org/grammar/1152141644268/Java.g < java 1.5 grammar :)
00:08:11 <burke> cule
00:08:40 <burke> now I can finally see why my Java won't compile
00:08:51 <r0bby> sure :P
00:08:55 <r0bby> antlrworks is the shit
00:09:26 <r0bby> you can test a rule; see the resulting parser tree; even view the AST
00:09:30 <burke> it just looks too simple
00:09:33 <r0bby> s/parser/parse/
00:09:53 <r0bby> it's not that hard
00:10:07 <burke> i would love to learn antlr grammars
00:10:12 <r0bby> colon starts the rule;
00:10:26 <r0bby> soo
00:10:46 <r0bby> FOO : foobar
00:11:21 <r0bby> FOO : 'foobar'
00:11:28 <catullus> primitiveType: 'boolean'
00:11:37 <r0bby> more or less yeh
00:11:50 <r0bby> it's not bad
00:12:00 <r0bby> there's another parser called jflex
00:12:06 <r0bby> but antlr is better suited
00:12:21 <burke> is whitespace ignored? or included in the grammar?
00:12:30 <catullus> antler: 'grammar'
00:12:51 <burke> i mean...not the ws in the grammar file... but the whitespace in java... does the grammar need to address it?
00:13:22 <r0bby> you have to tell it to ignore it
00:13:43 <r0bby> http://antlr.org/grammar/list
00:13:45 <r0bby> more grammars
00:14:52 <burke> hmmm... i haven't used "strictfp" methods before in java
00:15:30 <burke> http://en.wikipedia.org/wiki/Strictfp
00:15:41 <burke> ya learn something new every day. :)
00:16:14 <r0bby> burke: nobody uses it
00:16:31 <burke> yeah. i see it's old.
00:16:44 <burke> so the { } stuff is java code that's setting state info?
00:16:56 <r0bby> where
00:17:13 <burke> like "{k=3;}"
00:17:25 <r0bby> no, those are antlr options
00:17:35 <r0bby> lookahead i think
00:17:59 <r0bby> \@lexer::members { protected boolean enumIsKeyword = true; protected boolean assertIsKeyword = true;
00:18:02 <r0bby> }
00:18:03 <r0bby> that is java code.
00:18:14 <r0bby> s/^\//
00:18:38 <burke> the blocks under assignmentOperator look like code
00:19:03 <r0bby> oh yes that's code
00:19:18 <r0bby> options { ... } isn't
00:19:36 <burke> cule
00:20:18 <burke> well...there are a couple places where we could use ANTLR or Groovy...
00:20:26 <burke> have you worked with Hibernate much?
00:20:44 <r0bby> groovy can be used to write a DSL (which is basically what you guys need
00:20:51 <burke> yup
00:21:00 <r0bby> as could ruby
00:21:21 <r0bby> VERY VERY minimally
00:21:25 <burke> or smalltalk...oops I'm old again
00:21:34 <r0bby> no =( it's on my list
00:21:50 <r0bby> once the syntax of lisp stops making me wanna vomit; i'll look at that too
00:22:06 <r0bby> too many parenthesis
00:22:32 <burke> actually, I think it is pronounced: parenthethith (in lithp, that is)
00:22:49 <r0bby> haha
00:23:18 <r0bby> I think i just got an idea...
00:23:29 * r0bby goes to write a blog post recruiting for OpenMRS
00:23:47 <r0bby> I know my blog is aggregated by the NY linux users group
00:23:53 <burke> cule
00:24:00 <r0bby> lord knows who else uses it
00:24:43 <catullus> "scheme takes all defun out of lisp"
00:24:47 <r0bby> ....
00:24:54 <r0bby> scheme is a fucking lisp dialect
00:25:01 <catullus> ...get it?
00:25:11 <catullus> all ... defun
00:25:38 <burke> arrrgh.
00:26:16 <burke> "!naorg".reverse()
00:26:41 *** cancer has joined #openmrs
00:26:44 <catullus> =)
00:27:19 <r0bby> typing.
00:27:26 <r0bby> the blog post
00:27:32 <burke> alright kiddies...it's WAY passed my bedtime. c'ya later. look forward to chattin' some more.
00:27:43 <catullus> g'night; nice to electronically meet you
00:27:49 <burke> r0bby: don't hesitate to steal or point from/to here: http://openmrs.org/wiki/OpenMRS_Overview
00:28:09 <burke> yup. same to you.
00:28:09 <nribeka> night burke ...
00:28:12 <docpaul> night dude, i'm getting tired myself... happy to meet you chase
00:28:27 <docpaul> night rob and nri.. what's your first name?
00:28:29 <nribeka> still have to write BM25 with relevance feedback :(
00:28:54 <nribeka> nyoman, it's hard to pronounce hehe ...
00:29:05 <docpaul> nyoman, i'll remeber that
00:29:06 <catullus> more PL humor: beware! in C++ your friends can see your privates!
00:29:12 <docpaul> night nyoman...
00:29:23 <nribeka> night docpaul ...
00:29:24 <docpaul> chase, i hope to see you around here...
00:29:32 <catullus> i'll be around
00:29:32 <docpaul> get your pih partners to use irc. :)
00:29:35 <nribeka> its going to be a long night to me...
00:29:38 <catullus> i will haha
00:31:17 <nribeka> good night to you all and have a great weekend
00:33:37 <r0bby> http://robbyoconnor.blogspot.com/2008/03/wanna-make-some-money-while-making.html
00:33:38 <OpenMRSBot> <http://ln-s.net/1iI:> (at robbyoconnor.blogspot.com)
00:35:16 <r0bby> :)
00:35:22 <r0bby> Hope my wording strikes a nerve
00:35:24 <catullus> nice.. i'll forward something similar to my stanford CS listservs
00:39:37 <nribeka> robby: it surely going to attract lots of people :-)
00:39:47 *** burke has quit IRC
00:40:02 <nribeka> especially your blog is read by lots of people :-)
00:41:59 <r0bby> I hope so
00:43:29 <catullus> g'night
00:44:08 <catullus> congratulations on reaching the weekend
00:44:10 *** catullus has quit IRC
00:45:01 <r0bby> okay spammed java channels
00:46:40 <docpaul> heh, you rock r0bby.
00:46:41 <docpaul> thanks
00:46:49 <docpaul> i'm off to bed
00:49:17 <nribeka> good night docpaul
01:00:24 <r0bby> night docpaul.
01:17:25 <nribeka> robby are you still there?
01:28:47 *** nribeka has quit IRC
01:52:34 <r0bby> welp it aggregated
04:35:49 *** cancer has quit IRC
04:38:12 *** cancer has joined #openmrs
05:28:24 *** sioraiocht_ has joined #openmrs
05:37:21 *** sioraiocht has quit IRC
06:47:48 *** bwolfe has joined #openmrs
06:47:48 *** ChanServ sets mode: +o bwolfe
06:47:58 *** pygi has joined #openmrs
06:48:02 <pygi> hey folks :)
07:08:15 *** Keelhaul has joined #openmrs
07:08:15 *** ChanServ sets mode: +v Keelhaul
07:11:25 *** aciniglio has quit IRC
07:20:29 *** Keelhaul|afk has joined #openmrs
07:39:31 *** Keelhaul has quit IRC
07:45:30 *** Keelhaul|afk has quit IRC
08:20:28 *** burke has joined #openmrs
08:20:28 *** ChanServ sets mode: +o burke
08:24:03 *** pygi has quit IRC
08:50:36 *** bwolfe has quit IRC
09:11:05 *** atomicturtl1 has joined #openmrs
09:25:44 *** atomicturtle has quit IRC
09:44:35 *** silolit has joined #openmrs
10:07:32 *** silolit has quit IRC
10:39:17 *** burke has quit IRC
11:07:01 *** AndersG has joined #openmrs
11:08:19 *** burke has joined #openmrs
11:08:19 *** ChanServ sets mode: +o burke
11:39:53 <r0bby> burke: hey
11:42:09 <burke> hey r0bby
11:42:37 <burke> thanks for the blog post, btw
11:43:05 <burke> gotta run. i should be back around later today. later.
11:43:26 *** burke has quit IRC
12:18:29 *** atagar has joined #openmrs
12:32:49 *** atomicturtl1 is now known as atomicturtle
12:42:45 <r0bby> hai2u
13:49:58 *** Keelhaul|afk has joined #openmrs
13:50:54 *** atagar has left #openmrs
13:52:26 *** sioraiocht_ has quit IRC
13:53:14 *** cancer has quit IRC
13:54:32 *** pombreda has quit IRC
13:55:37 *** pombreda has joined #openmrs
14:00:49 *** sunbiz has joined #openmrs
14:04:50 <sunbiz> nice changes to the project page
14:08:33 *** sunbiz has left #openmrs
14:10:15 *** Keelhaul|afk has quit IRC
15:14:17 *** bwolfe has joined #openmrs
15:14:17 *** ChanServ sets mode: +o bwolfe
15:15:08 <r0bby> hey ben
15:15:12 <r0bby> :x
15:15:15 <bwolfe> hey r0bby
15:15:17 <r0bby> yeh slowly learning names :P
15:15:22 <bwolfe> heh
15:15:46 <r0bby> I've got a blog posted promoting openmrs for soc if you wanna spam it feel free: http://robbyoconnor.blogspot.com/2008/03/wanna-make-some-money-while-making.html
15:15:46 <OpenMRSBot> <http://ln-s.net/1iI:> (at robbyoconnor.blogspot.com)
15:16:01 <r0bby> already hit ##java, #java (efnet),#java (dalnet) and #java(undernet)
15:16:03 <bwolfe> well, a whois on my nick makes it easy for you :-)
15:16:20 <r0bby> that's work.
15:16:20 <bwolfe> r0bby: nice. :-)
15:16:41 <r0bby> I think i worded it in such a way it'll hit an emotional nerve
15:17:02 <r0bby> it came natural i think
15:17:03 <r0bby> :/
15:19:16 <r0bby> brm
15:19:28 <r0bby> I wanna fiddle w/ properties in java (the prototype jdk) :X
15:19:34 <r0bby> it's a fork of openjdk
15:19:41 <r0bby> I've been playing with closures and such
15:19:42 <bwolfe> yeah, openmrs tends to naturally pull at people's heart strings
15:19:58 <r0bby> I was thinking about writing a wicket front-end for openmrs
15:20:06 <r0bby> it'd get rid of this jsp-hell
15:20:08 <bwolfe> I'm excited about the closures possibliites in java
15:20:21 <r0bby> bwolfe: FCM is icky syntax
15:20:28 <r0bby> it's a neat idea
15:20:44 <r0bby> CICE+ARM is handy eliminates the potential for resource leaks
15:21:04 <r0bby> try-catch-finally becomes a thing of the past (still need to handle unchecked exceptions)
15:21:28 <r0bby> BGGA is neat if you've coded in groovy at least a bit
15:21:37 <r0bby> it's VERY similar syntax
15:22:26 <r0bby> somehow I have no clue Gafter stumbled onto my blog :x and came to my rescue of how to do SwingUtilities.invokeLater() w/ BGGA
15:22:43 <r0bby> but it's all exciting
15:22:56 <r0bby> there's one proposal that i don't think will ever see the light of day
15:24:50 <r0bby> properties jdk compiling :D
15:26:18 <bwolfe> I don't know what you're referring to with new java properties.
15:26:20 <bwolfe> link?
15:32:44 <r0bby> bwolfe: you ever code in C# (I haven't; but they have this concept called 'properties'
15:33:02 <r0bby> I'm kinda iffy on it; most of my examples came by reading the proposals
15:33:32 <r0bby> here's the proposal for properties
15:33:33 <r0bby> http://docs.google.com/View?docid=dfhbvdfw_1f7mzf2
15:33:34 <OpenMRSBot> <http://ln-s.net/1iMM> (at docs.google.com)
15:33:50 <r0bby> this looks neat: http://freddy33.blogspot.com/search/label/abstract%20enum
15:33:52 <OpenMRSBot> <http://ln-s.net/1iMN> (at freddy33.blogspot.com)
15:33:54 <bwolfe> I've done some c#.net...but only enough to fix a webapp for a company
15:33:56 *** Keelhaul has joined #openmrs
15:33:56 *** ChanServ sets mode: +v Keelhaul
15:34:11 <r0bby> but yeh
15:35:19 <r0bby> http://docs.google.com/View?docid=dfkvb9sc_0pcr8szdd
15:35:20 <OpenMRSBot> <http://ln-s.net/1iMQ> (at docs.google.com)
15:35:36 <r0bby> there are *SO* many proposals out there
15:36:07 *** nribeka has joined #openmrs
15:37:22 <r0bby> nribeka: hey, what did you need last night?
15:37:33 <nribeka> hey robby
15:37:41 *** pombreda has quit IRC
15:38:05 <nribeka> nothing just checking whether you're still there or not hehe ...
15:38:14 <nribeka> so whats new today?
15:39:41 <r0bby> nuffin
15:39:56 <r0bby> playing with java properties prototype; just compiled it
15:40:31 <r0bby> this shit is seriously a distraction
15:42:12 <r0bby> basically -- i work from specifications
15:42:44 <nribeka> wow ...
15:43:05 <r0bby> it's not bad
15:43:21 <nribeka> been here for a few days and i feel i come from the stone age ...
15:43:32 <r0bby> nribeka: this is all new stuff
15:43:44 <r0bby> it MAY or may not make it into java 7
15:44:50 <r0bby> nobody knows for sure; what IS known is that closures will be introduced in some form be it BGGA, CICE+ARM (Concise Instance Creation Expressions+Automatic Resource Management Blocks), or FCM (First-Class Methods)
15:45:10 <r0bby> BGGA isn't anything fancy; jsut the first letter of the last name of the peopke named on the proposal
15:45:26 <r0bby> CICE aims to make inner classes cleaner
15:45:37 <nribeka> haha ... they're all in your blog right
15:45:40 <r0bby> but it only works if the abstract class/interface has one and only one method
15:45:46 <r0bby> nribeka: pretty much yeh
15:46:03 <nribeka> i read them all and it makes me feel like i'm coming stone age haha ...
15:46:16 <nribeka> hope i can learn something from all of you guys :P
15:46:44 <r0bby> it's not that bad
15:46:51 <r0bby> i tried to explain em as clearly as i could
15:47:00 <r0bby> I'm learning them as i'm writing those
15:47:14 <r0bby> People are blogging left and right about this shit
15:50:35 *** sunbiz has joined #openmrs
15:50:50 <nribeka> yeah, all of them are interesting
15:51:48 <sunbiz> hi guys...
15:52:03 <r0bby> hai2u
15:52:14 <r0bby> if anybody kicks me for that, mark my word!
15:52:17 <sunbiz> I was looking at the logs and found the discussion about closures
15:52:20 * r0bby shales fosy
15:52:26 <r0bby> <<
15:52:32 * r0bby shakes fist*
15:52:43 <sunbiz> so..I thought I'd dump studying for sometime and get to the IRC
15:52:43 <r0bby> wait, there's a log
15:52:54 * r0bby hides all the drugs
15:52:54 <sunbiz> :))
15:53:11 <sunbiz> obviously...thats why u were high!!
15:53:28 <sunbiz> everyone already knows...no point hiding them now!!
15:53:56 <r0bby> lol nah
15:53:58 <r0bby> I dont do drugs
15:53:59 <nribeka> so you don't realize that this conversation is taped?
15:54:10 <nribeka> haha lolz ...
15:54:23 <r0bby> please everything you say is logged to my HDD in log files rotated daily.
15:54:24 <sunbiz> everything in the world is tapped... CIA knows everything :))
15:55:00 <r0bby> yup
15:55:20 <sunbiz> so r we already oving closures in openMRS ??
15:55:31 <r0bby> just say "assassinate and president" and BAM the Secret Service is at your door. Oh shit, They're probably on their way
15:55:39 <r0bby> sunbiz: well maybe
15:55:46 <r0bby> if i can figure out how to integrate groovy
15:55:53 <sunbiz> wouldnt that make openMRS JDK7 only!!
15:55:58 <r0bby> I'd like to get grails integrated; but it's gonna be tricky
15:56:08 <r0bby> sunbiz: think again
15:56:17 <r0bby> jdk7 doesn't have closures in it yet\
15:56:21 <sunbiz> grails... for what... Aint hibernate enough??
15:56:24 <r0bby> there are prototypes
15:56:31 <sunbiz> yea...but it will in some form or the other...
15:56:38 <r0bby> sunbiz: grails is the groovy 'rail' type thing.
15:56:46 <r0bby> sunbiz: hopefully
15:56:49 <sunbiz> robby: yea...I know that
15:56:50 <r0bby> and groovy has closures
15:57:29 <r0bby> watch this: def foo = [3,'hey',3.4f,3G].each { println it; }
15:57:40 <r0bby> that is a concept called 'duck typing'
15:58:00 <r0bby> and foo is a List (ArrayList by default)
15:58:12 <r0bby> 3G is of type BigInteger
15:58:12 <sunbiz> Lisp would do it long back
15:58:18 <sunbiz> so...it aint groovy alone
15:58:23 <r0bby> no shit.
15:58:39 <r0bby> sunbiz: every language in existence was influenced by some language and the line goes back and back
15:59:00 <r0bby> Also, by the way == is turned into .equals() in groovy :)
15:59:02 <sunbiz> yea...but my qiestion... why groovy or grails ?
15:59:09 <r0bby> because it's cool :>
15:59:13 <sunbiz> yea...I lvoe Ruby !!
15:59:18 <sunbiz> *love
15:59:26 <r0bby> sunbiz: but groovy integrates best with java.
15:59:34 <r0bby> not much of a learning curge
15:59:37 <r0bby> curve*
15:59:53 <sunbiz> no... JRuby :(( ...
15:59:53 <r0bby> Ruby there is a bit of a learning curve (not much; but still a curve nonetheless)
15:59:59 <r0bby> JRuby *IS* Ruby
16:00:10 <r0bby> just running over the JVM
16:00:11 <sunbiz> yea...and it runs on the VM
16:00:25 <r0bby> your point? you still have to write valid ruby syntax.
16:00:48 <r0bby> WHOA docpaul didn't notice you here
16:00:49 <sunbiz> yea... but then my point is whats the prob with the current openMRS ??
16:00:57 <r0bby> nothing
16:01:00 <r0bby> but it can be extended
16:01:12 <sunbiz> didn't some1 already say... "Dont mend if it aint broken"
16:01:23 <r0bby> that's not saying it can't be done...
16:01:30 <r0bby> or it wouldn't be a fun learning experience
16:01:52 <sunbiz> I got that...and hence I said Ruby is more fun
16:02:28 <r0bby> sunbiz: somebody already re-wrote openMRS using ruby on rails
16:02:38 <r0bby> i remember docpaul telling me about it
16:02:45 <r0bby> a few days ago as a matter of fact
16:02:49 <r0bby> couple?
16:02:51 <sunbiz> the whole things ??
16:03:08 <r0bby> yeh
16:03:17 <r0bby> they kicked themselves for it
16:03:37 <sunbiz> :)) then shouldn't we be doing rails already!??
16:03:39 <r0bby> grails has a problem because of the hibernate, aop, and all that jazz
16:03:45 <r0bby> sunbiz: nah
16:03:59 <sunbiz> why?
16:05:35 <sunbiz> robby: anyways...which one of the current impl for closures do you like??
16:06:00 <r0bby> haven't decided.
16:07:30 <r0bby> FCM has clumsy/gross syntax; CICE is nice; BGGA is groovy-like and neat; I haven't really played w/ them to push the limits so to speak yet
16:08:01 <r0bby> but according the the CICE spec; it only works for interfaces/abstract classes w/ a single method
16:08:13 <sunbiz> I've been playing and following them due to a lot of my student doubts coming up
16:08:38 <sunbiz> and also because I talk about Ruby all the time
16:08:59 <r0bby> Don't paint yourself in a corner
16:09:26 <sunbiz> and till now I seem to like CICE the most, cause its more like-Java
16:09:52 <sunbiz> yea... FCM makes it look like another language after sometime
16:09:55 <r0bby> sunbiz: "more -like java"
16:10:14 <r0bby> dude -- BGGA/FCM will change the language ;)
16:10:19 <sunbiz> yeah...with CICE you can keep you designs with inner classes in your mind
16:11:19 <r0bby> button.addActionListener(new ActionListener(ActionEvent e) { System.out.println("Hai2u"); } });
16:11:20 <sunbiz> I dont agree with BGGA changing the language though...
16:11:28 <r0bby> button.addActionListener(ActionListener(ActionEvent e) { System.out.println("Hai2u"); } });
16:11:31 <r0bby> okay that's CICE
16:11:59 <sunbiz> yea
16:13:18 <r0bby> a proposal directly related to CICE is Automatic Resource Management Blocks do(r = new BufferedReader(new FileReader(new File("names.txt")))) { String line; while((line = r.readLine()) != null) { System.out.println(line); }
16:13:28 <r0bby> that's an Automatic Resource Management block
16:14:02 <r0bby> OH you have to handle IOException there.
16:14:30 <sunbiz> yea... checked exceptions
16:14:32 <r0bby> i missed it; but you can just put throws IOException in your method signature.
16:15:06 <r0bby> what ARM does is eliminate the need for a finally { try { r.close() } catch(IOException e) {} }
16:15:47 <sunbiz> Isn't that good... all the new lerners always complain about Java being verbose
16:15:54 <r0bby> yes.
16:16:20 <r0bby> there's a way to clean that finally block up by passing a Closable to a helper method and letting that method handle it
16:17:06 <r0bby> but yeh.
16:17:19 <r0bby> anyways i have to go -- shit to do; people to kill; etc etc
16:17:50 <sunbiz> yea...I'm off too... getting back to studying!!
16:17:54 <r0bby> I never understand WHY people said it was verbose til i touched groovy :)
16:18:08 <sunbiz> or Ruby... :))
16:18:10 <r0bby> Molesting groovy was the best thing ever. It touched me in ways you'll know
16:18:13 <r0bby> never know*
16:18:39 <sunbiz> and I've seen 4th graders create blogs in Ruby in less than a week
16:19:05 <r0bby> gravl
16:19:11 <r0bby> groovyblogs
16:19:25 <r0bby> ^^ grails blog framework; groovy aggregator similar to planet.
16:19:39 <sunbiz> yea... tried those
16:19:48 <sunbiz> just like RoR
16:19:54 <r0bby> yes.
16:20:24 <sunbiz> lets not make it a Ruby Vs Groovy thing... its openMRS... remember!!
16:20:59 *** sunbiz has quit IRC
16:22:22 <nribeka> c u sunbiz and robby ... i'm still working on my crawler bm25 relevance feedback thing here ...
16:22:44 <r0bby> :)
16:22:46 <r0bby> bbl.
16:24:29 *** sunbiz has joined #openmrs
16:24:44 <sunbiz> hey...did anyone of u get eggs on the IRC ??
16:24:50 <sunbiz> I came back to ask that !??
16:26:19 <sunbiz> I guess everyone left with the eggs... and I'd also leave :(
16:26:46 *** sunbiz has quit IRC
16:38:55 *** burke has joined #openmrs
16:39:00 *** ChanServ sets mode: +o burke
16:39:49 *** ekrub has joined #openmrs
16:39:49 *** ChanServ sets mode: +o ekrub
16:41:47 *** burke has quit IRC
16:41:51 *** ekrub is now known as burke
16:55:06 <r0bby> eh what
17:12:52 *** ariane has joined #openmrs
17:33:03 <bwolfe> hey ariane
17:33:21 <bwolfe> let me know if I can answer any gsoc questions for you
17:34:57 *** codingmaster has joined #openmrs
17:37:40 <ariane> hi bwolfe I did see the OpenMRS project, it is very interesting
17:39:24 <ariane> I am looking at the information about development and documentation
17:44:21 <bwolfe> ok cool, let me know your thoughts :-)
17:49:50 *** burke has quit IRC
17:57:51 *** burke has joined #openmrs
17:57:51 *** ChanServ sets mode: +o burke
18:03:35 <OpenMRSBot> Recent updates in the world of openmrs: Burke Mamlin: Making a groovy module for OpenMRS <http://burkeware.com/blog/archives/9>
18:15:45 <r0bby> burke++
18:15:46 <r0bby> =D
18:16:37 <bwolfe> ha
18:16:55 <bwolfe> finally! someone as excited about the groovy module as burke is! :-p
18:17:08 <r0bby> burke
18:17:10 <r0bby> one thing
18:17:17 <r0bby> java.io.* is imported for you iirc
18:17:59 <r0bby> groovy is god.
18:18:03 <Keelhaul> or maybe it was anther age joke =o
18:18:51 <r0bby> yes it's imported for you.
18:19:17 <r0bby> the groovydocs says what's imported
18:19:49 <r0bby> bwolfe: good or bad thing?
18:23:41 <bwolfe> r0bby: well, good for burke.
18:23:49 <bwolfe> bad for me
18:23:54 <r0bby> why ? :P
18:24:09 <bwolfe> burke is always "grooby module this", "groovy module that"...blah blah groovy blah blah :-p
18:24:24 <r0bby> I'm guessing i'll just encourage that :P
18:24:46 <bwolfe> yeah, thats what I'm afraid of
18:24:51 <bwolfe> so...
18:25:01 *** bwolfe sets mode: -v r0bby
18:25:39 <bwolfe> :-D
18:26:02 <Keelhaul> lol
18:26:02 <bwolfe> although I don't think that does what I want
18:26:16 <bwolfe> r0bby doesn't seem to be saying anything, so maybe it does :-)
18:26:42 <Keelhaul> so iirc groovy is some scripting language?
18:26:42 <r0bby> :P
18:26:57 <bwolfe> java scripting, essentially
18:26:57 <r0bby> Keelhaul: yes
18:27:03 <Keelhaul> what uses it
18:27:08 <r0bby> dynamic scripting language built over the JVM
18:27:16 <r0bby> but it IS compiled
18:27:22 <r0bby> to valid java bytecode
18:27:27 <Keelhaul> =o
18:27:52 <r0bby> all the dynamic aspects are given to it via its Meta Object Prototol (each class has a MetaClass -- you can borrow methods; add methods etc
18:27:56 <Keelhaul> do browsers support it?
18:28:04 <r0bby> Keelhaul... no
18:28:18 <Keelhaul> so what kind of unholy clients use it
18:28:19 <r0bby> it's not javascript
18:28:27 <r0bby> Keelhaul: ever hear of grails?
18:28:28 <r0bby> :P
18:28:32 <Keelhaul> no =/
18:28:58 <r0bby> and also it's quick like burke's blog post said (and others actually) to rapidly put together things
18:29:14 <r0bby> Also, it integrates great w/ java.
18:30:42 <r0bby> Keelhaul: it makes working w/ XML easy too; both building and reading etc etc a whole multitude of things
18:31:37 <r0bby> bwolfe: are ya a doctor too?
18:33:17 <r0bby> Keelhaul: also building a swing app using groovy is less cumbersome and far less verbose than w/ java.
18:33:26 <Keelhaul> o
18:35:59 <r0bby> bwolfe: sorry but :x
18:36:13 <r0bby> I have a few people in other chans banned me from mentioning groovy ;x
18:39:01 <bwolfe> r0bby: not a doctor, no
18:39:06 <bwolfe> hopefully some day (soon) though
18:39:13 <bwolfe> (re)applying to med school this year
18:39:17 <r0bby> cool :)
18:39:38 <r0bby> I'll prolly have knowledge of the medical end of HIV/AIDs stuff soon
18:40:16 * r0bby loads the openmrs-groovy module into his IDE
18:40:29 <bwolfe> into the IDE?
18:40:39 <bwolfe> oh, the code for it
18:40:41 <bwolfe> nm
18:41:30 <r0bby> yeh
18:41:44 <r0bby> i use IDEA
18:42:00 <Keelhaul> lol our dept hates med majors
18:43:18 <r0bby> why for
18:43:29 <bwolfe> bioinformatics, right Keelhaul ?
18:43:37 <Keelhaul> medical informatics
18:43:41 <Keelhaul> same building actually
18:43:55 <Keelhaul> they say med majors are the biggest computer illiterates
18:46:24 <r0bby> Keelhaul: well duh
18:46:44 <r0bby> Keelhaul: introduce them to burke and paul :P
18:46:50 <Keelhaul> lol
18:47:04 <r0bby> They're not illiterate
18:48:45 <Keelhaul> bwolfe: do you want to change professions?
18:48:49 <Keelhaul> or a deeper understanding
18:49:54 <r0bby> okay groovy module is imported
18:50:03 <r0bby> you guys seriously need to switch to maven :)
18:50:20 <r0bby> mvn idea:idea eclipse:eclipse
18:50:36 <r0bby> one reason why i like maven
18:52:11 <r0bby> at current i have to generate the projects from the eclipse metadata files.
18:52:26 <r0bby> then import the modules.
18:52:42 <Keelhaul> what aboot netbeans
18:53:02 <r0bby> Keelhaul: have to have a seperate maven plugin -- but it's possible.
18:53:10 <r0bby> and i hate netbeans
18:53:13 <r0bby> my IDE is clean :)
18:53:36 <Keelhaul> why
18:53:39 <r0bby> burke: I'd be willing to work w/ you on the grails thing
18:53:45 <r0bby> b/c i like it
18:53:47 <Keelhaul> there are some features eclipse misses, it seems
18:53:50 <Keelhaul> like a swing editor
18:53:56 <r0bby> Keelhaul: OH GOD
18:54:04 <r0bby> that is precisely why i swing.
18:54:11 <r0bby> the code Matisse generates is hideous
18:54:34 <Keelhaul> meh
18:54:41 <Keelhaul> wysiwyg ftw =P
18:54:46 <r0bby> ...
18:54:50 <Keelhaul> i bet you're also a fan of latex
18:54:51 <r0bby> Keelhaul: learn how it works
18:54:55 <r0bby> Keelhaul: no
18:54:57 <r0bby> never used it
18:55:03 <r0bby> but coding swing by hand is easy
18:55:04 <docpaul> med majors are the biggest computer illiterates? :)
18:55:09 <docpaul> heheh
18:55:11 <r0bby> docpaul: kick hiM!
18:55:23 * r0bby chants kick him..kick him..kick him
18:55:34 * docpaul revs up his foot
18:55:35 <docpaul> hehe
18:55:36 <Keelhaul> yea, the messenger always takes the fall =/
18:56:02 <r0bby> you know the phrase don't shoot the messenger? Well, I don't like that one
18:56:04 <r0bby> it's fun
18:56:10 <docpaul> robby: see what burke was doing with the groovy module?
18:56:15 <r0bby> Yes
18:56:19 <r0bby> it's hot
18:56:33 <docpaul> next step of course is to influence the web app with groovy
18:56:36 <r0bby> I'm definitely willing to work w/ him on that
18:56:47 <docpaul> if we could do that... that'd be... well, revolutionary
18:56:51 <r0bby> Yeh
18:56:59 <docpaul> implementers can work with a scripting language instead of java
18:57:15 <docpaul> much lower barriers to entry
18:57:41 <r0bby> JRuby, Jython
18:57:43 <docpaul> your mission, if you choose to accept it, is to get a hello world printed somewhere on a openmrs interface page, with groovy. :)
18:58:04 <r0bby> somebody hack together an embedded jetty thing
18:58:16 <docpaul> whoops, wife is calling... bb
18:58:23 <Keelhaul> lmao
18:58:23 * r0bby looks at bwolfe
18:58:33 <r0bby> HAHAHA
19:04:07 <r0bby> docpaul: when you're around (or burke) ping me
19:20:20 <bwolfe> r0bby: not going to work on an embedded jetty :-p
19:20:27 <bwolfe> when you're done with it, let me know :-)
19:20:35 <r0bby> FUCKER
19:20:51 <r0bby> so I have to build a war just to fucking test my shit?
19:20:54 <r0bby> jesus
19:21:12 <r0bby> wait..
19:21:49 <r0bby> my IDE
19:21:49 <r0bby> :D
19:22:12 <bwolfe> bbl
19:22:43 <r0bby> you suck
20:10:53 *** ariane_ has joined #openmrs
20:10:53 *** burke has quit IRC
20:12:58 *** burke has joined #openmrs
20:12:58 *** ChanServ sets mode: +o burke
20:13:00 *** ariane has quit IRC
20:14:18 *** ariane_ has quit IRC
20:18:28 <bwolfe> r0bby: get that working yet?
20:19:14 <bwolfe> are you wanting jetty to be shipped with openmrs code? what advantage does that give us ?
20:19:28 <r0bby> bwolfe: just for testing purposes
20:23:39 <r0bby> hrm
20:25:56 <r0bby> I'll keep it in my local tree.
20:29:45 <r0bby> which directory contains all the stuff
20:29:46 <r0bby> web/?
20:35:17 *** georgy has joined #openmrs
20:40:59 <r0bby> I'll give you a patch soon if this works.
20:42:31 <r0bby> bwolfe: how do you test your code (aside from unit tests?)
20:45:49 <bwolfe> aside from unit tests just test via using the webapp
20:46:01 <bwolfe> r0bby: which stuff are you looking for?
20:46:17 <bwolfe> /web has all web viewing stuff (jsp/css/etc)
20:46:22 <r0bby> bwolfe: ah ok
20:46:33 <r0bby> I'm creating a quickstart package in src/tests
20:46:39 <r0bby> under web
20:46:44 <bwolfe> /src/web has the controllers and servlets
20:46:52 <r0bby> which will contain a class named StartOpenMRS
20:47:02 <r0bby> which will start an embedded jetty server
20:47:08 <r0bby> primarily this is for testing
20:47:12 <bwolfe> org.openmrs.Listener
20:47:22 <bwolfe> which is /src/web/org/openmrs/ I think
20:47:55 *** pombreda has joined #openmrs
20:48:16 * r0bby looks at the deployment descriptor
20:49:07 <r0bby> ah
20:49:09 <r0bby> ok
20:50:13 <docpaul> hello all. :)
20:50:26 <docpaul> i can answer any openmrs questions anyone might have
20:50:40 <docpaul> any google soc applicants, fire away
20:50:42 <r0bby> embedded jetty is gonna be a bitch
20:50:46 <r0bby> embedding*
20:51:37 <docpaul> are you trying to embed jetty so that you dont have to fool with tomcat/servlet container for testing?
20:51:45 * docpaul doesn't follow
20:51:59 <bwolfe> eclipse has a way to fire up a container from eclipse so that you don't need a separate app running
20:52:06 <bwolfe> is that something like what you're hoping for r0bby ?
20:52:34 *** codingmaster has quit IRC
20:52:39 <docpaul> heya ben
20:52:53 <bwolfe> hey paul
20:53:28 *** georgy has quit IRC
20:55:07 <r0bby> so does IDEA
20:55:11 <r0bby> i'm grabbing tomcat
20:57:41 *** elad has joined #openMRS
20:58:14 <r0bby> docpaul: yes
20:58:26 <r0bby> it's just easier; but not for openmrs i fear
20:58:26 <elad> hey hey r0bby
20:58:31 <r0bby> elad: hi
20:58:48 <r0bby> I'm eager to get this working :X
20:58:50 <elad> saw your web blog link in #java on efnet
20:59:31 <elad> I'm really interested.. trying to find the app for google summer of code
21:00:13 <docpaul> r0bby: where do we fall short?
21:00:25 * r0bby watches
21:00:33 <r0bby> elad: =)
21:00:38 <r0bby> I wanted that
21:01:15 <r0bby> wording hit a nerve eh?
21:01:37 <r0bby> elad: I'm doing openMRS for free; I meant to do it for the past year
21:01:37 <bwolfe> elad: http://soc2008.openmrs.org
21:01:45 <docpaul> r0bby: it would have hit a bigger nerve if you had said... "i'm going to be coding, and you should too!"
21:01:47 <bwolfe> or http://code.google.com/soc
21:02:04 <r0bby> docpaul: that'd be a lie
21:02:05 <elad> I would do it for free as well, I would love the exp. and hopefully being able to help people.
21:02:08 <r0bby> I'm fickle!
21:02:09 <r0bby> :)
21:02:39 <docpaul> elad: that's kind of you
21:02:44 <docpaul> do you have java experience?
21:03:29 * r0bby taps foot
21:03:31 <elad> I do.
21:03:43 <r0bby> I think google requires you to be an active student
21:03:59 <docpaul> it does... but our openmrs internship program does not
21:04:02 <r0bby> I actually just realized i broke matriculation by taking this semester off
21:04:13 <r0bby> ohhh
21:04:18 <docpaul> an openmrs intern is simply someone who wants to learn
21:04:21 <elad> I'm a second-year computer science student at Lamar University in Beaumont, Texas.. I'm really interested in web services.
21:04:39 <docpaul> we have independent funding for additional interns outside of google's funding
21:04:46 <docpaul> elad: great
21:05:03 <docpaul> what kind of work have you done in the past?
21:05:08 <elad> I have alot to learn however :)
21:05:09 <r0bby> :)
21:05:19 * r0bby contemplates :)
21:05:52 <elad> docpaul, I havent done much outside of school projects sadly.
21:06:12 <docpaul> elad: hey, that's honest... and there's no problem... there are plenty of ways you could be useful
21:06:18 <docpaul> go to http://projects.openmrs.org
21:06:21 <docpaul> and take a look
21:06:43 <docpaul> you could do some bug fixes, etc
21:06:48 * r0bby taps foot as jetty unzips
21:08:13 <r0bby> right now im just setting up my environment
21:08:13 <elad> docpaul, have you heard of Remote Operation, Inc?
21:08:33 <docpaul> nope
21:09:02 <r0bby> OH AWESOME
21:09:09 <r0bby> ClassCastException at startup w/ jetty
21:10:44 <r0bby> docpaul: question
21:10:55 <r0bby> I see two web facets in my project
21:11:00 <r0bby> which one do i deploy?
21:11:43 <docpaul> sorry, don't understand... can you ask in a different way?
21:11:55 <r0bby> nevermind
21:12:21 <elad> I've worked 30-40+ hours a week after school didn't leave me much time to work on other projects outside of school. However, I have a new job and im working about 25hours a week. I need to start doing something and webapps really interest me.
21:12:56 <docpaul> elad: that's what openmrs is
21:14:03 * r0bby bangs his head on his desk
21:19:22 <r0bby> GRRRRR
21:19:52 <bwolfe> ?
21:20:40 <r0bby> nothing carry oln
21:28:54 <r0bby> :|||||
21:29:25 <r0bby> i'm gonna hurt whoever wrote this ant deploy task
21:29:35 <r0bby> it's windows-centric
21:29:51 <bwolfe> its overridable
21:29:59 <bwolfe> ...and I use it in ubuntu
21:30:09 <bwolfe> ...and I wrote it, bring it on ;-)
21:30:37 <r0bby> I know it's overridable
21:30:41 <r0bby> but im WAYYYY too lazy
21:30:44 <bwolfe> assuming you're talking about: http://dev.openmrs.org/browser/openmrs/trunk/build.xml#L254
21:30:45 <OpenMRSBot> <http://ln-s.net/1iO3> (at dev.openmrs.org)
21:31:12 <r0bby> ahem no :P
21:31:17 <r0bby> properties.xml
21:32:01 <r0bby> I need coffee this is tiring
21:33:28 <r0bby> somebody remind me why i wanna do this?
21:33:38 <docpaul> musa. :)
21:33:47 <r0bby> because I don't like deploying to a standalone tomcat EVERYTIME i wanna see what something looks like
21:34:04 <r0bby> i had jetty working
21:35:20 <r0bby> im testing in jetty screw tomcat
21:35:29 <r0bby> tomcat refuses to start for me anyways
21:36:50 <bwolfe> r0bby: thats why I use junit tests to test up until I need to do display/visual stuff. it makes the code/try/fix cycle very quick
21:37:07 <r0bby> hrm yeh
21:37:08 <r0bby> =)
21:37:08 <bwolfe> and when doing web stuff, just use the deploy-web task to copy the jsp and css files to the right place
21:37:38 <docpaul> man, pacers have won 4 in a row
21:38:00 <bwolfe> which still makes them one of the worst in the nba right now :-/
21:38:18 <docpaul> they're 1 game out of 8th place
21:38:20 <r0bby> actually IDEA does everything :)
21:38:24 <docpaul> they're close to playoff bound
21:39:01 <bwolfe> so if idea has a container built in, why don't you use that??
21:39:34 <r0bby> it doesn't
21:39:40 <docpaul> so, ben... there's a new mall off of i-69 in noblesville area... that has a 16 show theatre, with imax in it
21:39:48 <docpaul> looks very cool
21:39:56 <docpaul> so you can go see a regular movie, or imax
21:40:10 <docpaul> about 3-4 miles from our new house
21:40:13 <r0bby> i have to define the container; but it detects facets (spring,hibernate, (web facets such as servlets,jsp etc)
21:46:27 *** jjzeidner has joined #openmrs
21:46:51 <jjzeidner> hello i have a question about the google/openmrs program
21:47:01 <docpaul> sure!
21:47:04 <docpaul> fire away
21:47:16 <jjzeidner> do you need to be currently attending university?
21:48:02 <docpaul> so, for the google program... you have to be an active student... however, for really good candidates, we have internship funding outside of the google SOC
21:48:27 <jjzeidner> ok... well I would be interested in the imaging project
21:48:34 <jjzeidner> im currently not attending university
21:48:42 <jjzeidner> but have a BS in CS
21:48:50 <jjzeidner> independent study in image processing
21:48:54 *** burke has quit IRC
21:48:58 <jjzeidner> and experience with server side image processing with JAI
21:49:11 <jjzeidner> which is proabably the best choice for that problem
21:49:24 <docpaul> tell me more
21:49:47 <jjzeidner> JAI is a java based API for dealing with large image data sets
21:50:06 <jjzeidner> it automatically manages tiling etc., as well as high level image operations such as contrast, edge detect, etc.
21:50:18 <jjzeidner> which are commonly used in medical imaging
21:50:37 <jjzeidner> it is open source, but I have to check the licensing
21:50:43 <jjzeidner> what OSS license are you using?
21:50:50 <docpaul> mpl
21:50:59 <jjzeidner> do you have any JPL modules?
21:51:42 <docpaul> not sre
21:51:44 <docpaul> er, sure
21:52:32 <docpaul> so you just graduated from college?
21:52:34 <jjzeidner> its the Advanced Digital Image Viewing and Annotation project
21:52:39 <jjzeidner> no graduated a while ago
21:52:47 <docpaul> and you have the summer available now?
21:52:50 <jjzeidner> im very involved with OSS
21:52:54 <jjzeidner> yes I have the summer available
21:52:57 <docpaul> cool.
21:52:57 <jjzeidner> entire summer
21:53:06 <docpaul> so, i'm the co-founder of the project
21:53:15 <jjzeidner> ok- its a great idea
21:53:50 <docpaul> thanks... you can get a quick overview of what our motivations are here: http://video.google.com/videoplay?docid=5181254373166129293
21:53:50 <OpenMRSBot> <http://ln-s.net/1hlN> (at video.google.com)
21:54:01 <jjzeidner> most of the issues involved with this portion of the project will be computing Tiles, and image processing algos
21:54:08 <jjzeidner> and JAI gives you a lot from that perspective
21:54:44 <docpaul> describe to me how you'd attempt to build the workflow...
21:54:52 <docpaul> would it be a standalone app, or all web-based?
21:55:28 <jjzeidner> I can more or less emulate the same server side functionality that you see iwth Google Maps
21:55:43 <docpaul> ok, that rocks
21:55:56 <docpaul> have you done something like that before?
21:56:00 <jjzeidner> theres some OSS code available
21:56:04 <jjzeidner> Ka-Map
21:56:16 <jjzeidner> ive used GMaps quite a bit
21:56:45 <docpaul> would you be willing to receive an internship outside of the google process?
21:56:48 <jjzeidner> I understand how the Jscript fits together
21:56:51 <jjzeidner> no outside grants, no
21:57:07 <docpaul> b/c i'm pretty sure that you couldn't get google to fund you (given that you're not a student)
21:57:16 <jjzeidner> oh sorry, yes I would be willing to accept other grants!
21:57:23 <docpaul> we have our own internship program
21:57:29 <jjzeidner> ah
21:57:31 <docpaul> for year round people like yourself
21:57:39 <jjzeidner> how does that work precisely?
21:58:00 <docpaul> very similarly to google summer of code, but we've gotten grant funding to support 20 more internships
21:58:09 <docpaul> we do the paperwork... same basic model
21:58:18 <jjzeidner> what are the criteria?
21:58:30 <docpaul> an intern is someone who wants to learn openmrs
21:58:36 <docpaul> you have to be stellar
21:58:52 <jjzeidner> im a very good programmer and I understand image processing well
21:59:09 <docpaul> it's mostly designed for building capacity in the developing world (we like to take on african developers), but that's not hard and fast
21:59:27 <jjzeidner> im watching your video right now
22:00:05 <docpaul> you would have to be committed just like a regular summer job...
22:00:11 <jjzeidner> so this platform would be deployed in 3rd world
22:00:20 <jjzeidner> i can give you a full commitment
22:00:24 <docpaul> it's already deployed in a dozen countries
22:00:40 <jjzeidner> great!
22:00:42 <docpaul> so, yes...
22:00:48 <docpaul> it's taking off quickly
22:01:10 <docpaul> what's the best thing you've ever coded?
22:01:11 <jjzeidner> theres a lot of vendor lock in in medical data from what i understand
22:01:24 <jjzeidner> hmm...
22:01:27 <docpaul> don't tell anyone, but we're trying to disrupt that. :)
22:01:50 <jjzeidner> the biggest job i did was designing infrastructure for AIG International
22:02:09 <jjzeidner> I did some early web mapping for Childrens Television Workshop as well
22:02:57 <docpaul> you say you've been involved with open source for a while
22:02:58 <docpaul> how so?
22:03:23 <jjzeidner> using Ubuntu, participating in LUGs, using and promoting OSS for use in small business
22:04:05 <jjzeidner> I would like to be able to work on a serious OSS project though, havent really had the opportunity to contribute to anything major
22:04:06 <docpaul> would you be willing to knock off a bug or two... or code a small little feature into openmrs to see what you're capable of?
22:04:12 <jjzeidner> sure!
22:04:15 <docpaul> this might very well be your chance
22:04:40 <docpaul> so, i want you to talk to bwolfe when he wakes up again
22:04:55 <docpaul> tell him that we talked, and that you want to help him build up complex_obs
22:05:01 <jjzeidner> ok- just curious where are you located right now?
22:05:06 <docpaul> would you like me to give you an overview?
22:05:10 <jjzeidner> sure
22:05:11 <docpaul> i'm in indianapolis
22:05:16 <jjzeidner> ok im in Phoenix
22:05:27 <jjzeidner> actually Tucson at the moment
22:05:29 <docpaul> i like scottsdale
22:05:40 <jjzeidner> I lived there for 2 years
22:05:42 <docpaul> i did a lot of consulting for your health information exchange initiative in az
22:05:58 <r0bby> heh
22:06:02 <docpaul> anyways, complex_obs
22:06:02 <jjzeidner> Do you get involved with PLUG?
22:06:05 <jjzeidner> ok
22:06:22 <docpaul> in short, patients have encounters...
22:06:29 <docpaul> interactions with health care environments
22:06:42 <docpaul> and inside these encounters, they have 1 to n observations
22:06:50 <docpaul> each observation is defined by a concept
22:07:11 <docpaul> the core of our observation repository model is an EAV approach
22:07:32 <docpaul> that is, we relate the question/answer pairs to concepts defined in the repository
22:07:35 <docpaul> follow so far?
22:07:40 <jjzeidner> yes
22:07:56 <docpaul> ok... so, a simple obs is a granule of data
22:08:04 <docpaul> for example, a hemoglobin of 13
22:08:13 <docpaul> or a urine color of yellow
22:08:27 <docpaul> but a complex_obs is a rich data unit
22:08:31 <docpaul> a text report...
22:08:35 <docpaul> or.. an image. :)
22:08:57 <jjzeidner> ok
22:09:10 <docpaul> in preparation for the google summer projects, ben is working on making the foundational code for complex_obs
22:09:22 <docpaul> beefing the API, etc.
22:09:28 <r0bby> mm beef.
22:09:31 <docpaul> so, help him with that...
22:09:42 <docpaul> and if ben thinks you're up to snuff... i will get you an internship
22:09:44 <docpaul> deal?
22:09:51 <jjzeidner> sounds fair
22:09:54 <jjzeidner> thank you
22:10:20 <docpaul> no need for thanks... thrilled that you're interested in our project
22:10:39 <docpaul> always flattering to have folks like you want to help
22:10:44 <Keelhaul> hm
22:10:53 <jjzeidner> great!
22:10:53 * r0bby shoves Keelhaul off a bridge
22:11:07 <r0bby> Sorry, i'm getting pissed @ tomcat
22:11:07 <Keelhaul> if he never actually has to see each other
22:11:15 <Keelhaul> can you call it an externship? =P
22:11:24 <r0bby> sure
22:11:34 <r0bby> but the hope is that you stay on so you eventually meet :P
22:11:45 <jjzeidner> of course
22:11:47 <docpaul> keel: you all can call it whatever you want... but the goal is to create a community of people that understand and support openmrs. :)
22:11:47 <Keelhaul> i wasnt talking about myself lol
22:11:52 <r0bby> and then of course, the drugs are exchanged; the goat is sacrificed and you know the rest
22:12:04 <Keelhaul> =o
22:12:04 <docpaul> it's unrealistic to expect that people can dedicate their time without something to put food on their table
22:12:13 <Keelhaul> true
22:12:29 <jjzeidner> do these other internships have the same structure as the google ones?
22:12:33 <docpaul> so we like to create stipends so that people can focus on learning and being involved
22:12:37 <docpaul> yes
22:12:49 <Keelhaul> do you guys do it as your primary task though?
22:12:55 <docpaul> we're not paying for developers... we're making stipends to protect people's time
22:12:56 <jjzeidner> it would be great to be able to work on something like this for a few years at least!
22:13:04 <Keelhaul> i mean the pih/regenstrief ppl
22:13:13 <docpaul> Keelhaul: yep, it's my career
22:13:18 <Keelhaul> thats cool
22:13:20 <docpaul> but i don't take any pay for my openmrs work
22:13:24 <jjzeidner> do you see OpenMRS as eventually penetrating the US market?
22:13:26 <Keelhaul> doing something you actually want to do etc
22:13:27 <Keelhaul> heh
22:13:47 <docpaul> jjzeidner: it wasn't our intention, but it's already starting to happen
22:13:53 <Keelhaul> really?
22:14:02 <jjzeidner> really? in lower income regions?
22:14:05 <docpaul> yep, in los angeles and maryland for a fact
22:14:24 <docpaul> it's being implemented in skid row for tuberculosis clinics
22:14:24 <Keelhaul> isnt there a huge barrier of privacy laws and commercial lobbyism in industrial countries?
22:14:28 <jjzeidner> i understand the economic effect well- I watched this happen with many technologies
22:14:46 <docpaul> Keelhaul: yes, and i have no desire of trying to fight all of that
22:15:03 <jjzeidner> have you run into patent infringement?
22:15:05 <docpaul> we're open source, and if people want to use it for other purposes, i'm pleased for them
22:15:35 <docpaul> oh heck no, the foundation of our work is based upon over 30 years of research from the institution i work at
22:15:51 <docpaul> this is our work
22:15:55 <docpaul> we don't steal
22:16:05 <jjzeidner> Bruce Perens wrote a great paper on patents + OSS
22:16:35 <Keelhaul> patents can be a pain..
22:16:49 <jjzeidner> are you on Ohloh?
22:16:49 <docpaul> i would love nothing more than to see the US medical record system market become completely disrupted
22:16:50 <Keelhaul> there are companies that live of patent lawsuits heh
22:16:56 <docpaul> but it's not why we started this
22:17:07 <Keelhaul> employing more lawyers than devs
22:17:10 <docpaul> we started this to help the HIV crisis in Africa
22:17:17 <jjzeidner> Keelhaul: not surprising
22:17:23 <docpaul> but we don't believe in vertical system design
22:17:32 <Keelhaul> docpaul: do you know Soarian
22:17:32 <docpaul> so we built something that's generalizable and scalable
22:17:38 <docpaul> yep
22:17:53 <docpaul> siemens stuff
22:17:56 <Keelhaul> i'm actually trying to get an internship with siemens medical solutions
22:18:07 <docpaul> cool
22:18:07 <Keelhaul> because our department has good connections with them
22:18:25 <docpaul> Keelhaul: where do you work?
22:18:28 <Keelhaul> but i prolly wont be a student anymore by then, dunno if that would be possible then =/
22:18:35 <Keelhaul> nowhere atm, i'm working on my masters thesis..
22:18:35 *** bwolfe has quit IRC
22:19:16 <docpaul> oh, your academic department
22:19:19 <docpaul> my misread
22:19:22 <Keelhaul> yea
22:19:29 <r0bby> UGGGGGGGGGGGGGH
22:19:30 <r0bby> :(
22:19:31 <Keelhaul> sorry, i wasnt very precise
22:19:55 <Keelhaul> docpaul: so is siemens one of those market hogs?
22:20:15 <jjzeidner> docpaul: you can reach me at jjzeidner -at- gmail.com
22:20:19 <docpaul> you know, it's hard to blame the emr vendors in the US
22:20:32 <docpaul> they're doing simply what they've been incentivized to do
22:20:55 <docpaul> make EMR systems, but not do it in a way that allows the data underneath to be interoperable with another system
22:21:27 <docpaul> in fact, it's more money in their hands to not be interoperable, as it's custom interfaces at a price
22:21:40 <Keelhaul> yea =/
22:21:54 <docpaul> i believe the only way to circumvent that is to make an open source "sled" upon which vendors can innovate features
22:22:02 <docpaul> i'd like to see that
22:22:48 <docpaul> i'd never be too overconfident/foolish to think that i could do that with openmrs, but i'd be open to such a target if the community progressed appropriately
22:22:50 <docpaul> who knows
22:23:14 <docpaul> i'm focused on saving the lives of people in developing countries for now
22:23:16 <Keelhaul> the sled would be the openmrs data model + api?
22:23:25 <docpaul> that's why i started this, and i dont want to lose sight of that
22:23:42 <docpaul> keel: yeah
22:24:00 <docpaul> the more people kick it, the better and more robust it gets
22:24:18 <docpaul> i believe in the bazaar. :)
22:24:52 <Keelhaul> lol
22:25:21 <Keelhaul> what if several different movements take the development in different directions
22:25:35 <docpaul> not sure...
22:25:47 <docpaul> once again, my goals are a little more pedestrian than world domination
22:25:51 <docpaul> :)
22:25:54 <Keelhaul> hehe
22:26:08 <jjzeidner> Keelhaul: you mean like a 'forking' situation?
22:26:14 <Keelhaul> yea
22:26:30 <jjzeidner> i find that as long as project leadership remains equitable its rarely a problem
22:26:34 <docpaul> if the opportunities presented themselves to be disruptive on the larger stage... at some level, i'd have to do what i could to support that
22:26:55 <docpaul> jj: openmrs ethos is something very important to me
22:27:07 <docpaul> i want it to feel like a family
22:27:19 <docpaul> we do consensus decision making whenever possible
22:27:28 <docpaul> it slows things down, but it's the right thing to do
22:27:36 <jjzeidner> OSS has a way of almost enforcing that attitude i find
22:27:44 <docpaul> we're very informal... we drink beers together
22:28:02 <docpaul> we all respect each other... it's a cool thing that's evolved
22:28:06 <jjzeidner> so you're all in Indianapolis?
22:28:35 <docpaul> no, the what made openmrs a collaborative effort was initially led by regenstrief (indianapolis) and partners in health (boston)
22:28:48 <docpaul> it's subsequently grown way beyond that
22:29:03 <jjzeidner> so you're drinking tele-beers together :) ?
22:29:08 <docpaul> but we all try to have open forums to get together and talk openmrs
22:29:18 <docpaul> no, we meet up with the boston folks at least every other month
22:29:22 <Keelhaul> skype beer plugin =)
22:29:23 <docpaul> and we have user group meetings
22:29:29 <jjzeidner> ah ok
22:29:36 <docpaul> we've had two so far... the last one had close to 200 attendees
22:29:42 <jjzeidner> wow
22:29:52 <docpaul> it was amazing
22:29:57 <docpaul> it made my knees buckle
22:30:10 <jjzeidner> yes sometimes OSS projects can really explode
22:30:15 <docpaul> both have been in south africa
22:30:20 <docpaul> beautiful place
22:30:48 <jjzeidner> so i hear
22:30:55 <docpaul> we have to have it in a different area this summer b/c we outgrew the accomodations
22:31:08 <jjzeidner> how old is the project?
22:31:21 <docpaul> what's amazing is that i dont even help with any of the meeting planning... i just show up
22:31:31 <docpaul> we have an awesome, dedicated team
22:31:33 <docpaul> 4 years
22:31:54 <jjzeidner> so you are living on grants?
22:32:05 <docpaul> openmrs?
22:32:06 <docpaul> yes.
22:32:13 <jjzeidner> and youre an MD?
22:32:32 <docpaul> yes... i have a clinical practice, and i personally have nih research funding
22:32:40 <jjzeidner> :respects you already
22:32:58 <docpaul> nah... not a big deal. :)
22:33:04 <docpaul> just different school
22:33:16 <jjzeidner> a lot of doctors these days are in it for the wrong reasons you might say
22:33:22 <docpaul> tell me about it
22:33:25 <Keelhaul> lol
22:33:31 <Keelhaul> golf handicap
22:34:45 <jjzeidner> how many official members of the team?
22:35:20 <docpaul> sheesh... hard one to count... there are 5 people @ RG that work on openmrs a lot... another 4 or 5 that dance around the periphery
22:35:37 <docpaul> pih probably has around 10 folks in various capacities
22:35:58 <docpaul> another 10 or so heavy workers outside of those two facilities...
22:36:13 <docpaul> and around 150-200 other implementers and part time developers
22:36:18 *** nribeka has quit IRC
22:36:23 <docpaul> pretty active mailing list
22:36:33 <docpaul> mailing lists...
22:36:43 <jjzeidner> you chose not to be on sourceforge?
22:36:58 <docpaul> yeah, we wanted to manage our own svn repository
22:37:03 <jjzeidner> ah ok
22:37:13 <docpaul> i found sourceforge back in 2004 to be... well, unwieldy
22:37:30 <jjzeidner> if you havent already check out ohloh, they have very cool features
22:37:31 <docpaul> it's better now, but we werent big cvs fans
22:37:37 <docpaul> i think we're on there
22:38:16 <jjzeidner> they have a cost calculator applet thats a lot of fun
22:38:20 <jjzeidner> not sure how accurate it is
22:38:27 <Keelhaul> welp almost 6am, sleep time =/
22:38:28 <Keelhaul> gnite
22:38:45 <r0bby> for the LOVE OF GOD
22:39:09 <r0bby> why is tomcat/jetty being such a mean dirty...
22:39:22 <r0bby> which version of tomcat do you use docpaul
22:39:28 <jjzeidner> are you using Server side java in OpenMRS?
22:39:33 <docpaul> 7
22:39:47 <r0bby> it's not even available yet...
22:39:48 <docpaul> 6 and 7 are used a lot
22:39:51 <r0bby> you mean 6?
22:39:53 <docpaul> yes
22:39:57 <docpaul> sorry
22:39:59 <docpaul> 5 and 6
22:40:25 <jjzeidner> are you using GWT at all?
22:40:38 <docpaul> jj: it's a web application that's deployed in a servlet container
22:40:49 <jjzeidner> great- i know a lot about SS Java
22:41:06 <jjzeidner> so youre using Tomcat exclusively?
22:41:22 <docpaul> no... people have used glassfish and jboss
22:41:24 <r0bby> I'm watching this supreme court oral argument on CSPAN
22:41:32 <docpaul> it works pretty well in both supposedly
22:41:36 <jjzeidner> ok
22:41:41 <docpaul> but i'm a tomcat guy
22:42:06 <jjzeidner> i like tomcat as well, anything from ASF is great
22:42:07 <docpaul> the war deploys pretty seamlessly in both, from what i understand
22:42:14 <r0bby> :/
22:42:30 <jjzeidner> docpaul: surprising
22:43:08 <docpaul> we're not using google's stuff
22:43:18 <docpaul> yet
22:43:20 <jjzeidner> GWT is a great technology
22:43:23 <r0bby> why okay -- why the HELL won't tomcat start
22:43:24 <jjzeidner> BSD licensed
22:43:46 <docpaul> so maybe you can show us the light. :)
22:43:53 <docpaul> we use dwr
22:43:53 <jjzeidner> managing complex GUIs is very easy with GWT
22:44:02 <docpaul> and dojo
22:44:06 <docpaul> but moving over to
22:44:13 <jjzeidner> you should be using GWT if youre using AJAX
22:44:22 <jjzeidner> user base is growing fast
22:44:37 <docpaul> can't remember what the team decided to move over to
22:44:40 <jjzeidner> plus all code is in JAVA
22:44:53 <jjzeidner> reduces management liability by a lot of youre using servlets
22:44:57 * r0bby smacks jjzeidner
22:45:29 <jjzeidner> hey why the smack?
22:46:30 <jjzeidner> im guessing you didnt choose GWT ;)
22:46:46 <docpaul> ah yes, jquery
22:47:24 <jjzeidner> ok
22:48:10 <docpaul> anyways... talk to ben...
22:48:16 <docpaul> bwolfe@<<EMAIL ADDRESS REDACTED>>
22:48:40 <jjzeidner> I should go ahead and send him an email?
22:49:04 <docpaul> i think this "dry run" will be good for you anyways, as you'll be relying on that code for your further work
22:49:12 <docpaul> sure
22:49:13 <jjzeidner> ok sounds good
22:49:36 * r0bby goes to get coffee
22:50:06 <jjzeidner> btw- what RDBMS are you using?
22:50:30 <docpaul> default is mysql... but we use hibernate, so at some level, we're agnostic
22:50:36 <docpaul> some have used postgres
22:50:39 <docpaul> some have used oracle
22:50:40 <jjzeidner> ok
22:51:39 <docpaul> jj: happy you stopped by tonight... i look forward to seeing if we can make a fit happen. :)
22:51:57 <docpaul> you seem like the kind of guy that is in it for the right reasons
22:52:15 <docpaul> it's not so much the money as it is the experience you'll get from it
22:52:16 <jjzeidner> docpaul: likewise! I will contact ben and tell him we want to take a dry run and see if we can work together
22:52:22 <jjzeidner> sure
22:52:54 <jjzeidner> docpaul: its quite impressive to meet an MD doing something like this
22:53:12 <docpaul> that's kind of you... but you can't shake the geek out of a geek
22:53:13 <r0bby> :|
22:53:24 <jjzeidner> just curious: did you see 'Sicko'?
22:53:30 <docpaul> not ye
22:53:31 <docpaul> t
22:53:35 <r0bby> now somebody help me before i go and code my properties example :P
22:53:48 <r0bby> and shoot up this channel
22:53:51 <docpaul> r0bby: i'll try
22:53:56 <docpaul> bang bang
22:53:57 <r0bby> scarface style!
22:54:12 <r0bby> "Say Hello to my little friend!"
22:54:15 <docpaul> what are you trying to work on?
22:54:26 <r0bby> getting tomcat working.
22:54:32 <docpaul> i hope you're going to take a stab at the groovy integration
22:54:41 <docpaul> what the hell... tomcat is so.. trivial
22:54:44 <docpaul> even i can do it
22:55:02 <docpaul> can you get ot the management interface?
22:55:25 <r0bby> I am
22:55:26 <docpaul> are you getting errors when you try to deploy or something?
22:55:33 <r0bby> im getting errors STARTING it
22:55:37 <docpaul> sec...
22:55:40 <r0bby> The groovy is indeed on my list
22:56:14 <docpaul> http://openmrs.org/wiki/Step-by-Step_Installation_for_Developers
22:56:15 <OpenMRSBot> <http://ln-s.net/1iOR> (at openmrs.org)
22:56:37 <docpaul> i bet you haven't created properties files
22:57:15 *** Keelhaul has quit IRC
22:57:35 <r0bby> http://eugeneciurana.com/pastebin/pastebin.php?show=14184
22:57:43 <OpenMRSBot> <http://ln-s.net/1iOS> (at eugeneciurana.com)
22:58:05 <r0bby> brb
22:58:14 <docpaul> oh haha... you can't even get tomcat to run
22:59:14 <docpaul> http://openmrs.org/wiki/Linux_guide
22:59:29 <docpaul> export CATALINA_HOME=/path/to/tomcat_path
23:02:02 <r0bby> SHUT UP
23:02:05 <r0bby> i got it running
23:02:09 <r0bby> before
23:02:30 <docpaul> one must crawl before they walk. ;)
23:02:41 <r0bby> oh shove it
23:02:51 <r0bby> I'm perfect
23:03:14 <docpaul> teehee... thanks robby for your time... even though i havent met you in person, it means a lot
23:03:21 <docpaul> i appreciate you
23:07:12 <r0bby> docpaul++
23:08:43 *** jjzeidner has quit IRC
23:09:55 <r0bby> I got it
23:10:35 <docpaul> :)
23:10:36 <docpaul> good deal
23:10:49 <r0bby> now running install
23:10:55 <r0bby> i swear im not an idiot :(
23:11:04 <r0bby> i set tomcat up once before :(
23:11:08 <docpaul> i know better than that
23:22:23 *** jjzeidner has joined #openmrs
23:26:30 <r0bby> db set up!
23:26:46 <r0bby> using mysql i guess :P
23:30:13 <r0bby> i guess i'll deal w/ this as is
23:30:39 <r0bby> develop; write unit test; ant dist -> manually copy to webapp dir
23:32:43 <r0bby> docpaul: http://mybawx.org/web/openmrs.png
23:33:22 <docpaul> hurray. :)
23:34:18 <r0bby> okay so this is gonna be annoying
23:35:19 <r0bby> now let's see OKAY
23:35:22 <r0bby> we're set!
23:35:58 <r0bby> so basically to get it to talk to the views; i'd use an extension right?
23:36:12 <r0bby> if i understand the architecture
23:36:42 <docpaul> you can write to the core if you want... but you won't be able to submit it... modules give you the ability to share your work immediately
23:37:04 <docpaul> if the community thinks you write good code, then you'll get commit rights
23:37:13 <docpaul> fair enough?
23:37:49 <r0bby> i'd prefer to not write to the core
23:38:00 <r0bby> Burke's code is nice.
23:38:27 <docpaul> i think to get started, just play within your local copy
23:38:42 <docpaul> and then once you feel you got your training wheels on, start making a module
23:39:25 <docpaul> or if you're working on groovy module, you can talk to burke about editing that source
23:39:39 <r0bby> I wanna
23:39:46 <r0bby> I just wanted to get this stuff set
23:39:53 <r0bby> the drudge work of setting up the environment
23:39:58 <docpaul> we're flexible... but we just make people earn commit rights
23:40:01 <r0bby> the coding is actually thr easy part
23:40:08 <r0bby> good way to do things
23:40:38 <docpaul> modules give people all the flexibility they need
23:40:44 <docpaul> nothing you really cant do in a module
23:40:54 <docpaul> pretty impressive actually
23:40:57 *** nribeka has joined #openmrs
23:41:22 <docpaul> if there's an extension point you need, ben will add it
23:41:37 <r0bby> I still don't know what the hell to do
23:41:52 <r0bby> http://projects.openmrs.org
23:41:56 <docpaul> check this out:
23:41:59 <r0bby> for me to click
23:42:16 <docpaul> http://burkeware.com/blog/archives/9
23:42:24 <r0bby> i saw that!
23:42:38 <r0bby> and he made a technical error of sorts
23:42:48 <docpaul> help him with his goal
23:42:49 <r0bby> java.io is imported for you in groovy.
23:43:13 <docpaul> While the ability to execute some scripts on the fly can be fun…maybe even handy for testing out code during development, my real hope is to evolve toward a Grails module that could facilitate rapid prototyping of web forms or quick & dirty report pages.
23:43:32 <r0bby> HAHHA
23:43:39 <r0bby> http://burkeware.com/blog/wp-content/uploads/2007/12/groovy-scripting.gif
23:43:40 <OpenMRSBot> <http://ln-s.net/1iOj> (at burkeware.com)
23:43:45 <r0bby> Horatio Hornblowe
23:43:45 <r0bby> r
23:44:03 <docpaul> :)
23:44:16 <docpaul> mine is Joseph Schnogenlocker
23:44:28 <r0bby> wtf that sounds german
23:44:33 <docpaul> hehe
23:44:55 <r0bby> How offensive would it be if i made a patient named Adolf Hitler and Joseph Stalin
23:45:02 <r0bby> nevermind
23:45:03 <r0bby> VERY
23:45:18 <r0bby> ;x
23:45:21 <docpaul> one of those closed loop conversations
23:45:50 <r0bby> yeh
23:45:56 <r0bby> damn them voices.
23:47:29 <docpaul> so beat on burke's dream some... you're the right guy for the job
23:47:45 <docpaul> help us figure out if it's even possible
23:52:25 <r0bby> I don't see how grails would work =/
23:52:35 <r0bby> but this groovy module is handy
23:54:46 <r0bby> I noticed burke just coded a jsp into his module directly
23:55:15 * r0bby COULD code an advice class to invoke my module
23:55:16 <r0bby> :/
23:55:31 <r0bby> I need to read up