i need to learn how to program

Another GREAT thing about C# and .NET ... LINQ (and consequently, LINQ-to-SQL), lamda expressions and extension methods! Plus, they just released the debugging symbols for most of the framework so you can debug the source code for the actual framework just like you can for your own code. I cannot understate my love for C#.
 
For engineering, C can be very useful in instrumentation. Lots of projects require little micro controllers with very little memory. If you aren't building applications, but just solving problems and stuff like that, learning Matlab or Maple is good. They are really simple and can be very useful.
 
learn Socket programming in Java first then move to C++. trust me you will be the master if you taught yourself this subject.
 
I would rather know how to build a computer than to program. Easier.
A couple of my friends want to be game devs. They don't even know what C++ is. I lol'd.
 
i just skimmed through a few of Angry Lawyer's and judging by what he has said i would strongly advise against starting up with java , its a briliant language to learn oop from but it i personaly dont think its the right tool for beginners namely because creating gui apps in java has a bit of a learning curve. java also runs on a virtual machine which means it isnt well suited for applications that will be doing a lot of processing. i would personally recommend that you start with c# it has a nice well structured IDE and is fairly easy to pickup. btw what field of engineering are you in ? most universities require that you do an intro programming course.

after further reading i really think c# is your language , you can build a simple form based application with just a few clicks. it takes the hassle out of the visual component and leaves you to work with the formulas. c++ is going to be a MAJOR pain in the ass as far as GUI is concerned.

edit: i believe pointers allow you to access areas of memory , you set your pointer to point to a memory address and then you can read and write to it , its used to pass a reference to an object or variable. please correct me if im wrong.

ooh and i second Dan's suggestion to use Matlab it has a lot of handy little internal functions that will help you out , it also integrates with c# i believe......
 
where should i start? which "program language" is newb friendly?

i'm thinking of VIsual Basic, since it's the only thing i know of besidec C, and sounds..well...basic?

any suggestions?

i feel so ashamed calling myself an "engineer" and not knowing how to program. :cheese:


thanks
C++. If you are planning to take a language course instead of trying to teach yourself, then go for a C++ game programming course even if your not into game programming. It was perfect for me because it's something I could relate to and make the incomprehensible syntax stuff easier to understand. It was easier to grasp than the database alternative that was offered at my college. I was fairly n00bish to programming too a couple of years ago, but now I can create cool ASCII card games, even solitarie if I wanted too! Also, the second best choice would be Java. My professor told me that if can code fluently in Java, then I could pretty much grasp any language.;) BTW: If your still considering C++, might I suggest another link for you to study? cplusplus.com Also, try to learn some of the basic programming techniques like flowcharting and pseudocode that pretty much all programmers use in order to help you to better understand how programmers think before you try and tackle a language. Not to say you couldn't learn without that stuff, but it would help greatly imo.

I would rather know how to build a computer than to program. Easier.
A couple of my friends want to be game devs. They don't even know what C++ is. I lol'd.
PC building is easy as pie, but truthfully, there's not much money to be made in just "building" PC's anymore. Those types are as common as chicklets these days. A dime a dozen.:p I was astonished at how many people's mothers/grandmas could build PC's in Jacksonville FL, U.S. (the largest city in the state) being from a small town and all. As a hobby it would be fine, but as a "bread winner", not so fine. If you're seriously considering a career in IT, you really should pursue greater knowledge beyond PC building if you hope to stand a chance out there.;)
 
i just skimmed through a few of Angry Lawyer's and judging by what he has said i would strongly advise against starting up with java , its a briliant language to learn oop from but it i personaly dont think its the right tool for beginners namely because creating gui apps in java has a bit of a learning curve. java also runs on a virtual machine which means it isnt well suited for applications that will be doing a lot of processing. i would personally recommend that you start with c# it has a nice well structured IDE and is fairly easy to pickup. btw what field of engineering are you in ? most universities require that you do an intro programming course.

after further reading i really think c# is your language , you can build a simple form based application with just a few clicks. it takes the hassle out of the visual component and leaves you to work with the formulas. c++ is going to be a MAJOR pain in the ass as far as GUI is concerned.

edit: i believe pointers allow you to access areas of memory , you set your pointer to point to a memory address and then you can read and write to it , its used to pass a reference to an object or variable. please correct me if im wrong.

ooh and i second Dan's suggestion to use Matlab it has a lot of handy little internal functions that will help you out , it also integrates with c# i believe......

