Skip to content

1. Principles and practices

This week I worked on defining my final project idea and started to getting used to the documentation process.

Research

Fab Academy officially began on January 21, marking the start of my documentation and learning journey. With guidance and support from my instructors, Onik from Fab Lab Armenia and Maxime, I began exploring previous Fab Academy student work and familiarizing myself with the Fab Academy website, with particular focus on the Tutorials section. Through this process, I identified the core tools required for documentation and version control, including Git for managing and uploading content to the Fab Academy repository, and Visual Studio Code for writing, editing, and maintaining code and Markdown files.

GIT

Visual Studio

Python

Setting Up Git

I Need Git to: - Manage Documentation: Tracking and updating my project documentation easily.

  • Sync with GitLab: Pushing my files to the Fab Academy repository and keeping my work backed up.

After installing Git, I created a folder for all Fab Academy files and ran Git Bash.

After that I needed to configure my local Git environment with the same details used on GitLab. I wrote these commands in Git Bash. I faced an issue with the email, so I asked chatgpt about what the error might be: I wanted to make sure that all is well, so I used this code: So I had that fixed and it worked out.

Generating SSH Key and Cloning Repository

I started researching what an SSH key is and realized that it is used for securely connecting to remote servers without needing a password each time.

I will generate the ED25519 SSH key because it is more secure and faster than the RSA key, and it is recommended for modern SSH connections.

Then I went to the GitLab website, typed “SSH” in the search bar, and found the section.

Git Commands, Setting up Visual Studio Code

Since I have already generated an SSH key, I will clone the repository using this method. I entered the Fab Academy project on GitLab and copied the link.

Git Commands

These are the Git Bash commands I will use throughout Fab Academy: Git Clone

What Code I Will Use

I chose Markdown for my website because it’s simple, flexible, and lets me focus on creating content rather than writing complex code. It allows me to structure text, add images and links, and update pages quickly, supporting a hands-on, iterative approach to building my site. Markdown integrates seamlessly with GitLab and the Fab Academy workflow, making it an efficient tool to document my process, reflect on my learning, and share my progress as I experiment and refine my online presence.

I downloaded the software using this Link

alt text

alt text

This Page was very helpful which was suggested by my instructors

Choosing Markdown over HTML

What I did I chose to use Markdown instead of HTML to build and document my website.

What I learned I learned that Markdown provides enough flexibility to include formatted text, images, and links while keeping the process simple and efficient. This allowed me to prioritize learning and documentation rather than syntax.

Challenges / Observations At this early stage, learning multiple new tools at once made it important to reduce unnecessary complexity wherever possible.

Next steps / Improvements As the course progresses, I aim to better understand the underlying structure of HTML and explore when a more advanced approach may be needed.

Compressing Images

I used a simple, non-coding approach for image compression by saving images in JPG format, which helped keep file sizes manageable and allowed me to focus on completing the assignment. Through this, I learned that small workflow decisions can greatly improve efficiency, and in future weeks I plan to explore proper image and video compression techniques as I become more comfortable with the course tools and pace

So I changed the size of this image:

alt text

Using this simple method:

alt text

Use of AI

As part of my Week 1 work, I used AI to support my understanding of project documentation practices, version control with Git, and website setup using MkDocs and Markdown. The AI assisted mainly through explanatory and troubleshooting prompts, as well as content refinement, while I independently applied, tested, and documented all steps in accordance with Fab Academy requirements. These are the prompts that I have used for my first week assignment:

At first, I was overwhelmed by the amount of new technologies involved, including coding, MkDocs, Python, HTML, CSS, and various forms of encryption. After asking questions and exploring these tools, I gradually made peace with the learning curve and began approaching the process with curiosity rather than hesitation.

alt text

I found it very difficult to decide where to open git bash :D

alt text

and it turned out that it should be right here:

alt text

And then struggled a little bit more:

alt text

alt text

So I can finally figure out the right path where I had saved my repo:

alt text

Week 1 was a foundational experience that challenged my assumptions about documentation and technical workflows. I learned that setting up tools such as Git, MkDocs, and Markdown is not just a technical requirement, but a critical part of thinking, documenting, and communicating my work clearly. While the learning curve was initially overwhelming, this week helped me build confidence in navigating unfamiliar systems and reinforced the importance of process, reflection, and consistency in my learning journey.

Time Management & Learning Curve

What I did I focused on completing the required assignments while making practical decisions to manage my time effectively.

What I learned I learned that pacing myself and prioritizing tasks is essential when dealing with a steep learning curve and unfamiliar technical content.

Challenges / Observations Digesting many new concepts simultaneously was mentally demanding, especially during the first week of the program.

Next steps / Improvements I aim to build a more structured weekly workflow and gradually deepen my technical exploration without sacrificing documentation quality.

Modifying my Website

I have changed the name on the bar at the top of the page using this code:

site_name: Saad Salama - Fab Academy

I learned about this skill on the second week actually which will allow me to use no screenshots when I need to show a code.

alt text

I also used this page to edit the links that were provided in the website template and I changed the color and the theme of the website.

Reflection

I have learned so much during this week. First thing I learned is that if you panic that is okay, if you feel overwhelmed and this is way too hard for you, that is also okay. Things doesn’t happen over night and you don’t learn at first sight. I really enjoyed the time were I felt like I was lost, but I found a way through and it gets better. The effort I needed to get the job done was less than the effort I needed to avoid finishing this assignment.