HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
Northern Arizona State ACM talk (10/08)
1. The way and the light
All about Open Source, PostgreSQL and the
Job Market
(in 90 minutes)
Copyright Joshua D. Drake
Creative Commons Attribution-Share Alike 3.0 United States
http://creativecommons.org/licenses/by-sa/3.0/us/
2. Who am I?
● Major Contributor
– PostgreSQL.Org
● Director
– PostgreSQL.us
– SPI
● Consultant
– Command Prompt
Joshua D. Drake – jd@commandprompt.com
3. Open Source
● Why Open Source?
– Smart Software
– Most opportunity
– Sustainability
– Has a merit model
– Has an ethic
– You are not good enough
4. Smart software
Open Source is developed by the widest array
of minds and talents of any product or
project, software or not, on earth.
5. Most opportunity
Only with Open Source can an individual pick
up a keyboard, type a line of code, write a
line of documentation or meet up with a
potential user and contribute to a global
product.
Try that with Apple or Microsoft.
6. Sustainability
● Open Source provides sustainability via:
– Open maintenance of source
– Reduces the proprietary advantage
●The proliferation of Open Source and
adoption by corporations has caused an
inverse cost in the development of
proprietary software. It is now
cheaper to develop openly.
– Community creates a support network
– Community creates infrastructure for jobs
7. Sustainability II
The open nature levels the playing field in
a competitive arena. If you have a project
with commercial requirements the door is
opened for competition amongst all
commercial members of the community. As the
base product doesn't change (because it is
open source) all players have a level
playing field. A level playing field allows
for multiple providers to be authoritative
sources and helps the long term survival of
the project.
8. Sustainability III
As each commercial provider brings a new set
of talents to the community; the
competition creates friction and the
central goal (success of the project)
creates cooperation. This creates
coopetition.
9. Merit Model
The most successful Open Source projects
have a merit model (Meritocracy).
(LedgerSMB vs. Sql-Ledger, MySQL vs.
PostgreSQL)
10. Meritocracy
● Your influence in a project is derived from
the merit of your contribution.
● Meritocracy is not driven by
– Years in the industry
– Money in your account
– Length or impressiveness of the resume
11. Has an ethic
The removal of money as the primary
motivator in Open Source allows for a
diverse community with a wide range of
beliefs to bond with a central theme to
produce software that is at its core, good.
As money is never the (if you are sane)
primary motivator, human interest whether
developing a product, solving a problem, or
just generating intellectual satisfaction
takes over.
12. You are not good enough
● Reasons not to contribute
– I don't have enough experience
– I am not good enough at language -x-
– I don't know the model
– I am a perfectionist
– It might have bugs
– I don't want to be laughed at
13. Get over yourself
● Someone will always more experience
● There is always a better programmer
● What better way to learn the model than
hands on?
● Perfectionists are idiots. Nobody is
perfect.
● All software has bugs.
● So what if you are laughed at, learn from
the experience.
14. PostgreSQL.Org
● What is PostgreSQL?
– The community
– The software
● Why PostgreSQL?
– The community
– The software
15. What is PostgreSQL?
● The community
– Full Meritocracy
– Widely distributed
– Driven
– Fun
16. Full Meritocracy
● Influence is driven by contributions
● Contributions are more than code
– Good sysadmin but not a good coder?
●Sysadmin team
– Decent PHP developer?
●WWW team
– Hacker?
●-hackers
– etc...
17. Widely Distributed
● A true community with developers from all
over the globe.
– Sample 8.4 contributions and locations
● Parallel Restore – Andrew Dunstan: USA
● Recursive Queries – Itagaki (fill in):
Japan
● Streaming xlogs (pending) – Simon
Riggs: U.K.
● Autovacuum reloptions – Alvaro
Herrera: Chile
● Partial GIN search – Teodor (fill in):
Russia
18. Driven
● Follows the when its done philosophy
● Determined to have high quality releases
– Recent Coverity scans show 1 bug per
22,000 lines of code
– Recent MySQL Coverity scans show 1 bug
per 4,000 lines of code
● Strict security protocols
● Adherence to standards
19. Driven II
PostgreSQL Conference West 08 – Code Sprint
21. Fun II
PostgreSQL Conference East 08
(http://www.pgcon.us/)
22. What is PostgreSQL II
● The Software
– RDBMS
– ACID Compliant
– Fully transactional (including DDL)
– Scalable
●Easily handles tens of thousands
transactions a second
– Extensible
● Custom types, inheritance, multiple
procedural languages
23. Why PostgreSQL
● If the previous information wasn't
enough...
– BSD Licensed
– Global, Macro and Micro communities
– Mature tertiary projects
– Active opportunities at all levels
– You will be smarter and sexier
24. BSD Licensed
● The most flexible of Open Source licenses
– Qualifies as Free Software per FSF
– Qualifies as Open Source per
OpenSource.Org
– Pro business
– Pro community
– Pro individual
● The most “Free” of the Open Source licenses
– (go ahead... ask)
25. Global Community
● PostgreSQL.org
– All Macro and Micro communities fall
under the PostgreSQL.org affiliation.
– Largest contributing database community
– Where the core code lives
● PostgreSQL Global Development Group
(PGDG)
26. Macro Community
● Macro communities are regional
– Provide a more localized focus
● Generally more specific in their goals
27. Macro Community II
● Postgresql.eu
● Provides support to the general
European community (not the European
Union)
● Primarily uses User Groups as its
distribution point
– Postgresql.us
● Focuses on PostgreSQL in the United
States
● A more monolithic approach
– Corporation has specific goals
● Support user groups
● Work with Higher Education
28. Macro Communities III
● Depending on definition others exist
– JPUG
– Postgresql.it
– Postgresql.fr
– Postgresql.br
29. Micro communities
● Smaller and more focussed
● More personal
● Better defined mission
– Sometimes more broadly defined
● Generally local
– LAPUG is local to Los Angeles
– UKPUG is local to UK
30. Job Market
The job market is strong. Reporters are paid
to lie.
31. Keys to entering the market
● Be flexible
● Know more than one technology
● Be familiar with common standards
● Take risks
● Don't kill yourself
32. Be flexible
● You are not just an application developer
– You are a technologist
– Do not be afraid to reach out to
secondary technologies to get the job
done
● If you are a Java (Web) developer
– Understand Tomcat/Jakarta/Geronimo
– Understand best practices, strive
for them
● Code is not documentation
– Just because it is easy doesn't mean
it is correct (hibernate)
33. Know more than one technology
● It is great to be a java/.net/C/C++
whatever programmer.
● Entering the Job market with a common
skill, means lower pay.
– There are millions of Java programmers
● There are considerably less java
programmers who are also a master
database modeler or quality Linux
system administrator
● If you don't know your platform, you
shouldn't work on it.
34. Multiple technologies
Means higher pay
You do not have to be an expert in each,
that is impossible. Being competent in each
is entirely possible.
35. Be familiar with common standards
● Understand
– DRY (Don't Repeat Yourself)
– MVC (Model View Controller)
– Codd's rules
– XML
Etc...
●
● Or whatever standard is most applicable to
your field
36. Take risks
● Reward only comes with risk.
– Risk: PostgreSQL over MySQL
● Higher pay
● More scalable product
– Risk: Work for a startup
● More interesting work
● Helping build something new
– Risk: Join a community
● Contribute to something larger than
yourself
● Learn from the smartest minds in the
world
37. Make your own mark
● Walking out the door with a university
resume is good
● Walking out the door as a major contributor
(or founder) of an open source project is
better
● Your mark might be as an entrepreneur, it
may be as an employee, it may be as
something in between but make your mark.
38. Don't kill yourself
There are 168 hours in a week.
The only thing worth more than 40 of them is
you.