Nathan Wailes - Blog - GitHub - LinkedIn - Patreon - Reddit - Stack Overflow - Twitter - YouTube
Non-language/platform-specific topics (Programming)
Table of contents
- 1.1 Table of contents
- 1.2 Child pages
- 2 Books
- 3 Articles
- 4 Bots
- 4.1 Twitter bots
- 4.1.1 Python Twitter bots
- 4.1.2 How to create a Twitter bot
- 4.1 Twitter bots
- 5 Clean coding
- 5.2 Books
- 5.2.1 Clean Code
- 6 Compilers / Language Design
- 6.1 Background
- 6.2 Articles / Videos
- 6.3 Books
- 7 Design Patterns
- 7.1 Dependency Injection
- 7.2 Factory Pattern
- 7.2.1 Good explanations
- 8 DevOps / SRE / Sysadmin / Continuous Deployment
- 9 Functional Programming
- 9.1 tutorials
- 10 Good Explanations of General CS Topics
- 11 Hacking
- 12 IDEs
- 12.1 Sublime Text 2
- 13 Object-oriented programming
- 14 Open Source
- 15 Problem-solving / debugging / troubleshooting
- 15.1 Background
- 15.2 Books
- 15.3 Articles
- 16 P vs. NP
- 17 Reviewing other people's code ('Code Review')
- 17.1 Articles / Videos
- 18 Scalability
- 19 Search
- 20 Software Architecture
- 21 Specs
Child pages
- Algorithms, Data Structures, System Design and Interview Questions
- AI / Machine Learning / Genetic Programming
- Becoming a better / more-efficient / faster programmer (Programming)
- Career advice (Programming)
- Databases / db / sqlite / MongoDB / MySQL
- Game Programming (Programming)
- Games related to programming
- Service-Oriented Archicture (SOA) / Microservice Architecture
- UI / UX / User Experience (Programming)
Books
Coding Horror - Recommended Reading for Developers
Rec'd in his article
Rec'd in the comments:
This is not "Coders at Work". This is an earlier book.
Articles
HackerMonthly - A useful collection of good HN posts.
Bots
Twitter bots
Python Twitter bots
http://jitp.commons.gc.cuny.edu/make-a-twitter-bot-in-python-iterative-code-examples/
http://www.dototot.com/how-to-write-a-twitter-bot-with-python-and-tweepy/
How to create a Twitter bot
Create a new Twitter account.
Go to twitter.com.
Click 'Sign up'.
Fill out the sign-up information and click 'Next'.
If you already have a Twitter account registered under your primary email address, you may need to create a new email address to register a new account.
If it prompts you for your phone number, be sure to fill it out, as creating a bot requires that you register your phone number.
Clean coding
Cleaning up other people's code
Committed code shouldn't have extraneous stuff in it.
If a variable is never used and there's no explanation for why, it's probably an oversight. Feel free to delete it.
Books:
The Elements of Style by Strunk and White - rec'd by at least one of the guys in Coders At Work
Clean Code by Robert Martin - rec'd in comments here
Code Complete by Steve McConnell - rec'd by Allston, also rec'd in comments here
Refactoring by Martin Fowler et al. - rec'd by Allston
Websites:
http://twitter.github.com/bootstrap/
Google's Style Guides for Various Programming Languages - !!
7 Ways to Write Beautiful Code
Code Conventions for the Java Programming Language by Oracle
Articles:
Kotaku - The Exceptional Beauty of Doom 3's Source Code
Quote:
I was really excited to write this article, because it gave me an excuse to really think about what beautiful code is. I still don’t think I know, and maybe it’s entirely subjective. I do think the two biggest things, for me at least, are stylistic indenting and maximum const-ness.
Books
Clean Code
I read this book cover-to-cover twice and it really helped me to improve the quality of my code, I've gotten compliments from people since then about how easy my code is to understand.
The basic idea is that your code should read like plain English as much as possible.
Summary: https://gist.github.com/cedrickchee/55ecfbaac643bf0c24da6874bf4feb08
Compilers / Language Design
Background
Compilers are basically the way you build new programming languages on top of the old ones.
So, for example, Python was built with C.
My understanding is that you could theoretically use these principles to design a programming language that would take everyday English and turn it into a computer program. Obviously you would have a lot of issues with the ambiguity of everyday English.
Articles / Videos
Books
Books that looks like they're easy-to-read:
Other books
Compilers: Principles, Techniques, and Tools
4 stars, 97 reviews
5 stars, 9 reviews
4.5 stars, 12 reviews
4 stars, 14 reviews
Written by Martin Fowler, who also wrote "Refactoring"