<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Ajax for real programmers</title>
	<atom:link href="http://lefert.com/blog/archives/15/feed" rel="self" type="application/rss+xml" />
	<link>http://lefert.com/blog/archives/15</link>
	<description>Simon's rambling thoughts</description>
	<lastBuildDate>Sun, 05 Dec 2010 13:59:52 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: John Topley</title>
		<link>http://lefert.com/blog/archives/15/comment-page-1#comment-4</link>
		<dc:creator>John Topley</dc:creator>
		<pubDate>Sat, 23 May 2009 11:12:38 +0000</pubDate>
		<guid isPermaLink="false">http://lefert.com/blog/?p=15#comment-4</guid>
		<description>I think it&#039;s unlikely that Alan Kay had the cryptic syntax of Java Generics or C++ templates in mind when he coined the term Object-Oriented Programming in the 1970s!

I agree, Smalltalk is a great language. Obviously you do program with objects in Java, but I&#039;d rather OO newbies cut their teeth on a purer OO language such as Smalltalk rather than Java. As you probably know, a lot of the niceties of modern Java IDEs such as class browsers and refactoring tools came from the Smalltalk world.

I think that client-side JavaScript is fine as long as you accept that nothing from the client can be trusted and must always be validated on the server too. Don&#039;t forget that there&#039;s server-side JavaScript as well and I know that Google are doing some interesting things with this. Steve Yegge blogged about an internal port of Ruby on Rails using JavaScript that runs on Mozilla&#039;s Rhino: http://steve-yegge.blogspot.com/2007/06/rhino-on-rails.html

I think these are interesting times because the boundaries are blurring. Sun are now embracing the running of non-Java languages on the JVM, just as Microsoft have with their .NET CLR. It feels like a real freedom of choice is opening up and progressive organisations are recognising that one language doesn&#039;t necessarily fit all and that they can use the best technologies for the job. Those technologies might be from very different communities but they can all run on a common VM.</description>
		<content:encoded><![CDATA[<p>I think it&#8217;s unlikely that Alan Kay had the cryptic syntax of Java Generics or C++ templates in mind when he coined the term Object-Oriented Programming in the 1970s!</p>
<p>I agree, Smalltalk is a great language. Obviously you do program with objects in Java, but I&#8217;d rather OO newbies cut their teeth on a purer OO language such as Smalltalk rather than Java. As you probably know, a lot of the niceties of modern Java IDEs such as class browsers and refactoring tools came from the Smalltalk world.</p>
<p>I think that client-side JavaScript is fine as long as you accept that nothing from the client can be trusted and must always be validated on the server too. Don&#8217;t forget that there&#8217;s server-side JavaScript as well and I know that Google are doing some interesting things with this. Steve Yegge blogged about an internal port of Ruby on Rails using JavaScript that runs on Mozilla&#8217;s Rhino: <a href="http://steve-yegge.blogspot.com/2007/06/rhino-on-rails.html" rel="nofollow">http://steve-yegge.blogspot.com/2007/06/rhino-on-rails.html</a></p>
<p>I think these are interesting times because the boundaries are blurring. Sun are now embracing the running of non-Java languages on the JVM, just as Microsoft have with their .NET CLR. It feels like a real freedom of choice is opening up and progressive organisations are recognising that one language doesn&#8217;t necessarily fit all and that they can use the best technologies for the job. Those technologies might be from very different communities but they can all run on a common VM.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon</title>
		<link>http://lefert.com/blog/archives/15/comment-page-1#comment-3</link>
		<dc:creator>Simon</dc:creator>
		<pubDate>Sat, 23 May 2009 10:21:06 +0000</pubDate>
		<guid isPermaLink="false">http://lefert.com/blog/?p=15#comment-3</guid>
		<description>I can&#039;t agree that Java is not OO, but of course you do raise an interesting question - how do you define OO?  There is broad agreement on many of the necessary properties, but no single definition (good summary &lt;a href=&quot;http://en.wikipedia.org/wiki/Object_oriented&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; for those that are interested).  My biggest worry with JavaScript is the amount of client-side code, and the consequent security risk.  

I agree with you about Ruby - it is a nice language (as an old Smalltalk programmer, I could hardly say otherwise - now there&#039;s a real OO language!).

Maybe the biggest benefit of technologies like those from IT Mill is that they help consolidate skills.</description>
		<content:encoded><![CDATA[<p>I can&#8217;t agree that Java is not OO, but of course you do raise an interesting question &#8211; how do you define OO?  There is broad agreement on many of the necessary properties, but no single definition (good summary <a href="http://en.wikipedia.org/wiki/Object_oriented" rel="nofollow">here</a> for those that are interested).  My biggest worry with JavaScript is the amount of client-side code, and the consequent security risk.  </p>
<p>I agree with you about Ruby &#8211; it is a nice language (as an old Smalltalk programmer, I could hardly say otherwise &#8211; now there&#8217;s a real OO language!).</p>
<p>Maybe the biggest benefit of technologies like those from IT Mill is that they help consolidate skills.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Topley</title>
		<link>http://lefert.com/blog/archives/15/comment-page-1#comment-2</link>
		<dc:creator>John Topley</dc:creator>
		<pubDate>Fri, 22 May 2009 12:51:37 +0000</pubDate>
		<guid isPermaLink="false">http://lefert.com/blog/?p=15#comment-2</guid>
		<description>JavaScript is actually a very powerful programming language that in many ways makes Java look rather dumbed-down. For example, it includes functional programming features such as functions as first-class objects (i.e. you can pass a function to a function) and closures. By contrast, to achieve similar results in Java you end up having to use awkward constructs such as anonymous inner classes. JavaScript also allows prototype-based OO.

Ruby is a wonderful, dynamic programming language. It&#039;s so flexible that it allows you to practise prototype-based OO or class-based OO, as per Java. In fact, Java isn&#039;t really an Object-Oriented Programming language at all, rather it&#039;s a Class-Oriented Programming language because it doesn&#039;t let you have objects without classes. Ruby does.

I blogged about Ruby&#039;s elegance and power a while back: http://www.johntopley.com/2009/01/10/the-power-and-beauty-of-ruby/

Of course, you could have the best of both worlds and use JRuby, which is a Java implementation of Ruby. So you get Ruby&#039;s expressive syntax and power, access to the vast Java platform and the ability to run on your existing JVM infrastructure.</description>
		<content:encoded><![CDATA[<p>JavaScript is actually a very powerful programming language that in many ways makes Java look rather dumbed-down. For example, it includes functional programming features such as functions as first-class objects (i.e. you can pass a function to a function) and closures. By contrast, to achieve similar results in Java you end up having to use awkward constructs such as anonymous inner classes. JavaScript also allows prototype-based OO.</p>
<p>Ruby is a wonderful, dynamic programming language. It&#8217;s so flexible that it allows you to practise prototype-based OO or class-based OO, as per Java. In fact, Java isn&#8217;t really an Object-Oriented Programming language at all, rather it&#8217;s a Class-Oriented Programming language because it doesn&#8217;t let you have objects without classes. Ruby does.</p>
<p>I blogged about Ruby&#8217;s elegance and power a while back: <a href="http://www.johntopley.com/2009/01/10/the-power-and-beauty-of-ruby/" rel="nofollow">http://www.johntopley.com/2009/01/10/the-power-and-beauty-of-ruby/</a></p>
<p>Of course, you could have the best of both worlds and use JRuby, which is a Java implementation of Ruby. So you get Ruby&#8217;s expressive syntax and power, access to the vast Java platform and the ability to run on your existing JVM infrastructure.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

