Zed Shaw
Zed Shaw | |
|---|---|
![]() Shaw in Montreal, 2008 | |
| Occupation | Software developer |
Zed A. Shaw is a software developer best known for creating the Learn Code the Hard Way series of programming tutorials, as well as for creating the Mongrel web server for Ruby web applications.[1] He is also well known for his controversial views on programming languages and communities.
Software
[edit | edit source]Shaw authored the Mongrel web server for Ruby web applications.[2] Mongrel was the first web server used by Twitter, and inspired Node.js, according to its creator Ryan Dahl.[3] Mongrel2 is the language-agnostic successor to Mongrel.
He has also written a Python mail server called Lamson,[4] on which the mailing list site LibreList is built.
Learn Code the Hard Way
[edit | edit source]Shaw is the author of learncodethehardway.org, which offers to teach users Python, Ruby, C, Regex, and SQL.[5]
Polemics and controversies
[edit | edit source]Shaw has been outspoken in his criticism of certain programming languages and technical communities.
Ruby on Rails
[edit | edit source]His most famous and well-covered piece was the article "Rails is a Ghetto"[6][7] which has since been removed from his site.[8]
Opposition to Python 3
[edit | edit source]"There is a high probability that Python 3 is such a failure it will kill Python." - Zed Shaw
Shaw has a long-standing rant opposing Python 3, where he finds the new string type difficult to use, and as a result believes it should not be adopted. Nonetheless, in February 2017 he published a first draft of Learn Python 3 The Hard Way.[9][better source needed]
He stated in November 2016 that "Python 3 is not Turing complete" due to claims from Python project developers that Python 2 code cannot be made to run in the Python 3 VM.[10] This statement has drawn a lot of criticism.[11]
Criticism of certain behaviors within startup culture
[edit | edit source]Shaw has spoken about the amounts of vague and misleading information that is pervasive in the startup and entrepreneur culture, particularly concerning self-proclaimed startup advisors or entrepreneurship "gurus", having demonstrated publicly how some notable figures in the industry appear to speak and provide advice from a background of success that they never actually attained.[12]
Shaw is also behind an initiative entitled "Programming, Motherfucker", whose manifesto claims that programmers are "tired of being told we're socially awkward idiots who need to be manipulated to work in a forced pair programming chain gang."[13]
Books
[edit | edit source]- Mongrel (Digital Shortcut): Serving, Deploying, and Extending Your Ruby Applications. Addison-Wesley Professional, 2006. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Professional Ruby Collection: Mongrel, Rails Plugins, Rails Routing, Refactoring to REST, and Rubyisms CD1 (Ruby Series). Addison-Wesley Professional, 2007. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Learn Python the Hard Way. Self-published (1st and 2nd Editions), 2010 and 2011. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). and Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- The Command Line Crash Course. Self-published, 2011.
- Learn Regex the Hard Way. Self-published, 2011.
- Learn SQL the Hard Way. Self-published, 2011.
- Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code 3rd edition. Republished under Addison-Wesley Professional, 2013. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code. Addison-Wesley Professional, 2014 Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Learn C the Hard Way: Practical Exercises on the Computational Subjects You Keep Avoiding (Like C) (Zed Shaw's Hard Way Series). Addison-Wesley Professional, 2015. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Mongrel: Learn to Build the Greatest Ruby Web Server Ever. Addison-Wesley Professional, 2015. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- Learn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way Series). Addison-Wesley Professional, 2017. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).[permanent dead link]
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
