{"id":1802,"date":"2009-03-18T16:01:56","date_gmt":"2009-03-18T21:01:56","guid":{"rendered":"http:\/\/bobbeaty.com\/wp\/?p=1802"},"modified":"2009-03-19T04:02:10","modified_gmt":"2009-03-19T09:02:10","slug":"finally-getting-to-be-productive","status":"publish","type":"post","link":"https:\/\/bobbeaty.com\/wp\/archives\/1802","title":{"rendered":"Finally Getting to be Productive"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/bobbeaty.com\/wp\/wp-content\/uploads\/2008\/06\/webdevel.jpg\" alt=\"WebDevel.jpg\" border=\"0\" width=\"128\" height=\"128\" align=\"right\" \/><\/p>\n<p>Today I'm finally getting to be productive on the job. I've got all the pieces worked out in my head, and on paper, and it looks like the best way to go about putting together this intraday P\/L tool is to take an existing P\/L service and add an <a href=\"http:\/\/www.h2database.com\/\">H2<\/a> in-memory database with triggers to save it all to a back-end MS SQL Server for persistence, and then use the <a href=\"http:\/\/code.google.com\/apis\/visualization\/\">Google Visualization API<\/a> to present the data fetched from the <a href=\"http:\/\/www.h2database.com\/\">H2<\/a> database for the client.<\/p>\n<p>It's got a few, solid, working components, and while they probably haven't been used in just this way in the past, there should be very little concern that they are going to work in this instance. The only trick is that there isn't a <a href=\"http:\/\/code.google.com\/apis\/visualization\/\">Google Visualization API<\/a> <a href=\"http:\/\/code.google.com\/apis\/visualization\/documentation\/dev\/implementing_data_source.html\">Data Source<\/a> in Java. They have Python, PHP, and .NET, but not Java. OK, so I need to create the DataTable and supporting API in Java for the servlets to use. Not bad.<\/p>\n<p>So I fire up <a href=\"http:\/\/www.barebones.com\/products\/bbedit\/\">BBEdit<\/a>, create a <a href=\"http:\/\/git-scm.com\/\">git<\/a> repo, and create the classes I need. Since the Shop is big into unit testing, I'm trying <a href=\"http:\/\/www.junit.org\/\">JUnit<\/a>, which isn't bad, but it's nothing you can't do in isolation, and writing good tests is still a <em>non-trivial<\/em> task, and slows down coding <strong><em>significantly.<\/em><\/strong> However, it'll let everyone feel like I'm fitting in if I do all the tests like they would - or maybe even a little better.<\/p>\n<p>Finally, I need to start to use <a href=\"http:\/\/ant.apache.org\/\">ant<\/a> as that's another big thing here. I like Makefiles, but the only real difference I see in <a href=\"http:\/\/ant.apache.org\/\">ant<\/a> is the name of the file (<tt>build.xml<\/tt>) and the format (XML). Other than that, it's targets and actions. Can't get much simpler than that.<\/p>\n<p>So thankfully, I'm productive again - with <a href=\"http:\/\/git-scm.com\/\">git<\/a> (yeah), <a href=\"http:\/\/www.junit.org\/\">JUnit<\/a> and <a href=\"http:\/\/ant.apache.org\/\">ant<\/a>. Not bad for a day.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today I&#8217;m finally getting to be productive on the job. I&#8217;ve got all the pieces worked out in my head, and on paper, and it looks like the best way to go about putting together this intraday P\/L tool is to take an existing P\/L service and add an H2 in-memory database with triggers to [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,6],"tags":[],"class_list":["post-1802","post","type-post","status-publish","format-standard","hentry","category-coding","category-cube-life"],"_links":{"self":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/1802","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/comments?post=1802"}],"version-history":[{"count":1,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/1802\/revisions"}],"predecessor-version":[{"id":1803,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/1802\/revisions\/1803"}],"wp:attachment":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/media?parent=1802"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/categories?post=1802"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/tags?post=1802"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}