Daniel Klopper — GoDaddy
Daniel is a multidisciplinary designer with a focus on Product Design & 3D Visualization. Based in Cape Town, South …
To be honest, I still identify more as a programmer than as a designer -- I think that a lot of my interest in design is almost accidental, in that it comes up from learning about how the technology works (how does my operating system work? how do I make a web browser? how do I design a microchip?) and from learning about the history of that technology (what are other concepts and interfaces that were tried? does it have to be files, or apps, or windows, or tabs, or compilers, or Verilog code, or the command line?).
Then it became like, wait, this is all arbitrary, we can do this differently. There's other stuff we could try. There's other stuff that was tried that people have forgotten about!
And that inevitably intersects with design, since I'm thinking about new software and hardware concepts for people to use. But my background and approach is still basically grounded in programming, I think.
One way to see my work is that it's often about extending programming concepts 'all the way up' to the user/application level: file systems, end-user programming of physical objects, attaching provenance to things (my friend Melanie Hoff writes about how everything we do on the computer is already programming, but that programming is hidden). That's where I draw a distinction with design, which I think starts from solving problems that people have (how terrible, right?), instead of starting from the underlying material of the computer.
And I think the technical details of these systems matter -- the 'grain' of a computer system shapes what people make in it -- and I aim to create computer systems, like the Folk Computer we work on, that have new and interesting 'grains'.
I think certain specific demos have really influenced me -- I'm a big believer in the charismatic demo that surprises people and expands their sense of what computing could be; I kind of think that's the only way to convince anyone of anything.
I remember that I was struck by Johnny Chung Lee's work with Wiimotes (which still holds up great, still impressive, still amazingly low latency) when I was a kid, and I set that stuff up in my parents' basement and spent months messing with various offshoot projects and ideas.
I went on to follow this community that made hobby multitouch tables, places like NUI Group (if anyone remembers that), and I made one of those tables myself; this was back before the iPad, and there was a lot more optimism about multitouch gestures and spatial interfaces (and I'm disappointed at how conservatively we use phones and tablets today). So that was how I got started with new interfaces and physical computing.
Bret Victor (who I ended up working with at Dynamicland) has also been a huge influence on me: besides the physical computing stuff, a lot of his early work got me to think about more direct manipulation, faster feedback, more pervasive visualization of system state. I did Cruncher based on his early "scrubbing calculator" concept.
I usually work either from my apartment or from our studio space Hex House in Brooklyn, which is a big & sometimes chaotic warehouse / art space that we share with a bunch of people. Lots of papers printed out and whiteboard surfaces and 3D-printed works in progress.
I think I've found playing around with different (old or marginal) software systems to be very generative (ideally, you go even further and try to use those systems for something). There are all kinds of little details that you only pick up when using something and not from just reading. (Often, the most interesting things for a modern user aren't even mentioned in writeups/summaries.)
I spent a summer internship using the Acme text editor and some of the associated tools from the Plan 9 research operating system (and ideas from Plan 9 eventually inspired me to make TabFS). The way you build up a palette of tools as you use Acme, its unabashed preference for the mouse over the keyboard, the way you can dynamically and flexibly manage windows, how it's extensible through files and naturally integrates with Unix, its high power for relatively little complexity, the expectation that you customize it through programming instead of settings -- all of these have inspired me a lot.
Similarly, it took months of use for me to get fluent enough in the Dynamicland system to actually understand what was interesting about it; I didn't really get it at first! (Some of that understanding only came once I had to articulate it in writing, in my post about my Geokit project.)
Video games can be really good for inspiration; their interfaces tend to have a lot more 'juice' and creativity than application software.
Going back to the discussion of programming earlier, I actually get a good amount of inspiration from reading documentation and source code. You get this sense of the internal logic of the system and its creators' worldview. And you can learn that some capability is possible which (crossed with other things that you already had in your head) catalyzes a new project idea.
Running into old screenshots that I took years ago (of some book or interview or chat with a friend) is another source of inspiration; my past self was often into things that I've forgotten, was brainstorming ideas about some new software he was learning, was taking a class or something with a diverse syllabus (lately, I've been following the community around the Endangered Writing Network, which is looking into the history and practice of different writing systems).
Old screenshots are literally the most interesting/most shareable stuff that past Omar found, so they have a great hit rate for me. And I like the concreteness of the screenshot: it's a specific quote, set in a specific font, something that can have a striking phrase and that you remember sending to friends, not the abstract title or thumbnail or favicon of a bookmark.
I think a lot about the Nintendo Labo and this story of why they put a cardboard antenna on its RC car:
I've been enjoying seeing my friend Spencer Chang's computing-infused fortune cookies:
Something these have in common are that they are sort of about the importance of polish and surface detail, how things that are theoretically equivalent are not actually equivalent. They feel different in the hand, you value them differently, they have slightly different affordances.
Compare the fortune cookies with QR codes: you tap your phone onto an (NFC-based) fortune cookie to activate it, so you're looking at the cookie (and more broadly out at the world and the people around you), as opposed to when you scan a QR code and you're looking through your phone viewfinder.
The NFC cookie and QR code are formally equivalent, they do the same action, but they feel very different, and they'll probably lead you to use them in different ways.
Lately, I've been learning CAD to design a handheld Folk gadget (by the way, the handheld gadget is another example of the importance of the specific physical form of the thing in your hand, it produces totally different ideas than our ceiling systems do).
I've generally been trying Shapr3D, but there's a lot of good stuff out there -- TinkerCAD, SolveSpace, the bigger CAD programs -- they're all very powerful and interesting in different ways.
(I've been realizing that CAD is basically programming when you get down to it, but it's also inherently spatial and direct-manipulation. CAD software faces the same questions as programming does, about modularity and abstraction and algorithms, but it answers them in very different ways, and that's cool to see.)
Most of all, I've been impressed at Shapr3D's use of the iPad. (It's almost the only use I have for my iPad Pro, honestly; it's a pretty pathetic device considering the potential that it has.) It's clearly designed from scratch for the touchscreen and pen; it's one of the few apps that I've found that really uses the iPad, where I'm manipulating tools with both hands at the same time, and I'm directly drawing on the screen. I'm using my left hand to control the camera and my right hand (with pen) to draw. (almost like Acme's use of the mouse and keyboard) This creates a feeling of fluency and a quick learning curve that I haven't seen anywhere else. It feels like an instrument, not a panel of buttons.
In general, I think it's a good sign when the work surprises people. At a hackathon in college, I made an editor where you can live-reprogram a Game Boy game. I did a demo where I muted the game in the middle of playing it by commenting out the right jump, and then messed with the sound by changing the audio code live. People were surprised enough (while it also fit together and made sense to them) that they laughed when I showed it off.
I made this Breakout embedded in a PDF after reading through the PDF specification, and this also has that element of surprise combined with foreknowledge, where you think you know what a PDF is and what it can do, and it breaks your expectations.
I made TabFS, a browser extension that turns your tabs into synthetic files on your computer. Again, I think this works and people latched on it because they know about browser tabs, and they know how to manipulate files, and they can immediately see how to apply the combination of those, even though they didn't think of it on their own before.
A shared theme with all of these is that they came out of me digging into weird details of some technical system: the PDF standard, or how Game Boy emulation works, or FUSE filesystems.
Anyway, I'm drawn to making software that makes an argument: like I said earlier, I think this is the best way to argue a point about computing: you show some charismatic demo, and that communicates your argument in all kinds of small and big ways, and people use that demo as a rhetorical anchor point from then on. TabFS (and its associated writeup) is an argument about how software could be designed, with more general-purpose tools and objects, more conceptual elegance, end-user scripting instead of piles of features, and Folk is that sort of argument as well.
Try to create at least one thing end to end, on your own, where it fits in your head and you don't need to go through anyone else to make changes. It doesn't have to be anything big, but I think it's empowering to feel that you can make something real that way (and learn anything that you need to learn to do it), especially if you've mostly worked in corporate or academic team contexts.
And I think it leads to different results compared to a more traditional product process. I think that's how you end up with new, divergent stuff (that grows out of someone's personal vision), and it's also how you end up with really polished stuff (since you can invest an unjustifiable amount of time into polish).
Also: it's a nice feeling to create a tool that you use yourself on your own computer. It makes your personal computer actually feel personal again. In a way, that's the Apple advantage; they're making mass-market products that they can use themselves and introspect about and quickly iterate on. Very different from the kind of design where you need to do user studies and focus groups and A/B testing.
There's some argument to be made about individuals or small groups with a tight-knit, coherent culture (like the Bell Labs group that produced Unix), making tools for themselves, and how that might produce software that is better crafted, more conceptually unified, and better designed than a more mainstream approach.
I'm mostly working on Folk Computer these days: we have a monthly newsletter that you can subscribe to, as well as a GitHub Sponsors for the project (and an open-source guide if you want to set up a Folk system yourself).
I also have a personal newsletter for my personal GitHub Sponsors -- it's pretty occasional these days, but I sometimes draft stuff on there before posting it on my website, or do more speculative writing for the smaller audience, or talk about random side projects I've been doing.
Finally, I should mention my app Screenotate, which sits on your computer and OCRs and records the title/URL of every screenshot you take, so you can search them later. I still use it every day: I've taken over 50,000 screenshots in it over the last few years.