Link to home
Start Free TrialLog in
Avatar of pammoun
pammoun

asked on

What to Learn - continued ....

Hello List,
I am a certified MCSD MCSA AND NEARLY MCSE (STILL NEED 1 EXAM 70-216).
I AM NOW STUDYING MY UPGRADE FOR MCSA 2003 AND MCSE 2003 ( WHEN I WILL GET MY 70-216 )
I PROGRAM USING VFP AND NOW WORKING ON SWITCHING MY APPLICATIONS TO A  BACK END SQL SERVER.
I AM PROGRAMMING VFP SINCE FOX 2.5 DOS AND NOW MOST OF MY APPLICATION ARE UNDER VF7 OR EVEN 8.

WITH THE LAUNCH OF VB.NET , C++ , JAVA AND ALL THESE NEW (AT LEAST TO ME) PROGRAMS ,
I AM KIND OF LOST AND DON'T KNOW WHETHER I SHOULD CONSIDER LEARNING SOMETHING ELSE THAN VFP.
(I KNOW VB QUITE GOOD, BUT VB7- AND I DID NEVER WRITE A BIG APPLICATION ON IT  ! )
I AM 37 YEARS AND I FEEL LIKE I DO NOT HAVE THE SAME ABILITY TO LEARN AS WHEN I WAS 25 !
WHAT IS MY FUTURE ?
WHAT SHALL I DO ?
PLEASE DO NOT ASK ME WHETHER I LIKE PROGRAMMING MORE OR SYSTEM ENGENEERING MORE...
I LIKE BOTH...
PLEASE HELP.
Avatar of vidyavrat
vidyavrat

Hello

I do understand totally, how you might be feeling, I just would like to share what I know and feel.

Firstly, let me congratulate you that you hold many of the great certifications (MCSD, MCSA and MCSE etc.)

Let me share something from my part with you, I also started doing and writing project codes with foxpro 2.6, but now I work with .NET technologies.

In your case you have sound background of programming with language and databases with an added advantage of system admin understanding which helps in many ways to a developer (MCSA & MCSE) which most of the programmers in the world don't have.

I would sincerely like to suggest, that you still have the same power of learning which you were having when you were just 25, and even your skilled have got more sharper, and you should undestand that as you got mature with time, technologies are also getting mature and so we feel confused which way to go.

I am of the belief that as you have sound background in MS technologies, try some .NET stuff, and have hand on practice with VB.NET and C#, rest all you have in you. Programming is not much different in any language you work with, just few things are getting change. This is the only way by which you can utilise all, whatl you have learned so far.

"The journey of thousand miles begin with one step"

" IT is an industry where change is the Norm."

Sincerely,

a Microsoft Pusrist
Vidya Vrat Agarwal.
My philosophy on programming is that it is alot like the stock market.  You can invest your time and resources on a technology/skill only to find that it is unmarketable in the current job market.

For example, I have previously been programming in a langage called Forte.  The company by the same name produced this distribued programming environment.  This product had a monopoly on the market because it was the only product could produce enterprise wide distributed applications.  Then Sun bought out the company and killed it (probably on purpose!).  Now my skills in Forte are almost useless.

All is not lost though, like you I have been programming for over 14 years.  Many of the skills I have learned over the years have transfered to current technologies.  For example, Forte's TOOL language is very simalar to Java, so I picked that up very quickly.  I have found that it is more important to keep an inventory of ALL of your skills.  That way you can apply the necessary ones in future projects.

Look at it another way, what would happen if Microsoft declared bankruptcy. (It could happen!!  Look at MCI!!).  All of your Microsoft certifications would NOT be useless.  They show that you have applied yourself and PROVEN that you are skilled in the necessary tasks in designing applications.  Once you get past the language differences, building an application in Java is not much different.  You still have to analyse, design, code and test the code to get a finished product.
Avatar of pammoun

ASKER

