An open API service indexing awesome lists of open source software.

https://github.com/theognis1002/cookbook

notes & code snippets
https://github.com/theognis1002/cookbook

apache docker-compose elasticsearch git go javascript linux mongodb nginx postgresql programming python terraform

Last synced: about 1 year ago
JSON representation

notes & code snippets

Awesome Lists containing this project

README

          

## The Cookbook Method

A cookbook in the programming context is collection of tiny programs that each demonstrate a particular programming concept. The Cookbook Method is the process of learning a programming language by building up a repository of small programs that implement specific programming concepts. Starting with a Hello World program and building the knowledge piece by piece on top of that.

If you are a beginner, you will probably want to start out with one language like Python and start building up your repetoire of snippets for reference and confidence. If you are a seasoned developer, you may want to start building a cookbook from scratch for a new language you have never used, or keep a cookbook for more advanced topics in a language you are already familiar with.

### Benefits of Building Your Own Cookbook

- You can share it with others
- Learn topics that are interesting to you
- You build up your knowledge in small increments
- You can see your progress over time
- You have a library of reference material in your own style.
- It is quicker than looking up documentation or looking for a Stack Overflow answer.
- Explore new topics
- Learn new programming languages.
-
### Tips for Building a Cookbook
- Store your cookbook in a version control system like Git.
- Keep a to do list of topics or programming languages you want to explore and learn
- It does not have to be just code. I have a lot of plain text .txt files with notes on things like how to create a Python pip package, creating Ruby Gems, or how to create a runnable JAR in Java. Sometimes tips on installing prerequisites if something was difficult or just notes on how to compile and run programs.
- It can also be template programs. For example I have a base chrome browser extension that doesn't really do anything itself, but it is a fully functional extension with all the boilerplate done and ready for me to start developing.
- Programs should be fully runnable and not just chunks of code without context that do not compile and execute
- Keep the snippets small, simple and to one topic

### Example Cookbook Topics

Everyone has different goals with programming so identify topics relevant to your interests. Here are some ideas if you do not know where to get started.

- Taking command line arguments
- Reading and writing files
- Using TCP sockets
- Making HTTP requests
- Parsing JSON
- Creating a CSV file
- Making database connections
- Playing an audio file
- Multithreading

## theognis1002 Cookbook

- https://github.com/theognis1002/cookbook