Ok..with this latest work project I am finding myself programming at so many different levels (from firmware on up to the user GUI / application level) using multiple programming languages (assembler {both x86 and h8}, C, C++/CLI, Perl, Perl.NET and VB.NET) that at times my brain crashes and it seems like I no longer know any one programming language / developmental level (firmware / systems / user / etc).  When I have completed work for the day it starts to seem that I have gone from a well skilled programmer to a beginner as my brain tries to wrap itself around all these languages and levels of development.

Does anyone else run into this problem or is it just a sign of that old age thing creeping into me?

Give me the good old days when all there was was one language (assembly) and you could read one book in-order-to learn how to develop with it; not to mention being able to go to the store, purchase a Commodore (forget the actual name but it was for both the Vic 20 and the 64) magazine and then spend the next week typing in the hex code in the back with the end result being either the game or application that they featured in the magazine!

On a final note, not that anyone cares, but I find all of this .NET programming to be junk!  To me it seems that if this is what everyone is starting out to learn (be it in school or on their own) then they will never be able to solve any real world problems (programming wise) if you take their precious classes away from them {for example, ask them to write a simple memcopy command or list the ways to toggle bits or better yet ask them how they could confirm what is being sent to a device driver (for sending out on the USB bus) is actually going out across the bus in the proper way (without the use of a bus analyzer that is) } -- lets not even consider asking them to try and debug something that is outside of their source code!

Oh well, enough of my complaining!

Posted on 2007-11-02 21:30:47 by madprgmr
For what its worth..

I see .NET as the modern LISP 

no, not in syntax..

..its in the "stock" data structures. Just like LISP, .NET comes with a plethora of common tools for data structures .. stacks, queues, lists, trees, maps, and so forth..

Thus the programmer doesnt have to learn anything implimentation-specific about the data structures he needs .. this is perfect for many programmers in many fields .. such as researchers in artificial intelligence, who really do not need to know or care about the specifics of the implimentation .. they are toiling over algorithms, not implimentations .. and it is very good that such languages exist for it is only after the algorithms have been worked out that concerns such as implimentation become meaningfull.

I currently use VB.NET for algorithm prototyping .. I would never use assembler for that
Posted on 2007-11-02 23:21:10 by Rockoon
To answer your first question: Nah, it's not age. It's quite normal for a programmer to overburn his/her brain ^^ Esp. when you 'switch' between levels of abstraction too frequently ^^

To answer your second question: I too miss 'the old times'(tm) where you could just learn 6510 asm and write your own game in like 7 days ^^ But now machines get more complicated, so to hide the complexity, new languages/platforms are being developed. And it's just the mark of time that 'newbie' programmers know literally nothing about what's going on 'under the hood' - they just use what is provided by the language/platform. It's OK in its own way, because people can focus on abstract stuff instead of its implementation. Programming techonologies are trying to approach the level when you no longer 'type' code but instead you literally 'build' the code from blocks, like LEGO. Actually, there already are languages like these.
Posted on 2007-11-02 23:57:18 by ti_mo_n
I think the creation of all these new languages is like businesses creating different varieties of the same product; all competing to win over the 'customer'.  With Microsoft, it is a business competition to win over customers.  I, too, went through a frenzy of trying to figure out what other high level languages I wanted to learn.  Which was the "best"; at least for me?

I came to the same conclusion.  Everything should be as simple as possible.  I find assembly and C do everything I want to do.  I wish I knew a scripting language better than I do.  I made a list of languages I wanted to know.

bash since I use FreeBSD but I need something more general purpose.  Perl just confused me but that may be because I was in a hurry to learn it.  I think I would find Lisp interesting and fun, but I have no immediate need for it.  I was torn between Python and Ruby but settled on Ruby but, again, I have no immediate need. 

Speaking of confusing, I hate Microsoft's tendency to add/change/drop features and solutions, along with far, far too many to remember so anything .NET related is out of the question.  I don't use Windows stuff anyway.

So here's my list:
1) assembly
2) C
3) Ruby
4) Lisp
5) bash

I have no need for anything else.
Posted on 2007-11-03 11:28:35 by drhowarddrfine