Difference between revisions of "Summer of Code/2016/Redesign and recreate Sugar Labs webappearance"

From Sugar Labs
Jump to navigation Jump to search
Line 5: Line 5:
 
<tr><td>'''Major:'''</td> <td>Computer Science and Engineering (Pre-Final Year)</td></tr>
 
<tr><td>'''Major:'''</td> <td>Computer Science and Engineering (Pre-Final Year)</td></tr>
 
<tr><td>'''College/University:'''</td> <td>GGSIPU, New Delhi, India</td></tr>
 
<tr><td>'''College/University:'''</td> <td>GGSIPU, New Delhi, India</td></tr>
<tr><td>'''Email:'''</td> <td>Contact[at]KanikaMurarka[dot]xyz</td></tr>
+
<tr><td>'''Email:'''</td> <td>Contact[at]KanikaMurarka[dot]xyz, MurarkaKanika[at]Gmail[dot]Com</td></tr>
 
<tr><td>'''Phone:'''</td> <td>+91-9868-179-156, +91-8800-184-063</td></tr>
 
<tr><td>'''Phone:'''</td> <td>+91-9868-179-156, +91-8800-184-063</td></tr>
 
<tr><td>'''First language:'''</td> <td>Hindi, Also proficient in English</td></tr>
 
<tr><td>'''First language:'''</td> <td>Hindi, Also proficient in English</td></tr>
Line 30: Line 30:
  
 
===Goals===
 
===Goals===
# '''''Designing modern and innovative template for all Sugar Labs Site:'''''
+
# '''''Designing modern and innovative template for all Sugar Labs Site: '''''Improving the appearance  of website according to the modern treads.
# '''''Unify the technologies used across all sites:'''''  
+
# '''''Unify the technologies used across all sites:'''''Using minimum no. of technologies, that would be compatible on every browser.
  
 
===Approach===
 
===Approach===
Line 44: Line 44:
 
* '''Phase 1''': Gathering of requirements
 
* '''Phase 1''': Gathering of requirements
 
** Collecting all resources  
 
** Collecting all resources  
** Collecting the URLs of the webpages linked directly to the website  
+
** Collecting the URLs of the web-pages linked directly to the website  
 
* '''Phase 2''': Prototype development based on requirements
 
* '''Phase 2''': Prototype development based on requirements
 
** Making the final mock-up, keeping requirement in mind
 
** Making the final mock-up, keeping requirement in mind
Line 61: Line 61:
 
I preferably will go with Flat Design because it is in "trend" nowadays. Here are some reasons why:
 
I preferably will go with Flat Design because it is in "trend" nowadays. Here are some reasons why:
 
# Design is all about process. Flat is very simple in terms of form, and that helps us to focus on the usability of your site/app.
 
# Design is all about process. Flat is very simple in terms of form, and that helps us to focus on the usability of your site/app.
# If we follow few rules, design will look tidy and clean.
 
 
# It is also light that is you do not need to insert (many) images into you code.
 
# It is also light that is you do not need to insert (many) images into you code.
 
# Responsive Web Design - flat makes it a lot easier to make sites responsive, as we do not need to scale images, effects and so on. You just have vector shapes and colors.
 
# Responsive Web Design - flat makes it a lot easier to make sites responsive, as we do not need to scale images, effects and so on. You just have vector shapes and colors.
Line 67: Line 66:
  
 
====Navigation Bar====
 
====Navigation Bar====
Since the website is short and simple, with very less links and only single page, navigation bar can be dropped.
+
If it will be there, it will be simple and easily accessible.
  
 
====Images====
 
====Images====
Line 73: Line 72:
  
 
====Responsiveness====
 
====Responsiveness====
This means how effective a site looks on other devices. It will achieve following goals.
+
This means how the site appears on various devices. It will achieve following goals.
 
# remove the need for horizontal scrolling
 
# remove the need for horizontal scrolling
 
# offer text large enough to be legible without resizing or zooming
 
# offer text large enough to be legible without resizing or zooming
Line 84: Line 83:
 
# Using CSS to structure content, rather the tables
 
