Weeknotes - 03 Makers
Tags: bootcamp, beginners, debugging, empathy
Published: 2019-06-18 08:49:05

---
title: Weeknotes - 03 Makers
published: true
description: Reflections on the past week at Makers Academy
tags: bootcamp, beginners, debugging, empathy
series: Makers weeknotes
---

# WebApps in Week 3

Each day this week held a reminder to make the most of time at Makers, by asking these questions:

1. Are you having fun?
0. Are you a better programmer than yesterday?

They're good questions to have on hand for any learning endeavour.

## Debugging in the Browser

I’ve been putting everything learned so far into web app creation this week, and had to up-skill my debugging since I’m using more of the '[stack](https://hackernoon.com/what-is-a-full-stack-developer-7b7750aa4c98)'.  By separating the possible errors into two wide categories, the choice of which actions to take to solve them becomes a step simpler:

1. **Error In Code** (syntax or name errors for example, these come with helpful error messages) and, 
0. **Unexpected Behaviour** (expectations are different to the actual behaviour)

Now that I'm using the [MVC model](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller), there are more places for errors to occur in my programs, and more places to detect them: feature testing (we've been using [Capybara](https://teamcapybara.github.io/capybara/) with RSpec), unit testing, linting, and running the code in the browser.

> :bulb: stick to investigation until you're confident in what your change will do.

## How Not To Piss Off Your Team

Makers alumni Dani Booysen & John Forster delivered a lunchtime talk titled **_How Not To Piss Off Your Team: A Junior Devs Unofficial Guide To Happiness_**. I enjoyed hearing about their experience of life after Makers and some of their cringe moments as professional developers.  Some of their tips:

 - Don't be late (be respectful and be motivated)
 - Ask for help (find out how long you should be stuck before escalating)
 - Don't leave gross stuff on people's desks (be respectful)
 - Take notes (you won't remember everything)
 - Go to socials (build rapport)
 - Read the style guide (and ask _why_ something is why it is if you don't understand - decisions are usually made for a reason)

## Process Modelling

Want to abstract a process so it's digestible and can be understood with little prior knowledge?  Enter: _process modelling_.

![Bumblebee Lifecycle from BBCT](https://thepracticaldev.s3.amazonaws.com/i/wcyizgnezba5148j3uby.jpg)
<sub>_The Bumblebee lifecycle, image source [Bumblebee Conservation Trust](https://www.bumblebeeconservation.org/)_</sub>

Diagrams are probably preferred for this but a process could be modelled in any medium (Makers encourage interpretive dance but no-one was biting).  This week we looked specifically at modelling the server client relationship, using an example user journey and, browser developer tools to investigate the operation between client & server.

![HTTP requests client/server model sketch](https://thepracticaldev.s3.amazonaws.com/i/97e5s5gmk4e3ye87x1e3.png)
<sub>A client/server process model sketch drawn by my group at Makers.</sub>

## Misc

:muscle: Had a hard weekend physically but I've been doing a great job looking after myself
:seedling: Am growing some chilli plants and they're looking happy!
:flashlight: Empathetic devs build allies and build better UX. 
:train: The early train provides the quieter journey