From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1014db,a03ae7f4e53958e1 X-Google-Attributes: gid1014db,public X-Google-Thread: 10d15b,328622178ec8b832 X-Google-Attributes: gid10d15b,public X-Google-Thread: 103376,8775b19e3c68a5dc X-Google-Attributes: gid103376,public X-Google-Thread: 1094ba,a03ae7f4e53958e1 X-Google-Attributes: gid1094ba,public X-Google-Thread: 114809,a03ae7f4e53958e1 X-Google-Attributes: gid114809,public X-Google-Thread: 109fba,a03ae7f4e53958e1 X-Google-Attributes: gid109fba,public From: joe@apk.net (Joseph T. Adams) Subject: Re: Which language pays most -- C++ vs. Java? Date: 1998/02/17 Message-ID: <6carua$hoi$1@nerd.apk.net>#1/1 X-Deja-AN: 325734154 References: <6at330$7uj$1@mainsrv.main.nc.us> <6bp6rh$sim$4@peachy.apana.org.au> <6bpoea$rd1$1@bvbsd2.kc.bv.com> <6bsddk$3cp$1@news.nyu.edu> Followup-To: comp.lang.c,comp.lang.c++,comp.lang.fortran,comp.lang.cobol,comp.lang.smalltalk,comp.lang.ada Organization: Quality Data Division of JTAE Newsgroups: comp.lang.c,comp.lang.c++,comp.lang.fortran,comp.lang.cobol,comp.lang.smalltalk,comp.lang.ada Date: 1998-02-17T00:00:00+00:00 List-Id: Richard Kenner (kenner@lab.ultra.nyu.edu) wrote: : : It's hard to see how a programmer could make anything of use with the : knowlege of how a transistor works at the solid-state physics level, : but a programmer would certainly have a better perspective of : architectural issues if they knew basically what a transitor *did*, : the differences between bipolar and MOS, and something about scaling : issues and constraints. Sheesh. Any first-year psych student knows that (a) bipolar = manic depressive, and (b) MOS = metal oxide semiconductor, an alternative form of therapy prescribed when lithium doesn't work. :) Seriously, I used to understand all about analog electronics, but the microprocessor revolution totally wiped out the field - electronic engineering - in which I had originally trained. Needless to say, I adapted to the brave new digital world, as we all have. But I adapted one level of abstraction at a time - first TTL gates, then CMOS, then simple CPUs, then advanced CPUs (68x00) with assembly, then Basic, then dBase, then VFP, back to C/C++/Java which I somehow missed, on to 2- and 3-tier distributed databases running on heterogenous platforms, and now a fairly eclectic (hodgepodge?) mix of every level of abstraction that is appropriate to the task at hand. I don't remember what the hell "bipolar" really means or which way electrons really flow, although for some odd reason I still remember what flip-flops and emitter followers look like. :) But having once had that information, I do at least remember where to look it up if I need to know. Similarly, while I very seldom have need to write assembler, I know that if I ever needed to, I could. There is something to be said for having at least rudimentary knowledge of *how* things work. Let's face it, there are tons of VB and Java programmers out there who learned programming by writing Excel macros. That's not a slight against VB or Java or for that matter Excel; but honestly, I don't think those folks will ever replace academically and/or professionally trained software engineers. They operate at very high levels of abstraction, which is absolutely fine, but someone has to operate at the lower levels if for no other reason than to build and optimize the tools which everyone else depends on. I myself like the higher levels of abstraction - except when I need to tweak things for maximum performance, or directly control hardware. But it's really cool to be able to pick my own spot on that ladder, and to be able to climb forwards or backwards and still have at least the beginnings of a clue about what's going on. :) Joe