Skip to main content

Development Resources

A

Apple

ResourceDescription
Downloadable resources for developersXCode tools, etc.

B

Blogs

ResourceDescription
Amy HoyExample post: The fine art of "Flintstoning"
Andy BaioWriter with a creative, illustrative, technical flair. Example post: Invasive Diffusion: How one unwilling illustrator found herself turned into an AI model
Andy WingoWriter with an emphasis on free software and open-source projects. Example post: fibs, lies, and benchmarks
Axel Rauschmayer (2ality)Writes about JavaScript in a deeper than usual way.
BasecsBlog on Medium with the following tagline: "Exploring the basics of computer science, every Monday, for a year."
Camille FournierEngineer, CTO, member of the Apache ZooKeeper community. Author of The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change. Example post: An incomplete list of skills senior engineers need, beyond coding
Chelsea TroyStaff Engineer at Mozilla. Example post: How I do (and don’t) prepare a talk for a tech conference
CSS TricksCSS site useful for a very wide array of things. Example post: Centering in CSS: A Complete Guide
Dan LuuProgramming blog posts (more technical). Example post: Files are hard
David EppsteinPersonal blog from a professor of computer science at University of California, Irvine. Example post: Stack-based graph traversal ≠ depth first search: Goes into detail about how modifying the standard version of the BFS algorithm on generalized graphs by replacing the queue with a stack does not result in a true DFS. The Wiki article on DFS, specifically the pseudocode section, provides David's comments in a different manner.
InterviewingIOBetter interviewing (and hiring) through data.
James MickensExample post: Researcher in the Distributed Systems group at Microsoft’s Redmond lab.
Jeff FowlerExample post: Hott reloading
Julia EvansAuthor of the Wizard Zines. Her blog has every post she's ever written, organized by category. Example posts: The fish shell is awesome; entr: rerun your build when files change; A little bit of plain Javascript can do a lot; Things that used to be hard and are now easy; SQL queries don't start with SELECT; sqlite-utils: a nice way to import data into SQLite for analysis: Useful for taking any CSV file(s) and dumping them into a SQLite database for querying purposes. CLI reference can be helpful, specifically the part about inserting data and making field conversions. The sqlite-utils GitHub repo and the csvs-to-sqlite GitHub repo might be useful for future exploration as well.
Kamal MarhubiExample post: Segfaults are our friends and teachers
Lara HoganAuthor, public speaker, and coach for managers and leaders across the tech industry. Example post: What does sponsorship look like?
Laurent LuceWrites about more performance-driven topics. Example post: Least frequently used cache eviction scheme with complexity O(1) in Python
Maciej Ceglowski (Idle Words)Example post: Dabblers and Blowhards
Marianne BellottiAuthor of Kill It with Fire Manage Aging Computer Systems (and Future Proof Modern Ones). Example post: All the best engineering advice I stole from non-technical people
Mark DominusAmateur mathematician. Example post: Software horror show: SAP Concur
Monica DinculescuExample post: Doing the work
Nelson ElhageExample post: Computers can be understood
rachel by the bayExample post: A mystery with memory leaks and a magic number
Robert HeatonExample posts: How does a TCP Reset Attack work?; Programming Feedback for Advanced Beginners (archive)
Robin WieruchWrites about React a good deal.
Safia AbdallaExample post: Getting into git init
Vicki BoykisExample post: Google Drive is production
Will LarsonExample post: Model, document, and share

Books

SICP

ResourceDescription
SICP bookSelf-descriptive
SICP MIT Video LecturesIn the SICP tradition but with Python.
Brian Harvey's SICP LecturesSelf-descriptive
Composing ProgramsSelf-descriptive
How to Design Programs, 2nd Ed.Self-descriptive

C

Cheatsheets

ResourceDescription
DevhintsThis resource has numerous high-quality cheatsheets for various things developers are likely to use (e.g., bash, fish-shell, ffmpeg, homebrew, vim, etc.). There's also a search interface on the homepage to make it easier to find possible cheatsheet resources for your desired tool.
tldrThe tldr-pages project is a collection of community-maintained help pages for command-line tools, that aims to be a simpler, more approachable complement to traditional man pages. For example, tldr tar won't be a billion pages but a quick reference of commands that are likely to be quite helpful.
cheatThis project makes it possible to create and view cheatsheets on the command-line. Cheatsheets can be either those by the community (ones that come by default upon package installation) or those you make for yourself. Being able to make your own personal cheatsheets makes this an awesome resource.
Big O CheatsheetWell-known resource that discusses big-O in terms of time- and space-complexities for various data structures and algorithms.

Classes (education)

ResourceDescription
Teach Yourself Computer ScienceIf you're a self-taught engineer or bootcamp grad, you owe it to yourself to learn computer science. Thankfully, you can give yourself a world-class CS education without investing years and a small fortune in a degree program.

Colors

ResourceDescription
Canva color wheelPick a color, then specify a color combination, and then use the color combination provided. I've used this before to find nice complementary colors.
ColorColors available via Material-UI

D

Data structures and algorithms (DSA)

General-purpose resources

