@@ -18,48 +18,56 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e
18
18
19
19
### Getting Started
20
20
21
- [ Official FAQ] ( /en/documentation/faq/ )
22
- : The official frequently asked questions.
23
-
24
- [ Ruby Koans] [ 2 ]
25
- : The Koans walk you along the path to enlightenment in order to learn
26
- Ruby. The goal is to learn the Ruby language, syntax, structure, and
27
- some common functions and libraries. We also teach you culture.
28
-
29
- [ Why’s (Poignant) Guide to Ruby] [ 5 ]
30
- : An unconventional but interesting book that will teach you Ruby
31
- through stories, wit, and comics. Originally created by * why the lucky
32
- stiff* , this guide remains a classic for Ruby learners.
33
-
34
- [ Ruby Essentials] [ 7 ]
35
- : A free on-line book designed to provide a concise
36
- and easy to follow guide to learning Ruby.
21
+ [ Try Ruby] [ 1 ]
22
+ : You can try Ruby right in your browser.
37
23
38
24
[ Learn to Program] [ 8 ]
39
25
: A wonderful little tutorial by Chris Pine for programming newbies. If
40
26
you don’t know how to program, start here.
41
27
42
- [ Learn Ruby the Hard Way ] [ 38 ]
43
- : A very good set of exercises with explanations that guide you from
44
- the absolute basics of Ruby all the way to OOP and web development .
28
+ [ Ruby in Twenty Minutes ] [ rubyin20 ]
29
+ : A small Ruby tutorial that should take no more than 20 minutes to
30
+ complete .
45
31
46
- ### Manuals
32
+ [ The Odin Project] [ odin ]
33
+ : An open source full stack curriculum
47
34
48
- [ Programming Ruby] [ 9 ]
49
- : The seminal work on Ruby in English, this first edition of the
50
- [ Pragmatic Programmers’ book] [ 10 ] is available for free online.
35
+ [ excercism] [ exercism ]
36
+ : 120 exercises with automatic analysis and personal mentoring.
51
37
52
- [ The Ruby Programming Wikibook] [ 12 ]
53
- : A free online manual with beginner and intermediate content plus a
54
- thorough language reference.
38
+ [ Codecademy] [ codecademy ]
39
+ : Online code bootcamp with a variety of topics. Freeish.
40
+
41
+ ### Manuals / Books
42
+
43
+ #### Beginner
44
+
45
+ [ Programming Ruby 3.3] [ pickaxe ]
46
+ : The seminal work on Ruby in English. Recently updated to Ruby 3.3.
47
+
48
+ [ The Well-Grounded Rubyist] [ grounded ]
49
+ : A tutorial that begins with your first Ruby program and takes you all the way to sophisticated topics like reflection, threading, and recursion.
50
+
51
+ #### Intermediate
52
+
53
+ [ Practical OOD in Ruby (POODR)] [ poodr ]
54
+ : A programmer's tale about how to write object-oriented code.
55
+
56
+ #### Expert
57
+
58
+ [ Metaprogramming] [ meta ]
59
+ : Explains metaprogramming in a down-to-earth style.
60
+
61
+ [ Ruby Under a Microscope (RUM)] [ microscope ]
62
+ : An illustrated guide to Ruby internals.
55
63
56
64
### Reference Documentation
57
65
58
- [ Official API Documentation] [ docs-rlo-en ]
66
+ [ Official API Documentation] [ docs-rlo-en ] [ (JP) ] [ docs-rlo-jp ]
59
67
: The official Ruby language documentation for different versions including
60
68
the currently unreleased (trunk) version.
61
69
62
- [ Ruby C API Reference] [ extensions ]
70
+ [ Ruby C API Reference] [ extensions ] [ (JP) ] [ extensions-jp ]
63
71
: The official introduction to Ruby's C API.
64
72
Great if you want to write C extensions
65
73
or contribute to Ruby’s development.
@@ -71,6 +79,61 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e
71
79
[ RubyAPI.org] [ rubyapi-org ]
72
80
: Easily find and browse Ruby classes, modules, and methods.
73
81
82
+ [ ruby-doc.org] [ 39 ]
83
+ : Online API documentation
84
+
85
+ [ DevDocs.io] [ 40 ]
86
+ : Online API documentation
87
+
88
+ [ Ruby QuickRef] [ 42 ]
89
+ : The Ruby quick reference
90
+
91
+ [ rubyreferences] [ 43 ]
92
+ : A full language reference + detailed language changelog. Fantastic.
93
+
94
+ ### Style Guides
95
+
96
+ [ rubystyle.guide] [ 44 ]
97
+ : RuboCop's Ruby style guide
98
+
99
+ [ RuboCop] [ 45 ]
100
+ : Automated enforcement of their style guide.
101
+
102
+ [ Shopify] [ 46 ]
103
+ : Shopify's Ruby style guide
104
+
105
+ [ GitLab] [ 47 ]
106
+ : Gitlab's Ruby style guide
107
+
108
+ [ Airbnb] [ 48 ]
109
+ : Airbnb's Ruby style guide
110
+
111
+ [ w3resource] [ 49 ]
112
+ : W3's Ruby style guide
113
+
114
+ # Tools
115
+
116
+ [ IRB] [ 50 ]
117
+ : The interactive Ruby Read-Eval-Print-Loop (REPL)
118
+
119
+ [ Pry] [ 51 ]
120
+ : An alternative Ruby REPL
121
+
122
+ [ Rake] [ 52 ]
123
+ : A make-like build utility for Ruby.
124
+
125
+ [ RI] [ 53 ]
126
+ : (Ruby Information) is the Ruby command-line utility that gives fast and easy on-line access to Ruby documentation.
127
+
128
+ [ RBS] [ 54 ]
129
+ : Type Signature for Ruby
130
+
131
+ [ TypeProf] [ 55 ]
132
+ : An experimental type-level Ruby interpreter for testing and understanding Ruby code.
133
+
134
+ [ Steep] [ 56 ]
135
+ : Static type checker for Ruby.
136
+
74
137
### Editors and IDEs
75
138
76
139
For coding in Ruby, you can use the default editor of your operating
@@ -79,71 +142,106 @@ syntax-highlighting, file browsing) or an integrated development
79
142
environment with advanced features (e.g. code completion, refactoring,
80
143
testing support).
81
144
82
- Here is a list of popular tools used by Rubyists:
83
-
84
- * Linux and cross-platform tools:
85
- * [ Aptana Studio] [ 19 ]
86
- * [ Atom] [ atom ]
87
- * [ Emacs] [ 20 ] with [ Ruby mode] [ 21 ] and [ Rsense] [ 22 ]
88
- * [ Eric] [ eric ]
89
- * [ Geany] [ 23 ]
90
- * [ gedit] [ 24 ]
91
- * [ Kate] [ kate ]
92
- * [ KDevelop] [ kdevelop ]
93
- * [ NetBeans] [ 36 ]
94
- * [ RubyMine] [ 27 ]
95
- * [ SciTe] [ 28 ]
96
- * [ Sublime Text] [ 37 ]
97
- * [ Vim] [ 25 ] with [ vim-ruby] [ 26 ] plugin and [ Rsense] [ 22 ]
145
+ Here is a list of popular editors used by Rubyists, broken up by
146
+ learning curve:
147
+
148
+ * Days
149
+ * [ Sublime Text] [ 37 ] (paid)
98
150
* [ Visual Studio Code] [ vscode ]
151
+ * [ Zed] [ zed ]
152
+ * Months
153
+ * [ RubyMine] [ 27 ] (paid)
154
+ * "Years" (as in, you'll spend years still learning things about it)
155
+ * [ Emacs] [ 20 ] with [ Ruby mode] [ 21 ] or [ Enhanced Ruby mode] [ enh-ruby-mode ]
156
+ * [ Vim] [ 25 ] with [ vim-ruby] [ 26 ] plugin
157
+ * [ NeoVim] [ neovim ]
158
+
159
+ All of these editors support the Language Server Protocol (LSP),
160
+ either by default or through their LSP plugins. Shopify's
161
+ [ ruby-lsp] [ ruby-lsp ] is one of the most popular language servers for
162
+ Ruby and [ supports all of the above editors] [ shopify_lsp ] .
163
+
164
+ ### Older Reading / Resources
165
+
166
+ These links were more prominent but haven't been updated in ages.
167
+
168
+ [ Ruby Koans] [ 2 ]
169
+ : The Koans walk you along the path to enlightenment in order to learn
170
+ Ruby. The goal is to learn the Ruby language, syntax, structure, and
171
+ some common functions and libraries. We also teach you culture.
172
+
173
+ [ Ruby Essentials] [ 7 ]
174
+ : A free on-line book designed to provide a concise
175
+ and easy to follow guide to learning Ruby.
99
176
100
- * On Windows:
101
- * [ Notepad++] [ 29 ]
177
+ [ Why’s (Poignant) Guide to Ruby] [ 5 ]
178
+ : An unconventional but interesting book that will teach you Ruby
179
+ through stories, wit, and comics. Originally created by * why the lucky
180
+ stiff* , this guide remains a classic for Ruby learners.
102
181
103
- * On macOS:
104
- * [ TextMate] [ 32 ]
105
- * [ BBEdit] [ 33 ]
106
- * [ Dash] [ 39 ] (documentation browser)
182
+ [ Learn Ruby the Hard Way] [ 38 ]
183
+ : A very good set of exercises with explanations that guide you from
184
+ the absolute basics of Ruby all the way to OOP and web development.
107
185
108
- ### Further Reading
186
+ [ Programming Ruby] [ 9 ]
187
+ : The seminal work on Ruby in English, this first edition of the
188
+ [ Pragmatic Programmers’ book] [ 10 ] is available for free online.
109
189
110
- [ Ruby-doc.org] [ 34 ] maintains a comprehensive list of English
111
- documentation sources.
112
- If you have questions about Ruby the
113
- [ mailing list] ( /en/community/mailing-lists/ ) is a great place to start.
190
+ [ The Ruby Programming Wikibook] [ 12 ]
191
+ : A free online manual with beginner and intermediate content plus a
192
+ thorough language reference.
114
193
115
194
[ 1 ] : https://try.ruby-lang.org/
116
195
[ 2 ] : https://rubykoans.com/
117
196
[ 5 ] : https://poignant.guide
118
- [ 7 ] : http ://www.techotopia.com/index.php/Ruby_Essentials
119
- [ 8 ] : http ://pine.fm/LearnToProgram/
120
- [ 9 ] : http ://www.ruby-doc.org/docs/ProgrammingRuby/
197
+ [ 7 ] : https ://www.techotopia.com/index.php/Ruby_Essentials
198
+ [ 8 ] : https ://pine.fm/LearnToProgram/
199
+ [ 9 ] : https ://www.ruby-doc.org/docs/ProgrammingRuby/
121
200
[ 10 ] : https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/
122
- [ 12 ] : http://en.wikibooks.org/wiki/Ruby_programming_language
123
- [ extensions ] : https://docs.ruby-lang.org/en/master/extension_rdoc.html
124
- [ 16 ] : http://www.rubydoc.info/
125
- [ rubyapi-org ] : https://rubyapi.org/
126
- [ 19 ] : http://www.aptana.com/
127
- [ 20 ] : http://www.gnu.org/software/emacs/
128
- [ 21 ] : http://www.emacswiki.org/emacs/RubyMode
129
- [ 22 ] : http://rsense.github.io/
130
- [ 23 ] : http://www.geany.org/
131
- [ 24 ] : http://projects.gnome.org/gedit/screenshots.html
132
- [ 25 ] : http://www.vim.org/
201
+ [ 12 ] : https://en.wikibooks.org/wiki/Ruby_programming_language
202
+ [ 16 ] : https://www.rubydoc.info/
203
+ [ 20 ] : https://www.gnu.org/software/emacs/
204
+ [ 21 ] : https://www.emacswiki.org/emacs/RubyMode
205
+ [ 25 ] : https://www.vim.org/
133
206
[ 26 ] : https://github.com/vim-ruby/vim-ruby
134
- [ 27 ] : http://www.jetbrains.com/ruby/
135
- [ 28 ] : http://www.scintilla.org/SciTE.html
136
- [ 29 ] : http://notepad-plus-plus.org/
137
- [ 32 ] : http://macromates.com/
138
- [ 33 ] : https://www.barebones.com/products/bbedit/
139
- [ 34 ] : http://ruby-doc.org
140
- [ 36 ] : https://netbeans.org/
141
- [ 37 ] : http://www.sublimetext.com/
207
+ [ 27 ] : https://www.jetbrains.com/ruby/
208
+ [ 34 ] : https://ruby-doc.org/
209
+ [ 37 ] : https://www.sublimetext.com/
142
210
[ 38 ] : https://learncodethehardway.org/ruby/
143
- [ 39 ] : http://kapeli.com/dash
144
- [ docs-rlo-en ] : https://docs.ruby-lang.org/en/
145
- [ atom ] : https://atom.io/
211
+ [ 39 ] : https://www.ruby-doc.org/
212
+ [ 40 ] : https://devdocs.io/ruby/
213
+ [ 42 ] : https://www.zenspider.com/ruby/quickref.html
214
+ [ 43 ] : https://rubyreferences.github.io/
215
+ [ 44 ] : https://rubystyle.guide/
216
+ [ 45 ] : https://github.com/rubocop/ruby-style-guide
217
+ [ 46 ] : https://ruby-style-guide.shopify.dev/
218
+ [ 47 ] : https://docs.gitlab.com/ee/development/backend/ruby_style_guide.html
219
+ [ 48 ] : https://github.com/airbnb/ruby
220
+ [ 49 ] : https://www.w3resource.com/ruby/ruby-style-guide.php
221
+ [ 50 ] : https://github.com/ruby/irb
222
+ [ 51 ] : https://github.com/pry/pry
223
+ [ 52 ] : https://github.com/ruby/rake
224
+ [ 53 ] : https://ruby.github.io/rdoc/RI_md.html
225
+ [ 54 ] : https://github.com/ruby/rbs
226
+ [ 55 ] : https://github.com/ruby/typeprof
227
+ [ 56 ] : https://github.com/soutaro/steep
228
+ [ codecademy ] : https://www.codecademy.com/learn/learn-ruby
229
+ [ docs-rlo-en ] : https://docs.ruby-lang.org/en/latest
230
+ [ docs-rlo-jp ] : https://docs.ruby-lang.org/ja/latest
231
+ [ enh-ruby-mode ] : https://github.com/zenspider/enhanced-ruby-mode/
232
+ [ exercism ] : https://exercism.org/tracks/ruby
233
+ [ extensions-jp ] : https://docs.ruby-lang.org/jp/master/extension_rdoc.html
234
+ [ extensions ] : https://docs.ruby-lang.org/en/master/extension_rdoc.html
235
+ [ grounded ] : https://www.manning.com/books/the-well-grounded-rubyist-third-edition
236
+ [ meta ] : https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/
237
+ [ microscope ] : https://patshaughnessy.net/ruby-under-a-microscope
238
+ [ neovim ] : https://neovim.io/
239
+ [ odin ] : https://www.theodinproject.com/paths/full-stack-ruby-on-rails/courses/ruby
240
+ [ pickaxe ] : https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/
241
+ [ poodr ] : https://www.poodr.com/
242
+ [ ruby-lsp ] : https://github.com/Shopify/ruby-lsp
243
+ [ rubyapi-org ] : https://rubyapi.org/
244
+ [ rubyin20 ] : https://www.ruby-lang.org/en/documentation/quickstart/
245
+ [ shopify_lsp] : https://shopify.github.io/ruby-lsp/editors.html )
146
246
[ vscode ] : https://code.visualstudio.com/docs/languages/ruby
147
- [ eric ] : https://eric-ide.python-projects.org/
148
- [ kdevelop ] : https://www.kdevelop.org/
149
- [ kate ] : https://kate-editor.org/
247
+ [ zed ] : https://zed.dev/
0 commit comments