Thank you so much for your comments.

If I were to start with C# ( I did not like VB so much and since it is very very similar to VFP , I would like to dig
into something I didn't try yet ) where do you recommend me to start ?
is there any difference between C# and C++ ??
C# is more closer to Java than it is to C++.
Avatar of pammoun

ASKER

DO U RECOMMEND THAT I DO VB.NET ???
SINCE I KNOW QUITE OKAY VB6 & A LOT OF VFP...
MAYBE IF I DO IT THIS WAY, WON'T BE TOOO MUCH OF A DIFFERENCE ???
DOES VB.NET STILL CAN BE COUPLED TO SQL SERVER ??
THANKS
If I were you I would escape from the comforts of VB and learn *real* programming.  By that I mean C++, or, if not, Java or preferably C#.

I don't like VB but that is nothing personal against VB programmers, it is just that if someone can program in VB only they think they can program *period*.  No.  No no no no NO.

It is far easier to go from C++/C# to VB, but not at all the other way.

Learn what programming is all about and then when you know what you want to do let VB and it's ease of use do the donkey work for you.

Or, if you are like me, don't touch VB.  In fact, don't even install it on your machine:)
>"I don't like VB but that is nothing personal against VB programmers, it is just that if someone can program in VB only they think they can program *period*.  No.  No no no no NO."
lol - Agreed. :P

I personally recommend learning Java before C++ (if you go for either).  I tried tackling C++ first, with VERY little programming experience before that. I 'failed' - and came across a book on Java. I thought that I'd give it a go. I found it rather easy, and really enjoyed it.
Once I'd got good at Java, I decided to try C++ again. Now, I'm no C++ pro still, obviously, but I found/find it MUCH easier, because it's fairly similar to Java, yet Java is easier to learn... if that makes sense..? :o\  lol

So, personally, I recommend going for Java  =)

Best of luck,
[r.D]
Avatar of pammoun

ASKER

Java ? VB.net ? C++ ? C# ?
I am more confused here than before I posted my question.
Please bear in mind that my major programming stuff has a lot to deal with databases.
(isn't C flavors deal more with hardware stuf..??)

Please advise.
ASKER CERTIFIED SOLUTION
Avatar of mrwad99
mrwad99
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Nicely worded, mrwad99 .

If you're looking for a career in Object-Oriented Programming (OOP), then C/C++ is what you want to go for.
However, back to personal opinions :P, I recommend at least scraping Java at some point... "Write once, run anywhere". :D

All you need is the J2SDK from java.sun.com and a good tutorial/book. I started off with: "Sams Teach Yourself Java 2 in 21 days" (ignore the 21 days bit though :P). I then used (and still do): www.javaalmanac.com reference, and have even got a copy of the book :). With a bit of patience, you'll be a pro in no time ;)

Best of luck,
[r.D]

PS: I'm not trying to influence you into LEARNing JAVA.  :P
Avatar of pammoun

ASKER

So according to you guys, C++ is the way to go ?
Is it suitable for database development ?

Thank you.
Dear Pammoun

Once again, I am of the concern what you already know and have, and what you should do to make the best out of that.

I believe that one who happened to work on Microsoft Technology, need to go for other competitive technologies.

For you again, if you wish to go for C/C++ or Java  better you go for C# and .NET because this is what all the big software companies are working on, and by this only you can see the future of .NET and yours. As you mentioned in your comment earlier, you don't want to go for VB.NET, certainly C# is the choice of industry today.

I do have respect for every technology, but we have to make our choice, which will give you a competetive edge.

Today all non-Microsoft technology vendors are offering Migration tools and utilities to work with .NET, even Java has JUMP(Java User Migration Path) for .NET. UNIX and Linux has also joined the .NET revolution.

I can gaurantee that you will be having bright future if you will shift to C# and .NET, which will help you to match your steps with present with a fascinating return of what you already know (Vfp, SQL & MS certifications etc.), if you want to earn some credibility you can go for just one C# Certification, and you will be having new Star (*) on your technological bench.

