Among other things, I have come to the realization that the way that our schools are structured (in the US anyway) promotes this type of thinking you're talking about.
There's a reinforcing feedback loop taking place:
1. You have no natural interest in (say) algebra, possibly due to lack of knowledge about what it is and what it is for. This is never explained to you in a way that makes sense to you.
2. You don't spend time thinking about algebra, and neither does your subconscious.
3. You do your homework, but don't care much, and don't care to learn. Because you don't care, you don't care to understand deeply. You're now stuck learning in a shallow way, or, in other words, memorizing inert knowledge. The knowledge is mostly unusable to you, and the homework and tests are structured in such a way to allow shallow understanding to get by, so you're fine. You mainly care to meet the expectations of the teacher (get a good grade and be viewed favorably), so all is good.
5. Because of the above, you mostly suck at tests, and mostly suck at meeting the teacher's (and peer's) expectations. You suck compared to others in the class.
6. Because you don't fully understand the implications of what you're learning, you continue not to care. Because you are sucking, you care even less.
7. See #1 with the same or other topics.
I'd recommend reading about Carol Dweck's Entity vs. Incremental Self-Theories on Learning. Incredible stuff.
"The amount of skill that you have in a certain area is proportional to the amount of work that you put into it."
Instead of using the word "work", I would say "proportional to the amount of time you and your mind spends on it." One reason people are significantly and seemingly naturally better at certain skills is because they are naturally drawn to it. Things you are naturally drawn to you both consciously AND subconsciously spend time on. In the past I've never spent much time contemplating or trying to understand the intricacies of the stock market, and neither has my mind, and I have never had much interest, and so I'm not a particularly skilled stock broker.
The right strategy and appropriate effort are much more important than results.
Can't upvote this enough.
Becoming a great (or even a competent) designer or developer takes time and practice. There are no shortcuts.
The issue is that many of us think that without becoming great (or even just competent), there's little point to attempting it at all. That's where I come in.
Both design (a very diverse field, with sub-specializations and sub-sub-specializations, et cetera) and software development (ditto) are _disciplines_. You don't have to master them in order to become conversant with the fundamentals.
Designers can learn the rudiments of programming. Variables, logic, control of flow. These are not difficult concepts to master, and they are universal among languages. Even the principles of object-oriented programming are accessible without going to a four-year college.
The same is true of design, however skeptical programmers may feel about it. Artistic ability seems to be innate, creativity so hard to define that programmers write the field off, like wishing that you had red hair when it is brown. Nothing could be further from the truth.
Others have pointed out in the comments that the best course of action is to start small and localized. Learn about typography; it has a lot of impact given that we read a lot of text on our screens, and it's a field with a lot of simple, prescriptive rules. Learn a little about cognitive theory—how our minds process our sense of sight, and how you can help the viewer's mind process your message more efficiently. Learn a little color theory.
As software engineers, we are constantly learning a new language, a new framework, a new version of something. I fail to see why design topics are verboten in this regard, except for irrational fears. You're going to suck at first, but is that really different than how good you are the first time you pick up a foreign framework and start playing with it?
Inexperience at design means that you shouldn't be leading but that does not mean you cannot contribute!
As others mentioned, maybe if programmers wanted to, they could put in the 10k hours and be designers. The tricky word there is want, and it's not very easy to change core desires. And wanting isn't always enough, some people can put in the 10k hours and still suck. Some people can immerse their minds in a subject and still suck. To me, all-equal ability is as mythical as natural born ability.
The OP is saying that a lot of people take the "I'm not a designer" label to heart and think they could never be one.
If you're just starting out, you have to break it down a bit into some of the component parts. Typography, composition, color. Print design is different than web design. 3d design is another thing entirely; and so on.
Let's say the goal is print design. Get hold of a layout program, such as Quark, InDesign, or Illustrator. Start by doing basic things like business cards and letterhead. Work on just the type first. Use only 1 font at first; then different weights of the same typeface. Then start trying to add in drawn elements or even just geometric shapes.
Remember: if it doesn't work in black & white, it won't work in color. When you are ready for color, keep in mind that the 3 strongest colors in design are black, white, and red. Black and red are the easier of the three; so put extra attention into the use of white (negative space).
I'm a programmer who isn't so hot with design. But I certainly know how to use a program to layout objects;
that's trivial to learn on the grand scheme of things.
What I (and other non-designing devs) don't get is how to know what "doesn't work". I have at most a fuzzy idea of what are considered good and bad designs, much less how to produce them.
One of the biggest issues is the lack of feedback. With beginning programming, you are getting constant feedback from the computer. It even tells you where you are going wrong (line numbers, variables, etc.)
Design lacks such an objective feedback system. Sure, there's the times when your friends will agree that iteration B is superior to A. But actually getting feedback on what to do next? Pretty tough.
What is the design supposed to accomplish? What should it convey? What kind of reaction should it elicit from the viewer? While these ideas may not be completely objective, they can be expressed in written form. Doing so is one way to bring some objectivity into the the process, as well as a way of keeping everyone "on the same page." Adhering to the spec is a also a good way of finding out if your spec is useful or not. If you find the design veering away from the brief, go back to the beginning and start again; re-write your brief, and re-iterate the design.
Now a quibble about your mention of knowing how to use a program to lay out objects. (Note, "lay out" is the verb and "layout" is the noun.) One such "object" is of course type, and learning how to size, lead, track and kern your type is more than just placing objects (letters) in proximity. Knowing how to use the program is one thing; achieving great visual results is another.
How to learn what works and what doesn't? Get some design annuals, subscribe to design magazines, start reading design blogs. Most importantly, find a good designer who will critique your work. All of these activities will develop your eye and your design sense.
The best way to start is to hear how a well spoken designer will explain their client's problem, how they worked through it, and pick it apart. This will help you understand the dynamic conversation between elements that occurs in design. I would recommend reading a few books from older, well regarded designers who's work has stood the test of time. Paul Rand, Herbert Bayer, and designers from the Swiss design movement stand out as good examples of clear, well reasoned design that is easy to understand.
While doing this, I would recommend that you try taking some of their designs, and recreating them. Try making a version that looks web 2.0 like, one in black in white, etc.
A good place to start is to study Bauhaus. There's tons and tons of books on Bauhaus. It's ridiculous how influential Bauhaus was on everything in western culture.
Design isn't about how much knowledge you've accrued, it's mostly a journey of self-exploration through work, and looking hard at what you've done in relation to yourself and others.
If you can find someone who will give you an encouraging AND bullshit free take on your work, that'll be a huge help. Oh, and remember how much your first code sucked? Your first design will suck just as hard.
Sure I could spend a lot of time to learn how to take it to say 90% but I think a lot of the time that is better spent focusing on my core areas.
I guess this is similar to a designer who will jump in and modify view code to work better with their design, but leave the heavy lifting on the backend to the programmer.
Without arguing the efficacy of the TigerMom approach, this is indeed why a lot of parents force their kids to do something - you may not have a knack for it at first and be tempted to write off that it just isn't for you, but you need to put in a little more time to really figure out what your true learning curve for something looks like.
One interesting question is whether you really love doing something or just love doing it because you had a knack for it initially and picked it up quickly (which results in a positive feedback loop: you spend more time on it and get even better at it compared to the things that you didn't have a knack for at first). I think college really hammered that home for me - before, I just really liked a lot of math of science because it seemed to come naturally, but to find what you really love doing, you have to hit the wall and see if you enjoy it when it becomes a struggle.
However, one of the best pieces of advice I ever got from one of my favorite mentors (Bob Muglia) was to never take a job where you have to do something you know you are not good at.
I have always sucked at detailed-status-list tracking. I eventually figured out how to compliment myself with others who could do it. However, at one point in my career when I was looking at new opportunities I saw one that would have forced me to get good a being very detail oriented. When I showed Bob my potential job options and asked for his advice he told me "Don't take the detail job. You will suck at it and you will hate it. You have other super-powers that are valuable and you should focus on finding jobs where you can apply those."
You CAN do anything, and you SHOULD try everything. But in the end, you'll be most successful if you focus on what you know you are great at.
"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects". -Robert A. Heinlein
Then this got me thinking about footnote #2 in the essay - that perhaps it is a net win to call oneself a scientist, which implies that one is not committed to any belief in particular. I was pretty pleased when I read this; "great, I'm a scientist, I must be pretty open-minded!" Easy.
Except that - and this article seems to highlight the point - if you box yourself into being a "scientist" (I will suggest that many of us techies consider ourselves scientists, or at least science-minded) then you run the risk of excluding yourself from non-science things. Things like graphic design. (or marketing, accounting, or musicianship.)
So. I am not a scientist! Not a techie. Not a designer. I am a person who is pretty (darn) good at technology and still has a lot of difficult things, like graphic design, to practice and get better at!
I am a programmer, and primarily I identify as a C++ and Python programmer. Compared to other languages, for a given problem (unless it's truly massive, where the efficiency/expressiveness gain over the other two is large to offset becoming an expert in it), I am almost certainly going to provide an adequate solution quickest in one of those languages.
But if you say that Python is slow, doesn't do concurrency well, or has trouble scaling to truly large, 100+ programmer codebases, I'll agree with you.
And if you call C++ a large, ugly, language with a ton of ways to really screw yourself, and that is tied to a slow edit/compile/debug cycle, I'll agree with you there too.
Here perhaps maybe enlarging my identity helped, if I was just a Python programmer, I wouldn't see how static typing and a really good code searching system would help getting an anchor on a large, complicated C++ code base. Those static types and non-virtual functions means that yes, I can see every place that this particular function is called in our entire code base without having to dig all that much. And if I was just a C++ programmer, I wouldn't know the bliss that is hacking a 200 line program in Python, and solving some mildy complicated but mostly self contained problem in few hour session, all without the bondage of makefiles, compiles, static typing and seg faults.
When I was younger, my best subjects were Art and English, and my worst subject was always Math. This had continued to be true, as I consider myself much better at design than at coding or problem solving. I wouldn't say the dichotomy is necessarily true or false - I hate to think we are stuck as one or the other, and I certainly know people who are talented at both.
On the other hand, in my observation, there always seems to be an inherent aptitude - I struggle and work a lot harder with "technical" things; but it can be overcome - I am still a CS student at top university, and am not a phenomenal coder, but I can keep up. For so-called "technical" people, you may or may not believe in the dichotomy, but that doesn't mean hard work can't make you better at "creative" work than "talented" others.
I long the day when software engineers start looking at themselves as artists. Take this from someone who isn't an engineer. You take your ideas and turn them into something others can interact with, play with, control, morph, do other freaking cool things with and sometimes they even get a feeling/emotion out of it. That's f&&ing art to me.
The end idea may well be an emotive expression, but there's a lot of disciplined craft that must go in to creating the piece.
Similarly, an architect may design an evocative history museum for example, but it's an engineer that must get the thing built.
I do not know if this is what you were looking for, but I have seen some interesting behaviors arise depending on how the system is set up in Dark Mists. Usually it has to do with where the rewards/incentives lie, such that behavior can be guided towards it, and it is always a new lesson in humility when unexpected incentives appear.
Yet in other ways, there is the outside-game community with its rules and ethics. Here is a specific example: Players are concerned about gangs of other players logging in and coordinating because they want to believe they play a game in which the coordination is completely in-character... a sign of the work we have put into the game to focus it on role-playing.
When designing an RPG (stress on the role-playing part), I have learned that it is not just about the game mechanics and features. It is also about building the community, the mini-society.
I remember one game that did, by mere coincidence, serve as a social commentary - Volcanic Airlines (http://www.miniclip.com/games/volcanic-airways/en/). I believe was released just after April 2010 eruption of Eyjafjallajökull. It got an interesting reception here in Poland.
Not long before, the president of Poland along with many other people died in a plane crash. An official funeral was held, and many heads of states from all around the world announced that they will be arriving to Poland. Many of them later canceled their visits because of the ash cloud. However, the president of Georgia, M. Saakaszwili, arrived late, taking the trip through five different countries to get to the funeral. It made a great impression on people in Poland, and one of the effects was that the video game I mentioned before, the "Volcanic Airlines", was circulating around the polish Internet labeled as "Saakaszwili flies to Poland", or something similar.
Here is an excerpt:
Olmsted had no formal design training and didn’t commit to landscape architecture until he was 44. Before that, he was a New York Times correspondent to the Confederate states, the manager of a California gold mine, and General Secretary of the United States Sanitary Commission during the Civil War. He also ran a farm on Staten Island from 1848 to 1855 and spent time working in a New York dry-goods store.
His views on landscapes developed from travelling and reading. When he was young, he took a year-long voyage in China. And in 1850, he took a six-month walking tour of Europe and the British Isles, during which he saw numerous parks, private estates, and scenic countryside. He was also deeply influenced by Swiss physician Johann Georg von Zimmermann’s writings about nature’s ability to heal “derangements of the mind” through imagination. Olmsted read Zimmermann’s book as a boy and treasured it.
This is what happens when you identify with your chosen profession too closely. Psychologists refer to it as a persona: http://en.wikipedia.org/wiki/Persona_(psychology)
It's tempting to believe that others have placed these kinds of restrictions on you, but the truth of the matter is that we put these restrictions on ourselves. That's the truly important discovery: you have control over the mask you wear (albeit not unlimited control).
This is my usual line when somebody ask me what I do for a living.
Still, I can see in many people's eyes (especially girls) a spark of prejudice: ( IT Guy = pragmatic, heartless, frustrated, framed boring nerd )
Heh, this realization does change your life... very, very slowly. Catching up on all those hours invested is hard. Making them pass pleasantly is also a challenge. Spending all day and half the night doing something is easy when it's a source of pride and your refuge from all the stuff you aren't good at.
I spent years aspiring to be good at music. I took piano lessons for years as a kid, even after my parents told me I could stop. I played saxophone in junior high orchestra band and junior high jazz band. I wised up in high school, but then in college I wasted a few hundred bucks on a guitar. I sold it after a month, but then later I started going to the music building several times a week to play the Hanon piano exercises. I actually kept it up for several months before I stopped. No real music, just Hanon.
Music was a waste of time for me because I absolutely hated it. There was the generic pleasure of improving at a skill, but that was the sum total of the pleasure I derived from it. My entire goal in learning music, from the time I was a child until I wasted that fifty or so hours in college, was to play music that I liked hearing and that other people would like hearing. Of course, I was so far from that.... I remember as a child being conscious that my older sister's playing bugged the crap out of me. The mistakes, the awkward tempos. And she was much better than me, five years ahead and also better for her age than I was. The entire payoff for playing music was always years away, even assuming I suddenly became extremely dedicated. Every hour between me and my goal would be me enduring the misery of producing noises that I disliked and was ashamed of. I thought that was just the way it was. I flagellated myself for not being disciplined and far-sighted enough to pursue that distant dream like so many other people did. I knew some kids just enjoyed making bad music, but I didn't think they were the ones who would be good at music someday. I just thought they had horrible taste. The ones who were actually good had clearly been tougher than me; they had fought through all the shame and humiliation of playing badly. They were fierce and ruthless with themselves, and finally, after thousands of hours of hardship, they were able to enjoy the fruits of their labor.
Nowadays I know that's not how it works. I'm more realistic with myself. I could be a great dancer before I'm forty, except that I don't really like dancing. I could be decent at drawing, except that I don't really like to draw. Every couple of weeks I get a great idea for a cartoon and wish I could draw it, but I really don't want to sketch crummy cartoons every day so I'll be ready when I get a good idea. Programming, though.... Fire up gdb and look at a core dump? Why the heck not? Install a new library and play around with it? Fun! Read through some code, figure out how it works, and be on the lookout for a memory leak? Ooh, kind of exciting, I might be the one who finds it.
Those aren't especially stimulating activities, and there's no glamor in them. They're nothing I could brag about to my friends or show off to a cute girl. (I'm working on HTML and CSS now to fix that :-P) They're just something I usually don't mind doing and often find pleasurable. I never chose to be good at programming, and I actually took a pretty snobbish and dismissive attitude towards it until I found myself making a living at it. (Looking down on it was probably what enabled me to believe I could be good at it. Pfft, I can do this, any idiot can do this, especially if he's half-autistic like me.)
I still get off on stupid tangents, though. I took a vacation several years ago and was extremely frustrated with the performance of my point-and-click digital camera. I ended up buying a DSLR, and suddenly I felt the pressure. I had to become a good photographer. My friends were taking pictures and putting them on Flickr (now on Facebook) and I had to keep up. I couldn't suck at taking pictures. Especially not after I bought the DSLR. I bought a crapload of books and read at least a third of the ones I bought. I read on the web. I took classes. I took my camera with me to places and took pictures instead of having fun. The fact that I was taking shitty photos became a huge monkey on my back. Still is, kind of. Last fall, I took an amazing trip to a place I'd been wanting to go to for years, and I obsessed over the quality of the pictures. When I got back I immediately looked through them and couldn't find a single one I liked. For weeks I procrastinated processing them. Finally I did. They sucked. It was awful. Now I don't even know if I should take my camera with me on the next vacation I take.
So please, let me indulge in the misconception that I am just a "technical type." That way I can take pictures in peace, without knowing that it is really my fault and my shame if they suck, and that I should be putting in the hard work so that one day I will be competent and my friends will not have to endure my shitty photos. No, my shitty photos are not my fault. I am just not a creative type. I am a techie. Leave me alone and stop reminding me that all my artistic deficiencies are just one big character flaw!
Your example of music : though I've been a professional pop musician 20 years ago, I'm currently learning Beethoven's 8th sonata. I don't plan to ever play it in a manner "competitive" with any classically trained pianist; I do it just because of the pleasure I get from playing it. I don't give a smoking fuck of what any potential listener would think of my (pretty poor) interpretation.
I've never stopped making music. I understand that people who've been constrained to learn some piano when young abandon it later, because they never really wanted it anyway; but apparently you decided to learn it yourself, then simply throw it away later judging you're not worth it? Doesn't make sense to me.
Imagine yourself in the operating theatre, surrounded by nurses and technicians as you prepare to remove a brain tumor. You're about to save someone's life, and earn $5,000 doing it. Wouldn't you want to do that?
Now, would you really want to spend 12 years memorizing facts about obscure diseases first?
How about being able to do informal gymnastics, like you'll see on a youtube search for "tricking"? Wouldn't it be pretty cool to, while walking across a lawn with some friends, decide to do backflip with a 270 degree twist? And actually have it work?
All you'd have to do is around 10,000 hours of grueling exercise and step-by-step drills.
- everyone sucks at taking pictures. The difference between a good photographer and a bad one is largely how well they curate their work. Don't go to the MOMA and get depressed because the walls are lined with incredible works by incredible photographers - realize that it's an incredibly selected subset of everything they've done. After all, you're taking decades of a career and choosing only the finest, oh, 50 photographs?
- your keep rate shouldn't be much above 1%. 99% of the pictures you take will be shit, and that's just the natural order of things. Throw these out - preview them at home from the SD/CF card, and make sure none of them ever survive to your HDD. Treat the remaining 1% carefully (back them up). Spend time editing them and looking at them with a critical eye to see if they can be better.
- slow down, think more. New photographers mash the shutter release as if it dispenses candy, particularly in the digital age. Put a jar on the kitchen table at home - put a quarter into it for every single picture you take (or $0.50, or $1, depending on what is good for you). Donate this jar to charity or something - the point here is to force you to take fewer pictures. You will work harder for each one, and think more before each shot, and these will make your work dramatically better. Personally, I do this by shooting film. I rarely leave home with more than 50 exposures or so in the camera/bag. On a good day I'll shoot maybe 15 pictures.
- go shooting more. What work inspires you? Ansel Adams? Winogrand? Cartier-Bresson? Look at lots of photographs and think about what makes them great and what you like about them. Then go out and try to "see" the same images in real life. A photographer's eye is far more important than their ability to operate a DSLR.
- join a critique group. Yes, this will suck for your ego, but it is extremely helpful for your development. Join a small group (5-10 people max) so it's not a complete zoo. These people will tell you how to make your pictures better and give you actual directionality in your improvement.
Lots of people in photography are hackers. If you're ever in Seattle, give me a shout and we'll go shooting. Otherwise, keep snapping.
Can you suggest a place online for finding a critique group?
It was because I made my skills compete with each other.
Even the assumption I can draw as nicely as I code is ridiculous. Lately I've tried to put less highlight on the outcome and enjoyed the process in its own beauty.
In the light of your lack of progress, I wonder whether it is because you set standards that are too high or your dislike of music made the work harder than it has to be?
I have to say you sound like a very determined person to be willing to practice so much Hanon despite not liking music in the first place
Actually, Hanon was easier for me than a real piece of music would have been, because I was able to treat it as a purely technical exercise. Nobody would want to listen to it no matter how well I played it :-)
What about your programming projects. Do you (like the rest of us) have problems with releasing early and often?
How about if you treated music this way too - release early and often?
Before you give up, try this:
Next time you're out taking photos, commit to throwing away 75% of what you shoot. Now, relax, have fun, and shoot with the goal of filling up your flash card. Forget about everything you've read about aperture settings and exposure. Leave that stuff for the people that depend of their photos for their income.
Shoot in auto mode. Do stupid shit with your camera. Anything that you think will make you look like an idiot will probably make a better picture. Lay on the ground and shoot pictures of people's feet, hold it over your head and blindly snap portraits of your family. Get in people's faces to the point where they are uncomfortable. Switch to aperture priority and set it wide open. Take 20 pictures of the exact same thing 12 different ways.
Then go back home and throw 75% of them away. Most likely, you'll still hate 99% of the ones you saved. But come back to them in a year, after you forgot you shot them, and you'll find you love them.
But more than anything, relax and have fun first. Because ultimately, no one really cares if you can take Pulitzer-winning photos or not, they just want to reminisce about that trip the family took to the Smokey Mountains and joke about that horrible hat they were wearing. And if you can have fun doing that, then you can get better at taking photos.
I couldn't disagree more with this. I'm not a professional photographer but knowing basics about aperture/shutter speed/ISO is pretty important to knowing how to get the right look that you want.
At the very least, just put it on Apeture Priority and set the ISO/Aperture manually because then you'll develop an instinct as to how to adjust to certain light settings, and how well your lens does at specific depths of field.
It enables me to focus on the subject: family, animals, plants, landscape, whatever. The algorithm has a lot more patience and competence for the secondary details.
People CAN basically use Full-Auto on a DSLR which wouldn't hurt their images but I think that they miss the nuances of a lens or how making slight adjustments to the settings will create a different effect. I don't see any personal benefits from ignoring details of the craft.
I didn't deny people can use these settings to make the photos really shine, but for non-professionals, it is -- from my point of view -- wiser to focus on the people you're taking photos of. Amateurs should really master angle, position and so forth before diving into the world of technical minorities - which is often not the case.
Other than that I also get the feeling these days, that you can't be a good coder without any ideas about design. To understand how we construct software we all naturally learn the interface to processors, electronic waves and so on. Why should learning about the human interface not be as important for understanding how we should design our software. Also we all need to express what we have in mind, which also needs some design abilities to create appropriate ppts and prototypes.
I don't design. I could, but I know that the time I would spend designing would be twice the amount compared to a skilled designer. Instead I ask someone who loves design. collaborate with them to create something awesome. We bash and we chastise, but always realize that its about the work, not the person or his/her skill level.
This does not translate well to corporate, but for the better it really should.
The real dichotomy that this article is getting at might be effectively described as artistic versus non-artistic, but even that is not a complete description of the distinction. Maybe it comes down to the old left-brain/right-brain thing?
I used to call myself non-creative, until several good friends united to point out that I do create things, just not things that you could plausibly turn up in art galleries.
A good definition I found somewhere is that creativity is the ability to create solutions for a problem, any kind of problem. A lot of creativity (if not all creativity) is the ability to assemble large objects from smaller ones, such as writing symphonies, designing a motorcycle engine, or building a computer program.
Creativity is the ability to create new things. It is the ability to hear 100 jokes and make a really funny new joke, or to bring a number of words and use them in a new manner to create a creative poem.
I find absolutely nothing inherently creative in a person's ability to follow musical notes and thus play the violin. The same goes for painting, and any number of other 'creative' professions. But to excel at these fields creativity seems to be necessary. Writing a novel without creativity will only produce a dull one that nobody wants to read, and the reviewers will say 'there is nothing new in it', because the author hasn't used creativity to produce new material.
Programming is one of the most creative professions, it is hard to think of a better example of a creative profession, because programming is problem solving, which is creativity.
Bad programmers either lack the skill and experience to build solutions, or are simply not creative enough to do it. A person's creativity is limited by their ability to hold complex problems in their brains, and different people seem to have different capacities of this brain 'RAM'.
After loading a complex problem into our heads, we then need skill to manipulate the objects to make something beautiful out of them, and this ability can be severely limited by the lack of knowledge of the field. It will be hard to create elegant mathematical solutions to programming problems without some knowledge of math.
I think of it as the ability to see the unseen. A very non-crisp way of describing the ability to see a solution amongst a pile of symptoms or pain points. A sculptor sees the figure 'inside' the stone, an engineer sees the solution 'amongst' the available resources.
Now if I could reliably interview for it I'd be all set :-)
However, if the robot could create new algorithms on the fly and could use them to tweak the way it played the guitar for the better, then we could say it is a creative robot.
Creative guitar players, like the second robot, invent new ways of playing a particular piece of music, or just a few seconds of it, to induce specific reactions in the listeners. This is creativity, and it seems to be rare not common, possibly because of how difficult it is to master the notes, and then to build rapport with the audience and manipulate their emotions.
At this point, I can hardly make nails. But stretching myself in such a dramatic way has really fueled my creativity, even when it comes to developing software.
No matter how much I struggle, I know that in 20 years of systematically pounding away on evenings and weekends, I'll have enough skill to make some good stuff. I'm confident that I can become a ABS Journeyman, and perhaps a Master if I live long enough.
Starting here: http://www.pyrocam.com/life-of-riley/comic.php?strip=25 and continuing throughout the entire 600+ comics of the series. That particular plot arc follows Dan, the artist, who unlocks his technical side, eventually ascending to demigodhood by learning to leverage both types of creation.
If you want an amusing distraction, it's worth a read. (Also interesting to see references to some of the other major web comics of the day... many of which are now long gone.)
I'm not sure how much natural talent there is for various skills but I do know that believing in natural talent is harmful.
That sounds like the argument that you should believe in God because religious people are happier. I don't see why the truth is harmful: you can get better at just about anything with practice, and the degree to which that happens varies with the individual and activity.
Sometimes it feels like the Hacker News community wants to "place restrictions" on expressions of humor.
In order to be creative, or more specifically "artistic", you have to be comfortable with the irrational. In fact, you truly need to be able to appreciate the irrational.
Most technical people I've met (particularly engineers) can't make that jump, and it's not easily taught or learned. By definition, there's often not really a rational way to go about irrationality.
All the great Renaissance painters were as obsessed with math as they were pigments. Their art is accessible, so probably appears rational. Modern art is also rational, but understanding why it is rational sometimes means the viewer needs an understanding of its history, or the artist's intentions.
Cubism is a great example of this: it might appear irrational for the artist to paint a subject's eyes and their nose on the same plane, but it is not. Cubism is a process in which multiple vantage points are presented at once. Even though it is not a mechanical process dictated by strict rules, it is indeed a process.
subject.angle = random() * 360
# copies a nose, eye, etc.
feature = copy( subject.facial_features[ random() * 10 ] )
paint( feature )
But that doesn't answer my question, which asked how to write a program that was capable of outputting the Mona Lisa while rationalizing the decisions it is making. Shouldn't we be able to feed everything we know about the Mona Lisa into a program so it could generate something similar? If not, why not?
I'm actually having trouble thinking of an important human endeavor this was not in some way rational. Maybe some `Outsider Art` created by mental patients? Programmers who work in `BrainFuck` or `LOLCODE`? I guess I'd only think of something as irrational if I thought a reasonable person would not come to a given conclusion based on the same inputs (such as knowledge, skill, experience, etc).
In other words, this sounds like an "irrationalism of the gaps" theory.
(Let me guess, that answer doesn't count because it cannot be quantified.)
Just because something can be explained by some sort of progression doesn't make it inherently "rational"
A rational statement.
I think one common reason people think they can't do something is because they try once, fail, and attribute it to the idea that they're "not that type of person".
Too often on the Internet, irrationalism gets a bad rap, when in reality it is responsible for generating some of the most interesting and profound material. Rationalism is the dogma of the age, and it is firmly entrenched in engineering culture as the way of building systems. It isn't the only component -- we need systems where the designer had a clear vision, and a certain taste that pervades everything. Engineering students should have at least a basic background in aesthetics, because the concepts are important to building systems that have empathy for their users. (Your mother doesn't want to learn Linux, nor should she.)
Case in point: Apple (mostly).