← Back to Blog

Photography Tips for Developers

Lessons learned from combining software engineering with travel photography. How thinking like a developer can improve your photos.

photographytravelpersonal

Photography Tips for Developers

As a software engineer who loves travel photography, I've discovered surprising parallels between writing code and taking great photos. Here's what I've learned.

1. Composition is Like Code Structure

Just as clean code follows principles like DRY (Don't Repeat Yourself) and SOLID, good photos follow compositional rules:

Rule of Thirds

Imagine a 3x3 grid over your frame. Place key elements at intersections:

┌─────┬─────┬─────┐
│     │     │     │
├─────┼─────┼─────┤  ← Place subject here
│     │  ✓  │     │
├─────┼─────┼─────┤
│     │     │     │
└─────┴─────┴─────┘

Leading Lines

Guide the viewer's eye, just like guiding code execution flow.

2. Lighting = Debugging

Bad lighting ruins a photo like bugs ruin code. Golden hour (sunrise/sunset) is your production environment - everything looks better.

Key lighting scenarios:

Time Quality Best For
Golden Hour Warm, soft Portraits, landscapes
Blue Hour Cool, moody Cityscapes, architecture
Midday Harsh, contrasty Shadows, minimal scenes

3. Post-Processing = Refactoring

Don't over-process! Like refactoring code, edits should enhance, not transform:

# Good: Subtle adjustments
photo.adjust(
  exposure = +0.3,
  contrast = +10,
  saturation = +5
)

# Bad: Over-processed
photo.adjust(
  saturation = +100,  # Nuclear sunset
  clarity = +50,      # HDR nightmare
  vibrance = +80      # Cartoon mode
)

4. Backup Your RAW Files

Treat photos like source code:

  • RAW files = Source code (keep forever)
  • JPEGs = Compiled output (can regenerate)
  • Use version control (cloud storage with versioning)

5. Iterate and Learn

Every photo is a commit. Review your work:

git log --photos --last-trip
# What worked?
# What didn't?
# How can I improve?

Gear Recommendations

You don't need the latest camera, just like you don't need the newest MacBook to write good code.

My travel kit:

  • Fujifilm X-T4 (lightweight, excellent JPEGs)
  • 18-55mm lens (versatile range)
  • Peak Design sling (quick access)

Conclusion

Photography and programming share a core principle: practice makes perfect. Take more photos, review them critically, and iterate.

Now get out there and capture some memories!


Want to see my travel photos? Check out the interactive map on my About page.