Your Portfolio Site
With the git workflow learned and your tools in place, this is the last lesson before the first module begins, and it is a practical one: you put that workflow to use for real, forking and cloning your first repository to set up a place where your work can live as you build throughout the path.
My first two articles, written under the Dutch Engineer name, were both small projects I had built because I wanted to. One tried to predict the next four weeks of videogame sales from publisher region, weekly Twitter volume, and historical sales I scraped off VGChartz, fed into an AdaBoost regressor over a random forest. The other built a tag recommender for Stack Overflow, a site I had leaned on constantly while learning to code, using data pulled from the Stack Exchange explorer. Neither was assigned, and the videogame model was not good — it landed around 0.375, which is to say it was barely better than guessing. I picked these because they were things I actually liked, not because they worked.
That choice mattered more than I realized at the time. When I switched into this career and started interviewing, hiring managers kept bringing these two up — more than once they raised the videogame project before I did. And because I cared about it, I could explain exactly how it was built and exactly why it was inaccurate: weekly tweet counts are a weak signal without sentiment, four weeks of lookahead compounds error, and a sales spike around a release date is mostly driven by things the features never saw. A weak model I could dissect was far better interview material than a strong model I could only describe. The lesson I eventually wrote down was simple: build projects on something you love to talk about, because you will talk about them far more than you build them. In interviews, being able to explain what you built, why you built it that way, and how you worked through the problems is often as important as the implementation itself.
A portfolio gives you a place to practice that. Throughout this path, you will build projects that represent the skills you are developing as a Machine Learning engineer. Those projects will live in GitHub repositories, but a repository is only part of the story. A portfolio brings them together so you can show what you built and how your thinking develops over time.
The goal is not to create a perfect portfolio before you begin. It is to create a foundation that grows alongside your skills. Each time you complete a project, you will have somewhere to add it — and by the end of the path, you will have a record of the systems you built, the decisions you made, and the engineering judgment you developed along the way.
What you are setting up
The site is a small static page designed to be simple and easy to maintain.
There is no framework and no build step. The site reads your information from a single configuration file and uses it to display your portfolio.
You will only need to edit one file. Everything else is already set up for you.
The starter repository contains four files:
index.html— the page structurestyle.css— the stylingmain.js— reads your configuration and fills in the page_data/config.json— your information; this is the only file you edit
The setup should only take a few minutes. Once it is complete, you will have a live URL that you can update throughout the path.
Fork and clone the starter
As covered in Git Basics, a fork is your own copy of a repository under your account, separate from the original. Open github.com/dutchengineer-org/portfolio-starter and select Fork in the top right. This creates that copy under your own account, which you control and can publish from.
Clone your fork locally, replacing <your-username> with your GitHub
username:
git clone https://github.com/<your-username>/portfolio-starter.git
cd portfolio-starter
Edit your configuration
Open _data/config.json. This file contains the information that
appears on your portfolio:
{
"name": "Your Name",
"title": "Software Engineer",
"bio": "One or two sentences about what you are building and where you are headed.",
"github": "https://github.com/your-username",
"linkedin": "https://linkedin.com/in/your-profile",
"projects": []
}
Update name, title, bio, and your links.
Leave projects as an empty list for now. You will add projects here as
you complete work throughout the path.
Preview it locally
You can view the site locally with any static file server. Python includes one, so from inside the repository run:
python3 -m http.server 3000
Open http://localhost:3000 in your browser.
You should see your name, title, and bio, with an empty projects
section. Press Ctrl+C to stop the server.
Publish with GitHub Pages
This is the one place you push straight to main. Git Basics taught you to work on a
branch and open a pull request, and that is the workflow every module project uses — but
the portfolio is the exception: it is your own single-file config with no one reviewing
it, and GitHub Pages publishes whatever is on main. So here you commit directly. The
branch-and-pull-request loop starts with your first module project.
Commit your change and push it:
git add _data/config.json
git commit -m "Add my information"
git push origin main
Then turn on GitHub Pages: in your repository, go to Settings →
Pages, set the source to Deploy from a branch, choose the main
branch and the / (root) folder, and save.
After a short wait, your site will be live at:
https://<your-username>.github.io/portfolio-starter/
Each push to main republishes the site automatically. You do not need
to change these settings again.
Adding projects later
When you complete a project or the capstone, add an entry to the
projects list in _data/config.json:
{
"projects": [
{
"title": "Prediction Service",
"description": "An end-to-end ML service: a trained model behind a validated API, deployed and monitored.",
"repo": "https://github.com/your-username/your-project-repo",
"tags": ["python", "ml", "deployment"]
}
]
}
Commit and push your changes, and the site will update automatically.
Adding each project as you complete it keeps your portfolio current and gives you a growing record of the systems you have built.
By the end of the path, this site will contain the work you created throughout: your projects, your capstone, and the engineering decisions behind them — and a way to talk about all of it.