Week 02. Project Management¶
This week, I started get used to the learning style and time arrangement of Fab Academy. That means I was not too excited to sleep :D The second week of learning bombarded me with lots of information, which will surely take me a lot of time to digest in the following days.
The contents we covered during Week 02 include: - Meeting students from different labs - Learning about many tools in project management - Goodbye from all over the world :D
The class started with Neil invited students to introduce themselves as well as their potential projects. As to which students will get lucky, it depends on the random generator. At the beginning I thought this is like a normal “call the roll” process that many teachers adopt to check whether the students’ attendance. And I assumed it will take maybe 5 minutes. Later I realized it’s more than that. It will also help the 100+ students in Fab Labs around the world to know each other, hence a stronger connection and network, which is super cool!
I couldn’t remember her exact name, but I was quite interested in the open source agriculture project by a student from Fab Lab UAE. Since my company is exploring IoT solutions, these key words naturally rang a bell. Would love to see how it goes and who knows, maybe we can explore more together!
During the second session of the class, Neil walked us through many tools.
- synchronization
- version control
- web development
- blogs, wikis, content management systems
- video conference
- remote desktop
- cloud computing
- project management programs
- project management principles
To be honest, I couldn’t remember most of the tools. Even though I took notes during the class, many of them are scattered information when looking back at my super fragmented notes.
The most important information that has been lingering in my mind is: - GitLab - it’s very useful. Need to go through a tutorial to learn how to use it. - Document - Document my work, document the process, no matter it works or not, learn to document, what works, what fails, how it’s solved etc. - Files Do not upload files that are too large, check the size of the images before uploading
And this week’s assignment is to: - Work through a Git tutorial - Build my own personal site, describe myself and my final project - Sign the agreement (as a student) on GitLab. And here is the link to my signed agreement.
I checked some online Git tutorials online, and then began to follow the instructions to set up my website:
Step 1: install Git on my laptop
For Mac OS, I have to install homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
And then I installed Git
brew install git
Check my Git version
git --version
It returned with the following info: git version 2.20.1
Even though it showed git version 2.20.1 has been installed on my MacBook Air, I still couldn’t find the Git client on my laptop, so in the following steps, I used Mac Terminal to finish the following tasks and then started updating my assignments on the Web IDE.
Step 2:Generate my SSH key
Click the upper right corner of my gitlab.fabcloud.org site and follow these steps, setting => SSH Keys => generate one And then I have my private SSH key! (happy face.jpg) See the following screenshots.
Step 3: Clone my repository
I used the following code to clone my repository.
git clone git@gitlab.fabcloud.org:academany/fabacademy/2019/labs/szoil/students/haiyan-su.git
But I made a tiny mistake in this process and it led to this failure “Host key verification failed” The tiny mistake was I did not type “Yes” here, instead, I just click the key “ENTER” directly. I tried several times and did not manage to get it working. Then my colleague Anson came along and asked me to go through the process again, and I noticed the tiny difference was the word “Yes”! This is a good lesson for me, a newbie into coding. I thought the default answer is “Yes” and I could just click “Enter” for it to work. However, it did not work this way. “Yes” should not be omitted! Lesson learned and it worked! See the following screenshots.
1 - clone failure¶
2 - success¶
Step 4: Update Student Agreement
Step 5: Update my assignment for Week 01 and Week 02
As mentioned earlier, I finished the rest of my assignment at the Web IDE directly. In this process, I find it quite easy to update the info. It seems through the Web IDE, I did not use the function of “push”, every time I finished the editing, I clicked “Commit changes” at the bottom of the page and then it’s updated. This is quite convenient. I will need to figure out how to use the Git client on my laptop locally later and try practicing other key Git functions.
While editing at the Web IDE, I learnt the following basic skills:
- “Preview” is very useful, it shows us how the webpage will look like, so that we can fine tune the format etc.
- To add images into the post, we need to upload the image into the repository => copy the image link => use the following code to insert the iamge into the right location
![ALT](image link)
- Very basic codes for font setting or adding links:
1. underscore right before and after the words/phrases to set it as italic: e.g. italic, happy, Fab Academy 2019 are achieved with the following codes
_italic_, _happy_, _Fab Academy 2019_
2. two asterisk symbols right before and after the words/phrases to set it for bold: e.g.GitLab Coding are achieved with the following codes
**GitLab**,**Coding**
3. use “identifier” to set hyperlink. For example, if I want to link website of my company to my self-introduction. I need to set brackets at the specific word “Seeed” and add the “identifier” after it, and then define “identifier” as the link by add www.seeed.cc, as the code below:
[Seeed][identifier] [identifier]:https://www.seeed.cc/
And it will show as: I am Community Manager at Seeed
4. some other basic tips for the formatting - use two blanks after the sentence to start a new line. As I am used to the editting on documents, I thought it will be the same when it comes to coding. And it’s good to know that the invisible two blank spaces are so useful :D - use hyphen for listing.
Since I have never coded before, the above-mentioned basic knowledge are very important for me. And I have been excited to absorb different tips and knowledge along the path. At current stage, I feel like I am a toddler who starts to walk or a student who starts to learn writing Chinese character. And I have to follow each stroke slowly before they become a part of me and I can write in my style freely. Thank you very much for all the help from close and afar and for the encouragement and inspiration from the Asia regional review last night!
Currently I still use the default theme for my website, I will figure out how to customize it later as well.
So this is what I learnt for Week 02, and I will need to further learn the followings: - Git tutorial, especially how to use my local client on MacBook Air. - Customize theme for my website
Can’t wait to be fully armed :D
Update June 18th.
I learnt from Vicky’s document that she used Sourcetree, so I decided to use this one as the Git client on MacBook. Meanwhile, for HTML editor, Visual Studio Code and Atom are recommended. I downloaded both, and finally decided to use Atom, basically because of the cute mascot :D.
After downloading SourceTree, I signed up with my account and verify it.
Here is my general setting on SourceTree.
And then I set up my remote repository by putting in my remote repository address “git@gitlab.fabcloud.org:academany/fabacademy/2019/labs/szoil/students/haiyan-su.git”.
Since previously I was updating via the Web IDE, my remote repository was equipped with the latest update, yet my local repository was not.
So I used “pull” function to update my remote repository to local.
Now I can use Atom to edit locally, and use SourceTree to commit and push to update it to the webpage.