about:drewcsillag

Aug 25, 2019 - 10 minute read - programming

Making Coding Easier

I’ve spent a lot of time over the course of my career in other people’s code, and as a result, I’ve learned a lot about what kinds of things make code easy to navigate, and which things made reading and debugging code more difficult. The way I promote coding styles are reflections of those things which made things easier, and avoiding those things that make it harder.

When I get into a code base, I want to be able to easily:

Aug 19, 2019 - 8 minute read - refactoring programming

Defunctionalizing Quicksort

I’ve know for a long time that you could convert any iterative function to be recursive and vice versa, but up until recently, I only knew how to go from iterative to recursive in a mostly formulaic way.

I recently saw a cool presentation where he shows a refactoring to deterministically (at least AFAICT) go from a recursive function to an iterative one. It took me a bit of rewatching and fiddling as to how to apply it, but now having done a few exercises, I have a good feel for it, and I thought perhaps using a slightly more involved example might help explain it to others.

Aug 17, 2019 - 4 minute read - kanban organization GTD productivity agile agile organizer

I’ve Moved From Paper To…. Paper

(see here for the full Agile Organizer series)

I’ve been using the agile organizer for better than four years and it’s worked swimmingly. But I started working at Dropbox last year on a product called Paper. I figured I’d give Dropbox Paper a go to see how well it might fit in with the Agile Organizer, either for collection or whatever. Well, after 16 months, I’m still using Dropbox Paper to do AO.

Apr 23, 2018 - 4 minute read - watch divers-bezel

Even More Uses For A Diver's Bezel

(see here for all the posts about using a diver’s bezel)

I’ve written a few posts about things you can do with a diver’s bezel, and today, I’m adding a few more.

What Day Of The Week Is It?

My current daily-wearer watch doesn’t have a day of the week complication on it, and mostly, this isn’t a practical problem I have. However, when I’m off for a few days, I often don’t know what day it is – first world problem, I know. Fortunately, a diver’s bezel can be used to deal with this.

Feb 20, 2018 - 3 minute read - stationery organizer

How I Wound Up Using Blackwing 602s

Pens and Pencils

While I’ve had my organizer figured out for over four years (see here for the full series), I had struggled with the choice of writing utensil.

I realize this is more of a connoisseur kind of thing, as strictly speaking, my choices are wide, so if you’re not into stationery, you can basically ignore the rest of this post.

I started with the classic Bic Stick pen. While it has the advantage of being cheap and pretty bulletproof (at least for me), it’s not that smooth of a writer. I tried a fountain pen for a while, a Lamy Safari, which it’s a smooth writer, it suffers in that it doesn’t write well on the small sticky notes I use, and it hardly works at all on my Rite in the Rain pocket journals I use. The paper dust, which I presume is from the sticky notes, clogs the tip pretty quickly. I tried various roller ball pens (including the G2), but they smear easily, blot, and skip (probably because of the paper dust), and while they write better than the fountain pen in the RitR journals, that’s not saying a ton. The best was probably the Uniball Jetstream… until it would start skipping.

Dec 6, 2017 - 22 minute read - programming accounting

Accounting For Software Engineers

For my current job, I’ve had to learn how accounting works. In order to learn that, I did the kinds of things you’d expect I might. But one thing I kept finding was that some fairly simple concept seemed to be explained in a way over-complicated way, after I eventually was able to figure it out. I eventually figured out why, and with that, I think that if you’re new to accounting, and a software engineer, I think I can help you out.

Aug 12, 2017 - 1 minute read - programming

A Couple Of Good Reads For Programmers

A couple of good reads I’ve encountered in the last month or so that cover things I’ve thought myself, but are written much better than I would have:

If you’re a programmer/software engineer/whatever, read them, they’re well worth your time.

Jul 15, 2017 - 3 minute read - kanban organization arc-m postit levenger circa rollabind GTD productivity agile agile organizer

Staples Arc Paper - $100 vs. $20

(see here for the full Agile Organizer series)

I’ve now been using my agile organizer system for now going on three years, with a few adjustments, but the main principles firmly in place. I did however switch form factor from letter sized to junior sized paper (5.5" x 8.5", or the half-letter-sized) and 2x2 sized stickies rather than the standard 3x3. As not everything winds up on stickies, as I keep a running log of what I’m doing, notes, etc. as written on the regular pages, I did eventually need to get refill paper.

Jun 30, 2017 - 3 minute read - watch divers-bezel

More Advanced Diver's Bezel Use

(see here for all the posts about using a diver’s bezel)

I previously wrote about things that you can do with a divers watch bezel. Since then I’ve figured out a few things.

It occurred to me that most of the techniques I spoke about in the previous post work best when you have a fully transferred minutes bezel (i.e. a marker on the bezel at every minute), like you find on just about all Seiko Divers, the Rolex DeepSea, newer Omega Planet Oceans, Omega Semaster 300Ms, Fortis divers, as well as many others. If you only have markers every five minutes after the first fifteen or twenty, you can still use those techniques, it’s just harder as you have to mentally interpolate to find the precise elapsed time, or to set the countdown start time.

Apr 23, 2017 - 5 minute read - watch divers-bezel

How to Use a Diver's Bezel

a.k.a. The Suprising Utility of a Diver’s Bezel

(see here for all the posts about using a diver’s bezel)

I’ve worn a diver’s watch for years, and initially, I got one because I wanted a durable watch that I didn’t have to think too much about. The bezel on the watch was more of a decorative curiosity than something I planned much to use. Then I learned a few things.

Having had a moderately inexpensive diver’s watch for years, I was looking for an upgrade, and was considering a chronograph, and realized that I hadn’t really wanted for one in a situation where I’d wear my diver’s watch. For me anyway, because of the things I’ve discovered I can do with a plain diver’s watch, the only time I found I actually wanted for a chronograph was when I’d go for a run. In that case, I really wanted my Ironman watch which has things like splits and lap times, etc. Not to mention the relative weight of the diver’s watch versus the Ironman.