Stories in Open Source

Tobias Pfeiffer
Tobias PfeifferSoftware Engineer (Student) at Devolute
Stories in Open Source
First contact
gedit
Stories in Open Source
gedit
gedit
Stories in Open Source
The End
The End
needless work
The End
needless work
missing triaging
The End
needless work
missing triaging
no appreciation
The End
needless work
missing triaging
frustration
no appreciation
Stories in Open Source
Tobias Pfeiffer
@PragTob
pragtob.info
Stories in Open Source
Stories in Open Source
Stories in Open Source
Shoes.app width: 300, height: 200 do
background lime..blue
stack do
para "Welcome to the world of Shoes!"
button "Click me" do
alert "Nice click!"
end
image "http:./shoesrb.com/img/shoes-icon.png",
margin_top: 20, margin_left: 10
end
end
Stories in Open Source
Stories in Open Source
Welcoming, friendly & helpful
OSS friends
Give people access
Release early, release often
You are not your OSS
class Dog
def bark
puts 'Woooof'
end
end
Dog.extend AfterDo
Dog.after :bark do puts 'I just heard a dog bark!' end
dog = Dog.new
dog.bark
# Output is:
# Woooof
# I just heard a dog bark!
after_do
Stories in Open Source
micro libraries are great
you have no idea how it’s used
list = Enum.to_list(1..10_000)
map_fun = fn i .> [i, i * i] end
Benchee.run(
%{
"flat_map" .> fn .> Enum.flat_map(list, map_fun) end,
"map.flatten" .> fn .> list .> Enum.map(map_fun) .> List.flatten() end
},
time: 10,
memory_time: 2
)
benchee
Stories in Open Source
learn as you go
just being better isn’t enough
co-maintainers
We made it!
SimpleCov
Stories in Open Source
“legacy” OSS
joy of impact
you don’t owe people
nightmares of integration
First step into
OSS
Please report issues!
Be nice!
Be nice!
Minimize
Be nice!
Minimize
Reproduce
Stories in Open Source
Discuss!
(Maybe) add a PR!
OSS vs Work
Stories in Open Source
OSS
Be nice!
OSS
Be nice!
Your OSS, your time
OSS
Be nice!
Your OSS, your time
Adoption takes time
OSS
seemingly even less diverse
OSS
seemingly even less diverse
is this sustainable?
OSS
seemingly even less diverse
is this sustainable?
what about people using OSS for “evil”?
Stories in Open Source
friends
friends
friends
friends
first talks
friends
first talks
friends
first talks
friends
first talks
friends
first talks
learning
friends
first talks
learning
all other projects
friends
first talks
learning
all other projects
@PragTob
Enjoy OSS
1 of 68

Recommended

"Storming Off" - second half by
"Storming Off" - second half"Storming Off" - second half
"Storming Off" - second halfGrantWilliams20
68 views142 slides
3. research by
3. research 3. research
3. research Emma Garthwaite
35 views13 slides
Alien blast pipeline by
Alien blast pipeline Alien blast pipeline
Alien blast pipeline James Curran
186 views2 slides
Pre Production by
Pre ProductionPre Production
Pre ProductionJodieWood4
4 views10 slides
Metaphors are everywhere: Ideas to Improve Software Development by
 Metaphors are everywhere: Ideas to Improve Software Development  Metaphors are everywhere: Ideas to Improve Software Development
Metaphors are everywhere: Ideas to Improve Software Development Tobias Pfeiffer
11 views126 slides
Elixir & Phoenix – Fast, Concurrent and Explicit by
Elixir & Phoenix – Fast, Concurrent and ExplicitElixir & Phoenix – Fast, Concurrent and Explicit
Elixir & Phoenix – Fast, Concurrent and ExplicitTobias Pfeiffer
3.4K views88 slides

More Related Content

More from Tobias Pfeiffer

Do You Need That Validation? Let Me Call You Back About It by
Do You Need That Validation? Let Me Call You Back About ItDo You Need That Validation? Let Me Call You Back About It
Do You Need That Validation? Let Me Call You Back About ItTobias Pfeiffer
2.1K views142 slides
Elixir, your Monolith and You by
Elixir, your Monolith and YouElixir, your Monolith and You
Elixir, your Monolith and YouTobias Pfeiffer
3.5K views92 slides
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays) by
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)Tobias Pfeiffer
2.7K views147 slides
Where do Rubyists go? by
 Where do Rubyists go?  Where do Rubyists go?
Where do Rubyists go? Tobias Pfeiffer
3.4K views107 slides
It's About the Humans, Stupid (Lightning) by
It's About the Humans, Stupid (Lightning)It's About the Humans, Stupid (Lightning)
It's About the Humans, Stupid (Lightning)Tobias Pfeiffer
2.1K views25 slides
Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version) by
 Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version) Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version)
Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version)Tobias Pfeiffer
2.3K views139 slides

More from Tobias Pfeiffer(20)

