MozCoffee Mumbai

MozCoffee Mumbai was held on July 6, 2014 at 11:00am at the Cafe Coffee Day, Powai. The meetup primarily focused on planning introductory Mozilla events in  Colleges and promoting Firefox OS in Mumbai, keeping in view its forthcoming launch in India.

Introduction and Helping New Contributors

The MozCoffee started with everyone introducing themselves. I was happy to see that there were 3 new faces – new aspiring contributors. We started with helping them understand about Mozilla’s mission and how they could contribute to Mozilla, keeping in mind their skill-set.

Modularized Event Format

We discussed and put together an Event Format consisting of modules, which could later be compiled depending on the requirement and target-audience at the event.

Introductory Event: 
1. Introductory Talk on Mozilla [30 mins]
2. Introductory Talk on FirefoxOS [20 mins]
3. Introductory Talk on various Mozilla Projects [20 mins]
    a. Rust
    b. Webmaker
    c. Lightbeam
    d. Firefox
    e. HTML5 Game Dev
4. Introductory Talk on getting involved with Open Source. [30 mins]
Webmaker / Appmaker Party:
1. Introductions and Favorite App [15 mins]
2. Spectrogram [30 mins] 
3. User Centered Design (Paper Prototyping) [45 mins]
4. Appmaker Introduction and Tinkering [45 mins]
5. Webmaker Introduction and Tinkering [45 mins]
6. Teach Each Other [20 mins]
Events at Schools:
1. Scratch Days
2. Introduction to Computers and Internet
3. Webmaker/Appmaker
*Special Thanks to Akshat Kedia for typing in the Event Format at the MozCoffee.

 

On-boarder –  On-boardee Model for On-boarding New Contributors

I had this idea at MozCamp India, about having the mentor-mentee model in our local community, for on-boarding new contributors. We discussed on it and decided on having a GDocs Form for new contributors in Mumbai. We would review the responses and assign one person from the Mozilla Mumbai Community(according to the functional area required)as a Mentor for each new contributor registered through the GDocs Form.

Google Group for Mozilla Mumbai Community

We decided on having a Google Group for the Mozilla Mumbai Community. It would help new contributors to reach out to us. That way, we would be able to keep track of them and also answer their queries effectively. It would also help in having a transparent, stream-lined and well-documented way of formally discussing Mozilla Mumbai activities.

Google Group: https://groups.google.com/forum/#!aboutgroup/mozillamumbai

Challenges faced by new Code Contributors

We discussed on the various challenges that a new code contributor faces while contributing to Mozilla and how they can be dealt with. Having the Google Group, would help the new code contributors to have their queries resolved. Also having a on-boarder/mentor for each new code contributor would ensure that the contributor does not lose interest due to the problems(for eg. in setting up the dev-env.) faced by him/her.

WoMoz and Targeting Non-Engineering Colleges

We discussed on the possible reasons for the low number of female students in Contributing to Mozilla in Mumbai. We came to the conclusion, that instead of heavily targeting engineering colleges which generally has less number of girl students, also target non-engineering colleges like Fashion, Design, Journalism and also women’s colleges in Mumbai.

Firefox Student Ambassador Program

We discussed on possible reasons of the low awareness of the FSA Program, among the students in Mumbai. For this, we agreed on having more introductory Mozilla events in colleges and educating the students about the FSA program.

Introductory Mozilla Events in Colleges in Mumbai

We discussed and decided to distribute the task of collecting contact details of the Principal’s of different colleges, among ourselves. We have decided Thursday, July 11, 2014 as the deadline for this task. By Friday, July 12, 2014, the Mozilla Reps in the Mumbai Community would be e-mailing the principals, expressing interest to conduct an introductory Mozilla event at their respective colleges by July end or August first week.

We wrapped up the MozCoffee around 2:15pm. It was indeed a productive meetup, having discussed the above mentioned points. Looking forward to having more of such MozCoffees in Mumbai !

On-boarding Contributors : An Improvised Approach

