HYF-Class19 / home

Home repository for Class19
https://hyf-class19.github.io/home/
MIT License
9 stars 12 forks source link

Brian Munene: Welcome-to-Javascript, 3-weeks #247

Open BrianMunene96 opened 1 year ago

BrianMunene96 commented 1 year ago

Learning Objectives

1. What is Programming

What is a program? What is a programming language? How do programs and people fit together?

2. Just Enough JavaScript

Go in depth on JavaScript you need to know for writing interactive text-based programs in the browser. Along the way you will learn how each language feature works in small programs.

3. Understanding Programs

Learn how to understand a larger programs by finding connections between the details and the big picture. By the end of this chapter you will know how to read a new program and do a simple code review.

4. Developing Programs

Learn to modify and write larger programs in JavaScript. You'll cover many of the hidden skills necessary to develop quality software and to work collaboratively on a code base.


Setting Up

expand/collapse
> You will need > [NPM](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) and > [nvm](https://github.com/nvm-sh/nvm#installing-and-updating) on your computer > to study this material > > Using a browser with good DevTools will make your life easier: > [Chromium](http://www.chromium.org/getting-involved/download-chromium), > [FireFox](https://www.mozilla.org/en-US/firefox/new/), > [Edge](https://www.microsoft.com/edge), > [Chrome](https://www.google.com/chrome/) 1. Install or update the `study-lenses` package globally - `$ npm install -g study-lenses` (if you do not have it installed) - `$ npm update -g study-lenses` (if you already have it installed) - Didn't work? you may need to try: - (mac) `$ sudo npm install -g study-lenses` - having trouble updating? - try this: `$ npm uninstall -g study-lenses && npm install -g study-lenses` 2. Fork and clone this repository: 1. fork the HackYourFuture repository to your personal account - `git@github.com:HackYourFutureBelgium/welcome-to-js.git` 2. clone your fork to your computer - `git clone --depth 1 git@github.com:HackYourFutureBelgium/.git` 3. when there are updates to the module: 1. update your fork with a PR 2. pull the changes from your fork to your computer 3. Navigate to the module repository in terminal - `$ cd welcome-to-js` 4. Run the `study` command from your CLI - `$ study` 5. The material will open in your default browser, you're good to go! - you can read the `study-lenses` user guide from your browser by navigating to `localhost:xxxx?--help` > If you have a Windows computer and get this error: > > - `... /study.ps1 cannot be loaded because running scripts ...` > > follow the instructions in > [this StackOverflow answer](https://stackoverflow.com/a/63424744), that should > take care of it ; ) --- ## Code Quality Scripts This repository comes with some scripts to check the quality of this code. You can run these scripts to check the code provided by HYF, and to check the code you write when experiment with the examples and complete the exercises. ### `npm run format` This script will format all of the code in this repository making sure that all the indentations are correct, the code is easy to read, and letting you know if there are any syntax errors. ### `npm run spell-check` This script will check all of the files in your repository for spelling mistakes. Spelling is not just a detail, is important! Good spelling helps others read and understand your programs with less effort. `spell-check` is not so clever though, it doesn't have _all_ possible words in it's dictionary and it won't know if you _wanted_ to spell a word incorrectly. If you think one of it's "Unknown word"s is not a problem, you can either ignore the suggestion or add the word to the `"words": [ ... ],` list in [.cspell.json](./.cspell.json). ### `npm run lint:md` This script will [lint](https://en.wikipedia.org/wiki/Lint_%28software%29) all the Markdown files in this repository, checking for syntax mistakes and other bad practices. Fixing linting errors will help you learn to write better code by pointing out your mistakes _before_ they cause problems in your program. Some linting errors will take some practice to understand and fix, but it will be a good use of time. ### `npm run lint:js -- ./path/to/code` Just like `lint:md`, but for `.js` files. This script will lint all of the JS files in this repository, letting you know if there are any syntax errors or bad practices.
BrianMunene96 commented 1 year ago

Some more details

How as things so far?

As things stand, I am making some good progress going through the material.

Progress

I am now working through the Just Enough Javascript

Where can you still use some help?

Grasping some of the Javascript concepts has been challenging but the resources provided are a great help. I highly recommend Javascript.info

Remarks?

I am now really enjoying seeing some Javascript code and predicting what it's going to do πŸ˜„πŸ’ͺ .

yildiztugba commented 1 year ago

Hi @BrianMunene96, It would be nice if you can push your solved exercises in the repo and add the link here. (tracing variables, what is the programming, just enough js)

BrianMunene96 commented 1 year ago

Week 1

I Need Help With:

For now, Everything is going on well as planned

What went well?

Reading through the Javascript materials and guessing what the program is going to do. Also scripting some simple JS programs

What went less well?

There are a ton of exercises and content (in a very good way). I sometimes find myself lost in between as I try to understand every single line of code.

Lessons Learned

Sunday Prep Work

BrianMunene96 commented 1 year ago

Week 3

I Need Help With:

For now, Everything is going on well as planned

What went well?

Understanding how to fix bugs and errors

What went less well?

I had a bit of a challenge with the last exercise #pyramid πŸ˜„

Lessons Learned

Sunday Prep Work