KM's Journal KM's use Perl Journal en-us use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners. 2012-01-25T02:09:25+00:00 pudge Technology hourly 1 1970-01-01T00:00+00:00 KM's Journal Happy Holidays <p>I just wanted to wish everyone a happy holiday season. Be safe.</p> KM 2006-12-20T14:57:44+00:00 journal Perlmonks <p>For whatever reason, I decided to go back and check out Perl Monks. It's been quite some time since I was there. Also, I had gotten pretty burnt out on the "community" for a while (post YAPC hosting, then TPF Committee chairing, frankly sick of certain peoples attitudes, etc...). But, lately I've been getting back into the swing of things.</p><p>Anywho.. a long while ago I stopped visiting Perl Monks because of the trolls, horrible answers, and various annoyances. Plus, the fact that I swear the site is run off a laptop.. an old laptop.. which is underwater and connected with uninsulated cables.</p><p>So, last week I decided to visit. Of course, I forgot my password so I used the "send me my password" thing. An hour later, it arrived. I've now tried about 50 times to get to the Newest Nodes page, and NOT ONCE has it even began to load.</p><p>I'm not on dialup, have a zippy MacBook, and tried on Safari, Camino and FF. The site is still slow as a snail.</p> KM 2006-12-05T00:35:43+00:00 journal YAPC::NAs Where's the mojo? <p>I'm really shocked at the lack of proposals for YAPC::NA::2006. I am also really shocked at the lack of them for '05. Years previous there were plenty to choose from!</p><p>So, what's up people? Why are you not putting in proposals, as opposed to years past? Is it the time you may have to put into it? Unsure you'd be able to pull it off? Not enough of a support system to help?</p><p>YAPC::NA::2003 proposals - 6+<br>YAPC::NA::2004 proposals - 6+<br>YAPC::NA::2005 proposals - 1 (Toronto... which was a good place anyways)<br>YAPC::NA::2006 proposals - 0 (as of now, which is past the original deadline)</p><p>YAPC isn't like OSCON where you can expect it to occur every year. If people don't get involved, it won't live on. It's not something you can sit on your duff and expect someone else will do it. You HAVE to participate and host the conference for it to happen. After all, that's what grass roots is all about. It's really a great experience to organize it, and a fabulous way to give back to the Perl community.</p><p>So what's up people? Why are you not proposing? What's changed in the past few years? What can we as a community do to change this? What can TPF do?</p><p>Let's make sure YAPC::NA doesn't die out. That would be a real shame. Plus, all of you wouldn't fit in my house as the "last resort venue"<nobr> <wbr></nobr>;-)</p> KM 2005-09-14T13:50:36+00:00 journal Success Stories? <p>The success stories are sort of old now. I'm looking for any articles/whitepapers/etc... out there which pertain to "We used to use X, switched to Perl and now life is good" or "We used Perl, switched to X and now life is bad". Not just stories on how Perl is great for whatever was done, but why Perl ended up being the best choice.</p><p>Anyone have any pointers to newsgroup articles, magazine articles, etc...? Bonus points if it is from a company, not just an individual. Extra Bonus points for anything written by a manager-type.</p> KM 2005-07-05T16:28:04+00:00 journal My Birthday <p>Today is my birthday. Since I have had to compete with that JC guy all my life, people usually forget. So, I need to remind them<nobr> <wbr></nobr>:-)</p> KM 2004-12-27T16:22:16+00:00 journal OSCON Day 1 <p>Day 1 was quite eventful. I worked, then went out to dinner with my family. If I were at the conference, I probably would have had more fun.</p> KM 2004-07-26T23:10:56+00:00 journal YAPC::NA::2005 CFV In case you didn't see it, I put up the <a href=";tid=25&amp;tid=16">CFV</a>. KM 2004-07-23T00:11:15+00:00 journal OS X and split-tunnel VPN I connect to a VPN, and sometimes have an issue. When the VPN gets disconnected for some reason (not because I disconnected it), my default gateway route seems to change to something I don't want. <p> Here is what I have in my<nobr> <wbr></nobr>/etc/ppp/ip-up: </p><p> <code><nobr> <wbr></nobr>/sbin/route delete default ip.of.the.vpn<br><nobr> <wbr></nobr>/sbin/route add default<br><nobr> <wbr></nobr>/sbin/route add XXX.XXX.0.0 ip.of.the.vpn<br><nobr> <wbr></nobr>/sbin/route add NN.NNN.0.0/16 ip.of.the.vpn<br> </code> </p><p> When I connect, this is fine. All my VPN traffic goes through the VPN, and uses all things VPN. And, when I connect to the rest of the world, it works fine. So, it's a split-tunnel. </p><p> And, my ip-down: </p><p> <code><nobr> <wbr></nobr>/sbin/route add XXX.XXX.0.0 <br><nobr> <wbr></nobr>/sbin/route delete NN.NNN.0.0/16<br><nobr> <wbr></nobr>/sbin/route add default<br> </code> </p><p> When I disconnect by hand, this works fine. I could probably have nothing in this file, but do. </p><p> But, those random disconnects (and reconnect) seem to sometimes make my default gateway the ip.of.the.vpn. I don't notice until Adium suddenly disconnects, and I do a netstat to look at the routing table... then I have to run ip-up by hand. </p><p> Anyone have any suggestions?</p> KM 2004-07-01T14:14:22+00:00 journal Missing YAPC <p>I'm missing YAPC, and it sucks. As some of you know, my wife was rushed to the hospital on Sunday morning. She ended up undergoing major surgery that night having her appendix, a tennis ball sized ovarian cyst, and about a foot of her small intestine removed. She's still in the hospital, and probably will be until the end of the week.. if not more.</p><p>Wish I could see all my old and new friends at YAPC this year. But, maybe next year. If anyone wants to drive East for a few hours, let me know<nobr> <wbr></nobr>:-) I could use a distraction.</p><p>I won't be at OSCON either, since all my silent (read: in my head) please to ORA to pay my way have gone unanswered.</p> KM 2004-06-16T18:42:48+00:00 journal OSCON <p>I'd like to make it this year. But, being (un|self)employed, the funds can't be taken for both travel expenses and the actual conference. Not sure what to do. I guess I could grovel to gnat for a pass and see if I can get the money to make the trip... but not sure that would work. Blah. This is one of the things that working for "The Man" was good for... but is also why YAPC exists. But, I'd like to do some Apache talks.. grah!</p> KM 2004-03-31T02:13:03+00:00 journal CA Collections Attorney? <p>Anyone happen to know a good and reasonably priced (don't pay if you don't collect) collections attorney located around Contra Costa County to handle a small claims case? Being in NY I can't really judge who is reputable out there.</p> KM 2004-03-27T00:52:48+00:00 journal A/V Streaming <p>I haven't done much with streaming A/V since I was at DEC, and Real Networks was the only game in town. But, I have a client who wants to be able to provide his clients the ability to stream. The RealServer (or Helix, or whatever it's called today) seems somewhat expensive.. but has a free encoder for users. Then, there is the Darwin Streaming Server, which is free... but I'm not sure what he'd tell users to use to encode. Windows Media is not an option.</p><p>What are opinions?</p> KM 2004-03-24T02:51:52+00:00 journal Spoon <a href="">Spoon (Iain Truskett)</a> has passed on. I knew him for some time on IRC, and always liked him. He was someone I could always chat with which wouldn't turn into a "I LOVE PIE" conversation after 30 seconds. It was nice knowing you, and you'll be missed. KM 2004-01-13T21:48:38+00:00 journal Happy Birthday! <p>To me!</p> KM 2003-12-27T13:58:57+00:00 journal Non Competes <p>Now that I'm independent I do work for various people. When doing a large project I expect that I get a NDA from the client. No problem. But, a new client sent me a contract which included a non-compete section. It seemed to be worded with a W2 employee in mind. It states that the Programmer (me, the consultant in this case) can't work for any competition of theirs directly or indirectly for 1 year after working for them. Then, a bunch of "you can request permission" stuff, and if you can't get a job because of this provision they pay you 80% of your salary until you can. All wording which seems reasonable for a salaried employee. But, not a consultant. I sent an email back saying I wouldn't sign it unless that section was removed, as I couldn't agree to having my income limited because I do work for them, and since I'm not salaried.. 80% of no salary is $0. I haven't heard back yet (it's Friday, so didn't expect to).</p><p>Then I started to wonder how enforcable something like this would be anyways. If you worked for Acme Corp, left (or was asked to leave) the company, then was hired by Widget Corp (Acme Corps bitter enemy).. what could Acme Corp. really do about it? I once worked for a company which hired someone who was a consultant. The consulting company tried to pull some legal stuff on the guy, but didn't seem to be able to enforce it. I figured I could just sign that contract and a) the company would never know who I did work for anyways, or b) couldn't enforce anything. But, I just don't like signing things I don't agree with and don't want to have the possability of any legal hassles.</p><p>Does anyone know of any cases where a non-compete was broken and successfully enforced? And, if so.. what was enforced? Did the person have to quit their job? Pay money?</p> KM 2003-12-20T03:23:18+00:00 journal Safari Pop-Up blocker <p>I enjoy pop-up/under/sideways free browsing using Safari's built-in pop-up blocking. Until today! I read that Kellie Waymire died. It said she was on Six Feet Under, which I watch.. and couldn't place who she is. I guess she was some recurring hooker that I don't remember at all in the show. Anyways, I was searching for a photo of her, which I couldn't find many.</p><p>Anywho... I went to and all of a sudden.. a full screen pop-up! I closed it, made sure I had blocking enabled (which I did, of course).. reloaded.. and there it was again! Seems like they get around the usual JavaScript pop-ups which Safari blocks.</p><p>How? They have a JavaScript called from an onLoad, which submits a form with a new target. Pretty sneaky sis.</p><p>Safari is basically all I use, so I'm not sure if this gets around other pop-up blocking technolgies or not.</p> KM 2003-11-23T23:17:44+00:00 journal Non-corporate world <p>Since I've been unemployed since I quit Verio and moved up to NY, I've need to help pay the bills. So, I've started my own consulting business. I'm gearing towards local business', joined the Chamber of Commerce, blah blah blah. But, in order to make some money I do odd Perl jobs for people. I'll install some things, write some custom scripts, give general Linux help, troubleshoot, etc...</p><p>I'm used to programming within the corporate world, so I'm learning a new side of non-corporate Perl. There are quite a few "companies" (groups of programmers) who write a boatload of scripts, and sell them. Auctions, affiliate scripts, multi-level-marketing, etc... They write them, sell them, then seem to not support their products. This is where I have been coming in. People pay me to fix this junk. And, I mean *junk*. The crappy code sometimes makes my cringe.. and I cringe more that people buy this stuff.. and even more that people are selling it!! But, it's good for me since I get a few bucks here and there.</p><p>I now see a lot of what people do to start their websites in the attempt to make money, as opposed to the large corporation. It's sort of interesting, although I'm not sure what kind of revenue these people make.</p><p>Most of us are probably in the corporate world, and don't see this side of the Perl-world and internet-biz world. At least, I was somewhat shielded from it. I've considered re-writing all these bad scripts and just selling them myself. May as well sell a cheaper, well-written, version of someone elses crap. But, I don't want to maintain them since I wouldn't be using them personally.</p><p>Anywho... it's been interesting seeing this side. I get a decent share of repeat business (fix a script, then write a custom one, etc...) although I don't pull in the cash I used to yet. I need more steady work. I do, however, like not having a 9 to 5 anymore. Making my own hours, working from home and being able to choose what I want to work on is a *great* thing.</p> KM 2003-11-18T14:47:42+00:00 journal Online Banking <p>My local bank is very local. Only a few branches. They have, like many banks, online banking. For some reason, I trust large banks, and credit card companies, with their online banking apps. Maybe I assume they have a team of people who work on it, and it goes through rigid Q&amp;A and security auditing.</p><p>Anyways, my local bank uses a system I think was created by a local internet/hosting company.. at least it is hosted with them. It's also apparantly written in Perl, and running on Linux. The company I *think* wrote the system basically seems to do Windows based hosting, and says they do Cold Fusion and ASP programming. Not Perl, or Linux/BSD development.</p><p>On further inspection, I see this comment (and a few more) in the HTML:</p><p>&lt;!-- RM/COBOL Runtime - Version 7.10.00 for Linux (Intel). --&gt;</p><p>And this at the bottom:</p><p>&lt;!-- COBOL STOP RUN at line 1692 in<nobr> <wbr></nobr>/U/PGMS/OBJ/ACCTLIST (/u/pgms/obj/acctlist).OSMCSINITIALIZE called! --&gt;<br>&lt;!-- OSMCS called! --&gt;<br>&lt;!-- Mcs Function = 8; McsPtrArea = 0x0 --&gt;</p><p>So, it's COBOL.. at least in part.</p><p>I'm not sure why, but this makes me nervous. Has anyone ever contacted their bank to ask what sort of security audits, checking, Q&amp;A, etc... which their online banking apps have gone through? They use 2 cookies, one with a session ID, and one called 'pass', which seems like a encrytped version of the password. When you log out, they clear the 'SID' cookie, but not the 'pass' cookie. And, neither of the cookies are secure, although the site uses SSL.</p><p>So, I took the contents of the cookie, which looks something like (this was NOT it, obviously):</p><p>ABhsHhYdsYR</p><p>And I thought to myself, "Hey, this just look like something passed through crypt().. not even a hash."</p><p>So, I did this:</p><p>perl -wle'print crypt("MY PASSWORD", "AB")';</p><p>Lo-and-behold, it prints out what is in the cookie. So, it's storing my password crypt()-ed in a non-secure cookie, and doesn't blank it out on logout.</p><p>Am I being *too* paranoid about this? I'm pretty sure the userid naming convention is a standard one. We didn't choose it, and it isn't random. So, if you can view someones cookie, you know the salt to use with crypt and could brute force the password without trying to actually log on (which would lock the account after 3 tries... according to an error message I viewed).</p><p>If I have a concern about the security for one thing in a system, I don't trust the rest of the system. Would I be out of line (I don't think I would) by asking the bank to provide information on security audits done on their online banking system? Took me 5 minutes to view a cookie and get my password from it... you'd think someone would have caught that.</p> KM 2003-11-13T18:56:05+00:00 journal Been MIA I've been pretty much MIA from the Perl community lately, not that <b>anyone</b> has noticed. Not sure why I've been away. I guess being unemployed has taken me out of the normal geek-loop. And, #perl... well, I take a break from #perl every so often anyways. I'm still active with TPF, but that's about it right now. <p> Anyways... if anyone cares you can still see what's been up with my life on my <a href="">regular journal</a>. New house, new state, dead dog, wildlife, kid, etc... Mundane, but my life.</p> KM 2003-10-25T02:31:51+00:00 journal Nip/Tuck <p>If you're not watching this show on FX, you're missing out. Great drama, and I dare say one of the best shows on TV. If you like the HBO dramas, you'll probably like this.</p><p>When they get the first season on reruns (or DVD), check it out. I'm so happy to have an actual good show on TV (aside Family Guy, anime, and.. er.. um.. yeah).</p> KM 2003-10-01T03:57:20+00:00 journal Validate::SSN <p>I didn't see a module on CPAN for validation of SSN numbers.. not validating it has 9 digits, but validating the area, group and serials. I'm starting to work on what will probably be Validate::SSN (or SSN::Validate) to do this.</p><p>So, not wanting to redo any existing wheels someone may know about, let me know if you are doing this or if it has been done and I haven't found it. Or, if anyone else would find this useful, let me know.</p><p>Also, if anyone knows of any RSS feeds or fetchable lists of updated areas and high groups (didn't notice any on the SSA website), please point me to them. Right now the module has all the area info in a __DATA__ section.. so this means it will have to be updated by hand. An RSS file or something would allow me to have a script update the module automatically when any changes are done. I'd rather not screen scrape, or depend on myself to look for changes on the website. Need to stay lazy<nobr> <wbr></nobr>;-)</p> KM 2003-08-16T00:30:56+00:00 journal No Perl Mongers Here <p>Seems there are no active PM groups up this way. A few weeks ago I emailed some contact which seemed like a, but got no reply. I see no, or</p><p>If you are a Perl hacker up this way, let me know. I already started one PM group ( and helped revive another (, and don't feel like starting another one unless I know some folks are in the area. "In the area" for me is Albany to Lake George. I'm up for getting some lunch, doing a talk, hanging out.. anything!</p> KM 2003-08-13T22:45:42+00:00 journal Powerpuff Girl Cake Here it is, Kyla's 5th birthday cake.. decorated by Suzy and named by me... <a href="">Powerpuff Girls On Acid Cake</a>! Behold the wonder! KM 2003-08-08T00:05:43+00:00 journal Kyla turning 5 <p>Tomorrow Kyla will turn 5. I sort of feel bad for her since her party will be lame. Since we are new here, she has no friends to party with. So, it will be family. My mom is coming up from FL, and of course my dad already lives here. I'll be baking her a cake in a little while.</p><p>5 years. Wow. Seems like only 4 years and 264 days ago when she was a little helpless thing which pooped at will. To date she has installed FreeBSD (I told her what to click, and she would), installs and plays games on her own, knows her way around various kid websites, talks, runs, can read, and does all sorts of things which amaze and amuse me.</p><p>She's a cool kid. I think I'll keep her<nobr> <wbr></nobr>:-)</p> KM 2003-08-06T19:11:37+00:00 journal Presentations <p>One of these days I need to write a presentation. I once started a CGI one (after all, I wrote a book on it, so should be able to do an talk on it!), but never finished. I wrote one (and gave one) on all the bits of an email, especially header info and ecodings. I didn't have much Perl in it, just more of a "How to look at raw email and understand it, so you understand how to parse it or what a parser is doing when it parses it". I also gave one on I18N and G11N, in relation to emails (this was part 2 to the headers) and the web. Covered a lot of dealing with encodings, double byte characters, UTF-8, etc... While I was working at Verio I learned a lot about email structures, encodings, charsets, etc... since I had to write a "globalized" web based email system. I wrote some modules which do various header parsing/creation which works nice with non-ascii charsets (concentrated on iso-2022-jp, Shift_JIS, iso-8859-1 and UTF-8... but uses iconv for whatever conversion is needed). Why not Wasn't considered stable at the time (and we were using 5.6.0). And the existing email parsing modules didn't seem to work right, or do what I needed as far as getting a folded iso-2022-jp subject converted to UTF-8 for web display.</p><p>Maybe I should revisit the talks and add some Perl-fu into them. YAPC will be here before I know it! They are interesting on their own, but would need more Perl... or maybe not.</p> KM 2003-08-02T23:57:03+00:00 journal Spaghetti code to Ziti <p>I mentioned I am refactoring some code for a client. My first step was reformatting (perltidy and some by-hand stuff), and fixing up some minor code mistakes and consolidation along the way. I'll tell ya, formatting helps wonders. Spending the time to do proper indenting, make some things more consistent, and more visually pleasing can make speghetti look much more like ziti.</p><p>Now I can start breaking out some redundant code and making it modular. The guy(s) who originally wrote this were, er.. not the greatest with code design. Sort of half Matt Wright-esque and half "Hey, noone else will ever work on this". Of course, now I am maintaining it so I feel the need to better it for my own sanity and time.</p><p>There are thousands of lines of code in about a dozen scripts. No warnings, no stricture, not even using (except for sections I added) or ANY (that's right NONE) modules from CPAN (again, except for my sections) aside from DBI. Thank god they didn't reinvent DBI along with everything else!!</p><p>So, now I need to plan how to keep making the code better without completely rewriting it. As I went through the code I noticed some obvious things to consolidate... so I guess I'll start there and see where it goes. At the very least, I can now visually follow the code!</p><p>mmmmmmm.... ziti</p> KM 2003-07-30T15:50:48+00:00 journal Florida Bad, NY Good <p>I think 98% of anyone I meet.. from neighbors to barbers.. after asking me where I moved from say "Why would you move from Florida to here??" in a tone of "what are you nuts?" Sort of tired of saying over and over "It's too hot and flat there for me, I just don't like it", I decided to start posing the question back to them. I started with the lady cutting my hair. She asked, and I replied "Well, why don't you move to Florida?" She paused, then replied "Florida is nice to visit, but I like it up here." EXACTLY!</p><p>I think I'll just started saying I moved here from Buffalo when people ask where I moved from.</p> KM 2003-07-29T17:17:01+00:00 journal Races begin! <p>Saratoga Springs sure loves horses.. that's something I have learned since living here (if I hear about Funny Cide one more time...). The Saratoga race season started yesterday. So, went to the track today. Was a lot of fun. Out of the 6 races I stayed for, here are the standings for picking winners so far:</p><p>Me: 0<br>My Dad: 0<br>Kyla: 1</p><p>Kyla picked the winner for the first race. I wish I kept track of this when I went to the track in FL, because I think overall, Kyla (at 4) has a better win ratio then any of us.</p> KM 2003-07-24T23:25:21+00:00 journal Kyla Reading <p>I don't think I have mentioned it, but Kyla has been reading quite well over the past 6 weeks. She is excellent at sounding words out, and can read some beginners books on her own. I have no real idea when kids start reading, but people seem to be impressed with how well she reads at 4 years old (5 next month). So, I guess she is doing quite well. Luckily, her new school (kindergarden) will make sure she reads where she is at, and doesn't re-teach her how to read what she can. I'm very proud of her.. and tell her that often.</p> KM 2003-07-22T23:38:26+00:00 journal Refactoring <p>Doing some code refactoring for a client. There is a lot of code which was written by someone else, who didn't seem to have much experience with CPAN, or code design. As I go through it, it seems I say to myself a lot "This should be pulled out, and this too.. and this". I could rewrite the whole thing, but don't want to and won't have the time to do so right now. That would be a long-term goal.</p><p>So, right now I am starting with formatting (perltidy, and various things it doesn't catch) so at least it is more readable for maintaining. Also catching various "This could be written better" blocks and snippets which I am fixing. I guess once that is all done I'll chose something to start really making better. Like abstracting the SQL from the main code, incorporating some CPAN modules, and seperating some of the HTML from the code.</p><p>Lots of fun doing it though. Every time I do something, anything, with it I know I am making my life easier for down the road.</p> KM 2003-07-21T18:48:12+00:00 journal