OT: Which programming language(s) to learn?

abitadawg

Redshirt
Nov 15, 2005
183
0
0
I know this is way OT but it's still 2 days away until the next basketball game and I figure there have to be some geeks on here with some insight. If I want to learn a programming language and build some apps and sell them for $30million like that 17-year old kid in the news, which language do I study? There are a ton of resources online-code academy, etc. I'm just not sure which way to go. Back in the day I used to hammer out some mad FORTRAN in the McCool computer lab but that has been a while--after punch cards but before floppy disks. Yeah, I'm old. I did make a 24 on the math section, though, so I'm money.
 

FlabLoser

Redshirt
Aug 20, 2006
10,709
0
0
Studying a programming language to be a good programmer is like studying English to be a better novelist. Its not the language. Its how you use it.

PS: PERL for data mining anything made out of text
 

abitadawg

Redshirt
Nov 15, 2005
183
0
0
I know what you are saying, Flab. I have several chapters in my head, but I have to figure out how to put them down on paper to finish the novel.
 

sleepy dawg

Redshirt
Dec 6, 2009
923
0
0
Grails... Java and certain parts of Spring Framework should be prerequisites.

Grails changes a programmers life. The productivity increases are amazing. I can literally write a working/running web app within 2 minutes with Grails.
 

Arthur2478

Redshirt
Oct 17, 2010
1,407
2
38
It depends on which platform you are building these apps for. iPhone apps are written in Objective-C. Andriod apps were originally Java only, but have since began supporting of C/C++
 

QuadrupleOption

All-Conference
Aug 21, 2012
1,208
1,276
93
Studying a programming language to be a good programmer is like studying English to be a better novelist. Its not the language. Its how you use it.

PS: PERL for data mining anything made out of text

Agreed. Learning how to write code is a much better use of your initial time than worrying about what you are writing code in. If you are a bad programmer the language you use won't make a difference.

Having said that:
Languages: C, C++, Java, Perl, Ruby. These are all great languages to learn on. The first 4 are also used widely in the real world. The last one is catching on.

I'd also recommend learning PHP and Javascript if you are going to learn how to write decent web apps. I use jQuery pretty extensively as well but it's not the only javascript-based language out there.

Also learning how to write good SQL will help quite a bit as well.
 

WrapItDog

Senior
Aug 23, 2012
4,297
706
113
My computer science prof. told me PASCAL is the wave of the future. Imagine one day in future where you would no longer have to stand in line all day at the Hump to pick up a data punch card for each class on registration day.
 

RocketDawg

All-Conference
Oct 21, 2011
18,954
2,076
113
How long ago was that? For me it was FORTRAN. Our registration wasn't at the Hump since it didn't exist then, and probably had never even been thought of. I really can't remember where we picked up the punch cards ... I think it was the Union, but I'm not sure.
 

pDigital32Dawg

Freshman
Aug 29, 2009
2,996
85
48
Open up a C++/C# book or a Java book and learn Object Oriented Programming. After that, you can start your application programming in any language you want. If you want to do scripting, stick to Perl or Python. If you want to do hardware stick with C or C++ and write a bootloader in Python. Don't waste your time determining what is the best language, focus on the fundamentals and the syntax will come naturally.
 

1reddog

Redshirt
Aug 22, 2012
56
5
8
My computer science prof. told me PASCAL is the wave of the future. Imagine one day in future where you would no longer have to stand in line all day at the Hump to pick up a data punch card for each class on registration day.
that was mid to late 70s
 

codeDawg

Redshirt
Nov 13, 2007
2,102
0
36
If you don't know how to program now, it's going to be a long time before you putting together something worth using or testing, let alone selling. Your best path would be to go on a site like elance.com and paying some 3rd world country dude a few bucks to put it together for you.

What I would be spending my time on right now is documenting what you want it to do. Take it screen by screen and draw / write up what each piece should do and how it should function. Write all the functional and technical requirements you can think of. Use a tool like www.mockflow.com to create clickable wireframes. Wireframing will sort out 80% of your application problems without having to actually write code.

Once you know what you want to build and what you want it to do, it's much easier to get someone to do it for you for very little money.

You will eventually reach a point where you don't know "what is possible" versus "what you want". That's the point where you go get a technical resource.
 

grinnindawg

Redshirt
Aug 22, 2012
164
14
18
Start with Python (www.python.org) or C (Dev C++ and Gcc are free)
After you learn one language, the rest are usually easier.
The python tutorial and docs are a good place to start.


Don't try and learn Object Oriented programming until you're comfortable with fundamentals.


Truths of coding.


Design before you code.


Complexity is evil and almost always unecessary.


Google is your friend.
 

UpTheMiddlex3Punt

