1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
+++
title = "Toolbox"
type = "page"
+++
Some things I found to be useful for daily programming.
## Programming
* [Geany](http://www.geany.org/): very fast IDE,
not the memory and CPU monsters out there like Eclipse/Netbeans.
* [Valgrind](http://valgrind.org/): code analysis tool,
I use mainly the memory checker and the profiler.
* [KCachegrind](https://kcachegrind.github.io/html/Home.html): graphical
profiler presenting runs of valgrind performance checks in a nice way.
* [xxdiff](https://github.com/blais/xxdiff/): 2 and 3-way graphical diff tool,
I use it because of nostalgia (aka: I got used to it).
## C Programming
* [Gengetopt](http://www.gnu.org/software/gengetopt/gengetopt.html):
parser for command line options
## Database Modelling
* [dbmodel](http://oxygene.sk/projects/dbmodel/): a very neat
database modeller with PDF and image export. (For Qt5 there
are fixed versions at http://git.andreasbaumann.cc/cgit/dbmodel/?h=qt5,
branch 'qt5' or https://git.eckner.net/Erich/dbmodel/)
## Data processing
* [XMLStarlet](http://xmlstar.sourceforge.net): XML processing on the
command line for fast and dirty XML processing
* [JQ](https://stedolan.github.io/jq/): JSON processing on the command
line very much alike as with XMLStarlet
## Infrastructure
* Using [libvirtd](http://libvirt.org) now instead of VirtualBox
(sorry, Oracle). Main reason: it's still a little bit un-ready round
the edges but hey, it's really open source. :-)
* [LXC](https://linuxcontainers.org): lightweight and surely nicer to
use than Docker (IMHO). Still a little bit alpha quality though.
* [unison](https://www.cis.upenn.edu/~bcpierce/unison/): file
synchronizer, I'm using it since years to sync my home directory
between three or four machines, sort of a very easy backup.
* The backup from the local LAN to the cloud happens via FTP and some
copy jobs within [Bacula](http://www.baculasystems.com/).
## Books
* [The Pragmatic Programmer](http://en.wikipedia.org/wiki/The_Pragmatic_Programmer):
an absolute must for every programmer.
* [The Mythical Man-Month](http://en.wikipedia.org/wiki/The_Mythical_Man-Month):
an absolute must for everybody doing a project.
* [AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis](http://www.amazon.com/AntiPatterns-Refactoring-Software-Architectures-Projects/dp/0471197130):
avoid mistakes by learing from bad examples.
## Other
* [Ion3](http://tuomov.iki.fi/software/ion/): tiling window manager with
strong keyboard and Lua scripting support. Sadly the original author
got into fights with the open source community :-(
I'm currently using the fork [Notion](https://sourceforge.net/projects/notion/).
Read [http://raboof.github.io/notion/](http://raboof.github.io/notion/)
if you want to learn how to use such a window manager.
* [Joe](http://en.wikipedia.org/wiki/Joe's_Own_Editor): my editor for
all quick editing jobs. Having used a lot of Wordstar and Turbo Pascal IDEs
in my youth, **jstar** is the editor I can't get rid of in my brain. :-)
* [meh](http://www.johnhawthorn.com/meh/): as fast and easy an image
viewer can possibly get. I use a fork which adds QOI support (see
https://github.com/andreasbaumann/meh/tree/qoi)
* [MuPDF](http://www.mupdf.com/): an equally fast PDF/XPS viewer.
* [Trojitá](https://en.wikipedia.org/wiki/Trojit%C3%A1): a simplistic
and really fast mail reader for IMAP accounts. For long-term archiving
of email I'm using [Mutt](http://mutt.org) with POP3 and a maildir
directory (proved to be extremely stable over time).
* [Luakit](https://luakit.github.io/): webkit-based browser, highly customizable
with Lua scripting
* [irssi](https://irssi.org/): for chatting (terminal)
* [newsboat](https://newsboat.org/): a RSS feed reader looking like mutt
(I'm using the old pure-C++/non-Rust version I forked as
[newsboat-og](https://github.com/andreasbaumann/newsboat-og))
* [Wordgrinder](https://cowlark.com/wordgrinder/): really nice text editor
if actually all you want to do is writting some text
* [Suckless](https://suckless.org/): pretty much every software there is
10 times smaller and easier to use than whatever makes up the default
Linux user land. I'm a big fan of it.. it only should be the standard
on every Linux system.
## Deprecated
The following tools I used in the past, but not anymore:
* [Seamonkey](http://www.seamonkey-project.org/): Seamonkey slowly gets
all the "features" of Mozilla (slow, Rust build problems, out-of-memory
when building and linking). So I lost interest in it. I replaced it with
Luakit and mutt/trojita, irssi, etc..
* [Librewolf](https://librewolf-community.gitlab.io/): fork of Firefox,
without all the built-in stuff from Mozilla nobody needs or asked for.
I'm no longer using it, as compiling it is too much of a hazzle with
frequent rust incompatibilities..
* [openSUSE Build Service](https://build.opensuse.org/): for building
release packages in the cloud. They deleted my home project and I'm
no longer doing software development, really.
* [Travis CI](http://travis-ci.org/): for continuous integration on Mac OSX.
Don't care about building on Apple anymore due to all kind of reasons..
|