Sponsored links

Go Back   MP3Car.com > Mp3Car Technical > Software & Software Development


Reply
 
Share Thread Tools Display Modes
Old 09-16-2004, 05:32 AM   #1
Variable Bitrate
 
RS3RS's Avatar
 
Join Date: Aug 2004
Location: Springfield, MO
Posts: 358
RS3RS is on a distinguished road
Wanting to learn some programming, help me pick a language!

Hey all.

I've finally found a need to learn some real programming. I've decided I want to write my own front end for my carputer, as I guess I have some specific wishs that none of the software that I've tried out so far have. Though I have to say I've found one thing, Frodo player completely rocks.

Anyway, in the past (about 5 years ago), I've had some basic C, VB and Python. I've completely forgot anything I've learned then though, so I'm pretty much starting from scratch. I have a few questions before I decide what to start trying to pick up... Right now I have three languages I'm trying to choose from.

Python: I really love this language, really easy to use, but I've never gotten into the GUI aspect of it... How does Python do as far as windows based GUI's go? Is it powerful enough, and more importantly, a good choice for, Windows? It seems most of the Python stuff I find online is targeted towards Linux, so is it still good for Windows based multimedia, easy to use as far as GUI's go, etc?

Visual Basic: I've always kind of heard that this is a not so powerful language, and have many times heared of it laughed at and not considered a "real" programming language by many people. I've always thought this to be true, until I saw Frodo Player... What's the general opinion on this? Is it powerful enough to mess with learning? How about for stuff once you get past the basic carputer front end, is it a powerful enough language to be used to write general computer utilities, etc?

C++: I don't even have to ask if this language is powerful enough, as it seems to be the god of programming languages... Though I'm assuming it will be pretty hard to learn. Also, is it hard as far as creating GUI's goes?


Right now, I'm really leaning twords Python, I'm just not convinced that it's powerful and reliable enough under Windows. Also, I don't know how GUI programming (under Windows) goes with it... I'm really hoping someone can convince me to go with this though, as I've completely loved the little bit of Python that I have learned.

Anyway, sorry if this is a stupid post. Any advice would be greatly appreciated.

Last edited by RS3RS; 09-16-2004 at 05:35 AM.
RS3RS is offline   Reply With Quote
Advertisement
 
Advertisement
Sponsored links

Old 09-16-2004, 07:25 AM   #2
S80
Newbie
 
S80's Avatar
 
Join Date: Aug 2004
Location: Örnsköldsvik, Sweden
Posts: 12
S80 is on a distinguished road
If i was new to programming today i would go for C#
__________________
Niklas Hörnfeldt, Sweden
Carputer installed and kickin
S80 is offline   Reply With Quote
Old 09-16-2004, 07:40 AM   #3
Low Bitrate
 
BeamRider's Avatar
 
Join Date: Apr 2004
Location: Genova, I
Posts: 92
BeamRider is on a distinguished road
In your shoes I'll begin with VB. It's true that VB is not a very powerfull language when going out its nature, but you can do almost anything you can with C++ (with ease if you plan to program a lot of GUI). What really matters for me is that VB code is hard mantain and you're not going to learn a good coding style form it. My advice is: use VB to learn how to code then move to other languages when you're familiar on how to approach coding problems.
My firt choice is C++ but I've enough experience in conventional C++ programming so it's easier to lean specific APIs (MFC and all you need with Windows). C++ is the best coding style I've ever seen, well except Java that takes a lot from C++
I don't know Python so I 'm not going to say how good is it.
BTW you post is not stupid, it has been discussed before, but language choice is a personal choice based upon needs, objectives and knowledge!

:edit: S80 is a good advice, I'm unfamiliar with .NET variants but from what I read, they takes some good ideas from the others mantaining the MS ease of use!
__________________

Installation: 90% complete - fiberglassing
EPIA M10000 - 512Mb - 20GB
Lilliput 7" TS - Opus 150W PCB - DLink USB Radio - slim CD-ROM - SoundBlaster MP3+ - not so crappy 40x4 Amp - BU303 GPS (waiting for) - BT support

Last edited by BeamRider; 09-16-2004 at 07:49 AM.
BeamRider is offline   Reply With Quote
Old 09-16-2004, 07:51 AM   #4
Super Moderator
 
hijinks21's Avatar
 
Join Date: May 2002
Location: Albany, NY
Posts: 1,802
hijinks21 is on a distinguished road
i would jump into c++.. why?? because C++ is like you said God. C# blows cause you are stuck to the MS way of life. C++ you can learn the standard libraries and program in windows and if you ever make the jump to say linux you can easily port a app over. If you use a cross platform widget set to create a GUI like QT or wxwindows then it'll compile on both linux and windows. NICE!