Do You Need That Validation? Let Me Call You Back About It by Tobias Pfeiffer
Do You Need That Validation? Let Me Call You Back About ItDo You Need That Validation? Let Me Call You Back About It
Do You Need That Validation? Let Me Call You Back About It
Tobias Pfeiffer2.1K views
Elixir, your Monolith and You by Tobias Pfeiffer
Elixir, your Monolith and YouElixir, your Monolith and You
Elixir, your Monolith and You
Tobias Pfeiffer3.5K views
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays) by Tobias Pfeiffer
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)
Tobias Pfeiffer2.7K views
It's About the Humans, Stupid (Lightning) by Tobias Pfeiffer
It's About the Humans, Stupid (Lightning)It's About the Humans, Stupid (Lightning)
It's About the Humans, Stupid (Lightning)
Tobias Pfeiffer2.1K views
Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version) by Tobias Pfeiffer
 Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version) Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version)
Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version)
Tobias Pfeiffer2.3K views
Code, Comments, Concepts, Comprehension – Conclusion? by Tobias Pfeiffer
Code, Comments, Concepts, Comprehension – Conclusion?Code, Comments, Concepts, Comprehension – Conclusion?
Code, Comments, Concepts, Comprehension – Conclusion?
Tobias Pfeiffer2K views
How fast is it really? Benchmarking in Practice (Ruby Version) by Tobias Pfeiffer
How fast is it really? Benchmarking in Practice (Ruby Version)How fast is it really? Benchmarking in Practice (Ruby Version)
How fast is it really? Benchmarking in Practice (Ruby Version)
Tobias Pfeiffer2.3K views
How fast ist it really? Benchmarking in practice by Tobias Pfeiffer
How fast ist it really? Benchmarking in practiceHow fast ist it really? Benchmarking in practice
How fast ist it really? Benchmarking in practice
Tobias Pfeiffer4.7K views
Elixir & Phoenix – fast, concurrent and explicit by Tobias Pfeiffer
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicit
Tobias Pfeiffer5.8K views
What did AlphaGo do to beat the strongest human Go player? by Tobias Pfeiffer
What did AlphaGo do to beat the strongest human Go player?What did AlphaGo do to beat the strongest human Go player?
What did AlphaGo do to beat the strongest human Go player?
Tobias Pfeiffer2.2K views
Elixir & Phoenix – fast, concurrent and explicit by Tobias Pfeiffer
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicit
Tobias Pfeiffer2.1K views
What did AlphaGo do to beat the strongest human Go player? by Tobias Pfeiffer
What did AlphaGo do to beat the strongest human Go player?What did AlphaGo do to beat the strongest human Go player?
What did AlphaGo do to beat the strongest human Go player?
Tobias Pfeiffer1.4K views
What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver... by Tobias Pfeiffer
What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver...What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver...
What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver...
Tobias Pfeiffer290 views
Ruby to Elixir - what's great and what you might miss by Tobias Pfeiffer
Ruby to Elixir - what's great and what you might missRuby to Elixir - what's great and what you might miss
Ruby to Elixir - what's great and what you might miss
Tobias Pfeiffer420 views
Elixir & Phoenix - fast, concurrent and explicit by Tobias Pfeiffer
Elixir & Phoenix - fast, concurrent and explicitElixir & Phoenix - fast, concurrent and explicit
Elixir & Phoenix - fast, concurrent and explicit
Tobias Pfeiffer668 views
Beating Go Thanks to the Power of Randomness by Tobias Pfeiffer
Beating Go Thanks to the Power of RandomnessBeating Go Thanks to the Power of Randomness
Beating Go Thanks to the Power of Randomness
Tobias Pfeiffer332 views
Code is read many mor times than written - short by Tobias Pfeiffer
Code is read many mor times than written - shortCode is read many mor times than written - short
Code is read many mor times than written - short
Tobias Pfeiffer721 views

Recently uploaded

Dapr Unleashed: Accelerating Microservice Development by
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice DevelopmentMiroslav Janeski
12 views29 slides
Playwright Retries by
Playwright RetriesPlaywright Retries
Playwright Retriesartembondar5
5 views1 slide
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action by
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionMárton Kodok
15 views55 slides
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook Automation by
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook AutomationDRYiCE™ iAutomate: AI-enhanced Intelligent Runbook Automation
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook AutomationHCLSoftware
6 views8 slides
Navigating container technology for enhanced security by Niklas Saari by
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas SaariMetosin Oy
14 views34 slides
Page Object Model by
Page Object ModelPage Object Model
Page Object Modelartembondar5
6 views5 slides

Recently uploaded(20)

Dapr Unleashed: Accelerating Microservice Development by Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski12 views
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action by Márton Kodok
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
Márton Kodok15 views
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook Automation by HCLSoftware
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook AutomationDRYiCE™ iAutomate: AI-enhanced Intelligent Runbook Automation
DRYiCE™ iAutomate: AI-enhanced Intelligent Runbook Automation
HCLSoftware6 views
Navigating container technology for enhanced security by Niklas Saari by Metosin Oy
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas Saari
Metosin Oy14 views
Quality Engineer: A Day in the Life by John Valentino
Quality Engineer: A Day in the LifeQuality Engineer: A Day in the Life
Quality Engineer: A Day in the Life
John Valentino7 views
Fleet Management Software in India by Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable12 views
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx by animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm15 views
ADDO_2022_CICID_Tom_Halpin.pdf by TomHalpin9
ADDO_2022_CICID_Tom_Halpin.pdfADDO_2022_CICID_Tom_Halpin.pdf
ADDO_2022_CICID_Tom_Halpin.pdf
TomHalpin95 views
JioEngage_Presentation.pptx by admin125455
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptx
admin1254556 views
Introduction to Git Source Control by John Valentino
Introduction to Git Source ControlIntroduction to Git Source Control
Introduction to Git Source Control
John Valentino6 views
Ports-and-Adapters Architecture for Embedded HMI by Burkhard Stubert
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMI
Burkhard Stubert26 views
Airline Booking Software by SharmiMehta
Airline Booking SoftwareAirline Booking Software
Airline Booking Software
SharmiMehta7 views

Stories in Open Source