API Design is Hard, and You Can Make It Better
Help developers build better APIs by sharing your experience
Join the DZone community and get the full member experience.Join For Free
tl;dr: Share your experience building and using APIs by filling out the DZone API design and management survey (~10 minutes estimated completion time; any API will do, not just web)
But in reality, most professional developers write code that basically moves some data from here to there and makes some decisions along the way. Even those of us who do scientific work that involves serious computation computation (solving PDEs, large-scale graph problems, chaotic ensemble simulations) spend a lot of our time figuring out how to bring the right data to the right spot at the right time, so our code can run orders of magnitude faster than the inscrutable weirdness the meteorologist handed off.
For us enterprise developers, the challenge of designing good software comes not in relatively well-bounded, low-level algorithm design, but in handling (selectively hiding) the basically unbounded complexity of real-world business processes.
Doug Engelbart called this challenge augmenting human intellect. Alan Kay thought of his other undergrad major, biology, when he conceived truly object-oriented design (see here, especially). Control over spatial and temporal interfaces is what lets life happen.
You're doing this when you write an API.
(By 'API' I mean any code you write with any significant attention toward how other code will affect and be affected by it.)
It's hard to get this right. You know this well because you've loved and hated APIs that other people wrote. And probably some you wrote yourself...
So we want to help make APIs better, for both builders and users, by helping developers share their experience showing and hiding information, reading and writing data, and wielding abstraction to coordinate systems without hideous, brittle spaghettification.
To do this, we're asking developers to spend ~10 minutes filling out the DZone API design and management survey. Do it to make the cell membranes grow, the ionophores efficient, and the set of chattering runtimes grow ever close to a society of mind.
Opinions expressed by DZone contributors are their own.