I've never touched C# but I learned C++ when I was 14 and it will create a great programming foundation. It will teach you how to program the correct way.

Python is also nice.. its very OOP oriented so that would be good.. but I'd really try C++. It will be frustrating.. it can take well over a year to really get good at while a language like PHP (which will make you really stupid btw ) will take like 2 weeks.
__________________
'98 Explorer Sport
http://mp3car.zcentric.com (down atm)
AMD 800mhz 192megs RAM 60gig hard drive 9 inch widescreen VGA
80% done
hijinks21 is offline   Reply With Quote
Old 09-16-2004, 08:15 AM   #5
Variable Bitrate
 
RS3RS's Avatar
 
Join Date: Aug 2004
Location: Springfield, MO
Posts: 358
RS3RS is on a distinguished road
Alright guys, thanks for the advice.

Normally, I think I'd just go ahead and do VB, however, I'm planning on majoring in computer science once I start college (the year after next), so I might just dive right into C++... I figure I can use all the head start I can get
RS3RS is offline   Reply With Quote
Old 09-16-2004, 08:18 AM   #6
Super Moderator
 
hijinks21's Avatar
 
Join Date: May 2002
Location: Albany, NY
Posts: 1,802
hijinks21 is on a distinguished road
if you are going into CS.. don't learn VB.. they might have a course on it.. but chances are it'll be either C++ or java (sigh). Maybe even C# but i wasn't in college when that was out but i guess a lot are teaching it now.
__________________
'98 Explorer Sport
http://mp3car.zcentric.com (down atm)
AMD 800mhz 192megs RAM 60gig hard drive 9 inch widescreen VGA
80% done
hijinks21 is offline   Reply With Quote
Old 09-16-2004, 09:35 AM   #7
Maximum Bitrate
 
EBFoxbat's Avatar
 
Join Date: Jun 2004
Location: Massachusetts
Posts: 837
EBFoxbat is on a distinguished road
When I was in school they commonly shaded away from VB. I'm in the same boat though (wanting to enter the programming world) I think I'm going to go get a C++ book tomorrow.

I figure learning a language and making my own front end might eat up some of the time i need while watching the "Lilly Fund" grow.
__________________
,./(0)3

'04 Canyon 4x4 pickup

[---PC on hold----working on external fiberglass "tool" box---]
EBFoxbat is offline   Reply With Quote
Old 09-16-2004, 12:53 PM   #8
Low Bitrate
 
Join Date: Aug 2004
Posts: 78
Maddog_rvo is on a distinguished road
i recommend C#, its pretty easy to learn and has a good coding style. If u plan to ever take a go at linux programming c++ is the way to go, but if u not going to use linux then C# is the way to go imo
Maddog_rvo is offline   Reply With Quote
Sponsored links
Advertisement
 
Advertisement
Old 09-16-2004, 12:53 PM   #9
FLAC
 
jbors's Avatar
 
Join Date: Nov 2003
Posts: 947
jbors is on a distinguished road
Just wanted to clarify. If you want to be able to read 95% of the code written, you will need C knowledge( not C++ ). GUI development takes about the same complexity in all the languages you mention.
Good luck.
jbors is offline   Reply With Quote
Old 09-16-2004, 01:01 PM   #10
Super Moderator
 
hijinks21's Avatar
 
Join Date: May 2002
Location: Albany, NY
Posts: 1,802
hijinks21 is on a distinguished road
I can teach my dog how to code a gui.. learn c/c++. A good programmer knows how to do algorithms. I idle in the C++ channel on freenode and you don't know how many people come in saying they made a gui but can't sort a number list.

If you really want to learn to program jump into c/c++. don;'t learn a language cause its easy to learn. If you know how to really program you can pick up any language easily. Its mainly about problem solving.
__________________
'98 Explorer Sport
http://mp3car.zcentric.com (down atm)
AMD 800mhz 192megs RAM 60gig hard drive 9 inch widescreen VGA
80% done
hijinks21 is offline   Reply With Quote
Old 09-16-2004, 01:37 PM   #11
It's not really that small...No, seriously.
 
judoGTI's Avatar
 
