What can you, as an individual, do to maximize your chances and minimize your pain during tough times? Suggestions: lose your religion, look over the fence, and learn something. [This is part of the Tough Times series.]
No Religion · Here’s what I hear online and in conference hallways: “Perl is write-only.” “Java is stupidly verbose.” “Ruby is appallingly slow.” “PHP sucks.” And so on and so on. Suppose all those statements are true? Right about now it doesn’t matter, because none of them are going away. When times are tough and work is scarce, technology religions become a luxury we really can’t afford. Maybe you’re lucky, maybe you can afford to blow off a great big chunk of the business you’re in and you’ll still get through just fine. Lots of people can’t.
As a side effect, I’d really like to hear less of the phrase “I’m an ‘X’ developer”, for pretty well any value of ‘X’. People who have problems and want to put the Net to work to solve them mostly don’t give a flying fuck about X or Y or Z. Or more likely, they already have all of X and Y and Z in production, and if you want to help them out, you’re just going to have to deal with that.
Designer/Developer · I’m also becoming increasingly short-tempered when I hear variations of these two themes: “I’m a designer, I don’t really code” and its mirror image “I’m a software guy, I just do data; the design weenies will fix it up with CSS and pictures.”
To the designers of the world: Have you had a look in the last few years and seen how easy Web app coding is getting with things like Rails and PHP? If you’re smart enough to organize color and language and white space on a screen and produce something that is eye-pleasing and functional, you’re probably smart enough to code up big pieces of any good ideas you have. Coding won’t make your hands dirty.
Developers of the world: real deep design skill is rare, but there are a few principles of design and color that, if you follow them, will keep you mostly out of trouble and produce something that may not seduce the viewer’s eye but on the other hand won’t revolt it. Bookstore shelves are full of books on the basics of online design, have a look. Here’s why: when you get a great idea and code it up, if it ends up looking like dogshit, when you show it to someone to see if they like it, they’ll look at your idea and see dogshit. Because almost nobody can see through gross visuals to the underlying truth and beauty, if there is any.
Learn Something · My advice here is to open your mind and lose your attitude about the other pieces that make up our profession. I’ll go further than that: right now is a good time to take a concrete step and do some learning. Since most readers here cluster around the Web, here’s a list of ten examples of Useful Web Knowledge, selected more or less at random as they came into my head and presented in alphabetical order: Alpha channel, AtomPub, CSS, Django, Java App Servers, JQuery, Leading, PHP, and Rails.
Any of these that you don’t have at least a basic grasp of, well, that’s a shortcoming. Start learning one that you don’t know. Do it now. I am.