Code documentation written as code! How novel and totally my idea!
Go to file
ven 2d67c58d7f Merge pull request #2036 from fighterleslie/pr-hash
[ruby/en] Replace Hash#has_key? with Hash#key?
2015-11-23 08:20:52 +01:00
cs-cz Fixed typo 2015-10-14 21:11:05 +02:00
de-de Merge pull request #1941 from xou/haskell-umlaut-fix 2015-10-31 19:25:06 +08:00
el-gr Update scala-gr.html.markdown 2015-10-18 00:02:18 +03:00
es-es Merge pull request #1307 from deivuh/master 2015-11-04 17:50:43 +01:00
fa-ir Rename javascript.html.markdown to javascript-fa.html.markdown 2015-10-28 02:17:06 +08:00
fi-fi Revert "Translate markdown/en to Finnish" 2015-10-31 23:55:17 +02:00
fr-fr Remove the iterator part and add for..in and for..of 2015-11-18 23:54:39 -08:00
hu-hu "lang: hu-hu" line was missing 2015-11-14 13:57:01 -05:00
id-id Update xml-id.html.markdown 2015-10-21 20:36:50 +08:00
it-it Add myself as a translator 2015-10-18 13:36:42 +02:00
ja-jp [julia/ja] Added missing lang: ja-jp 2015-01-13 09:29:15 +09:00
ko-kr Fix for issue #1248 [fa-ir, zh-cn, ko-kr, es-es, ru-ru, fr-fr, de-de] 2015-10-05 15:20:35 -05:00
lt-lt small fix 2015-11-11 15:21:56 +02:00
ms-my Added Bahasa Malaysia translation of the JavaScript file 2015-10-31 16:36:30 +08:00
nl-nl Added Dutch translation of AMD. 2015-10-31 12:37:39 +01:00
no-nb translating done 2015-04-26 16:22:36 +02:00
pl-pl Slight language improvements and fixed typos 2015-10-16 23:28:36 -05:00
pt-br Merge pull request #1900 from victor-dsc/translate-fix 2015-10-31 18:33:39 +08:00
pt-pt [scala-pt] Fix variable names on while cycle 2015-10-10 16:51:07 +01:00
ro-ro line length tweaking.. 2015-08-07 12:50:36 +03:00
ru-ru Merge pull request #1892 from nasgul/patch-3 2015-10-31 19:05:52 +08:00
ta_in Rename xml.html.markdown to xml-ta.html.markdown 2015-10-28 02:16:12 +08:00
tr-tr Merge pull request #1917 from aybuke/master 2015-10-31 18:27:40 +08:00
uk-ua Rename ua-ua/javascript-ua.html.markdown to uk-ua/javascript-ua.html.markdown 2015-11-02 21:26:21 +02:00
vi-vn fix typo 2015-10-17 15:33:10 +07:00
zh-cn fixed Getting Start Guide link 2015-11-02 12:18:04 +11:00
amd.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
asymptotic-notation.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
bash.html.markdown [bash/en] use $var with quotes in conditions 2015-10-14 21:10:28 +05:30
brainfuck.html.markdown Change link format 2015-03-24 22:24:49 +02:00
c.html.markdown Edit variable-length array example 2015-10-26 19:38:36 -04:00
c++.html.markdown [cpp/en] comparator function for std containers 2015-10-31 16:27:42 -07:00
chapel.html.markdown Fix typos 2015-10-24 00:01:32 +02:00
clojure-macros.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
clojure.html.markdown Copy arrow docs from french. 2015-10-18 00:31:19 +08:00
coffeescript.html.markdown Merge pull request #1424 from AndyBrown91/coffeescript 2015-10-09 20:00:54 +02:00
coldfusion.html.markdown [coldfusion/en] Adds information about CFScript and documentation 2015-10-30 20:15:06 -04:00
common-lisp.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
compojure.html.markdown Use keywords in POST/PUT examples 2015-05-30 11:43:37 -06:00
csharp.html.markdown Merge pull request #1552 from adback03/master 2015-10-18 12:07:05 -05:00
css.html.markdown Revert "Closed a comment that was not properly closed" 2015-10-31 18:26:19 +08:00
d.html.markdown Fixed typos for 'overriding' and 'reference' and fixed formatting issue that may have caused confusion 2015-10-23 23:13:29 -07:00
dart.html.markdown Update dart.html.markdown 2015-10-31 22:16:39 +01:00
edn.html.markdown [edn/en] Fix grammar 2015-10-31 15:35:33 -04:00
elisp.html.markdown editorial revert of a change, remove trailing whitespace 2015-05-22 23:05:37 +02:00
elixir.html.markdown elixir: add eval results to try-rescue examples 2015-11-04 23:28:26 -05:00
erlang.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
file.erb Added filename parameter 2013-06-29 20:19:14 -07:00
forth.html.markdown Merge pull request #1433 from zlarsen/forth-typo 2015-10-09 23:25:22 +02:00
fsharp.html.markdown Merge pull request #1764 from amrue/fsharp 2015-11-02 19:07:44 +08:00
git.html.markdown Adds documentation for revert command 2015-10-30 19:58:33 +00:00
go.html.markdown correct minor grammar and formatting to improve readability 2015-10-24 13:56:20 +01:00
groovy.html.markdown Update groovy.html.markdown 2015-10-06 16:49:21 -03:00
hack.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
haml.html.markdown Merge pull request #1438 from chashmeetsingh/patch-8 2015-10-12 23:07:44 -05:00
haskell.html.markdown Haskell: Fix !! operator 2015-10-31 19:44:04 +10:00
haxe.html.markdown [haxe/en] Adding colon after comments 2015-05-20 14:29:05 +02:00
hy.html.markdown Changed function name to match function call 2014-12-16 22:33:08 +05:30
java.html.markdown Formatted enum comments 2015-10-31 20:52:07 +10:30
javascript.html.markdown Added new resource to javascript 2015-10-31 16:49:57 -07:00
json.html.markdown Added a more info link and extra explanation 2015-10-15 15:35:13 -05:00
julia.html.markdown Merge pull request #2007 from pranitbauva1997/new 2015-11-09 09:28:31 +01:00
latex.html.markdown [latex/en] Explain how to setup a bibliography section 2015-10-31 23:35:20 -07:00
latex.pdf add output of latex file 2015-11-09 18:15:18 -08:00
livescript.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
lua.html.markdown [lua/en] Fix typo 2015-10-24 12:22:11 +05:30
make.html.markdown Update make.html.markdown 2015-10-30 01:20:12 -04:00
markdown.html.markdown fix line breaks 2015-11-02 08:29:25 -07:00
matlab.html.markdown Add section heading info 2015-10-31 22:43:43 +10:30
neat.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
nim.html.markdown Sugar Assert fix 2015-10-07 21:19:50 -04:00
objective-c.html.markdown Update contributor list 2015-11-01 01:48:44 +01:00
ocaml.html.markdown Update ocaml.html.markdown 2015-10-17 15:06:28 +03:00
paren.html.markdown link to racket 2014-05-26 18:04:02 +02:00
perl6.html.markdown Fix typo in Perl 6 example (closes #2025) 2015-11-19 17:53:49 -06:00
perl.html.markdown Add example of post-condition for loop. 2015-10-10 11:44:50 -07:00
pets.csv Create pets.csv 2013-06-29 03:38:34 -04:00
php.html.markdown Revert "[php/en]" 2015-10-31 19:34:51 +08:00
pogo.html.markdown Fixed typo at the end 2014-12-22 13:26:30 +01:00
purescript.html.markdown readded haskell syntax highlighting, added line about running examples in psci, removed >'s 2015-10-13 01:25:56 -07:00
python3.html.markdown Correct math.sqrt(16) 2015-11-07 16:57:44 +08:00
python.html.markdown fixed unintended opposite meaning 2015-11-02 16:30:15 +03:00
pythonstatcomp.html.markdown Fixed pythonstatcomp doc naming 2015-10-19 14:33:11 +08:00
r.html.markdown fix spaces at end-of-lines again 2015-10-20 17:10:58 -04:00
racket.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
README.markdown Merge pull request #1588 from mclehman/master 2015-10-17 23:56:48 +08:00
red.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
ruby-ecosystem.html.markdown Ruby 1.9.x is also retired 2015-10-06 16:08:41 +02:00
ruby.html.markdown Replace Hash#has_key? with Hash#key? 2015-11-23 09:14:49 +08:00
rust.html.markdown Mention meaning of asterisk. Explain *ref_var2 2015-10-11 09:39:39 +05:30
sass.html.markdown Adding sections on Sass functions, import, partials, and math operations. Adding some comments regarding best practices. Adding section on compatibility. 2015-10-14 15:22:46 -05:00
scala.html.markdown usage of named parameters 2015-10-31 16:39:47 +03:00
self.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
smalltalk.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
standard-ml.html.markdown Fix indentation 2015-06-06 12:53:33 -04:00
swift.html.markdown - add where and guard examples 2015-11-10 17:03:40 -06:00
tcl.html.markdown removing whitespace all over 2015-10-07 23:11:24 -04:00
tmux.html.markdown Merge pull request #1538 from davydovanton/typo-tmux 2015-10-18 12:00:30 -05:00
typescript.html.markdown [typescript/en] Fix typo 2015-04-21 23:01:08 +03:00
visualbasic.html.markdown correction 2015-11-08 23:46:41 +03:00
whip.html.markdown [whip/en] Fix typos 2015-10-31 22:46:58 -04:00
xml.html.markdown [xml/en] Grammar, formatting. Made more 'inlined'. 2015-10-20 13:53:47 +05:30
yaml.html.markdown Add more complex key examples, and an example of inheritance 2015-11-04 20:14:45 +05:30
zfs.html.markdown Adding a putting it all together section, and some additional reading 2015-10-17 02:06:18 -07:00

Learn X in Y minutes

Whirlwind tours of (several, hopefully many someday) popular and ought-to-be-more-popular programming languages, presented as valid, commented code and explained as they go.

We need YOU!...

... to write more inline code tutorials. Just grab an existing file from this repo and copy the formatting (don't worry, it's all very simple). Make a new file, send a pull request, and if it passes muster I'll get it up pronto. Remember to fill in the "contributors" fields so you get credited properly!

Contributing

All contributions are welcome, from the tiniest typo to a brand new article. Translations in all languages are welcome (or, for that matter, original articles in any language). Send a pull request or open an issue any time of day or night.

Please tag your issues and pull requests with [language/lang-code] at the beginning (e.g. [python/en] for English Python). This will help everyone pick out things they care about.

We're happy for any contribution in any form, but if you're making more than one major change (i.e. translations for two different languages) it would be super cool of you to make a separate pull request for each one so that someone can review them more effectively and/or individually.

Style Guidelines

  • Keep lines under 80 chars
  • Prefer example to exposition
  • Eschew surplusage
  • Use UTF-8

Long version:

  • Try to keep line length in code blocks to 80 characters or fewer, or they'll overflow and look odd.

  • Try to use as few words as possible. Code examples are preferred over exposition in all cases.

  • We welcome newcomers, but the target audience for this site is programmers with some experience. So, try to avoid explaining basic concepts except for those specific to the language in question, to keep articles succinct and scannable. We all know how to use Google here.

  • For translations (or English articles with non-ASCII characters), please make sure your file is UTF-8 encoded, and try to leave out the byte-order-mark at the start of the file. (:set nobomb in Vim)

Header configuration

The actual site uses Middleman to generate HTML files from these Markdown ones. Middleman, or at least the custom scripts underpinning the site, required that some key information be defined in the header.

The following fields are necessary for English articles about programming languages:

  • language The programming language in question
  • contributors A list of [author, URL] lists to credit

Other fields:

  • filename: The filename for this article's code. It will be fetched, mashed together, and made downloadable. For non-English articles, filename should have a language-specific suffix.
  • lang: For translations, the human language this article is in. For categorization, mostly.

Here's an example header for an Esperanto translation of Ruby:

---
language: ruby
filename: learnruby-epo.ruby
contributors:
    - ["Doktor Esperanto", "http://example.com/"]
    - ["Someone else", "http://someoneelseswebsite.com/"]
lang: ep-ep
---

License

Contributors retain copyright to their work, and can request removal at any time. By uploading a doc here, you agree to publish your work under the default Creative Commons Attribution-ShareAlike 3.0 Unported licensing included on each doc page.

Anything not covered by the above -- basically, this README -- you can use as you wish, I guess.