<br><br><div class="gmail_quote">On Wed, Mar 27, 2013 at 10:16 AM, 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 Charles,<br>
<br>
see below<br>
<div class="im"><br>
<br>
Charles Shapiro <<a href="mailto:hooterpincher@gmail.com">hooterpincher@gmail.com</a>> wrote:<br>
<br>
>My $0.02: Why's (Poignant) Guide to Ruby (<br>
><a href="http://mislav.uniqpath.com/poignant-guide/" target="_blank">http://mislav.uniqpath.com/poignant-guide/</a> ). One of the more unusual<br>
>language textbooks you will encounter.<br>
><br>
<br>
</div>Thanks for the link. I just finished bookmarking it, and will be looking into it further. It certainly looks more interesting than other textbooks at first glance. Reminds me a little of the "Head First" series. I haven't found one of those on Ruby though.<br>
<div class="im"><br>
>btw I enjoy C, C++, Python, SQL, shell, and several other languages<br>
>about<br>
>equally. I dunno why Python's caring about whitespace is a<br>
>deal-breaker<br>
>for Mr. Frazier.<br>
><br>
<br>
</div>It's just that I'm philosophically opposed to having the way the program LOOKS to determine whether the program FUNCTIONS. And, it seems to me, that if the program doesn't function for that reason (whitespace), that it would be insanely hard to determine where the flaw is, since you're looking at the logic and you KNOW it works.<br>
</blockquote><div><br>tying visual structure to operant functionality is not a bad thing. It actually makes some portions of debugging very, very easy - look for the visual pattern of improperly nested indentations (secret - use a 2 or 3-space indent - makes it clear without eating too much horizontal space). Set up vim or emacs to use your preferred space count on <tab> press. <br>
<br>I find curly braces a visual distraction( and nearly impossible to write well by hand). Using pure whitespace as enclosures is subtle without being cryptic. As i learned more python, I found myself using very formal indentation is everything from bash to SQL.<br>
<br>to paraphrase B.O.C. "Don't fear the whitespace"<br><br>:-D<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Having said that, when I was programming professionally, I always tried to make my source code very readable. (Probably helped them replace me more easily later.) I put in lots of comments and indentation so you could see what's going on instantly, or I could, a year later.<br>
<br>
Sincerely,<br>
<br>
Ron<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
>-- CHS<br>
><br>
><br>
><br>
>On Tue, Mar 26, 2013 at 9:29 PM, Ron Frazier (ALE) <<br>
><a href="mailto:atllinuxenthinfo@techstarship.com">atllinuxenthinfo@techstarship.com</a>> wrote:<br>
><br>
>> Hi Scott,<br>
>><br>
>> I understand what you're saying. Heck, if someone wants to pay me to<br>
>> learn it, then I will. At the moment, though, I've uninstalled Java<br>
>on all<br>
>> my Windows machines and am trying to figure out how to do so in Linux<br>
>> because of the security risks of having it on my system. If I have<br>
>to<br>
>> 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<br>
>the<br>
>> object model is harder to follow than some others. I get the<br>
>impression<br>
>> that you have to type a whole lot more and it's a lot more cryptic to<br>
>get<br>
>> something done, versus, say, Go or Ruby. That's just from memory and<br>
>I<br>
>> cannot remember the source. There may have been multiple sources.<br>
>But, I<br>
>> don't have any personal experience with it.<br>
>><br>
>> Sincerely,<br>
>><br>
>> Ron<br>
>><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<br>
>them.<br>
>> >There have been several security holes found lately, but they relate<br>
>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<br>
>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<br>
>easier<br>
>> >if you have an extremely limited language that doesn't do much<br>
>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<br>
>competency .<br>
>> >Also, these holes weren't in "Java" per se, but in the Oracle JVM.<br>
>Some<br>
>> >of them might also have been in, say, the IBM JVM or JRocket JVM<br>
>since<br>
>> >there is code sharing between projects. But they were probably not<br>
>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<br>
>7/8.<br>
>> >Chrome OS did relatively well with only a "partial" exploit. It's<br>
>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,<br>
>C,<br>
>> >C++, etc., because they're not even trying to limit what your code<br>
>can<br>
>> >do. In other words, if the OS allows your user to overwrite a file<br>
>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)<br>
>is<br>
>> >making no guarantees in that case. But avoiding Java on the<br>
>server-side<br>
>> >because of unsigned applet security holes is like choosing a sedan<br>
>for<br>
>> >highway driving over a crossover, because the crossover gets stuck<br>
>in<br>
>> >the mud more than a Hummer.<br>
>> ><br>
>> ><br>
>> >Scott<br>
>> ><br>
>> >----- 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<br>
>a<br>
>> >long time interest in learning a modern programming language. I've<br>
>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<br>
>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<br>
>it's<br>
>> >not listed. So, like it or not, learning GO might be a skill few<br>
>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<br>
>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<br>
>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<br>
>of<br>
>> >the reasons I've rejected some of them, are as follows. No offense<br>
>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<br>
>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<br>
>good<br>
>> >resource for learning, or do I need to upgrade to a Ruby 2.0 book<br>
>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<br>
><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<br>
>is<br>
>> >about as much fun as reading the US tax code. You get a thousand<br>
>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<br>
>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<br>
>it.<br>
>> >For example, a simulator of an ATM machine. An actual working<br>
>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<br>
>K-9<br>
>> >Mail.<br>
>> >Please excuse my potential brevity if I'm typing on the touch<br>
>screen.<br>
>> ><br>
>> >(PS - If you email me and don't get a quick response, you might want<br>
>to<br>
>> ><br>
>> >call on the phone. I get about 300 emails per day from alternate<br>
>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>
>><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>
>><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<br>
>to<br>
>> call on the phone. I get about 300 emails per day from alternate<br>
>energy<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>
>------------------------------------------------------------------------<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>
<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><br clear="all"><br>-- <br>-- <br>James P. Kinney III<br><i><i><i><i><br></i></i></i></i>Every time you stop a school, you will have to build a jail. What you
gain at one end you lose at the other. It's like feeding a dog on his
own tail. It won't fatten the dog.<br>
- Speech 11/23/1900 Mark Twain<br><i><i><i><i><br><a href="http://electjimkinney.org" target="_blank">http://electjimkinney.org</a><br><a href="http://heretothereideas.blogspot.com/" target="_blank">http://heretothereideas.blogspot.com/</a><br>
</i></i></i></i>