Code documentation written as code! How novel and totally my idea!
Go to file
Geoff Liu 8a43f93d58 Merge pull request #986 from Jakehp/master
Renamed Big-Oh to more prevalent name, Big-O.
2015-03-04 17:00:12 -07:00
de-de [YAML/en] translated to [YAML/de] 2014-12-23 16:27:30 +01:00
es-es haml-es 2015-01-20 23:16:35 -03:00
fa-ir
fr-fr Typo 2015-01-12 14:10:41 +01:00
hu-hu
id-id fix syntax error 2014-03-14 18:19:06 +00:00
it-it Merge pull request #566 from slavni96/master 2014-03-11 16:28:01 +01:00
ja-jp [julia/ja] Added missing lang: ja-jp 2015-01-13 09:29:15 +09:00
ko-kr Capitalize language names for translations. 2014-10-12 14:24:42 -07:00
nl-nl Merge pull request #820 from Jell-E/master 2014-10-28 23:03:03 +02:00
pl-pl Add @ukom Polish Perl translation from PR https://github.com/adambard/learnxinyminutes-docs/pull/341 2014-10-17 21:19:08 -05:00
pt-br Merge pull request #942 from geoffliu/master 2015-01-28 23:40:44 +01:00
pt-pt
ro-ro
ru-ru #957 2015-02-18 09:30:05 +03:00
tr-tr csharp/tr 2014-12-31 20:18:46 +02:00
vi-vn Fix Vietnamese Git guide typo and update content 2014-10-25 09:59:01 +07:00
zh-cn correct typo 2015-03-03 09:26:58 +08:00
amd.html.markdown Attempt at fixing amd file's markdown on site. 2014-10-18 13:19:07 -05:00
asymptotic-notation.html.markdown Renamed Big-Oh to more prevalent notation, Big-O. 2015-03-04 17:48:10 -06:00
bash.html.markdown Merge pull request #839 from westurner/patch-1 2014-11-01 13:36:53 -05:00
brainfuck.html.markdown
c.html.markdown Change explanation of unsigned types 2015-01-30 16:42:35 -05:00
c++.html.markdown fixed some typos 2015-02-25 18:10:57 +01:00
clojure-macros.html.markdown
clojure.html.markdown
coffeescript.html.markdown Fixed very small spelling mistake 2014-09-14 13:18:43 -06:00
common-lisp.html.markdown [Common Lisp/en] Add a missing argument to (walker) 2014-10-27 20:01:55 +01:00
compojure.html.markdown Merge pull request #762 from matthiasn/patch-2 2014-09-12 13:15:06 -05:00
csharp.html.markdown [CSharp/en]Fixed typo 2015-02-01 19:01:47 +01:00
css.html.markdown corrected definition of ~ selector, added | 2015-02-19 00:15:12 +05:30
dart.html.markdown
elisp.html.markdown
elixir.html.markdown Add ranges under 'Basic types' 2015-02-01 01:32:21 +13:00
erlang.html.markdown Fix typo in words calculate and area, one more 2014-09-11 12:20:32 +02:00
file.erb
forth.html.markdown Update forth.html.markdown 2015-01-02 20:33:47 +00:00
fsharp.html.markdown
git.html.markdown Added the handy -a switch 2015-03-04 22:00:00 +05:30
go.html.markdown [go] Fix no new variables on left side of := 2014-09-22 12:11:49 +00:00
groovy.html.markdown
hack.html.markdown [hack/en] Fix link to other learnxinyminutes article 2015-02-18 19:23:58 +13:00
haml.html.markdown Added info on indentation and escaping html, typos 2014-10-18 12:25:42 +01:00
haskell.html.markdown Moved explanation of indexing into a list earlier 2015-03-01 15:16:29 -04:00
haxe.html.markdown typo in Haxe documentation 2014-12-29 15:00:12 -08:00
hy.html.markdown Changed function name to match function call 2014-12-16 22:33:08 +05:30
java.html.markdown Update java.html.markdown 2015-02-23 10:37:56 -05:00
javascript.html.markdown Add semicolon to maximine consistency. 2015-02-25 10:03:19 -06:00
json.html.markdown [json/en] JSON should not use single quote delimited strings 2014-09-21 18:27:43 +02:00
julia.html.markdown Capitalize language names. See #137 2014-10-12 12:24:52 -07:00
livescript.html.markdown Update livescript.html.markdown 2014-12-24 10:38:16 +01:00
lua.html.markdown Capitalize language names. See #137 2014-10-12 12:24:52 -07:00
markdown.html.markdown Add a couple missing parts to the markdown doc from @ukom PR https://github.com/adambard/learnxinyminutes-docs/pull/341 2014-10-17 21:09:51 -05:00
matlab.html.markdown Temp fix for Matlab syntax highlighting 2014-11-18 10:19:11 +00:00
neat.html.markdown
nim.html.markdown Update nim.html.markdown 2015-03-01 13:28:12 -08:00
objective-c.html.markdown Further fix of typos in objective-c doc 2015-01-31 22:18:02 -05:00
ocaml.html.markdown [ocaml/en] Fix typo 2015-02-12 17:02:16 +08:00
paren.html.markdown
perl6.html.markdown Perl6, minor change in comments 2015-03-01 18:04:05 +01:00
perl.html.markdown
pets.csv
php.html.markdown Capitalize language names. See #137 2014-10-12 12:24:52 -07:00
pogo.html.markdown Fixed typo at the end 2014-12-22 13:26:30 +01:00
purescript.html.markdown Learn Purescript in Y minutes 2014-08-31 23:26:56 +02:00
python3.html.markdown Merge pull request #897 from maniexx/master 2014-12-22 15:29:07 +01:00
python.html.markdown Fix typo 2014-12-23 11:23:22 -08:00
r.html.markdown Add definition of parakeet in r.html.markdown 2015-01-28 23:27:09 -06:00
racket.html.markdown
README.markdown Update README.markdown 2014-12-08 23:42:24 +01:00
red.html.markdown
ruby-ecosystem.html.markdown
ruby.html.markdown Typo 2014-11-20 16:26:56 +00:00
rust.html.markdown [rust/en] Update the Rust tutorial 2015-01-15 15:14:25 +13:00
scala.html.markdown Update scala.html.markdown 2015-01-29 09:03:36 +05:00
self.html.markdown Update self.html.markdown 2014-10-31 00:44:24 +02:00
standard-ml.html.markdown
swift.html.markdown add optional init and enum with associated values 2015-02-28 19:28:34 +08:00
tcl.html.markdown add filename: learntcl.tcl 2015-01-04 23:00:23 -07:00
tmux.html.markdown Update contributors 2015-01-19 22:10:37 -05:00
typescript.html.markdown Review docs for added rouge lexers and update those with new highlighters 2014-09-08 13:08:28 +02:00
visualbasic.html.markdown
whip.html.markdown Little typos fixed. 2014-08-12 20:35:42 -05:00
xml.html.markdown
yaml.html.markdown

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