Connect With Us
Visit Us
250 West Nyack Road, Suite #200 West Nyack, NY 10994
Get Directions
Call Us Toll Free
877-GO-RUSTY
877-467-8789
Telephone
845-369-6869
Fax
845-228-8177
Departments
Departments
Departments
SUBSCRIBE TO NEWSCONTACT US
A few days ago a client made a joke about software/web development companies (i.e. us?). It was generally along the lines of “they just charge you for work that other people already have done.” Before I go on, I want to emphasize that this was just a joke, and the client is very happy with us and knows we are putting a lot of hard work in our products and services. He knows we do all of our web construction in-house and that when he speaks with us he's speaking directly to the developer, not some middleman.
I suppose he was referring to the plethora of tools, apis, widgets, and software packages that a developer may use when developing a product. These “third-party” modules might be licensed (non-free) or even open source (free). Some developers might use more “pre-made” tools than others, but it got me thinking, where can you really draw the line between something created “from scratch” and something that is “pre-made”?
For example, the lowest possible form of programming on a computer is simply feeding the computer a long series of binary data, in other words ON (1) or OFF (0) input signals, which cause a great number of “switches” to be flipped and eventually produce some form of output, maybe to add two numbers together for example.. But of course no one manually feeds 1s and 0s into a computer! Early programmers created assembler utilities to translate simple English comands into binary code to feed into the computer. After that they created higher level languages which would translate more verbose and feature rich language code (such as C or C++) into assembly language. And even further than that, scripting languages such as Javascript and PHP were created for the world wide web, focusing on telling the computer WHAT to do, as opposed to HOW exactly to do it.
For example, if you’re an iPhone developer, you’re using Apple’s wide selection of user interface widgets and controls to construct an app -- things such as cover flow, screen transitions, or multitouch gestures. Part of this is because you have to adhere to Apple’s "human interface guidelines" so it will be easily navigable by the user -- but more importantly it allows you to do more things with your app in less time.
So whenever you sit down to program on a computer (with modern programming languages and tools), you’re doing things made possible by an innumerable amount of milestones that were achieved before your time. You could just say that all these things make doing your job easier; but the truth is, all of these virtual, “pre-made” assistants that exist in the software development world allow you to take your work further and do more things; things that simply weren’t possible or feasible in years past.
It really isn’t any different in other industries where using new technology can advance your products & services further. It's just a combination of invention and innovation.
What do you think? Do programmers have it easy with the amount of tools and conveniences available, or are we pushing the boundries further?
250 West Nyack Road, Suite #200 West Nyack, NY 10994
Get Directions
877-GO-RUSTY
877-467-8789
845-369-6869
845-228-8177
1 COMMENT