Slashdot Mirror


Obsolete Technical Skills

Ponca City, We Love You writes "Robert Scoble had an interesting post on his blog a few days ago on obsolete technical skills — 'things we used to know that no longer are very useful to us.' Scoble's initial list included dialing a rotary phone, using carbon paper to make copies, and changing the gas mixture on your car's carburetor. The list has now been expanded into a wiki with a much larger list of these obsolete skills that includes resolving IRQ conflicts on a mother board, assembly language programming, and stacking a quarter on an arcade game to indicate you have next. We're invited to contribute more."

39 of 603 comments (clear)

  1. Assembly isn't obsolete! by nurhussein · · Score: 5, Insightful

    Systems programmers worth their salt can at least read assembler output. It's a valuable skill when debugging kernel errors.

    1. Re:Assembly isn't obsolete! by Oscaro · · Score: 5, Insightful

      Every programmer should know something about assembly. It gives you a better insight on what the compiler does for you, on how a function is invoked, on how an array is accessed, and so on.

    2. Re:Assembly isn't obsolete! by DMUTPeregrine · · Score: 3, Insightful
      From TFA:

      Still used when the utmost performance or very low-level control (e.g. in bootloaders) is desired. Still may be used particularly for small, frequently used sub-routines. On simple processors (not Intel/AMD), it is still viable.
      They didn't forget, it's just a niche skill. Assembly is obsolete for most purposes. You don't see it in application programming. You rarely see it in systems programming. You never see it in web programming. Even games don't use it anymore.
      --
      Not a sentence!
    3. Re:Assembly isn't obsolete! by SharpFang · · Score: 4, Insightful

      Actually, assembly is very relevant for embedded devices - except i386 assembly that is :)

      Sure 'smartphones' etc start getting programmable in high-level languages but OTOH simple microcontrollers enter more and more of daily appliances. You don't write firmware in assembly for a DVD player anymore, but you write it for a toaster or a bicycle lamp, devices that 5 years ago didn't have any firmware or programming capability. The frontier is and likely always will be assembly, and even though the frontier keeps moving and likely in 5 years the bicycle lamps will be programmable in Java, maybe ballpens will be programmable in assembly.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    4. Re:Assembly isn't obsolete! by Oscaro · · Score: 3, Insightful

      Also, compilers are written by people, and compilers' output is assembly code.

    5. Re:Assembly isn't obsolete! by Zondar · · Score: 3, Insightful

      When you can write a bootloader that fits in the unused sectors on a floppy disc using Java or C++, come talk to me and I'll be impressed. Until then...

    6. Re:Assembly isn't obsolete! by PinkyDead · · Score: 3, Insightful

      I think you could go further and say that the reason so much bloated garbage is produced is because developers have such a thin understanding of the techniques they are using and have no idea of the consequences of their actions.

      For example, data structures such as lists and arrays are used interchangeably without any idea of the pros and cons of each, and the right place to use them. There are plenty more examples of this.

      At the very least, the abstract notion that we should aspire to understand what lies beneath our current level of knowledge and how it affects the quality of code is fundamental to good practice.

      --
      Genesis 1:32 And God typed :wq!
    7. Re:Assembly isn't obsolete! by ultranova · · Score: 3, Insightful

      They didn't forget, it's just a niche skill. Assembly is obsolete for most purposes. You don't see it in application programming. You rarely see it in systems programming. You never see it in web programming. Even games don't use it anymore.

      Niche ? JIT compilers depend on it - to nitpick, they propably product opcodes, but it's not like there's much difference. In fact all compilers which produce machine code depend on it. All systems programming depend on someone writing the assembler routines to actually manipulate the hardware.

      Assembler is a niche skill to a programmer in the same way that knowing how to build foundations is a niche skill to a house builder: you can make do without, but only as long as you get someone else to do the groundwork for you.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    8. Re:Assembly isn't obsolete! by jcnnghm · · Score: 5, Insightful

      And this is exactly the problem with computer science education today. I don't think I had a well rounded understanding of computer science until after I learned assembly and implemented my own instruction set on an FPGA. Doing that was kind of like hearing the music when the apes touch the obelisk in 2001. When all you know is Java, it's kind of hard for the computer to be anything more than a magical box that run Java. As soon as you implement jump instructions, everything else seems to fall into place.

      --
      You don't make the poor richer by making the rich poorer. - Winston Churchill
    9. Re:Assembly isn't obsolete! by h4rm0ny · · Score: 4, Insightful

      The article points out that this is a niche skill, not one that's widely useful.

      It was always a niche skill, possessed by only a tiny fraction of the population. There are probably more assembly language programmers today than there were forty years ago. And assembly language is used for the same things today as it was back then. If people want to say that today, programmers use languages like PHP and Java for creating web-applications not Assembly, then that is fine. Assembly never was used for creating web-applications because they didn't exist back then. Assembly has neither diminished in popularity nor entirely been superceded in its area. Shouldn't be on that list.
      --

      Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
    10. Re:Assembly isn't obsolete! by Kadin2048 · · Score: 4, Insightful

      The article points out that this is a niche skill, not one that's widely useful.

      It was always a niche skill, possessed by only a tiny fraction of the population. There are probably more assembly language programmers today than there were forty years ago. And assembly language is used for the same things today as it was back then. If people want to say that today, programmers use languages like PHP and Java for creating web-applications not Assembly, then that is fine. Assembly never was used for creating web-applications because they didn't exist back then. Assembly has neither diminished in popularity nor entirely been superceded in its area. Shouldn't be on that list. I think this is an excellent point and one that really doesn't get mentioned enough whenever the topic of "dying" technical skills comes up.

      Some skills just seem like they're obsolete or dying because the proportion of people within a field that have them is getting smaller -- but they're really stronger than ever when you look at the raw numbers.

      I agree with the parent and fully suspect that there are more people who understand x86 assembler today than there were at the perceived 'height' of assembler, back in the early 90s. There are just that many more people in the IT field. Learning assembler, if you happen to be interested, is also a lot easier now than it was then. Today, computers are basically a mainstream subject, plus you have all the information available on the Internet. In 1990, finding a good book on assembler programming would probably have required a trip to a large university's library.

      Obviously there are some skills that really are on their way out, or will be when the current crop of people who truly understand them either retire or die. But in many cases I think it's easy to confuse the S/N ratio in a particular sphere with the number of people who actually are familiar with a topic.
      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    11. Re:Assembly isn't obsolete! by vidarh · · Score: 2, Insightful
      One of those things from my childhood that's now deeply embarrassing: I started programming very young, but only in basic at first. Around 10-11 I realized that to do any "cool stuff" I needed to know about assembler. But the sources I had didn't even really explain WHAT assembler was, and together with a couple of friends I tried figuring out how to do it, with rather poor results.

      At first we tried poking in the textual strings of BASIC programs into memory, not realizing that even BASIC programs were stored in a more advanced way (on the C64 they were tokenized and keywords were stored as mnemonics to save space and speed up the interpreter). When we found out about the mnemonics bit we tried poking them in, which might've would've worked if we'd put them in the right locations and run them as basic programs instead of trying to use "sys" to call it. Finally one of us got hold of an assembler, and eventually a book on assembler programming.

      I think it took a year or so from we started exploring it until we actually were writing simple assembler programs.

      While an adult would've had an easier job finding and obtaining books about it instead of fumbling around the way we did, it does illustrate how much harder obtaining technical knowledge was.

      Already when I got an Amiga it was far easier - there was a number of technical books (my first one for the Amiga was probably the Advanced System Programmers Guide), and mainstream computer magazines were running articles on assembler programming and other languages.

      When I got a modem it got almost trivial.

      If I'd started fresh again today, I'd probably just gone to wikipedia, followed by going to a search engine and searching for "assembler tutorial"

      x86 assembler put me off, though. I haven't done any serious assembler programming since my Amiga days largely for that reason - when you've done M68k assembler, x86 assembler looks about as fun as poking your eyes out with a fork.

  2. Too many jokes and false entries by philbert2.71828 · · Score: 4, Insightful

    Fortran isn't obsolete. It's still popular in particle physics. Also, "buying an HD-DVD" is on the list. Not that that was ever a "skill." This list is just begging to be filled with joke entries like that.

  3. Great! by K.+S.+Kyosuke · · Score: 2, Insightful

    I've been waiting for this all the time... The knowledge of assembly language should have been obsoleted a long time ago, since, naturally, all the compiler programmers today just...wait...there's something fishy here...

    --
    Ezekiel 23:20
  4. Navigating by compass is obsolete? by dave1791 · · Score: 5, Insightful

    Navigating by compass is obsolete? That's like saying that keeping candles in your house in case of extended blackouts is obsolete.

    Some things on that list are either silly or shortsighted.

  5. I have some news for this douchebag by Anonymous Coward · · Score: 1, Insightful

    Assembly programming is still a very much needed skill for embedded systems developers that need to run highly-optimized code with very limited memory and processor resources. Your cellphone doesn't have a Core 2 Duo in it, retard.

  6. Cracking protected information. by Thanshin · · Score: 5, Insightful

    Without assembly knowledge we'd have uncrackable IP "protection" schemes.

    1. Re:Cracking protected information. by Opportunist · · Score: 4, Insightful

      The problem goes way beyond IP protection. Do you think that pseudo "AES encryption" device we heard of yesterday that only used some XORing for "protection" would have been debunked if there wasn't people who still know their assembler?

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  7. Churn butter? by WK2 · · Score: 5, Insightful

    Churn butter is on the list. I guess it just comes that way out of the cow now. Science is amazing.

    --
    Write your own Choose Your Own Adventure. http://www.freegameengines.org/gamebook-engine/
  8. Re:Assembly language is obsolete? by sqldr · · Score: 3, Insightful

    Correct. They also missed out one of the main reasons for the demise of assembler though - the rise and rise of x86 compatible CPUs with their shit-awful instruction set and 4 registers. Assembler on 68k, powerpc, risc, cell, hell, anything but intel is still very doable.

    --
    I wrote my first program at the age of six, and I still can't work out how this website works.
  9. Obsolete skills by ta+bu+shi+da+yu · · Score: 5, Insightful

    I'm looking forward to the day when blogging becomes obsolete.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  10. So, I'm obsolete, huh? by Wingsy · · Score: 5, Insightful

    I design embedded systems for a living, and this obsolete assembly language skill is what distinguishes my designs from those other companies. True, it takes me a little longer to get the code done, but it runs faster, has more features, and fits into a much smaller memory space than what I could do with C, or anything else. (Not to mention the fact that all the bugs in my code are all mine and none were introduced by a compiler.) I feel like it's to my advantage that assembly has faded from most designer's skill set. I won't deny that this skill is on the endangered species list, but to group it with the skill needed to dial a rotary phone made me speak up. It may be rare but it certainly isn't useless.

    --
    If I didn't have absolutely NOTHING to do, I wouldn't be here.
  11. I can think of a few by ThreeGigs · · Score: 5, Insightful

    Using PEEK and POKE to 'unerase' that Apple II basic program someone erased when they accidentally typed 'NEW'.
    The skill to determine a modem's connect speed from hearing the negotiation sounds.
    'Notching' an old single-sided floppy to be able to make it a double-sided disc.
    Cleaning and/or aligning the heads on your cassette player.
    Terminating or crimping coax.
    Knowing you need to type "DIR /S /AH /ON" without having to DIR /? first.
    Was 'winding your watch' in the list?

    I'd love to see some speculation on what skills you'd expect to be obsoleted by 2029.

    1. Re:I can think of a few by SirSmiley · · Score: 2, Insightful

      Crimping Coax? Im guessing you've never dealt with security cameras (bnc connectors) or satellite or cable or any residential video systems (coax is a type of cable and not a connector)

  12. It's not obsolete, here's why: by Nicolas+MONNET · · Score: 4, Insightful

    There are probably many times more people capable of programming in assembly language today than in the 70s. Kernel developpers, compiler developers (obviously!), CPU designers, embedded systems developpers and so on.
    On the other hand, there are many times less people capable of making horse buggies than in the XIXth century; that's obsolete.

    1. Re:It's not obsolete, here's why: by Jason1729 · · Score: 2, Insightful

      I write my compilers in Bison

      Seriously though, I do a lot of PIC assembly programming. Something like Arduino is fun to play with, but for anything non-trivial in an embedded system, it has to be assembly.

    2. Re:It's not obsolete, here's why: by drinkypoo · · Score: 3, Insightful

      Why percentage of programmers? Why not percentage of the population as a whole? I bet the number has grown.

      Because non-programmers don't program in ANYTHING? Duh?

      I bet the number has fallen sharply. It used to be impossible to do many things without ASM. Now you can just throw processing power at problems and hope they go away. Ever notice how much less responsive your computer is when you're not even USING all the amazing new functionality, compared to say PC-GEOS? A lot of that is due to lazy programming. And part of that is not optimizing much, if at all; and part of that is not doing any assembler.

      Most programs are never optimized (or at least never heavily optimized) because they can run on our computers of today. Think about it: right now I have barely more actual functionality than I did on my Sun 4/260, but in the name of eye candy and tooltips and shit I run Ubuntu and it's about as responsive on this Core Duo T2600/2GB DDR/80GB 7200rpm SATA as Solaris 1.x was on a SPARC at 16 MHz, with 24MB of FPM DRAM, and a 500MB 5400 RPM SCSI-II fast/narrow disk.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:It's not obsolete, here's why: by John_Booty · · Score: 5, Insightful

      How much of the cool stuff you enjoy using today would even exist if it had to be coded in assembly? You think you'd be using a nice, modern web browser or game if they had to code the whole thing in assembly?

      Coding in higher-level languages frees programmers up to create actual cool stuff. It's great that some ur-geek wrote a bitchin' disk driver in ASM that fits in 7KB of code during one Jolt-and-meth-fueled month back in 1991 but jesus, who cares. Given the chance, I bet that engineer would have done it in 1/4 of the time in C and actually done something useful with the rest of his month. Or at least stayed away from the meth and Jolt.

      It's the technological equivalent of carrying buckets of water three miles from the stream to your prarie frontier home every single morning. Like, it's cool and admirable that people once did that, but thank goodness we generally don't have to do that these days. Even if my tap water really doesn't have any new functionality compared to that stream water.

      --

      OtakuBooty.com: Smart, funny, sexy nerds.
    4. Re:It's not obsolete, here's why: by John_Booty · · Score: 3, Insightful

      >>How much of the cool stuff you enjoy using today would even exist if it had to be coded in assembly?

      >Maybe less in terms of quantity, but more in terms of quality.


      I disagree. The complexity of a software module does not grow linearly with size. It grows much faster than that. Something like Firefox (a piece of software most of us enjoy, though most of us agree it could be much more svelte) just couldn't be accomplished in any reasonable time frame in assembly because of the sheer complexity involved.

      Assembly has its place (and always will) and I'll ALWAYS look to assembly programmers as the true heroes of the programming world. I just like to take issue (or rather, poke fun) at these people that pine for an imaginary world where everything is written in assembly.

      --

      OtakuBooty.com: Smart, funny, sexy nerds.
    5. Re:It's not obsolete, here's why: by demallien2 · · Score: 5, Insightful

      Actually, percentages are quite simply a sucky way of judging whether something is obsolete.

      In the context of this discussion, a skill is obsolete when it is no longer needed to do something that is still being done today - For example, nobody needs to know how to load a program off tape on a C64 these days, because we don't have C64s anymore.

      By this definition, assembly programming is obviously NOT obsolete. We still need assembly programmers: for device drivers, for kernel programming, for writing compilers, for reverse engineering old code that is no longer supported, for cracking dumb DRM schemes that take away our fair-use rights, etc etc etc. The fact that not many people know how to write assembly is irrelevant: does the fact that few people know how to build a human-rated space launch vehicule mean that it is obsolete?

  13. Re:But what is going to be obsolete ? by Opportunist · · Score: 4, Insightful

    As someone who uses many languages I can tell you this: All imperative languages can be learned in very reasonable time if you know your C. Everything is derived from C today, from PHP to Perl to Java. Why? Well, maybe because the guys who wrote those languages come from C.

    In a nutshell, it doesn't matter what language you use, which language is the next big thing, or what language becomes obsolete tomorrow. You will probably not know all those fancy functions that do what you used to do by hand, but what matters is whether you know the math behind the code. I've seen so many people claiming to know Java, C# and whatnot, just to give me that incredibly blank stare when I ask them for hash tables. Yes, they know every function, every class in Java by heart, but they have no knowledge of what they should actually DO with it.

    Now, it might not be a "necessity" tomorrow when there is a function that does it for you. But it is VERY easy to learn about a function (hell, look it up, it ain't like there's no online help file for it) while it is not so trivial to understand what it actually DOES.

    So it does not matter what language will arise or what language becomes obsolete. What matters is that you know the theory behind the structures you're supposed to use. When you know that, you can understand what the functions and classes do. When you understand that, you can more efficiently and sensibly fill them. When you do that, your program will work with fewer bugs and fewer "why the fu.. doesn't that work now, it did last time" moments.

    Don't learn languages. Learn theory!

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  14. Jumping off the bandwagon? by TheRealChuckNorris · · Score: 5, Insightful

    I've been thinking about retiring - I'm 34 years old. I think I'd be happier if I'd jump off the bandwagon and started doing something totally different. Something that would not require me to study all the time and be stressed all the time.

    I grew up with home computers. I learned BASIC when I was 11. That is obsolete skill now. Then I got my first PC in 1988 and learned DOS. That's obsolete. Then I learned Borland's Turbo Pascal. That's obsolete. Then I learned Microsoft C programming and started programming Windows 3.1 applications that used Windows menus etc. That's obsolete. I learned Gopher and Telnet in the 80s. That's obsolete. I learned Pine. That's obsolete. I learned to tweak Windows 95 registry. That's obsolete. I learned BEA Tuxedo at work. That's obsolete. Looking at it now - I've wasted countless of hours to something that is totally obsolete now! Had I invested that time into improving myself - learning who I am, how I behave, how to enjoy this life - I would be much happier now I guess.

    --
    Don't F**K with Chuck!
    1. Re:Jumping off the bandwagon? by mrxak · · Score: 3, Insightful

      Did you not enjoy learning all those things? There's plenty of stuff I know that's obsolete now, but I enjoyed learning it all. I guess if you haven't enjoyed it, or feel it was a waste of time, you should definitely quit and do something else.

    2. Re:Jumping off the bandwagon? by Grishnakh · · Score: 2, Insightful

      Get off the Microsoft bandwagon, and you'll find your skills don't become obsolete as fast.

      C programming (not MS-specific) has been a useful skill for decades now, with no end in sight. I program in C every day.

      telnet: it's been replaced by ssh, which basically works the same. Command-line UNIX doesn't seem to be going anywhere.

      Pine: who cares? Email programs aren't hard to learn.

  15. Floppy disks by bandersnatch · · Score: 2, Insightful

    Turning a single-sided floppy into a double-sided floppy with a hole punch.

  16. I'm gonna go out on a limb here... by Jedimstr397 · · Score: 2, Insightful

    HD-DVD is obsolete. I feel sorry for those poor bastards that bought the new Beta. I never had a Beta Player myself, my mom opted for the VHS based on my uncles' advice. Any comments from anyone with prior experience in owning and operating an obsolete device that feels as though it just wont let go? In this day and age with HD-DVD I wonder how long it will take to completely disappear? We're either going to have bargain basement prices on HD hard and soft ware or they'll skyrocket in hopes of being a collectors item.

    --
    This signature has The Force
  17. Re:But what is going to be obsolete ? by Opportunist · · Score: 2, Insightful

    That's because HR people interview for jobs. This is changing, at least here, where the recruitment of key personnel is being outsourced to recruiting companies who DO know what to look for in a good applicant. Mostly because they usually have terms like "applicant must stay 6 months before we see any money" in their contracts.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  18. Re:Mish mash proves you're clever? by Anonymous Coward · · Score: 1, Insightful

    Romans are still widely used for numbering front matter. Niche - somewhat, obsolete nope.

  19. Simplistic thinking in this list by amper · · Score: 4, Insightful

    What strikes me as astonishing about this topic, other than the fact that the majority of the discussion seems to revolve around the utility of assembly programming, is that the list itself displays a marked lack of understanding of the ongoing utility of low technology devices. For instance, one of the items listed is "Buttoning one's trouser fly". Perhaps the author of that idea has never heard of Levi's 501 Jeans? I submit that the 501's are some of the most popular trousers in the world, and the skill of buttoning them could hardly be considered obsolete. The rest of the list is rife with items that only the most technologically-blinded among us could possibly think of as obsolete.

    Even the summary contains a dubious suggestion, "Changing the gas mixture on your car's carburetor". Perhaps the author is unaware of the vast numbers of motorcycles and small engines sold each year that incorporate carburetors?

    "Cast lead bullets"? Thousands, if not millions, of ammunition reloaders would disagree.
    "Changing vacuum tubes"? Millions of musicians would disagree.
    "Darkroom photography skills"? "Developing photographic film"? Obviously, this person is not a photographer!

    That's as far as I can get without becoming even more disgusted with the state of humanity, or at least the supposedly tech-savvy people who probably are contributing to this list.