Github’s extra features – issues versus projects – TDD/BDD

Trying to document a bit of what I am up too in the hopes it helps my workflow process improve.

Supposedly, when ADHD or tired this workflow will help you concentrate in order to be productive!

I’ve been hanging out on my github.com project lately.  Using the Issues List as my per task driver for the TDD/BDD stuff.  I’m actually listing out each command with a checkbox as my aid for doing & reversing the code I’m working with … usually the second time.  I also tried the “projects” thing off github’s repository … the feature is pretty meh for control though.  My frustration is that I can get check boxes and exacting lists of whatever length I want from the Issues list.

I really hate the idea of cluttering up my github issues list on projects which might get a volume of people (obviously my early stuff won’t suffer from this syndrome), so I’m attempting to shoe horn projects in to that role.  Currently, I’m using projects to describe the title of what I’m doing & Issue’s with check boxes the behavior that needs to be fixed along with the steps taken to fix the issue.

By no means am I an expert – more of a new guy imitating what I see other people doing.  So here’s my screen captures …

Gamesutra’s list of 20 things learned by Laralyn McWilliams

Link below to list …

http://www.gamasutra.com/blogs/LaralynMcWillams/20170109/288848/Twenty_Things_Ive_Learned_About_Game_Development.php

Version & date your guides – lol?

Let me preface this by stating, I’m grateful for any information on the internet.  I fully believe more is more.  For the context of this article – when beginning – you are looking for ways to judge if a guide/article will help you.  Some rather simple information at the beginning can prevent an article from wasting the time of a beginner.

Also, I’m a rank beginner when it comes to all of this …


I can follow tutorials.  When following tutorials there was usually 2 issues I had on a recurring basis…

  1. Out of date – this far and away would trip up everything
    1. Many tutorials didn’t have a front page detailing when they which versions they used.
    2. Sometimes the version gotcha’s was a note in the body of the instructions, buried pages in & effectively not there when you are just trying to decide if you should even bother reading it.
    3. Some tutorials did not even have a date on them or even a year
  2. Small errors and a beginners lack of knowledge to judge when the issue is bigger than a typo somewhere.
  3. Contextual issues.  When someone in their tutorial thought they clearly laid out or assumed everyone reading would automatically know something.  Mainly an issue if the guides didn’t include a “who’s this for” type front page disclaiming things.  Which platforms & addons/gems etc?

Now, how to better use your time …

Since I’m beginning to get more savvy to these types of things – I’m noticing not even the rails guide holds super easy documentation.  Googled me some rails guide for routing…one of first hits splashes me down here …

railsguide

The vaulted guide here does have documentation of the version number it works with ..  but the user has to know that they can click RailsGuides header/home & then they will get the information they need to see the version.  This page is one of the better of the examples – as the information is available – even if you have to hunt for it.  I feel like it looks simple & that was the purpose, which it accomplishes.

It is still missing the date of publication & updates that new changes or last minute things might cause new users pain.

My current rule when first googling away is that if I can’t find a version/date on the guide or article – it’s worthless to me.  When I get more desperate, and there is no good help – I will default to articles/guides with the date built into the URL, then default to articles which I can click somewhere to find notes/readme/help section – but no more than a mouse click away when scanning through articles.

If the author’s skill level is too low to explain the context or mention the version – they probably aren’t going to explain the topic well enough to be helpful to you anyways!

 

A day in the life of an average American

Not mine, but fascinating … have left it running on 2nd screen for awhile now, it’s fun to tweak the speed …

Graphical representation of how life is spent … Link … the author has two articles leading up to it – which are interesting too …

  • Part 1 – Link
  • Part 2 – Link
  • Part 3 – Link – already linked above.

How interpersonal relationships work…explained in programming

Just a quick blurp…I’m supposed to be slaving away right now!

Reading: PRACTICAL OBJECT-ORIENTED – DESIGN IN RUBY

In there they explain that:

Trip has now relinquished a great deal of responsibility to Mechanic. Trip knows that it wants each of its bicycles to be prepared, and it trusts the Mechanic to accomplish this task. Because the responsibility for knowing how has been ceded to Mechanic, Trip will always get the correct behavior regardless of future improvements to Mechanic.
When the conversation between Trip and Mechanic switched from a how to a
what, one side effect was that the size of the public interface in Mechanic was drastically reduced.

The author talks about how beginning programmers are very structurally oriented.  IE:

  • They know what each object/person knows
  • They know how each object/person does their tasks
  • They tell each object/person when to do their tasks

I think in the real world – we call this micro managing someone.  The only conditions in which this tends to work well is when someone doesn’t know how to do something.  Otherwise it’s sub optimal.  The author even talks about how objects need to trust each other to accomplish their tasks, instead of trying to control each other or micro manage every step.