Intro

I am Abhijith Rajeev Menon from Mumbai, Maharashtra, pursuing B.tech in Electrical and Computer Engineering in AMRITA VISHWAVIDYAPEETHAM, AMRITAPURI. I am an avid coder and would like to pursue more in the field of computer science. Talking about myself I like to Code, Eat, Sleep , Repeat .. A crazy football fan and used to play football on daily basis. My Ambition is to become a software engineer at Google. This Website is made for displaying my work done for the tasks given by the Foss Club. Hoping you would like to see my work, head back to the main page and click on WORK.

AMFOSS-A Project

Courier Management System

This is the link for the project here. You can click on the link to redirect to my repository window to find the project code and documentation . Here I am giving a 10 day summary of what all things I have learnt during the course of completion of project.

Day-0 5/10/19

Read the project abstract and since that was the first day of allotment of the project all I could do was read the Documentation and understand what Django really is.

Day-1 6/10/19

The Second Day what I did was , I installed Django. So as to install Django I Had to create a virtual environment. After creating the virtual environment I installed django using the command line. Read the documentation and tried to watch some tutorial videos of how to runserver and create databases using Django.Read about different models , and how to create databases for creating the courier management system.

Day-2 7/10/19

Got acquainted with the Django specifications such as migrations, runserver, starting a project , starting and app and many more . Using templates created a login page for admin and the next thing was to add ModelFields , so tried some of them by reading documentation.

Day-3 8/10/19

For Creating the user login I tried to link both the user and admin login together, But after considering the function of user, I thought that there is no use of a user logging into the page. The only thing user needs to do is to search for the courier(whether reached or not).

Day-4 9/10/19

After searching in internet for more good options I found out that we can override the base.html, by just passing some instructions in the admins.py . So I deleted the login page created before and overrode the Django Default admin page.

Day-5 10/10/19

I tried to override the base_site.html template in the built-in templates of Django folders, but I couldnt progress much in that. Tried different things after searching.

Day-6 11/10/19

Now for the search page I had to right a html-css code for getting the access from database and after iterating the result is to be displayed.

Day-7 12/10/19

After searching and reading many tutorials I could complete the search.html template that is used as search/ and the views for the same template.

Day-8 13/10/19

Couldnt Do much due to Periodicals.

Day-9 14/10/19

All I could do was to write the documentation of the project

Day-10 15/10/19

Finalise the project and write the remaining documentation which was incomplete.

BLOG - AMFOSS Tasks

I am providing the GitHub profile here. You can click on the link to redirect to my repository window to find the amfoss tasks. Here I am giving a summary of what all things I have learnt during the course of completion of tasks.

THIS LINK WILL LEAD YOU TO THE THINGS LEARNT DURING THE COURSE OF COMPLETION OF TASKS..

THIS LINK WILL LEAD YOU TO THE REPOSITORY WHERE YOU CAN FIND THE ACTUAL CODE OF THE TASKS..

TASKS COMPLETED

TASK DETAILS Links For the code
Task- 0 :: Installing Ubuntu ----------------------
Task - 1 :: Starring Amfoss Tasks LINK
Task - 2 :: Programming LINK
Task-3 :: Google Scraping Using Ruby. LINK
Task-6 :: CLI App using Go. LINK
Task-7 :: Rusted Email. LINK
Task-8 :: Captcha Breaking. LINK
Task-9 :: Setup a Simple Personal Website. LINK
Task-10 :: CS50 (Partially Completed) LINK
Task-11 :: Pong Game. LINK
Task-13 :: Project Euler. LINK
Task-14 :: Bandit. LINK

Installing Ubuntu

I installed UBUNTU 18.04 in my laptop. The first thing I did is Download the installation file required to install ubuntu from the UBUNTU official site download page. Then the next step was to create a bootable pendrive. So I used Poweriso for creating one. After that the main thing was to learn how to Dual- Boot. I saw many videos and followed them throughout the process. Space management was the crucial factor while installing Ubuntu. After installing Ubuntu the next thing I did was to update and download Drivers for running Ubuntu smoothly.

Programming