# Using CSS to structure content, rather the tables
 
# Limiting the usage of H tags (H1, H2, H3, etc) and tags to non-repetitive content.
 
# Limiting the usage of H tags (H1, H2, H3, etc) and tags to non-repetitive content.
# Using machine-readable fonts
 
 
# For images that are stylistic elements, using CSS background images, but for content elements, found within a body of text that is unique to a page, using a regular image tag. For logos, using an image tag rather than using text replacement.
 
# For images that are stylistic elements, using CSS background images, but for content elements, found within a body of text that is unique to a page, using a regular image tag. For logos, using an image tag rather than using text replacement.
 
# Site-Speed- consolidating CSS and javascript files, loading javascript at the end of the page.
 
# Site-Speed- consolidating CSS and javascript files, loading javascript at the end of the page.
 +
# Will add structured data which helps improve the search engine visibility and helps in better ranking
  
 
====Technologies====
 
====Technologies====
Line 92: Line 91:
 
<tr>
 
<tr>
 
<th>Technologies</th>
 
<th>Technologies</th>
<th>Decription</th>
+
<th>Description</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
 
<td>HTML</td>
 
<td>HTML</td>
<td>HyperText Markup Language (HTML) represents the visual elements a browser ultimately displays on screen.</td>
+
<td>Hyper Text Mark-up Language (HTML) represents the visual elements a browser ultimately displays on screen.</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
Line 129: Line 128:
 
* Reading more source code for better understanding of the system
 
* Reading more source code for better understanding of the system
 
* Get regular feedback from mentor(s).
 
* Get regular feedback from mentor(s).
 +
* Phase 1 would be initiated and completed
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 136: Line 136:
 
</td>
 
</td>
 
<td>
 
<td>
* Preparation for exams and giving exams. Mention more details how would you compensate this time.
+
* Preparation for exams and giving exams. I will work extra hours before or after exams to meet deadline.
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 144: Line 144:
 
</td>
 
</td>
 
<td>
 
<td>
 +
* Phase 2 will be initiated
 +
* Prepare my first mock-up
 
* Get feedback from mentor(s) and re-iterating
 
* Get feedback from mentor(s) and re-iterating
 
</td>
 
</td>
Line 152: Line 154:
 
</td>
 
</td>
 
<td>
 
<td>
 +
* Phase 2 will be continued
 
* Get feedback from mentor(s) and re-iterating
 
* Get feedback from mentor(s) and re-iterating
 
</td>
 
</td>
Line 160: Line 163:
 
</td>
 
</td>
 
<td>
 
<td>
 +
* Phase 2 will be continued
 
* Documenting the changes
 
* Documenting the changes
 
* Writing tests; preparation to submit mid-term evaluations
 
* Writing tests; preparation to submit mid-term evaluations
 
* Submitting mid-term evaluations.
 
* Submitting mid-term evaluations.
 
* Deliverables:
 
* Deliverables:
** Some deliverable
+
** A small prototype
** Some other deliverable and so on
 
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 173: Line 176:
 
</td>
 
</td>
 
<td>
 
<td>
* Get feedback from mentor(s) and re-iterating
+
* Get feedback from mentor(s) and re-iterating
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 182: Line 185:
 
<td>
 
<td>
 
*Get feedback from mentor(s) and re-iterating
 
*Get feedback from mentor(s) and re-iterating
 +
* Phase 2 will be completed
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 190: Line 194:
 
<td>
 
<td>
 
*Get feedback from mentor(s) and re-iterating
 
*Get feedback from mentor(s) and re-iterating
 +
* Phase 3 will be initiated
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 198: Line 203:
 
<td>
 
<td>
 
* Get feedback from mentor(s) and re-iterating
 
* Get feedback from mentor(s) and re-iterating
 +
* Phase 3 will be completed
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 206: Line 212:
 
<td>
 
<td>
 
* Get feedback from mentor(s) and re-iterating
 
* Get feedback from mentor(s) and re-iterating
 +
* Alpha release of the website
 
</td>
 
</td>
 
</tr>
 
</tr>
Line 250: Line 257:
 
=='''Miscellaneous'''==
 
