Week 1 - Setup, tools, CLI and Git

Intro to the CLI

Files and folders

Paths

Basic scripting

Node.js Setup

VSCode setup

Intro to Git

Intro to Github

Markdown

Practice

Assignment

Back to core program

Week 1 Assignment

Task 1 – Bash script

In this task, we are going to create a script that sets up a project with a folder structure and a git repository.

Create a bash script named setup.sh that does the following:

  1. Print the message "Creating project…" to the terminal
  2. Create new folder called “project”.
  3. Create new git repository inside the folder “project”
  4. Recreate the following folder and file structure (keep all the files empty for now)
project
├── README.md
├── resources
│   ├── family picture.jpg
│   ├── icon.png
│   └── logo.png
├── settings.conf
└── src
    ├── database
    ├── profile
    └── program.java
  1. Commit the changes to git with the message “initial commit".
  2. Wait for 3 seconds
  3. Print the message "Setup project…" to the terminal
  4. Write "Welcome to my project" to README.md
  5. Remove the profile folder
  6. Remove the family picture.jpg file
  7. Create a second commit with the new changes. Provide a descriptive message.
  8. Wait for 3 seconds
  9. Show the contents of the Resources folder
  10. Print the message "Setup javascript…" to the terminal
  11. Rename program.java to program.js
  12. Write console.log('JavaScript works!'); to program.js
  13. Run program.js using Node.js
  14. Create a third commit with the last changes. Provide a descriptive message.
  15. Show the contents of the user's home folder
  16. Print the message "All done!" to the terminal

Extra guidelines

Task 2 - Github profile

Let's make your GitHub profile beautiful. GitHub allows a special repository named <username>/<username> that becomes the profile README on your Github profile https://github.com/<username>.

  1. Follow this guide to create your profile repository: https://docs.github.com/en/account-and-profile/how-tos/profile-customization/managing-your-profile-readme
  2. Clone this repository to your computer, open VSCode, and edit the README file to add the following:
    1. Add a cool animated welcome message.

    2. Write a short introduction about yourself and what motivates you to learn new technologies.

    3. Create a list of things you're interested in (e.g., cyber security, web development, football).

    4. Create a list of technologies you'd like to learn (e.g., HTML, Python, Java).

    5. Add a "Top Languages Card" to your profile using https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#top-languages-card

      image.png

    6. Add a streak stats card using https://streak-stats.demolab.com/?user=stasel

  3. Commit and push the changes to the remote repository, then check out your new profile.

Extra guidelines

Submission

TBD


The HackYourFuture curriculum is licensed under CC BY-NC-SA 4.0 **

CC BY-NC-SA 4.0 Icons

*https://hackyourfuture.net/*