ResourceDescription
AlgoMonsterPlatform for learning and practicing DSA. Example resource: AlgoMonster coding interview problem frequency analysis: Breakdown of different problems and their frequencies in top tech companies.
Big O CheatsheetWell-known resource that discusses big-O in terms of time- and space-complexities for various data structures and algorithms.
binarytreeUseful package for Python users when studying trees.
Bit manipulation (practice)This quiz provides practice with bit operations. This web page gives you an opportunity to practice with applying these operators to positive integers. In some cases, you'll need to convert the integers to binary first before applying the operation.

Handbooks

ResourceDescription
Front End Interview HandbookBy Yangshun Tay, this is similar to the Tech Interview Handbook by the same author.
Tech Interview HandbookStart of book

Interviewing

ResourceDescription
interviewing.ioAnonymous technical mock interviews with engineers from Google, Facebook, and other top companies
Interview.io recordingsWatch mock interviews with engineers from Google, Facebook, Netflix and more
Resume checklistFrom the Tech Interview Handbook

Deployment and hosting

Namecheap and Netlify

The following are some helpful resources for setting up private email with a custom domain on Netlify:

ResourceDescription
Gmail Fetcher setup for Namecheap Private EmailSelf-descriptive
How can I set up MX records required for mail service?Self-descriptive
Private EmailSelf-descriptive
How to Add DKIM Record in Namecheap: Namecheap DKIM Setup GuideSelf-descriptive
How to set up a DKIM record for Private EmailSelf-descriptive
How do I add TXT/SPF/DKIM/DMARC records for my domain?Self-descriptive
Namecheap -> Dashboard -> Domain ListTo be able to activate your Private Email subscription to receive mail and create mailboxes, you must first set up these important DNS records from the table below. (Something like what appears below -- these details need to be added to Netlify if you are using Netlify DNS.)

Description of last point above:

HostnameRecord typePriorityValue
@MX10mx1.privateemail.com
@MX10mx2.privateemail.com
@TXTv=spf1 include:spf.privateemail.com ~all

DNS

ResourceDescription
The website is unknown - how DNS worksFun way of learning how DNS works.

Docusaurus

Some helpful links for learning about Docusaurus, the static site generator that is especially helpful for hosting project documentation:

ResourceDescription
Stack OverflowTop questions tagged with docusaurus.
JamstackAll about the jamstack, which Docusaurus is based on.
MDXMarkdown for the component era that Docusaurus uses.
Front MatterDetails about the front matter used in Markdown (helpful for authoring posts on Docusaurus-powered sites).
Markdown syntaxHelpful notes on Markdown syntax.
KaTeXHelpful reference to see what can be used on Docusaurus-powered sites.
Documentation Made EasyDiscussion on YouTube about what Docusaurus offers out of the box.

Example sites that have been built with Docusaurus:

E

F

File conversions

ResourceDescription
Cloud ConvertProbably the best free resource for executing high quality file conversions. They also have an API that can be used for free even though it doesn't have the most user-friendly interface.

G

H

I

Icons

ResourceDescription
Icon-iconsTons of free icons where you can often download png, svg, and ico file types.

J

K

L

LeetCode

General-purpose posts

| How to practice for 2200+ rating in LC | A user's guide concerning what they did over several years to achieve a 2200+ contest rating. |

Templates

| Sliding window template | A template for solving most "substring" problems by using the sliding window technique. |

M

Material-UI

ResourceDescription
Material SVG Icons
Material icons (visual list)Visual listing of icons available via Material-UI.
ColorColors available via Material-UI

N

Newsletters

ResourceDescription
Serverless StatusSelf-descriptive
Golang WeeklySelf-descriptive
JavaScript WeeklySelf-descriptive
React StatusSelf-descriptive
Node WeeklySelf-descriptive
Ruby WeeklySelf-descriptive
Frontend FocusSelf-descriptive
Deno WeeklySelf-descriptive
JAMStackedSelf-descriptive
Postgres WeeklySelf-descriptive
MongoDB MemoSelf-descriptive
StatusCode WeeklySelf-descriptive
Awesome NewslettersSelf-descriptive

O

P

Professor pages

Stumbling Across Amazing Professor Pages (Hidden Gems)
google search -> so many results
-> useless first result
-> useless second result
-> hm, this result seems promising
-> notice the useful result is tied to a page by some professor
-> visit professor's page and notice TONS of other awesome resources
-> spend countless hours browsing
-> profit

The process above is something most of us have encountered at some point. For example, recently I was searching about Abstract Data Types (ADTs), and many of the results I didn't find all that useful at first. But then I stumbled across this random handout that seemed quite nice. I looked at the URL more closely:

https://math.hws.edu/eck/cs327_s04/chapter2.pdf

Hm, I thought visiting https://math.hws.edu/eck might lead to some other high quality content. It did. This general idea made me think it might be useful to start tabulating some of the very high quality content I've come across from different web pages dedicated to the work by some seriously awesome professors. Such pages are often gold mines of information. Professors will often list courses they've taught along with the associated coursework and resources they've either recommended or created themselves.

Below are some different "professor pages" I've come across that I've found to be quite valuable.

ResourceDescription
David EckCourses taught; Course handout pages

Q

R

S

T

U

V

W

X

Y

Z