Files
davideisinger.com/content/notes/golang/index.md
2023-06-04 00:10:16 -04:00

56 lines
1.3 KiB
Markdown

---
title: "Golang"
date: 2023-05-08T09:54:48-04:00
draft: false
---
I find [Go][1] really compelling, even though it's not super applicable to my job. When evaluating a new tool, I find I'm weirdly biased to things written in Go.
* I like that it compiles, and have no desire to install someone else's Python
* It just seems to hit the right balance of productivity, performance, simplicity, safety
* The language (and the tech built with the language) just seems built to last
[1]: https://go.dev/
### Questions to Answer
* How to organize large(r) codebases
* Goroutines / concurrency
* Dev tooling
* How to read/write JSON
* How to validate with JSON Schema
* <https://github.com/qri-io/jsonschema>
* Testing
### Projects I like
* [Hugo][2]
* [Caddy][3]
* [PocketBase][4]
* [SyncThing][5]
* [Restic][6]
[2]: https://gohugo.io/
[3]: https://caddyserver.com/
[4]: https://pocketbase.io/
[5]: https://syncthing.net/
[6]: https://restic.net/
### Project Ideas
* Bookmarking app (Pinboard replacement)
* Note-taking / journaling app
* [StevieBlocks][7]
{{<thumbnail project1 "400x" />}}
[7]: https://gist.github.com/dce/f975cb21b50a2cf998bf7230cbf89d85
### Resources
* [Standard Go Project Layout][8]
* [The files & folders of Go projects][9]
[8]: https://github.com/golang-standards/project-layout
[9]: https://changelog.com/gotime/278