Week One: Principles and Practices/Project Management

Goal

This first week there are two goals. The first, plan and sketch a potential project and second to build a personal site in the class archive describing you and your final project.

kid controller

Week One Objectives

  • Sketch at least three different design ideas on paper
  • Chose one and sketch on computer
  • Read up on html creation (Have not done this in a while)
  • Install and play with web development tools
  • Install and get use to version control, Mercurial
  • Thoughts

Sketch at least three different design ideas on paper

For my final project I sketched three different designs, one is a rope climbing kit for HS age, two is for a science olympiad project and three is for a game controller for my son. The one I am most excited about is the game controller. I was in Best Buy with my 3 year old son the other day. (we visit there a lot) Per usual, he gravitated toward the video game section. As he played he kept asking me for help, which as a father who enjoy games wanted to help. However, I notice he was not getting his hands around the controller fast enough. The controller was too big for his hands. This led me to creating a game controller for him and other younger gamers.

Read up on html creation (Have not done this in a while)

I have not developed a website from scratch in a long time, since the 1990’s. Currently, my websites are in some CMS. However,  I was looking forward to it. I know enough not to start in notepad or sketch pad, so I asked around for a good IDE. Adam suggested Blue Griffin web development tool. As I went down this path, at first I liked it. However, it changed my code every time I wanted to create a top navigation you see now. I had to go into the html and modify and save the code using another tool. I will have to look at another one.

Install and play with web development tools including drawing and photo editing

The first tool I used was Inkscape. This is a very different tool than I am used to. To get started I went through some tutorials like the eight ball and rusty gear from tutor4u. I got through fairly easily, however, the layers and the types of features I am still internalizing. I created the image seen here in Inkscape.

The second tool I used was gimp. This was even farther from my repertoire than Inkscape. However, I realized gimp was good for trimming down images for the web. This is going to be a handy tool. I used the tool to size down the image seen here.


Install and get use to version control, Mercurial

First, I tried to install Mercurial from the tutorial by the AS220 Lab >. I installed Cygwin successfully than ran into problems with the Cygwin terminal. I could not get the commands to work properly. Knowing this was not a good way to go, I scrapped trying.

Second, I tried to install Mercurial on Linux Ubunto Distro using the tutorial by the AS22 Lab here. This was easy and succeeded the the first attempt.


Third, I tried to install Mercurial on Mac using the tutorial by the AS22 Lab here. This was easy and succeeded the the first attempt again, Awesome Sauce.


To use Mercurial is a different story,  Neil said there was a stiff learning curve and there was anticipated mistakes the first week. I wanted to make sure this did not happen, neither did Francisco Sanchez Arroyo, our instructor. So, he gave us a small tutorial below. It worked without a hitch.

Standard Workflow - In case no one is pushing/pulling at the same time, this will happen:

    hg pull
    hg update
    hg addremove
    hg commit -m “describe your changes”
    hg push

Merge workflow - The following happens when you have pulled the archive, but before pushing, someone -Quick Billy- pushed his changeset. As time tends to zero, probability of this situation to happen tends to infinite. Do not worry. This is how it happens:
    hg pull
    hg update
    hg addremove
    hg commit -m “your changes”
 
NEVER FORCE PUSH or you will receive the email that you do not want to receive from Neil. So do the following:
    hg merge
    hg commit -m “merge”
    hg push

Successfully uploaded without merge command this time!

Thoughts

It feels odd being a student instead of the teacher. I have not taking a class like this since grad school. I am super excited and a little nervous about the workload. The class seems to give enough rope to hang oneself if not careful. However, anything in life worth doing provokes excitement and fear. Needless to say, I am very excited to learn different ways to think about building and to design or (having an excuse to work on designing) for myself.

One of my goals for this semester is to try a lot of different ways to do something. Therefore, if a student in the future tries something I will have a better understanding of how to help.


Resources:

  1. http://fabacademy.org/archives/2014/tutorials/mercurial_install_windows_cygwin.html
  2. http://fabacademy.org/archives/2014/tutorials/mercurial_install_mac.html
  3. http://fabacademy.org/archives/2014/tutorials/mercurial_install_ubuntu.html