The assignement for the first week was to build a personal website,
to learn the basics of version control system and to make a
proposal for the final project.
I had a previous intermediate knowledge about html and css and this first week
represented an opportunity to investigate the bootstrap framework and to
have a general refresh of the subject.
After having a quick overview on some of the different tools proposed during
classes, I've decided to use bootstrap.
I think that this framework has a very detailed and well organized documentation
which is basically all that you need to get started (http://getbootstrap.com/).
I started from a basic bootstrap template to familiarize with the grid system and
to explore some classes. As soon as I felt confortable with the basics,I've started
to build my site from scratch. There is a
list of useful links that I've used during this week:
/*this is the css class*/
.snail{
background-image: url("icon-snail-square.png");
background-repeat: no-repeat;
height: 40px;
width: 40px;
position: absolute;
margin-left: 10px;
margin-top: 10px;
transform: rotate(45deg) translateX(120px) rotate(90deg);;
-webkit-animation: orbit 30s linear infinite;
-moz-animation: orbit 30s linear infinite;
-o-animation: orbit 30s linear infinite;
animation: orbit 30s linear infinite;
}
/*Keyframes for the animation*/
@-webkit-keyframes orbit {
from { -webkit-transform: rotate(0deg) translateX(120px) rotate(90deg); }
to { -webkit-transform: rotate(360deg) translateX(120px) rotate(90deg); }
}
@-moz-keyframes orbit {
from { -moz-transform: rotate(0deg) translateX(120px) rotate(90deg); }
to { -moz-transform: rotate(360deg) translateX(120px) rotate(90deg); }
}
@-o-keyframes orbit {
from { -o-transform: rotate(0deg) translateX(120px) rotate(90deg); }
to { -o-transform: rotate(360deg) translateX(120px) rotate(90deg); }
}
@keyframes orbit {
from { transform: rotate(0deg) translateX(120px) rotate(90deg); }
to { transform: rotate(360deg) translateX(120px) rotate(90deg); }
}
/*this is the css class*/
.snail2{
...
...
transform: scaleY(-1) rotate(45deg) translateX(120px) rotate(90deg);;
...
...
}
/*Keyframes for the animation 2*/
@-webkit-keyframes orbit2 {
from { -webkit-transform: scaleY(-1) rotate(0deg) translateX(120px) rotate(90deg); }
to { -webkit-transform: scaleY(-1) rotate(360deg) translateX(120px) rotate(90deg); }
}
@-moz-keyframes orbit2 {
from { -moz-transform: scaleY(-1) rotate(0deg) translateX(120px) rotate(90deg); }
to { -moz-transform: scaleY(-1) rotate(360deg) translateX(120px) rotate(90deg); }
}
@-o-keyframes orbit2 {
from { -o-transform: scaleY(-1) rotate(0deg) translateX(120px) rotate(90deg); }
to { -o-transform: scaleY(-1) rotate(360deg) translateX(120px) rotate(90deg); }
}
@keyframes orbit2 {
from { transform: scaleY(-1) rotate(0deg) translateX(120px) rotate(90deg); }
to { transform: scaleY(-1) rotate(360deg) translateX(120px) rotate(90deg); }
}
The second main focus was to learn the basics about a versioning system.
I had a basic knowledge on what VCS are and i've used the git software through the Git Hub,
a web-based Git repository hosting service.
The Fab Academy network, use Git Lab which is very similar to Git Hub.
By the way, to refresh all the ideas on what a VCS is and what are the incoming benefits of it's use, i've followed
this tutorial.
A VCS is a system that takes trace of every single change made ona files. It is particularly useful in managing group shared projects. Each
member have access to a shared repository and, accordingly to it's privilege, he can modify the files.
The system takes trace of every change made on files and offers the possibility to roll back to previous versions
of the files.
All the modifications and the changes in the repository are shared too so everyone can see what is modified and by who at any time.
Moreover, in a VCS, is possible to branch a local copy of the repository (or part of it) to work on and only later merge this modified part
with all the other modifications made by the rest of the people who have the access to the files.
To summarize a little bit what i have understood, there are some major advantages in using VCSs:
ssh-keygen
cat ~/.ssh/id_rsa.pub
git clone git@git.fabacademy.org:fabacademy2016/fablabtoscana2016.git
git add path/to/my/folder .
git commit -m 'any message'
git push origin master
I always find funny work with html and css and each time i learn something new.
For instance tried css animation for the first time.
Concerning Git, I think that if properly used, it is one of the most powerful instruments
when you have to work on a shared project.Under linux is really a super-fast tool (thanks to command line)
to keep trace of all the changes made on the archive.Moreover, you can rollback to any
previous version of any files to correct any mistake.
Actually… i have to confess that i've modified some pages of the other Fab Academy
participants through the shared archive, but I am confident that no one of my friends
will read my site until this point so….i think they will never catch me :) (unless they will
read the git-log...)