<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Neoteric Design, Inc.</title>
    <description>The blog and news of Neoteric Design</description>
    <link>http://www.neotericdesign.com/blog</link>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/neoteric-blog" /><feedburner:info uri="neoteric-blog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>41.898582</geo:lat><geo:long>-87.637103</geo:long><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><feedburner:emailServiceId>neoteric-blog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
      <title>Apprenticeship Week #5</title>
      <author>
        <name>Matthew Cowie</name>
        <email>matthew@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/matthew</link>
      </author>
      <description>&lt;p&gt;This week was mostly heads down development on the project calendar app.&amp;nbsp; Monday I took the time to change how the timeline was calculated, making things more dynamic so it could work with arbitrary start dates. A lot of the hard-coding was removed so down the line it should be able to handle arbitrary spans of time with just a tad of fuss. But for now it works off one year (previous quarter, current, and next two), with the option to pick a year from a dynamically populated list. With some initial help from Aitch I got the AJAX functions for live updating time slots wired up. Between that and tweaking some other bits he wrote I got a better feel for Coffeescript. I also picked up some basic tricks in the SASS playbook like using loops and variables in styles.&lt;/p&gt;

&lt;p&gt;Bugfixes, visual tweaks, and small feature implementations kept me busy the rest of the week. Being in a fairly usable state wednesday morning I did I quick user test with Nick and got his feedback about what he liked and some features to put in next week. And at the end of the day I got to demo it for the whole team and got more ideas for some more advanced UX things to put in down the line. It&amp;#39;s good to see such enthusiasm for something you created!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/j0tAPOgtMzA" height="1" width="1"/&gt;</description>
      <pubDate> 1 May 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/j0tAPOgtMzA/apprenticeship-week-5</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/5/apprenticeship-week-5</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/5/apprenticeship-week-5</feedburner:origLink></item>
    <item>
      <title>Apprenticeship Week #4</title>
      <author>
        <name>Matthew Cowie</name>
        <email>matthew@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/matthew</link>
      </author>
      <description>&lt;p&gt;This week I started front end work.&amp;nbsp; Aitch and I met with Nick to discuss how the interface should behave and get a better idea of what it should look like. That afternoon I paired with Aitch as he showed me a lot of the basic layout and structure for where markup should live in the asset pipeline. We went over some best practices for CSS and he showed me some tools he uses such as Foundation, Compass, and Cleanfix. We wrote the code to generate a ruler with the months and days along the top, as well as some javascript to get the deliverables placed appropriately along horizontally. Working on it that afternoon and the next morning I grrew increasingly frustrated trying to get the data models to work with the way we wanted the interface to work so I spent Tuesday changing some of the ActiveRecord relationships to a better fit. From there I kept refining the layout and CSS, and wednesday Aitch was able to help guide me get things really slick and refined. We got as far as to implement some resizing and dragging of items using JQuery-UI, but not as far as to make that do anything yet.&lt;/p&gt;

&lt;p&gt;Here&amp;#39;s a video demo of what was worked on this week:&lt;/p&gt;

&lt;p&gt;&lt;iframe allowfullscreen="" frameborder="0" height="283" mozallowfullscreen="" src="http://player.vimeo.com/video/64768523?title=0&amp;amp;byline=0&amp;amp;portrait=0" webkitallowfullscreen="" width="500"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/JbJwKKl1t_M" height="1" width="1"/&gt;</description>
      <pubDate>24 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/JbJwKKl1t_M/apprenticeship-week-4</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-4</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-4</feedburner:origLink></item>
    <item>
      <title>Mentorship Week #4</title>
      <author>
        <name>Nic "Aitch" Haynes</name>
        <email>nic@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/nic</link>
      </author>
      <description>&lt;p class="lead"&gt;This week, Matthew has been working hard on the frontend for our scheduling app.&lt;/p&gt;

&lt;p&gt;On Monday we had quick meeting with Nick who role-played the client. We hashed out what an ideal interface would be like and what kinds of features that would bring along with it. After that Matthew and myself spent most of the day pairing on frontend development where I taught layouts in HTML, Sass and Compass, and light Coffeescript. We got some rough layouts in, ready for refinement.&lt;/p&gt;

