Strengthening the Tribe - Developers Enabling Developers
Introduction​
This talk was hosted during the Developer Week 2019 conference. I attended this talk because it covers an important topic which is sharing knowledge for developers. This is topic is important, because we always have new people joining the industry and/or the team.
Presenter​
Jesse Davis presented this talk. He is the Executive Vice President of Product at Devada. He is responsible for the strategic direction of Devada’s product development initiatives and forward-looking research. He is an author and speaker in enterprise software. He has spent more than 20 years creating enterprise data products.
Summary​
History of developers helping developers​
Developers tackle complex issues every day since the creation of the first software. As the developers gain experience and knowledge, the more complex and challenging development becomes. This is why developers come together and overcome these challenges by sharing their knowledge, experience, and solutions.
How people shared software in:​
1950s:​
- Univac: people used Magnetic tapes to share with other individual
- Share Community (IBM): IBM created a community that allowed people to share operating systems and more complex software
1960s:​
- Basic: With the creation of Basic a lot of different communities/companies started sharing code easier since it is no longer proprietary.
1970s:​
- Personal Computers (PCs): With personal computing came the power for individuals to share things among themselves
1980s:​
- Macintalk: The creation of the speech synthesis for Apple's Macintosh that became the basis for text-speech and speech-text software including our modern virtual assistants (Google, Siri, Alexa...).
1990s:​
- Developers evangelism: Sharing software with app stores become more popular and prominent
2000s​
- The new kingmakers: developers taking over all business, every company is a software company. Every business is a software company at some level
2010s​
- The internet: developers taking to the internet and share knowledge on many different communities (Github, stack overflow ...)
Developer journey​
Each software developer goes through the same journey
- Learning: the time where the person first starts and is learning the basics
- Contributing: Sharing and collaborating with others to help the new people learning.
- Teaching: This can take on many forms and covers the more complex topics. It can be done in form of mentoring, publishing books and/or courses. It can be targeted for new software developers or all the way to the experts.
Based on recent surveys the majority of developers have <5 years of experience globally. This means there is a lot of opportunity for existing developers to teach and contribute to the new generations.
Where to share and teaching​
There are many forms and places to share the knowledge, if one prefers to do in person teaching can do one of the following
- Software development programs: things like the girls who code and any of the other bootcamps found around.
- Meetups: There are meetups for almost every language and if there is isn't create one
- Conferences: Giving a talk in developer week or any other conference
- Schools: Help teach or reach out to student organizations who will be interested in learning from your experience.
Other notes​
- 42% of development work is focused on productivity loss (refactoring, bug fixes)
- Recommended read Tribes: We Need You to Lead Us by Seth Godin