If i was new to programming today i would go for C#
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.![]()
If i was new to programming today i would go for C#
Niklas Hörnfeldt, Sweden
Carputer installed and kickin
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
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
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![]()
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
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.
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
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.
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
Bookmarks