Taco Steemers

A personal blog.

Articles tagged with software development

  1. Diagramming can be a valuable tool for thinking as well as communication

    Words alone are sometimes not sufficient. Diagrams can help us understand a situation in new ways, assisting with our thinking as well as communication. If you don't diagram already, try it out!

  2. On clarifying the status of demoed products

    Giving a demonstration of a future product or feature can be a great way to check if development is on the right track. Unfortunately stakeholders don't always understand that a demo can be very far from a finished product.

  3. Some files and information should not be in source control

    Which are they, what should we do with them instead, and how can we avoid mistakes?

  4. Why can the data we just stored on disk not be read?

    Data that our code writes to a file may not be accessible immediately after writing. One reason is that some output stream implementations use buffers, and prefer to write out their whole buffer in one go. In these situations, if we want to be sure the data can be read …

  5. Quick text manipulation, a practical `sed` example

    Suppose you have received a 10k line file of text in a format that is difficult for you to work with, like XML. You want to get some specific information from that file, and realize that getting that information by hand will take a long while.

    In some cases an …

  6. Programmatically creating scalable vector graphics (SVG)

    This is a small note on programmatically creating scalable vector graphics. For this we use Python with svgwrite which was simply the first tool I found. We will not be comparing different tools.

    When creating graphics for posters, programs, or the web there are some advantages in using scalable vector …

  7. Something to think about when storing or processing files in your web app

    Recently I saw code that looked like the following:

    function handleFileRequest
        variable file = getFile('storage/${params.filename}')
        send file

    This code readily accepts a user-supplied piece of information to retrieve a file. This is very wrong, luckily it was caught in a code review.

    It is wrong because it allows …

  8. Weak references, are you sure you want to use them?

    One of the projects that I have been working on lately is a standard C# codebase, a framework of sorts, for a particular niche category of software.  This is for a client that develops and uses a lot of this kind of applications in-house. Many of these have been written …

  9. Why I like the filesystem as an interface to the OS

    A short while ago I made a post about a daemon that I have developed. This daemon needs information about connected storage devices and their mounted partitions. There is currently only a Linux version. I tried to develop a Windows version too (in the same code base even) but that …

  10. Minimal Linux and Windows process spawn test

    I am working on a small backup utility meant to add value to other, proper backup utilities. At the least, I want this program to run on any vanilla install of a (semi-) recent Linux or Windows desktop version. I would also like to keep a small file-size, and prefer …