&lt;p&gt;Tuesday was pretty hands off for me, but Mattew took over and refactored a significant part of the application&amp;#39;s model associations. This was necessary after we realized the path that we had been headed down wasn&amp;#39;t quite right for what we wanted the UI to be.&lt;/p&gt;

&lt;p&gt;&lt;img alt="" data-rich-file-id="11" src="http://s3.amazonaws.com/neotericdesign/rich/rich_files/rich_files/11/original/screen-20shot-202013-04-24-20at-205-42-09-20pm.png" /&gt;&lt;/p&gt;

&lt;p&gt;Wednesday brought some fantastic interface improvements including using the full browser width for the timeline, drag and resizing deliverables to span more weeks, and overall a really nice and intuitive interface for scheduling. Definitely &lt;a href="http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-4"&gt;check out his post&lt;/a&gt; for a video of it in action!&lt;/p&gt;

&lt;p&gt;Great work Matt!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/AisaifxMhos" height="1" width="1"/&gt;</description>
      <pubDate>24 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/AisaifxMhos/mentorship-week-4</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/mentorship-week-4</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/mentorship-week-4</feedburner:origLink></item>
    <item>
      <title>Apprenticeship Week #3</title>
      <author>
        <name>Matthew Cowie</name>
        <email>matthew@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/matthew</link>
      </author>
      <description>&lt;p&gt;This week was dedicated to starting my first &amp;#39;real&amp;#39; project. After a review of last week&amp;#39;s Rails lessons we met with Nick, playing a client, to develop a project calendar tool for internal use (at least initially). He went over his current workflow and what issues he was having. Joe and I took notes and sketched up our ideas for how an application could ease and automate the tasks. Afterwards we agreed on some basic data structures and workflow, and I was left to implement them on my own.&lt;/p&gt;

&lt;p&gt;I had a basic working prototype for 2 of the models at the end of the day. Tuesday I got to spend the whole day working on the project, implementing some model relationships, and a nested form for the user to manipulate them. Setting up and working through Rails on my own helped solidify the things I&amp;#39;ve been exposed to the previous weeks. The more I&amp;#39;m able to work on my own the more I find I&amp;#39;m able to understand why the magic of Rails works over just mimicking code samples. Wednesday morning Joe and I went through writing tests over the code, which is working backwards a bit but we made sure to test the major functionality of the prototype, and purposely breaking the code to ensure the tests would fail.&lt;/p&gt;

&lt;p&gt;&lt;img alt="" data-rich-file-id="9" src="http://s3.amazonaws.com/neotericdesign/rich/rich_files/rich_files/9/original/prototype-2.jpg" /&gt;&lt;/p&gt;

&lt;p&gt;That afternoon, I took to doing some basic styling on the forms while Joe wrote up the code to hook this application into another internal system so we could automatically populate our list of projects. At the end of the day I got to demo what there was so far of the prototype. It proved a bit difficult as none of the actual front end interface is implemented yet, only what will be an admin area, leaving it to explanation and imagination of what the app will be like. I got my first taste of a &amp;#39;client&amp;#39; review, getting grilled about inconsequential matters and trying to explain basic terms. Definitely another skillset that needs and will get some development!&lt;/p&gt;

&lt;p&gt;&lt;img alt="" data-rich-file-id="10" src="http://s3.amazonaws.com/neotericdesign/rich/rich_files/rich_files/10/original/prototype-3.jpg" /&gt;&lt;/p&gt;

&lt;p&gt;Next week I start learning some front end development with Sass and Coffeescript with Aitch, which should be fun!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/jI-3IJRa76M" height="1" width="1"/&gt;</description>
      <pubDate>18 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/jI-3IJRa76M/apprenticeship-week-3</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-3</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-3</feedburner:origLink></item>
    <item>
      <title>Apprenticeship Resources</title>
      <author>
        <name>Joe Sak</name>
        <email>joe@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/joe</link>
      </author>
      <description>&lt;blockquote class="twitter-tweet"&gt;
