RSSAmplifier

Blog

cephei8's site

Recent content on cephei8's site

cephei8.devRSS feed ↗9 posts

Latest posts

Things that made me come back to Emacs

TLDR: Neovim was good, I just personally like Emacs better (especially Org-Mode). I think I can call my experiment to try out Neovim finished, and I am happy to be back to Emacs. I used to be a GUI Emacs user. The motivation to try out Neovim was the rise of AI agentic workflows, and that the AI agent harnesses worked best in the “proper” terminals (Claude Code was flickering and…

Neovim setup for Odin

Recently I have been experimenting with Neovim. This post is about how to set it up for Odin programming. I will cover: syntax highlighting building/testing/formatting Odin code from Neovim LSP autocomplete debugging Prerequisites Install Odin Install ols and odinfmt (LSP + formatting) Install tree-sitter-cli (for installing Odin Tree-sitter grammar) Install latest llvm and make sure lldb-dap is…

My Large Array of Things in Odin

Background If you are not familiar with the concept of Large Array of Things, I highly recommend watching Avoiding Modern C++ | Anton Mikhailov on Wookash Podcast, both for educational purposes and for inspiration. In two words - it’s an array of fat structs, with intrusive data structures to implement hierarchies. In this post I will show my implementation of the concept in Odin,…

Doom Emacs setup for Odin

Doom Emacs, as expected, can be made into great “IDE” for Odin. This post will cover setting up syntax highlighting, LSP, build command, and debugger. Syntax highlighting Odin Tree-sitter mode provides a nice syntax highlighting. Add the following to packages.el : ;; packages.el (package! odin-ts-mode :recipe (:host github :repo 'Sampie159/odin-ts-mode' )) And config.el : ;; config.el…

Making user-facing DSL with goyacc

One of the core features of my Greener project is user-facing DSL for querying database with test results. For example, status = "fail" AND name = "login_test" fetches results of the “login_test” test that failed. Surprisingly, Go’s port of classic YACC parser generator was a relatively simple and straightforward way to parse user queries to further convert them in SQL queries.…

Go's Bun ORM - alternative to Python's SQLAlchemy

Initially, my Greener project was implemented in Python. When I decided to switch to Go, I started looking for Go ORM library. In Python the de facto standard is SQLAlchemy . I liked SQLAlchemy and was hoping to find something similar for Go. Specifically, I was looking for the following: Actively maintained Support for different databases (in the sense that same code works with different…

Greener: lean and mean test result explorer

Test frameworks usually produce custom test output by default (along with exit code). For example, pytest (test framework for Python) gives something like this: tests/test_apikey_controller.py::test_create[db_sqlite] PASSED [ 25%] tests/test_apikey_controller.py::test_get[db_sqlite] PASSED [ 50%] tests/test_apikey_controller.py::test_list[db_sqlite] PASSED [ 75%]…

About this site

About this site The content of this site is licensed under the terms of CC BY 4.0 . This site was created using: Hugo static site generator Hugo ʕ•ᴥ•ʔ Bear Blog Hugo theme Ox-Hugo Org exporter backend for Hugo

Contact

Contact GitHub: cephei8