The Mind of a Developer
You might guess that all programmers are like that scene in The Matrix, staring into the flickering symbols on a screen, seeing beyond the code to the action it represents. If so, you're absolutely right! Except that the robots haven't taken over the world. If not, then you probably just need to watch the movie again.
In either case, I'd like to take a few minutes to share some insights I've learned in my time as a developer.
Everything is a Data Structure. No matter what kind of project we embark on, the first goal is always to understand what kind of information we're manipulating. What are the discreet pieces of this particular puzzle? What are the inputs and outputs of the machine we're building? How are they expected to interconnect? In the modern world, information is perhaps the most valuable resource. If we don't first "get our heads around" what we're working on, our chance of success is slim indeed.
Always Expect Exceptions. Every project has "gotchas"—those awkward pieces that just don't fit into an otherwise very straightforward solution. They can come at any time, but by far the worst is after you're looking back over your work, a couple hours before go-live. As a developer, part of my job is to anticipate where these one-offs and anomalies might pop up and to account for them. And as a corollary to that, part of my job is to be responsive and flexible when they do appear. I'm a professional deviation handler!
Efficiency and Elegance are Requirements. If you set out from your office to the local airport, you would plan your route according to the weather, the traffic for that time of day, and any known construction on the roads. You would plan to maximize your fuel efficiency, minimize your time behind the wheel, and take the safest possible route. Among all your possible routes, you'd probably stick to the major roads, and cross your fingers to make every traffic light green. The same is true for writing an application. You have to make plans for how to solve various problems in order to get the best balance of server resources, load time, and database performance. You use only the precise functions you need, but you build for flexibility and simplicity. If I haven't written an efficient and elegant program, then I often don't feel that I've really solved the problem.
Improvement and Optimization are Always Ongoing. Just like Six Sigma doctrine suggests, as a developer I embrace the fact that any solution can be revised and that no solution is final. Meeting the final deliverable functions of a given application is, of course, a requirement to any project, but a clever developer is also continually evaluating the application's economy.
Clarity is Critical. Working in a team – in any capacity – means that your work must be understandable to others on the team. The more complex a project is, the more important the need to use simple, concise methods that your teammates can understand. If a particular block of code looks scary or overly complex, a bit of documentation can help make sense of what you're doing. I need to make my code simple to understand for other developers on my team, and I rely on them to do the same.
Beauty is in the Eye of the Coder. Looking at lines and lines of code, for hours on end, may sound tedious to you, but there is a certain unique aesthetic to it. Carefully indented lines, well-spaced statements, repetitive and consistently formatted statements can be quite lovely. It's something like being able to listen to the steady flow of a waterfall, yet hear its melody—and be able to conduct its music!
Dialogs has a team of experienced developers who can see things about your busines that you may have missed. Let us show you how we can help you make your business better. Call us at 800-707-0106 x:123 or contact us today.
Recent Articles
You really should wrap that rascal.
If you’re not doing ecommerce, should you care about HTTPS?
Get off my lawn, you snot-nosed hooligans!
A cranky codger attitude will kill your business.
Sell! Sell! Sell!
Why your agency's interactive team isn't busy and what to do about it.
Is it the way of the future, or is it a fad?
It's hard to know when to adopt new technology.
Hey! Where is my commercial printer?
I think this internet thing might be catching on.
Securing sensitive data.
If I steal your web server how secure is all that encrypted data on the drive?
Do your websites look like they were built with Legos?
Blocky approximations of the real thing may be trendy in video games, but have no place in professional web development.
If your website is a business necessity, then so is Google.
People who think SEO isn't important are ... well ... I don't know what they are because I can't find them.
Of sailors and webhosts ...
There are three kinds of sailors ...
A secret decoder ring for websites.
Buying a new website is not as mysterious as it may seem.
Our customers say it best
Dialogs is an amazing strategic partner. They provide a solid foundation to execute strategies for my clients needs and they make me look great in the process!
— Kristina W.