This idea first struck me in the UCD Session at MozCamp India Beta 2014, when we were asked to think of an app idea that would help grow the Mozilla Community. It is inspired from the Mentor-Mentee model of the Mozilla Reps Program. For an aspiring contributor, interacting with a community, at first, is intimidating, so what if we narrow down the point of contact to a single person? Of course this would only remain so, as long as the aspiring contributor is in transit – i.e in the process of on-boarding. By the time, the contributor has on-boarded, the goal is to already have him/her become familiar with the Mozilla Community.

Terminology

On-boarder: The one, who helps and guides an aspiring contributor come on-board and start contributing.

On-boardee: The aspiring contributor, who desires to contribute to the Mozilla Community.

*The above terms are inspired from the “Mentor-Mentee”  terminology.

The idea

The idea is to initially have a set of experienced contributors in the local Mozilla Community as “On-boarders”. The aspiring contributors – “On-boardees”, will then be put in touch with an “On-boarder” each. It will then be the responsibility of the “On-Boarder” to keep in touch and guide the “On-boardee” to start contributing.

Once the “On-boardee” is comfortable with the Community and has started contributing, the “On-boarder”(with the consent of the “On-boardee”) will promote him to be an “On-boarder”. So now this newly made “On-boarder” will help and guide some other “On-boardees”; and this process would continue.

The On-boarder-On-boardee relationship will also help develop a sense of responsibility in the new contributors towards the Mozilla Community, thus helping in sustaining them for a long time.

Challenge : First contact between a prospective “On-boardee” and an “On-boarder”

We could have a web-app designed that lists the On-boarders in a local community according to their functional areas, along with their On-boardees(to make the process transparent). This would help the prospective “On-boardee” to select and contact his/her to-be “On-boarder”.

Prerequisite: This idea assumes that the aspiring contributor is familiar with the ways to contribute to Mozilla and has decided on one or more functional area(s) that interests him/her.

We could beta-test this idea on a local community, see the outcome and later improvise accordingly.

I would love to hear your views and suggestions on this idea. I am all ears!

Installing a Font in your Linux

So you wish to install a font in your Linux, here’s how:

Step 1: Download the font. It will generally be a compressed file(.zip) containing many. otf and/or .ttf files. Extract the files in a folder in your Home directory.

Step 2:  Create a new directory in your system font directory.

If you have both .ttf and .otf files, then you need to execute both the commands given below. If you have either one of the files, then only execute the command corresponding to that file type.

For .ttf files:

sudo mkdir -p /usr/share/fonts/truetype/your-font-name

For .otf files:

sudo mkdir -p /usr/share/fonts/opentype/your-font-name

This will create a directory in your system font directory. The ‘-p’ option with mkdir will create the parent directories as necessary and won’t return an error in case a directory already exists.

Step 3: Now copy the extracted files from your Home directory to the newly created directory(ies) in Step 2.

For .ttf files:

