Skip to content

Instantly share code, notes, and snippets.

@AllPurposeName
Last active August 29, 2015 14:25
Show Gist options
  • Save AllPurposeName/713b680f4baa4f401a00 to your computer and use it in GitHub Desktop.
Save AllPurposeName/713b680f4baa4f401a00 to your computer and use it in GitHub Desktop.

DJ Greenfield - Module 4 Portfolio

Individual

Areas of Emphasis

Previous to this module my project management skills had seriously decayed. A large focus for each project was keeping a clean and organized waffle card, an active private Slack channel for each project, serious consistent code review, and Google Calendar for deadlines. I made serious efforts to accomplish this by being frank with my project-mates and patient with my projects.

End of Module Assessment

My progress through the module was assessed by Josh Cheek and here are the results:

"We did a nice refactoring where we moved logic into a state machine."

Note: the assessment took 3 hours.

  • Satisfactory progress 3
  • Ruby styniax and style 3
  • Rails style and api 3
  • Testing 3.5
  • User interface 3

Attendance

Like all modules before it, I attended each day. I had two tardies, one on Tuesday, June 16th and one on Wednesday, June 24th.

Projects

I completed the following individual project for this module:

Idea Box 2.0

  • GitHub URL

  • Original Assignment

    In this four-day project I implemented the bare essentials of Idea Box in JavaScript. I was peer evaluated by Richard and Paul with these generous results:

    "Code and testing looks good!"

    • Features: 3
    • User Interface: 2
    • Rails Style: 3
    • Ruby Style: 4
    • JavaScript Style: 3

Team

Projects

I participated in the following team projects:

Scale Up (HubStub)

This two week long project utilized a previous cohort's Pivot project and a seed data of ~1 million objects to help us experience harsh load times and a need for optimization. Our project was evaluated by Horace with the following results:

"Nice handling of poorly scoped ActiveRecord queries."

  • Production Performance: 1 -- not running in production
  • Load Testing: 2
  • DB Scale: Check
  • Testing: 2
  • Code Quality: 2
  • Additional Features: 2
My Contribution

I wrote the entirety of the Capybara load testing script. I also refactored sloppy hard-to-work-with scoping so the rest of the team could focus on writing better ActiveRecord queries.

Takeaway
  • Inheriting code is awful
  • Large data sets are managable
  • Writing scripts is fun

Game Time (Lights Out)

This week-and-a-half long project was a pure JavaScript implementation of a simple game. In our case that game was Lights Out. It was evaluated by Horace with the following results:

"This is actually fun."

  • Functional Expectations 3-
  • Test-Driven Development 2
  • Breaking Logic into Components 3
  • Fundamental JavaScript & Style 3
My Contribution

We did not split the responsibilities and made sure to each take full responsiblity for every aspect of the project. If I did have a focus, it was writing the tests and keeping us on a TDD track.

Takeaway
  • OO JS is just a matter of organization
  • TDD is mostly self discipline
  • Project management tools are useful even in a team of two

Flack (Quibble)

This two week mastery project was a demonstration of websockets and software as a service through a Slack clone. Our particular project aimed to provide a structure for groups to come to decisions. We were evaluated by Horace with the following results:

  • Services 2:
  • Encapsulation 2:
  • Rails MVC 3:
  • Test-Driven Development 2:
  • Deployment 3:
  • Features 3:
  • Interface 3:
  • Concept 3:
  • Project Management process 3:
My Contribution

I was the primary Rails developer on this project and I spent a lot of time TDDing and making sure we had a great foundation. I also implemented a few Rails features solely for the benefit of the other developers which felt like a great use of time. Additionally, I was the team member who troubleshot miscellaneous problems with the various integration of our code.

Takeaway
  • Code review is key to writing great software
  • Being the team member who touches everything forces you to keep a lot in your head at once.
  • Pick your battles. Let some design decisions go.

Community

Giving Feedback

According to the Feedback application:

  • I delivered 0% of the requested feedback

Playing a Part

Throughout the six weeks I pushed myself to pair with as many other students as I could. I attended and advocated for every DSA session during the six weeks.

  • On Tuesday, May 19th, I deep cleaned the north refrigerator in classroom A.
  • On Friday, May 22nd, I delivered a lightning talk titled "Metaprogramming is Meta cool!"
  • On Tuesday, June 9th, I delivered an expanded version of my metaprogramming lightning talk at the Denver.rb beginner's track
  • On Friday, June 12th, I ran a student lead session on JavaScript for Rubyists
  • On Thrusday, June 18th, I delivered the metaprogramming lightning talk at Community Night
  • On Thursay, June 25th, I wrote a blog post titled "The Turing Bar" which was featured on turing.io
  • Also on Thursday, June 25th, my posse won the first ever posse cup. #HopperPosse4Lyfe #hatersgonnahate #tastytears Read here about Grace Hopper Con
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment