The Developer's Dystopian Future

The Developer's Dystopian Future by Ed FinklerEd Finkler

I think about how I used to fill my time with coding. So much coding. I was willing to dive so deep into a library or framework or technology to learn it.

My tolerance for learning curves grows smaller every day. New technologies, once exciting for the sake of newness, now seem like hassles. I’m less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity.

.....

I’m scared that either the job “web developer” is outpacing me, or my skills are atrophying.

Marco Arment links to developer Ed Finkler who is ageing and finding that keeping up with every flashy shiny new language and development framework is just exhausting and no longer interesting.

I’m almost 48 — Marco and Ed are most likely much younger — and as a former1 web developer I’m already living into my own dystopian future. I haven’t a clue about Ruby on Rails or Scala.  I dislike the formatting cage of Python and I barely know (or used) Objective C and Java.  I absolutely hate C.

But.   I’m going to try to learn the Swift language and the Node.js framework. I’m going to leverage my other language skills in Perl, PHP and JavaScript.

Then I’m going to learn how to break code.

Because the application layer is where the black hackers and criminals have gone.   The future will be filled with (more) data piracy and breaches, and cyber attacks.  So I’m learning how to break the code and start a new future.

I still call myself a web developer but the technologies have rapidly outpaced my motivation. But I have a plan.

Posted via Desktop Publishing Machine


  1. I still code.  I just don’t get paid to do it. 

Hack Isn’t PHP

[exif id="31380"]

Yesterday, Facebook announced Hack, a new language that also runs on HHVM. It’s like a “PHP++” — it adds optional static typing, generics, and a bunch of other enhancements and conveniences to PHP. Unlike HHVM, adopting Hack is a huge risk. HHVM was great because you could switch to it and switch away from it freely, with almost no effort (especially to switch away). You were still writing PHP. But once you convert a file to Hack and use any of its new features, it’s no longer valid PHP, so you must always use Hack and HHVM from that point forward (or undertake an expensive rewrite).Hack Isn’t PHP – Marco.org

Be careful not to be locked-in.

HDR photography with Raspberry Pi and gPhoto2 - Revision 2

This project allows you to create bracketed images for HDR photography using the Raspberry Pi, a supported DSLR camera connected via USB, and the gphoto2 Unix tool.

Project Overview

Last August, I initiated a project aimed at using a Raspberry Pi for bracketed image capture, intended for High Dynamic Range (HDR) photography with my Nikon D40. The initial version had limitations: it necessitated manually connecting the Raspberry Pi and waiting for the script execution to complete.

After rigorous testing, I have developed a more refined, Perl-based solution. This work is an amalgamation of several other projects and contributions, including those mentioned in the comments of my previous post.

Acknowledgements

I gained valuable insights from Zach Dwiel's gphoto2-timelapse project, which is written in Python. I adopted the startup script and usbreset methodologies from his work.

For understanding Raspberry Pi's GPIO functionalities, WiringPi was instrumental. Additional help came from this diagram and code on the TNET Raspberry Pi site, as well as information found on the RPi low-level peripherals page.

Technical Details

The project uses a Raspberry Pi, a supported DSLR camera, and the gphoto2 software. My Perl script refines an earlier BASH version to simplify the process.

Requirements
  1. Compile WiringPi to control the GPIO pins.
  2. Install usbutils to get lsusb, a utility for monitoring USB connections.
  3. Compile usbreset to manage the camera's USB interface effectively.

Running the Script

After fulfilling the requirements, you'll need to adjust the script for your camera specifics. Use lsusb to identify the USB ID for your camera and locate appropriate gphoto2 parameters. Then, initiate the Perl script using perl hdr.pl.

There's also an rc script for auto-starting the HDR script when the Raspberry Pi is powered on.

Final Thoughts

The script comprises one main loop and four functions. While the system is operational, there are still some inefficiencies; notably, gphoto2 takes about 5 seconds to initialise. Potential improvements could involve creating Perl bindings for the gphoto2 library or rewriting the program in C, although I generally avoid strongly typed languages.

By sharing this project, I hope to contribute to the broader discourse on Raspberry Pi and HDR photography, while also opening the door for collaborative problem-solving and further refinements.

You can find all the code on GitHub.