Last october one of the greats of the IT world passed away, and I'm not talking about Apple's CEO, but about somebody whose influence in the field matches or surpasses that of Gates and Jobs, but he wasn't as popular:
Dennis Ritchie[attachimg=1]
link:://:.wired.com/wiredenterprise/2011/10/thedennisritchieeffect/ (link:://:.wired.com/wiredenterprise/2011/10/thedennisritchieeffect/)
QuoteHe was the designer and original developer of the C programming language (link:://en.wikipedia.org/wiki/C_(programming_language))
, and a central figure in the development of
Unix (link:://en.wikipedia.org/wiki/Unix)
. He spent much of his career at
Bell Labs (link:://en.wikipedia.org/wiki/Bell_Labs)
. He was awarded the Turing Award in 1983, and the National Medal of Technology in 1999.
link:://boingboing.net/2011/10/12/dennis-ritchie-1941-2011-computer-scientist-unix-co-creator-c-co-inventor.html (link:://boingboing.net/2011/10/12/dennis-ritchie-1941-2011-computer-scientist-unix-co-creator-c-co-inventor.html)
Computer historian
Paul E. Ceruzzi (link:://en.wikipedia.org/wiki/Paul_E._Ceruzzi) said after his death: "Ritchie was under the radar. His name was not a household name at all, but . . . if you had a microscope and could look in a computer, you'd see his work everywhere inside."
His page at bell labs is still online.
link:://cm.bell-labs.com/who/dmr/ (link:://cm.bell-labs.com/who/dmr/)
Nicely Recognised there Victor. :thumbsup:
It seems it's easy to overlook greats not included in pop culture. We are however better for his work.
MacOS and iOS are unix-based, so in a sense Steve jobs piggybacked on Ritchie's work a lot.
QuoteDennis was one of the true pioneers, and his contributions created the base that the computing world stands on today. But he was a real nerd, not a salesman, and never believed or practiced self promotion. As such most people never heard of him, even though without his leadership, all our lives would be very very different.The best accolade came from Steve Jobs When praised for his accomplishments, Steve replied" I stood on the shoulders of giants"Dennis Ritchie was one of the giants
As for Windows, it was first coded in C, Ritchie's programming language.
By the way, if I were Bill Gates, I would get into a secured cave until the year 2011 ends.
Nice one Vic. :thumbsup:
Not forgetting the billions of embedded systems in cars, washing machine, fridges etc. C is the language of choice for these devices too. It's truly the 'lingua franca' of programming. Still popular even though many young programmers think it's 'dead', second only to Java (and only just) in popularity (link:://:.tiobe.com/index.php/content/paperinfo/tpci/index.html).
Quote from: Bayes on Nov 26, 12:08 PM 2011
[...]It's truly the 'lingua franca' of programming. Still popular even though many young programmers think it's 'dead', second only to Java (and only just) in popularity (link:://:.tiobe.com/index.php/content/paperinfo/tpci/index.html).
Most often than not, the languages expected to "kill C", are implemented in C themselves :)
i.e.
cPython, the most widely used implementation of the Python programming language.
link:://en.wikipedia.org/wiki/CPython (link:://en.wikipedia.org/wiki/CPython)
[attachimg=1]
Or
cRuby, the most widely used implementation of the Ruby programming language (Ruby MRI)
link:://en.wikipedia.org/wiki/Ruby_MRI (link:://en.wikipedia.org/wiki/Ruby_MRI)
[attachimg=2]
I think PHP and Perl are written in C too, as well as my personal favourite - euphoria (it has a nice and easy interface to C functions and variables).
C doesn't have the most user-friendly syntax though. Did you know there's an annual 'obfuscated C' contest? the winner is the programmer who writes the most unreadable code. Here's a previous winner which when compiled and run will generate the 12 verses of The 12 days of Christmas. ^-^
/*
LEAST LIKELY TO COMPILE SUCCESSFULLY:
Ian Phillipps, Cambridge Consultants Ltd., Cambridge, England
*/
#include <stdio.h>
main(t,_,a)
char
*
a;
{
return!
0<t?
t<3?
main(-79,-13,a+
main(-87,1-_,
main(-86, 0, a+1 )
+a)):
1,
t<_?
main(t+1, _, a )
:3,
main ( -94, -27+t, a )
&&t == 2 ?_
<13 ?
main ( 2, _+1, "%s %d %d\n" )
:9:16:
t<0?
t<-72?
main( _, t,
"@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l,+,/n{n+,/+#n+,/#;\
#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/+k#;\
q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; \
r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#\
\
n'wk nw' iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;\
{nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;\
#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/")
:
t<-50?
_==*a ?
putchar(31[a]):
main(-65,_,a+1)
:
main((*a == '/') + t, _, a + 1 )
:
0<t?
main ( 2, 2 , "%s")
:*a=='/'||
main(0,
main(-61,*a, "!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry")
,a+1);}