=='''Miscellaneous'''==
  
 
+
=== Sugar Development Environment ===
 +
It was a fun to do task.
 
 
 
[[:Category:2016 GSoC applications]]
 
[[:Category:2016 GSoC applications]]

Revision as of 09:36, 25 March 2016

About Me

Name: Kanika Murarka
Program: Bachelor of Technology
Major: Computer Science and Engineering (Pre-Final Year)
College/University: GGSIPU, New Delhi, India
Email: Contact[at]KanikaMurarka[dot]xyz, MurarkaKanika[at]Gmail[dot]Com
Phone: +91-9868-179-156, +91-8800-184-063
First language: Hindi, Also proficient in English
IRC: Kanikaa in freenode #sugar
SugarLabs Wiki Username: Beastie
Timezone: I can work from 16:00 to 21:00 IST (UTC +5:30) but it's adjustable
Current Location: Delhi, India,
Open Source Projects: I have contributed in Mozilla Delhi Community
Twitter: Kanika on Twitter
Github: Kanika on GitHub
Blog: Kanika’s Blog

About My project

Name of Project

Redesign and Recreate Sugar Labs Web Appearance

Abstract

This project is to revamp the existing templates in diversified sites of Sugar Labs and unify a theme across each one of them. The obsolete pages would be re-designed and a minimal number of technologies would be applied to develop the web appearance.

Overview

Sugar Labs aims at creating tools that learners use to explore, discover, create, and reflect with the mission to support the Sugar community of users and developers and establish regional, autonomous "Sugar Labs" around the world to help learners "learn how to learn" by tailoring Sugar to local languages and curricula.

The existing sites are very diversified in nature. The goal is to make a unified theme and apply it across all the sites (main page, planet, wiki etc.). This would ensure consistency and ease of use across all Sugar Labs sites. The obsolete pages would be dropped/re-designed according to the needs and minimal design would be applied.
Using less no. of technologies would make code maintenance easier and would also facilitate in dropping off unnecessary tools. This would mean unification in technology across all sites.

Goals

  1. Designing modern and innovative template for all Sugar Labs Site: Improving the appearance of website according to the modern treads.
  2. Unify the technologies used across all sites:Using minimum no. of technologies, that would be compatible on every browser.

Approach

An incremental enhancement approach would be followed.

  1. Discuss with mentor(s) about specifications
  2. Implementing stuff
  3. Getting feedback and re-iterating

This would help in revealing any bugs/mis-conception early in development phase itself and also give more time on enhancing the application as desired.

Development Approach

The approach of Evolutionary Prototyping would be followed which will involve following phases:

  • Phase 1: Gathering of requirements
    • Collecting all resources
    • Collecting the URLs of the web-pages linked directly to the website
  • Phase 2: Prototype development based on requirements
    • Making the final mock-up, keeping requirement in mind
    • Sending design for review
    • Making changes as required
    • Coding the design
  • Phase 3: Feedback from the mentor for the developed prototype
    • Sending prototype for review after a fixed interval
    • Improving as per feedback
  • Phase 4: Giving final touch to the work and combining everything.

This approach will help in making the development easily adaptable to changes in the requirements as well as help in identifying and rectifying bugs in the early development phase hence resulting in a better software at the end of the development cycle.

Specifications

Color Scheme

I preferably will go with Flat Design because it is in "trend" nowadays. Here are some reasons why:

  1. Design is all about process. Flat is very simple in terms of form, and that helps us to focus on the usability of your site/app.
  2. It is also light that is you do not need to insert (many) images into you code.
  3. Responsive Web Design - flat makes it a lot easier to make sites responsive, as we do not need to scale images, effects and so on. You just have vector shapes and colors.
  4. It helps user focus more on the content.

Navigation Bar

If it will be there, it will be simple and easily accessible.

Images

Scalable Vector Graphics (SVGs) will be preferred.

Responsiveness

This means how the site appears on various devices. It will achieve following goals.

  1. remove the need for horizontal scrolling
  2. offer text large enough to be legible without resizing or zooming
  3. provide tap-friendly (i.e. fingertip-sized) buttons and links
  4. ensure speedy page loads for users on slow cell networks
  5. simplify navigation and content to focus on what mobile users want

