Home | Incremental Development >>
โI'm not a great programmer; I'm just a good programmer with great habits.โ
Welcome to Hack Your Future Belgium. There is a lot of code, links, and browser tabs in your near future!
It'll take a little while to learn how to keep this all organized in your head and on your computer. If you're having trouble finding something, take a look through the links in your class repository. If you still cant find it, ask your classmates on Slack and someone will help you out!
This module's main objective is to get you comfortable with the workflows of programming and of Hack Your Future BE. The finished projects won't be complex or impressive to an outsider, but to complete them you will need to have a basic overview of the entire development process. Including: ideation, local development, pushing and pulling to github, and hosting static web pages.
We are a community of people who want to make the web a better place.
You can expect a growing network, friendships, Sunday fun, a lot of learnings, hard times getting stuck in code, and satisfaction when you reach your goals.
Please read the 'Study Tips' in our Student Guidebook. It will help you become a great HackYourFuture Student. We also expect you to know our:
so we can make the web a better place together!
how we HYF
home.hackyourfuture.be is where you can go to learn all the practical info about being a student at HYF. Here you will find such helpful info as:
- What to expect each Sunday
- How to submit and get feedback on projects
- Tips for studying code
- An overview of the curriculum
- ... and much more
how we communicate
Slack is used to communicate between coaches and students during the week. Each class has their own channel in Slack where you can discuss anything that comes to mind.
We require you to be active on Slack and ask questions when you get stuck. You are also required to help each other out when one of your peers is stuck. What's the point in asking for help if no one is there to help?!
how we collaborate
Your class repository is the home base for each module and all assignments at HYF. You will use your class repo to:
- Get to know each other
- Ask for help, and help your classmates
- Find links to all the modules and study references
- Submit check-ins and projects
- Get feedback from coaches
- Share helpful study resources
Are your ready to rock and roll?! Below are some assignments to complete before the first day of Incremental Development, if you finish them all you should be ready to hit the ground running.
Besides preparing you to work with code like a pro, the precourse will give you a change to get to know your classmates and get used to the workflows you will be using each week.
The first step is to create a Precourse issue in your class repository using the precourse
template. This template contains a check-list with all the Precourse Assignments.
As you complete the assignments you can click on the check-box to track your progress. You and your classmates will be able to see each other's issues, this is a good thing! HYF is built around collaboration. Feel free to read through each others' work, ask each other questions, and offer to help if you see someone is stuck.
Before getting to work you will need to make sure your computer is ready to go. In the Software Installations and VSCode Extensions sections of your precourse
issue is a list of the softwares you will need to succeed at HYF.
Got your softwares installed? Good news! Now it's time to organize your computer. There will be lots of folders and files coming your way, best to be prepared!
In your precourse issue you will find some suggestions on how to organize your computer.
Time to get your GitHub account ready and practice the Basic Programming Skills described in your precourse
issue.
The GitHub Setup section of your issue will describe what you need to do here.
You've made it! Now that your computer is organized, your github is setup, and you have some practice with the basics, it's time to start the precourse projects.
There are two projects to complete before the first day of Incremental Development, one is a group project and one is an individual project:
Find a time to meet with your study group and build a get-to-know-you repository with one markdown file per person in your group. This doesn't need to be anything fancy. Your focus should be on getting to know each other and getting used to working on a shared repository.
When you're ready to start your group repo, create a new issue in the class repo using the project
template and add the group
label. Fill out the project's description, list your group members, and paste this checklist into your issue before adding it to the Class Projects board:
<!-- replace the _ with your user name and repo -->
- [ ] [repo](https://github.com/_/_)
- [ ] [many small, well-named commits](https://github.com/_/_/commits)
- [ ] a nice README and one file per group member
- [ ] (challenge) [a pull requests for each group member](https://github.com/_/_/pulls)
Writing code is still writing!
Take the time to proof read and edit your code before sharing your code. Your colleagues and your future self will thank you. Practice using the VSC plugins you installed with the Precourse to write correct markdown:
- Correct your spelling with Code Spell Checker
- Format your code with Prettier
- Fix any linting errors
- Preview the rendered Markdown, does it look like you wanted?
Here are some examples for inspiration:
Develop a home page for yourself using HTML & CSS. By the end of this project you will have a live home page you can share with the world!
When you're ready to start your home page, create a new issue in the class repo using the project
template and add the individual
label. Fill out the project's description and paste this checklist into your issue before adding it to the Class Projects board:
<!-- replace the _ with your user name and repo -->
- [ ] [repo](https://github.com/_/_)
- [ ] a great README file
- [ ] [live demo](https://_.github.io/_)
- [ ] [many small, well-named commits](https://github.com/_/_/commits)
Now you're ready to start coding! Your writing process should look something like this:
- Create a new empty repository on your github account named
yourUserName.github.io
- Turn on GitHub Pages and include the live link in your repo description
- Clone the repository to your computer
- Begin developing your home page:
- Write your code in VSCode
- Open the web page in your browser (with the inspector open!)
- Make an effort to work in small steps, building one piece at a time
add
andcommit
each small change with a helpful commit message- Push each new commit to GitHub. Each time you push your live link will be updated!
- When you are finished you should have:
- A GitHub repository with many small commits
- A live website you can share with friends and family :)
Don't make this exercise too difficult! The main goal is to become familiar adding/committing, pushing/pulling, using VSC, and writing clean code. You'll get plenty of time to make beautiful web pages in the coming months.
Some study links that can help you through the Precourse Assignments. Can't find what you're looking for? Head over to the Study Book for a whole lot more!
- Be reasonable with yourself - Programming takes work, then more work, followed by a lot of practice.
- What is programming?
- Be bad at something, it's good for you.
- Study smarter, not harder!
- Tips to the beginner developer.
- What do programmers do?
- Key to being a developer
- Top 8 Developer Habits
- peternixey - long, but worth every word.
- comparing yourself to others
- Write Code Every Day
- Weekly Review Day
- Foundations of the Web
- The Odin Project's intro
- Time-Lapse Maps of the Internet
- internet for webdevs (and there's a part two)
VSC is the text editor you will use to write code at HYF. And it's way more than just a text editor! Take a look through these links to start learning all you can do with VSC. You don't need to understand everything right away, there will be more than enough time to practice:
- academind VSC tutorial
- The Coding Train
- VSC Intro from VSC
- Tips for HTML/CSS/JS
Git and GitHub are how you will do everything while at HackYourFuture. Homework submission, Sunday classes, projects, collaboration, coach feedback, everything! The more time you spend studying Git and GitHub before the classes starts, the easier it will be to focus on the fun stuff.
- Git and GitHub for Poets
- Learn to visualize what happens inside of Git with learngitbranching
- lab.github.com/githubtraining
- Getting Started with GitHub
- Creating a GitHub Repository
- Creating a local repo and push
- and much more at hackyourfuture.github.io/study