Join Date: Feb 2004
Location: Florida
Posts: 1,047
judoGTI is on a distinguished road
Learn a language that will help you get chicks is my motto.
__________________
'02 GTI
[Routis '04] [Opus 90W] [160GB Maxtor HD]
[Lilliput 7" TS] [VIA M10000] [XMPCR]
[512MB RAM] [Custom housing]
[Deluo GPS Mouse] [E-MU 0404 Soundcard]
Progress Meter: [==============|] 99.9%
judoGTI is offline   Reply With Quote
Old 09-16-2004, 02:42 PM   #12
Maximum Bitrate
 
mushin's Avatar
 
Join Date: Aug 2004
Location: SE Michigan
Posts: 750
mushin is on a distinguished road
Quote: Originally Posted by judoGTI
Learn a language that will help you get chicks is my motto.

So... French?
mushin is offline   Reply With Quote
Old 09-16-2004, 09:14 PM   #13
Constant Bitrate
 
OdysseyPC's Avatar
 
Join Date: Oct 2003
Location: ACT, Australia
Posts: 114
OdysseyPC is on a distinguished road
Quote: Originally Posted by hijinks21
I can teach my dog how to code a gui.. learn c/c++. A good programmer knows how to do algorithms. I idle in the C++ channel on freenode and you don't know how many people come in saying they made a gui but can't sort a number list.

Amen to that
Stay away from all JIT compilers, they are the devil.

c/c++ is the only way to go, once you master it you'll never look back.
__________________
Caputer Mk. II
'02 VX Holden Commodore Series II Executive
MII12000, 512MB RAM, 60GB HDD (5400rpm), 16X DVD, TS200V
Morex 60W DC-DC, Custom S/SDC
OS/Software: Developing...
OdysseyPC is offline   Reply With Quote
Old 09-16-2004, 09:42 PM   #14
Super Moderator
 
xBrady's Avatar
 
Join Date: Apr 2004
Location: USA
Posts: 3,688
xBrady is a splendid one to beholdxBrady is a splendid one to beholdxBrady is a splendid one to beholdxBrady is a splendid one to beholdxBrady is a splendid one to beholdxBrady is a splendid one to beholdxBrady is a splendid one to behold
Depends: If you are going to be programming strictly in Windows I would learn C#. If you want cross platform code I would go with C++. VB is not a good way to start becuase the coding style will screw you up for any other language. C++ and Java are good to learn because you will definitely be using them for a CS degree. (I also had to learn Scheme.... ) I thought I was going to like Java but then I learned it kind of sucks if you go anywhere past a basic program. C# is nice becuase it does all of the garbage collection for you and you don't have to worry about destructors, as you do in C++. Last of all, Java, C++ and C# are so similar if you learned one it would be fairly easy to pick up one of the others.
__________________
AMD XP 2600+/512MB RAM/120GB hard drive
Opus 150W/DVD/GPS/7" Lilliput TS/802.11g/Bluetooth
Installed.


-GPSSecure- - GPS Tracking
-AltTabber2.2.2- - Handy touchscreen utility.
xBrady is offline   Reply With Quote
Old 09-16-2004, 10:04 PM   #15
akw
Newbie
 
Join Date: Aug 2004
Posts: 8
akw is on a distinguished road
Only good for basic programs?

Quote: Originally Posted by brady
Depends: If you are going to be programming strictly in Windows I would learn C#. If you want cross platform code I would go with C++. VB is not a good way to start becuase the coding style will screw you up for any other language. C++ and Java are good to learn because you will definitely be using them for a CS degree. (I also had to learn Scheme.... ) I thought I was going to like Java but then I learned it kind of sucks if you go anywhere past a basic program. C# is nice becuase it does all of the garbage collection for you and you don't have to worry about destructors, as you do in C++. Last of all, Java, C++ and C# are so similar if you learned one it would be fairly easy to pick up one of the others.

Java is only good for basic programs? That's interesting, but unfortunately incorrect. As far as coding a GUI, Java isn't quite as capable as some of the others. But when it comes to coding enterprise web applications, Java is king. Also, take a look at the number of open source (GPL, LGPL, Apache License, etc) that are available to the Java programmer today. It's absolutely astounding. Some of the best software available is written in Java and it's completely free (as in beer). I personally work on a distributed Java product that is over 90,000 lines of code and supports tens of thousands of users. I wouldn't consider that "basic".

Oh. And by the way. Java does its own garbage collection too. ;-) I have to agree with some of the other members though. Java isn't a good choice for a car computer UI.
akw is offline   Reply With Quote
Advertisement
 
Advertisement
Sponsored links

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
What Prog. Language for Programs? dug1967 Software & Software Development 3 02-12-2004 12:27 AM
programming language for beginners??? DJ Software & Software Development 26 09-08-2000 10:36 AM



All times are GMT -5. The time now is 11:56 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.3.2
Copyright © 1999 - 2008 Mp3Car.com Inc.Ad Management by RedTyger
Message Board Statistics