Created
August 26, 2010 20:20
-
-
Save nathany/552168 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* mixins (include and extend) for simple modularization (vs. multiple inheritance or traits in other languages) | |
* innovations in the web space (haml, rack middleware, etc.) | |
* standardized around MIT and GIT | |
* no public properties (attr_accessor, etc.) | |
* open classes | |
* tooling (gem, rake) | |
* animal references (ducks, monkeys, bacon) | |
* metaprogramming (unicorns) | |
* TDD/BDD emphasis and tools |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Proc, lambda, block, blah... | |
* requiring self.attr= for assignment but not needing self anywhere else (attr= sets a local variable) | |
* Perlisms (inconsistient behaviors) are confusing to newbs (i.e. && vs. and precendence) | |
* @@class hierarchy variables (globals) | |
* too much magick (easy to read, but hard to understand) i.e. acts_as_statemachine until you realize it's being used and how it works. | |
* @class instance variables vs. @instance variables of objects (confusing, at least at first) | |
* mind blowing: class is an object, and class is a subclass of the module class |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
For
Ruby, The Ugly Parts