@@ -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