From wpiencia at thunderdome.ieee.org Wed Aug 1 11:48:41 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Wed, 1 Aug 2012 12:48:41 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: Message-ID: <20120801184840.GH22124@thunderdome.ieee.org> On Tue, Jul 31, 2012 at 03:57:58PM -0700, Kate Lynde wrote: > I moved to Seattle a few years back and ended up working on a ton of > horrible legacy Perl code, but I escaped (now it's all Ruby and non-legacy > Perl) and I'm going to be back in the area for RubyConf. I kind of miss > the old hiking/disc golf meetups. > > Kate Ah, yes, the hiking/snowshoeing/disc days. For those of younger list vintage, our meeting needs seemed to be met by group activities outdoors, where the topics as we walked/played were all over the map, though usually of a Perlish/Open Source/geeky nature. I'm still here. IEEE Standards uses an apache/mod_perl setup, and some of our critical apps are based on Rob Nagler et al's bOP framework (Perl based). Perl is alive and well at the IEEE. Walter From nagler at bivio.biz Wed Aug 1 11:53:39 2012 From: nagler at bivio.biz (Rob Nagler) Date: Wed, 1 Aug 2012 12:53:39 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <20120801184840.GH22124@thunderdome.ieee.org> References: <20120801184840.GH22124@thunderdome.ieee.org> Message-ID: bivio is still here as noted by Walter. We maintain several large scale apps. Newest work is integrating Qooxdoo into bOP, which is a lot of fun. Rob From perrin at apotheon.com Wed Aug 1 13:47:01 2012 From: perrin at apotheon.com (Chad Perrin) Date: Wed, 1 Aug 2012 14:47:01 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: Message-ID: <20120801204701.GA19561@hemlock.hydra> On Tue, Jul 31, 2012 at 11:54:37AM -0600, Brennen Bearnes wrote: > I'm still about. Hadn't even realized I was still signed up for this list. > > Most of my Perl these days is one-offs and small utilities (I'm stuck over > here in PHP hell most of the time), but I did just attend a bunch of the > Perl sessions at OSCON. Some good stuff there. You have my sympathies. PHP really is a horrific world for people who've experienced better languages (which include . . . most languages). I'd much rather use a Perl/CGI script and Server-Side Includes than PHP if I can get away with it, though that's not exactly a perfect working environment, either. I've been a lurker on this list since about 2005, I think, and this is probably my first email to the list. I haven't done much Perl programming for several years, anyway; I've mostly been doing Ruby. It's interesting that this list suddenly revived a little at the same time I'm in negotiations with a potential client who may want me to write some Perl. I've started reading Modern Perl as a way to dust off my Perl skills while talking to the potential client. -- Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ] From bbearnes at gmail.com Wed Aug 1 14:35:01 2012 From: bbearnes at gmail.com (Brennen Bearnes) Date: Wed, 1 Aug 2012 15:35:01 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <20120801204701.GA19561@hemlock.hydra> References: <20120801204701.GA19561@hemlock.hydra> Message-ID: On Wed, Aug 1, 2012 at 2:47 PM, Chad Perrin wrote: > You have my sympathies. PHP really is a horrific world for people > who've experienced better languages (which include . . . most > languages). Truth be told, it's not so bad these days for the sort of basic web app things we're doing. The language has grown up quite a bit in its last couple of major releases, and if you stick to a well-defined subset of features and use the object system sanely you can keep things pretty clean. What I really miss, aside from syntactical niceties, is access to a large set of quality, actively maintained third-party libraries. The PHP ecosystem is just a vale of tears in this regard, compared to other languages in the space, and I've never seen anything that can touch the CPAN. Well, that and hiring people who primarily identify as PHP programmers is just begging for pain, even in 2012. But of course the flipside is that you won't really find a competent hacker who's not up to learning idiomatic PHP real quick like. > I'd much rather use a Perl/CGI script and Server-Side Includes than > PHP if I can get away with it, though that's not exactly a perfect > working environment, either. Once upon a time, I would've said the same thing, but the world has shifted around quite a bit in the last couple of years. If I were deploying Perl code in a production web app these days, it definitely wouldn't be running as plain old CGI. I haven't kept up with the options much, but I'm guessing there's a rough equivalent to the nginx + php-fpm stack we've been running, and I know there are some pretty sophisticated MVC application frameworks floating around in the Perl world. Based on what I've got access to right now, I'd hate to give up either of those things... -- Brennen From perrin at apotheon.com Thu Aug 2 10:58:45 2012 From: perrin at apotheon.com (Chad Perrin) Date: Thu, 2 Aug 2012 11:58:45 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: <20120801204701.GA19561@hemlock.hydra> Message-ID: <20120802175845.GA12255@hemlock.hydra> On Wed, Aug 01, 2012 at 03:35:01PM -0600, Brennen Bearnes wrote: > On Wed, Aug 1, 2012 at 2:47 PM, Chad Perrin wrote: > > > > You have my sympathies. PHP really is a horrific world for people > > who've experienced better languages (which include . . . most > > languages). > > Truth be told, it's not so bad these days for the sort of basic web > app things we're doing. The language has grown up quite a bit in its > last couple of major releases, and if you stick to a well-defined subset > of features and use the object system sanely you can keep things pretty > clean. The idea of PHP providing a tolerable language for development is wholly foreign to me, but I haven't used it in the last couple years at all, so maybe I missed something. Does it still buffer-overflow with GET variables that are too long? Doesn't it still have the problem with thousands of core functions that are often redundant and named with no sense of consistency at all? > > What I really miss, aside from syntactical niceties, is access to a > large set of quality, actively maintained third-party libraries. The PHP > ecosystem is just a vale of tears in this regard, compared to other > languages in the space, and I've never seen anything that can touch the > CPAN. The Ruby gems system has matured nicely, and while it does not contain as much as CPAN, it certainly contains enough libraries and other tools for my purposes. What really bugs me about most other languages is the lack of anything that works as smoothly as CPAN and the gems system. Trying to find decent libraries in C is often an exercise in frustration, for instance. PHP is a special case in that, back when I actually had to use it at least, using libraries in PHP was simply something one didn't do because of the general level of horror represented by PHP libraries. The shocking contrast with the generally high level of quality available in Perl libraries certainly helped make PHP development miserable by comparison. > > Well, that and hiring people who primarily identify as PHP programmers > is just begging for pain, even in 2012. But of course the flipside is > that you won't really find a competent hacker who's not up to learning > idiomatic PHP real quick like. Good to know some things never change, I guess. > > > > I'd much rather use a Perl/CGI script and Server-Side Includes than > > PHP if I can get away with it, though that's not exactly a perfect > > working environment, either. > > Once upon a time, I would've said the same thing, but the world has > shifted around quite a bit in the last couple of years. If I were > deploying Perl code in a production web app these days, it definitely > wouldn't be running as plain old CGI. I haven't kept up with the options > much, but I'm guessing there's a rough equivalent to the nginx + php-fpm > stack we've been running, and I know there are some pretty sophisticated > MVC application frameworks floating around in the Perl world. Based on > what I've got access to right now, I'd hate to give up either of those > things... I wasn't saying that Perl/CGI would be my favored approach. In fact, I'd say that would probably only be my last resort for web development in Perl. I was just saying I'd prefer it over PHP development. I'm not really sure what's available these days for Perl on the web. I haven't kept up, either. What little Perl I've done in the last few years has been command line utility development, extension development for applications, and data munging stuff. I'm sure there are quite a few good options for web development available, though, and would investigate them before starting a new project. -- Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ] From bbearnes at gmail.com Thu Aug 2 12:42:44 2012 From: bbearnes at gmail.com (Brennen Bearnes) Date: Thu, 2 Aug 2012 13:42:44 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <20120802175845.GA12255@hemlock.hydra> References: <20120801204701.GA19561@hemlock.hydra> <20120802175845.GA12255@hemlock.hydra> Message-ID: On Thu, Aug 2, 2012 at 11:58 AM, Chad Perrin wrote: > The idea of PHP providing a tolerable language for development is wholly > foreign to me, but I haven't used it in the last couple years at all, so > maybe I missed something. Does it still buffer-overflow with GET > variables that are too long? Doesn't it still have the problem with > thousands of core functions that are often redundant and named with no > sense of consistency at all? There are still periodic forehead-slappingly-bad security issues, though maybe not quite so many as before. Just seems to be sort of the cost of doing business on the platform. The mostly-useless inconsistent functions spammed all over the global namespace are still there, but you pretty much learn to just ignore them and move on with life. Between classes and namespacing, it's pretty easy to segregate your own code without name collisions. > PHP is a special case in that, back when I actually had to use it at > least, using libraries in PHP was simply something one didn't do because > of the general level of horror represented by PHP libraries. Yeah; this is still true, if not as severely so. We roll our own x a lot, where x is something you'd pretty much get for free elsewhere. So it goes, I guess. > I'm not really sure what's available these days for Perl on the web. > I haven't kept up, either. What little Perl I've done in the last few > years has been command line utility development, extension development > for applications, and data munging stuff. I'm sure there are quite a > few good options for web development available, though, and would > investigate them before starting a new project. One framework I've meant to give a serious look is http://mojolicio.us/ - looks both clean and featureful. I remember liking CGI::Application's approach quite a bit as well, though by now it may have been superceded by other stuff... -- Brennen From hideo at lastamericanempire.com Mon Aug 6 09:33:27 2012 From: hideo at lastamericanempire.com (hideo) Date: Mon, 6 Aug 2012 10:33:27 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: Message-ID: On Tue, Jul 31, 2012 at 7:51 AM, Jay Hannah wrote: > Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks > back -- I totally forgot there was a Boulder.pm! I did make it out to a > very small Denver.pm meeting... > > This list archive has nothing for 2 years. Who all is still out there? > > I'll make sure to hook up with you guys next time I'm pestering relatives > in the area. :) > > jhannah > Omaha.pm > > Still here, though I'd forgotten I'd was. Perl is still my programming tool of choice though I haven't done too much serious development with it in a while. I must say that it's been pretty difficult to find good Perl experience on the Front Range lately. We've had several open reqs without a legitimate bite for a while. It makes me wonder if it's still viable. Zach -------------- next part -------------- An HTML attachment was scrubbed... URL: From yargevad at gmail.com Wed Aug 8 08:33:10 2012 From: yargevad at gmail.com (Dave Gray) Date: Wed, 8 Aug 2012 08:33:10 -0700 Subject: [Boulder.pm] Roll call? In-Reply-To: References: Message-ID: Still here, though like others, forgot I was subscribed. I work for a software company based on the East coast, and we've also had problems hiring Perl programmers, although the problem isn't just Perl, it seems to be hard to find anyone who's good at anything but Java or .NET really. I code in Perl quite a bit, since it's the language I'm most efficient with. Everything from small automation scripts to medium-sized integration work all the way up to fairly large-scale system tools. My favorite large-scale system to work on involves sucking data into PostgreSQL from a variety of different databases and uses XS and OO pretty heavily. Been a long-time lurker, just moved back to Boulder from Denver, and would like to get some more technical interaction going on. Are the people who organized things in the past still around? Maybe we could team up with http://boulderhackerspace.com/about/ for a place to meet, which is another thing I've been curious about. Dave On Tue, Jul 31, 2012 at 6:51 AM, Jay Hannah wrote: > Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks back -- I totally forgot there was a Boulder.pm! I did make it out to a very small Denver.pm meeting... > > This list archive has nothing for 2 years. Who all is still out there? > > I'll make sure to hook up with you guys next time I'm pestering relatives in the area. :) > > jhannah > Omaha.pm > > > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm From eddow1976 at yahoo.com Wed Aug 8 12:15:52 2012 From: eddow1976 at yahoo.com (Ed Dow) Date: Wed, 8 Aug 2012 12:15:52 -0700 (PDT) Subject: [Boulder.pm] Roll Call Message-ID: <1344453352.96027.YahooMailNeo@web121502.mail.ne1.yahoo.com> Today's Topics: ? 1. Re: Roll call? (Dave Gray) (Ed Dow) I signed up years ago and discussions never really materialized.? Maybe we'll get something going? -------------- next part -------------- An HTML attachment was scrubbed... URL: From wpiencia at thunderdome.ieee.org Wed Aug 8 12:30:24 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Wed, 8 Aug 2012 13:30:24 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: Message-ID: <20120808193024.GG9176@thunderdome.ieee.org> On Wed, Aug 08, 2012 at 08:33:10AM -0700, Dave Gray wrote: > > Been a long-time lurker, just moved back to Boulder from Denver, and > would like to get some more technical interaction going on. Are the > people who organized things in the past still around? Maybe we could > team up with http://boulderhackerspace.com/about/ for a place to meet, > which is another thing I've been curious about. > > Dave I'm nominally the contact/leader for the group, and years ago went to a "group (non)?activity is what it is" profile with the group. It's been quiet with pockets of discussion or activity as various people had something to ask/say/offer. If someone wants to take a go at firing this beast up, I say, Go for it. The one thing I'd ask if someone wants the group leadership is a commitment to stick around and not become unresponsive to the occasional inquiries that will come in from offlist (typically from the Mothership or re membership). Walter -- Walter Pienciak Senior Manager, Standards Technology Solutions, IEEE Standards Association w.pienciak at ieee.org http://standards.ieee.org/people/w.pienciak/ +1 303 527 0934 From efm at tummy.com Thu Aug 9 12:42:15 2012 From: efm at tummy.com (Evelyn Mitchell) Date: Thu, 09 Aug 2012 13:42:15 -0600 Subject: [Boulder.pm] Developer needed Message-ID: <50241297.9010704@tummy.com> Hi all, I've heard of an opportunity for a Perl developer with MySQL for a 3 month opportunity. Good company to work for. I don't know much more about it than that, but would be happy to pass along to them the names of people who are interested. Evelyn -- Regards, tummy.com, ltd Evelyn Mitchell Linux Consulting since 1995 efm at tummy.com Senior System and Network Administrators http://www.tummy.com/ From deandre at deandrecarroll.com Fri Aug 17 21:35:21 2012 From: deandre at deandrecarroll.com (DeAndre Carroll) Date: Fri, 17 Aug 2012 22:35:21 -0600 Subject: [Boulder.pm] Recruiters and Perl Jobs Message-ID: <502F1B89.7020709@deandrecarroll.com> Hi All, I have a recruiter from a local firm contacting me in need of a Perl programmer for a current project. I am currently engaged but have informed him about the Boulder.pm and Denver.pm lists. What is the proper (preferred) way for him to engage interested parties on either list? DeAndr? Carroll From wpiencia at thunderdome.ieee.org Sat Aug 18 08:30:59 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Sat, 18 Aug 2012 09:30:59 -0600 Subject: [Boulder.pm] Recruiters and Perl Jobs In-Reply-To: <502F1B89.7020709@deandrecarroll.com> References: <502F1B89.7020709@deandrecarroll.com> Message-ID: <20120818153059.GA1983@thunderdome.ieee.org> On Fri, Aug 17, 2012 at 10:35:21PM -0600, DeAndre Carroll wrote: > Hi All, > > I have a recruiter from a local firm contacting me in need of a Perl > programmer for a current project. I am currently engaged but have > informed him about the Boulder.pm and Denver.pm lists. What is the > proper (preferred) way for him to engage interested parties on > either list? > > DeAndr? Carroll He can join the list, or he can forward his materials through a list member. Walter From deandre at deandrecarroll.com Sat Aug 18 09:56:14 2012 From: deandre at deandrecarroll.com (DeAndre Carroll) Date: Sat, 18 Aug 2012 10:56:14 -0600 Subject: [Boulder.pm] Recruiters and Perl Jobs In-Reply-To: <20120818153059.GA1983@thunderdome.ieee.org> References: <502F1B89.7020709@deandrecarroll.com> <20120818153059.GA1983@thunderdome.ieee.org> Message-ID: <502FC92E.2080905@deandrecarroll.com> Thanks Walter. I just wanted to be sure what was appropriate. DeAndr? On 8/18/2012 9:30 AM, Walter Pienciak wrote: > On Fri, Aug 17, 2012 at 10:35:21PM -0600, DeAndre Carroll wrote: >> Hi All, >> >> I have a recruiter from a local firm contacting me in need of a Perl >> programmer for a current project. I am currently engaged but have >> informed him about the Boulder.pm and Denver.pm lists. What is the >> proper (preferred) way for him to engage interested parties on >> either list? >> >> DeAndr? Carroll > He can join the list, or he can forward his materials through a > list member. > > Walter > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm > > From nagler at bivio.biz Sat Aug 18 10:32:13 2012 From: nagler at bivio.biz (Rob Nagler) Date: Sat, 18 Aug 2012 11:32:13 -0600 Subject: [Boulder.pm] Recruiters and Perl Jobs In-Reply-To: <502FC92E.2080905@deandrecarroll.com> References: <502F1B89.7020709@deandrecarroll.com> <20120818153059.GA1983@thunderdome.ieee.org> <502FC92E.2080905@deandrecarroll.com> Message-ID: Take me off this list. There's WAY too much traffic. ;-) Rob From robert.l.harris at gmail.com Sat Aug 18 11:32:46 2012 From: robert.l.harris at gmail.com (Robert L. Harris) Date: Sat, 18 Aug 2012 12:32:46 -0600 Subject: [Boulder.pm] Perl / Expect / Minecraft Message-ID: I'm looking to write a wrapper for my minecraft server. So far I have this: #!/usr/bin/perl use Expect; use strict; my $ServerStart=0; chdir('/usr/local/minecraft') or die "$!"; sub worker { $ServerStart++; print "\n\n ** Server has been started $ServerStart times!!!\n\n"; my $exp = Expect->spawn("java -Djava.awt.headless=true -Xincgc -Xms2048M -Xmx6144M -jar craftbukkit.jar"); $exp->expect(undef, "java.io.IOException"); print "\n\n\n **** Killing *****\n\n\n"; my $pid = `pgrep -f 'java.*craftbukkit.jar'`; chomp $pid; kill 11, $pid; return; } while(1) { print "\n\n ** Cranking it up\n\n"; worker(); sleep 5; } I would like to add the following functionality but not sure how with Expect like this: 1) If I see certain phrases that go to stdout, kill the server, like the java.io.IOException or a couple other errors some modules throw. 2) At 2AM, send a command (list) and if I see "0/25" then kill -11 the server. Robert -- :wq! --------------------------------------------------------------------------- Robert L. Harris DISCLAIMER: These are MY OPINIONS With Dreams To Be A King, ALONE. I speak for First One Should Be A Man no-one else. - Manowar -------------- next part -------------- An HTML attachment was scrubbed... URL: From foo7775 at comcast.net Tue Aug 21 13:41:14 2012 From: foo7775 at comcast.net (foo7775 at comcast.net) Date: Tue, 21 Aug 2012 20:41:14 +0000 (UTC) Subject: [Boulder.pm] Roll call? In-Reply-To: Message-ID: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> (First off, apologies for replying to this so late.) Interesting. *Very* interesting! I joined this list in the hopes that lurking here would help me as I tried to work my way through the Camel book. Several years ago, I worked with a guy who was pretty proficient with Perl, was pretty impressed with the cross-platform things he could accomplish, & decided that I wanted to be able to add those capabilities to my existing system-admin skill set. Unfortunately I haven't yet developed the proficiency that I've wanted to, but hearing that it's definitely still in-demand certainly helps as a motivator. With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) Thanks in advance. T. ----- Original Message ----- From: "hideo" To: boulder-pm at pm.org Sent: Monday, August 6, 2012 10:33:27 AM Subject: Re: [Boulder.pm] Roll call? On Tue, Jul 31, 2012 at 7:51 AM, Jay Hannah < jay at jays.net > wrote: Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks back -- I totally forgot there was a Boulder.pm! I did make it out to a very small Denver.pm meeting... This list archive has nothing for 2 years. Who all is still out there? I'll make sure to hook up with you guys next time I'm pestering relatives in the area. :) jhannah Omaha.pm Still here, though I'd forgotten I'd was. Perl is still my programming tool of choice though I haven't done too much serious development with it in a while. I must say that it's been pretty difficult to find good Perl experience on the Front Range lately. We've had several open reqs without a legitimate bite for a while. It makes me wonder if it's still viable. Zach _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm -------------- next part -------------- An HTML attachment was scrubbed... URL: From jason_van_slyke at hotmail.com Tue Aug 21 15:03:22 2012 From: jason_van_slyke at hotmail.com (Jason Van Slyke) Date: Tue, 21 Aug 2012 16:03:22 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> References: , <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> Message-ID: T.Learning Perl is a good book to have on your shelf and to read at bedtime... ;')Jason Date: Tue, 21 Aug 2012 20:41:14 +0000 From: foo7775 at comcast.net To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? (First off, apologies for replying to this so late.) Interesting. *Very* interesting! I joined this list in the hopes that lurking here would help me as I tried to work my way through the Camel book. Several years ago, I worked with a guy who was pretty proficient with Perl, was pretty impressed with the cross-platform things he could accomplish, & decided that I wanted to be able to add those capabilities to my existing system-admin skill set. Unfortunately I haven't yet developed the proficiency that I've wanted to, but hearing that it's definitely still in-demand certainly helps as a motivator. With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) Thanks in advance. T. From: "hideo" To: boulder-pm at pm.org Sent: Monday, August 6, 2012 10:33:27 AM Subject: Re: [Boulder.pm] Roll call? On Tue, Jul 31, 2012 at 7:51 AM, Jay Hannah wrote: Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks back -- I totally forgot there was a Boulder.pm! I did make it out to a very small Denver.pm meeting... This list archive has nothing for 2 years. Who all is still out there? I'll make sure to hook up with you guys next time I'm pestering relatives in the area. :) jhannah Omaha.pm Still here, though I'd forgotten I'd was. Perl is still my programming tool of choice though I haven't done too much serious development with it in a while. I must say that it's been pretty difficult to find good Perl experience on the Front Range lately. We've had several open reqs without a legitimate bite for a while. It makes me wonder if it's still viable. Zach _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm -------------- next part -------------- An HTML attachment was scrubbed... URL: From rise at knavery.net Tue Aug 21 16:10:54 2012 From: rise at knavery.net (Kate) Date: Tue, 21 Aug 2012 16:10:54 -0700 Subject: [Boulder.pm] Roll call? In-Reply-To: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> Message-ID: <67C632850B234535BCD7DB8115059508@knavery.net> On Tuesday, August 21, 2012 at 1:41 PM, foo7775 at comcast.net wrote: > With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) Not so much a net resource, but the single most useful book for me in learning Perl was Christiansen & Torkington's "Perl Cookbook". I really like that it gave multiple solutions to just about everything and explained their tradeoffs & how they worked. It encourages copy & paste programming a lot less than just googling code snippets and gave me a much better idea of idiomatic Perl. ? Kate Lynde From bbearnes at gmail.com Tue Aug 21 16:15:16 2012 From: bbearnes at gmail.com (Brennen Bearnes) Date: Tue, 21 Aug 2012 17:15:16 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <67C632850B234535BCD7DB8115059508@knavery.net> References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> <67C632850B234535BCD7DB8115059508@knavery.net> Message-ID: On Tue, Aug 21, 2012 at 5:10 PM, Kate wrote: > > Not so much a net resource, but the single most useful book for me in > learning Perl was Christiansen & Torkington's "Perl Cookbook". I really > like that it gave multiple solutions to just about everything and explained > their tradeoffs & how they worked. It encourages copy & paste programming a > lot less than just googling code snippets and gave me a much better idea of > idiomatic Perl. > I'll second this one. Easily one of my favorite programming texts in general. -- Brennen -------------- next part -------------- An HTML attachment was scrubbed... URL: From nagler at bivio.biz Tue Aug 21 16:43:02 2012 From: nagler at bivio.biz (Rob Nagler) Date: Tue, 21 Aug 2012 17:43:02 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> <67C632850B234535BCD7DB8115059508@knavery.net> Message-ID: [old man mode] When I wanted to learn perl, the only option was "man perl". It was about 60 pages of troff. :) Being an old sed/awk/sh hack helped, of course. ROFL. Rob From jason_van_slyke at hotmail.com Tue Aug 21 17:40:00 2012 From: jason_van_slyke at hotmail.com (Jason Van Slyke) Date: Tue, 21 Aug 2012 18:40:00 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <67C632850B234535BCD7DB8115059508@knavery.net> References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net>, <67C632850B234535BCD7DB8115059508@knavery.net> Message-ID: Totally agree! The cover is falling off my copy, bought in August 1999, with a dozen page markers hanging out of it. Yes, I have to keep going back, I only get to do 2 or 3 Perl jobs per year typically.jvs > Date: Tue, 21 Aug 2012 16:10:54 -0700 > From: rise at knavery.net > To: boulder-pm at pm.org > Subject: Re: [Boulder.pm] Roll call? > > On Tuesday, August 21, 2012 at 1:41 PM, foo7775 at comcast.net wrote: > > > > With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) > > > Not so much a net resource, but the single most useful book for me in learning Perl was Christiansen & Torkington's "Perl Cookbook". I really like that it gave multiple solutions to just about everything and explained their tradeoffs & how they worked. It encourages copy & paste programming a lot less than just googling code snippets and gave me a much better idea of idiomatic Perl. > > ? > Kate Lynde > > > > > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm -------------- next part -------------- An HTML attachment was scrubbed... URL: From deandre at deandrecarroll.com Tue Aug 21 21:55:41 2012 From: deandre at deandrecarroll.com (DeAndre Carroll) Date: Tue, 21 Aug 2012 22:55:41 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net>, <67C632850B234535BCD7DB8115059508@knavery.net> Message-ID: <5034664D.2020504@deandrecarroll.com> I'm in complete about the cookbook. One of the best Perl books I've ever read and really kicked my knowledge of how Perl works into full gear. Once you get past some of the examples in there, I'd recommend Effective Perl Programming (http://www.effectiveperlprogramming.com/) to learn more about modern day, idiomatic Perl. On 8/21/2012 6:40 PM, Jason Van Slyke wrote: > Totally agree! The cover is falling off my copy, bought in August > 1999, with a dozen page markers hanging out of it. Yes, I have to keep > going back, I only get to do 2 or 3 Perl jobs per year typically. > jvs > > > > > > Date: Tue, 21 Aug 2012 16:10:54 -0700 > > From: rise at knavery.net > > To: boulder-pm at pm.org > > Subject: Re: [Boulder.pm] Roll call? > > > > On Tuesday, August 21, 2012 at 1:41 PM, foo7775 at comcast.net wrote: > > > > > > > With that in mind, I'd be grateful for any pointers to > "newb-appropriate" resources where I could work through the rather > basic questions. (Probably a safe bet that they'd be a bit annoying to > the crowd here...) > > > > > > Not so much a net resource, but the single most useful book for me > in learning Perl was Christiansen & Torkington's "Perl Cookbook". I > really like that it gave multiple solutions to just about everything > and explained their tradeoffs & how they worked. It encourages copy & > paste programming a lot less than just googling code snippets and gave > me a much better idea of idiomatic Perl. > > > > ? > > Kate Lynde > > > > > > > > > > _______________________________________________ > > Boulder-pm mailing list > > Boulder-pm at pm.org > > http://mail.pm.org/mailman/listinfo/boulder-pm > > > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm -------------- next part -------------- An HTML attachment was scrubbed... URL: From rise at knavery.net Tue Aug 21 22:04:10 2012 From: rise at knavery.net (Kate) Date: Tue, 21 Aug 2012 22:04:10 -0700 Subject: [Boulder.pm] Roll call? In-Reply-To: <5034664D.2020504@deandrecarroll.com> References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> <,> <67C632850B234535BCD7DB8115059508@knavery.net> <5034664D.2020504@deandrecarroll.com> Message-ID: <1D62A11DA793425EAA4CAA9FDED6515A@knavery.net> If you're looking for something that explores the farther edges of what Perl can do in a more algorithmic / CS direction, I highly recommend the wonderful (and wonderfully weird) "Higher Order Perl". It's now free on the author's site (you can donate if you want). http://hop.perl.plover.com/book/ -- Kate On Tuesday, August 21, 2012 at 9:55 PM, DeAndre Carroll wrote: > I'm in complete about the cookbook. One of the best Perl books I've ever read and really kicked my knowledge of how Perl works into full gear. Once you get past some of the examples in there, I'd recommend Effective Perl Programming (http://www.effectiveperlprogramming.com/) to learn more about modern day, idiomatic Perl. > > On 8/21/2012 6:40 PM, Jason Van Slyke wrote: > > Totally agree! The cover is falling off my copy, bought in August 1999, with a dozen page markers hanging out of it. Yes, I have to keep going back, I only get to do 2 or 3 Perl jobs per year typically. > > jvs > > > > > > > > > > > Date: Tue, 21 Aug 2012 16:10:54 -0700 > > > From: rise at knavery.net (mailto:rise at knavery.net) > > > To: boulder-pm at pm.org (mailto:boulder-pm at pm.org) > > > Subject: Re: [Boulder.pm] Roll call? > > > > > > On Tuesday, August 21, 2012 at 1:41 PM, foo7775 at comcast.net (mailto:foo7775 at comcast.net) wrote: > > > > > > > > > > With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) > > > > > > > > > Not so much a net resource, but the single most useful book for me in learning Perl was Christiansen & Torkington's "Perl Cookbook". I really like that it gave multiple solutions to just about everything and explained their tradeoffs & how they worked. It encourages copy & paste programming a lot less than just googling code snippets and gave me a much better idea of idiomatic Perl. > > > > > > ? > > > Kate Lynde > > > > > > > > > > > > > > > _______________________________________________ > > > Boulder-pm mailing list > > > Boulder-pm at pm.org (mailto:Boulder-pm at pm.org) > > > http://mail.pm.org/mailman/listinfo/boulder-pm > > > > _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org (mailto:Boulder-pm at pm.org) http://mail.pm.org/mailman/listinfo/boulder-pm > > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org (mailto:Boulder-pm at pm.org) > http://mail.pm.org/mailman/listinfo/boulder-pm From nagler at bivio.biz Wed Aug 22 06:29:34 2012 From: nagler at bivio.biz (Rob Nagler) Date: Wed, 22 Aug 2012 07:29:34 -0600 Subject: [Boulder.pm] Roll call? In-Reply-To: <1D62A11DA793425EAA4CAA9FDED6515A@knavery.net> References: <532104170.408808.1345581674630.JavaMail.root@sz0012a.emeryville.ca.mail.comcast.net> <67C632850B234535BCD7DB8115059508@knavery.net> <5034664D.2020504@deandrecarroll.com> <1D62A11DA793425EAA4CAA9FDED6515A@knavery.net> Message-ID: Kate writes: > http://hop.perl.plover.com/book/ I concur. We give it to all our new hires. Rob From eddow1976 at yahoo.com Wed Aug 22 09:01:41 2012 From: eddow1976 at yahoo.com (Ed Dow) Date: Wed, 22 Aug 2012 09:01:41 -0700 (PDT) Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 In-Reply-To: References: Message-ID: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> 6. Re: Roll Call (Ed Dow) Foo... always glad to have a fellow tech interested in Perl, no matter how "noobish" the questions.? Throw some out here.? Who knows you might ask something that hasn't been discussed in a while or maybe never.? ;-) Here's a brain tickler for everyone.... write a quine (a program that outputs itself exactly) in Perl.? This was a question I was asked in a recent interview.? In my opinion, completely unfair and technically usless but everything is fair game in the interviewing process.? ________________________________ From: "boulder-pm-request at pm.org" To: boulder-pm at pm.org Sent: Tuesday, August 21, 2012 5:43 PM Subject: Boulder-pm Digest, Vol 39, Issue 9 Send Boulder-pm mailing list submissions to ??? boulder-pm at pm.org To subscribe or unsubscribe via the World Wide Web, visit ??? http://mail.pm.org/mailman/listinfo/boulder-pm or, via email, send a message with subject or body 'help' to ??? boulder-pm-request at pm.org You can reach the person managing the list at ??? boulder-pm-owner at pm.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Boulder-pm digest..." Today's Topics: ? 1. Re: Roll call? (foo7775 at comcast.net) ? 2. Re: Roll call? (Jason Van Slyke) ? 3. Re: Roll call? (Kate) ? 4. Re: Roll call? (Brennen Bearnes) ? 5. Re: Roll call? (Rob Nagler) ---------------------------------------------------------------------- Message: 1 Date: Tue, 21 Aug 2012 20:41:14 +0000 (UTC) From: foo7775 at comcast.net To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? Message-ID: ??? <532104170.408808.1345581674630.JavaMail.root at sz0012a.emeryville.ca.mail.comcast.net> ??? Content-Type: text/plain; charset="utf-8" (First off, apologies for replying to this so late.) Interesting. *Very* interesting! I joined this list in the hopes that lurking here would help me as I tried to work my way through the Camel book. Several years ago, I worked with a guy who was pretty proficient with Perl, was pretty impressed with the cross-platform things he could accomplish, & decided that I wanted to be able to add those capabilities to my existing system-admin skill set. Unfortunately I haven't yet developed the proficiency that I've wanted to, but hearing that it's definitely still in-demand certainly helps as a motivator. With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) Thanks in advance. T. ----- Original Message ----- From: "hideo" To: boulder-pm at pm.org Sent: Monday, August 6, 2012 10:33:27 AM Subject: Re: [Boulder.pm] Roll call? On Tue, Jul 31, 2012 at 7:51 AM, Jay Hannah < jay at jays.net > wrote: Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks back -- I totally forgot there was a Boulder.pm! I did make it out to a very small Denver.pm meeting... This list archive has nothing for 2 years. Who all is still out there? I'll make sure to hook up with you guys next time I'm pestering relatives in the area. :) jhannah Omaha.pm Still here, though I'd forgotten I'd was. Perl is still my programming tool of choice though I haven't done too much serious development with it in a while. I must say that it's been pretty difficult to find good Perl experience on the Front Range lately. We've had several open reqs without a legitimate bite for a while. It makes me wonder if it's still viable. Zach _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm -------------- next part -------------- An HTML attachment was scrubbed... URL: ------------------------------ Message: 2 Date: Tue, 21 Aug 2012 16:03:22 -0600 From: Jason Van Slyke To: Boulder Perl_Mongers Subject: Re: [Boulder.pm] Roll call? Message-ID: Content-Type: text/plain; charset="iso-8859-1" T.Learning Perl is a good book to have on your shelf and to read at bedtime... ;')Jason Date: Tue, 21 Aug 2012 20:41:14 +0000 From: foo7775 at comcast.net To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? (First off, apologies for replying to this so late.) Interesting.? *Very* interesting!? I joined this list in the hopes that lurking here would help me as I tried to work my way through the Camel book.? Several years ago, I worked with a guy who was pretty proficient with Perl, was pretty impressed with the cross-platform things he could accomplish, & decided that I wanted to be able to add those capabilities to my existing system-admin skill set.? Unfortunately I haven't yet developed the proficiency that I've wanted to, but hearing that it's definitely still in-demand certainly helps as a motivator. With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions.? (Probably a safe bet that they'd be a bit annoying to the crowd here...) Thanks in advance. T. From: "hideo" To: boulder-pm at pm.org Sent: Monday, August 6, 2012 10:33:27 AM Subject: Re: [Boulder.pm] Roll call? On Tue, Jul 31, 2012 at 7:51 AM, Jay Hannah wrote: Hey! I was near Boulder for 3 weeks visiting my brother a couple weeks back -- I totally forgot there was a Boulder.pm! I did make it out to a very small Denver.pm meeting... This list archive has nothing for 2 years. Who all is still out there? I'll make sure to hook up with you guys next time I'm pestering relatives in the area.? :) jhannah Omaha.pm Still here, though I'd forgotten I'd was.? Perl is still my programming tool of choice though I haven't done too much serious development with it in a while.? I must say that it's been pretty difficult to find good Perl experience on the Front Range lately.? We've had several open reqs without a legitimate bite for a while.? It makes me wonder if it's still viable. Zach _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm ??? ??? ??? ? ??? ??? ? -------------- next part -------------- An HTML attachment was scrubbed... URL: ------------------------------ Message: 3 Date: Tue, 21 Aug 2012 16:10:54 -0700 From: Kate To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? Message-ID: <67C632850B234535BCD7DB8115059508 at knavery.net> Content-Type: text/plain; charset="utf-8" On Tuesday, August 21, 2012 at 1:41 PM, foo7775 at comcast.net wrote: > With that in mind, I'd be grateful for any pointers to "newb-appropriate" resources where I could work through the rather basic questions. (Probably a safe bet that they'd be a bit annoying to the crowd here...) Not so much a net resource, but the single most useful book for me in learning Perl was Christiansen & Torkington's "Perl Cookbook". I really like that it gave multiple solutions to just about everything and explained their tradeoffs & how they worked. It encourages copy & paste programming a lot less than just googling code snippets and gave me a much better idea of idiomatic Perl. ? Kate Lynde ------------------------------ Message: 4 Date: Tue, 21 Aug 2012 17:15:16 -0600 From: Brennen Bearnes To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? Message-ID: ??? Content-Type: text/plain; charset="iso-8859-1" On Tue, Aug 21, 2012 at 5:10 PM, Kate wrote: > > Not so much a net resource, but the single most useful book for me in > learning Perl was Christiansen & Torkington's "Perl Cookbook". I really > like that it gave multiple solutions to just about everything and explained > their tradeoffs & how they worked. It encourages copy & paste programming a > lot less than just googling code snippets and gave me a much better idea of > idiomatic Perl. > I'll second this one.? Easily one of my favorite programming texts in general. -- Brennen -------------- next part -------------- An HTML attachment was scrubbed... URL: ------------------------------ Message: 5 Date: Tue, 21 Aug 2012 17:43:02 -0600 From: Rob Nagler To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Roll call? Message-ID: ??? Content-Type: text/plain; charset=ISO-8859-1 [old man mode] When I wanted to learn perl, the only option was "man perl".? It was about 60 pages of troff. :)? Being an old sed/awk/sh hack helped, of course. ROFL. Rob ------------------------------ Subject: Digest Footer _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm ------------------------------ End of Boulder-pm Digest, Vol 39, Issue 9 ***************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: From wpiencia at thunderdome.ieee.org Wed Aug 22 09:05:47 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Wed, 22 Aug 2012 10:05:47 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 In-Reply-To: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> References: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> Message-ID: <20120822160546.GA29148@thunderdome.ieee.org> On Wed, Aug 22, 2012 at 09:01:41AM -0700, Ed Dow wrote: > 6. Re: Roll Call (Ed Dow) > > Foo... always glad to have a fellow tech interested in Perl, no matter how "noobish" the questions.? Throw some out here.? Who knows you might ask something that hasn't been discussed in a while or maybe never.? ;-) > > Here's a brain tickler for everyone.... write a quine (a program that outputs itself exactly) in Perl.? This was a question I was asked in a recent interview.? In my opinion, completely unfair and technically usless but everything is fair game in the interviewing process.? I'm a cheater: #!/usr/bin/perl system("cat $0"); Walter From rise at knavery.net Wed Aug 22 09:29:41 2012 From: rise at knavery.net (Kate) Date: Wed, 22 Aug 2012 09:29:41 -0700 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 In-Reply-To: <20120822160546.GA29148@thunderdome.ieee.org> References: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> <20120822160546.GA29148@thunderdome.ieee.org> Message-ID: <6FF0311B68644C69B6985EC27A3D4978@knavery.net> On Wednesday, August 22, 2012 at 9:05 AM, Walter Pienciak wrote: > I'm a cheater: > > #!/usr/bin/perl > > system("cat $0"); > I'm pretty sure that's idiomatic Perl (or at least idiomatic Unix programming), but if I was feeling snarky I'd just install Quine.pm via CPAN, curse at it for a while when it fails to install due to Mac issues, grab my linux laptop instead because this quine is for something mission critical and I can't afford to waist time on incompatibilities and anyway no-one uses Macs, yadda yadda, "use Quine;", profit. Sadly that's actually a win over some of the stuff I've seen with Ruby gems. -- Kate From nagler at bivio.biz Wed Aug 22 11:06:44 2012 From: nagler at bivio.biz (Rob Nagler) Date: Wed, 22 Aug 2012 12:06:44 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 In-Reply-To: <6FF0311B68644C69B6985EC27A3D4978@knavery.net> References: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> <20120822160546.GA29148@thunderdome.ieee.org> <6FF0311B68644C69B6985EC27A3D4978@knavery.net> Message-ID: Self-replication reminds me of Hofstadter's I am a strange loop: http://en.wikipedia.org/wiki/I_Am_a_Strange_Loop Rob From wpiencia at thunderdome.ieee.org Wed Aug 22 20:00:44 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Wed, 22 Aug 2012 21:00:44 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 In-Reply-To: <6FF0311B68644C69B6985EC27A3D4978@knavery.net> References: <1345651301.17029.YahooMailNeo@web121503.mail.ne1.yahoo.com> <20120822160546.GA29148@thunderdome.ieee.org> <6FF0311B68644C69B6985EC27A3D4978@knavery.net> Message-ID: <20120823030044.GB1933@thunderdome.ieee.org> On Wed, Aug 22, 2012 at 09:29:41AM -0700, Kate wrote: > On Wednesday, August 22, 2012 at 9:05 AM, Walter Pienciak > wrote: > > I'm a cheater: > > > > #!/usr/bin/perl > > > > system("cat $0"); > > > > I'm pretty sure that's idiomatic Perl (or at least idiomatic > Unix programming), but if I was feeling snarky I'd just install > Quine.pm via CPAN, curse at it for a while when it fails to > install due to Mac issues, grab my linux laptop instead because > this quine is for something mission critical and I can't afford > to waist time on incompatibilities and anyway no-one uses Macs, > yadda yadda, "use Quine;", profit. Sadly that's actually a win > over some of the stuff I've seen with Ruby gems. > > -- Kate Ah, the places we've been and the shit we've seen, plumbing the nether regions of other peoples' code. (Apologies to anyone who's had to work on MY code. ;^) Hey, I still have a milk crate full of your golf discs at my house. Walter From eddow1976 at yahoo.com Thu Aug 23 10:18:17 2012 From: eddow1976 at yahoo.com (Ed Dow) Date: Thu, 23 Aug 2012 10:18:17 -0700 (PDT) Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 In-Reply-To: References: Message-ID: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> Still a cool solution.....sucks it only works on unix/linux? ;-) ________________________________ From: "boulder-pm-request at pm.org" To: boulder-pm at pm.org Sent: Wednesday, August 22, 2012 1:00 PM Subject: Boulder-pm Digest, Vol 39, Issue 11 Send Boulder-pm mailing list submissions to ??? boulder-pm at pm.org To subscribe or unsubscribe via the World Wide Web, visit ??? http://mail.pm.org/mailman/listinfo/boulder-pm or, via email, send a message with subject or body 'help' to ??? boulder-pm-request at pm.org You can reach the person managing the list at ??? boulder-pm-owner at pm.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Boulder-pm digest..." Today's Topics: ? 1. Re: Boulder-pm Digest, Vol 39, Issue 9 (Walter Pienciak) ? 2. Re: Boulder-pm Digest, Vol 39, Issue 9 (Kate) ? 3. Re: Boulder-pm Digest, Vol 39, Issue 9 (Rob Nagler) ---------------------------------------------------------------------- Message: 1 Date: Wed, 22 Aug 2012 10:05:47 -0600 From: Walter Pienciak To: Ed Dow , boulder-pm at pm.org Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 Message-ID: <20120822160546.GA29148 at thunderdome.ieee.org> Content-Type: text/plain; charset=iso-8859-1 On Wed, Aug 22, 2012 at 09:01:41AM -0700, Ed Dow wrote: > 6. Re: Roll Call (Ed Dow) > > Foo... always glad to have a fellow tech interested in Perl, no matter how "noobish" the questions.? Throw some out here.? Who knows you might ask something that hasn't been discussed in a while or maybe never.? ;-) > > Here's a brain tickler for everyone.... write a quine (a program that outputs itself exactly) in Perl.? This was a question I was asked in a recent interview.? In my opinion, completely unfair and technically usless but everything is fair game in the interviewing process.? I'm a cheater: ? ? #!/usr/bin/perl ? ? system("cat $0"); Walter ------------------------------ Message: 2 Date: Wed, 22 Aug 2012 09:29:41 -0700 From: Kate To: Walter Pienciak , boulder-pm at pm.org Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 Message-ID: <6FF0311B68644C69B6985EC27A3D4978 at knavery.net> Content-Type: text/plain; charset="utf-8" On Wednesday, August 22, 2012 at 9:05 AM, Walter Pienciak wrote: > I'm a cheater: > > #!/usr/bin/perl > > system("cat $0"); > I'm pretty sure that's idiomatic Perl (or at least idiomatic Unix programming), but if I was feeling snarky I'd just install Quine.pm via CPAN, curse at it for a while when it fails to install due to Mac issues, grab my linux laptop instead because this quine is for something mission critical and I can't afford to waist time on incompatibilities and anyway no-one uses Macs, yadda yadda, "use Quine;", profit. Sadly that's actually a win over some of the stuff I've seen with Ruby gems. -- Kate ------------------------------ Message: 3 Date: Wed, 22 Aug 2012 12:06:44 -0600 From: Rob Nagler To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 Message-ID: ??? Content-Type: text/plain; charset=ISO-8859-1 Self-replication reminds me of Hofstadter's I am a strange loop: http://en.wikipedia.org/wiki/I_Am_a_Strange_Loop Rob ------------------------------ Subject: Digest Footer _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm ------------------------------ End of Boulder-pm Digest, Vol 39, Issue 11 ****************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: From wpiencia at thunderdome.ieee.org Thu Aug 23 10:34:22 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Thu, 23 Aug 2012 11:34:22 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 In-Reply-To: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> References: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> Message-ID: <20120823173422.GF1933@thunderdome.ieee.org> I could generalize it as: #!/usr/bin/perl open MYSELF, '<', $0; print while (); Walter On Thu, Aug 23, 2012 at 10:18:17AM -0700, Ed Dow wrote: > > > Still a cool solution.....sucks it only works on unix/linux? ;-) > > > ________________________________ > From: "boulder-pm-request at pm.org" > To: boulder-pm at pm.org > Sent: Wednesday, August 22, 2012 1:00 PM > Subject: Boulder-pm Digest, Vol 39, Issue 11 > > Send Boulder-pm mailing list submissions to > ??? boulder-pm at pm.org > > To subscribe or unsubscribe via the World Wide Web, visit > ??? http://mail.pm.org/mailman/listinfo/boulder-pm > or, via email, send a message with subject or body 'help' to > ??? boulder-pm-request at pm.org > > You can reach the person managing the list at > ??? boulder-pm-owner at pm.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Boulder-pm digest..." > > > Today's Topics: > > ? 1. Re: Boulder-pm Digest, Vol 39, Issue 9 (Walter Pienciak) > ? 2. Re: Boulder-pm Digest, Vol 39, Issue 9 (Kate) > ? 3. Re: Boulder-pm Digest, Vol 39, Issue 9 (Rob Nagler) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 22 Aug 2012 10:05:47 -0600 > From: Walter Pienciak > To: Ed Dow , boulder-pm at pm.org > Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 > Message-ID: <20120822160546.GA29148 at thunderdome.ieee.org> > Content-Type: text/plain; charset=iso-8859-1 > > On Wed, Aug 22, 2012 at 09:01:41AM -0700, Ed Dow wrote: > > 6. Re: Roll Call (Ed Dow) > > > > Foo... always glad to have a fellow tech interested in Perl, no matter how "noobish" the questions.? Throw some out here.? Who knows you might ask something that hasn't been discussed in a while or maybe never.? ;-) > > > > Here's a brain tickler for everyone.... write a quine (a program that outputs itself exactly) in Perl.? This was a question I was asked in a recent interview.? In my opinion, completely unfair and technically usless but everything is fair game in the interviewing process.? > > I'm a cheater: > > ? ? #!/usr/bin/perl > > ? ? system("cat $0"); > > Walter > > > ------------------------------ > > Message: 2 > Date: Wed, 22 Aug 2012 09:29:41 -0700 > From: Kate > To: Walter Pienciak , boulder-pm at pm.org > Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 > Message-ID: <6FF0311B68644C69B6985EC27A3D4978 at knavery.net> > Content-Type: text/plain; charset="utf-8" > > On Wednesday, August 22, 2012 at 9:05 AM, Walter Pienciak wrote: > > I'm a cheater: > > > > #!/usr/bin/perl > > > > system("cat $0"); > > > > I'm pretty sure that's idiomatic Perl (or at least idiomatic Unix programming), but if I was feeling snarky I'd just install Quine.pm via CPAN, curse at it for a while when it fails to install due to Mac issues, grab my linux laptop instead because this quine is for something mission critical and I can't afford to waist time on incompatibilities and anyway no-one uses Macs, yadda yadda, "use Quine;", profit. Sadly that's actually a win over some of the stuff I've seen with Ruby gems. > > -- > Kate > > > > > > > ------------------------------ > > Message: 3 > Date: Wed, 22 Aug 2012 12:06:44 -0600 > From: Rob Nagler > To: boulder-pm at pm.org > Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 9 > Message-ID: > ??? > Content-Type: text/plain; charset=ISO-8859-1 > > Self-replication reminds me of Hofstadter's I am a strange loop: > > http://en.wikipedia.org/wiki/I_Am_a_Strange_Loop > > Rob > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm > > ------------------------------ > > End of Boulder-pm Digest, Vol 39, Issue 11 > ****************************************** > _______________________________________________ > Boulder-pm mailing list > Boulder-pm at pm.org > http://mail.pm.org/mailman/listinfo/boulder-pm From nagler at bivio.biz Thu Aug 23 10:52:59 2012 From: nagler at bivio.biz (Rob Nagler) Date: Thu, 23 Aug 2012 11:52:59 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 In-Reply-To: <20120823173422.GF1933@thunderdome.ieee.org> References: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> <20120823173422.GF1933@thunderdome.ieee.org> Message-ID: > open MYSELF, '<', $0; > print while (); Since this is a perl list, and people have mentioned learning perl, I have a comment about this style. Walter has known me a long time so I'm sure he knows this is in the best interest of the programming public: * Don't use <>. It's an ambiguous operator, meaning glob and readline. Searching for all instances of is almost impossible. You might as why would you ever do that? Well, if you wanted to modularize access to the file system, because you now have to share state across multiple servers. * Don't use implicit $_. That's something that has bitten us more times than I can count. If you do insist on using $_, make it explicit and do a local($_). Avoid multiple calls when you can. It's convenient to suck in lines and print them out, but that's extra parsing, calls, and doesn't describe what you are doing. Use sysread and syswrite, because you don't need the buffering of stdio anyway. * Check error codes, always. If the program can't read itself, it should die. You may say, "it's just a hack?" Hmmmm... How many of you have had a credit card stolen? Even though it is handled by the credit card company, it's a total hassle to not have that credit card for 10 days and/or have to update all your autopays to the new credit card. Good code begins with the hacks, and works its way upward. * Don't rely on file handles closing. Do it explicitly. If you are relying on a stdio library (readline does), then check the return result of the close, because it may return an error. Just my $.02. Rob From wpiencia at thunderdome.ieee.org Thu Aug 23 11:07:39 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Thu, 23 Aug 2012 12:07:39 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 In-Reply-To: References: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> <20120823173422.GF1933@thunderdome.ieee.org> Message-ID: <20120823180738.GG1933@thunderdome.ieee.org> On Thu, Aug 23, 2012 at 11:52:59AM -0600, Rob Nagler wrote: > > open MYSELF, '<', $0; > > print while (); > > Since this is a perl list, and people have mentioned learning perl, I > have a comment about this style. Walter has known me a long time so > I'm sure he knows this is in the best interest of the programming > public: > > * Don't use <>. It's an ambiguous operator, meaning glob and > readline. Searching for all instances of is almost impossible. > You might as why would you ever do that? Well, if you wanted to > modularize access to the file system, because you now have to share > state across multiple servers. > > * Don't use implicit $_. That's something that has bitten us more > times than I can count. If you do insist on using $_, make it > explicit and do a local($_). Avoid multiple calls when you can. It's > convenient to suck in lines and print them out, but that's extra > parsing, calls, and doesn't describe what you are doing. Use sysread > and syswrite, because you don't need the buffering of stdio anyway. > > * Check error codes, always. If the program can't read itself, it > should die. You may say, "it's just a hack?" Hmmmm... How many of > you have had a credit card stolen? Even though it is handled by the > credit card company, it's a total hassle to not have that credit card > for 10 days and/or have to update all your autopays to the new credit > card. Good code begins with the hacks, and works its way upward. > > * Don't rely on file handles closing. Do it explicitly. If you are > relying on a stdio library (readline does), then check the return > result of the close, because it may return an error. > > Just my $.02. > > Rob All good points, Rob. Rob and a few others have also heard me expound on academic (produce the basic solution for the professor so you can get back to drinking or whatever) versus production (evil exists) code. So -- disclaimer!!! (skull/crossbones and implications of dire consequences) -- the possibility that I put minimal effort/keystrokes into my solution(s) should not be discounted. ;^) We were talking about books a bit ago. Perl Cookbook and Perl Best Practices (seems relevant to this thread) are the two I dip into most often. Walter From rise at knavery.net Thu Aug 23 12:24:48 2012 From: rise at knavery.net (Kate Lynde) Date: Thu, 23 Aug 2012 12:24:48 -0700 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 In-Reply-To: References: <1345742297.30465.YahooMailNeo@web121504.mail.ne1.yahoo.com> <20120823173422.GF1933@thunderdome.ieee.org> <20120823180738.GG1933@thunderdome.ieee.org> Message-ID: While we're on the topics of filehandles and things not to do, never use a lock on the DATA filehandle (the __DATA__ section of your program) to make sure only one copy is running. It looks like a neat hack and there's even a CPAN module for it, but it's non-portable and even on Unix variants it fails in all sorts of strange ways. In fact forget about ever locking that file handle for any purpose, there's just no good reason. Just... don't. -- Kate Lynde From eddow1976 at yahoo.com Thu Aug 23 14:01:27 2012 From: eddow1976 at yahoo.com (Ed Dow) Date: Thu, 23 Aug 2012 14:01:27 -0700 (PDT) Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: References: Message-ID: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> Walter -- very interesting thoughts on academic vs production code.? In some ways it seems like it should be opposite.? Academia should be a place where you strive to put in long hours and thought into your work.? The real world, the evil exists, production is where after looking and pondering over code which will be used once and thrown away (sometimes), seems more like a time for minimal effort and get back to the more important things like drinking or theology which ever comes first. ? ;-) Rob -- I am intrigued with your thoughts on a program checking itself. I too am highly annoyed with canceling/reissuing credit cards.? That 10 day period kills me.? I have to actually go to the bank and get something called cash, something I vaguely remember talking about in economics class.? ;-)?? However, how is the credit card analogy related to a program checking itself?? Are we talking about simple checks to make sure the correct answers are returned from a function?? Or something more involved?? Ed ________________________________ From: "boulder-pm-request at pm.org" To: boulder-pm at pm.org Sent: Thursday, August 23, 2012 1:00 PM Subject: Boulder-pm Digest, Vol 39, Issue 13 Send Boulder-pm mailing list submissions to ??? boulder-pm at pm.org To subscribe or unsubscribe via the World Wide Web, visit ??? http://mail.pm.org/mailman/listinfo/boulder-pm or, via email, send a message with subject or body 'help' to ??? boulder-pm-request at pm.org You can reach the person managing the list at ??? boulder-pm-owner at pm.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Boulder-pm digest..." Today's Topics: ? 1. Re: Boulder-pm Digest, Vol 39, Issue 11 (Walter Pienciak) ---------------------------------------------------------------------- Message: 1 Date: Thu, 23 Aug 2012 12:07:39 -0600 From: Walter Pienciak To: Rob Nagler Cc: boulder-pm at pm.org Subject: Re: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 11 Message-ID: <20120823180738.GG1933 at thunderdome.ieee.org> Content-Type: text/plain; charset=us-ascii On Thu, Aug 23, 2012 at 11:52:59AM -0600, Rob Nagler wrote: > > open MYSELF, '<', $0; > > print while (); > > Since this is a perl list, and people have mentioned learning perl,? I > have a comment about this style.? Walter has known me a long time so > I'm sure he knows this is in the best interest of the programming > public: > > * Don't use <>.? It's an ambiguous operator, meaning glob and > readline.? Searching for all instances of is almost impossible. > You might as why would you ever do that?? Well, if you wanted to > modularize access to the file system, because you now have to share > state across multiple servers. > > * Don't use implicit $_.? That's something that has bitten us more > times than I can count.? If you do insist on using $_, make it > explicit and do a local($_).? Avoid multiple calls when you can.? It's > convenient to suck in lines and print them out, but that's extra > parsing, calls, and doesn't describe what you are doing.? Use sysread > and syswrite, because you don't need the buffering of stdio anyway. > > * Check error codes, always.? If the program can't read itself, it > should die.? You may say, "it's just a hack?"? Hmmmm... How many of > you have had a credit card stolen?? Even though it is handled by the > credit card company, it's a total hassle to not have that credit card > for 10 days and/or have to update all your autopays to the new credit > card.? Good code begins with the hacks, and works its way upward. > > * Don't rely on file handles closing.? Do it explicitly. If you are > relying on a stdio library (readline does), then check the return > result of the close, because it may return an error. > > Just my $.02. > > Rob All good points, Rob. Rob and a few others have also heard me expound on academic (produce the basic solution for the professor so you can get back to drinking or whatever) versus production (evil exists) code.? So -- disclaimer!!! (skull/crossbones and implications of dire consequences) -- the possibility that I put minimal effort/keystrokes into my solution(s) should not be discounted. ;^) We were talking about books a bit ago.? Perl Cookbook and Perl Best Practices (seems relevant to this thread) are the two I dip into most often. Walter ------------------------------ Subject: Digest Footer _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm ------------------------------ End of Boulder-pm Digest, Vol 39, Issue 13 ****************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: From nagler at bivio.biz Thu Aug 23 14:29:16 2012 From: nagler at bivio.biz (Rob Nagler) Date: Thu, 23 Aug 2012 15:29:16 -0600 Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> References: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> Message-ID: Ed writes: > However, how is the credit card analogy related to a program checking > itself? Are we talking about simple checks to make sure the correct answers > are returned from a function? Or something more involved? Here's a discussion about Fast Fail (or vice-versa :) http://en.wikipedia.org/wiki/Fail-fast Code always makes assumptions, and these need to be checked in appropriate (not all) interfaces. The example was opening a file, which can fail, and if it does, the program has to stop doing something it should be doing. Most of the bugs in software are related to mismatched assumptions. In this case, the operating system and language processor assume opens can fail and need to be checked, but the program is assuming it won't and doesn't check. Another approach, which is Pascal-like, is that the language processor fails for the program. This is the nanny-state solution, and it doesn't work either. You don't want the program to fail when you can't open a file in an editor; you want it to produce an error message, and ask the user to correct the file name. Programmers tend to fear failure. You can read more about why I think this is the case, here: http://www.viarob.com/my/page/The_Psychology_of_Software_Testing Rob From wpiencia at thunderdome.ieee.org Mon Aug 27 07:50:16 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Mon, 27 Aug 2012 08:50:16 -0600 Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> References: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> Message-ID: <20120827145016.GA8461@thunderdome.ieee.org> On Thu, Aug 23, 2012 at 02:01:27PM -0700, Ed Dow wrote: > Walter -- very interesting thoughts on academic vs production > code.? In some ways it seems like it should be opposite.? > Academia should be a place where you strive to put in long > hours and thought into your work.? The real world, the evil > exists, production is where after looking and pondering over > code which will be used once and thrown away (sometimes), seems > more like a time for minimal effort and get back to the more > important things like drinking or theology which ever comes > first. ? ;-) My thoughts on this came from observation of programmers straight from school, and in trying to reconcile the work of admittedly bright programmers but new to the workforce with that of seasoned pros. It seems to me that while in school, the focus is on the ability to break down a complex problem into workable fragments, to learn new algorithmic process or data structures, to become familiar with functions and tricky uses of ... etc. Academic code seems barebones, with the logic and working of the program evident. Think of the examples in most textbooks. Production code has acknowledgment of "shit that happens." Full disks, data input outside expected parameters, trying to open nonexistent files, etc. This the realm of Rob's comments, IMO. So that's the sense in which I use "academic" and "production" code. It's pouring -- POURING -- rain here in CNJ this morning. (I'm working at the main facility this week.) Walter From jay at jays.net Mon Aug 27 08:23:34 2012 From: jay at jays.net (Jay Hannah) Date: Mon, 27 Aug 2012 10:23:34 -0500 Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: <20120827145016.GA8461@thunderdome.ieee.org> References: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> <20120827145016.GA8461@thunderdome.ieee.org> Message-ID: <230A4888-ED55-4606-89FA-7B4E604E4621@jays.net> [From http://mail.pm.org/pipermail/boulder-pm/2012-August/001095.html] On Aug 27, 2012, at 9:50 AM, Walter Pienciak wrote: > Academic code seems barebones, with the logic and working of the > program evident. Think of the examples in most textbooks. > > Production code has acknowledgment of "shit that happens." Full > disks, data input outside expected parameters, trying to open > nonexistent files, etc. This the realm of Rob's comments, IMO. -nod- In my two rounds of being "computer science adjacent" (1993, 2010) I was amazed, both times, at how poorly CS mapped to programming computers for a living. There's a lot of conversational overlap, but academia's refusal to get "bogged down" in any particular toolset leaves students undercooked for being code monkeys. And 95% of computer science students don't want to be programmers...? Really? What % of CS-targeted jobs will be programming all day? They're still not teaching version control? (ANY version control system?) Isn't this like an art student having no concept of a paint brush? As you can tell, I have many energetic beefs with computer related academia. :) jhannah Omaha.pm http://www.linkedin.com/in/jhannah From nagler at bivio.biz Mon Aug 27 10:15:04 2012 From: nagler at bivio.biz (Rob Nagler) Date: Mon, 27 Aug 2012 11:15:04 -0600 Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: <230A4888-ED55-4606-89FA-7B4E604E4621@jays.net> References: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> <20120827145016.GA8461@thunderdome.ieee.org> <230A4888-ED55-4606-89FA-7B4E604E4621@jays.net> Message-ID: > They're still not teaching version control? (ANY version control system?) Isn't this like an art student having no concept of a paint brush? It's interesting you choose this analogy. In Hackers and Painters, Paul Graham whom I'm respect highly doesn't mention version control: http://www.paulgraham.com/hackpaint.html He also doesn't mention testing either. Paul Graham is a penultimate hacker, an absolute genius of creating abstractions. However, he doesn't know how to run a software business that lasts more than a few years. Y Combinator is about making money with technology solutions, not about software longevity. Joel Spolsky, I suspect, understands the longevity issue, but doesn't get the abstraction part. There are some practical aspects of programming such as version control, testing, and so on. There are also some artistic aspects of programming, such as, "test what is likely to break", OAOO, and TIMTOWTDI. I'm not concerned about the practical aspects. They are easy enough to learn, and I would expect companies to train people in their methodology anyway. It's quite similar to understanding a business, and why we train people in The Great Game of Business (see book by that name). I don't expect people to understand how business works, although I consider it essential to writing good software. What disturbs me is the knowledge that Paul Graham provides in his books are not well-known. There are some crucial ideas about creating software that most programmers don't understand at all -- to the point of not even understanding the words used. They are native to the culture of Lisp, and should be in all dynamic language cultures. One of my ideas of how to remedy this problem is to teach a course on refactoring which takes OSS packages, and has students applying the skills of OAOO, IMTOWTDI, and three strikes rule to get a grade. Most software can be refactored to about 1/10 the size. This isn't a big effort, and it can be done in a short projects. For example, I took Mail::POP3Client and trimmed it down in my book (http://www.extremeperl.org/bk/refactoring). There are a number of aspects of being a programmer-artist which are important and go untaught in companies and universities. No time right now to do this, but someday... Rob From eddow1976 at yahoo.com Tue Aug 28 08:40:16 2012 From: eddow1976 at yahoo.com (Ed Dow) Date: Tue, 28 Aug 2012 08:40:16 -0700 (PDT) Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 15 In-Reply-To: References: Message-ID: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> What's the point of version control when you just end up throwing code away?? ;-) Or I've found a more common issue is not allowing time for the version control to take place.? Management doesn't want to hear it's going to take an extra day because of a check in and check out process.? How do you want it Good, Fast or Cheap...pick two please.? They will tell you all three, but the reality of the situation is they only care about Fast and Cheap.? Quality is job 2 in most cases.? But I have to agree....academia and the real world are two different places.? I'm not really sure what the CS degree is attempting to produce.? It seems like the school I graduated from was attempting to shoot for software engineers rather than code monkeys, but that was over ten years ago.? No telling what they are trying to do now.? It seems that one of the biggest problems they were facing at the time is the amount of information to cram in a 4 year degree.? Interesting LISP culture was brought up.? I used to love LISP while in school.? Lost of InSignificant Parenthesis.? ;-)? The native language in itself lent itself so well to many things.? Sure you had to adjust your mind but once you did I believe the mentality of OAOO could be achieved.? Perl in all of it's splendor and glory with it's TIMTOWTDI mentality could never achieve the eloquence of LISP.? However the two languages seems to share much in common as pointed out in Mark Dominus' "Higher Order Perl".? Maybe this is how I got linked up with Perl? Paul Graham's cover art on his "Hackers and Painters" book is both revealing and intriguing.? The Tower of Babel.? Are we as coders/developers building towers of babel with our own code?? Will we ever be able to unite all programming languages into one great programming language? Why are there so many programming languages?? I'll have to read the book when I get a chance.? I wish we would get some rain here.? Hot and Dry? but I guess it's preferable over Cold and Damp.? ;-) ? ________________________________ From: "boulder-pm-request at pm.org" To: boulder-pm at pm.org Sent: Monday, August 27, 2012 1:00 PM Subject: Boulder-pm Digest, Vol 39, Issue 15 Send Boulder-pm mailing list submissions to ??? boulder-pm at pm.org To subscribe or unsubscribe via the World Wide Web, visit ??? http://mail.pm.org/mailman/listinfo/boulder-pm or, via email, send a message with subject or body 'help' to ??? boulder-pm-request at pm.org You can reach the person managing the list at ??? boulder-pm-owner at pm.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Boulder-pm digest..." Today's Topics: ? 1. Re: Academic vs Production Code (Walter Pienciak) ? 2. Re: Academic vs Production Code (Jay Hannah) ? 3. Re: Academic vs Production Code (Rob Nagler) ---------------------------------------------------------------------- Message: 1 Date: Mon, 27 Aug 2012 08:50:16 -0600 From: Walter Pienciak To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Academic vs Production Code Message-ID: <20120827145016.GA8461 at thunderdome.ieee.org> Content-Type: text/plain; charset=iso-8859-1 On Thu, Aug 23, 2012 at 02:01:27PM -0700, Ed Dow wrote: > Walter -- very interesting thoughts on academic vs production > code.? In some ways it seems like it should be opposite.? > Academia should be a place where you strive to put in long > hours and thought into your work.? The real world, the evil > exists, production is where after looking and pondering over > code which will be used once and thrown away (sometimes), seems > more like a time for minimal effort and get back to the more > important things like drinking or theology which ever comes > first. ? ;-) My thoughts on this came from observation of programmers straight from school, and in trying to reconcile the work of admittedly bright programmers but new to the workforce with that of seasoned pros. It seems to me that while in school, the focus is on the ability to break down a complex problem into workable fragments, to learn new algorithmic process or data structures, to become familiar with functions and tricky uses of ... etc. Academic code seems barebones, with the logic and working of the program evident.? Think of the examples in most textbooks. Production code has acknowledgment of "shit that happens."? Full disks, data input outside expected parameters, trying to open nonexistent files, etc.? This the realm of Rob's comments, IMO. So that's the sense in which I use "academic" and "production" code. It's pouring -- POURING -- rain here in CNJ this morning.? (I'm working at the main facility this week.) Walter ------------------------------ Message: 2 Date: Mon, 27 Aug 2012 10:23:34 -0500 From: Jay Hannah To: boulder-pm at pm.org Cc: Nebraska USA Perl Mongers of Omaha , ??? "odynug at googlegroups.com" Subject: Re: [Boulder.pm] Academic vs Production Code Message-ID: <230A4888-ED55-4606-89FA-7B4E604E4621 at jays.net> Content-Type: text/plain; charset=iso-8859-1 [From http://mail.pm.org/pipermail/boulder-pm/2012-August/001095.html] On Aug 27, 2012, at 9:50 AM, Walter Pienciak wrote: > Academic code seems barebones, with the logic and working of the > program evident.? Think of the examples in most textbooks. > > Production code has acknowledgment of "shit that happens."? Full > disks, data input outside expected parameters, trying to open > nonexistent files, etc.? This the realm of Rob's comments, IMO. -nod-? In my two rounds of being "computer science adjacent" (1993, 2010) I was amazed, both times, at how poorly CS mapped to programming computers for a living. There's a lot of conversational overlap, but academia's refusal to get "bogged down" in any particular toolset leaves students undercooked for being code monkeys. And 95% of computer science students don't want to be programmers...? Really? What % of CS-targeted jobs will be programming all day? They're still not teaching version control? (ANY version control system?) Isn't this like an art student having no concept of a paint brush? As you can tell, I have many energetic beefs with computer related academia.? :) jhannah Omaha.pm http://www.linkedin.com/in/jhannah ------------------------------ Message: 3 Date: Mon, 27 Aug 2012 11:15:04 -0600 From: Rob Nagler To: boulder-pm at pm.org Subject: Re: [Boulder.pm] Academic vs Production Code Message-ID: ??? Content-Type: text/plain; charset=ISO-8859-1 > They're still not teaching version control? (ANY version control system?) Isn't this like an art student having no concept of a paint brush? It's interesting you choose this analogy.? In Hackers and Painters, Paul Graham whom I'm respect highly doesn't mention version control: http://www.paulgraham.com/hackpaint.html He also doesn't mention testing either.? Paul Graham is a penultimate hacker, an absolute genius of creating abstractions.? However, he doesn't know how to run a software business that lasts more than a few years.? Y Combinator is about making money with technology solutions, not about software longevity.? Joel Spolsky, I suspect, understands the longevity issue, but doesn't get the abstraction part. There are some practical aspects of programming such as version control, testing, and so on.? There are also some artistic aspects of programming, such as, "test what is likely to break", OAOO, and TIMTOWTDI.? I'm not concerned about the practical aspects.? They are easy enough to learn, and I would expect companies to train people in their methodology anyway.? It's quite similar to understanding a business, and why we train people in The Great Game of Business (see book by that name).? I don't expect people to understand how business works, although I consider it essential to writing good software. What disturbs me is the knowledge that Paul Graham provides in his books are not well-known.? There are some crucial ideas about creating software that most programmers don't understand at all -- to the point of not even understanding the words used.? They are native to the culture of Lisp, and should be in all dynamic language cultures. One of my ideas of how to remedy this problem is to teach a course on refactoring which takes OSS packages, and has students applying the skills of OAOO, IMTOWTDI, and three strikes rule to get a grade.? Most software can be refactored to about 1/10 the size.? This isn't a big effort, and it can be done in a short projects.? For example, I took Mail::POP3Client and trimmed it down in my book (http://www.extremeperl.org/bk/refactoring).? There are a number of aspects of being a programmer-artist which are important and go untaught in companies and universities. No time right now to do this, but someday... Rob ------------------------------ Subject: Digest Footer _______________________________________________ Boulder-pm mailing list Boulder-pm at pm.org http://mail.pm.org/mailman/listinfo/boulder-pm ------------------------------ End of Boulder-pm Digest, Vol 39, Issue 15 ****************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: From rise at knavery.net Tue Aug 28 09:59:10 2012 From: rise at knavery.net (Kate) Date: Tue, 28 Aug 2012 09:59:10 -0700 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 15 In-Reply-To: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> References: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> Message-ID: <5A91FCD88A4048408184250593D625ED@knavery.net> On Tuesday, August 28, 2012 at 8:40 AM, Ed Dow wrote: > Or I've found a more common issue is not allowing time for the version control to take place. Management doesn't want to hear it's going to take an extra day because of a check in and check out process. Either you're using the wrong tool or that's not actually the time the _version control_ part of the process takes! :) More seriously, assuming that's actually the time for reviews, testing, sign-offs, etc. yeah, it's a hard sell but potentially easier to sell framed as something else? QA & testing of any format usually end up getting the short end of the stick[0], but when trying to explain to a major customer doing a high-risk migration that they really didn't want us to run it in an hour and put it live I found it useful to frame things in terms of risk tradeoffs and their tolerance. It doesn't help at all with the technical debt part unless you can get that idea across as increasing risk of schedule slippage, etc. in the long run, but sometimes it'll buy a lot more understanding of trying to test thoroughly and roll out carefully if you've let them come to their own conclusions about risk. On the other hand sometime you just get people being bozos and they'll decide retroactively that the risks were more than you told them. *sigh* On that downer note, perhaps it's time for the eternal version control system flame war: RCS or SCCS? Clearly if it's good enough for BitKeeper SCCS is good enough for anyone! [0] Weird idioms, hurrah? ? Kate From bbearnes at gmail.com Tue Aug 28 10:07:14 2012 From: bbearnes at gmail.com (Brennen Bearnes) Date: Tue, 28 Aug 2012 11:07:14 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 15 In-Reply-To: <5A91FCD88A4048408184250593D625ED@knavery.net> References: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> <5A91FCD88A4048408184250593D625ED@knavery.net> Message-ID: On Tue, Aug 28, 2012 at 10:59 AM, Kate wrote: On that downer note, perhaps it's time for the eternal version control > system flame war: > > RCS or SCCS? Clearly if it's good enough for BitKeeper SCCS is good > enough for anyone! > I keep hearing about these newfangled technologies, but personally I haven't yet seen any advantages over dir.1, dir.1.bak, dir.2.bak... :D -- Brennen -------------- next part -------------- An HTML attachment was scrubbed... URL: From nagler at bivio.biz Tue Aug 28 10:31:50 2012 From: nagler at bivio.biz (Rob Nagler) Date: Tue, 28 Aug 2012 11:31:50 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 15 In-Reply-To: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> References: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> Message-ID: Funny, but I found a bug in your mailer (Yahoo). It sends out an invalid Reply-To with two addresses. Then, Gmail fails to check that the message is compliant, and includes two addresses on the To: on the reply. Not a big issue, but a demonstration that even with large teams of supposedly "the world's best programmers" we can't even map to an RFC which is 30 years old (just a couple of weeks ago, in fact!). > What's the point of version control when you just end up throwing code away? Yup, that's the attitude, but I bet it is the places with version control which throw away the most code, because they have the youngest programmers. > it Good, Fast or Cheap...pick two please. They will tell you all three, but Time, Scope, Resources, and Risk. I consider myself in the risk mitigation business, not programming. My goal is helping customers understand that there's always risk, and the problem is quantifying it, not assuming that it doesn't exist or is "low" or "high". That's why understanding business is so important: risk is quantified in terms of cost to the company, not things like "technical debt". Sorry Kate, but I don't think this actually exists despite it being a term du jour. Whatever happened to Design Patterns? Oh yea, they don't exist either. Or is it that all design problems have been solved, and we are just reading out of a book how to program? > Quality is job 2 in most cases. Quality doesn't exist either. It's Risk. Quality is a meaningless concept. We write tests, use version control, avoid comments, etc. to minimize risk, not to improve quality. Literate programming improves "quality" but is risk neutral. I don't care how pretty your program is, sorry. What matters is the level of coupling (explicit and implicit) and my ability as an expert in the specific problem domain and platform to read your code. To pick on literate programming, here's an example from the Wikipedia page: <>= while (1) { <> c = *ptr++; if (c > ' ' && c < 0177) { /* visible ASCII codes */ if (!in_word) { word_count++; in_word = 1; } continue; } if (c == '\n') line_count++; else if (c != ' ' && c != '\t') continue; in_word = 0; /* c is newline, space, or tab */ } What's wrong with this code? Let's see there's an embedded constant 0177 which isn't even "documented". There's the redundant state of word_count and in_word (state mismatch is #1 cause of bugs). The embedded "\n" and \t which of course is platform dependent. Let's not forget that UTF8 allows a variety of spaces. The dearth of named abstractions. Inconsistent use of "else". It's an infinite loop (where's the "last"?). Oh wait, "in_word" is not even used, so it takes me this long to see dead code. But it does look nice. :) I had the same problem with the dude who wrote Beautiful Code. There's very little understanding about how to write risk-mitigated code. It's not more costly, just requires you having to live with the same production code for a decade or so and doing some reflection on that experience. > But I have to agree....academia and the real world are two different places. I don't agree. It's like saying sysadmin and programming are distinct, or software architecture and coding are different. Testing, too. They are all the same thing: providing structure to a problem domain. The principles apply in academia as they do in testing. My schooling was as much emergent knowledge (design, or whatever) as my work in software architecture. > I'm not really sure what the CS degree is attempting to produce. I still use a lot of what I learned in school over 30 years ago. I was lucky in that I started going distributed systems around 1980 so I got experience that's obviously useful today, but also understanding big O notation and combinatorics is very important to what I do. Not to mention my compiler and operating system experience. > itself lent itself so well to many things. If you ask me, everything in programming is derived from lisp. We've been twiddling syntax since 1959 just to understand that. > but once you did I believe the mentality of OAOO could be achieved. Absolutely, because it is so easy to have code as data and data as code. Look around you and see how many times this is true. Consider JSON, HTML, or about:config in your browser. > Perl in > all of it's splendor and glory with it's TIMTOWTDI mentality could never > achieve the eloquence of LISP. Agreed. You can come pretty close. As I often say, all you need is eval and closures, and the rest is syntax. > However the two languages seems to share > much in common as pointed out in Mark Dominus' "Higher Order Perl". Maybe > this is how I got linked up with Perl? The problem is few people understand this. Python, ruby, sh, Tcl, PHP, etc. are all popular, because they are asymptotically approaching Lisp. > and intriguing. The Tower of Babel. Are we as coders/developers building > towers of babel with our own code? Should we? Check out http://appliedrationality.org/rationality/ which someone sent me a link to today. Here's a great quote: Humans can?t be perfect reasoners because our brains have limited processing capacity, and because our brains are evolved kluges of ?spaghetti code? rather than optimally-designed reasoning machines. > Will we ever be able to unite all > programming languages into one great programming language? Compare JSON, HTML, XML to Lisp. :) > Why are there so > many programming languages? Ego, Maslov, whatever. Rob From nagler at bivio.biz Tue Aug 28 10:59:39 2012 From: nagler at bivio.biz (Rob Nagler) Date: Tue, 28 Aug 2012 11:59:39 -0600 Subject: [Boulder.pm] Boulder-pm Digest, Vol 39, Issue 15 In-Reply-To: References: <1346168416.31968.YahooMailNeo@web121505.mail.ne1.yahoo.com> Message-ID: > word_count and in_word (state mismatch is #1 cause of bugs). The test (missing) would have told me this isn't true. Rob From wpiencia at thunderdome.ieee.org Tue Aug 28 13:06:08 2012 From: wpiencia at thunderdome.ieee.org (Walter Pienciak) Date: Tue, 28 Aug 2012 14:06:08 -0600 Subject: [Boulder.pm] Academic vs Production Code In-Reply-To: References: <1345755687.16099.YahooMailNeo@web121502.mail.ne1.yahoo.com> Message-ID: <20120828200608.GD24518@thunderdome.ieee.org> On Thu, Aug 23, 2012 at 03:29:16PM -0600, Rob Nagler wrote: > > Here's a discussion about Fast Fail (or vice-versa :) > > http://en.wikipedia.org/wiki/Fail-fast > > Code always makes assumptions, and these need to be checked in > appropriate (not all) interfaces. The example was opening a file, > which can fail, and if it does, the program has to stop doing > something it should be doing. Most of the bugs in software are > related to mismatched assumptions. In this case, the operating system > and language processor assume opens can fail and need to be checked, > but the program is assuming it won't and doesn't check. Another > approach, which is Pascal-like, is that the language processor fails > for the program. This is the nanny-state solution, and it doesn't > work either. You don't want the program to fail when you can't open a > file in an editor; you want it to produce an error message, and ask > the user to correct the file name. I just want to say, Rob, that we support your position: "There are significant economic benefits in the early detection of faults. This implies that test set development should start as soon as practical following availability of the unit requirements documentation because of the resulting requirements verification and validation. It also implies that as much as practical should be tested at the unit level." Appendix B item B2.4 IEEE Standard for Software Unit Testing (IEEE Std 1008-1987) ;^) Walter