Competitive Programming is the most demanding and growing branch of coding. Nowadays most of companies look for competitive programming skills in a Candidate. Competitive Programming problems require high Algorithmic and Data Structure knowledge. Although the problems in the task were the simplest ones. The main thing I got to learn from this task was how to work with the platform environment and how to handle the test cases wisely. The problems were mostly Math-based problems, so solving them require logic building and correct usage of logic. I was able to complete all the Problems given without any errors. I used Python3 for solving the problems.

Web Scraping Using Ruby

Web Scraping is one of the most interesting things to do for sorting results according to our filters. The task was to be completed in Ruby. So I learnt Ruby Basic Syntax required for completing the task. Googling was an important factor in this task. The first thing I did was to install the required components for the task using the terminal. Installed Ruby and Nokogiri. Nokogiri was used to search and parse the HTML documents. The task needed thorough reading of manuals. Nokogiri Documentation helped a lot in completing the task. Most of the code could be found in the Nokogiri Documentation. The only problem I faced was the class(ellip) id. So stackoverflow helped me to find the id . Finally after completing the code I could get the desired output.

CLI APP USING GO

Command Line Application is an application used to find a particular detail when an input is provided by the user. The task demanded creating one using GO LANGUAGE. Go is the one of the emerging languages. CLI app for twitter is the task. The first thing is to decide what resource to use for creating CLI app. So Googling helped me to find the go-twitter created by dghubble . Read the documentation. Installed GO using terminal.Learnt the basic syntax for the task and use of command-line flags from the link provided in the task list. For using Twitter APIs, we should have the authentication for accessing the data. So creating a TWITTER developer account would help . I created a Twitter Developer account for accessing the tokens and authentication codes . Wrote a basic code for input of username, reading the input and writing a text file for the results using os module. The documentation provided by dghubble repository helped a lot for the rest of the code. The desired output was obtained.

RUSTED EMAIL

Email Validation Using rust is the main aim of the task. The main objective of the task was to check whether the email entered is a valid email according to the condtions of a valid email pattern. For this regex expressions is the main thing used . For this the first thing was to install Rust and required extras like extern crate . Learnt the basic syntax of ruby and how to get input and read the input in Rust. After this comes the main factor of the task, REGEX expression formation. For this google searches on standard patterns helped a lot and hence got to know more about regex pattern formation. THe output was as required.

Captcha Breaking

This was one of the interesting task, where we were introduced to OCR(Optical Character Recognition). So Googling helped me to decide between pytesseract and OpenCv where I decide to use pytesseract. For this the first thing I did was to install tesseract using pip . After installing I tried to play with tesseract, which can recognize almost everything that is clear and is a litte problematic in recognizing blur images. So I wrote a code using python which would ask for input of an image and would return the answer after evaluating the image. I encountered with a problem in Linux so I had to use it in Windows where I could get the desired output.

SIMPLE PERSONAL WEBSITE

The resource provided in the list of task helped for creating the webpage. Ruby installation and jekyll installation along with gems were the intial steps taken along with forking and cloning of the repository. Here I encountered a major problem , while installing bundles , an error occured stating that "could not locate Gemfile". Intially I couldnt solve the error but after reading the installation, I found out that the Gemfile was missing from the folder created for cloning the repository. After solving the problem I could continue creating the webpage. After localhosting I made Minor changes and added the Blog page to the created page. The link is provided in the repository.

CS50

I Could only complete pset-1, continuing to work on it by completing the lectures as soon as possible and then completing the remaining problems.

PONG GAME

Pong Game which is a retro game was the best thing to make using a beginners knowledge. I could create an online pong game in p5js webeditor. The code is written in javascript and can be run using p5js webeditor. It is a multiplayer game. Hope you would like my work.

PROJECT EULER

Project Euler problems are similar math-related competitive problems. I could complete the first 3 problems, rest 2 problems will require time and would complete it by the earliest.

TASK INCOMPLETE.

Task-5 :: Get It Using Javascript

I am currently reading more about the role of Graphql thoroughly and how it works. The next step is how to decide the structure of the javascript and html code. This task would require roughty 3 days to complete and I'm on it.

Task-12 :: Python Source

Read The code but couldnt decide how to solve the problem . Will complete this task once task-5 is completed.

Task-14 :: Bandit

This task provided a platform for learning Linux Terminal Commands. Will try to complete other levels too. The main commands include cat, ls, cd, ssh etc.

About

The tasks I have completed is given by foss@amrita and you can find the tasks HERE

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form