78
The Life and Journey of a Professional Open-Source Developer Bob McWhirter

The Life & Journey of a Professional Open-Source Developer

Embed Size (px)

Citation preview

Page 1: The Life & Journey of a Professional Open-Source Developer

The Life and Journeyof a

Professional Open-Source Developer

Bob McWhirter

Page 2: The Life & Journey of a Professional Open-Source Developer

Note!

At any point, ask any questions you want.

Page 3: The Life & Journey of a Professional Open-Source Developer

Director of Research & PrototypingJBoss Middleware, Red Hat

Project co-lead of WildFly Swarm

At Red Hat for almost 10 years

Page 4: The Life & Journey of a Professional Open-Source Developer

How did I get here?

Page 5: The Life & Journey of a Professional Open-Source Developer

via open-source!

Page 6: The Life & Journey of a Professional Open-Source Developer

Studied theatre at university

building scenery

Page 7: The Life & Journey of a Professional Open-Source Developer
Page 8: The Life & Journey of a Professional Open-Source Developer

Moved into graphic design.

On paper.

Newsletters. Menus. Business cards.

Page 9: The Life & Journey of a Professional Open-Source Developer

Remember, this was 1997

Page 10: The Life & Journey of a Professional Open-Source Developer

Then websites…

And someone wanted a shopping cart.

Page 11: The Life & Journey of a Professional Open-Source Developer

WTF is cgi-bin?

Page 12: The Life & Journey of a Professional Open-Source Developer

And Apache?

Page 13: The Life & Journey of a Professional Open-Source Developer

Perl?

You’ve got to be kidding me.

Page 14: The Life & Journey of a Professional Open-Source Developer

*sigh*

Page 15: The Life & Journey of a Professional Open-Source Developer

I’d done Apple //e BASIC in 3rd grade

Page 16: The Life & Journey of a Professional Open-Source Developer

And Logo

Page 17: The Life & Journey of a Professional Open-Source Developer

Perl

Page 18: The Life & Journey of a Professional Open-Source Developer

C++

Page 19: The Life & Journey of a Professional Open-Source Developer
Page 20: The Life & Journey of a Professional Open-Source Developer

ACEWashington University

Page 21: The Life & Journey of a Professional Open-Source Developer

Use. Learn.

Find bugs. Submit patch.

Page 22: The Life & Journey of a Professional Open-Source Developer
Page 23: The Life & Journey of a Professional Open-Source Developer

Makefiles

Not awesome. Not fast.

Page 24: The Life & Journey of a Professional Open-Source Developer

Academic writings are form of open-source.

Page 25: The Life & Journey of a Professional Open-Source Developer
Page 26: The Life & Journey of a Professional Open-Source Developer
Page 27: The Life & Journey of a Professional Open-Source Developer
Page 28: The Life & Journey of a Professional Open-Source Developer

Wait, what happened to my hammer?

Or menus? Or business cards?

Or websites?

Page 29: The Life & Journey of a Professional Open-Source Developer

First Software Engineering

Job

Page 30: The Life & Journey of a Professional Open-Source Developer

ACE iFleet

Giant Build

Cluster

Bake

Bob

Page 31: The Life & Journey of a Professional Open-Source Developer

Hired!

Page 32: The Life & Journey of a Professional Open-Source Developer

Linux Emacs

C++ Java Loved Open-Source

Released Open-Source

Page 33: The Life & Journey of a Professional Open-Source Developer

werkflow JDOM dom4j

Jaxen XPath jakarta-* (apache)

Page 34: The Life & Journey of a Professional Open-Source Developer

Second Software Engineering

Job

Page 35: The Life & Journey of a Professional Open-Source Developer

CAPS Logistics

Page 36: The Life & Journey of a Professional Open-Source Developer

The Java Guy at a DCOM shop.

Page 37: The Life & Journey of a Professional Open-Source Developer

Lots of free time.