All-Conference
May 28, 2007
17,952
3,923
113
Honestly, it depends on what you want to do. Personally, I do a ton of bit banging and signal processing stuff so I stick mainly to C, C++, and Matlab (some may say it's not a programming language). I'm comfortable with the Visual Studio suite (including C# .NET and C++ .NET) and have dabbled some with Python and found it to be one of the easier languages on the learning curve, but for the most part I do not develop slick interfaces. If you're wanting to develop a mobile app you will want to first decide which platform to develop for. For Android, learn Java. For iOS, learn Objective-C. Once you're comfortable with the basics of the languages, then you can move on and get familiar with the libraries of functions and classes you will need in putting your app together. Then design and plan your app.

Oh, and if you want to develop any kind of server back-end, you'll have to learn something else. The good news is that you can probably start with some sample code and build from there. I would also recommend learning a thing or two about software engineering. I know it's a ton of documentation (or at least that's what non-technical people who get put in charge of large software projects take away from it), but if you hammer things out on paper first you will have an easier time of it later. It's amazing how difficult a simple programming problem can get if you code first and design second.
 

FlabLoser

Redshirt
Aug 20, 2006
10,709
0
0
Start with Python (www.python.org) or C (Dev C++ and Gcc are free)
After you learn one language, the rest are usually easier.
The python tutorial and docs are a good place to start.


Don't try and learn Object Oriented programming until you're comfortable with fundamentals.


Truths of coding.


Design before you code.


Complexity is evil and almost always unecessary.


Google is your friend.


Truth. Design and coding are different things. Coding navigating a map. Design is knowing where you want to go.

+1 on the rest too.
 

Seinfeld

All-American
Nov 30, 2006
11,092
6,902
113
Out of curiosity, is the programming job market still as lucrative as used to be? I remember back in the mid-90's, that was pretty much the top degree for the next degrade. Maybe longer. I imagine the job market is much more saturated today, but hell, there has to be twenty times more jobs for it than there were back then too. Between smart phones, tablets, laptops, and even TVs these days, most people have 5+ computers in the house.
 

FlabLoser

Redshirt
Aug 20, 2006
10,709
0
0
Out of curiosity, is the programming job market still as lucrative as used to be? I remember back in the mid-90's, that was pretty much the top degree for the next degrade. Maybe longer. I imagine the job market is much more saturated today, but hell, there has to be twenty times more jobs for it than there were back then too. Between smart phones, tablets, laptops, and even TVs these days, most people have 5+ computers in the house.

I wouldn't know about "the programming market", but I do know that an engineer who can also program is a really valuable guy. Most engineers (except computer engineers) never write any software. The engineer who can also write some code to solve things or make some things more efficient, without the overhead of hiring a programmer, will see his career soar.

Recently, my co-workers were manually dragging through some time-consuming, tedious, repetitive database maintenance. It would have taken weeks or months to complete while putting us behind on a lot of other projects. So in a few days I wrote some code to handle it. It wasn't real difficult for me to do, but I'm getting major props for it. I'm not a genius or anything, I'm just the only engineer around here who can write some code.
 

o_hacker

Redshirt
Aug 22, 2012
231
0
0
JavaScript is a good place to start if you're looking to become a web developer.

My favorite language is Ruby. If you're looking for a language that just seems to make sense, try ruby. Ruby on Rails developers are highly sought after in the web development world.

Edit: Oh yeah, Ruby on Rails workplaces are known for being really great places to work.
 
Last edited:

biteyoudawg

Redshirt
Jan 2, 2012
421
0
0
I wouldn't know about "the programming market", but I do know that an engineer who can also program is a really valuable guy. Most engineers (except computer engineers) never write any software. The engineer who can also write some code to solve things or make some things more efficient, without the overhead of hiring a programmer, will see his career soar.

Recently, my co-workers were manually dragging through some time-consuming, tedious, repetitive database maintenance. It would have taken weeks or months to complete while putting us behind on a lot of other projects. So in a few days I wrote some code to handle it. It wasn't real difficult for me to do, but I'm getting major props for it. I'm not a genius or anything, I'm just the only engineer around here who can write some code.

I must say .. you are from a good family too **
 

codeDawg

Redshirt
Nov 13, 2007
2,102
0
36
It lagged for a while when all the off-shoring started in the mid to late 2000's, but the demand for software is stronger than ever and so is the demand for developers. The key, as it is with most careers, is to find a niche. Your generic Java or .Net developer with 5 years experience can make $70 - $100K in a non-premium city. Add in a specialization, especially on a specific product, and you are adding at least $25K. If you are willing to travel or move with contracts, $125/hour is very easy to find and I know people with contracts making $200/hour. I get no less than 2 solicitations for jobs every day for work around the country.

The issue is that if you want to live in a smaller city or town and not travel, your opportunities are limited. Also, your career advancement will be slower than if you lived in the Bay Area, Boston, Chicago, Dallas, etc. Even Memphis has a pretty low ceiling, but it is still better than Jackson and Birmingham. That is one of the biggest reasons I don't live in Starkville.
 
Aug 18, 2009
1,107
40
48
I tried to learn C++ or one of those variations during the first semester freshman year. I actually chose electrical engineering because I thought it would be cool to know how to program software, write code for video games, etc. It took about two days of that first programming class before I quickly learned that computer programming was just not for me. Needless to say I didn't last long in that major. Joke was on me though. I thought I was safe from the programming in McCain Hall, but they made me learn to program in visual basic a couple of years later.

My brain just didn't work that way, so I had a hard time figuring out how to actually finish a line of code. Good luck though, I still think it'd be pretty cool to be able to do it.