Noah 5 years ago
parent ba42497e33
commit 2700e64c3e
  1. 288
  2. 2

@ -1,10 +1,290 @@
# Bookmarks
This page will be my effort to migrate bookmarks out of my web browsers and onto this page. I can probably keep track of them better myself, and this way I won't have to worry about losing them to a browser glitch!
This page will be my effort to migrate bookmarks out of my web browsers and onto this page. Because why should these
great links be locked away in Mozilla's heavily encrypted Sync service? I can probably keep track of them better myself,
and this way I won't have to worry about losing them to a browser glitch!
## Development
Also, some of these links may be helpful to others.
If you want to bookmark my bookmarks, then bookmark _this_ page, as I may be reorganizing some of these onto
sub-pages when this list gets too long.
* [Development](#development)
* [Bash](#bash)
* [C/C++](#c-c)
* [HTML/CSS](#html-css)
* [Game Dev](#game-dev)
* [Git](#git)
* [Go](#go) — Golang
* [JavaScript](#javascript)
* [PHP](#php)
* [Programmer Humor](#programmer-humor)
* [Python](#python)
* [Technology](#technology) — Hadoop, MongoDB, etc.
* [Google Ban Hammer](#google-ban-hammer) — Because people don't believe me without examples.
* [Tutorials](#tutorials)
* [Unicode](#unicode)
* [Web Development](#web-development) — HTML, JavaScript & CSS
* [API Design](#api-design)
* [Web Dev Tools](#web-dev-tools)
* [Gaming](#gaming)
* [Introversion](#introversion) — Topics about introverts.
* [Network Security](#network-security) — Encryption, OpSec, & hacking topics.
* [NSA](#nsa) — Stories of the NSA, Edward Snowden, and related OpSec topics.
* [Philosophy](#philosophy)
* [Short Stories](#short-stories)
* [Reddit](#reddit) — Miscellaneous cool Reddit threads and comments.
# Development
* [40 Key Computer Science Concepts Explained in Layman's Terms](
* [A simple interpreter from scratch on Python](
* [Programming Sucks](
* Joel on Software
* [Back to Basics]( — A look back at C and how our high-level software actually works.
* [The Law of Leaky Abstractions]( — Leaky abstractions in SQL engines and everywhere else.
* [What Color is Your Function?]( — Synchronous vs. asynchronous functions in languages and what a pain they are.
* [Talks that changed the way I think about programming](
## Bash
* [Better Bash Scripting in 15 Minutes](
* [Use the Unofficial Bash Strict Mode (Unless You Looove Debugging)](
## C/C++
* [How to C (in 2016)](
* [The 30 CSS Selectors you Must Memorize](
* [The CSS that you don't know about]( — More CSS selectors
* [`flex-grow` is weird. Or is it?](
## Game Dev
* Post-mortems and Tales
* [Super Merryo Trolls]( — or An Adventure From The Days Before VRAM
* [The SCUMM Diary: Stories behind one of the greatest game engines ever made](
* [Why I've Said Goodbye to Mobile in Favor of PC](
* [A Trip Down the Graphics Pipeline](
* [Your greatest bug ever?]( — A discussion on Reddit full of good stories.
* [Designing a "playable" UI that secretly teaches you how to play](
* [The Evolution of **RollerCoaster Tycoon**](
* Anti-Cheat
* [EarthBound's Copy Protection](
* Breakdowns & Reverse Engineering
* [An Analysis of **Super Metroid's Camera Code**, and using it for a 360-degree aiming 2D platform shooter](
* [Spoofing *Pokémon* trades with the Stellaris LaunchPad]( — A hardware hack for the original GameBoy games.
* [How *Zelda* Gets Lock And Key Puzzles Right](
* [Writing a GameBoy Advance Game](
* [Making a GameBoy Game in 2017](
* Multiplayer & Networking
* [Fast-Paced Multiplayer]( — Client-Server Game Architecture
* [Game Server Protocols](
* [64 Network DO's and DON'Ts for Game Engine Developers](
* Minecraft-likes
* [An Analysis of Minecraft-like Engines](
* [Perlin Noise Generator in **Python**](
* [**Python** 3D Cube World Demo](
* [Pixels and voxels, the long answer](
* Tutorials
* [So you want to be a **pixel artist?**]( — 11-part series on Pixel Art
* [Game Programming Patterns]( — Free e-book
* [The A-ha! Moment of being a game development beginner](
* [The guide to implementing **2D platformers**](
* [HD Index Painting in Photoshop]( — Pixel art
* [2D Game Art for Programmers]( — Guides on vector art using Inkscape, GIMP & co.
* [Developer's **Music Making** Guide](
* [Tips for Building Mobile Games in HTML5](
* Tools
* [Game Mechanic Explorer]( — Interactive demos and code samples for common game mechanics.
* [GifCam]( — Like FRAPS, to make gifs from your games
## Git
* [Git Flight Rules]( — A guide for what to do when things go wrong. *"Flight Rules are the hard-earned body of knowledge recorded in manuals that list, step-by-step, what to do if X occurs, and why. Essentially, they are extremely detailed, scenario-specific standard operating procedures. [...]"*
* [Most common git screwups/questions and solutions](
## Go
* [Learning Go (golang)](
* [Practical Golang: Using **Protobuffs**](
* [Go Best Practices, Six Years In]( (2016)
* [Common Comments in Go Code Reviews](
* [Go **channels** are bad and you should feel bad](
* [**godoc:** Tips & Tricks](
* Project Organization
* [What is a sensible way to layout a Go project?](
* [Architecture for a Golang Web App](
* [Structuring Applications in Go](
* [The Project Directory Structure](
* Makefiles
* [Make and Go for Fun and Profit](
* Interoperability
* [Mobile Go, part 1: Calling Go functions from **C**](
* [Building **Python** modules with Go 1.5](
* [See **Python**, See Python Go, Go Python Go]( — Running a Go web server in Python
* [Turning Go code into an npm module with GopherJS (**JavaScript**)](
* Tutorials
* [Build Your Own Web Framework in Go](
* [Building Go Web Applications and Microservices Using **Gin**](
* [**HTML Templates** in Go](
* [**Job Queues** in Go](
* [Using Go's **context** library for making your logs make sense](
## JavaScript
* [JavaScript Module Pattern: In-Depth]( — How to write self-contained JavaScript modules in raw ES5.
* [Deploying ES2015+ Code in Production Today]( — Using `<script type="module">` and `<script nomodule>` to ship native ES6 code to the browser, with pre-browserified fallback for legacy users.
## PHP
I don't hide my critism of the PHP language.
* [PHP: a fractal of bad design]( — A thorough breakdown (from 2012) of all of PHP's problems.
## Programmer Humor
* [html - RegEx match open tags except XHTML self-contained tags]( — TO͇̹̺ͅƝ̴ȳ̳ TH̘Ë͖́̉ ͠P̯͍̭O̚N̐Y̡ H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅ
## Python
* [Elements of Python Style](
* [Anti-Patterns in Python Programming](
* [Anti-Patterns in Python Programming](
* [A simple interpreter from scratch on Python](
* [How can I make a chain of function **decorators** in Python?](
* [Cheat Sheet: Writing **Python 2-3** compatible code](
## Technology
* [Don't use **Hadoop** - your data isn't that big](
* [Why You Should Never Use **MongoDB**](
* [**OAuth 2.0** and the Road to Hell]( — How OAuth2 was "killed by committee" and became the fustercluck that it is.
* [How **Google Authenticator** Works]( — Time-Based One-Time Password **(TOTP)** Algorithm
* [**Vim** after 11 years]( (2013)
* [The Rise and Fall of AIM, the Breakthrough AOL Never Wanted](
* [about:jwz and about:mozilla](
* [Here's What Happens When You Install the Top 10 Apps]( — Spam is what you get. See also [my related blog entry](/a-dumb-end-user-experiment)
* [**H.264** is Magic](
### Google Ban Hammer
If you violate terms in any of Google's monetary services, your account can be globally banned from *all* Google services that come anywhere near money. Get accused of click fraud in AdSense, and you can no longer buy apps on Google Play or buy credit in Google Voice.
* [Google Play - Only one strike is needed to ruin you]( (Android)
* [As an Android developer AND user having your developer account terminated is devastating](
* [From /r/AndroidDev, 'This is how Google kills our apps']( — Competitors may falsely flag your app, getting it immediately pulled from the store _and_ your account flagged. `#GoogleBanHammer`
* [A story from the comment thread]( about how Google can associate _new_ Google accounts with the terminated one (similarity in name, address, payment details, anything) — and ban that account, too. It's a ban on you, the developer, not your account!
## Tutorials
* [Implementing a Partial **Serial Number Verification System** in Delphi](
* [What are the best practices for building something like a News Feed?]( — Concerns and problems with implementing a Twitter-style News Feed.
## Unicode
* [Five things everyone should know about Unicode](
## Web Development
* [What should every programmer know about web development?](
* [The unexpected costs of third-party login]( — The problems one may encounter when implementing a "Login with Facebook" on their site. Many users prefer to just sign up custom accounts instead.
* [We Suck at HTTP]( — *Unlike web pages, mobile apps do not have links. They do not have web addresses. They live in worlds by themselves, largely cut off from one another and the broader Internet. And so it is much harder to share the information found on them.*
## API Design
* [Best Practices for Designing a Pragmatic RESTful API](
* [My first experience creating an API](
## Web Dev Tools
* [&amp;what; -- Discover Your Character]( — HTML entity finder.
* [Bandwidth to Filesize Calculator](
* [Sprite Cow - Generate CSS for sprite sheets](
# Gaming
* Minecraft
* [XP Farm Guide]( — Basics on how to turn a spawner dungeon into an automated mob grinder.
* [Negative Space]( — A building design guide.
* [My Guide to Building Modularly, and the Power of Cubes!](
* Pokémon
* [**Pokémon X/Y Guide** Megathread]( — Collection of all sorts of in-depth guides.
* Zelda
* [**Breath of the Wild** Data Compendium]( — Way more numbers than you ever wanted about weapons, attacks, defense, HP and so-on.
# Introversion
* [The Pros and Cons of being an Introvert](
# Network Security
* Operational Security (OpSec) — *The first rule of OpSec is you don't talk about your OpSec.*
* [Protecting a Laptop from Simple and Sophisticated Attacks](
* [Secure Secure Shell]( — SSH hardening tips &amp; tricks.
* [15 reasons NOT to start using PGP]( — It's harder to use *optional* encryption over *insecure* e-mail when there are better alternatives.
* [OpenPGP Best Practices]( — If you *must* use PGP.
* [What Sean Penn Teaches Us About How Not to Chat With a Fugitive]( — El Chapo post-mortem on OpSec failure.
* [**Ed Snowden** Taught Me to Smuggle Secrets Past Incredible Danger. Now I Teach You.](
* [NSA-proof your e-mail in 2 hours](
* Post-mortems and Tales
* [Reflections on Trusting Trust]( — The **Ken Thompson Hack** - Can you trust your C compiler? Linker? Kernel? Hardware?
* [Pwning a Spammer's Keylogger](
* [Everything Is Broken](
* [Lockdown: The coming war on general-purpose computing]( (2011)
* [Fun with your friend's Facebook and Tinder sessions](
* [Snapchat Protocol Reverse Engineering &amp; Security Audit](
* Cryptography
* [You are dangerously bad at cryptography](
* [Myths about `/dev/urandom`](
* Tor Project &amp; Onion Routing
* [Tor Project](
* [Combining Tor with a VPN](
* Tutorials
* [Secure Salted Password Hashing - How to do it Properly](
* [Enhanced challenge/response authentication algorithms](
* [How to use DM-Crypt to Create an Encrypted Volume on Ubuntu](
* References and Cheat Sheets
* [XSS Filter Evasion Cheat Sheet]( — Defeating cross-site scripting filters
## NSA
* Nothing to Fear, Nothing to Hide
* [If You Are Doing Nothing Wrong You Have PLENTY to Fear - 30 Examples](
* The Chilling Effect
* [Mass surveillance silences minority opinions, according to study - The Washington Post](
* NSA Sharing their Warez
* [NSA Tools for Spying on Foreign Terrorists Used by **DEA** to Bust Americans for Drugs](
* OpSec
* [PRISM Break - Opt out of global surveillance programs like PRISM, XKeyscore, and Tempora]( — Comprehensive guide to open source tools and best practices.
* [NSA-proof your e-mail in 2 hours](
* [Get your loved ones off Facebook](
* [Inside the NSA's War on Internet Security](
* [We're Deprecating HTTP and It's Going to be Okay]( — HTTPS Everywhere!
* [Having Lost the Debate on Backdooring Encryption, Intelligence Community Plans to Wait Until Next Terrorist Attack](
* [More Stories of People Arrested for Making Joke Threats on Social Networks](
# Philosophy
* [Breaking into the Simulated Universe](
# Short Stories
* [There Will Come Soft Rains by Bradbury]( — A chilling tale of a smart home in a post-apocalyptic future.
* [The Last Question by Isaac Asimov]( — A short story about the heat death of the universe. *How can entropy be reversed?*
* [The Last Answer by Isaac Asimov]( — A short story about an afterlife of never-ending consciousness.
* [I don't know, Timmy, being God is a big responsibility]( — A short story about a supercomputer that simulates the universe a little *too* perfectly. *"Well, we can't exactly turn it off."*
* [The Egg by Andy Weir]( — A story about the space in between lives. [Excellent YouTube adaptation.](
* [Ragged Trousered Philosopher]( — A conversation with God on a train.
* [The Machine]( — A webcomic about teleporters and whether they murder &amp; re-materialize their users.
* [25 Lives]( — A touching webcomic about reincarnation.
# Reddit
* [Surprise psychology on *What is the most cynical thing you honestly believe?*](
* [You had ONE job]( — Placeholder texts in production.
* [rugtoad comments on 'What do insanely poor people buy, that ordinary people know nothing about?'](
* [What are the things you simply DON'T FUCK WITH?]( — Chemistry.
* [More scary chemicals that you don't fuck with](
* [10 years from now I am a scientist working at the Large Hadron Collider. AMA.]( — Humor.
* [You just won a 656 Million Dollar Lottery. What do you do now?]( — In case that ever happens.

@ -23,5 +23,5 @@ See [the index](/wiki/_pages) for the list of all available pages in this wiki.
# Personal Reference
* [Bookmarks](/wiki/Bookmarks)
* [Bookmarks](/wiki/Bookmarks) - Pages I found interesting
* [Publishing RiveScript Modules](/wiki/Publishing-RiveScript-Modules)