|
I agree with Sander in that creativity is often misplaced in development. Every now and again there just isn't an out-of-the-box solution and that's when the light-bulbs need to go on, but it certainly isn't a day-to-day requirement.
Is creativity an important attribute in a developer? Not really, I think it's certainly possible to be a damned good developer without having a single creative bone in your body.
Really speaking, what we do is craft not art and I'd put it somewhere in the "1% inspiration/99% perspiration" ball-park.
|
|
|
|
|
|
PeejayAdams wrote: Is creativity an important attribute in a developer programmer / coder? Not really
FTFY
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Sander Rossel wrote: Every time I've seen programmers get creative there was a (better) out-of-the-box solution already available. And that is the difference between a programmer and a developer.
I, as the senior developer get to be creative around the code we use however I continuously encourage team members to input into that framework. Without the creativity and imagination of all the team members we would be in a sorry state.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Serious question: Would you describe the .NET platform and its libraries as creative? Why (not)?
|
|
|
|
|
Totally. A messed up mangled labyrinth which incorporates both the dll hell and the jar hell with namespaces split in a idiotic number of packages, with no clear documentation (no, telling what the members are and what parameters they do accept is not documentation, it is code. What the members are supposed to DO with my inputs? What output should I expect? What meaning have those properties do?) and duplicate functionalities under different namespaces with incompatible data objects.
That's as creative as "modern art" goes, because it is not an engineered structure for sure.
GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
If you think 'goto' is evil, try writing an Assembly program without JMP. -- TNCaver
"When you have eliminated the JavaScript, whatever remains must be an empty page." -- Mike Hankey
If a coffee bean is between the Earth and the Sun, is it a Java Eclipse? -- Sascha Lefèvre
/xml>
|
|
|
|
|
Not now, it has become engineering, refinement and kludge. The initial concepts and putting it together took imagination and creativity sure. I've seen the framework USED creatively but the framework itself, not any more.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Mycroft Holmes wrote: The initial concepts and putting it together took imagination and creativity sure That's where we think different.
Someone had a (maybe somewhat creative) idea, let's create a new programming language that gets compiled to IL which can then, in theory, run on any platform our very own Java.
And from that point of view people started designing, according to a set of rules, and coding, according to specs.
People probably didn't follow all design guides and made some exceptions to common rules, but that's not yet creative.
Making the decision whether a value is passed as a parameter to a constructor, a method, or set as a property, is not creative. It's simply making a choice between a few well known alternatives. And that's how programming usually goes. At least the programming I've seen so far.
The creative part is WHAT to make, not HOW to make it.
And the WHAT isn't decided by programmers, developers, architects, or whatever you call them, it's decided by individuals, CEO's and managers and customers (and of course a programmer once in a while too).
At least that's how I see it.
|
|
|
|
|
Sander Rossel wrote: The creative part is WHAT to make, not HOW to make it. Hmm you may be right, I have always had a problem with what! The best I can manage is getting creative about how, but then you and peejay would call that craft. I will happily work with someone who can supply the what and be a bloody good craftsman
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Mycroft Holmes wrote: you and peejay would call that craft Exactly
I must admit it's hard to say what creativity is and isn't.
Take a writer, like a programmer a writer has a set of rules (the HOW) that are probably even stricter than that of a programmer, rules of syntax, spelling, grammar, lexicology...
Unlike a programmer a writer is creative because he's making up the WHAT to write.
A (fiction) book, contrary to an application, never solves a problem so the mind can roam free on the WHAT which makes it creative.
So now you understand when I say code should (almost) never be creative, it obscures the WHAT it's supposed to solve by introducing a new, temporary WHAT
|
|
|
|
|
Mycroft Holmes wrote: And that is the difference between a programmer and a developer.
I'm not so sure. I'm a lead developer and I design systems from the bottom up so I certainly wouldn't label myself as a programmer. I'd consider myself to be a creative person in general terms (I write, I make music, I cook and all the rest of it) but I see my professional role as being primarily that of an artisan rather than an artist.
Perhaps this perception is coloured by what I do - I've always worked on business systems and I'm back-end biased. If I'm designing a database, I'm generally working to a specified level of normalisation. If I'm writing a DAL, the requirement is very much for a robust and flexible DAL not something that will boldly go where no DAL has gone before. If I'm working on business logic, the prime directive is to adhere to the real-world business logic - there is no room at all for creativity in that, people can end-up going to jail for being creative with their accountancy. When I do work at the UI end of things, my customers expect a standard Microsoft look and feel.
In other areas of development (digital marketing springs to mind), creativity obviously has a bit more of a place and maybe that's where we should draw the distinction.
|
|
|
|
|
I have difficulty differentiating between a developer and an architect, I do both, and let me tell you creativity is a definite requirement when interpreting some user requirements. Writing a DAL, not in the last 15 years, I write the code generator that writes my DAL.
The database and the UI are where you need creativity.
PeejayAdams wrote: I'm generally working to a specified level of normalisation You mean you get a spec, how weird, the only spec I can remember are the one I have had to write - AFTER the app goes to production.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Mycroft Holmes wrote: You mean you get a spec, how weird,
I should be so lucky! Probably a lot more than fifteen years since I was given one of those ...
No, I mean either the level specified by the coding standards or designated by myself for the project in question (I too, live somewhere in the murky world between architect and developer). The point is, writing a database (whether it be 3NF or 5NF) is an exercise that revolves far more around good practice and comprehension of RDBMS than it does around creative inspiration. You don't need to be a Pablo Picasso or a Miles Davis to write a good database, you need to be a good database engineer (all too rare a thing, unfortunately). There might well be a great little concept or two at the core of a database but it's still essentially about craft rather than art and the most innovative idea in the world is no good unless the more prosaic elements around it are done properly. I can't help but come back to the 99:1 perspiration to inspiration ratio.
|
|
|
|
|
I can't agree with this. Best practices promote rather than limit creativity. Writing only to a framework is a sure fire way to have high coupling with a given framework. When the framework goes, so does all the crap you wrote on top. Curiosity needs focus, you can't be curious if you lack focus on what you want to learn.
|
|
|
|
|