{"id":1056,"date":"2014-04-22T14:46:14","date_gmt":"2014-04-22T21:46:14","guid":{"rendered":"http:\/\/10kdev.net\/?p=1056"},"modified":"2014-04-22T14:48:51","modified_gmt":"2014-04-22T21:48:51","slug":"ec-tech-meetup-april-22-2014-and-random-thoughts","status":"publish","type":"post","link":"http:\/\/10kdev.net\/?p=1056","title":{"rendered":"Tech Thoughts April 22, 2014"},"content":{"rendered":"<ul>\n<li><span style=\"font-size: 13px;\">Tonight is the first of the hands-on developer meetings &#8211; <\/span><a href=\"http:\/\/www.meetup.com\/EC-Tech\/events\/177076232\/\"><strong style=\"font-size: 13px;\">Ale and Algorithms<\/strong><\/a><span style=\"font-size: 13px;\"><a href=\"http:\/\/www.meetup.com\/EC-Tech\/events\/177076232\/\"> &#8211; for our EC Tech Meetup<\/a> at the Milwaukee Burger joint in Eau Claire. \u00a07 pm. \u00a0Tonight I&#8217;m hoping to work on some problems including<\/span><br style=\"font-size: 13px;\" \/>\n<ul>\n<li>Fizz Buzz<\/li>\n<li>Armstrong Numbers<\/li>\n<li>Prime Number detector<\/li>\n<li>Reverse a String without API use<\/li>\n<\/ul>\n<\/li>\n<li>Since the meeting is only an hour or so long we may not get through all these. \u00a0I&#8217;ll be using \u00a0Groovy \u00a0. . . and beer and cheese curds.<\/li>\n<li>This is the first of hands-on meetings to do TDD, build build servers, open source VM, and solutions for private business.<\/li>\n<li>How exactly can you do TDD whne you are using Acceptance Tests as a target? \u00a0So . . .in (say) a two week iteration you start off with broken tests and then fix them? \u00a0The build server then reports red for two weeks. Yikes. \u00a0And imagine a release of several iterations over a few months . . . maybe thats an insane target and TDD doesn&#8217;t work on that level.<\/li>\n<li>After you release an iteration MAKE SURE the business experts review the AT criteria and outcomes. \u00a0All that may have changed by the end of development.<\/li>\n<li>In DB Unit &#8212; if you are loading your data from an XML file make SURE the first record of the same table has ALL the fields even if it doesn&#8217;t use them! \u00a0Else you&#8217;ll get a &#8220;Broked&#8221; error &#8212; can&#8217;t load missing fields. \u00a0For instance:<\/li>\n<\/ul>\n<p style=\"padding-left: 60px;\"><span style=\"font-size: 13px;\">This breaks:<\/span><\/p>\n<p style=\"padding-left: 60px;\">\u00a0 \u00a0&lt;Object \u00a0Date=&#8221;[some_date]&#8221; ID=&#8221;77&#8243; \u00a0\/&gt;<\/p>\n<p style=\"padding-left: 60px;\">\u00a0 \u00a0&lt;Object \u00a0Date=&#8221;[some_date]&#8221; ID=&#8221;77&#8243; \u00a0ObjectNumber=&#8221;3751&#8243;\/&gt;<\/p>\n<p style=\"padding-left: 60px;\">This doesn&#8217;t:<\/p>\n<p style=\"padding-left: 60px;\">\u00a0 \u00a0&lt;Object \u00a0Date=&#8221;[some_date]&#8221; ID=&#8221;77&#8243; \u00a0ObjectNumber=&#8221;3751&#8243;\/&gt;<\/p>\n<p style=\"padding-left: 60px;\">\u00a0 \u00a0&lt;Object \u00a0Date=&#8221;[some_date]&#8221; ID=&#8221;77&#8243; \u00a0\/&gt;<\/p>\n<ul>\n<li>Java&#8217;s Big Decimal: Again, to iterate: instantiating with a STRING is better than a DECIMAL &#8212; but you just have to live with the non-compile time check. Sigh. \u00a0But don&#8217;t want those nasty decimals hanging off. \u00a0Here&#8217;s a pic of a Groovy test (compiles to Java):<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter\" alt=\"\" src=\"http:\/\/10kdev.net\/wp-content\/uploads\/2014\/04\/cbce27636ee6ddbc673ac7b393de188d.png\" width=\"397\" height=\"92\" \/><\/p>\n<p>Pretty important in financial calculations. \u00a0More on this later sometime.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tonight is the first of the hands-on developer meetings &#8211; Ale and Algorithms &#8211; for our EC Tech Meetup at the Milwaukee Burger joint in Eau Claire. \u00a07 pm. \u00a0Tonight I&#8217;m hoping to work on some problems including Fizz Buzz Armstrong Numbers Prime Number detector Reverse a String without API use Since the meeting is [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/1056"}],"collection":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1056"}],"version-history":[{"count":8,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/1056\/revisions"}],"predecessor-version":[{"id":1064,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/1056\/revisions\/1064"}],"wp:attachment":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1056"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1056"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1056"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}