Computer Programming

Hey all, 1st year ID student here.
I’m wondering how important do you think computer programming is going to be for ID professionals in the future,
and if it’s worth it to invest the time in learning computer programming?

Depends what you want to do.

For people that design physical objects, I would say not at all.

For people that design physical/digital/service interactions I’d say not really.

For people that want to write apps on a particular platform, probably, but is that ID?

It’s good to know a little bit of programming, if you’re in ID. In fact, it’s good to know absolutely everything: wouldn’t it be great if you could know so much, that you could design absolutely everything and take on any type of design project?

Knowing one programming language is not enough. If you really want to learn it to a decent standard, you will also have to learn advanced math concepts such as number theory, binary algebra, algorithmics, electronics and machine code. You have to know these things - these are the bare bones of programming that underpin computing. What if the programming language that you have learned today going to go obsolete next year? Do you want to invest days into learning the new one from scratch or do you want to use those math concepts and learn it in hours?

In conclusion, programming is a whole separate area. If you want to learn to be good at it, you have to do the same amount of work as in an ID course.

I suggest having an understanding of programming, not mastering it. You’d be better served knowing what goes in to coding, than actually doing the work.

in UI design, it used to be helpful to have a class or two in programming… you often have to mock up software you’re designing in something like Macromedia director ( shows how long it’s been since I’ve worked in S|W - maybe it’s flash or something else now). The goal is not to out-program programmers, but be able to generally show how the interactivity would work in a demo (by scripting your demo), understand SW limitations, and work better with the guys that end up developing your designs…

For ID, I’d say not very important at all - unless you’re doing some of that design engineering/art with Arduino boards.

I’ve done a few projects using arduino boards to mock stuff up… You just hire a guy.

Before all of this debate about necessity: do you enjoy it? Do you like problem solving through code? You learn a method for solving problems when you learn programming that’s very unique.

For me, personally, I love programming (haven’t taken a course in it since sophomore year, but I still program websites often). I love when the frustration of coding turns into the joy of overcoming an impossible problem, or a mysterious syntax error.

Learning programming can expand possibilities for your projects (for example I recently coded a quick interactive comic for my project to explain scenarios of use to be used on an iPad), and can open you up to other disciplines (like aforementioned IxD/UX)

But again, it all comes down to whether you enjoy it or not. Take an introductory class and see if it clicks: if not, drop it (but don’t approach the class expecting to not like it… it’s really a wonderful subject once you get past the initial humps). I’d like to reiterate NURB: understand programming… you don’t have to master it.

I hear you… I’d get someone else to do it too but as Tangerine said, if you enjoy programming - go for it. A lot of the Maker’s faire types really seem to enjoy doing it on their own, especially without having to pay someone else to do it for you. The ‘design engineer’ types seem to use Arduinos often for school projects too. Seems like electronics design within reach for the rest of us

for sure, if it is your thing, by all means, go for it. Just don’t feel like it is a “have to” if you don’t want to get into it.

That’s exactly what I was looking for, thanks a lot guys. I was just wondering if it was necessary for day-to-day stuff and it seems it isn’t but I do enjoy it so I’ll check it out.
I’d really love to get into those arduino’s, some really cool projects can be done with them.

Knowing programming can be valuable from the prototyping side of things, but that’s a very very small niche. As a generalist it may not be valuable, but as part of a team of designers the skill can be very useful in some situations.

I came from the side of knowing programming before I knew ID, so I didn’t pick it up for design but learned ways to carry it through college and used it to prototype UI’s for testing, etc.

With that said, these days what Yo said is right - if you really need it’s just as easy to go out and get a contractor or engineer to rig that stuff up.

This is going to tip you off to my age, but…

When I wanted to take a class in CAD after I got my undergrad degree in ID the prerequisite was FORTRAN programming. (Yeah, bizarre.) I took the programming class and loved it. The pure logic of the language could be used in real life (if/then statements).

I never took the CAD class after finishing the programming course. I just waited until AutoCAD 1.0 came out.

Not much use for FORTRAN in the ID world these days.

I like programming. However, there is not a lot of direct application to design. That being said, the more knowledge in more areas you have the better your set of tools as a designer. The risk with programming is that it is a structure and rigid. It’s attraction are it’s rules, constraints and programmatical results. This is somewhat opposed to the core openess that I employ when approaching design.