Welcome to the MP3Car.com forums.
You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. Registering will also remove advertisements. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!
If you have any problems with the registration process or your account login, please contact contact us.
|
09-16-2004, 04:32 AM
|
#1
|
|
Variable Bitrate
Join Date: Aug 2004
Location: Springfield, MO
Vehicle: 2003 Ford Focus SVT ZX5, Pitch Black
Posts: 356
|
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 04:35 AM.
|
|
|
09-16-2004, 06:25 AM
|
#2
|
|
Newbie
Join Date: Aug 2004
Location: Örnsköldsvik, Sweden
Vehicle: -99 Volvo S80
Posts: 12
|
If i was new to programming today i would go for C#
__________________
Niklas Hörnfeldt, Sweden
Carputer installed and kickin
|
|
|
09-16-2004, 06:40 AM
|
#3
|
|
Low Bitrate
Join Date: Apr 2004
Location: Genova, I
Vehicle: 1998 Honda Integra TypeR
Posts: 92
|
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 06:49 AM.
|
|
|
09-16-2004, 06:51 AM
|
#4
|
|
Super Moderator
Join Date: May 2002
Location: Albany, NY
Vehicle: 98 Exporer Sport
Posts: 1,802
|
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
|
|
|
09-16-2004, 07:15 AM
|
#5
|
|
Variable Bitrate
Join Date: Aug 2004
Location: Springfield, MO
Vehicle: 2003 Ford Focus SVT ZX5, Pitch Black
Posts: 356
|
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 
|
|
|
09-16-2004, 07:18 AM
|
#6
|
|
Super Moderator
Join Date: May 2002
Location: Albany, NY
Vehicle: 98 Exporer Sport
Posts: 1,802
|
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
|
|
|
09-16-2004, 08:35 AM
|
#7
|
|
Maximum Bitrate
Join Date: Jun 2004
Location: Massachusetts
Vehicle: 2004 GMC Canyon 4x4 Z71 Reg Cab
Posts: 837
|
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---]
|
|
|
09-16-2004, 11:53 AM
|
#8
|
|
Low Bitrate
Join Date: Aug 2004
Posts: 78
|
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
|
|
|
09-16-2004, 11:53 AM
|
#9
|
|
FLAC
Join Date: Nov 2003
Vehicle: VW Golf GL 2000
Posts: 935
|
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.
|
|
|
09-16-2004, 12:01 PM
|
#10
|
|
Super Moderator
Join Date: May 2002
Location: Albany, NY
Vehicle: 98 Exporer Sport
Posts: 1,802
|
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
|
|
|
09-16-2004, 12:37 PM
|
#11
|
|
It's not really that small...No, seriously.
Join Date: Feb 2004
Location: Florida
Vehicle: '02 GTI
Posts: 1,010
|
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%
|
|
|
09-16-2004, 01:42 PM
|
#12
|
|
Maximum Bitrate
Join Date: Aug 2004
Location: SE Michigan
Vehicle: MR2 Spyder
Posts: 750
|
Quote: Originally Posted by judoGTI
Learn a language that will help you get chicks is my motto.
So... French?
|
|
|
09-16-2004, 08:14 PM
|
#13
|
|
Constant Bitrate
Join Date: Oct 2003
Location: ACT, Australia
Vehicle: '02 VX Commodore Series II Executive
Posts: 114
|
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...
|
|
|
09-16-2004, 08:42 PM
|
#14
|
|
Super Moderator
Join Date: Apr 2004
Location: USA
Vehicle: 1999/Volvo/S80
Posts: 4,572
|
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.
|
|
|
09-16-2004, 09:04 PM
|
#15
|
|
Newbie
Join Date: Aug 2004
Posts: 8
|
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.
|
|
|
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
|
|
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -5. The time now is 04:14 AM.
|
|