Page 38: The Life & Journey of a Professional Open-Source Developer
Page 39: The Life & Journey of a Professional Open-Source Developer

• Business rules

• Heuristics for solving vehicle routing & scheduling

• ILOG JRules was too expensive

• Lots of academic papers available

Page 40: The Life & Journey of a Professional Open-Source Developer
Page 41: The Life & Journey of a Professional Open-Source Developer

• Strong project leaders

• Autonomy

• Better tools (JIRA, Subversion)

• Commercial-friendly

• Not Apache Software Foundation

Page 42: The Life & Journey of a Professional Open-Source Developer
Page 43: The Life & Journey of a Professional Open-Source Developer
Page 44: The Life & Journey of a Professional Open-Source Developer

• Consulting around open-source strategies

• Helped clients (JotSpot, BEA) work with OSS communities

Page 45: The Life & Journey of a Professional Open-Source Developer
Page 46: The Life & Journey of a Professional Open-Source Developer
Page 47: The Life & Journey of a Professional Open-Source Developer
Page 48: The Life & Journey of a Professional Open-Source Developer

I missed engineering

Page 49: The Life & Journey of a Professional Open-Source Developer

TorqueBox

JRuby on JBossAS

Page 50: The Life & Journey of a Professional Open-Source Developer

Hire the JRuby guys

Page 51: The Life & Journey of a Professional Open-Source Developer

Microservices with WildFly

Page 52: The Life & Journey of a Professional Open-Source Developer

Lessons Learned:

Page 53: The Life & Journey of a Professional Open-Source Developer

Start with small contributions.

Page 54: The Life & Journey of a Professional Open-Source Developer

Documentation and bug reports are contributions.

Page 55: The Life & Journey of a Professional Open-Source Developer

Contributing to forums & lists

are contributions.

Page 56: The Life & Journey of a Professional Open-Source Developer

Implement from specifications or RFCs.

Page 57: The Life & Journey of a Professional Open-Source Developer

Communication is important.

Page 58: The Life & Journey of a Professional Open-Source Developer

Learn tools to communicate across

space and time.

Page 59: The Life & Journey of a Professional Open-Source Developer

Good bug reports

Page 60: The Life & Journey of a Professional Open-Source Developer

Good commit messages

Page 61: The Life & Journey of a Professional Open-Source Developer

Good emails

Page 62: The Life & Journey of a Professional Open-Source Developer

Friendliness is important.

Page 63: The Life & Journey of a Professional Open-Source Developer

Scratch an itch.

Page 64: The Life & Journey of a Professional Open-Source Developer

Someone else probably has the same itch.

Page 65: The Life & Journey of a Professional Open-Source Developer

Strong opinions, Weakly held.

Page 66: The Life & Journey of a Professional Open-Source Developer

You can be a commercial-friendly

open-source zealot.

Page 67: The Life & Journey of a Professional Open-Source Developer

Continuous self-promotion.

Page 68: The Life & Journey of a Professional Open-Source Developer

(like this today)

Page 69: The Life & Journey of a Professional Open-Source Developer

Champion others.

Page 70: The Life & Journey of a Professional Open-Source Developer

Open-source builds reputation.

Page 71: The Life & Journey of a Professional Open-Source Developer

Closed-source jobs make you “go dark”.

Page 72: The Life & Journey of a Professional Open-Source Developer

Open-source helps you learn.

Page 73: The Life & Journey of a Professional Open-Source Developer

Open-source helps you make connections.

Page 74: The Life & Journey of a Professional Open-Source Developer

At Red Hat, we hire from the community.

Page 75: The Life & Journey of a Professional Open-Source Developer

Community is everywhere.

Page 76: The Life & Journey of a Professional Open-Source Developer

To recap:

Page 77: The Life & Journey of a Professional Open-Source Developer

• You can learn via open-source

• You can improve via open-source

• You can make a career of open-source

Page 78: The Life & Journey of a Professional Open-Source Developer

Thank you!Questions?