SlideShare una empresa de Scribd logo
1 de 33
How to Become
Rich, Famous, and
Popular While Using
Your Programming
Skills to Make the
World a Better
Place
(Maybe)
Greg Wilson
2
5-15% use GPU clusters
to analyze petabytes
in the cloud
85-95% send each
other spreadsheets
by email
Scientists
3
It Is Therefore Obvious That...
We should put more computing in the curriculum!
But it's already full
4
It Is Therefore Obvious That...
And even if we did...
...who would teach those classes?
5
If you build a man a fire,
you'll keep him warm for a night.
If you set a man on fire,
you'll keep him warm for the rest of his life.
— Terry Pratchett
6
What We Teach
Unix shell
Version control
Python/R/MATLAB
SQL
Make
7
What We Actually Teach
Unix shell => Task automation
Version control => Track and share work
Python/R/MATLAB => Modular programming
SQL => Data management
Make => Reproducibility
8
How We Teach
● Peer instructors
● Teach in pairs
● Learners use their own machines
● Live coding
● Sticky notes
● Collaborative note-taking
● Iterate, iterate, iterate...
9
How It's Going
2011-11-07
2012-07-19
2013-01-06
2013-04-08
2013-06-24
2013-09-23
2014-01-08
2014-03-18
2014-06-15
2014-08-06
2014-09-27
2014-12-14
2015-02-09
2015-03-30
2015-05-25
2015-07-06
2015-08-27
2015-10-17
0
100
200
300
400
500
600
Workshops
10
How It's Going
Workshops
11
How It's Going
Learners
2011-11-07
2012-05-16
2012-10-08
2012-11-30
2013-02-06
2013-04-18
2013-05-30
2013-07-18
2013-09-21
2013-11-14
2014-01-18
2014-02-24
2014-04-29
2014-06-16
2014-07-19
2014-08-23
2014-09-24
2014-11-07
2014-12-18
2015-01-29
2015-03-02
2015-03-30
2015-04-29
2015-06-04
2015-06-29
2015-08-03
2015-09-06
2015-10-01
0
2000
4000
6000
8000
10000
12000
14000
16000
18000
12
How It's Going
Instructors
2012-05-27
2013-07-20
2013-11-17
2014-04-19
2014-07-07
2014-08-07
2014-10-03
2014-11-05
2014-11-13
2014-11-20
2014-11-27
2014-12-13
2015-01-07
2015-02-06
2015-03-01
2015-03-12
2015-04-20
2015-05-26
2015-06-12
2015-06-26
2015-07-05
2015-07-10
2015-07-14
2015-07-28
2015-09-02
2015-09-25
2015-10-13
0
50
100
150
200
250
300
350
400
450
500
13
How It's Going
Instructors
14
What We've Accomplished
● Honestly don't know
● Anecdotally, save people 10-20% of
their time for the rest of their careers
● And prepare them for petabytes and
clouds
15
What I've Learned
1. We know a lot
about learning
2. Most people
would rather fail
than change
3. There are lots of
gaps to fill
16
For Example
https://www.youtube.com/watch?v=2LbuoxAy56o
17
●
Today's MOOC platforms don't support PI
●
Piotr Banaszkiewicz showed it's possible
github.com/pbanaszkiewicz/peer-instruction
●
Opportunity #1
18
The Jupyter Notebook
Text, math, code,
and images
What hypertext
was meant to
be
19
The Jupyter Notebook
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png":"iVBORw0KGgoAAAANSUhEUgAAArMAAAJA
CAYAAACe4e6sAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzn
AAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdYFFfbBvB7qSIsH
...
20
The Jupyter Notebook
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png":"iVBORw0KGgoAAAANSUhEUgAAArMAAAJA
CAYAAACe4e6sAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzn
AAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdYFFfbBvB7qSIsH
...
Good luck
diffing and
merging this.
21
It Doesn't Have to Be This Way
Tavish Armstrong and others
nbdiff.org
Opportunity #2
22
Generalizes Well
First-class support for diffing and
merging spreadsheets will get more
scientists to use version control than
anything else we can do.
23
Generalizes Well
First-class support for diffing and
merging spreadsheets will get more
scientists to use version control than
anything else we can do.
3 developers x 8 months (?)
(even if it's optimistic...)
24
Speaking of Version Control
● Git is an awful tool
● git-man-page-generator.lokaltog.net
● But it's the price people have to pay in
order to use GitHub
25
Speaking of Version Control
● A rational re-design of Git is possible
and worthwhile
● Opportunity #3
● Also generalizes well
Andreas Stefik and Susanna Siebert: "An Empirical
Investigation into Programming Language Syntax."
ACM Transactions on Computing Education, 13(4), Nov.
2013.
26
A Puzzle
● Thousands contribute
patches to open source
software projects
● Millions have edited
Wikipedia
● Why don't people build
lessons this way?
27
All Together Now
● We've shown it can be done
● And that it's useful
● This presents more opportunities
28
A Small Part of the Reason
● Slideshow formats
aren't diffable either
● But HTML alternatives
are impoverished
29
A Small Part of the Reason
● Neither can create web-
native videos
● Proof: pause a video, highlight the
text being displayed, and copy it
30
Solution: Browsercast
HTML slideshow...
...with start times for slides...
...and a player that syncs with audio
github.com/twitwi/deck.browsercast.js-demo
(Bonus marks for a GUI timestamp editor)
31
Advantages
● Plays everywhere
● Mobile-friendly
● Accessible!
● Searchable!
● Diffable! (ish)
32
To Sum Up
● First-class support for peer instruction
● Diff for all! (Excel first)
● A rational reconstruction of Git
● Browsercast
● Rocket science
● Fill in the gaps
33
For More Information
http://software-carpentry.org
gvwilson@software-carpentry.org
@swcarpentry
Thank You

Más contenido relacionado

La actualidad más candente

La actualidad más candente (8)

Acm productivity-webinar-2016-slides
Acm productivity-webinar-2016-slidesAcm productivity-webinar-2016-slides
Acm productivity-webinar-2016-slides
 
PyGotham opening the magic box
PyGotham  opening the magic boxPyGotham  opening the magic box
PyGotham opening the magic box
 
Getting Things Done for Technical Communicators at TCUK14
Getting Things Done for Technical Communicators at TCUK14Getting Things Done for Technical Communicators at TCUK14
Getting Things Done for Technical Communicators at TCUK14
 
Patterns for the People
Patterns for the PeoplePatterns for the People
Patterns for the People
 
Andres Rodriguez at AI Frontiers: Catalyzing Deep Learning's Impact in the En...
Andres Rodriguez at AI Frontiers: Catalyzing Deep Learning's Impact in the En...Andres Rodriguez at AI Frontiers: Catalyzing Deep Learning's Impact in the En...
Andres Rodriguez at AI Frontiers: Catalyzing Deep Learning's Impact in the En...
 
Medbiq xAPI workshop2b
Medbiq xAPI workshop2bMedbiq xAPI workshop2b
Medbiq xAPI workshop2b
 
Lessons learned after 190M lessons served
Lessons learned after 190M lessons servedLessons learned after 190M lessons served
Lessons learned after 190M lessons served
 
Psychology and Engineering of Testing
Psychology and Engineering of TestingPsychology and Engineering of Testing
Psychology and Engineering of Testing
 

Similar a How to Become Rich, Famous, and Popular While Using Your Programming Skills to Make the World a Better Place

Data Science Accelerator Program
Data Science Accelerator ProgramData Science Accelerator Program
Data Science Accelerator Program
GoDataDriven
 
Aws uk ug #8 not everything that happens in vegas stay in vegas
Aws uk ug #8   not everything that happens in vegas stay in vegasAws uk ug #8   not everything that happens in vegas stay in vegas
Aws uk ug #8 not everything that happens in vegas stay in vegas
Peter Mounce
 

Similar a How to Become Rich, Famous, and Popular While Using Your Programming Skills to Make the World a Better Place (20)

What is Python? An overview of Python for science.
What is Python? An overview of Python for science.What is Python? An overview of Python for science.
What is Python? An overview of Python for science.
 
The genesis of clusterlib - An open source library to tame your favourite sup...
The genesis of clusterlib - An open source library to tame your favourite sup...The genesis of clusterlib - An open source library to tame your favourite sup...
The genesis of clusterlib - An open source library to tame your favourite sup...
 
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
 
10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConf10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConf
 
10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems
 
H2O & Tensorflow - Fabrizio
H2O & Tensorflow - Fabrizio H2O & Tensorflow - Fabrizio
H2O & Tensorflow - Fabrizio
 
Cloud accounting software uk
Cloud accounting software ukCloud accounting software uk
Cloud accounting software uk
 
Data Science Accelerator Program
Data Science Accelerator ProgramData Science Accelerator Program
Data Science Accelerator Program
 
Blueprints: Introduction to Python programming
Blueprints: Introduction to Python programmingBlueprints: Introduction to Python programming
Blueprints: Introduction to Python programming
 
Sci computing using python
Sci computing using pythonSci computing using python
Sci computing using python
 
How to get started with Site Reliability Engineering
How to get started with Site Reliability EngineeringHow to get started with Site Reliability Engineering
How to get started with Site Reliability Engineering
 
Going deep (learning) with tensor flow and quarkus
Going deep (learning) with tensor flow and quarkusGoing deep (learning) with tensor flow and quarkus
Going deep (learning) with tensor flow and quarkus
 
A few questions about large scale machine learning
A few questions about large scale machine learningA few questions about large scale machine learning
A few questions about large scale machine learning
 
building intelligent systems with large scale deep learning
building intelligent systems with large scale deep learningbuilding intelligent systems with large scale deep learning
building intelligent systems with large scale deep learning
 
How to build and run a big data platform in the 21st century
How to build and run a big data platform in the 21st centuryHow to build and run a big data platform in the 21st century
How to build and run a big data platform in the 21st century
 
A Developer's Guide To Machine Learning
A Developer's Guide To Machine LearningA Developer's Guide To Machine Learning
A Developer's Guide To Machine Learning
 
Aws uk ug #8 not everything that happens in vegas stay in vegas
Aws uk ug #8   not everything that happens in vegas stay in vegasAws uk ug #8   not everything that happens in vegas stay in vegas
Aws uk ug #8 not everything that happens in vegas stay in vegas
 
programming_tutorial_course_ lesson_1.pptx
programming_tutorial_course_ lesson_1.pptxprogramming_tutorial_course_ lesson_1.pptx
programming_tutorial_course_ lesson_1.pptx
 
Kusto (Azure Data Explorer) Training for R&D - January 2019
Kusto (Azure Data Explorer) Training for R&D - January 2019 Kusto (Azure Data Explorer) Training for R&D - January 2019
Kusto (Azure Data Explorer) Training for R&D - January 2019
 
Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

How to Become Rich, Famous, and Popular While Using Your Programming Skills to Make the World a Better Place