• +43 660 1453541
  • contact@germaniumhq.com

Opinion

Documenting Legacy Code

We're almost done. We covered how to build the project, how to navigate around it using grep, ctags and UML, and also how to approach finding out the issue in a structured approach. The last step is to plan for the future, and document our findings.


Read more

What to Do When No Clue: Scientific Testing

Sometimes there's no end in sight. You have the map to navigate around the code, but the sheer complexity of the thing makes finding that one bug evasive. It's time for Scientific Testing.


Read more

Creating Code Navigation Maps With UML

Now that we have ways to build the software when we change it, navigate around code, and fuzzy search through it, let's see how we approach specific problems, and use UML to chart this map.


Read more

Navigating Structured Code With CTags

As we discussed last time, we have the basic commands for searching around random files. Before dwelling into IDEs, for files that have a more esoteric language, CTags is the answer.


Read more

Navigating Legacy Code

After we can build our code, it's time to start addressing making changes. Now, not all code is created equal, and there are better ways to move around than simply opening every single file. Let's see how.


Read more

Dealing With Legacy Code

In the next miniseries of articles we're going to deal maintaining Legacy Code. We'll go with how to absorb faster bigger portions of code, how to reason larger codebases, and general day to day life. Since there's no one size that fits all, your mileage will vary.


Read more

Using AsciiDoc (AsciiDoctor) for Documenting Everything

As we write things from READMEs, to actual documentation, to this blog, are we to use a unified documentation format? Are Markdown or AsciiDoc the answer? In my opinion yes, and let's see why.


Read more

Writing Software in 2019

As we enter 2019, I am using clouds a lot - the Germanium infrastructure is on Kubernetes, my last project was on AWS, I stopped using Java in my personal projects, and started learning Cobol for work. Here's why.


Read more

How Does docker.inside Works in Jenkins

In Jenkins you have the chance of running commands inside of seemingly random containers. You are able to execute commands in node, maven, or a bunch of other containers. Somehow the containers keep running even after executing a single shell command. How is this happening?


Read more

Garbage In, Garbage Out

One of the most time consuming things for this website, was cleaning up the tags. They used to be an unorganized mess, and I was adding new ones as I was writing new articles. A lot of the tags had a single article. Some were misspells of an existing tag. A strangely disconnected cloud of tags existed, and wasn’t exactly clear what connected where. At some point I just realized this has got to stop.


Read more