As some of you may know, there was an iteration of this website that existed previously. I posted about things I was working on, research I was doing and tips on how to get some complicated software working. Then I got really busy with a startup I was involved in and stopped posting much. I also started posting on Medium, so I have some posts there as well.
A little while ago, I started thinking about getting this going again, but wanted to try something that wasn't my usual Wordpress site (which I had customized with plugins and a template I created myself). I also wanted something that I was in control of, rather than just continuing along with Medium. I played around with Jekyll and Github pages, which was cool because it didn't require any hosting, and I could write the content in markdown.
However, I still missed having a real backend and wanted to learn some more new stuff so I wrote this in Go. It's still a bit sparse in terms of what's working but thought I'd roll ahead with it anyhow. I can post stuff, edit it, and delete things, so we'll see what happens. It uses Github auth for logging in, although it should only let me post / edit / delete, it will also eventually let people comment by logging in too. I'm sure I've written some of the login poorly and eventually the site will be defaced or posts deleted so I guess I'll just make sure I backup the posts regularly and fix it when it happens.
Can't decide if I'm going to port old posts into here or just start fresh yet.For those who are interested, this site uses Gorm, and Gin. The json API tries to implement https://jsonapi.org/format/ as best as possible. A few helpful articles I've found while working on this:
* [https://blog.depado.eu/post/gorm-gotchas](https://blog.depado.eu/post/gorm-gotchas)
* [https://github.com/golang-standards/project-layout](https://github.com/golang-standards/project-layout)
* [https://rshipp.com/go-web-api/](https://rshipp.com/go-web-api/)
* [https://rshipp.com/go-api-integration-testing/](https://rshipp.com/go-api-integration-testing/)
* [https://semaphoreci.com/community/tutorials/building-go-web-applications-and-microservices-using-gin](https://semaphoreci.com/community/tutorials/building-go-web-applications-and-microservices-using-gin)
* [https://semaphoreci.com/community/tutorials/test-driven-development-of-go-web-applications-with-gin](https://semaphoreci.com/community/tutorials/test-driven-development-of-go-web-applications-with-gin)
* [https://www.sohamkamani.com/blog/2018/03/25/golang-session-authentication/](https://www.sohamkamani.com/blog/2018/03/25/golang-session-authentication/)
* [https://gist.github.com/dtan4/a3b5027dd3c7d5c5ed3119ea97fb7235](https://gist.github.com/dtan4/a3b5027dd3c7d5c5ed3119ea97fb7235)