Hi,
We all studied programming on blue-screens with 17 year old compiler namely turbo C in our school days. What happens when you meet someone who tells you to change. Here is the sample conversation -
Q. Why not to use TC for Programming
Ans. Here are the reasons:
1. Less Horsepower: Seriously guys, 16 bit programming is out of the Window. An integer of 16 bits, even when I do some calculation that involves a multiplication, I do not use int for the fear of overflow. Then comes the problem of the so less the amount of stack space. Try running a recursive program with a large data input set and you will know what I am talking about. I once made a brute force algorithm for a problem which I wasn’t able to solve (I am not very good at solving problems) and was out of stack space in TC, went to Linux, ran gcc and got my answer. In those days, I did not have the luxury of a Visual C++ compiler.
2. Where are the graphics mate? : Yeah there are no graphics. You are stuck to the some 640*480 resolution on a widescreen 1200*800 laptop receiving flattened and coarse graphics. Then to add to it, only 16 colors, and don’t even think of making a windows or a menu bar. The effort will kill you. Had to learn the assembly programming and INT21H routine just to control the mouse.
3. Ok What about the data structures : Sorry no strings, no bools, no object conversions, no complex data structures like trees, hash-tables etc. Also, you have to be a math genie to do all the mathematical functions coz it provides a bare minimum library of functions.
4. I once scratched my head out thinking how I can run two tasks side-by-side at the same time. Like if I make a DOS game and want to put up a clock for timing you, I have to resort to the crude method of using delays and all to move the clock hand. No events, no timers for me. Also, I run my clock first and then the game and the game gets all freezed up when you repeatedly redraw the screen a 100 times a second. Ofcourse, I dint know about threads or event-based processing instead of the sequential processing of DOS.
5. Grand Old Man: Turbo is too old to get hold of new ideas like music or web. So, comes the problem of no integrity with web, music, other processes etc.etc. etc.
Q. Surely, I can do something with it, I mean I have spent all my life programming in it?
Ans. Oh yes you can. You have achieved quite a lot in it. Tell me all about what you did and how many lines of code it took you.
Q. I made a ummmm ….. a tic-tac-toe game in TC J and it was just a 1000 line code.
Ans. Make a similar code in Visual C++ or GTK with GCC in just 500 lines.
Q. Ok I agree it is a horrible compiler, but I still love the way it displays help and helps me write my code.
Ans. That’s just because you have still not seen the world of IDEs .Modern IDEs have code-folding, auto-indentation, paranthesis checks, TODO Lists, Documentation features, online help, code-completion and better debugging support.
Q. But won’t so many features bog a beginner like me down?
Ans. No they won’t. First of all the first time you bought a computer, did you start hacking into its registries and making changes like minimizing delay times on menu items. But you still found windows interesting enough even though every menu item took 200 ms more to open than it does now. Same are these features, they will only help you save those 200 ms if you look for them. Otherwise they are just there.
Q. But I have heard MSDN help is bad for a beginner. Linux Man Pages are tough to read.
Ans. Yes they are. But Turbo help too was difficult to read at one time. Wasn’t it. Give it some time and you ll catch on.
Q. Even though I am using TC what harm am I doing to myself? I am just not gaining benefit from features as you said earlier.
Ans. What I said earlier was different. You were not using the features that were available. You would have caught on at some point of time. Here there is no hope!
So, you are harming yourself. With each passing day of working on TC, you are forming opinions about your capabilities in programming on the basis of the capabilities of TC. You are re-inventing the wheel everytime and getting more frustrated by programming by the moment.
You fell yourself not capable enough to do the things these professionals do. Why? Just coz you don’t have the right tools.
Q. So, what’s the bottomline?
Ans. If you are using TC today also, please dump it and move on.
Hey a very Nice Play indeed. I too have added your Blog's Link on my Blog.... :)
ReplyDeleteHello. This post is likeable, and your blog is very interesting, congratulations :-). I will add in my blogroll =). If possible gives a last there on my blog, it is about the Telefone VoIP, I hope you enjoy. The address is http://telefone-voip.blogspot.com. A hug.
ReplyDeletecan you post this at CSI forums and mailing list?
ReplyDelete