&lt;p&gt;@&lt;a href="https://twitter.com/abughat"&gt;abughat&lt;/a&gt; do you have any plans to post a list of resources that Matthew is using? It would be very interesting for others.&lt;/p&gt;
&amp;mdash; Jon Wheeler (@sputnik_43) &lt;a href="https://twitter.com/sputnik_43/status/324689726139408384"&gt;April 18, 2013&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;

&lt;p&gt;Certainly! We have used the following materials:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Books:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104"&gt;&lt;strong&gt;Eloquent Ruby&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://pragprog.com/book/hwcuc/the-cucumber-book"&gt;&lt;strong&gt;The Cucumber Book&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://pragprog.com/book/pg_git/pragmatic-guide-to-git"&gt;&lt;strong&gt;Pragmatic Guide to Git&lt;/strong&gt;​&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;RailsCasts:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/310-getting-started-with-rails"&gt;Getting Started with Rails&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/201-bundler-revised"&gt;Bundler (revised)&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/257-request-specs-and-capybara"&gt;Request Specs and Capybara&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/275-how-i-test"&gt;How I Test&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/17-habtm-checkboxes-revised"&gt;HABTM Checkboxes (revised)&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/196-nested-model-form-revised"&gt;Nested Model Form (revised)&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/308-oh-my-zsh"&gt;Oh My ZSH&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/279-understanding-the-asset-pipeline"&gt;Understanding the Asset Pipeline&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/268-sass-basics"&gt;Sass Basics&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://railscasts.com/episodes/267-coffeescript-basics"&gt;CoffeeScript Basics&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Peepcode:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;&lt;a href="https://peepcode.com/products/meet-the-command-line"&gt;Meet the Command Line&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="https://peepcode.com/products/advanced-command-line"&gt;Advanced Command Line&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/I3SCRgfvIaw" height="1" width="1"/&gt;</description>
      <pubDate>18 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/I3SCRgfvIaw/apprenticeship-resources</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/apprenticeship-resources</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/apprenticeship-resources</feedburner:origLink></item>
    <item>
      <title>Mentorship Week #3</title>
      <author>
        <name>Joe Sak</name>
        <email>joe@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/joe</link>
      </author>
      <description>&lt;p&gt;This week, we saw more advances in the world of Rails for Matthew. Nick is now our &amp;quot;client&amp;quot;, spelling out his ideas for an internal application the company needs in order to track project schedules. Monday was dedicated to having the meeting with Nick and then building the first few pieces of the application. Matthew had a working prototype to demo by the end of the day.&lt;/p&gt;

&lt;p&gt;On Tuesday, I had him watch a couple more Railscasts in order to follow the Nested Model Form example for the two models that have a parent/child relationship. Again, at the end of the day, he had a working demo of the changes he&amp;#39;d made, really blowing us away. We did a code review at the end of the day and aside from a few formatting issues, I thought he did absolutely great! This morning, I caught just one more issue with his understanding of the Rails convention of RESTful resources, but it was not a big deal at all to make the change and then explain the differences.&lt;/p&gt;

&lt;p&gt;For today, we went back over the code and how to go about testing it. Yes, normally, you test first, but because we&amp;#39;re leaving the codebase up to Matthew alone (for the most part), I decided I would use testing-after-the-fact to show him how such tests can be written. Since the production code is already written, we made sure to&amp;nbsp;take the necessary steps to force the tests to fail. It&amp;#39;s important to see a test fail so that you know it passes for the right reasons.&lt;/p&gt;

&lt;p&gt;Matthew demo&amp;#39;d his first iteration of the application today, for the end of &amp;quot;Sprint 1&amp;quot; and the end of his third week as a Neoteric Apprentice. Holy moly! He continues to impress us! And that&amp;#39;s it for this week. For homework, he&amp;#39;s going to study up on the Rails Asset Pipeline because he&amp;#39;ll be working mostly in the front-end on the following iterations of the application. That&amp;#39;s where Nic Aitch will step in and show him the ropes!&lt;/p&gt;