For your information, NASA is using Space Shuttle Simulators written in C# and .NET.

Rest, you are the only person who has to make a decision, which way to go.
I suggest come and join the .NET revolution.

Good Luck & Best Regards

a Microsoft Pursit
http://dotnetpassion.blogspot.com

Vidya Vrat Agarwal.
>> I suggest come and join the .NET revolution.

That is a fair comment.  Some may argue however that .NET is still teething, since many industries have not yet adopted it.  I think we will have to wait and see what the future is.

But my comment still stands; if you know C/C++ well then nothing else will be difficult.  If you only know C#, which then falls flat, you will not *easily* pick up C++.  At all.
>"Is it suitable for database development ?"
Definitely.  :)

Oh, and I recommend joining: www.codeproject.com  --  especially before you've decided what language to settle for.
You'll see what I mean when you get their newsletter ;) - very useful :)

gL,
[r.D]

Tip: When I first got into computers, I had trouble understanding most of what I read. Because of all the jargon, so, although you have a fair bit of comp knowledge, you may still want to take me up on this: Use: www.webopedia.com as a Jargon Buster. It has come in VERY handy on more than one occasion. :)
Avatar of pammoun

ASKER

can someone guide me through the differences between C++ / C# and C DOT NET ?
The difference between C++ and C# is only that C# runs on .NET framework.

Whereas the similarity is that both are Object Oriented Languages. Infact the whole power of any .NET tool is in .NET Framework, from where all the tools derive their features like memory management, garbage collection, security, assemblies.

Related to your latest comment the very technical and detailed explaination of differences between C++ and C# can be read on my blog  http://dotnetpassion.blogspot.com

All The Best

a Microsoft Pursit
http://dotnetpassion.blogspot.com

Vidya Vrat Agarwal.
>> can someone guide me through the differences between C++ / C# and C DOT NET ?

Yes.

C++ is the basic hardcore language that has been around for a long time.  It has obviously come into existence as a sucessor to C.  In this language, like C, you have to manage memory explicitly which means deleting as well as allocating to some extent.  C++ can be run on any platform that it is first compiled on, providing that libraries are present.  For example, you could not run a C++ application that uses Winsock on UNIX because the Winsock DLL is written for Windows only.  UNIX has its own sockets package that cannot easily be run on Windows etc.

C#

This is Microsoft's new language.  DOT NET is the new way of producing web applications according to MS.  It provides an easy way to integrate databases into web based applications although it has uses with desktop development (the Windows Forms libraries).  C# is still coming into wide use and it is questionable if it ever will be used as globally as C++.  You need the .NET environment installed to run a C# program and they can only be run on Windows (AFAIK)

C++.NET

This is what is known as C++ with managed extensions.  I am not incredibly knowledgeable on this but I know that these extensions take some of the pain out of memory management that is notorious in C++.  You can google search for the differences and find loads more info.

HTH
Avatar of pammoun

ASKER

I have made up my mind and will go for visual C++ 6.0 then maybe I will switch to c#.

thank you all for your help & advices.
Glad to help :)

If there is nothing else that you need advise on then, I suggest you close this question yourself to prevent negative feedback and annoying the page editors...
How about if you directly switch to C#, because in anycase (C++ or C#) will get to know Object Oriented concept. So why to work twice (VC++ and the C#), jump in to C# and work on some .NET architecture issues.

And hands on practice with C# will help you to work on .NET and you will also understand the very core concepts of Objects, I guess because of that you planned to go for VC++.

I just tried to suggest you this solution because of time and productive result before you put your efforts into technology.

Vidya Vrat Agarwal.
Avatar of pammoun

ASKER

I think I will go for c++ just for couple of months just to get the feelings , then I will switch to c.net

thanks to everybody for your help.