Week 1 - principles and practices, project management (Jan 28)

Fab Lab Mcr

On a wet and windy Wednesday four students David Mason, Sally Williams, Kasper Krieberg Andersen and myself joined our tutor Micheal Walsh in Fab Lab Manchester for Neil Gershenfeld’s welcome and introductory lecture of the 2015 Fab Academy. We learnt about the origins, theory and roadmap of digital fabrication and the parallel between the evolution of computers and biology, which got me thinking about bits and atoms in different ways. Neil then went onto talk about the origin, culture, principles and growth of Fab Labs around the world. After a bio-break (I’m learning new jargon already) we moved into project management (or our life for the next five months), Neil gave a whistle-stop tour of project management software tools for synchronisation, version control, Web development, communication protocols and project management programmes. While I’m familiar with some of the tools I think it ’s going to take the whole semester to get to used to them.

We then covered the principles of project management, which I found really useful and will try to apply.

demand v supply-side time management - define how much time you have for each step, before you start and stick to it. I wish I could wind the clock back and avoid all the late nights before deadlines!

serial v parallel development - develop things in parallel so if hit a road block in an early step it doesn’t stall the whole project

spiral development - start at the centre of the spiral with the end goal ‘dancing robot example’ and the first step is the simplest thing to get along the path ‘wiggling finger’ and then build on complexity until you reach the end goal

bottom-up v top-down debugging + hierarchy and modularity - build and test things in chunks makes it a lot easier to get working and build up rather than putting everything together and not knowing where to start to solve problems.

So onto the first assignment, which is to build a personal site in the class archive describing me and my final project proposal.

Developing a personal website

My HTML skills are at pretty basic, having dabbled with a WordPress blog in the past. I started by going through the w3schools.com tutorials to familiarise myself with HTML and used Textwrangler to write some simple HTML pages. I looked at previous students sites showing the page source to understand more sophisticated pages and CSS. I didn’t feel confident enough to create the HTML from scratch so started looking at website development tools. I came across Bootstrap on w3schools.com and liked the idea of developing a responsive site that could easily be viewed on desktops, tablets and mobile devices. Having got the hang of Bootstrap I started using Brackets as a text editor to develop the website.

Mercurial

Getting to grips with Mercurial (Hg) the distributed version control system of choice has been challenging. After viewing the tutorial by Joel Spolsky Hg Init I set about installing Hg on my laptop using the tutorial guide. After a few hiccups Hg was up and running and ready to pull, merge and push to the archive.

Remember the Fab Academy mantra 'hummed to a suitable tune'.

  1. hg pull
  2. hg update
  3. hg addremove
  4. hg commit -m "message"
  5. hg pull (worth doing again in case anything has changed in between last hg pull)
  6. hg push

Final project proposal

The second part of the first weeks assignent was to develop a final project proposal. I've put this on the final project page.