&lt;p&gt;Well done, Matthew, and we&amp;#39;ll see you next week!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/QprJl8HWJMc" height="1" width="1"/&gt;</description>
      <pubDate>17 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/QprJl8HWJMc/mentorship-week-3</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/mentorship-week-3</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/mentorship-week-3</feedburner:origLink></item>
    <item>
      <title>Apprenticeship Week #2</title>
      <author>
        <name>Matthew Cowie</name>
        <email>matthew@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/matthew</link>
      </author>
      <description>&lt;p&gt;My second week of apprenticeship is at a close, and it was a busy one.&lt;/p&gt;

&lt;p&gt;This week we dove into Rails. Starting with a basic overview of the Model-View-Controller system, we then went into some specifics of Rails itself. I followed some tutorials on RailsGuides, building a basic functional blog, then we started a Rails app using the Mastermind gem from last week. I was familiar with the basics of MVC frameworks, but it still took a little time to wrap my head around some of the big picture things. A good night&amp;#39;s sleep and an review the next day I felt much better equipped to tackle things.&lt;/p&gt;

&lt;p&gt;Tuesday I got to spend some time watching RailsCasts and working on the Mastermind Rails app. Over the course I gained a better understanding of Bundler, the rake command, and other tools I was using somewhat blind.&amp;nbsp;&lt;/p&gt;

&lt;p&gt;And in the course of playing around with a functioning web version I uncovered a bug in the Mastermind gem, which on wednesday led to writing better tests and a better version of my feedback function. A valuable lesson. Once it was ready, with the occasional help and guidance from Joe I spent the day sprucing up the Rails app with some UX improvements. At the end of the day we got to demo the app for the team. Bryan with the help of the rest cracked the code I set up and became the Mastermind. Watching it demoed with real users pointed out some more UX improvements that could be made down the line if we wanted, valuable feedback gained simply from observing.&lt;/p&gt;

&lt;p&gt;&lt;img alt="" data-rich-file-id="4" src="http://s3.amazonaws.com/neotericdesign/rich/rich_files/rich_files/4/original/01-mastermind.jpg" width="510 px" /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img alt="" data-rich-file-id="5" src="http://s3.amazonaws.com/neotericdesign/rich/rich_files/rich_files/5/original/03-mastermind.jpg" width="510 px" /&gt;&lt;/p&gt;

&lt;p&gt;More reading and RailsCasts over the weekend and then next week we start building a &amp;#39;real&amp;#39; Rails app!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/-Gl8xIOHeCM" height="1" width="1"/&gt;</description>
      <pubDate>10 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/-Gl8xIOHeCM/apprenticeship-week-2</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-2</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-2</feedburner:origLink></item>
    <item>
      <title>Mentorship Week 2: Teaching Ruby on Rails</title>
      <author>
        <name>Joe Sak</name>
        <email>joe@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/joe</link>
      </author>
      <description>&lt;p&gt;Teaching Rails is hard! They say that one of the most difficult aspects&amp;nbsp;of teaching is that you don&amp;#39;t know what you already know. That couldn&amp;#39;t be more true for me in this case. There is so much about&amp;nbsp;my workflow that is second nature, that I just take completely for granted! Where do you even start when you want to teach someone Rails? MVC? Bundler? Test-first? Routes? Models? What is RVM? How does the view template know about that variable? How did Rails know to use that view template?! Shit&amp;#39;s magic!&lt;/p&gt;

&lt;p&gt;Well, starting on Monday, I threw Matthew right into the deep end again. I&amp;#39;m so glad that guy can swim. We started building the web&amp;nbsp;interface to our Mastermind gem, which is now installed in a Rails app. It went okay, but Matthew&amp;#39;s feedback for me was that he didn&amp;#39;t quite understand how Rails was connecting all the dots.&lt;/p&gt;

&lt;p&gt;So on Tuesday, we took a step back. I drew a few diagrams out on the whiteboard to give him a basic model of how Rails works in a typical Client-Request, Server-Response model. It made a lot more sense to him after that, and then I showed him where&amp;ndash;in the code that he writes&amp;ndash;Rails &amp;quot;magically&amp;quot; hooks in and handles the connections between its components. We also sat down and reviewed a list of Railscasts for him to watch. That really helped a lot.&lt;/p&gt;

