Should I apply to Computer Programming?

Avatar image for akrid
Akrid

1397

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#1  Edited By Akrid

A few people on this site may know that I have plans to go to college for 3D. As it turns out, I probably won't be getting in to the program that will lead me directly down that path this coming September. So all of a sudden I have a year of nothing laid out before me. That simply won't do. Taking a look through the courses that are still miraculously open, I spotted computer programming. This seems to me like a thing that may complement my intended career as a 3D artist: Often custom scripts and code are needed to complete monotonous, difficult, or impossible tasks, and simply understanding the plight of your co-workers is a valuable skill. I'm thinking that it may be a good use of my time to do this for a year or so, but it also comes down to me: Am I cut out for programming? Hopefully you guys can help me determine this.
 
Now, I have very little experience with programming. Aside from a few extremely simple Quake C scripts I wrote recently, I've spent a little bit of time trying to learn python a few years back. I really did enjoy it. It was hard work, but that's the kind I like, and that moment where you compile and everything finally snaps in to place gave me an exquisite sense of satisfaction. That interest lasted only a few weeks though, and I think I'm not lying to myself when I say that my quitting was entirely due to the lack of learning resources that I could find online. I got past the basic tutorials and could simply find nothing else that built steadily upon what I had learned from them. I felt the barrier to entry was too high for my feeble mind, but I imagine that this program would ease the learning curve considerably. However, given my limited experience, I think it's important to confirm that programming is what I think it is.
 

Now on to What I Understand Programming to be, and Why I Think I Would Enjoy It

 I know code is simply the thing that a machine can interpret into it's own language. I know that code is a set of instructions defining what things are; be they bicycles or menus. I don't know what tools I am expected to use to define these things. I don't know how to relate these things properly to a bigger picture, I.E., how all these objects would fit together. "I've got the bicycle and the house, but how do I make it crash in to the wall". I don't really know what programming becomes at a non-basic level. However, I have a practical example of what I imagine programming would be like once I pass the level that I left off at, and why I might enjoy it even more then I was:
 
A while ago I was working on a rig just for kicks. The rig consisted of a plane lying upon four pistons, one in each corner. I had to figure out an algorithm that allowed me to raise one piston - piston A - +6 on the y axis, and this would give the two neighbor pistons - pistons B - a value of 0 and the adjacent piston C -6 on y. You with me here? Basically this would lead to the plane being able to compensate for angle, always in contact with the pistons no matter what. Easy in the one direction: C = A(-1), B = A+C/2. But I wanted this effect to work no matter which of the four pistons I moved on the y, and for them - within limits - to blend together appropriately. As it turns out, I never figured this out, but that's beside the point. What I want to know is, am I wrong in thinking that this is essentially a programming problem? Because I really enjoyed working on it and trying to figure it out!  And I was able to try out this somewhat (Well, too) advanced problem because I had a GUI to work with, but am I wrong in thinking that these are the sort of logical problems that one is presented with when programming? I understand that not all problems would be so based in physical space and many instances would be "click this, open this", but even so I think I just enjoy little puzzles like these. If this is what programming is about, I'd be interested to give it a try.
 
Try not to think of the logistics of this life-changing, spur of the moment, undertaking of mine. Don't worry about time, money, or practicality. My question to you is, given this information, do you think I could enjoy computer programming, or am I better off doing something else for a year?
 