sudo cp ~/folder-containing-font-files/*.ttf /usr/share/fonts/truetype/your-font-name

For .otf files:

sudo cp ~/folder-containing-font-files/*.otf /usr/share/fonts/opentype/your-font-name

Step 4: Now update the font cache.

sudo fc-cache -f -v

Note : This will install the font for all users of the system. If you wish to install the font only for yourself(current user), then simply create a ‘.fonts’ directory in your Home directory and copy the extracted font files to the ‘.fonts’ directory as we do in Step 3. Finally update the font cache as we do in Step 4 but without the ‘sudo’.

And you are done ! :)

Trivia:

Q. What do otf and ttf stand for?

A: OTF stands for Open Type Font and TTF stand for True Type Font. OpenType was built on its predecessor TrueType, retaining TrueType’s basic structure and adding many intricate data structures for prescribing typographic behavior.

Firefox OS Hackathon @ IIT Bombay

The Firefox OS Hackathon at IIT Bombay was my first Hackathon as a Mozilla Rep and it turned out to be a great one !  Despite the fact that the Hackathon was planned only about 20 days in advance, it was very well thought through and organized. Hats off to the Organizing Team headed by Santosh Shingare, overseen by Mr. Rahul Deshmukh of the CDEEP Dept. at IIT Bombay ! A great job indeed !

Frédéric Harper, Sr. Technical Evangelist at Mozilla had extended his stay in India, to deliver the Keynote at this Hackathon. This came as a happy surprise, both for the participants as well as the Mozilla India Community.

Firefox OS Stand-in

Firefox OS Stand-in [Pic. Courtesy: Sumantro Mukherjee]

The many stand-ins’ donning Firefox OS’s Logo along with the orange and blue balloons created the necessary ambiance for a Mozilla event and made Mozilla’s presence felt at the venue. The interns, who were students from different engineering colleges in India, were the participants at the Hackathon. They were a super-charged lot indeed, full of enthusiasm for the Hackathon.

Frédéric introducing Firefox OS

Frédéric introducing Firefox OS [Pic. Courtesy: Sumantro Mukherkjee]

The Hackathon started with Frédéric giving a talk on Firefox OS followed by a brief overview of Open Web Apps, Web API’s and Web Activities. This was followed by a talk on using the newly landed Web IDE by Kaustav Das Modak. Soumya Deb talked about using the Firefox Developer Tools for app development. Jai Pradeesh ended the talks session with his talk on using PhoneGap and Cordava Frameworks to develop apps for Firefox OS.

After the talks, the participants were grouped into teams and alloted tables to work on. The Hackathon was planned to be held over the 2 days – 25 June 2014 from 2pm – 9pm and 26 June 2014 from 8:30am – 4:30pm. But the Day 1 of the Hackathon saw many participants hang out even after the official closing time of 9pm. A few participants stayed behind till as late as 12am. Such was the enthusiasm and dedication of the participants towards the Hackathon.

Participants busy working on their apps

Participants busy working on their apps [Pic. Courtesy: Sumantro Mukherjee]

The Day 2 of the Hackathon started in the morning, with the participants busy working on their apps. The Mozilla India Team had set up a Scrollback.io channel for the hackathon, so that the participants could easily post their queries with their table number, and some one from the Mozilla India Team could help them out personally. I strolled around from table to table interacting with the participants, talking about their app ideas, and I must say, the participants had really worked hard to get their ideas implemented irrespective of the hurdles they faced, within the stipulated time window.

Some of the apps, that I was very impressed with were Wireless Touch Pad – which used the Firefox OS Phone as the touchpad to control the cursor on the Desktop, WikiSpeak – which used a Text to Speech API to read out information of the keyword queried and Mumbai Indicator – which displayed the Mumbai Railway Trains information in a simplified user-friendly manner.

Me and Amod working on an app

Me and Amod working on an app [Pic. Courtesy: Sumantro Mukherjee]

Some of the app ideas that I found interesting were Keystroke based authentication app –  which not only authenticated based on the key-codes of the keys pressed but also on the basis of the time a particular key is pressed and also the time interval between key presses; and the Notification Aggregator – an app that aggregated all notifications at one place including the social networking websites and even e-mails.

On the second day of the Hackathon, post lunch, Jai Pradeesh, who himself is a Marketplace App Reviewer, gave a session on CSP Validation of Apps and Submitting Apps to the Mozilla Marketplace. This was followed by the demonstration of apps by the participants. The top two teams were awarded prizes. Then there was the Q&A session for the participants to ask their queries to the Mozilla India Team. This was followed by the Vote of Thanks by Santosh, which officially marked the end of the Hackathon.

Then there was the group photo of all the participants, the organizers and the Mozilla India Team across the Firefox OS Stand-in. There was also a Sign Board – where all attendees were asked to sign as a reminder of this Firefox OS Hackathon.

The Hackathon was fruitful indeed with all the participants coming up with some really innovative and cool apps. The Hackathon, thus successfully helped promote Mozilla’s mission and create awareness and interest about Firefox OS among these students, from different parts of India. This eventually would lead to spreading of the Mozilla’s mission to a much larger audience in India.

I, personally got a lot to learn and experience during the Hackathon. Organizing an event by compartmentalizing the responsibilities among the team, speaking effectively at such a developer focused event and participating with commitment and dedication (as shown by the participants) were my key takeaways from this event !

Lastly, I would like to thank the Organizing Team from IIT Bombay and my friends from the Mozilla India Community, whose efforts made this event a grand success!

MozCamp India Beta 2014

MozCamp India Beta 2014 was my first ever MozCamp and it was indeed a phenomenal one ! I learned a lot and made lots of new friends in those 3 days at MozCamp. From the Appmaker Session at the start to the Wrap Up at the end – all the session were truly captivating, inspiring and informative !

This MozCamp was primarily a “Train the Trainer” Event, it was a hypothesis put to test and I believe, was very much successful in its objective. The event format of MozCamp is evolving and so feedback from the attendees was stressed on, to make it even better the next time. The main focus of this MozCamp was to  train and prepare the core contributors,  to be able to effectively spread Mozilla’s mission for the forthcoming Firefox OS Launch in India.

Me with Prof. Kailas, tinkering with Appmaker

Me with Prof. Kailas, tinkering with the Appmaker [Pic. Courtesy: Vineel]

The Appmaker Session was presented by Amira and Bobby. The session started with a fun stretching exercise guided by Amira, followed by a quick intro of everyone along with mention of their favorite app. It was followed by a game of Spectrogram with questions related to usage of apps.
The session was primarily aimed at introducing the Appmaker and highlighting its impact on the Firefox OS Apps Ecosystem. We were given time to tinker with the Appmaker, its Bricks and were encouraged to ask lots of questions. Brainstorming about the Appmaker was fun and had the corner wall covered entirely with Post Its’. I and Prof. Kailas designed an Action Plan for a Appmaker event targeted primarily for students of engineering colleges. At the end of the session, I found myself very much comfortable with using Appmaker and raring to have an Appmaker Event.

Me at the Registration Desk

Me at the Registration Desk [Pic. Courtesy: Ratnadeep Debnath]

In the evening, I had taken up the task of helping at the Registration Desk before dinner. Attendees who had their flights later in the day came to register and collect the awesome MozCamp Swag. After the Registrations, we all had the awesomely delicious dinner and retired to our rooms calling it a day !

Morning Walk at Cubbon Park

Morning Walk at Cubbon Park [Pic. Courtesy: Holly Habstritt Gaal]

I was among the few 7-8 early riser Mozillians, who turned up for the morning walk, while others preferred their beds. We strolled through the Cubbon Park across the street, taking in the greenery, enjoying the occasional fresh morning breeze. It was a great start to the day to be walking through the lush green park, clicking pics and chatting amongst ourselves.

The second day officially started with the Mozilla Story Telling session by Mary Ellen Muckerman. Effectively conveying your Mozilla Story was the prime focus. It was followed by a talk by Gen Kanai and Jane Hsu on Firefox OS on Phones. The forthcoming launch of Firefox OS on Intex and Spice Phones in India was the crux of the talk. This talk also made me aware about the Firefox OS Tarako that powers a 128MB RAM low-end phone, enabling it to run heavy apps like Facebook and Youtube smoothly without any glitches.

Then there was the Community Building session. This session was pure infotainment – information perfectly muxed with entertainment ! The Learn and Teach Exercise was my favourite. I taught Tanay the steps for getting started with Bug Fixing for Firefox and learned about SQL Injection and its Prevention from him in return. Then there was Pankaj who taught me about the Automated Testing Frameworks and their need in Development and in return I taught him 2 sentences(to say his name and ask others their name) in Telugu.(He had mentioned that he had been in Hyderabad for sometime, but didn’t know Telugu). That was fun. The session also included short talks on MozCafe, MDN, MakerParty, FirefoxOS App Days and Geolocation.

MozCamp India Group Photo

MozCamp India Group Photo

Then there was the Group Photo by the poolside, which was fun too. We all had to jump with our hands in the air for 3-4 times to get the perfect click, which left us all a bit tired, but then there was the lunch break to regain our energies. The User Engagement Session happened post lunch. Brian King talked about the forthcoming Firefox OS launch in India and the various techniques to support the launch.

At dinner, we had a fruitful discussion on ways to promote open-source in the student community in India. The discussion left me having a clearer perception of open-source and made me feel proud of myself, for having been associated to Mozilla.

Me and Srikar explaining the MozSquare app

Me and Srikar explaining the MozSquare app [Pic. Courtesy: Ankit Gadgil]

The third day started with Open Sessions, there were Lightning Talks by attendees, which were both inspiring and engaging. I then attended the User Centered Design session by Holly Habstritt Gaal. I always wanted to know the design process that went behind the development of an app, and this seemed like a perfect opportunity to experience it first hand. The UCD session walked us through the process of designing an app right from the user research to the actual designing part.

MozSquare App Design Sketch

MozSquare App Design Sketch [Pic. Courtesy: Ankit Gadgil]

I and Srikar designed the “MozSquare”(Didn’t really put much thinking into the name) app. The basic idea behind the app is to connect a new aspiring Mozillian to an experienced Mozillian(depending on the functional area/community/locality). The app would support a Mentor-Mentee model to guide the new aspiring Mozillians in a efficient manner. The app could help one search for a Mozillian based on Functional Area, Community, Locality or based on his/her current location using GPS. Each Mozillian would have his/her own profile on the app with contact details and the list of mentees, he/she would be mentoring.

When I returned from the UCD session to the Grand Ball Room, there was a small group of Mozillians playing a modified version of Kho Kho called Duck Duck Goose. It was fun watching them and so I decided to join in. After having run 2-3 rounds in it, I was tired, and seeing more people join in (meaning a much bigger circle, in turn meaning more running), I quietly slipped in the audience ! :P It was fun and I enjoyed every bit of it !
Then there was the Wrap Up, in which we had a quick recap of MozCamp India Beta 2014’s goals by Mary Ellen Muckerman followed by the Vote of Thanks by Gen Kanai. We were then divided in groups and were individually asked to speak on how we felt about the MozCamp and its impact on our future Mozilla activities. Unfortunately I couldn’t stay back for the Debrief Session, as I had the flight to catch, that would take me back home to Mumbai.

MozCamp India Beta 2014 was a great learning experience for me. I now have a clearer perception of Mozilla’s mission to keep the web in the hands of the people and I believe, I now am better equipped to spread it effectively. Thank You Mozilla for this great learning opportunity, and I must say, I indeed, am very proud to be a Mozillian ! Lets keep rocking the Open Web ! :D

Installing VLC Media Player in Fedora 20

So you wish to install VLC Media Player in your Fedora ! Here’s how:

Step 1: Install RPM Fusion.

RPM Fusion is a repository of add-on packages for Fedora and EL+EPEL maintained by a group of volunteers. RPM Fusion is not a standalone repository, but an extension of Fedora. RPM Fusion distributes packages that have been deemed unacceptable to Fedora.

[root@localhost apotnis]# rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm

Step 2: Install VLC Media Player.

[root@localhost apotnis]# yum install vlc

So now you have VLC Media Player installed in your Fedora; but does it play mp4 and avi files? Did not for me.

Bonus Step: Require to install codecs.

[root@localhost apotnis]# yum install gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly

Done ! Your VLC can now play mp4 and avi files !

Trivia:

Q>What is a Software Repository?

A> A software repository is a storage location from which software packages may be retrieved and installed on a computer. Many software publishers and other organizations maintain servers on the Internet for this purpose, either free of charge or for a subscription fee.

Q> What does VLC stand for?

A> Video Lan Client

Have Fun ! :)

Experience The Change with Mozilla Firefox 29

Project Australis – A redesign of the Firefox User Interface has finally found itself being shipped with the latest stable release of Mozilla Firefox. Yes, you read it right ! Mozilla Firefox 29, now sports a brand new look, with some cool UI changes. The smoothly curved aerodynamic tabs and the minimalist customizable menu promise a mesmerizing user experience.

Australis UI Overview

Australis UI Overview

Existing Firefox users can simply update their Firefox to version 29, to experience this brand new look.  Update your Firefox by following these simple steps:

  1. Press Alt, you will the see Menu Bar at the top.
  2. Click on Help
  3. Click on About Firefox
  4. Click on Update to update your Firefox

If you do not already have Firefox installed and wish to be a part of this new experience, then you may download the latest version of Mozilla Firefox from here.

An interactive tour is displayed on the first start to users who upgrade to Firefox 29 which aims to highlight the major changes of the new interface to users, to make adaption easier.

So Whats New in the User Interface?

Firefox Tour

Take the Firefox Tour

The Smooth and Curvy Aerodynamic Tabs

New curvy tab shape. Background tab in cursor-hover state.

New curvy tab shape. Background tab in cursor-hover state.

The smooth and curvy tabs are not very to easy to miss, if you have been a Firefox user. The currently selected foreground tab and other background tabs have been visually distinguished by de-emphasizing the background tabs. This makes it quick and easy to see which tab is currently selected. Hovering over a background tab, brings it into focus, so you can clearly see where you’re heading.

The Streamlined, Simplified and Intelligent Default Toolbar

Left to right: forward button, download progress indication, bookmarks list.

Left to right: forward button, download progress indication, bookmarks list.

The tabs sit higher in the titlebar, streamlined, thus saving screen space for web pages. The default toolbar has been designed intelligently, keeping simplicity as well as aesthetics in perspective.  The forward button only appears when there’s somewhere to go forward to, and the download button shows progress when that’s relevant and hides otherwise.  This is a lot better than having to see the disabled forward and back button. Another button that will surely catch the eye is the one-click bookmarking button paired with a button to get at those bookmarks. Clicking on the bookmark star makes it jump and bounce into the bookmark list button. Cool ! isn’t it?

 The Handy  Menu

New Menu in Firefox

New Menu in Firefox

Convenient placement of features like Zoom, Cut, Copy, Paste and Print in the menu and their iconic representation makes them easy to recognize and click on. The bigger icons with more generous spacing also make this menu more touch-friendly for touchscreen laptops.

Easy to Use Customization

The New Customization Page

The New Customization Page

The new intuitive customization page allows users to prioritize functions in the menu, toolbar, and tab bar by simply dragging them to the desired position. There are some constraints to customization of the interface, so that users can’t accidentally remove the address bar or the menu button and make Firefox unusable. The customization interface also allows adding and moving add-ons between toolbar and the new menu, which gives users the ability to have exactly the right set of features, built-in or added-on, in the same places in the interface, thus making Firefox, the most customizable web browser so far !

For the Impatient

Can’t wait to get you your hands on this new look of Firefox? Good News ! There’s an interactive mock-up of the User Interface. Click Here and Enjoy !

So What else is new other than the cool User Interface?

General User Changes:

  • The Ability to set up Firefox Sync by creating a Firefox account
  • Malay [ma] Locale added

Developer Changes:

  • Gamepad API finalized and enabled
  • navigator.plugins is no longer enumerable, for user privacy. This means that it is no longer possible to enumerate the nagivator.plugins array and compare it with plugin names to get a full listing of all installed plugins.
  • The add-on bar has been removed. It can no longer be a target for extension icons.
  • Clicking on a W3C Web Notification will switch to the originating tab.
  • Australis Toolbar changes
  • Australis CustomizableUI
  • SharedWorker enabled by default (JavaScript Shared Web Workers in HTML5)
  • Promises enabled by default.
  • <input type=”number”> implemented and enabled.
  • <input type=”color”> implemented and enabled.
  • ‘box-sizing’ (dropping the -moz- prefix) implemented.
  • Enabled ECMAScript Internationalization API
  • Console object available in Web Workers
  • Web console improvements such as arrays shown inline now.
  • Network Monitor shows pie chart performance statistics.
  • CSS source map now supported by Style Editor.
  • Auto-completion of CSS properties and styles in Style Editor.

Additional information / sources

 References