&lt;p&gt;Today, we had a lunch review to make sure everybody still feels good about the program, and it&amp;#39;s really meeting and exceeding our expectations. So that&amp;#39;s great news! For the afternoon, he finished integrating the Mastermind game into his Rails app, fixed some bugs,&amp;nbsp;and polished the views with some CSS and HTML in time for a 5pm demo. Bryan sat down&amp;nbsp;and, after about 10 turns, he broke the code and won the game! It was exhilerating to see Matthew&amp;#39;s final &amp;quot;YOU WON&amp;quot; page appear on the screen.&lt;/p&gt;

&lt;p&gt;We are very proud of Matthew, and we congratulate&amp;nbsp;him heartily&amp;nbsp;for completing his second week in our Apprenticeship Beta Program. He&amp;#39;s really hit the ground running and continues to demonstrate an exceptional skill. This week&amp;#39;s homework will be continued reading of Eloquent Ruby and viewing our preset list of&amp;nbsp;Railscasts. Next week, we will&amp;nbsp;start building an app for&amp;nbsp;our &amp;quot;client&amp;quot;, Nick Gracilla.&lt;/p&gt;

&lt;p&gt;Keep kicking ass, Matthew!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/QC2wmUvnfKM" height="1" width="1"/&gt;</description>
      <pubDate>10 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/QC2wmUvnfKM/mentorship-week-2-teaching-ruby-on-rails</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/mentorship-week-2-teaching-ruby-on-rails</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/mentorship-week-2-teaching-ruby-on-rails</feedburner:origLink></item>
    <item>
      <title>Apprenticeship Week #1</title>
      <author>
        <name>Matthew Cowie</name>
        <email>matthew@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/matthew</link>
      </author>
      <description>&lt;p&gt;Only one week into the apprenticeship and already I&amp;#39;ve learned much! We&amp;#39;ve brushed up on the basics of Ruby, gone into testing with Cucumber and RSpec, and I&amp;#39;ve gotten to observe some code mantenence. My main piece of work has been an example project to solidify those skills. With Joe, I&amp;#39;ve been working on an implementation of the game Mastermind, enforcing proper style guides and frequent testing. Learning how testing can help inform design has been one of the big takeaways of this week.&lt;/p&gt;

&lt;p&gt;I&amp;#39;ve also gotten to observe a number of business processes. Seeing how Neoteric manages their many projects and delegates work has been interesting and informative. I&amp;#39;ve also gotten to sit in on an agile planning session, something I&amp;#39;m looking forward to learning more about. I wasn&amp;#39;t entirely sure what to expect coming into this program, but so far it&amp;#39;s brought a lot of new experiences and I&amp;#39;m excited to delve in deeper in the weeks to come.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/pqPszdPs99I" height="1" width="1"/&gt;</description>
      <pubDate> 3 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/pqPszdPs99I/apprenticeship-week-1</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-1</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/apprenticeship-week-1</feedburner:origLink></item>
    <item>
      <title>Mentorship Week 1: Teaching Ruby, RSpec, and Cucumber</title>
      <author>
        <name>Joe Sak</name>
        <email>joe@neotericdesign.com</email>
        <link>http://www.neotericdesign.com/about/joe</link>
      </author>
      <description>&lt;p&gt;Starting this program made me pretty nervous. But I&amp;#39;m proud to say that I&amp;#39;m feeling confident overall upon the completion of the first week. Matthew is a bright student with a background in computer science and programming already, so it helps that he can catch on fairly quickly and with little resistence. There are definitely some nuances to Ruby syntax and expressiveness that I&amp;#39;ll continue to guide him on, as well as the day-to-day pressures and processes&amp;nbsp;of web development in the real&amp;nbsp;world. Overall, he&amp;#39;s performed fantastically well, and he&amp;#39;s demonstrated a strong grasp of the basic concepts.&lt;/p&gt;