SEO Ranking

Following are the standards I will follow such that the SEO of the site will improve:-

  1. Using CSS to structure content, rather the tables
  2. Limiting the usage of H tags (H1, H2, H3, etc) and tags to non-repetitive content.
  3. For images that are stylistic elements, using CSS background images, but for content elements, found within a body of text that is unique to a page, using a regular image tag. For logos, using an image tag rather than using text replacement.
  4. Site-Speed- consolidating CSS and javascript files, loading javascript at the end of the page.
  5. Will add structured data which helps improve the search engine visibility and helps in better ranking

Technologies

Technologies Description
HTML Hyper Text Mark-up Language (HTML) represents the visual elements a browser ultimately displays on screen.
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the look and formatting of a web page.
JavaScript The programming language for the web.
Bootstrap CSS framework to make page responsive


Milestones

Week Task

22 April - 23 May

  • Community bonding period
  • Get to know mentors, further discussion on project and start with initial set-up
  • Reading more source code for better understanding of the system
  • Get regular feedback from mentor(s).
  • Phase 1 would be initiated and completed

23 May - 3 June (Tentative)

  • Preparation for exams and giving exams. I will work extra hours before or after exams to meet deadline.

4 June - 11 June

  • Phase 2 will be initiated
  • Prepare my first mock-up
  • Get feedback from mentor(s) and re-iterating

12 June - 19 June

  • Phase 2 will be continued
  • Get feedback from mentor(s) and re-iterating

20 June - 27 June

  • Phase 2 will be continued
  • Documenting the changes
  • Writing tests; preparation to submit mid-term evaluations
  • Submitting mid-term evaluations.
  • Deliverables:
    • A small prototype

28 June - 5 July

  • Get feedback from mentor(s) and re-iterating

6 July - 13 July

  • Get feedback from mentor(s) and re-iterating
  • Phase 2 will be completed

20 July - 26 July

  • Get feedback from mentor(s) and re-iterating
  • Phase 3 will be initiated

27 July - 3 August

  • Get feedback from mentor(s) and re-iterating
  • Phase 3 will be completed

4 August - 10 August

  • Get feedback from mentor(s) and re-iterating
  • Alpha release of the website

10 August - 15 August

  • Get feedback from mentor(s) and re-iterating

15 August - 23 August

  • Preparing documentation for final changes
  • Submission for final evaluation
  • Deliverables:
    • A modern and innovative template on all sites of sugar labs
    • Consistency of tools and technologies used across all the sites

Why should I be chosen for the project?

  • I have a strong experience in HTML, CSS and JavaScript and a lot of interest in designing.
  • I am an active IEEE member and Webteam head at IEEE-NIEC(sub-chapter of IEEE of my college).We(team) are recently working on the chapters website GitHub:IEEENIEC.
  • I have interned at some organizations and well aware with working with deadlines and delivering the allotted tasks without compromising with the quality. My resume can be found on here.
  • I am an open source enthusiast and contributed to the Mozilla Delhi Community GitHub:Mozpacers.
  • I have recently worked for an NGO- SevaSetu, and worked for their website design LinkThe site is still under development.GitHub:SevaSetu
  • Graphic Designer and Marketing head at NGO Tathastu

The community and me

If the task completes successfully..

I will be happy to have contributed in one more open source community and I will look forward to contribute more in the organization, even in projects out of my comfort zone.

If I get stuck and mentor is not around..

Since mentors are there only to guide us and help us with best of their knowledge, its me who have to complete the project. I will look up on internet to find the solution of the problem I am stuck with, if I dont get the solution, I will keep the task aside and carry on with another module, so that time do not get wasted. And when mentor is available, I can discuss my doubts.

Ways to keep the community informed of my progress

I will be in contact with the mentor about progress everyday on IRC/mail and write weekly blog about the completion, problems faced, how you got the solution and add other stuff

Miscellaneous

Sugar Development Environment

It was a fun to do task.

Category:2016 GSoC applications