Hacker News new | comments | show | ask | jobs | submit login
Are you a technical person? (github.com)
195 points by johnfn 2025 days ago | hide | past | web | 98 comments | favorite

"What restrictions have others placed on you?"

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.

I second the recommendation of Mrs. Dweck's texts. Her book "Self-Theories..." changed my life. Or at least reinforced the changes I was undergoing then:

The right strategy and appropriate effort are much more important than results.

I couldn't agree more.

As a developer/designer, I spend a lot of time getting this _exact_ message across to developers who "don't do design" and designers who are afraid of code. I've given that same schpiel many times before -- in almost the exact same words ("false dichotomy", "labels", "we can be skilled at anything we dedicate ourselves to").

Can't upvote this enough.

What's wrong with being a developer and saying that you "don't do design"? Even in the context of this article, that can very simply mean that, you've never done design and therefore aren't good at it because you haven't worked at it. (This is certainly true for me; even though I'm both a talented coder and musician, I've never spent an hour trying to get better at design and hence don't try to foist my mediocre design skills on anyone.)

Apologies, I didn't give the whole explanation.

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?

Gotcha. Thanks for the clarification.

I think you might be surprised at how much you can contribute and recognize in a collaborative design environment. If just one person spoke up at an architectural design session (well.. meeting..) about how they hate how they cannot tell which way a door will open, there would be many less frustrating doors in my life :)

Inexperience at design means that you shouldn't be leading but that does not mean you cannot contribute!

Unfortunately while this may work for design, it doesn't go the other way with programming, and so I then cast doubt on it working for design. I've never had opening problems with doors, so obviously I wouldn't think about designing them differently. I highly doubt I'd be the guy to think "Hey, we should put a 'push' or 'pull' sign on this door!" Several weeks ago someone posted on HN the fact that on some cars, the windshield wipers speed up automatically as the car speeds up, and vice versa, and concluded that the people who originally designed the wipers had never driven in the rain before. I've driven in the rain many times, and such an automation never occurred to me. My mind is elsewhere.

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.

But that doesn't mean that you couldn't be a designer if you really want to spend the time working at it.

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.

Can you recommend any books (or projects) that would be good references for learning design?

What kind of design do you want to learn?

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).

Unfortunately, you've really jumped the gun here.

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.

Time to learn the term "design brief," which relates to the design like a program specification relates to the program.

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.

In my opinion there is nothing more frustrating than starting working in a layout program. I usually just end up feeling like I am moving crap around on the screen until something sticks.

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.

Personally, I don't think you can learn design without appreciating it first.

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.

Check out the references at the bottom of this post: http://www.visualmess.com/ .

I don't know, I was really into design in the past, and am probably more designery than most devs, but I wouldn't do TOO much reading.

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.

I usually know what I want with web design and know how to use html/css to get me half way there. It really becomes more efficient though to then hand the vision off to someone experienced with design to get the rest of the way.

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.

Identifying myself as something of a developer/designer, I'm always interested to see what others are doing. There's no info in your profile, got a blog or something?

Joe Kraus once said in a talk that companies, especially startups, need to triple down on what they're good at rather than focusing on all their weaknesses - that's really the only way a startup can win since it can't be better than a big company at a lot of things, but it can be head and shoulders better at just one thing. I'm not sure how this applies to people, especially since balanced people can bring a fresh perspective to things (i.e. a programmer with some creative background might approach a problem in new and interesting ways).

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.

I don't disagree regarding the dichotomy between Technical/Creative per the article. I also subscribe to Heinlein's "Specialization is for Insects" truism (below).

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

To me, this is consistent with Paul Graham's essay "Keep Your Identity Small." If I have strongly identified myself as a "technical person" then I have excluded myself from the possibility of becoming conversant in non-tech things, like good graphic design. Because I'm just a techie!

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!

This is interesting, but I disagree. It's certainly possible to be able to engage in rational discussion about things related to ones own identity.

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.

The problem is some titles, such as scientist or engineer, are used to reinforce group identity at some level. And that group identity then starts to push on the self.

This is very interesting to me, as a computer science student, who does "techie" things like code a take a lot of technical classes, yet always been considered (or considered myself) a "artistic" person.

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.

Edit: Imagine what would happen to the industry if you changed titles from software engineers to software artists.

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.

Perhaps "Software Sculptor" or "Crafter". I find "artist" a little broad.

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.

That prompts an interesting (to me) idea: software as social commentary. Anyone have any examples of that?

Do you mean like online interactive games?

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 also find it interesting. "Software as social commentary" - this single expression gives me a lot of though-food to think about. I think this topic should be explored further. Thanks :).

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.

How about yume nikki (dream diary) A game, but one of the most moving and memorable things I've ever seen come from digital art.

I recommend pointing people to this excellent comic: http://www.smbc-comics.com/index.php?db=comics&id=1995#c...

