32 lines
2 KiB
Markdown
32 lines
2 KiB
Markdown
+++
|
|
title = 'Programming'
|
|
weight = 20
|
|
+++
|
|
|
|
## Main languages
|
|
- **Rust** - Modern language with safety
|
|
- **D** - Modern language inspired by C++ and Java, that is garbage collected and has excellent metaprogramming capabilities
|
|
- **C++** - C++23 takes a lot of pain out of this old and bloated language
|
|
- **C** - Mainly for low level / embedded code, and for building of connecting interfaces between different libraries and programming languages
|
|
- **Python** - When performance and safety/stability is not critical
|
|
- **NWScript** - A C-like language that is not really relevant outside of Neverwinter Nights, but it's the first "serious" language that I learnt and used a lot
|
|
|
|
## Other languages
|
|
- **Bash**, **Zsh** - _Obviously_, for Linux admin and automation
|
|
- **HTML**, **CSS**, **JS** - For website frontends
|
|
- **MySQL**, **PostgreSQL**, **SQLite** - There are a lot of alternative databases out there, but I always end up using one of these three
|
|
- **Assembly** - clearly not my area of expertise, but it's always useful for understanding compiler behaviour and executable reverse engineering
|
|
- **Go** - The language is a bit too basic for my taste, but is very easy to read and is great for web backends
|
|
- **C#**, **Java**, **Lua**, **PHP** - Languages that I learnt but haven't touched in a while
|
|
|
|
## Dev tooling
|
|
- **Git** - Learnt git in 2011. Now it's so ubiquitous it's barely worth mentioning
|
|
- **GitlabCI**, **Github Actions** - for automated testing, code quality & coverage reports, and automated releases/deploys
|
|
- **Codecov** - for a nice display of code coverage
|
|
- **Docker** - it's quite essential now, for custom CI and build environments or service management
|
|
|
|
## Other
|
|
- **Ansible** - For restoring a complex server in case of disk failure
|
|
- **Hugo** - This site is served with Hugo and a custom template
|
|
- **Qemu/KVM/Libvirt** - For server and desktop VMs, with as much virtio as possible (disk, network, video buffer, ...)
|
|
- **Yocto** - Built a custom linux disk image in 2015
|