&lt;p&gt;Week 1 was all about Ruby basics, testing frameworks, and deep immersion.&lt;/p&gt;

&lt;p&gt;Since Matthew already knows Java and C++, programming fundamentals and primitives required nothing more than an&amp;nbsp;overview in Monday&amp;#39;s lesson. I was able to cover the specifics of Ruby development, its focus on syntax, expressiveness, and concise clarity. I also had him pair with me as an observer while I worked on maintenance tasks in legacy projects and on new features in our development projects. I explained to him what each project was about, the goals of the specific tasks assigned to me, and the structure of each section of the code as I worked within them.&lt;/p&gt;

&lt;p&gt;Yesterday we dived right into the deep end of test-driven development with Cucumber and RSpec. We started building a Rubygem&amp;nbsp;version of the game &lt;a href="http://en.wikipedia.org/wiki/Mastermind_(board_game)"&gt;Mastermind&lt;/a&gt;.&amp;nbsp;This move definitely overwhelmed us both, so we each took a longer break after the lesson. I decided it would be better for the concepts to roll around in the back of his mind, so I had&amp;nbsp;him continue his assigned reading and paired observation for the rest of the day.&lt;/p&gt;

&lt;p&gt;I also had Nic &amp;#39;Aitch&amp;#39; take over some of the teaching in this first week. He helped Matthew with Terminal usage, Sublime Text 2 setup, configuration, plugins, and keyboard shortcuts. It&amp;#39;s good for an apprentice to spend time with other people besides his primary mentor. Also, Aitch will be called upon for Front-End Development lessons, so it&amp;#39;s important that I&amp;nbsp;introduced&amp;nbsp;them to the relationship early on.&lt;/p&gt;

&lt;p&gt;Matthew is an avid chess player and advocate. So at yesterday&amp;#39;s end, I invited him to teach me some more advanced techniques and strategy. Reversing the role of teacher and student helped us gain insight into each others&amp;#39; perspectives as we go through this program together. We&amp;#39;ll definitely keep playing regularly, and, in fact, it&amp;#39;s gotten the rest of the Neoteric team interested. So, I&amp;#39;ll be adjusting Matthew&amp;#39;s schedule to include optional chess lessons for anyone who wants one.&lt;/p&gt;

&lt;p&gt;Today, we got right back into Cucumber and RSpec on our Mastermind game. I can tell that giving Matthew the day off to let his lesson soak in was the right choice. We were both able to come back to it with refreshed brains and we finished some of the most difficult concepts of the game&amp;#39;s logic. I also showed him examples of how and when to refactor the code&amp;#39;s design. For the rest of the day, I asked him to complete the logic of a codemaker providing feedback to the codebreaker about their guesses.&lt;/p&gt;

&lt;p&gt;At the end of the day, he showed me a completed Feedback class. He asked me to review and provide critiques, and I showed him how I would&amp;nbsp;break the methods apart and rename variables and methods&amp;nbsp;to improve their expressiveness. Other than a few things here and there, I thought the code he wrote without my help was on target.&lt;/p&gt;

&lt;p&gt;This weekend, I&amp;#39;ve assigned him the homework of reading about Cucumber (I believe the book can introduce him to it better than I can) and another book on the general practices and mindset of an agile developer. I have complete confidence in him. Thanks for a smooth and fun week, Matthew!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/neoteric-blog/~4/CIvvdQYm0IM" height="1" width="1"/&gt;</description>
      <pubDate> 3 Apr 2013</pubDate>
      <link>http://feedproxy.google.com/~r/neoteric-blog/~3/CIvvdQYm0IM/mentorship-week-1-teaching-ruby-rspec-and-cucumber</link>
      <guid isPermaLink="false">http://www.neotericdesign.com/blog/2013/4/mentorship-week-1-teaching-ruby-rspec-and-cucumber</guid>
    <feedburner:origLink>http://www.neotericdesign.com/blog/2013/4/mentorship-week-1-teaching-ruby-rspec-and-cucumber</feedburner:origLink></item>
  </channel>
</rss>