One article in today's blog of 37signals.com/svn resonates very much with the message.


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. =======================

What restrictions have others placed on you?

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).

"I make sofware, it's one of the few art forms that really pays off nowadays"

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 )

The irony of the supposed dichotomy of creative/technical is that both art and programming are incredibly creative fields where one must synthesize with very limited constraints. It is very difficult to excel at either without passion and dedication.

I think this is more a matter of transferability. If you're good at one quantitative or technical skill, it's not so hard to learn another, and you can do it pretty quickly. Teaching yourself to become an artist is a bigger gap. I can appreciate design (although I never studied it formally) but I can recognize that it may be more efficient to get someone else to do it for me. The optimal degree of specialization isn't always "none."

The amount of skill that you have in a certain area is proportional to the amount of work that you put into it.... This realization changed my life.

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!

Very strange, indeed. So you actually spent lots of your precious time in creative endeavours, music, photography, but in the end you decided that you're worthless? That doesn't compute. Did you really were under such a social pressure that you felt obliged to comply?

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.

It's not that strange. He's just pointing out that there's a difference between wanting to be good at doing something and liking doing something; and that the former is nigh-impossible to reach without the latter.

I don't get why anyone would want to get good at what he doesn't like...

Really? The music example seems clear enough to me--everybody wants to be able to play well, fewer people want to spend an hour a day playing boring stuff that doesn't sound good. But let's go for a few more examples:

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.

I know that, and that's why I'm better at the piano than gymnastics, because I simply didn't put any effort on stuff I didn't like. What surprises me is that you did an important effort, though you say you didn't grab any reward out of it. That seems unusual to say the less - Everything I've spent a significant time practising, I did because either I liked it, or I rapidly got some reward (like in sports), or eventually because I was under external constraint (like going to school).

From one photog to another:

- 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.

Thanks for the suggestions. I'm not sure about the kitchen jar one since I don't know if I take too many pictures or too few! My keep rate is higher than 1% because family and friends expect to see a few photos of the things I do. On my last trip, I took about four hundred pictures and picked about twenty for a quick slide show for friends. (That's a week's worth of pictures. Even on a trip by myself I take less than a hundred a day.)

Can you suggest a place online for finding a critique group?

It is your fault though to be so hard on yourself. Nerdy hackers always want to master everything they put their hands on (I'm guilty too!), but I've realized it is not because I tried to compete with friends or other artists or professionals.

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.

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. It is an amazing quality.

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 think I put my standards too high. I programmed for years before I did anything really impressive or even useful, but that didn't bother me at all. I didn't even think about becoming a professional programmer or accomplishing anything with programming until I had already put in a huge amount of work. Every time I did something new, I felt a sense of accomplishment, even though it didn't compare to the professionally produced games and programs I used. With music, I cared about the results right from the start and didn't get enough intrinsic satisfaction out of it to distract myself from how poorly I was playing. If I had compared myself against age-mates or measured myself against how I well I played a piece the previous week, I'm sure I would have enjoyed it more.

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 :-)

* Every time I did something new, I felt a sense of accomplishment, even though it didn't compare to the professionally produced games and programs I used. *

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?

You're approaching photography wrong. Sometimes, quantity == quality. In this case, it's not the quantity of time you spend studying to be a 'serious' photographer but rather the raw quantity of pictures you take.

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.

"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."

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.

I agree with both of you. I shoot in both auto and aperture priority modes. I've lost good shots by monkeying with settings, and I've also lost good shots because auto didn't cut it and I wasn't quick enough at picking the right aperture and exposure compensation. For a beginner who wants to get good but also doesn't want to completely whiff on important moments, they're both essential.

I make a lot better pictures since I set everything to automatic. In fact, I really love the Smart mode in my Samsung WB600. It is now basically a point-n-shoot camera.

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.

Isn't the WB600 a point-and-shoot camera anyway? I haven't used it but just looked it up briefly.

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.

The WB600 is really from the lower-end, but has modes to control ISO, aperture and bracket size.

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.

While I agree with the conclusion that you only get out of something what you put in, a quick review of the history of genius will reveal several characters that did have an innate talent that was indeed cultivated through hard work, but was not learned "from scratch". You may, in fact, be the artistic type, and glean from that a certain advantage over someone who is not.

We should act and do as though there are no limits to what we can do, but we have to remember that nature & nurture do impose boundaries. We just don't know what those boundaries are.

It feels like someone could learn some Zen here. Most things in life are not of type boolean. It is true that these labels are a wrong concept in some way. But of course the same applies to the idea, that everybody can do everything in the same quality and quantity, just after spending the same time learning it. It is too simple a point of view, isn't it?

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.

people need to stop attaching themselves to what they do, this way its easier to both have fun just doing, no matter skill level or adherence. I've seen bizarre cases of very skilled people tearing themselves up just because whatever they do is not perfect in any given respect, be it technical or artful. They end up miserable.

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.

