|
I responded ‘no preference’ and while that is broadly true I am more comfortable with C/C++ and the Windows API but only because that is how have earned most of my living for many years. I love Assembler and Pearl and have done a fair bit of both. My next big projects is almost certain to be C# and of course I have used BASIC, Pascal, SQL (is that a language?), Java, VBScript, HTML, ASP etc… as well as some other proprietary languages.
I do know that syntax aside there is not a lot of difference, that art of programming has little to do with language and more to do with logical constructs and forward planning. Of course we are all faster with the languages we know. I have libraries of functions/subroutines that I reuse all the time that give me a running start on a new project. As and when I start with a new language some of these have to be figured out in the new syntax and redone. I still get a buzz from solving a problem and making something work although buzzes are a lot less frequent when you stick to only one language and it is the buzzes that make programming fun. Remember back when you started and got a buzz every ten minutes was that not the hook that got you doing it full time?
I have been programming since the early eighties and making a full time living from it for twenty years. I am now over sixty so kick the standard demographics well in to touch but I still love the challenge.
|
|
|
|
|
I've maintained that I can program in nearly anything with a manual (book) and at any time, one or two languages without one.
My favorite, or at least most used, languages have varied from various assemblers, to Basic, Pascal, SNOBOL, proprietary languages of employers, C, C++, PostScript, Java, C#. I think the flat-out favorite was actually a now-gone proprietary system ... so why worry?
Besides, there'll be four hot new languages by the time I post this.
Henry in Ottawa
|
|
|
|
|
I had to laugh when I read this. It is so true.
The best IDE in the world?...a napkin underneath the Jack-D.
No single raindrop believes it is to blame for the flood.
-irresponsibility@Despair.com
|
|
|
|
|
I don't think that most of developers can effectively (!) work in more than one modern platform/language/framework at once due its complexity. The language itself is not that important. You could easily switch between lets say C# and VB.NET because the 90% of knowledge you need to learn are the .NET Framework libraries and CLR essentials.
I can imagine one could be able to "write code" for both .NET and Java platforms. But how would such code look like to pure developers on that platforms ? Of course there might be few exceptional people with double brain capacity
Petr
|
|
|
|
|
pvones wrote: course there might be few exceptional people with double brain capacity
I try my hardest to put myself in that category but it takes time to learn and master more than 1 framework. I rarely only work 40 hours a week. More likely 8 hours at work each week day and 6 to 8 at home.
|
|
|
|
|
True, the language itself is easier because it is only syntaxis.
The actual thing is to handle the framework, that's the engine that does all the work
Greetings,
Gary Wenneker
http://www.binario.nl
|
|
|
|
|
pvones wrote: I don't think that most of developers can effectively (!) work in more than one modern platform/language/framework at once due its complexity
Try telling that to recruiters though.
Kevin
|
|
|
|
|
pvones wrote: The language itself is not that important. You could easily switch between lets say C# and VB.NET because the 90% of knowledge you need to learn are the .NET Framework libraries and CLR essentials.
That is true if you are talking about very similar languages: VB/Java/C#. However, there are languages that are very different and require a shift in the way you think.
|
|
|
|
|
XSLT, for example, a fairly pure functional programming language. Good for some things, horrible if you try the wrong thing.
Henry in Ottawa
|
|
|
|
|
Henry Troup wrote: functional programming
Oh, that's what I've been doing for the last three hours?
|
|
|
|
|
Well since all our code ends as ASM (and binary) neither the shift in the way you think nor any particular syntax makes a big difference. This may change with bottom-up changes in principles of current technology.
if (xx + xy) % 2 return xy else return xx
|
|
|
|
|
Meh. It really depends a lot on what you're writing. If your code ends up being little more than glue between framework libraries, then yeah - you're gonna suffer trying to switch between (dissimilar) frameworks.
|
|
|
|
|
Well.... if your code doesn't take advantage of the framework libraries, you're writing too much and it's suboptimal.
I don't think I have "double brain capacity", but I can use Google and I can read English (and I have a multi-year O'Reilly habit I wrote tests in both C# and Java to get my current job; I scored slightly better in Java - so they gave me the C# job.
Henry in Ottawa
|
|
|
|
|
Henry Troup wrote: Well.... if your code doesn't take advantage of the framework libraries, you're writing too much and it's suboptimal.
There's a significant difference between taking advantage of libraries, and writing nothing but trivial calls into libraries...
|
|
|
|
|
That's certainly true; and there's a bit of art to it. If you organize your data so that you can call the framework's binary search, which is that?
Long ago, the claim was that 90% of most programs was input, output, and interface; these are the things we want to push down into frameworks, leaving the 10% that's actual logic and/or business rules as requiring real creative work. And, when frameworks provide decent rule engines, I'll use them, too.
The first "automatic programming" system was actually the first assembler. The generations of progress in software are mostly about doing less and less coding, of higher and higher value.
Henry in Ottawa
|
|
|
|
|
Henry Troup wrote: If you organize your data so that you can call the framework's binary search, which is that?
These days, i'd say it depends on if you chose the library because you liked the organization it expected.
Henry Troup wrote: And, when frameworks provide decent rule engines, I'll use them, too.
Right - because you know what you want, know what you need, and can therefore judge whether or not you're getting it. If the framework du-jour doesn't cut it, then you can write your own; if it does, then you'll use what someone else has written and debugged.
Frankly, i think that's the key difference between someone who can adapt to and thrive in whatever language and framework the job requires... and someone who clings stubbornly to their one and only. Not so much exceptional intelligence as diligence.
|
|
|
|
|
ya., You are true ., but wat one can do as a professional if there is a need to do only in the required programming language if the company asks to do so.., otherwise we have to search for food(oh another job) instead of searching for codes.,
|
|
|
|
|
You also have to consider the operating system.
My favourite language may be C, but only on DOS and OpenVMS.
For Windows/.net (where the money is) I'll stick with C#.
If someone offered me a job doing C on another operating system, I'd have to warn them that I'm not as familiar with it.
|
|
|
|
|
I agree. I'm self taught and have always been frustrated with command line compiler args. I've migrated towards C# because I don't ever have to use the command line compiler interface. I hate switching between windows (even on fast machines) to debug a function. So I would work on C or fortran projects but if I can get away with C# it just makes my development time shorter. However there are times when I feel more comfortable in C and fortran(MPI, pthreads) mostly because the documentation isn't quite so murkey .
|
|
|
|
|
ely_bob wrote: C# because I don't ever have to use the command line compiler interface
I use the CSC command-line all the time.
|
|
|
|
|
I'm generally willing to try any new language at least once. However, I reserve the right to refuse to work with a language again. So far, the only language I outright refuse to work with is Smalltalk. I avoid legacy VB and Java like the plague, but I'll work with them for small projects if it's absolutely necessary.
|
|
|
|
|
mike.strobel wrote: I reserve the right to refuse to work with a language again
For me, it's Perl.
Kevin
|
|
|
|
|
Reading Perl is hard; writing it is easy. So real Perl hacks always reimplement your code - it's easier than understanding it. APL is much the same.
Henry in Ottawa
|
|
|
|
|
Henry Troup wrote: Reading Perl is hard; writing it is easy
It's a "write once, read never" language.
Kevin
|
|
|
|
|
Program, Execute, Relax and Let it go
|
|
|
|