really...than that's for me.

i already know some basic mathlab programing (i repeat basic).


i study civil engineering (you can call it structural). and programing is probably a must have skill nowadays.


i'll start with C# then :) i want simple things.
 
really...than that's for me.

i already know some basic mathlab programing (i repeat basic).


i study civil engineering (you can call it structural). and programing is probably a must have skill nowadays.


i'll start with C# then :) i want simple things.
I think there's some #C stuff on cplusplus too. Have a look!
 
I'll start with C# then :) i want simple things.
I know I'm contradicting what I said earlier, but I'd start with C++. Moving from C++ to C# is pretty smooth, and it is a beautiful language.

(A poll would have been better)
 
I'd personally start from C# and THEN work to another language if you really want to, but I don't see any need to.
 
I'd personally start from C# and THEN work to another language if you really want to, but I don't see any need to.
Again, you can't call yourself a real man till you know C++. It gives you a level of control C# doesn't have.
 
Again, you can't call yourself a real man till you know C++. It gives you a level of control C# doesn't have.

But are you really sure you can't get that level of control C++ has? As far as I'm aware, from what I've read C# can get down to a low level very much like C++ can if the programmer really wants to.
 
yeah but i'm not sure i'd like to go deep down into things. i'd just like to do some cool simple stuff.
 
More than anything I love the little bits of hackery you can do in C++. Where C# and Java force strong typing and other safe practices, C++ actively encourages creative shortcuts. It's fun to play around in, and powerful at the same time. Also, you can't obfuscate code in the new languages.
 
edit: i believe pointers allow you to access areas of memory , you set your pointer to point to a memory address and then you can read and write to it , its used to pass a reference to an object or variable. please correct me if im wrong.

You are correct, the problem is that in C++ points do not delete themselves. If you forget to delete a single pointer it can cause you a huge headache, I have experienced memory leaks and even undeleted points influencing other variables.
 
Again, you can't call yourself a real man till you know C++. It gives you a level of control C# doesn't have.
While on the surface C# doesn't, once you get the language down and you learn it good. It does give you an astonishing amount of control. Pointers, ability to allocate unmanaged memory, ability to deallocate unmanaged memory, ability to cast unmanaged memory as whatever you want, etc... Many of the same power features C++ has. The main difference is, in C# you only use these features when you need the speed/memory control. Where in C++ you use them 24/7 (and no assembly in C#).

I still say start with C++. Understand how the computer handles memory. Make a few console applications, nothing fancy. You can learn the basics really well in under a day.
 
Agreed start with C++ if you can self teach yourself the basics you can move onto to any other language you like, and should have little trouble picking new things up.
 
btw , how do you guys plan to make gui based applications using c++ ? have you guys gone through the windows library ? im not sure if its just me but i couldnt get head or tail of it....
 
I never made a GUI based C++ application. I only had Visual Studio C++ Express, and the Express edition did not come with a resource editor (which is needed to build GUI programs afaik). Thats when I turned over to C#. I get how the Win32 API works though.



A BOOLEAN WITH 3 RETURN VALUES!! MUAHAHAHA!!
 
Sorry I'm so late with a reply I should have done days ago, but I felt I ought to correct the idea to learn C++ first. The Object-Orientated conecept behind it is quite complex at first, and I'd personally suggest learning a Procedural language such as C or Visual Basic.

Visual Basic is definitely very simple and relatively easy to use for anyone new to programming. It provides you with a basic of what programming is like, providing you with the mindset.

I wouldn't spend too long on it, however, as it can induce some bad programming practices or habits. I'd move on to C. It's really a great language, very powerful, and while quite complex to get your head round, it can do anything you want it to. For the "engineering" tasks you seem to want to accomplish, I'd say it was a good choice. You'd also learn some features of programming which aren't present in some other languages, and yet are almost vital to some programmers, so you'd learn to appreciate the small things like pointers.

This ideas are also present in C++, a superset of C, so you'd find learning the Object-Orientated language much easier, and should whizz through it.

After this, you could go back to Visual Basic or C# and just laugh at it, because it's so ridiculously easy.

Oh, and I'd recommend Sams Learn C in 21 days book. The Sams equivalent for C++ (24 hours) isn't that great, and personally I felt like shouting at the dude who wrote it. It's still a good book, though, and teaches you all you need to know.
 
Back
Top