This article perpetuates a dichotomy that I have only just (at 50+) realised is false: creative versus technical. Technical people create: software and hardware often come out of nothing more than an idea.

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.

We need to reach a definition of creativity before we can have any discussion about whether an activity is creative or not.

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.

My article actually intended to do the opposite - to argue that there is no dichotomy at all. I'm interested how you got the opposite impression. Maybe I should go back and edit some more. :)

I suffer from Artism as well :-) Which is to say as an engineer I solve problems with materials at hand in ways that meet constraints. That often requires creative thinking but the creative act is appreciated by other engineers more than lay people.

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 :-)

Really? I thought it was about building skills by just applying yourself. You don't learn guitar or Ruby in a night. You practice and play with them for years and integrate them into your projects.

Knowing how to play guitar like a virtuoso != being artistic. Head on down to Guitar Center to see what I mean.

I agree. If I made a robot that could follow musical notes and play the guitar perfectly, would anyone describe its playing the guitar as 'creative'? I hope not. This is a lab-like situation where we can know for sure that the robot is using zero creativity to play the guitar. It is just following instructions, it is not creating anything new.

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.

Learning something is not a creative process, but finding better ways at doing it (after learning) makes you an artist. Same rule applies to learning following skills: - Music - A programming language - Cooking

Exactly my thoughts.

"Shredding" alone isn't virtuosity.

I've recently taken up hobby blacksmithing (focusing on blades). The skills required were completely alien to me at first.

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.

I'm reminded of the wonderful (sadly now defunct) web comic "The Life of Riley" in which this is a major, ongoing plot arc.

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 got caught up in that sort of identity thinking about the time I was getting out of high school but thankfully realized how wrong it was a few years ago. I think that was probably one of the damaging ideas that ever got in my brain.

I'm not sure how much natural talent there is for various skills but I do know that believing in natural talent is harmful.

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.

Hackers and Painters is a good answer to this. Is the person who wrote that a "technical person"?

There is an artist in everyone. Everyone.

Case in point: shawn inman

If your blog is actually served up in production by Github, yeah, you're a technical person.

It seems that you didn't actually read the post. Your comment is only in response to the title, and it's actually a good example of what the post was trying to combat.

Additionally, these sorts of clever one-liners are what HN comments shouldn't be about.

I read the post, I just wanted to publicly appreciate the (frankly, creative) way that the blog was being hosted.

Sometimes it feels like the Hacker News community wants to "place restrictions" on expressions of humor.

I think there's a good reason why there's often a separation between creatives and technical people, and this is it:

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.

Most art is most definitely rational, deliberate, and reasoned. It doesn't appear so when you're thrown into the deep end (personally, although I'd been exposed to it countless times, it took me a while to appreciate work like that of Mondrian). Blocks of code look equally irrational to non-coders.

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.

    while i
      subject.angle = random() * 360
      # copies a nose, eye, etc.
      feature = copy( subject.facial_features[ random() * 10 ] ) 
      paint( feature )
Edit: I'm afraid I didn't express myself clearly -- by `rational`, I mean: reasoned, thought out, and deliberate.

The output may seem rational, but was the process of synthesizing it 100% rational? Can you write a program that creates the Mona Lisa while explaining each decision along the way?

The rationale for the decisions da Vinci made while painting the Mona Lisa are actually pretty well documented http://en.wikipedia.org/wiki/Mona_Lisa .

Yes, they are. I think we can agree that there is a beautiful elegance to it that is similar to that of mathematics.

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'd say that simply because something is rational doesn't mean it can be codified into a computer program (yet). (Maybe my example code disrupted my point more than helped.) The design of most computer programs is rational, but a computer isn't sophisticated enough to program itself.

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).

Explain to me exactly what it is about creating the Mona Lisa that cannot be done by a machine, and I will write a program which does it (with apologies to Von Neumann).

In other words, this sounds like an "irrationalism of the gaps" theory.

A sense of aesthetics?

(Let me guess, that answer doesn't count because it cannot be quantified.)

Not because it cannot be quantified, but because you failed to quantify it. A sense of aesthetics is not an irreducible "thing," it's a set of algorithms and heuristics. If you could explain exactly why you find DaVinci's creativity so appealing, you still wouldn't be able to reproduce it directly--but you would have reduced it to a problem in NP.

Was Van Gogh cutting off his ear rational?

Just because something can be explained by some sort of progression doesn't make it inherently "rational"

No, cutting off his ear wasn't rational, but it also wasn't art. I think a reasoned process is rational, but maybe this is getting into semantics.

A person who isn't rational is going to always produce rational art.

A rational statement.

About as rational as statement "A male father will always produce male children".

And just because someone has a mental illness that causes strife in their personal life, it doesn't make their work inherently irrational.

Could it be that they're afraid to make the jump because they've already labeled themselves as non-artsy?

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".

Good point.

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).

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact