tag:blogger.com,1999:blog-35412705.post4954010742395852634..comments2022-07-18T06:46:28.554-05:00Comments on Jake Beal's Next Step: The Programmer Litmus TestJacob Bealhttp://www.blogger.com/profile/03294188694250217754noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-35412705.post-8761115493209302362013-07-02T01:57:25.256-05:002013-07-02T01:57:25.256-05:00You raise some interesting points, Ben, but I'...You raise some interesting points, Ben, but I'm afraid that I have to disagree with you. At the core of it is the passivity implied right at the beginning: "they get moved around from project to project." In my view, being a good programmer is also all tangled up in curiosity and a flexible mental approach.<br /><br />To understand my point, let's take an extreme scenario and say you were to point me at somebody and say: "That person has spent 20 years in the industry maintaining FortranBeast. They don't know anything but Fortran, but their Fortran is just incredible." Maybe that's true, but I'll be quite suspicious. How could somebody spend 20 years and have so little curiosity and drive that they never set foot outside of the little patch of lawn demarcated for them, not even on their own time? Such an inflexible mind I would not trust to do anything but walk in circles in its own comfortable grooves, until proven otherwise.<br /><br />Now, my litmus test still won't guarantee that somebody's any good at any particular thing that you want them to do... see, for example, my atrociousness at system administration. But it's a good starting point.Jacob Bealhttps://www.blogger.com/profile/03294188694250217754noreply@blogger.comtag:blogger.com,1999:blog-35412705.post-770722185558756322013-07-01T13:31:46.292-05:002013-07-01T13:31:46.292-05:00Implicit beneath your criteria is the idea that &q...Implicit beneath your criteria is the idea that "real" programmers operate in an environment in which they get moved around from project to project, using a variety of languages that meet the particular needs of the project. But wouldn't a better "litmus test" be the logical quality and algorithmic elegance of the work product? Why is it a measure of a programmer's quality if he knows 50 languages but is a hack in all of them? And why isn't someone who programs exclusively in a couple of general purpose languages and a half dozen special purpose languages, but who creates excellent designs that are both functional and highly efficient, a "real" programmer?<br /><br />I am exiting the industry very imminently, so I don't really have a personal axe to grind. I did my thing and made a decent living at it, and now I'm moving on. (I probably never met my own test for a "real programmer" anyway.) But if I were a career guy who had gotten really deep into nothing but Java, XHTML, CSS, Javascript, XML, and XSD, and some other guy came along and told me I'm not a "real programmer" me based solely on the number of languages I know--without examining the quality of my projects--I might be inclined not to take that person's assessment very seriously.bbirneyhttps://www.blogger.com/profile/05164135128753569601noreply@blogger.comtag:blogger.com,1999:blog-35412705.post-59541444460986824782013-06-18T22:13:19.179-05:002013-06-18T22:13:19.179-05:00That's beautiful... I'll have to point tha...That's beautiful... I'll have to point that fuzzing paper out to some folks I know who will highly appreciate it...Jacob Bealhttps://www.blogger.com/profile/03294188694250217754noreply@blogger.comtag:blogger.com,1999:blog-35412705.post-73680180007516723552013-06-18T20:28:45.990-05:002013-06-18T20:28:45.990-05:00Actually perl isn't quite 50/50, looks like 45...Actually perl isn't quite 50/50, looks like 45/55 ...<br /><br /><br />http://www.spinellis.gr/pubs/conf/2012-PLATEAU-Fuzzer/pub/html/fuzzer.html<br /><br />I thought that was a brilliant way of quantifying something many of us have often though about the languages we love, hate, and love to hate.<br /><br />And according to your criteria, yes I am a Real Programmer. <br /><br />However according to xkcd, I am not.<br />http://xkcd.com/378/cariasohttps://www.blogger.com/profile/00896615627788687683noreply@blogger.comtag:blogger.com,1999:blog-35412705.post-43105936197558411252013-06-18T09:11:32.628-05:002013-06-18T09:11:32.628-05:00Why wouldn't you count Perl as a programming l...Why wouldn't you count Perl as a programming language? It's Turing complete, which doesn't merely qualify it, but over-qualifies it. Graphing calculators also definitely count --- I forgot all about them in my list. And your answer also is complexified by the fact that you've not only worked with PHP and SQL, but developed strong enough opinions about their power relative to other languages that you needed to express them...<br /><br />Now, you might well be Paul Graham's eponymous <a href="http://en.wikipedia.org/wiki/Paul_Graham_(computer_programmer)#Blub" rel="nofollow">blub programmer</a>, but you clearly pass the litmus test.Jacob Bealhttps://www.blogger.com/profile/03294188694250217754noreply@blogger.comtag:blogger.com,1999:blog-35412705.post-18849584562744686912013-06-18T08:35:08.513-05:002013-06-18T08:35:08.513-05:00Well, Perl isn't really a programming language...Well, Perl isn't really a programming language, and PHP is kind of gimpy, and SQL is just so limited.... Does programming graphing calculators count? HTML and CSS definitely don't count, but I guess I've prodded at them a bit. C++ definitely counts, but I haven't done anything since classes, and likewise with Lisp, even though I nominally work on a project that's written in Lisp. Oh, and Python. And bash.<br /><br />I still don't feel like a Real Programmer though. It's a pretty short list anyway. :)Anonymoushttps://www.blogger.com/profile/01864825303824827606noreply@blogger.com