Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Getting Involved with Spring 101
Search
cbeams
October 27, 2011
Programming
0
240
Getting Involved with Spring 101
As presented at SpringOne/2GX 2011 in Chigago, IL.
cbeams
October 27, 2011
Tweet
Share
More Decks by cbeams
See All by cbeams
The Revolution Will Not Be Centralized
cbeams
0
4.1k
spring.io: Inside and Out
cbeams
0
270
Modern Enterprise Application Configuration with Spring
cbeams
0
72
Intro to Websockets
cbeams
0
260
JavaOne 2012: Java EE and Spring Panel Discusson
cbeams
0
240
Spring 3.1 Review (and 3.2 Preview)
cbeams
0
99
Configuration Enhancements in Spring 3.1
cbeams
0
670
Case Study: Spring Projects on Gradle
cbeams
0
340
Configuration Enhancements in Spring 3.1
cbeams
0
260
Other Decks in Programming
See All in Programming
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
620
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
350
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
340
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
3
1.2k
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
740
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
210
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
350
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
100
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
420
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
680
株式会社 Sun terras カンパニーデック
sunterras
0
2k
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
67
37k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
It's Worth the Effort
3n
188
29k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
210
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
390
Context Engineering - Making Every Token Count
addyosmani
9
740
Odyssey Design
rkendrick25
PRO
2
540
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
390
Transcript
Getting Involved with Spring 101 Chris Beams SpringSource, VMware
Hello!
Chris Beams Committer, core Spring Framework
goals broad overview getting involved today sneak preview of next
gen processes
the spring landscape today
what is Spring?
a framework?
a collection of projects?
a community?
Yes.
spring-framework
spring-framework spring-integration spring-batch spring-data-* spring-roo spring-webflow spring-social spring-amqp spring-hadoop
None
None
many projects, one goal:
provide infrastructural support for enterprise applications
(and there's a lot of infrastructure out there)
many projects, common resources.
springsource.org completely redesigned
issue tracking jira.springsource.org
source control http://fisheye.springsource.org Subversion, e.g http://src.springframework.org/svn/spring-framework Git http://git.springsource.org GitHub http://github.com/SpringSource
continuous integration build.springsource.org
quality control sonar.springsource.org
artifact management Maven Central search.maven.org SpringSource S3 maven repositories (more
on all that in a bit)
forums forum.springsource.org
how we manage our projects
"benevolent dictator" model relatively small teams strong leadership community input
how we design deep subject matter expertise internal peer review
feedback from R&D, consultants, sales engineers distilling jira issues, forum posts conservative releases solve for real-world problems
how we test proper unit testing, integration testing use by
other project teams use by our engineers in the field feedback from users against milestones and RCs
who commits meritocracy typically employees typically strong users we've hired
increasing number of external committers
how we release snapshot->milestone->RC->GA relatively long release cycles plenty of
feedback mostly successful model over time
every project is a little different
every project is a little different share process where it
makes sense but do what's right for each team build systems are a good example
Example spring-framework issue management
Managing SPR JIRA https://jira.springsource.org/browse/SPR 8800+ issues Daily triage Backlog versions
</overview>
ways to get involved
ways to get involved Use the projects! Report issues Help
other users Track and test latest features Participate in user groups Contribute code and other fixes
first things first using Spring projects
quick start (for the impatient)
demo STS template projects
read the documentation http://www.springsource.org/documentation
grab the artifacts via distribution zips http://www.springsource.com/download/community via Maven Central
(preferred) http://search.maven.org
learn from samples and reference applications
samples http://www.springsource.org/samples
reference applications greenhouse live app http://greenhouse.springsource.org home http://www.springsource.org/greenhouse code https://github.com/SpringSource/greenhouse
Spring Roo http://www.springsource.org/spring-roo rapid application development Spring best practices built
in
tutorials http://www.springsource.org/tutorials
stay informed
blogs team blog http://blog.springsource.org news feed http://springsource.org RSS for both
newsletter http://www.springsource.com/newsevents/newsletter-registration
Twitter http://twitter.com/springsource http://twitter.com/springsource/projects http://twitter.com/springsource/employees
Twitter http://twitter.com/springframework http://twitter.com/springframework/team
report issues
improvements & new features share use cases vote!
bugs steps to reproduce are critcal but reproduction projects get
you ♥
repro projects simple as possible self-contained built with Maven or
Gradle
spring-framework-issues https://github.com/SpringSource/spring-framework-issues repro projects, streamlined especially helpful for web application
issues
help other users (and get help when you need it
too)
forum.springsource.org thousands of users great way to build a presence
in the community
stackoverflow.com
None
None
track and test the latest features
snapshots, milestones, RCs http://maven.springframework.org/snapshot http://maven.springframework.org/milestone http://maven.springframework.org/release
all based on Amazon S3 resolvable from Maven but not
browseable http://shrub.appspot.com
participate in user groups google for 'spring user group' in
your area java user groups often have spring content if they don't, consider giving a talk! interested in starting a group? contact
[email protected]
contribute code and other fixes
first: why contribute? scratch your own itch get to know
Spring really well improve your skills street cred, yo.
demo contributor attribution in git projects
kinds of contribution typo fixes, documentation, cosmetic minor bug fixes
and improvements major stuff
how to do it and what to expect
the small stuff typo? doco? just submit a patch or
pull request (we'll talk about pull requests shortly)
the bigger stuff
it's about communication create/comment on the issue express interest, start
a conversation discuss possible implementations build trust
study previous patches and pull requests what kinds of submissions
have been accepted before? code quality, formatting, etc
demo spring-integration pull requests https://github.com/SpringSource/spring-integration/pulls https://github.com/SpringSource/spring-integration/pull/153
grab the source $ svn checkout https://github.com/cbeams/spring-framework.git ... $ git
clone https://github.com/cbeams/spring-framework.git ...
git || svn
git && svn GitHub supports both! https://github.com/blog/966-improved- subversion-client-support your choice
look at the commit log plan to emulate it
demo spring-framework commit log http://progit.org/book/ch5-2.html#commit_guidelines
get to know the project build system Ant ("spring-build") Gradle
("spring-build-gradle") Maven (individual to each project) S2 team blog: building Spring 3
give it a shot! stay in communication with project team
not every contribution will necessarily make it process should be rewarding in any case
(and don't forget tests!)
in any case expect your code to be changed
"Juergenization"
legal stuff You may be asked to sign our CLA
SpringSource Contributor License Agreement
contributing through external projects Example: Spring Social core & Spring
Social Foursquare https://github.com/springsource/spring-social https://github.com/mattupstate/spring-social-foursquare
sneak preview getting involved 2.0
source control improvements everything on GitHub
pull requests are...
the new patch
the new code review
demo pull request / fork and edit
next steps complete the migration of projects spring-framework post 3.1
GA only a few remaining after that
integrate pull requests into our JIRA workflow http://seam-framework.2283336.n4.nabble.com/git-pull-request-JIRA-workflow-td3272708.html http://community.jboss.org/wiki/GuideToUsePullRequestsWithGitHubAndJIRA
improved artifact management Artifactory http://repo.springsource.org
demo: repo.springsource.org unified search put a watch on anytihng license
information transitive resolution migration path from s3 repos
streamline CLA process deep integration via GitHub hooks API CLA
database revised CLA agreement, web-only form
Thanks! @cbeams this presentation on the web: http://cbeams.github.com/spring-community- 101