19
From Zero to Hero – A Mozilla Journey Lukas Blakk

Zero to Hero - A Mozilla Journey

  • View
    1.181

  • Download
    5

Embed Size (px)

DESCRIPTION

This presentation was done at the 2008 FSOSS at Toronto's Seneca College where I graduated with a degree in Software Development. In these slides I describe my journey from student to open source contributor to future Mozilla employee.

Citation preview

Page 1: Zero to Hero - A Mozilla Journey

From Zero to Hero – A Mozilla Journey

Lukas Blakk

Page 2: Zero to Hero - A Mozilla Journey

22

First Year Seneca BSD Student

•Minimal coding experience – self taught HTML

•Returning student with life experience – 10 years of art and road trips combined with odd jobs

•Coming from the arts and activism communities – lots of experience with group process and collective work

•No awareness about open source

Page 3: Zero to Hero - A Mozilla Journey

33

Meet your Future

•In 2006 some Mikes and one other guy give a talk @ Seneca before FF2 release

•Developing for the open web looks like fun

•Sounds like anyone can join in (small # employees, big community)

•Impressive passionate community-driven model

Page 4: Zero to Hero - A Mozilla Journey

44

Beating around the bush

•Club Moz speaks to my 3rd semester classroom, encouraging us to come and play with Mozilla code

•Terrible presentation, but still…

•This community looks like fun, how can I get involved?

Page 5: Zero to Hero - A Mozilla Journey

55

Attempt #1

•Go to the Club Moz meeting

•See an extension in action

•This is interesting, but not the right fit

•Do a local build and help with a CSS doc project, but eventually interest wanes – no real hook-in with the Mozilla community

•Attempt #1 = FAIL

Page 6: Zero to Hero - A Mozilla Journey

66

Attempt #2

•Classmate who did Mozilla internship tells me about QA

•Get a Litmus account

•Do test days and bug days

•Learn a bit about filing bugs, searching bugzilla, meet a few Mozilla employees on IRC

•Testing is tedious and interest wanes

•Attempt #2 = FAIL

Page 7: Zero to Hero - A Mozilla Journey

77

Attempt #3

•Sumo LiveChat Support

•Get a Spark account

•Volunteer for LiveChat support while I should be doing homework

•There are good moments when you actually help someone, but it’s a stressful burst of time and often I can’t help

•Attempt #3 = FAIL

Page 8: Zero to Hero - A Mozilla Journey

88

Attempt #4

•Finally 3rd year rolls around and DPS909 is an option (DPS909 is the promised land for Mozilla involvement – it’s a course all about Mozilla dev)

•Lots of labs on building extensions, making patches, working on a real Mozilla project

•I get a bug of my very own: Bug 395310: Mozilla needs a source and symbol server

•Attempt #4 = COMPLETE SUCCESS

Page 9: Zero to Hero - A Mozilla Journey

99

Quotable Quotes

“Pick something you don’t already know how to do”

- Dave Humphrey

Page 10: Zero to Hero - A Mozilla Journey

1010

Add Source Server to the Symbol Server

•There’s so little I know how to do, how to choose?

•Source Server stands out – I’m told this will help a lot of developers

•Mentor is Ted Mielczarek

•Project tracking in wiki

Page 11: Zero to Hero - A Mozilla Journey

1111

Going Deep

•Source Server has practically no documentation

•Google doesn’t turn up any success stories

•It all depends on Microsoft binaries

•I’m in way over my head

Page 12: Zero to Hero - A Mozilla Journey

1212

There’s a light

•Ted is an excellent mentor

•Trial and Error works eventually

•By the end of the term, there was a hack working locally

•0.3 release = success

Page 13: Zero to Hero - A Mozilla Journey

1313

DPS911 – Source Server 1.0

•Second term is all about taking it to the finish line

•Lots of cleaning up, fine-tuning

•Learned how to work with Python

•Committed my first patch

•Got offered an internship with Mozilla for the summer

Page 14: Zero to Hero - A Mozilla Journey

1414

Mozilla Internship – the Short Version

•At first I’m to work with QA

•Then Build

•Then UnitTest, as part of Build

•Then it’s not clear

•What will I be doing this summer?

Page 15: Zero to Hero - A Mozilla Journey

1515

Start Slow

•Getting access to the Build machines is not to be taken lightly

•Everyone brings down the system once, right?

•Learn Buildbot, VMs, setting up Build environment

•Automating setup, making the build machines consistent and identical

•Learning more Linux, and in ways that are memorable

Page 16: Zero to Hero - A Mozilla Journey

1616

Then someone hands you the baton

•Robcee (my mentor) moves on to Firebug

•Now I’ve got responsibility for UnitTest

•This is the deep end

•Answering questions, being assigned bugs, learning who does what – in double time

•Meanwhile, I’ve got buildslaves to herd…

Page 17: Zero to Hero - A Mozilla Journey

1717

Summer’s Over

•As well as becoming versed in Build setup and buildslave environments:

•All the Unittest machines have been switched from the QA network to the Build network

•Lots of streamlining, mothballing of old machines, UnitTest and Build are now all on the same masters (down from 10 masters to 2)

•80% of the work is done towards future consolidation of UnitTests on Build’s Buildbot master

Page 18: Zero to Hero - A Mozilla Journey

1818

Continuing Work as Contractor

•There will be one unified buildslave pool that all Build and Unittest builds will run on

•UnitTests should be able to be run on packaged builds so we may run them repeatedly on a particular build if needed

•Working towards making it simple and quick to start up a new branch

•Contracting this year while finishing my degree, starting full time with the Release Engineering Team in May 2009