None of this is intended to denigrate any of the languages mentioned, of course. And believe-it-or not I had no specific individuals in mind either.
But I am, and shall remain, convinced that computer science has learned a trick or two since BASIC, or COBOL, or any of the others were created. Some of these advances are just too painful to retrofit to a language that quite correctly places a high premium on backwards compatibility. The forces acting here are powerful, and impossible to reconcile. Which means that as a language matures, new concepts become ever harder to adopt. Historically, such change has instead been managed by the creation of new languages, for which backward compatibility is no longer an issue. I'll repeat... This is in no manner detrimental to earlier languages, they form an essential foundation to those that came later. But is it truly possible to embrace e.g. Pascal in preference to its immediate predecessor (Algol), which was in turn written to avoid some of the known flaws in Fortran - and yet simultaneously believe that Pascal is the pinnacle, that past languages were mere coincidence, and that Pascal could never possibly be improved upon? It seems a strangely contradictory attitude to take in a profession that is otherwise making bold steps to embrace change through power of agile methodologies On 3 October 2010 12:54, Kevin Wright <[email protected]> wrote: > Absolutely. All of my experience is that developers willing to step > outside of their box, and to learn new languages and ideas are better for > it. > > Not only does the learning experience expose you to more examples of > quality code, but you also end up with a larger "mental toolbox" of > approaches to learn from. I've already given JodaTime as an example of > this, google collections is another, you can find many more if you shop > around. > > Nowadays, we're even starting to see some category theory trickle back into > Java: > http://apocalisp.wordpress.com/2009/08/21/structural-pattern-matching-in-java/ > All > of this cross-fertilization is a Very Good Thing(tm). > > BASIC has its share of dogmatic and obstinate followers, unwilling to > accept change. As does COBOL, Pascal, Fortran, C#, etc. And yes, Java does > too. > Scala, F#, Haskell, Clojure... not so much. These languages all still have > very active communities, looking to explore the realms of what is possible > and definitely not set in their ways - a description that I imagine any good > developer would like to have applied to themselves. > > It's only natural, then, that a language actively seeking to push the state > of the art will also attract like-minded developers. But does this mean > that it's therefore unsuitable for anyone else? Of course not! But there > will always be some for whom their doctrine is a great comfort, and these > people *will* find it distressing if they should ever have to move to a > different language. > > > <http://apocalisp.wordpress.com/2009/08/21/structural-pattern-matching-in-java/> > > On 3 October 2010 01:53, Liam Knox <[email protected]> wrote: > >> I agree though age of this exposure and the individuals mind set are >> paramount. Some people seem to be brain washed easily with other ideas, >> Religion for example, and others have been able to refute them quite easily >> based on alternative evidence regardless of the initial exposure time. >> There are other fundamental individual differences, for example life time >> learners and those who seem to become very limited, very early. This is not >> unique to technology by any means. I have seen both types of developer and >> I personally can not attribute this purely to languages they initially >> learned. Indeed many of them were brought up on something more structured >> such as C or Pascal or Modula II. However they appear to be equally adapt >> in using any languages and building complete crap or great systems with it. >> >> >> On Sun, Oct 3, 2010 at 8:48 AM, Kevin Wright <[email protected]>wrote: >> >>> Long-term lack of exposure to significant programming paradigms has got >>> to impact your skills, how could it be otherwise? >>> >>> I've witnessed the pain of others in transitioning from procedural to >>> object-oriented methodologies, it isn't pretty! >>> I've also seen OO abused when treated as the only paradigm in town. It's >>> the old story, "when all you have is a hammer..." >>> I highly recommend the fantastic "Execution in the Kingdom of Nouns" >>> article for more on the subject: >>> >>> http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html >>> >>> Closer to home, it's impossible that anyone would create the universally >>> hated Java Date/Time if they had first been exposed to functional >>> programming and the correct use of immutable objects (ideas that JodaTime >>> clearly embraced) >>> >>> So yes, BASIC can harm your skills, at least if you become >>> institutionalised within the language. >>> But it's not really BASIC that's at fault here, it's the concept if being >>> locked into a particular (restricted) way of doing things, and then >>> struggling to break free of the self-imposed prison that such an approach >>> can create. >>> >>> >>> >>> On 3 October 2010 00:24, Liam Knox <[email protected]> wrote: >>> >>>> I think its pretty irrelevant if you started on BASIC or any other >>>> language for that matter and how that has impacted your current skills. >>>> Someone who feels they have been technically crippled permanently from >>>> exposure to BASIC would likely be not very be technical anyway. >>>> >>>> >>>> On Sun, Oct 3, 2010 at 12:33 AM, Russel Winder <[email protected]>wrote: >>>> >>>>> On Sat, 2010-10-02 at 07:36 -0700, Cédric Beust ♔ wrote: >>>>> [ . . . ] >>>>> > Basic is definitely not receiving enough credit, in my opinion. >>>>> > Actually, it's being unjustly vilified. Who was it again who said >>>>> that >>>>> > anyone who started programming with Basic was irrecoverably corrupt >>>>> > and would never become a good programmer? >>>>> >>>>> Dijkstra, who is both the source of some great things that have >>>>> benefited programming and software development, and things that have >>>>> acted as barriers holding back software development for decades. >>>>> >>>>> "It is practically impossible to teach good programming to >>>>> students that have had a prior exposure to BASIC: as potential >>>>> programmers they are mentally mutilated beyond hope of >>>>> regeneration." >>>>> >>>>> "I think of the company advertising 'Thought Processors' or the >>>>> college pretending that learning BASIC suffices or at least >>>>> helps, whereas the teaching of BASIC should be rated as a >>>>> criminal offence: it mutilates the mind beyond recovery." >>>>> >>>>> > I bet that a lot of people on this list started programming with >>>>> Basic >>>>> > (myself included), and I think we turned out alright :-) >>>>> >>>>> Hummm... people who started with Basic and yet have become good >>>>> programmers in a number of languages must have great powers of recovery >>>>> and regeneration. This must mean they are either vampires or trolls >>>>> ;-) >>>>> >>>>> -- >>>>> Russel. >>>>> >>>>> ============================================================================= >>>>> Dr Russel Winder t: +44 20 7585 2200 voip: >>>>> sip:[email protected] <sip%[email protected]> >>>>> 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] >>>>> London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder >>>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "The Java Posse" group. >>>> To post to this group, send email to [email protected]. >>>> To unsubscribe from this group, send email to >>>> [email protected]<javaposse%[email protected]> >>>> . >>>> For more options, visit this group at >>>> http://groups.google.com/group/javaposse?hl=en. >>>> >>> >>> >>> >>> -- >>> Kevin Wright >>> >>> mail / gtalk / msn : [email protected] >>> pulse / skype: kev.lee.wright >>> twitter: @thecoda >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "The Java Posse" group. >>> To post to this group, send email to [email protected]. >>> To unsubscribe from this group, send email to >>> [email protected]<javaposse%[email protected]> >>> . >>> For more options, visit this group at >>> http://groups.google.com/group/javaposse?hl=en. >>> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "The Java Posse" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]<javaposse%[email protected]> >> . >> For more options, visit this group at >> http://groups.google.com/group/javaposse?hl=en. >> > > > > -- > Kevin Wright > > mail / gtalk / msn : [email protected] > pulse / skype: kev.lee.wright > twitter: @thecoda > > -- Kevin Wright mail / gtalk / msn : [email protected] pulse / skype: kev.lee.wright twitter: @thecoda -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
