106 lines
3.1 KiB
Markdown
106 lines
3.1 KiB
Markdown
|
---
|
|||
|
sitename: "Within"
|
|||
|
title: "Overview"
|
|||
|
template: blog
|
|||
|
---
|
|||
|
|
|||
|
The following is my overview for what I want this book to cover. This may be
|
|||
|
incomplete and probably will become out of date quickly, but this is basically
|
|||
|
my TODO list.
|
|||
|
|
|||
|
Each top level bullet point is its own chapter/workshop. Slides will be made
|
|||
|
available as soon as they are created.
|
|||
|
|
|||
|
- [x] Basic getting started
|
|||
|
- [x] installing go
|
|||
|
- [x] hello world
|
|||
|
- [x] doing math
|
|||
|
- [ ] Data Types
|
|||
|
- [ ] Variables
|
|||
|
- [ ] Declaring variables
|
|||
|
- [ ] Assigning variables
|
|||
|
- [ ] Integers
|
|||
|
- [ ] byte, int, int32, int64
|
|||
|
- [ ] Implement Subtract/Multiply
|
|||
|
- [ ] Floating-point numbers
|
|||
|
- [ ] Differences between floating point numbers and integers
|
|||
|
- [ ] float32, float64
|
|||
|
- [ ] Strings
|
|||
|
- [ ] examples of strings
|
|||
|
- [ ] immutable
|
|||
|
- [ ] combining strings
|
|||
|
- [ ] Slices and maps
|
|||
|
- [ ] generic types (this doesn’t mean Go has user-defined generic types)
|
|||
|
- [ ] Slices
|
|||
|
- [ ] creating
|
|||
|
- [ ] appending
|
|||
|
- [ ] sorting
|
|||
|
- [ ] common slice types
|
|||
|
- [ ] Maps
|
|||
|
- [ ] make()
|
|||
|
- [ ] add value
|
|||
|
- [ ] delete value
|
|||
|
- [ ] Control structures
|
|||
|
- [ ] conditionals
|
|||
|
- [ ] if
|
|||
|
- [ ] switch
|
|||
|
- [ ] type switch
|
|||
|
- [ ] looping
|
|||
|
- [ ] conditional looping
|
|||
|
- [ ] C-style for loop
|
|||
|
- [ ] iteration
|
|||
|
- [ ] Functions
|
|||
|
- [ ] Writing functions
|
|||
|
- [ ] Documentation
|
|||
|
- [ ] Types of functions
|
|||
|
- [ ] Functions are data
|
|||
|
- [ ] Functions as arguments to functions
|
|||
|
- [ ] Structures
|
|||
|
- [ ] defining structs
|
|||
|
- [ ] documenting structs
|
|||
|
- [ ] instantiating structs
|
|||
|
- [ ] JSON support for structures
|
|||
|
- [ ] What's the deal with pointers?
|
|||
|
- [ ] pointers make values mutable across functions
|
|||
|
- [ ] HTTP operations
|
|||
|
- [ ] fetching data from canhazip.com
|
|||
|
- [ ] validating response
|
|||
|
- [ ] parsing response
|
|||
|
- [ ] printing response
|
|||
|
- [ ] Testing
|
|||
|
- [ ] making a fake server for canhazip.com
|
|||
|
- [ ] using it in testing
|
|||
|
- [ ] Command line app writing
|
|||
|
- [ ] Flags
|
|||
|
- [ ] Help
|
|||
|
- [ ] How to test a command line app
|
|||
|
- [ ] Repo hygiene
|
|||
|
- [ ] What should go where
|
|||
|
- [ ] Applying that to previous things
|
|||
|
- [ ] Go Modules
|
|||
|
- [ ] how to depend on people's code
|
|||
|
- [ ] best practices for releasing code
|
|||
|
- [ ] semantic versioning and side effects
|
|||
|
- [ ] add markdown support to the wiki
|
|||
|
- [ ] Putting it all together with a webapp
|
|||
|
- [ ] The Wiki example from the Go documentation
|
|||
|
- [ ] https://golang.org/doc/articles/wiki/
|
|||
|
- [ ] Updated a bit
|
|||
|
- [ ] Tests
|
|||
|
- [ ] Webapp Abstractions
|
|||
|
- [ ] Adding a JSON api to it
|
|||
|
- [ ] Making a client package
|
|||
|
- [ ] Tests
|
|||
|
- [ ] Abstracting its storage layer to a database (ql?)
|
|||
|
- [ ] Migrations
|
|||
|
- [ ] Tests
|
|||
|
- [ ] Dockerizing
|
|||
|
- [ ] Making the Dockerfile
|
|||
|
- [ ] Testing with Docker
|
|||
|
- [ ] Bonus: Introduction to Battlesnake
|
|||
|
- [ ] brief overview of the problem space
|
|||
|
- [ ] the types involved
|
|||
|
- [ ] tutorial on how to make a snake
|
|||
|
- [ ] somewhere to run it?
|
|||
|
|