This page provides a bevy of good self-learning resources for every topic, accessible for anyone (not just Launch Pad members)! Looking for Launch Pad-specific documentation? Head on over to the Handbook!
If you want further pointers, get in touch with your tech lead - they can direct you to more resources or to another Launch Pad member that knows more. And if you want to add even more resources, feel free to make a pull request.
# 🚀 Project Groundwork
These pages contain resources to help you kickstart your project!
# 🛶 Git Workflow
A recommended git/GitHub collaborative development workflow is introduced in Git Workflow.
# 💬 Programming Languages
Looking for resources to a specific programming language? Drop by the Programming Languages page!
# ⚒️ Tools
Boost your productivity and learn about the tools we use at Launch Pad over in the Tools page!
# 🐹 Deployment
Want to make your project available to the world? Head on over to our Deployment section!
# 👨💼 Repo Management
- Shields.io (opens new window) provides a frankly massive number of badges that you can put in your repo's README to show off your Travis builds, website, license, issue tracking, and lots of other stuff!
- Pull Reminders (opens new window) is a service that notifies you over Slack of pull-request-related activity on your repos, and also has lots of useful dashboards showing stats on review turnaround time, number of reviews, and so on. Pull Reminders is already set up with Launch Pad's repos, and we highly recommend enabling reminders!
- Our Handbook also has a section about managing repositories: Repository Management.
# 💻 Command Line
- Matt Might has a pair of Unix tutorials, one for total beginners (opens new window) and one for advanced beginners (opens new window), which are like the missing user's guide for the command line.
- Remy Sharp has a list of command line tools (opens new window) better than their built-in counterparts.
- Included in that list but also worth mentioning separately, tldr pages (opens new window) is a project to build short-and-sweet guides to common use cases.
- If you're using bash, the bash-completion (opens new window) project provides a huge number of tab-completion scripts for common command line programs.
- git also has autocomplete (opens new window) scripts available - these will save you literally hours of your life.
# 🎨 Front End Development
- Grab, an Uber competitor in South East Asia, has a great big guide to front end development (opens new window), which covers everything from React to hosting and deployment.
- The official UBC Launch Pad website is written in Vue and TypeScript, and the repository includes introductory documentation on working with Vue and TypeScript (opens new window)
# 📝 Cheatsheets
- devhints.io (opens new window) provides cheat sheets for a huge number of web development and sysadmin/ops-related tools and programs.
- cheat.sh (opens new window) is a service along the lines of the above, but it can also be run from the command line.
- If you want to learn vim, or just use a vim mode in the editor or IDE of your choice, you can't go wrong with this vim cheat sheet (opens new window).
# 🧪 Coding Challenges
- LeetCode (opens new window) is probably the most popular website for coding challenges and comes highly recommended for interview preparation - big companies often take interview questions directly from LeetCode!
- HackerRank (opens new window) is a similar coding challenge site, which many companies use directly for interview screening.
- Project Euler (opens new window) is a very different style of coding challenge site - it has a much sparser presentation than rivals like LeetCode and HackerRank, and generally focuses on (sometimes rather esoteric) mathematical conundrums. But for the mathematically-inclined programmer, it can be a rich resource for delightful insights. Also, our very own ML Tech Lead Kevin built a command line tool (opens new window) to make it easier to work on Project Euler problems in Python!
# 🗂️ Windows
Having trouble with Windows? Check out our Windows guidance!
# 💭 General Learning
- Launch Pad has its very own Medium (opens new window) publication! Talk to one of the co-presidents if you're interested in being published and becoming famous.
- The consulting firm Thoughtbot recently made their Upcase learning platform (opens new window) free for everyone. It has a lot of short video lectures on a variety of topics, especially Ruby and Vim, which can be quite useful for new developers.
- every-programmer-should-know (opens new window) provides a collection of technical things every software developer should know.
- Slides (opens new window) contains slideshow decks for most UBC Launch Pad presentations and workshops, both internal and external.
# 🧗 Exploration
The Exploration section has Tech Lead-approved resources for those that want to explore more complicated topics like operating systems, programming languages, and machine learning.