{"id":971,"date":"2010-01-19T23:32:36","date_gmt":"2010-01-20T04:32:36","guid":{"rendered":"http:\/\/mikeconley.ca\/blog\/?p=971"},"modified":"2023-12-20T16:25:18","modified_gmt":"2023-12-20T21:25:18","slug":"markus-squad-hows-refactor-my-code-belated-happy-holidays-im-not-dead","status":"publish","type":"post","link":"https:\/\/mikeconley.ca\/blog\/2010\/01\/19\/markus-squad-hows-refactor-my-code-belated-happy-holidays-im-not-dead\/","title":{"rendered":"MarkUs, Squad, How&#8217;s \/ Refactor My Code, Belated Happy Holidays, and Oh Yeah &#8211; I&#8217;m Not Dead"},"content":{"rendered":"<p><strong>Belated happy holidays!<\/strong> My last post was over a month ago, and so my blog has a nice layer of web-dust on it right now.\u00a0 Well, here I am to ease your mind.\u00a0 I&#8217;m still alive!<\/p>\n<p>But that almost wasn&#8217;t true.<\/p>\n<p>I won&#8217;t bore you with the details &#8211; I&#8217;ll just give you the facts, and let you fill in the blanks.<\/p>\n<ol>\n<li>My girlfriend Em, her sister Cassie, and myself, were up in Collingwood on New Years Day, enjoying a relaxing day at a <a href=\"http:\/\/www.scandinaveblue.com\/\">Norwegian spa<\/a> (the outdoor baths were amazing &#8211; how awesome is it to be in a boiling hot tub, while simultaneously, your hair <em>is so frozen that it&#8217;s <\/em><em>snapping off in your hands<\/em>?)<\/li>\n<li>The roads that night were treacherous.\u00a0 Snowy, un-plowed, and dark.\u00a0 I had borrowed my Mom&#8217;s car for the trip, and we took it realllllly slow.<\/li>\n<li><em> <\/em>After a tortoise-paced two hour ride back to Em&#8217;s place in Newmarket, and then another two hour drive from Newmarket to my home in Grimsby the next day, I was getting pretty sick of winter driving.\u00a0 On top of that, the brakes seemed to be acting funny.\u00a0 I found myself sliding a lot, and there didn&#8217;t seem to be a lot of resistance when I put my foot down.<\/li>\n<li>The next day, my Mom takes the car to go to work.\u00a0 She doesn&#8217;t even leave the drive-way.\u00a0 The brakes hadn&#8217;t been acting funny:\u00a0 the brakes <em>hadn&#8217;t been acting at all<\/em>.\u00a0 Turns out we had a leaky brake-line for the entire trip&#8230;<\/li>\n<li>Guts of the story:\u00a0 I think we drove home from Collingwood with about 35% brake power in one of the worst snow storms I&#8217;ve ever driven in.<\/li>\n<\/ol>\n<p>Breakfast tasted especially good for us that morning.<\/p>\n<p>Anyhow, now where was I?\u00a0 Oh yeah&#8230;<\/p>\n<h3>MarkUs<\/h3>\n<p><a href=\"http:\/\/www.markusproject.org\">MarkUs<\/a> 0.6 got kicked out a week or so ago.\u00a0 The MarkUs Team kicked the crap out of a bunch of tickets over the holidays, and I think we ended up with a pretty solid release.\u00a0 MarkUs is being used again at UofT this semester, and <a href=\"http:\/\/www.cs.uwaterloo.ca\/~bwbecker\/\">Byron Weber Becker<\/a> is also piloting it at UWaterloo.\u00a0 I&#8217;ll cautiously say that things seem to be going well for this release.\u00a0 Great job, MarkUs Team!<\/p>\n<p>I&#8217;m TAing the students working on MarkUs for <a href=\"http:\/\/www.third-bit.com\">Greg&#8217;s<\/a> <a href=\"http:\/\/ucosp.wordpress.com\">UCOSP course<\/a> again.\u00a0 We had a fantastic code-sprint this past weekend!\u00a0 The new team members have already started working on tickets and submitting code to review.\u00a0 I think we&#8217;re on our way into another highly productive semester.<\/p>\n<h3>A Few More Web-Based Code Review Tools<\/h3>\n<p>Remember <a href=\"http:\/\/mikeconley.ca\/blog\/2009\/10\/13\/treasure-hunting-and-research-idea-4\/\">that big list of code review tools I put up a while back<\/a>?\u00a0 I&#8217;ve got a few more to add:<\/p>\n<h4>How&#8217;s My Code<\/h4>\n<p>This is a pretty dead-simple code review tool that came about during <a href=\"http:\/\/www.readwriteweb.com\/readwritestart\/2009\/09\/rails-rumble-micro-app-competi.php\">a Rails Rumble a few months back<\/a>.\u00a0 It has that &#8220;big friendly buttons and round corners&#8221; web 2.0 thingy going on.\u00a0 I haven&#8217;t gone so far as to actually try it out, but I did watch this web-cast:<\/p>\n<p><object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"560\" height=\"345\" codebase=\"http:\/\/download.macromedia.com\/pub\/shockwave\/cabs\/flash\/swflash.cab#version=6,0,40,0\"><param name=\"flashvars\" value=\"i=5854\" \/><param name=\"allowFullScreen\" value=\"true\" \/><param name=\"src\" value=\"http:\/\/screenr.com\/Content\/assets\/screenr_0817090731.swf\" \/><param name=\"allowfullscreen\" value=\"true\" \/><\/object><\/p>\n<p>Not bad if you just want to get your code out there, and get your team commenting on your changes&#8230;<\/p>\n<p>A few things caught my attention:<\/p>\n<ul>\n<li>It&#8217;s a web service, so you don&#8217;t install it&#8230;you sign up for it<\/li>\n<li>It currently only supports Git.\u00a0 \ud83d\ude41<\/li>\n<li>There doesn&#8217;t seem to be any support for contextual per-line commenting&#8230;I think it&#8217;s just file by file commenting.\u00a0 I&#8217;d love it if I could comment on a single line of code&#8230;<\/li>\n<\/ul>\n<p>Still, if I was working on a project hosted on a Git repo, and I needed a dead-simple code review service, and I needed it quickly, I could probably do a lot worse than this.<\/p>\n<p><a href=\"http:\/\/howsmycode.com\/\">Click here to check out How&#8217;s My Code<\/a><\/p>\n<h4>Squad<\/h4>\n<p>Remember that time when I wrote about how it might be neat if somebody created <a href=\"http:\/\/mikeconley.ca\/blog\/2009\/11\/25\/can-google-wave-bring-something-new-to-peer-code-review\/\">a code review tool on top of Google Wave<\/a>? (or <a href=\"https:\/\/bespin.mozilla.com\/\">Bespin<\/a> for that matter &#8211; though I didn&#8217;t mention it, and should have)<\/p>\n<p><a href=\"http:\/\/helderribeiro.net\/?p=130\">Looks like somebody else was thinking the same thing.<\/a> And a few months earlier.\u00a0 I guess it&#8217;s not easy to be super cutting-edge.<\/p>\n<p>Anyhow, looks like something Wave-ish (yet simpler, more streamlined) has been developed.\u00a0 <a href=\"https:\/\/squadedit.com\/\">Check out Squad<\/a>.<\/p>\n<p>I just tried this thing out for free (with ads, features locked, etc), and it was pretty cool.\u00a0 I could see something like this being very useful for showing new MarkUs team members how to do things.\u00a0 Actually, I just used it to show a new member of the MarkUs team how to use Shoulda.\u00a0 Pretty useful.\u00a0 It sure beats coding through IRC and Pastie.org.<\/p>\n<p>A few things to keep in mind:<\/p>\n<ol>\n<li>Super simple to get going &#8211; open up a session, and send someone a generated link, and you&#8217;re both coding in no time<\/li>\n<li>One person codes at a time&#8230;so while one person edits, the screen is locked for everyone else<\/li>\n<li>Ads on the left are a little annoying<\/li>\n<li>Sports syntax highlighting for a number of languages &#8211; though I noticed that Ruby wasn&#8217;t one of them.\u00a0 :\/<\/li>\n<\/ol>\n<p>I can see this becoming second nature, like Pastie.org.<\/p>\n<p>Who knows &#8211; I might find more reasons to use Squad as the semester rolls, and MarkUs picks up speed.\u00a0 I&#8217;ll keep you posted.<\/p>\n<p><a href=\"https:\/\/squadedit.com\">If you missed the link I put in above, click here to check out Squad<\/a><\/p>\n<h4>Refactor My Code<\/h4>\n<p>This service crowd-sources code review requests, so don&#8217;t expect to get deep architectural feedback, because it&#8217;ll probably come from strangers who don&#8217;t\/barely know your code base.<\/p>\n<p>The idea is &#8211; slap a piece of code that you&#8217;d like refactored up on the site, and then others swoop in with brilliant suggestions (assuming of course, you asked your question properly&#8230;<a href=\"http:\/\/refactormycode.com\/codes\/1144-need-help-with-index-php\">check this out<\/a>&#8230;what the&#8230;?)<\/p>\n<p>This is the sort of thing that CS instructors probably wouldn&#8217;t want their students using too much&#8230;it&#8217;d then become solve-my-CS-programming-assignment.com.<\/p>\n<p>Still, I think it counts as peer code review.\u00a0 And it&#8217;s way different that anything else I&#8217;ve been looking at.\u00a0 Nice.<\/p>\n<p><a href=\"http:\/\/refactormycode.com\">Click here to check out Refactor My Code<\/a><\/p>\n<p>Anyhow, I just thought I&#8217;d mention those.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Belated happy holidays! My last post was over a month ago, and so my blog has a nice layer of web-dust on it right now.\u00a0 Well, here I am to ease your mind.\u00a0 I&#8217;m still alive! But that almost wasn&#8217;t true. I won&#8217;t bore you with the details &#8211; I&#8217;ll just give you the facts, [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[454,5,6,162],"tags":[582,36,583,501,566,580,550,35,494,581,584,579],"class_list":["post-971","post","type-post","status-publish","format-standard","hentry","category-code-reviews","category-computer-science","category-personal","category-ruby-on-rails-technology","tag-accidents","tag-bespin","tag-cars","tag-code-review","tag-google-wave","tag-hows-my-code","tag-markus","tag-mozilla","tag-peer-review","tag-refactor-my-code","tag-snow","tag-squad"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/prmTy-fF","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/971","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/comments?post=971"}],"version-history":[{"count":8,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/971\/revisions"}],"predecessor-version":[{"id":3204,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/971\/revisions\/3204"}],"wp:attachment":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/media?parent=971"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/categories?post=971"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/tags?post=971"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}