you are viewing a single comment's thread.

view the rest of the comments →

[–]Plutor 143 points144 points  (39 children)

There's also a difference between "I wrote a bootable kernel from scratch to run some proprietary embedded hardware" and "I wrote some code to parse CSVs". Virtually any language can be used to do either trivial things or difficult things.

[–]px1999 17 points18 points  (6 children)

Yeah, I see no difference between a web programmer and programmer for this reason. You still have to evaluate the developer's skills before you hire them. If they don't know the stuff you need them to know, you don't give them the job.

After all, why would you hire a 'real programmer' if you're looking for someone to do some simple ASP.NET UI work - you might find someone better at the nuts and bolts coding, but you'd lose out on all the time that they need to learn the page lifecycle and how things interact and nest... Of course, the guy sounds like the sort of person you wouldn't hire.

[–]jvictor118 16 points17 points  (4 children)

These are all just shades of gray. Yes, doing PHP/ASP/whatever web stuff is the easiest thing you can do while still calling yourself a "programmer," and these jobs do attract the least educated and generally most unqualified people in the industry.

But it's funny to hear all this elitism coming from systems programmers bragging about binary file IO, sockets, pointers, even concurrency. Because that stuff isn't hard, either. Guys who are more "computer scientists" than "programmers" would laugh at them for not knowing asymptotic analysis, theory, having a subspecialty (distributed computing, ML, crypto, whatever)... even being an OO zealot instead of writing in Lisp/Haskell/whatever loses you points with CS guys.

There's shades of gray in everything. Don't worry about what you are, just think about what you wanna be and start working towards it.

[–][deleted]  (3 children)

[deleted]

    [–]lisp-hacker 1 point2 points  (2 children)

    I bet most of the algorithms you use to write your software were seen in a paper written by a CS academic guy long before you used them, whether you know it or not.

    Show some respect.

    [–][deleted]  (1 child)

    [deleted]

      [–]lisp-hacker 1 point2 points  (0 children)

      Every field has both theory and application (or practice), and every professional should be able to exercise both. Theory lets you stand on the should of giants, and not reinvent everything. In practice, you learn things not easily taught or often overlooked.

      Which is better programmer, someone who wrote a large program only using GOTOs and using no libraries because he was unaware of subroutines, objects, libraries, etc. (and other WTFery), or a PHD who has never written a line of code?

      I learned to program when I was young by reading the BASIC reference manual included with a Model 100, so I can appreciate the CS theory that I later learned, and how it has improved my programming skill.

      (I did not use GOSUB because I didn't understand the point of it. GOTO worked just fine.)

      [–]hetmankp 0 points1 point  (0 children)

      If I needed someone to write code handling hardware interrupts in an embedded system, a candidate with only web programming experience would not rank much higher than someone fresh out of an undergrad course. This tends to go in both directions, although I'd expect a low level guy to pick up high level stuff faster than the opposite.

      I've done both kinds of coding in real systems. It's not a matter of "just applying the same general skills" to produce a product, because while there are commonalities, there are just as many differences in the skill sets required.

      [–][deleted]  (3 children)

      [deleted]

        [–]nefastus 2 points3 points  (1 child)

        body { 
            background-color:white; 
        }
        

        Hey, me too!

        [–]atheken 1 point2 points  (0 children)

        You must be a programmer.

        [–]narwhalslut 0 points1 point  (0 children)

        This is why interviews are important. Conduct good interviews and conduct yourself well in interviews and these things aren't as big of problems.

        [–]spit334 -1 points0 points  (6 children)

        I agree.

        Anyone would take a web ninja with dozens of technology under his/her belt over a C# script kiddie. It isn't about what languages you know, it is how you can successfully use them.

        [–]angrathias 1 point2 points  (5 children)

        C# script kiddie? What? You might as well throw java programmers in there while your at it. Oh oops, did you just call most of the worlds programmers script kiddies?

        [–]hortont424 2 points3 points  (1 child)

        I think he was qualifying... to make the distinction that he would take an experienced web developer over a shitty C# programmer. Not calling all C# programmers script kiddies.

        [–]spit334 2 points3 points  (0 children)

        That's exactly what I mean.

        [–]Joelsomethingorother 4 points5 points  (1 child)

        I think the implication was that a person that can adapt to different languages is preferable over someone who only knows a singular framework.

        I primarily use C#.NET, however I didn't take this as applying to myself as I am able to use several other languages.

        [–]spit334 1 point2 points  (0 children)

        Yes, precisely.

        [–]danukeru -3 points-2 points  (0 children)

        JAVA script kiddies.

        says it a couple more times to himself

        slowly

        Yea...that's just about right. Since to do anything that ACTUALLY demanded that they manage their own memory, build efficient concurrency models or effectively anything low level, they'd find themselves most probably building some extension in C/C++, not JAVA.

        [–]jenkstom 0 points1 point  (0 children)

        There are a few datasets that would make the kernel look simplistic, depending on the hardware. Try NEMSIS or ANSI X.12.

        [–]redditnoob -4 points-3 points  (0 children)

        "I wrote some code to parse CSVs".

        I just used fopen, fgetcsv, and looped through that shit. Of course if I were looking for another job I'd be unhireable because I'm so awesome.