(Oh, and I'm really pretty average at math. A recent test I took placed me at the 64th percentile, as compared to my peers.)
Avatar image for mrcandleguy
MrCandleguy

918

Forum Posts

293

Wiki Points

0

Followers

Reviews: 1

User Lists: 2

#2  Edited By MrCandleguy

Well, it depends on what programming language you want to use. if you are thinking about just giving programming a full on try. start with Python, I did that in my first semester and its really simple, but good enough for you to learn the basics. I'm currently in my 3rd semester learning to hard code in Java.

I'm pretty average at math. And if your coding from nothing into a working program, usually math isn't that important. Though i'm learning it currently, so take what i say with a grain of salt.

Point of my story: Programming is fun, and no harm in trying.

Avatar image for valrog
valrog

3741

Forum Posts

1973

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#3  Edited By valrog

I doubt you'll be coding for 3D stuff. Especially since you're a total beginner and all. But since you already tried it (and liked it), I say go for it. But remember, it can get really boring after the novelty wears off.

Avatar image for nick
Nick

1153

Forum Posts

13

Wiki Points

0

Followers

Reviews: 0

User Lists: 3

#4  Edited By Nick

Is what you're looking at computer science or just programming? I'm a comp sci major and I only took 3 or 4 actual programming classes, and honestly anyone can learn it. If you just want to take a few programming classes then I'd say do it, it's not very hard and you don't need to know anything beyond basic math. If you're looking at computer science then programming is only a small part and math is much more important.

To be honest though, if you want to be a good programmer there's a lot more you need to know, you need a good understanding of computer hardware (ie pipelining, caching, memory management and all that shit), data structures, algorithm design/analysis and a ton of other stuff.

If you don't plan on being a programmer one day and you just want to take a few classes because you're interested in it, then like the other guy said, "programming is fun, and no harm in trying".

Avatar image for arabes
Arabes

744

Forum Posts

25

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#5  Edited By Arabes

What languages will you be doing? Some are more fun than others. There are literally fucking tonnes of resources online if you want to try out a language before you start your course. I did it a good few years back and I covered java, c++, .net framework stuff, that kind of shit. Just download a compiler or editing suite it its xml or .net (not really programming langauges per se but you know what I mean) and get cracking. There are plenty of tutorials to guide you through. If you like it cool and if not don't bother.

Avatar image for ajamafalous
ajamafalous

13992

Forum Posts

905

Wiki Points

0

Followers

Reviews: 0

User Lists: 9

#6  Edited By ajamafalous

You might as well. You seem like the kind of person that can really get something done if you set your mind to it. Like the others said, your experience will fluctuate a little delending on the language you learn, but I think you'll probably enjoy it.


Also, it's funny how one's mind changes as they do something longer. The piston problem you posed is a very simple program: no more than 5-10 minutes.

Avatar image for vodun
Vodun

2403

Forum Posts

220

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#7  Edited By Vodun

@Akrid said:

Because I really enjoyed working on it and trying to figure it out!

What more do you need to know?

Avatar image for bushpusherr
bushpusherr

1080

Forum Posts

2

Wiki Points

0

Followers

Reviews: 0

User Lists: 6

#8  Edited By bushpusherr

A degree in CS does come with a lot of math curriculum, but in my experience I would hardly say that programming took a back seat to it.  Most of the math you'll likely take (calculus specifically) will not always directly apply to your coding at all, it's taught because the method of thinking is so similar (use of functions, variables, abstraction, etc).  It wasn't until I got into discrete mathematics that I really started to see some meaningful overlap. 
 
Your work in 3D, however, will involve a much more direct link to the math (on the programming front, I mean), but you would probably never see anything even remotely close to programming for 3D in beginner's or even intermediate courses at school.

Avatar image for akrid
Akrid

1397

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#9  Edited By Akrid

 Apparently they'll be teaching me Java, C#, and .NET. They're not exactly the most fun languages, from what I've heard. 
 
Thanks for the encouraging words everyone! My fears have been (mostly) swept away. I might give it a shot.

Avatar image for karlpilkington
KarlPilkington

2844

Forum Posts

824

Wiki Points

0

Followers

Reviews: 0

User Lists: 13

#10  Edited By KarlPilkington

@Akrid said:

Apparently they'll be teaching me Java, C#, and .NET. They're not exactly the most fun languages, from what I've heard. Thanks for the encouraging words everyone! My fears have been (mostly) swept away. I might give it a shot.

I do programming at uni, Java, C++, Python and ActionScript.

It can be really fun and creative.

Avatar image for natural_deadhead
natural_deadhead

292

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 13

#11  Edited By natural_deadhead

Umm I'm starting college in september and I'm taking website design and I'm wondering if anyone here would know how much math they will teach me? Or atleast what kind of math?
Avatar image for bushpusherr
bushpusherr

1080

Forum Posts

2

Wiki Points

0

Followers

Reviews: 0

User Lists: 6

#12  Edited By bushpusherr
@natural_deadhead: I'm assuming you mean a website design class as opposed to a dedicated area of study or major?  As far as a class is concerned I would hardly think you'd have to deal with math at all.  I have a minor in media informatics and my major is CS, so I've kind of seen both the technical and design aspects of web site development, and I can say that math for me only ever entered the picture when concerning the CS side of things.  If you aren't focusing on programming at school, I doubt you'll need much more math than is required by your general education requirements. 
 
Also, you can probably find out easily enough by looking up your school's course catalog and looking at the requirements for your area of study.
Avatar image for theguy
theguy

828

Forum Posts

2

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#13  Edited By theguy

I took a programming course and I can tell you, be prepared for constant maths before you can really do anything creative. Ah I just kept reading there, yeah you basically have the gist of it (of the basic stuff I did anyway).

Avatar image for sweep
sweep

10887

Forum Posts

3660

Wiki Points

0

Followers

Reviews: 4

User Lists: 14

#14  Edited By sweep  Moderator

You'd probably be better off going for some scripting stuff like Python or Mel that you can use in Maya. C is good to learn with, though.

Avatar image for natural_deadhead
natural_deadhead

292

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 13

#15  Edited By natural_deadhead

It's a 2 year program and I can be a web developer, web programmer and E-commerce programmer. 
 
I recently returned to school after quitting in grade 9. I completed High school in  year and received good grades in math. However, while taking my math assessment test I completely forgot everything and just guessed on every question. Luckily, it doesn't affect my admission status. Needless to say I'm a little nervous about math in my upcomming college career.
Avatar image for akrid
Akrid

1397

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#16  Edited By Akrid
@natural_deadhead: This is just a guess, but I suspect web programming would require very little math. Don't worry about it. 
 
@Sweep: Yeah, that would be ideal.  
 
How transferable are these skills anyway? If I'm masterful at Java does that make me adept at Python?
Avatar image for vager
vager

1677

Forum Posts

736

Wiki Points

0

Followers

Reviews: 0

User Lists: 25

#17  Edited By vager

@Akrid said:

@natural_deadhead: This is just a guess, but I suspect web programming would require very little math. Don't worry about it.

@Sweep: Yeah, that would be ideal. How transferable are these skills anyway? If I'm masterful at Java does that make me adept at Python?

Yes, most languages have basic functions that are shared between them. If your're great at one language, you should be able to look at other languages and understand what's happening in the code.

Honestly, web programming is getting more complex by the year, and it seems like it will be the primary way we use apps in the future. If you want a secured job, I'd say web programming is what you should go for.