SlideShare une entreprise Scribd logo
1  sur  75
Télécharger pour lire hors ligne
think locally
code globally
code4lib JAPAN - 2013-09-01 - 南三陸町
@dchud - Daniel Chudnov - dchud @ gwu edu
* equidistant conic map w/d3 by mbostock, http://bl.ocks.org/mbostock/3734317
*
英語で、
どうもすみません
slideshare.net / dchud
please follow along!
me
my employer
my community
{local
global
}
me • employer • community
employer • community • me
community • me • employer
me • community • employer
community • employer • me
employer • me • community
*自己紹介
•hacker / librarian
•jake - early link resolver
•prospero - early web
document delivery
•oss4lib.org - pro-free/
libre/open source site
* self-introduction
{yale
•dspace
•code4lib
•coins / unapi
•wdl.org
•chronicling america
•pb-scale content mgmt
•twitter
{lc
{mit
{yale
manager{gwu
hacking code
hacking culture
in libraries!
HACK
OR DIE! *
* @tzhaya, code4lib 2011
let’s focus
on
culture
code4lib - the beginning
•web4lib
•xml4lib
•perl4lib
•php4lib
•python4lib?
~2002
all the same people 4 lib
how about
just
“code4lib”?
2002 - list
2003 - irc
2004 - more people
2005 - mini conference
2006 - real conference
2007 - journal
2009 - local
2010 - JAPAN
2012 - job board
why this success?
•we needed each other
•we removed divisions
•we welcomed new
people
•the time was right
•a good culture hack!
see something we need?
go do it!
a
“rough consensus
and
running code”
community culture
I made this, w/code! flickr.com/photos/dchud/4205315880/
members
self-identify
and
self-select
that’s
it
!
it’s rough sometimes
but it (mostly) works
it’s
my community
now, it’s
your community
too
ようこそ!
...back to
my employer...
hacking culture
at
GW Libraries
in
several steps
we write
code for libraries
among many other things, but this is code4lib, so...
goal: write
meaningful code
that helps people
reliably well
how
?
we use github
extensively
github . com / gwu - libraries
we use a
university-approved
free software license
MIT-style
step 0 - write code
step 1 - share code
but...
we did not
talk with each other
enough
about our code
a
“rough code
and
no consensus”
local culture
two ways to talk about code
•review each other’s code
•read other people’s code
code review
old workflow:
make a change,
publish the change
new workflow:
propose a change,
someone else decides
whether to publish
use github culture
• create a git branch
• commit changes locally
• push branch to github
• create a pull request
• review each others’ pull
requests
≥2 people see
every change
and discuss issues
take
a global practice
make
a local workflow
code read
code read
• once per week
• open up some code on github
• read it together
• include colleagues from other
departments
• so far: pymarc, bagit.py, bento_search
(ruby/rails), arduino, catmandu (perl)
why read code?
• people ask questions
• teach each other about how
code works
• no ego - somebody else’s code!
who’s qualified?
•everyone who comes!
•self-selected - if you want
to attend, you’re qualified
•acknowledge, temper
Imposter Syndrome *
* wikipedia.org/wiki/Impostor_syndrome
code read benefits
• engages non-coder specialists in
algorithmic thinking
• engages coder in other areas of
specialization
• deepens respect for each other
• helps non-coders talk about code
• helps coders talk with each other
make
a local practice
share it globally
step 0 - write code
step 1 - share code
step 2 - talk about code
next:
grow the culture
include more people
two ways to add people
•connect local people
to global code4lib
•solve local problems
via global code4lib
i used to think
everyone should code
then i saw this
we code4libbers
self-select
new goal:
connect one local
colleague
to code4lib
benefits
• new person connects,
contributes to broader
community
• bridges code4lib through
their own unique experience
• brings in ideas, projects from
community i’d miss
risks
•might not like it at all
•might like it a lot!
•might find another job
i accept those risks
gladly
step 0 - write code
step 1 - share code
step 2 - talk about code
step 3 - add more people
good news:
this scales!
code4libconf history
• 2005 - 10 people, no real plan
• 2006 - 80+ people, planned out
• 2013 - 380 people, full agenda, and
attendees from Europe and Japan!
we have a good mix
but there are
more risks
1.
what are the
social bottlenecks? *
* with apologies and gratitude to @i2k for the idea
bottlenecks to
community growth
•perception of cliques - hard for
new people
•more overhead for organizing
•sometimes hard to stick with
“rough consensus”
biggest bottleneck
•missing opportunities to
grow stronger together
through better
understanding of our
differences and
vulnerabilities *
* see @eosadler’s code4lib 2013 talk
2.
give new people
a real chance
to help lead
“...growing [wikipedia]
requires making it easier and
more rewarding to contribute
occasionally.” *
* aaronsw,“Who Writes Wikipedia?”
3.
fast, cheap, good
はやい、やすい、うまい
which two?
* thanks again to @i2k for inspiration
connect fast,
connect well
はやい、うまい!
like meaningful code,
meaningful relationships
take time
and are never cheap
summary
invest in these
connections
for yourself,
for your employer,
for our community
when you
connect globally
you improve
your work locally
optimize
for
participation
please keep in touch!
@dchud

Contenu connexe

En vedette

Capturing the Ephemeral: Collecting Social Media with Social Feed Manager
Capturing the Ephemeral: Collecting Social Media with Social Feed ManagerCapturing the Ephemeral: Collecting Social Media with Social Feed Manager
Capturing the Ephemeral: Collecting Social Media with Social Feed Manager
Dan Chudnov
 
Experience Gedepahala Corridor Programme
Experience Gedepahala Corridor ProgrammeExperience Gedepahala Corridor Programme
Experience Gedepahala Corridor Programme
GPFLR
 

En vedette (16)

stuff i'm learning in data school
stuff i'm learning in data schoolstuff i'm learning in data school
stuff i'm learning in data school
 
20121018 Access "social feed manager"
20121018 Access "social feed manager"20121018 Access "social feed manager"
20121018 Access "social feed manager"
 
collecting twitter data w/social feed manager
collecting twitter data w/social feed managercollecting twitter data w/social feed manager
collecting twitter data w/social feed manager
 
web archiving tools and technologies
web archiving tools and technologiesweb archiving tools and technologies
web archiving tools and technologies
 
CTS at LC - Access 2010
CTS at LC - Access 2010CTS at LC - Access 2010
CTS at LC - Access 2010
 
Hacker 102 - regexes w/Javascript, Python
Hacker 102 - regexes w/Javascript, PythonHacker 102 - regexes w/Javascript, Python
Hacker 102 - regexes w/Javascript, Python
 
introduction to Django in five slides
introduction to Django in five slides introduction to Django in five slides
introduction to Django in five slides
 
Linking Library Data on the Web
Linking Library Data on the WebLinking Library Data on the Web
Linking Library Data on the Web
 
Hacker102 - RegExes w/JavaScript and Python
Hacker102 - RegExes w/JavaScript and PythonHacker102 - RegExes w/JavaScript and Python
Hacker102 - RegExes w/JavaScript and Python
 
what i want from linked data
what i want from linked datawhat i want from linked data
what i want from linked data
 
CRM: A Business Imperative for Companies during the Global Economic Downturn
CRM: A Business Imperative for Companies during the Global Economic DownturnCRM: A Business Imperative for Companies during the Global Economic Downturn
CRM: A Business Imperative for Companies during the Global Economic Downturn
 
WWIC - Library Linked Data as a Customer Service Medium
WWIC - Library Linked Data as a Customer Service MediumWWIC - Library Linked Data as a Customer Service Medium
WWIC - Library Linked Data as a Customer Service Medium
 
Biodiversity Conservation in the Production Forests of Indonesia
Biodiversity Conservation in the Production Forests of IndonesiaBiodiversity Conservation in the Production Forests of Indonesia
Biodiversity Conservation in the Production Forests of Indonesia
 
Overview of Adaptive Blocking for DDL Research Lab
Overview of Adaptive Blocking for DDL Research LabOverview of Adaptive Blocking for DDL Research Lab
Overview of Adaptive Blocking for DDL Research Lab
 
Capturing the Ephemeral: Collecting Social Media with Social Feed Manager
Capturing the Ephemeral: Collecting Social Media with Social Feed ManagerCapturing the Ephemeral: Collecting Social Media with Social Feed Manager
Capturing the Ephemeral: Collecting Social Media with Social Feed Manager
 
Experience Gedepahala Corridor Programme
Experience Gedepahala Corridor ProgrammeExperience Gedepahala Corridor Programme
Experience Gedepahala Corridor Programme
 

Similaire à think locally, code globally - dchud's code4lib japan 2013 talk

Search-Driven Programming
Search-Driven ProgrammingSearch-Driven Programming
Search-Driven Programming
Ethan Herdrick
 
Agile forthelongrun lesfurets
Agile forthelongrun lesfuretsAgile forthelongrun lesfurets
Agile forthelongrun lesfurets
Dimitri Baeli
 
Open Textbooks Authoring Models and Tools
Open Textbooks Authoring Models and ToolsOpen Textbooks Authoring Models and Tools
Open Textbooks Authoring Models and Tools
Scott Leslie
 

Similaire à think locally, code globally - dchud's code4lib japan 2013 talk (20)

The Open Source Way - @JBCNConf Closing Keynote 2016
The Open Source Way - @JBCNConf Closing Keynote 2016The Open Source Way - @JBCNConf Closing Keynote 2016
The Open Source Way - @JBCNConf Closing Keynote 2016
 
What is open source?
What is open source?What is open source?
What is open source?
 
Search-Driven Programming
Search-Driven ProgrammingSearch-Driven Programming
Search-Driven Programming
 
Agile forthelongrun lesfurets
Agile forthelongrun lesfuretsAgile forthelongrun lesfurets
Agile forthelongrun lesfurets
 
Contributing to Open Source
Contributing to Open SourceContributing to Open Source
Contributing to Open Source
 
TriConf 2014 - LXJS, the Lisbon Javascript Conference
TriConf 2014 - LXJS, the Lisbon Javascript ConferenceTriConf 2014 - LXJS, the Lisbon Javascript Conference
TriConf 2014 - LXJS, the Lisbon Javascript Conference
 
Open Textbooks Authoring Models and Tools
Open Textbooks Authoring Models and ToolsOpen Textbooks Authoring Models and Tools
Open Textbooks Authoring Models and Tools
 
Connecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and BeyondConnecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and Beyond
 
Community Marketing at Docker | Docker Tour de France 2014
Community Marketing at Docker | Docker Tour de France 2014Community Marketing at Docker | Docker Tour de France 2014
Community Marketing at Docker | Docker Tour de France 2014
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
 
Using oss at an internet company and hacker culture
Using oss at an internet company and hacker cultureUsing oss at an internet company and hacker culture
Using oss at an internet company and hacker culture
 
Open Sesame (and other open movements)
Open Sesame (and other open movements)Open Sesame (and other open movements)
Open Sesame (and other open movements)
 
Peter Flaschner - Making a Break Through All the Clutter and Noise: Online M...
Peter Flaschner -  Making a Break Through All the Clutter and Noise: Online M...Peter Flaschner -  Making a Break Through All the Clutter and Noise: Online M...
Peter Flaschner - Making a Break Through All the Clutter and Noise: Online M...
 
Levelling up in open source
Levelling up in open sourceLevelling up in open source
Levelling up in open source
 
Hacktoberfest - An Open Source Story
Hacktoberfest - An Open Source StoryHacktoberfest - An Open Source Story
Hacktoberfest - An Open Source Story
 
What is devops
What is devopsWhat is devops
What is devops
 
Community its easier than you think
Community its easier than you thinkCommunity its easier than you think
Community its easier than you think
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
 
How to Build a Tech Community
How to Build a Tech CommunityHow to Build a Tech Community
How to Build a Tech Community
 
Emerging Trends, 2.0 & Libraries
Emerging Trends, 2.0 & LibrariesEmerging Trends, 2.0 & Libraries
Emerging Trends, 2.0 & Libraries
 

Dernier

Dernier (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
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
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
"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 ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 

think locally, code globally - dchud's code4lib japan 2013 talk