<div dir="ltr"><div>My $0.02: Why's (Poignant) Guide to Ruby ( <a href="http://mislav.uniqpath.com/poignant-guide/">http://mislav.uniqpath.com/poignant-guide/</a> ). One of the more unusual language textbooks you will encounter.<br>
<br></div><div>btw I enjoy C, C++, Python, SQL, shell, and several other languages about equally. I dunno why Python's caring about whitespace is a deal-breaker for Mr. Frazier.<br><br></div>-- CHS<br><br></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Tue, Mar 26, 2013 at 9:29 PM, Ron Frazier (ALE) <span dir="ltr"><<a href="mailto:atllinuxenthinfo@techstarship.com" target="_blank">atllinuxenthinfo@techstarship.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Scott,<br>
<br>
I understand what you're saying. Heck, if someone wants to pay me to learn it, then I will. At the moment, though, I've uninstalled Java on all my Windows machines and am trying to figure out how to do so in Linux because of the security risks of having it on my system. If I have to learn it, or use it, I might have to do so in a purpose built VM.<br>
<br>
I have heard that the Java syntax is more obtuse and verbose and that the object model is harder to follow than some others. I get the impression that you have to type a whole lot more and it's a lot more cryptic to get something done, versus, say, Go or Ruby. That's just from memory and I cannot remember the source. There may have been multiple sources. But, I don't have any personal experience with it.<br>
<br>
Sincerely,<br>
<br>
Ron<br>
<div><div class="h5"><br>
<br>
<br>
Scott Plante <<a href="mailto:splante@insightsys.com">splante@insightsys.com</a>> wrote:<br>
<br>
>There are probably some good reasons not to pick Java as the modern<br>
>language you want to learn, but "security problems" is not one of them.<br>
>There have been several security holes found lately, but they relate to<br>
>running un-trusted Java in the browser. Almost all the Java jobs<br>
>revolve around writing Java on the server, and practically all the rest<br>
>are Java applications on the desktop or as a trusted applet or<br>
>browser-launched application.<br>
><br>
><br>
>It's a very hard problem to allow random, un-trusted code to run on<br>
>your computer and yet prevent it from doing any harm. It's a bit easier<br>
>if you have an extremely limited language that doesn't do much anyway.<br>
>They're constantly finding security holes in JavaScript, Flash, and<br>
>ActiveX, too. That's not meant to be an excuse and vendors do try to<br>
>fix holes as quickly as possible, with differing levels of competency .<br>
>Also, these holes weren't in "Java" per se, but in the Oracle JVM. Some<br>
>of them might also have been in, say, the IBM JVM or JRocket JVM since<br>
>there is code sharing between projects. But they were probably not in<br>
>Google's Dalvik JVM (since they don't do applets), even though for<br>
>Android you write in the Java language (more or less).<br>
><br>
><br>
>In a recent security contest, participants found holes inthe major<br>
>browsers, including Chrome, Firefox, IE, Safari and Java and Win 7/8.<br>
>Chrome OS did relatively well with only a "partial" exploit. It's not<br>
>so much that Java is less secure than JavaScript, it's just that you<br>
>can do general browsing these days without Java, but you can't do<br>
>without JavaScript.<br>
><br>
><br>
>But all these security holes, in a sense, exist in spades for PHP, C,<br>
>C++, etc., because they're not even trying to limit what your code can<br>
>do. In other words, if the OS allows your user to overwrite a file with<br>
>a regular program (not an unsigned applet) written in Java, you can<br>
>also overwrite that file with C, PHP, Ruby, Python, Perl, etc. But<br>
>they're not security "holes" because the language (including Java) is<br>
>making no guarantees in that case. But avoiding Java on the server-side<br>
>because of unsigned applet security holes is like choosing a sedan for<br>
>highway driving over a crossover, because the crossover gets stuck in<br>
>the mud more than a Hummer.<br>
><br>
><br>
>Scott<br>
><br>
</div></div><div><div class="h5">>----- Original Message -----<br>
><br>
>From: "Ron Frazier (ALE)" <<a href="mailto:atllinuxenthinfo@techstarship.com">atllinuxenthinfo@techstarship.com</a>><br>
>To: "ALE" <<a href="mailto:ale@ale.org">ale@ale.org</a>><br>
>Sent: Monday, March 25, 2013 10:39:11 AM<br>
>Subject: [ale] semi [OT] making learning ruby programming fun?<br>
><br>
>Hi all,<br>
><br>
>As some of you know who've been following my prior threads, I've had a<br>
>long time interest in learning a modern programming language. I've had<br>
>difficulty putting the proper time into the studies, but I'm always<br>
>genuinely interested in the information I learn here. Leam had<br>
>convinced me that GO was a great language, and I believe it is. I was<br>
>going to tackle that, but I have misgivings about its lack of<br>
>popularity in the market place.<br>
><br>
>According to:<br>
><br>
><a href="http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html" target="_blank">http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html</a><br>
><br>
>GO ranks between 51 and 100 in usage, and the percentage is so low it's<br>
>not listed. So, like it or not, learning GO might be a skill few people<br>
>want. I decided to defer that.<br>
><br>
>Most recently, I decided to learn the specific language of the<br>
>MetaTrader currency trading platform so I can build a tradebot. I am<br>
>working on that slowly. Unless I get really good, it is unlikely<br>
>someone will hire me for that. The objective would be for the tradebot<br>
>to make money using my own account.<br>
><br>
>So, I still have an interest in learning a general programming<br>
>language.<br>
><br>
>I'm interested in a modern garbage collected language, preferably multi<br>
>paradigm, with safe I/O and system calls, that can be compiled, and<br>
>that doesn't care about white space.<br>
><br>
>See this comparison:<br>
><br>
><a href="http://en.wikipedia.org/wiki/Comparison_of_programming_languages" target="_blank">http://en.wikipedia.org/wiki/Comparison_of_programming_languages</a><br>
><br>
>I've chosen Ruby as my project language.<br>
><br>
>According to the link posted above, the top 10 languages, and some of<br>
>the reasons I've rejected some of them, are as follows. No offense is<br>
>intended to anyone that programs in these languages.<br>
><br>
>01) Java - security problems<br>
><br>
>02) C - not modern garbage collected<br>
><br>
>03) Objective C - Apple centric primarily<br>
><br>
>04) C++ - not modern garbage collected<br>
><br>
>05) C# - MS centric primarily<br>
><br>
>------------<br>
><br>
>06) PHP - security problems<br>
>per<br>
><a href="http://en.wikipedia.org/wiki/Php" target="_blank">http://en.wikipedia.org/wiki/Php</a><br>
>"About 30% of all vulnerabilities listed on the National Vulnerability<br>
>Database are linked to PHP."<br>
><br>
>07) VB - MS centric<br>
><br>
>08) Python - cares about white space<br>
><br>
>09) Ruby - This is my choice.<br>
><br>
>10) Perl - does not have safe I/O and system calls<br>
>per<br>
><a href="http://en.wikipedia.org/wiki/Comparison_of_programming_languages" target="_blank">http://en.wikipedia.org/wiki/Comparison_of_programming_languages</a><br>
><br>
>-------------<br>
><br>
>So, having said all that, I have some Ruby questions.<br>
><br>
>A) I have the "PickAxe" book on Ruby 1.9 by Dave Thomas. Is that a good<br>
>resource for learning, or do I need to upgrade to a Ruby 2.0 book now<br>
>that version 2 is out?<br>
><br>
>B) Does anyone have any experience compiling Ruby either through<br>
>Rubinius or JRuby or otherwise?<br>
><br>
>See <a href="http://patshaughnessy.net/2012/2/15/is-ruby-interpreted-or-compiled" target="_blank">http://patshaughnessy.net/2012/2/15/is-ruby-interpreted-or-compiled</a><br>
><br>
><br>
>Finally, I've observed that reading one of these programming books is<br>
>about as much fun as reading the US tax code. You get a thousand little<br>
>examples of things like using for next loops to do a factorial. Now<br>
>that's exciting. I've seen maybe 1 of 100 books, primarily from Deitel<br>
>and Deitel or the Head First series, that make learning programming<br>
>fun. They present you with real world applications, simplified, that<br>
>are interesting. They let you get something you can interact with on<br>
>the screen quickly and work on learning how it works and tweaking it.<br>
>For example, a simulator of an ATM machine. An actual working realistic<br>
>program.<br>
><br>
>C) So, does ANYONE know of a Ruby book that would make learning the<br>
>language FUN, or at least moderately interesting?<br>
><br>
>As always, any help is appreciated.<br>
><br>
>Sincerely,<br>
><br>
>Ron<br>
><br>
><br>
><br>
>--<br>
><br>
>Sent from my Android Acer A500 tablet with bluetooth keyboard and K-9<br>
>Mail.<br>
>Please excuse my potential brevity if I'm typing on the touch screen.<br>
><br>
>(PS - If you email me and don't get a quick response, you might want to<br>
><br>
>call on the phone. I get about 300 emails per day from alternate energy<br>
><br>
>mailing lists and such. I don't always see new email messages very<br>
>quickly.)<br>
><br>
>Ron Frazier<br>
><a href="tel:770-205-9422" value="+17702059422">770-205-9422</a> (O) Leave a message.<br>
>linuxdude AT <a href="http://techstarship.com" target="_blank">techstarship.com</a><br>
><br>
><br>
>_______________________________________________<br>
>Ale mailing list<br>
><a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
><a href="http://mail.ale.org/mailman/listinfo/ale" target="_blank">http://mail.ale.org/mailman/listinfo/ale</a><br>
>See JOBS, ANNOUNCE and SCHOOLS lists at<br>
><a href="http://mail.ale.org/mailman/listinfo" target="_blank">http://mail.ale.org/mailman/listinfo</a><br>
><br>
><br>
><br>
</div></div>>------------------------------------------------------------------------<br>
<div class="HOEnZb"><div class="h5">><br>
>_______________________________________________<br>
>Ale mailing list<br>
><a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
><a href="http://mail.ale.org/mailman/listinfo/ale" target="_blank">http://mail.ale.org/mailman/listinfo/ale</a><br>
>See JOBS, ANNOUNCE and SCHOOLS lists at<br>
><a href="http://mail.ale.org/mailman/listinfo" target="_blank">http://mail.ale.org/mailman/listinfo</a><br>
<br>
<br>
--<br>
<br>
Sent from my Android Acer A500 tablet with bluetooth keyboard and K-9 Mail.<br>
Please excuse my potential brevity if I'm typing on the touch screen.<br>
<br>
(PS - If you email me and don't get a quick response, you might want to<br>
call on the phone. I get about 300 emails per day from alternate energy<br>
mailing lists and such. I don't always see new email messages very quickly.)<br>
<br>
Ron Frazier<br>
<a href="tel:770-205-9422" value="+17702059422">770-205-9422</a> (O) Leave a message.<br>
linuxdude AT <a href="http://techstarship.com" target="_blank">techstarship.com</a><br>
<br>
<br>
_______________________________________________<br>
Ale mailing list<br>
<a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
<a href="http://mail.ale.org/mailman/listinfo/ale" target="_blank">http://mail.ale.org/mailman/listinfo/ale</a><br>
See JOBS, ANNOUNCE and SCHOOLS lists at<br>
<a href="http://mail.ale.org/mailman/listinfo" target="_blank">http://mail.ale.org/mailman/listinfo</a><br>
</div></div></blockquote></div><br></div>