Category Archives: Computers

My Twisted Hack Day Project: Why is the Reactor Pausing?

Last week we had a twisted hack day at work. The project I work on has over a dozen twisted services, so this was right up my alley. I knew a couple of services were doing dumb things (like DB calls in the main thread) but nobody had gotten around to fixing the issues.[1] It’s [...]

Programming: We can do Science

Let’s say you’re messing with some Python and you forget how the global keyword changes scoping[1]. To find the answer you might try… Google Stack Overflow Actually reading the docs Asking someone who knows more about it than you …usually in that order. That’s not a terrible way of going about it, but there’s an [...]

Making Ag Faster: Profiling with Valgrind

These days, a lot of software is written to be “fast enough”. Since code bases can be very large, there’s no such thing as “fast enough” for The Silver Searcher. In fact, my main goal with Ag is speed. Improving performance is not always easy, but it is simple: Find the slowest part of the [...]

Building for Others

I like to write new code. Unfortunately, writing new code is only a small part of building something useful. The Pareto principle applies. Once you’ve written 80% of the code in a short, fun-filled period, you spend much longer finishing up little things. You have to debug some odd edge case, clean up messy stuff [...]

The Silver Searcher: Better than Ack

A lot of my time spent “writing” code is actually spent reading code. And a decent chunk of my time spent reading code is actually spent searching code. Lately I’ve started working with a larger codebase.[1] Both grep and ack take a non-negligible amount of time to search it. Both are slow, but for different [...]