In Fabacademy it is important to document our progress and make it visible to the entire world through our website.I had attended the Pre Fab Academy course conducted by MIT and Kerala Startup mission in our new fab lab and i successfully completed it.At the time of pre fab we made all documentation in our own website. By doing this We are sharing the document in our website, anybody can see it ,use it and they can fix their problems accordingly.
Assignments
This week's assignments include:Learning outcomes:
- Use web development tools, make personal website
- Learning Git from tutorials
- Document steps for uploading file to archive and Push to class archive
- Describe about yourself
- Describe about the project with a sketch
- Java
- Python
- CSS
- PHP
- Ruby
- C++
- C Language
My Website
I have gone through internet about different website development tools and learned somany thing's related to creating a web page.When it comes to choosing the best web development language for our website, it's important to remember that there is no single best language.Instead, a web developer will choose the option that best suits our project, based on the specific functionality or features you want.
Basic web development languages
HTML and CSS are the two most basic web development languages, and are used to build nearly all webpages on the Internet.
HTMLHTML is the standardized markup language that structures and formats content on the web. Page elements like the titles, headings, text and links are included in the HTML document. It is one of the core technologies in use on the Internet and serves as the backbone of all webpages.
CSSCSS (Cascading Style Sheets) is a style-sheet language that basically allows web developers to "set it and forget it." Paired with HTML, CSS allows a programmer to define the look and format of multiple webpages at once; elements like color, layout and fonts are specified in one file that's kept separate from the core code of the webpage.there are some more powerfull languages are there which are used nowadays.these are:
as a beginner i started studying about html and started to make a simple website using html.the steps shown below is a simple gif representation its a pure coding and the explanantion of this in this will make this assignment bigger.If any body wants to learn more about html you can check with the link shown below.

Some websites I found helpful to learn:
let me start, inorder to make a html website first make a new foder and creat a New note pad ,save as to name.html.Open the note pade using gedit and type the comment as shown above.
geditgedit is the default text editor of the GNOME desktop environment and part of the GNOME Core Applications. Designed as a general-purpose text editor, gedit emphasizes simplicity and ease of use, with a clean and simple GUI, according to the philosophy of the GNOME project. It includes tools for editing source code and structured text such as markup languages.
Then I started to create a new web page for My Fab academy 2016 the same prosess.Next i understat how to insert a web link, video (Youtub),GIF file and Heading and font color & style.You can see my website git edit vertion as shown below :

Download the Source Code(text file):
Website Development
Creating Github Repositories
GIT is the most accomplished distributed version control system. It helps us to manage our own project locally using a version control tool or if we want modify a code that is located in a remote central GIT repository.
Installing and Configuring Git.$sudo apt-get install git
The next step is to specify your username and email address to your GIT repository using "git config" as shown below.
git config --global user.name "username"
git config --global user.email email@email.com
Verify the git configuration information as shown below.
$ git config --list
Create a repository in Github for personal website
Head over to GitHub and create a new repository named username.github.io, where username is your username (or organization name) on GitHub. If the first part of the repository doesn't exactly match your username, it won't work, so make sure to get it right.Clone the created repo to our PC.
$ git clone https://github.com/username/username.github.io
Move to that folder and create index.html and some content. Now we need to push this.
Add, commit, and push your changes:
$ git add --all
#adding files
$ git commit -m "Initial commit"
#Adding Comments
$ git push -u origin master
# pushing
Creating SSH Keys.
SSH keys are used to identify computers, it helps in pushing easy without passwords.Before creating one we need to check for exixting ssh key.For that type the code below in terminal.
ls -al ~/.ssh
# Lists the files in your .ssh directory, if they exist
Generate a new SSH key
With Terminal still open, copy and paste the text below.Don't forget to change the email address to your login email id for github.
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Go with the default settings, skip paraphrase.I added a paraphrase which made my ssh configuring that not aading any advantage.So i created new ssh key withoout paraphrase and then configured it to github.
Ensure ssh-agent is enabled:
# start the ssh-agent in the background
eval "$(ssh-agent -s)"
# Agent pid 59566
Add your SSH key to the ssh-agent:
ssh-add ~/.ssh/id_rsa
Add your SSH key to your account
Copy the SSH key to your clipboard. For that type the following code in terminal.This will install xclip first and then copies the key to clipboard.
$ sudo apt-get install xclip
# Downloads and installs xclip.
xclip -sel clip < ~/.ssh/id_rsa.pub
# For copying the contents of the id_rsa.pub file to clipboard
Now login to github account from browser, navigate to account settings by click on profile photo and clicking on Settings.
On the left settings sidebar, click SSH keys.
Click Add SSH key.Github is configured using ssh. Now we can push to your rep very easily.
Problem Faced
one simple error happened in this week during the updation of my document in git.the steps for pushing the document is shown below.
~$ git pull
~$ git add --all
~$ git commit -m "week"
~$ git push
after push i got an error as shown and my documentation failed to update but i got some hints from the error itself,as you can see in the hints :

i analysed that once we pulled the documentation,before my push,by chance if any others pulled there documentation then there will be some conflicts so inorder to avoid that i pulled my documentation once again and then again pushed.this time my documents get successfully pushed.thanks for the hint..
Final Project Abstract : RF-based small wall-e Robot


The block diagram for ATtiny-based dual-mode robot. When a button is pressed in the remote, the corresponding code is transmitted through RF transmitter. At the receiver end, this transmitted signal is received and decoded. The MCU unit compares the received code and drives the motors corresponding to the code received. Obstacle detectors detect any object in the way and intimate the microcontroller.