270 karma · joined February 24, 2012
- irssi running in screen (irc client, yes, occasionally I still talk to people on there)
- my very small imgur-inspired image hosting (https://github.com/deniska/imghost)
- miniflux (RSS client, I am trying to get into a habit of reading RSS feeds instead of letting the algorithm to decide what I read)
- git directory with bare repos I use as remotes over ssh. I also have gitea installed, but I don't really see the appeal if I'm the sole user of a repo.
- snikket, xmpp server with a whatsapp-esque mobile app, useful to talk to people who are behind the great Russian firewall
- llama.cpp serving gemma4-26b-a4b for image processing of things too sensitive to let openai and other similar companies to see it (ok, this on won't fit on a $10 vps)
- minecraft server for this once a year 2-week minecraft phase
So I mostly stuck with really simple text editors (first likes of notepad++, geany and gedit, later switched to barely customized vim). You learn the language, you learn its standard lib, you learn the libraries you use often, you learn to navigate their docs. You learn the project you are working on, and remember how things are named. I do use a simple autocomplete (ctrl+n in vim), but it's more of a typo preventer (or a typo propagator, depending on how you look at it). It autocompletes every word in open files. Which might be more handy than it sounds, because it will autocomplete stuff not typically being autocompleted in IDEs, like json keys, or file names in the open directory listings, or even outputs in the open terminal session.
As for navigating unfamiliar code bases and "go-to-definition": it's grep. Just search for a substring in the whole project. You will find the definition. You will also find some other interesting stuff, which "normal" IDE tools wouldn't look into. Heck, you'll find interesting comments, interesting name clashes, interesting usecases for a thing you were looking for. And it's a language agnostic skill. You don't need another bespoke IDE, you don't need to configure some weird LSP to navigate unfamiliar code base even in not so familiar language.
https://gist.github.com/deniska/f1ee73e18e1444eb724c01f933b6...
FreeBasic was probably the most fun of them to me: cross-platform, compiles to fairly fast running binaries, can easily interface with libraries written in C, and has qbasic syntax mode.
Modding a game means that you have a specific starting point, the original game, which you are probably a fan of. And you may want your creation to be a part of this original world, share some (or most) of gameplay elements, design elements, story elements etc.
People modded Half-Life not only because modding Half-Life was somewhat easier than making an FPS game from scratch, but also because they wanted to explore the original story from another angle, or they liked how engine feels to play, or for whatever other reason wanted a starting point to be a complete game. Kind of the original asset store: the assets of the game you are modding.
The main problem with python packaging is that it's often C/C++ packaging in disguise, among multiple OSes and CPU architectures, and that's far from being solved. Building such python wheel is essentially like building a "portable" (aka one you don't need to properly install into the system) linux/windows/macos application. That comes with a variety of caveats and requires some specialized knowledge one wouldn't pick up playing around with just python alone.
launches bittorrent client on the phone