Friday, December 18, 2015

Thursday, December 17, 2015

Hi all. We've had poor attendance recently, and other events I've scheduled for this holiday season ...

Hi all. We've had poor attendance recently, and other events I've scheduled for this holiday season have been called at the last minute because nobody coming.

So, if people don't tell me, either here, on the Meetup or via email, that you're planning to attend Monday's meeting, I will scratch and say "See you next year".

Monday, December 14, 2015

I have announced our next meeting (on Wednesday) on Meetup, and I find I can no longer create events...

I have announced our next meeting (on Wednesday) on Meetup, and I find I can no longer create events in G+. Fun.

Anyway, please RSVP.

http://ift.tt/TWLl7N

Thursday, December 10, 2015

Trying to minimize in-page Javascript An overstatement, but a funny one. When everything on the web ...

Trying to minimize in-page Javascript
An overstatement, but a funny one. When everything on the web was new, we put all our JS code into the page itself, because there wasn't much other choice. We put our triggers into our tags and in script blocks at the top of the page, as we did with our CSS...

Thursday, December 3, 2015

Working with Perl Critic around Exporter I am working on a framework for modern web APIs using CGI and...

Working with Perl Critic around Exporter
I am working on a framework for modern web APIs using CGI and old-school Perl objects, inspired by what I learned from perlbrew. This is more or less how the included modules go. This auto-exports every function that starts with 'api_', so that I could writ...

Tuesday, December 1, 2015

Thinking Aloud about Testing a Module I have a module that handles getting a DBI object connecting to...

Thinking Aloud about Testing a Module
I have a module that handles getting a DBI object connecting to MySQL databases. With some work, it could be made to talk to others, but since I don't really have any Oracle or PostgreSQL databases to connect to, it hasn't been worth it. I have another modu...

Cracked pointed me to this video, where China explains their Five Year Plan, or fails to, like if Terry...

Cracked pointed me to this video, where China explains their Five Year Plan, or fails to, like if Terry Gilliam and Thought Cafe collaborated on a Schoolhouse Rock video. Strange. 

Thursday, November 19, 2015

Two cutting-things questions. I have a Pyrex test tube that was cleared out of the lab a while ago...

Two cutting-things questions.

I have a Pyrex test tube that was cleared out of the lab a while ago. We don't use such glassware anymore. I've taken to use it as a tone bar for my lap steels, but it's about 8" and I need it at about 4". You cannot cut Pyrex as easily as you can glass, which in normal circumstances is a feature, not a bug. I want to cut down the test tube and have a clean, hand-safe result at the end, without spending too much on gear. Ideas?

Similarly, I have a Partscaster guitar. I would like to cut an expired license plate to serve as a pickguard, and want a hand-safe result. I don't have access to many power tools. I am imagining spending an afternoon with a hacksaw and ending up with a far-from-aesthetically-pleasing result.

#Makers

The Visual Studio editor is open source now. So's .NET Core 5, and it's supposed to be useful for Windows...

The Visual Studio editor is open source now. So's .NET Core 5, and it's supposed to be useful for Windows, Linux, and OS X. What a world.

Visual Studio Pro has a subscription model now, which I imagine isn't that different from having an MSDN subscription. Still more expensive than Vim, so I probably won't be ordering any time soon.

Wednesday, November 18, 2015

Tonight we meet at MatchBox for our monthly Purdue Perl Mongers meeting. Main topic is "HTML Mail" ...

Tonight we meet at MatchBox for our monthly Purdue Perl Mongers meeting.

Main topic is "HTML Mail" by me, with a discussion on our December meeting, which should be our celebration of the release of Perl6.

Immediately following is Open Source Food & Beer & Chat at Lafayette Brewing Company. Please RSVP at opensourcelafayette.org so we know how many seats we need to reserve, and see you then.

Monday, November 16, 2015

#Javascript  folk: I know it's common to put console.log() and console.dir() in your code during development...

#Javascript  folk: I know it's common to put console.log() and console.dir() in your code during development so you can see what's going on behind the scenes.

Do you keep some logging going on once you put your code in production, so if something goes south you can look? Or do you pull all of that out once it's live?

Thursday, November 12, 2015

Considering committing Clever with jQuery XHR code A code snippet if ( protecting_namespaces.data.ha...

Considering committing Clever with jQuery XHR code
A code snippet if ( protecting_namespaces.data.hasOwnProperty( 'xhr' ) ) {
submission.data.xhr.abort() ;
}
protecting_namespaces.data.xhr = $.ajax({
url: url ,
data: object ,
method: 'POST',
dataType: 'j...

Wednesday, November 11, 2015

Javascript folk: Making a page where I click one button to increment and another to decrement a value...

Javascript folk: Making a page where I click one button to increment and another to decrement a value. Currently, I'm going to the API for each click, which I do not want.

I could hang off mouseout(), changing the value then, but that really hangs this to desktop. mouseout and hover are not modern web concepts, even if you can still use them.

So, what should I do insetad?

  #lazyweb  

Monday, November 9, 2015

Communication with my connection inside MongoDB indicates that the problem is that the backup file contains...

Communication with my connection inside MongoDB indicates that the problem is that the backup file contains several BSON documents within it, and my code was trying to read it all as one.

It is reasonably easy to read a file containing several JSON documents and discern that it contains several JSON documents that must be separated before parsing, but as BSON is a binary representation, it is less so.

Saturday, November 7, 2015

Congratulations to CSoI's Director, Wojciech Szpankowski, for being the first recipient of the Arden...

Congratulations to CSoI's Director, Wojciech Szpankowski, for being the first recipient of the Arden L. Bement Jr. Award!

"Professor Szpankowski is a visionary. He has dedicated himself to building an active and vibrant community of researchers that is pushing the boundaries of information theory."

Attend Professor Szpankowski's lecture in the Purdue University Stewart Center (Fowler Hall) on Monday, November 9, 2015 at 1:30 pm. Reception following at 2:30 pm in the Robert L. Ringel Gallery.

Friday, November 6, 2015

Congratulations to CSoI's Director, Wojciech Szpankowski, for being the first recipient of the Arden...

Congratulations to CSoI's Director, Wojciech Szpankowski, for being the first recipient of the Arden L. Bement Jr. Award!

"Professor Szpankowski is a visionary. He has dedicated himself to building an active and vibrant community of researchers that is pushing the boundaries of information theory."

Attend Professor Szpankowski's lecture in the Purdue University Stewart Center (Fowler Hall) on Monday, November 9, 2015 at 1:30 pm. Reception following at 2:30 pm in the Robert L. Ringel Gallery.

Trying to Read MongoDB dump files using BSON I've been looking at increasing the amount of MongoDB we...

Trying to Read MongoDB dump files using BSON
I've been looking at increasing the amount of MongoDB we use at work, and this includes backing up the data. Due to my own confusion, I had a little issue getting mongodump to work, but I have been able to dump from one Mongo database and restore to another...

Wednesday, November 4, 2015

My team at Google has been very big proponents and innovators of USB Type-C. I've worked on two Pixel...

My team at Google has been very big proponents and innovators of USB Type-C. I've worked on two Pixel products now that use the connector and its related technologies (Power Delivery, Alternate Mode, USB 3.1). It really is an amazing little connector.

However, now that there are more and more Type C products rolling out from Nexus, One+, Nokia, and more, this I have found painfully true : USB Type-C will only be as good as its ecosystem, and more specifically, the worst of its ecosystem.

I have started reviewing USB cables on Amazon because I have gotten fed up with the early cables from 3rd party vendors that so blatantly flaunt the specification and I want to hold them to task.

You may not just get weird behavior from your devices with these bad cables... What some these vendors are doing is downright dangerous.

I've been contemplating setting up a blog where I document bad cables and perhaps give some insights into USB Type C as well.

#USB   #TypeC ,
#Nexus   #ChromebookPixel   #PixelC  

 

Saturday, October 24, 2015

Bruce Schneier at Cato: Big Data as Big Surveillance

Bruce Schneier at Cato: Big Data as Big Surveillance

While waiting for the Android APK to update, I put my Guitr code into my "Hello World" Cordova app. ...

While waiting for the Android APK to update, I put my Guitr code into my "Hello World" Cordova app. I trigger things wrong; I have "onchange:draw()" in my HTML tags rather than putting the triggers in my JS file. I think I'd better learn to do this in raw JS rather than importing jQuery.

Still, I consider this a win.

Wednesday, October 21, 2015

Have a program that determines what a directory's ACLs should be, then uses a syscall to have setfacl...

Have a program that determines what a directory's ACLs should be, then uses a syscall to have setfacl do that. 

I had been letting setfacl handle the recursion, but we've decided that enough active stuff happens, stuff that generated LARGE DATA, that handling the recursion myself is to be done. And this includes symbolic links.

I hate learning experiences.

Remember that Overkill problem? The Magic Box? I just rebuilt Rakudo to get the newest Perl 6, and ...

Remember that Overkill problem? The Magic Box?

I just rebuilt Rakudo to get the newest Perl 6, and rewrote that thing in Perl6, trying to use the same algorithm as before.

My C++ takes a second and a half.

My Perl 5 takes a minute and a half.

My Perl 6 takes an hour and a half.

And I can't identify egregious errors in the thing.



Saturday, October 17, 2015

Long, Boring To-Do Post I'm considering stepping up my web presence, and as a precursor to that, I've...

Long, Boring To-Do Post
I'm considering stepping up my web presence, and as a precursor to that, I've created a twitter account specifically connected to this blog,  @varlogrant . So, I need to do things to make it look more like I'm using it and less like it's an egg. (If I made ...

Tuesday, October 13, 2015

Sunday, October 11, 2015

Thinking Aloud: Power Issues for a Raspberry Pi as a Car Computer We could switch from a Raspberry Pi...

Thinking Aloud: Power Issues for a Raspberry Pi as a Car Computer
We could switch from a Raspberry Pi to an oDroid or another sort of low-power computer-on-a-board. My Pi has a task right now, so if I was to go forward with this, I'll have to get something new anyway, but for sake of this discussion, we'll assume this is ...

I get the idea of this. You could make it into an easily-programmable central time point, or use it ...

I get the idea of this. You could make it into an easily-programmable central time point, or use it to MIDI-control your rig. I know of MIDI-to-CV, so it could send arpeggiation and a complex wave to control filters. I could see this being hacked into someone's complex modular rig.

But I have none of that. 

http://ift.tt/1Nr0Fp2

Overkill II: The Quickening Previously on /var/log/rant, I talked about using recursion to brute-force...

Overkill II: The Quickening
Previously on /var/log/rant, I talked about using recursion to brute-force a middle-school math problem. Because I learned a little bit about using Xeon Phi co-processor (the part formerly called video cards), I thought I'd try C++. And found that, while th...

Friday, October 9, 2015

Too pricy by a bit, but I'd wear it.

Too pricy by a bit, but I'd wear it. 



Overkill: Using the Awesome Power of Modern Computing to Solve Middle School Math Problems I was helping...

Overkill: Using the Awesome Power of Modern Computing to Solve Middle School Math Problems
I was helping my son with his math the other night and we hit a question called The Magic Box. You are given a 3x3 square and the digits 3,4,5,6,7,8,9,10,11, and
are expected to find a way of placing them such that each row, each column, and each diagonal ...

Wednesday, October 7, 2015

So, I guess we can say that Perl 6 is released. It's change. I'm not always happy with change. I guess...

So, I guess we can say that Perl 6 is released.

It's change. I'm not always happy with change.

I guess we'll see how things go.

Monday, October 5, 2015

Saturday, October 3, 2015



I remember watching this on USA's Night Flight in the 1980s. I wonder what happened to Marv Newland...

I remember watching this on USA's Night Flight in the 1980s. 

I wonder what happened to Marv Newland.

You Know Where You Stand In Your Hellhole Sawyer X tweeted this: Him: This guy has been programming ...

You Know Where You Stand In Your Hellhole
Sawyer X tweeted this: Him: This guy has been programming for a few years now.
Me: Maybe he's been just writing code and not programming. — Sawyer X (@PerlSawyer) September 29, 2015 I said "Deep". This can be a variation of "He says he has 5 years of experi...

Friday, October 2, 2015

Looks like ES6's 'let' is roughly equivalent to 'my' in Perl. Which I like.

Looks like ES6's 'let' is roughly equivalent to 'my' in Perl. Which I like.

Anyone here use expect or Expect.pm? I think I need to bend your ear. Usage I'm seeing in examples ...

Anyone here use expect or Expect.pm? I think I need to bend your ear.

Usage I'm seeing in examples is spawn('shell or something'); send('shell command');

Usage I'm seeing in bug report is spawn('perl command') ; send('another program');

As always, you should be able to abuse tools for your own purposes. 

Wednesday, September 30, 2015

#DoctorWho

#DoctorWho

"Netflix Switch” Home Automation #IoT http://ift.tt/1MG6z2i...

"Netflix Switch” Home Automation #IoT
http://ift.tt/1P5eGIn

Netflix wants you to build your own home automation electronics in order to automate at least the first half of “Netflix and chill” with their Make It campaign showing you how to build a wifi remote that automatically adjusts lighting, silences your phone, orders takeout, and of course, queues up your entertainment. The prototype shown uses a Particle and IR LED, and instructs makers to reverse engineer their TVs IR remote signals using Ladyada’s classic tutorial. What I like about this ad campaign is that it encourages people to make their own electronics projects from an accessible and fun angle.

Read more
http://ift.tt/1P5eGIn

Tuesday, September 29, 2015

First, there was a Shakespearean Insult Generator, which was three lists of words to throw together ...

First, there was a Shakespearean Insult Generator, which was three lists of words to throw together randomly.

That was insufficiently generator, so I put it into Perl.

Now, I wanted a simple thing to test my REST framework with, and I had this code sitting around.

It's internal for the moment, but I could easily put it somewhere accessible, allowing one and all to call each other "thou puking rough-hewn wagtail" or the like.

As A Service!

For Greater Lafayette People: Best Pizza in Town

For Greater Lafayette People: Best Pizza in Town

#Beard guide...

#Beard guide...

We are now sharing our first data via Globus to a researcher in Tasmania. Don't know if the bits are...

We are now sharing our first data via Globus to a researcher in Tasmania. Don't know if the bits are flowing yet.

The Bits Must Flow.

Monday, September 28, 2015

So - uh. Holy crap. "Best All Star cover" are not words I expected to put together. For that matter ...

So - uh. Holy crap. "Best All Star cover" are not words I expected to put together. For that matter "All Star cover" seemed unlikely.

Yet here we are.

Saturday, September 26, 2015

Found this from +Eric Topol​'s Twitter feed. Leptin is a hormone produced by the adipose tissue that...

Found this from +Eric Topol​'s Twitter feed.

Leptin is a hormone produced by the adipose tissue that acts in the brain, stimulating white fat breakdown. We find that the lipolytic effect of leptin is mediated through the action of sympathetic nerve fibers that innervate the adipose tissue. Using intravital two-photon microscopy, we observe that sympathetic nerve fibers establish neuro-adipose junctions, directly “enveloping” adipocytes. Local optogenetic stimulation of sympathetic inputs induces a local lipolytic response and depletion of white adipose mass. Conversely, genetic ablation of sympathetic inputs onto fat pads blocks leptin-stimulated phosphorylation of hormone-sensitive lipase and consequent lipolysis, as do knockouts of dopamine β-hydroxylase, an enzyme required for catecholamine synthesis. Thus, neuro-adipose junctions are necessary and sufficient for the induction of lipolysis in white adipose tissue and are an efferent effector of leptin action. Direct activation of sympathetic inputs to adipose tissues may represent an alternative approach to induce fat loss, circumventing central leptin resistance.

And what I think that means is: White adipose tissue is "belly fat". Activating neurons in the adipose tissue with light creates leptin, which starts the brain into breaking it down. "Necessary and sufficient" that this does it and to do it, it's all you need.

Which could be cool. I don't know how to make this work. Put an LED board on my stomach? Does hue matter? Would red light be more effective than blue? Clearly, none of that's in the abstract. I should see if I can get this full paper from Purdue libraries. Then, I should see if I can make heads or tails of it. 

Of course, AT&T is now just the reason your iPhone sucks, you can make that lock thing with a Raspberry...

Of course, AT&T is now just the reason your iPhone sucks, you can make that lock thing with a Raspberry Pi and it is Google and Microsoft bringing you all that stuff.

Friday, September 25, 2015

Yup.

Yup.

a DRY KISS I've been working on a tool. I discussed a lot of it yesterday. I had a model to get the ...

a DRY KISS
I've been working on a tool. I discussed a lot of it yesterday. I had a model to get the information based on PI, and I wanted to get to what I considered the interesting bit, so it was only after the performance went from suck to SUCK that I dove back, whi...

Pulled out my +Particle Internet Button and made changes. Already, I could cycle through the colors ...

Pulled out my +Particle Internet Button and made changes. Already, I could cycle through the colors of +CheerLights, but I used (int) and map() to allow me to set a dimmer level, too.

I should have it listen in and find the current Cheerlights color, too. But not tonight.

Thursday, September 24, 2015

This would make an epic t-shirt.

This would make an epic t-shirt. 

Anyone ever hit a point where what is right for algorithms and performance was wrong for software engineering...

Anyone ever hit a point where what is right for algorithms and performance was wrong for software engineering? What did you do?

This is only kinda like thinking in algorithms I have a program. It has two parts: get the data and ...

This is only kinda like thinking in algorithms
I have a program. It has two parts: get the data and use the data. "Get the data" involves several queries to the database to gather the data, then I munge it into the form I need. Specifically, it's about people who generate samples of DNA data (called "pr...

Wednesday, September 23, 2015

Oh God, spare me more discussion about Intellectual Property law. I know the basics: patent, trademark...

Oh God, spare me more discussion about Intellectual Property law. I know the basics: patent, trademark, copyright, trade secret, license. I've known for years, and barring a change like in Cambodia and post-Revolution France, they won't change. If they do, I'll be more worried that, as a person who wears glasses, I'd be considered ruling class and be cooked alive for food, and thus won't have to worry about infringing anything.

Should I make anything anybody wants to buy, I'll worry about it then. Until then, please, keep it away from me.

Tuesday, September 22, 2015

The guy heading the other side of Lafayettech has quit, which means there's nothing going on opposing...

The guy heading the other side of Lafayettech has quit, which means there's nothing going on opposing Mondays.

So, we could move to every Monday.

Or, we could move to every Friday. Or some other choice. 

I'm not interested in dictating this choice. I'm also not interested in opening up the space and sitting there alone. So I want user input here.

Monday, September 21, 2015

I've been playing some more with Canvas and Javascript, and I now have a clock I think I want to have...

I've been playing some more with Canvas and Javascript, and I now have a clock I think I want to have in a more real sense than as a web page.

I know that Windows 8+ Live Tiles are made with web tools, so I could do that, but I'm now thinking about having it as a wall-clock sort of thing. I could go with a USB screen and Pi. It seems a bit overkill, but making it as a physical clock would be physically impossible.

Saturday, September 19, 2015

My Tab 4, when I dragged down in the status bar while using Chromecast, would lock up. Just switched...

My Tab 4, when I dragged down in the status bar while using Chromecast, would lock up.

Just switched to Google Now Launcher. Problem is gone. So, problem was TouchWiz.

Wouldn't have guessed that.

Friday, September 18, 2015

Sounds like an argument to toss out a lot of stuff and start over again in !Perl. Or at least start ...

Sounds like an argument to toss out a lot of stuff and start over again in !Perl. Or at least start with nothing old but the hashbang.

Thinking that Big Data is like Artificial Intelligence: If we can do/handle a thing, it isn't AI/BD.

Thinking that Big Data is like Artificial Intelligence: If we can do/handle a thing, it isn't AI/BD.

Not Done, But Done For Now I spent some more time on it, and I figured something out. I looked at the...

Not Done, But Done For Now
I spent some more time on it, and I figured something out. I looked at the data, and instead of getting 1 2 3 4 NULL NULL 5 6 7 , I was getting 1 2 3 4 NULL NULL 7 1 2 , starting at the beginning again. So, I figured out how to do loops and made a series of...

Over the last few months, we've ran an experiment, moving from Tuesdays over lunch in Whistler to Wednesdays...

Over the last few months, we've ran an experiment, moving from 
Tuesdays over lunch in Whistler to Wednesdays after work at the
MatchBox, followed by GLOSSY Open Source Food & Beer & Chat at LBC.

We've learned several lessons (first: bring your own DANG HDMI 
cables to MB), and I certainly don't regret it, but from discussions
with Joe and Michael, we might do on-campus after-work, as we have
done before.

Or not.

So:
    Location -- MatchBox? WSLR? Some other building on-campus? 

    Time -- After work? Lunchtime? I'd suggest 7:30-8:30am if I
    thought anybody would go for it, but I sincerely doubt it.

    Day -- Wednesday was chosen to make the Mongers -> GLOSSY
    transition easy, but with campus not being quite as easy 
    walking distance from LBC, we might look into other days.
    Although, it's almost Tuesday, Wednesday or no-day for me.

Any comments at all about when would be a good or bad time to Monger
would be appreciated.

Joe Kline is presenting at PPW just before our expected meeting, 
and will re-present that talk for us next month, so that's on-deck, 
wherever and whenever it occurs.

Thursday, September 17, 2015

Logging, Plotting and Shoshin: A Developer's Journey I heard about Log::Log4perl and decided that this...

Logging, Plotting and Shoshin: A Developer's Journey
I heard about Log::Log4perl and decided that this would be a good thing to learn and to integrate into the lab's workflow. We were having problems with our VMs and it was suggested I start logging performance metrics, so when we go to our support people, we...

Wednesday, September 16, 2015



+Joe Kline talking oDroid at Purdue Perl Mongers #IStandWithAhmed

+Joe Kline talking oDroid at Purdue Perl Mongers #IStandWithAhmed

I cannot do a Google search because we got moved to a shared 10.* block instead of routable addresses...

I cannot do a Google search because we got moved to a shared 10.* block instead of routable addresses, and someone in our block is repeatedly sending searches Google, in an automated manner.

And I cannot do my work without the result of my non-abusive Google searches.

I cannot do a Google search because we got moved to a shared 10.* block instead of routable addresses...

I cannot do a Google search because we got moved to a shared 10.* block instead of routable addresses, and someone in our block is repeatedly sending searches Google, in an automated manner.

And I cannot do my work without the result of my non-abusive Google searches.

Thank you for completing our code review! You did well so the next step is ... That's a good thing...

Thank you for completing our code review! You did well so the next step is ...

That's a good thing.

Although the rest of the body contains "linked list"...

It is with a heavy heart we are sharing such sad news about a young maker named Ahmed Mohammed who was...

It is with a heavy heart we are sharing such sad news about a young maker named Ahmed Mohammed who was arrested and interrogated after taking his homemade clock to school because the clock "looked like a fake bomb".

This strikes us that there’s a whole lot more we need to do to educate people about the Maker Movement and DIY culture. Please like and share the story to support this young maker and our community!

Power is out. Sucks.

Power is out. Sucks. 

Tuesday, September 15, 2015

Today Paul Stoffregen announced the Teensy 3.2, a sub-$20 Arduino compatible development board -- The...

Today Paul Stoffregen announced the Teensy 3.2, a sub-$20 Arduino compatible development board -- The board is great for integrating in large LED walls or doing advanced audio processing.

I have a few Twitter lists. There's family, there's my local peeps, my list of Perl tweeters, etc. Thing...

I have a few Twitter lists. There's family, there's my local peeps, my list of Perl tweeters, etc. Thing is, that's curated; I know +Joe Kline​ is in town and is a Perl guy, so he's in two lists. The hot thing would be to ID clusters and make lists for them.

Need to figure that part out.

I like where I'm at with running my Twitter stuff through Naive Bayes. I need to rebuild so that I'm...

I like where I'm at with running my Twitter stuff through Naive Bayes. I need to rebuild so that I'm pulling a few pages at a time and doing better with the UI, but concept is proven. Think I want to send myself an end-of-say digest.

The interesting thing is that, so I'm not just saying "favorites", I label month and year, so some tweets match what I liked in July 2014 more than anything else. So, either the Internet changes or my tastes change.



Monday, September 14, 2015

Thoughts on Machine Learning and Twitter Tools I have a lot of Twitter data. I decided a few months ...

Thoughts on Machine Learning and Twitter Tools
I have a lot of Twitter data. I decided a few months ago to get my list of those I follow and those following me, and then find that same information about each of them. This took quite some time, as Twitter stops you from getting too much at a time. I foun...

Sunday, September 6, 2015

General Lafayette and the Debt of Honor. Today's Wikipedia article of the day, and one of Eddie Izzard's...

General Lafayette and the Debt of Honor. Today's Wikipedia article of the day, and one of Eddie Izzard's best one-liners.

Thursday, September 3, 2015

So You Think You CAN REST This is notes to self more than anything. Highly cribbed from  http://www...

So You Think You CAN REST
This is notes to self more than anything. Highly cribbed from  http://ift.tt/IMsd6X First step toward making RESTful APIs is using the path info. If you have a program api.cgi, you can post to it, use get and api.cgi?foo=bar, or you can use path ...

Why are programmers non-productive? Because their time is wasted in meetings. Why are programmers rebellious...

Why are programmers non-productive? Because their time is wasted in meetings. 
Why are programmers rebellious? Because the management interferes too much. 
Why are the programmers resigning one by one? Because they are burnt out. 
Having worked for poor management, they no longer value their jobs.

http://ift.tt/1krDqsb

Tuesday, September 1, 2015

I believe that daylight saving time does more harm than good and should be stopped in the US. (I feel...

I believe that daylight saving time does more harm than good and should be stopped in the US. (I feel I lack standing to call for abolishment elsewhere.)

Beyond that, except for the counties near Cincinnati, I believe Indiana should be under Central Time, not Eastern. Aligning with NYC has never had any practical purpose for me, but aligning with Chicago does with fair regularity.

Monday, August 31, 2015

Gave up on the Lenovo laptop that's been giving me problems since I got it, and got a low-end HP laptop...

Gave up on the Lenovo laptop that's been giving me problems since I got it, and got a low-end HP laptop to fill the gap.

A few things: by default, it's function-on, so hitting the F6 key is sound mute unless I hit the function key to make it serve as F6. Which is ... okay? I mean, I can see it either way.

Second, it didn't have onboard Bluetooth, but I have a BTLE dongle, and was able to have the FitBit live tile sync with my FitBit, meaning I can take the dongle home and connect it to my HTPC. Which is kinda win.

It's big enough to have the numpad, and I'm slowly learning to like the keyboard. It's black plastic but nearly ultrabook thin. with no VGA and two USB 3 ports. Gotta say, I'm liking it.

Saturday, August 29, 2015

Friday, August 28, 2015

But Wait! There's More! Extendable DRY API Code The previous post wasn't built in a vacuum. I was chasing...

But Wait! There's More! Extendable DRY API Code
The previous post wasn't built in a vacuum. I was chasing down ideas for a purpose. I've been building JSON APIs for the lab for quite some time, each with as much knowledge about them as I had at that time, which means I have a number of bad APIs out there...

Filling a Dispatch Table For Ease of Development and DRY I hate magic. Don't get me wrong. If the night's...

Filling a Dispatch Table For Ease of Development and DRY
I hate magic. Don't get me wrong. If the night's entertainment is going to see Penn & Teller, I'll enjoy myself like anyone else, but when I have to work with it, I hate magic. I hate magic because there's an implicit promise of "this will always work" , an...

Thursday, August 27, 2015

"While stuck by himself on the red planet, Watney is very literally the most isolated person to ever...

"While stuck by himself on the red planet, Watney is very literally the most isolated person to ever live—more than ten times more distant from any other human being than even the Apollo astronauts were when they visited the Moon."

When furthest away, the Moon is ~400,000 km away from Earth.

When closest, Mars is ~54,000,000 km away. 

That is more than ten times more distant, I guess.

http://ift.tt/1NCKULb

Wednesday, August 26, 2015

Now I Am A C# Developer It started with Instagram. I wanted to be able to have my most recent Instagram...

Now I Am A C# Developer
It started with Instagram. I wanted to be able to have my most recent Instagram picture become my background. For my Android, tablet, that was easy. I just used IFTTT to connect the Instagram channel to the Android Device channel and that was that. I wrote ...



Tuesday, August 25, 2015

I wrote C# that sets a JPG as my background image. Next steps: * downloading my most recent Instagram...

I wrote C# that sets a JPG as my background image.

Next steps:

* downloading my most recent Instagram image to set as the background

* scheduling it to happen every hour

* putting the code on GitHub

Monday, August 24, 2015

Next time, maybe write "baby bunnies" instead of just "stay away"?

Next time, maybe write "baby bunnies" instead of just "stay away"?

I always wonder, when people talk about Ubiquitous Computing, how much they're familiar with Weiser's...

I always wonder, when people talk about Ubiquitous Computing, how much they're familiar with Weiser's original ideas on it. I suppose tracking activity without carrying a watch counts. 

Saturday, August 22, 2015

OK, now my Internet Button is both using Spark.publish() to tell the log a thing and illuminating the...

OK, now my Internet Button is both using Spark.publish() to tell the log a thing and illuminating the LEDs. Now, to make it accept button input.

My attempts to tell my Photon too do something they I can identify have so far failed.

My attempts to tell my Photon too do something they I can identify have so far failed.

Wednesday, August 19, 2015

Another question: is the PowerShell problem Win10-specific, or is it replicated on earlier versions?...

Another question: is the PowerShell problem Win10-specific, or is it replicated on earlier versions? I have Win7 at work. I have Win8 connected to my TV, but that's not set up for development....

I Need To Write This Up To Understand It, or The Epic Battle between Wat and Derp! I've signed up for...

I Need To Write This Up To Understand It, or The Epic Battle between Wat and Derp!
I've signed up for Neil Bowers ' Pull Request Challenge , as I've blogged about before . This month, I'm working with System::Command . It's neat, a step up from system calls, and as I understand it, integral to handling Git programmically. If I wasn't elbo...

I Need To Write This Up To Understand It, or The Epic Battle between Wat and Derp! I've signed up for...

I Need To Write This Up To Understand It, or The Epic Battle between Wat and Derp!
I've signed up for Neil Bowers ' Pull Request Challenge , as I've blogged about before . This month, I'm working with System::Command . It's neat, a step up from system calls, and as I understand it, integral to handling Git programmically. If I wasn't elbo...

Monday, August 17, 2015

Would like to hear +Ben Cotton 's take on this talk

Would like to hear +Ben Cotton 's take on this talk

'the correct answer to “How do you reverse a linked list” is “Thanks for your time but I’ll see myself...

'the correct answer to “How do you reverse a linked list” is “Thanks for your time but I’ll see myself out”

In some ways, I wonder if this will be used as an excuse. In others, I knew first-hand how small changes...

In some ways, I wonder if this will be used as an excuse. In others, I knew first-hand how small changes you wouldn't expect to matter can lead to massive changes in body composition.

Marshmallow!

Marshmallow!

I Am Unlikely To Move To Perl6 A camel in Busch Gardens in St. Louis. I'm working on a project, which...

I Am Unlikely To Move To Perl6
A camel in Busch Gardens in St. Louis. I'm working on a project, which I will blog otherwise. This project is my hope to get into CPAN and level up my Perl game. I am still in progress, so it sits in the earliest stages of construction, with the bare minimu...

I found several bugs in the hardware...

I found several bugs in the hardware...

Saturday, August 15, 2015

Yes, this indicates that the major problem is infrastructure, that the cars themselves are solid but...

Yes, this indicates that the major problem is infrastructure, that the cars themselves are solid but, like William Gibson says, the future isn't well-distributed.

Gas stations are currently for everyone, and are set up in neighborhoods for quick entry, quick use and quick exit. If everyone has a charger in their garage and topping off their cars every night, the gas station has no purpose most places, but near major roads, I could see large charging stations, dirt of on the truck stop model. If it takes several hours to max your battery, it'll be important to have something for you to do, for your bored children to do, for that time.

I think that, for daily commuter cars, electric vehicles are all but perfect, but we don't think of cars as specific tools like that, but as all-purpose gear, and it irks me to think that I could drive to with and back, no problem, but driving to Indy for a user group meeting or driving to the West to see family becomes unthinkable.

So, question becomes, does this mean the end of the cross-country car? The return of passenger train?

Odds are low that there is a Windows 10 driver for this

Odds are low that there is a Windows 10 driver for this

Friday, August 14, 2015

I suppose there could be a bright side.

I suppose there could be a bright side.

Watching this, I was suddenly inspired. "Yes," I thought, "SublimeText is not Open Source, but Atom ...

Watching this, I was suddenly inspired. "Yes," I thought, "SublimeText is not Open Source, but Atom is. Why don't I try to install and use it at work?"

Then I tried. And the .deb isn't of the right architecture and won't install.

Otherwise, good stuff. 



I have a #Perl module that uses Net::OpenSSH to connect to Globus Online to share directories full of...

I have a #Perl module that uses Net::OpenSSH to connect to Globus Online to share directories full of scientific data. It covers the primitives well enough for work to move forward.

But I don't know what "move forward" means right now. 

Been thinking about making it into Net::Globus and putting it into CPAN, but it seems a bit more involved than I want for my first CPAN module. Also, I am not sure how you write tests against a service when you don't have authentication against the service at the testing stage.

So I don't know what to do right now.

Nice performance win for Wikipedia! Async all the scripts! Source: https://twitter.com/mediawiki/status...

Nice performance win for Wikipedia! Async all the scripts!

Source: https://twitter.com/mediawiki/status/630865572654264320

Thursday, August 6, 2015

Considering a new laptop. Since almost all of my entertainment needs are satisfied by my tablet and ...

Considering a new laptop. Since almost all of my entertainment needs are satisfied by my tablet and my Chromecast, this would be largely for development. Some writing, as I've been blogging more, but mostly development.

Here's what I think I want:

* 8GB Memory
* 128GB+ SSD - not sure how much more Plus, but at least some plus
* USB3 in at least one port
* at least 13" screen
* no optical drive 
* more brushed aluminum, less breakable plastic

I'm not sure if I want Core I7 or if Core I5 would do. I'm reasonably sure I don't want a touch screen: I touch my tablet's screen and it gets greasy and gross. I don't want that for a screen.

I like the idea of running OSX. It's a real Unix, descended from Ritchie and Thompson. I just think there's a $500 difference between the MacBooks I've seen and equivalent PC hardware, and I'm not sure what I'm getting for that. If someone else was paying for it, sure, I'll go for that, but not on my own dime.

Someone I know rocks a Dell XPS 13, and it looks right about what I want. I'm torn between running Linux and running Windows 10 on it. I know I could install Linux and put Win10 on a VM, but I've had problems trying to get developer tools running in a VM before.

So, what am I forgetting? What should I know?

I use Thunderbird. Sometimes, often but not all the time, when I send a mail, the compose window doesn't...

I use Thunderbird. Sometimes, often but not all the time, when I send a mail, the compose window doesn't close, but becomes the window next time I start an email. Clearly a weird bug.

How do I report this?

This is exactly where you need "links in the doobly-doo"

This is exactly where you need "links in the doobly-doo"

Sunday, August 2, 2015

My #1 empty catch use is with web code for personal use. If I'm scraping a site and it doesn't work ...

My #1 empty catch use is with web code for personal use. If I'm scraping a site and it doesn't work at 3am but I know it'll repeat at 4am, etc, a one-off failure to work doesn't bother me.

Saturday, August 1, 2015

You owe it to your kid and yourself to have this uncomfortable conversation sooner rather than later...

You owe it to your kid and yourself to have this uncomfortable conversation sooner rather than later.

What Language Should I Learn? Three Answers A friend of mine, who works in IT but is not a developer...

What Language Should I Learn? Three Answers
A friend of mine, who works in IT but is not a developer, asked me a question during lunch today. "I want to learn to program. What language should I learn first?" This is a common question, one I have answered before. But, because I've blogged a lot recent...

Friday, July 31, 2015

I applied for a developer position, a position within a research facility in a university. I hope that...

I applied for a developer position, a position within a research facility in a university. I hope that this is a step up for me, but all I really know is from the description on the hiring site.

A contact, an associate professor, responded and asked me to prepare a fifteen-minute presentation discussing my suitability for this position. Given the one-sheet I saw, all I can really say about this position is that it involves dealing with handling data from human subjects and thus must follow HIPAA. I worked at a medical clinic earlier in my career, so I'm familiar enough for now.

I've gone through a number of interviews in my life, and this is the first time I've ever even heard of this as part of the interview process. I'm not too afraid of presenting itself -- I've given many presentations to user groups and the like -- but nothing in the job description says anything about presenting like this, so I'm not seeing it as anything to do with the duties of the position. This raises red flags with me.

Is this a thing, just not a thing I haven't heard about before?

(Evidently off-topic for programmers.SE, and seems too specific for the suggested Workplace.SE.)

Was asked what language someone should learn first if learning how to program. I have three answers...

Was asked what language someone should learn first if learning how to program.

I have three answers: 

1) It's like asking what language you should learn if you're visiting Europe. It all depends on where you're going.
2) Church and Turing say that, if you can do a thing in one language, you can do a thing in any language. It kinda doesn't matter.
3) Right now, the only place where you can't use Javascript is in operating systems work. It's a comer in back-end web work. It's a first-class player for Win10 applications work. Johnny Five means you can use it to write Arduino code. And you don't need to install anything: you can use your browser and Notepad. So, might as well learn Javascript.

Jimmy makes a book. Jimmy makes it look easy.

Jimmy makes a book. Jimmy makes it look easy.

Thursday, July 30, 2015

Now that I'm on #Windows $CURRENT, I'm thinking about writing a tool to set my background to my most...

Now that I'm on #Windows $CURRENT, I'm thinking about writing a tool to set my background to my most recent Instagram picture.

Such a tool might exist, but as I'm a developer, and I'm on Windows $CURRENT, I'm thinking about writing a tool to set my background to my most recent Instagram picture.

Anyone have good pointers to starting developing for Windows like that?

The user I most liked to be helpful toward has just transformed herself into the one I most dislike ...

The user I most liked to be helpful toward has just transformed herself into the one I most dislike to be helpful toward in just one morning.

The argument is that schools are less for educating than for sorting. I'm not intellectually sure that...

The argument is that schools are less for educating than for sorting.

I'm not intellectually sure that the level of revulsion I feel about that is justified.

Wednesday, July 29, 2015

Justifying My Existence: Indent Style I just got dinked for my indent style on StackOverflow. I wrote...

Justifying My Existence: Indent Style
I just got dinked for my indent style on StackOverflow. I wrote an answer to someone's question , even as I figured there are much better ways to handle his greater issue than store everything in text files like that. Nearly immediately, I see this: For unc...

Tuesday, July 28, 2015

Threads Unspooling, or "What's my problem NOW?" I have never done much with access control lists (or...

Threads Unspooling, or "What's my problem NOW?"
I have never done much with access control lists (or ACLs), as most of my time as a Linux and Unix user has been in positions where everything needed to control access could be done with standard unix permissions: owner/group/all and read/write/execute. Als...

Monday, July 27, 2015

Things I learned for perlbrew: Config Config. Mostly, I haven't developed for Perl, I've developed for...

Things I learned for perlbrew: Config
Config. Mostly, I haven't developed for Perl, I've developed for the perl on this machine. Sometimes, my perl on this machine, with this set of modules. With perlbrew, you're starting with whatever Perl is available, and sometimes, upgrading the perl you're...

Sunday, July 26, 2015

What I learned from perlbrew I signed up for Neil Bowers ' CPAN Pull Request Challenge , and the first...

What I learned from perlbrew
I signed up for Neil Bowers ' CPAN Pull Request Challenge , and the first module I got was App::perlbrew . After some looking and guessing, gugod pointed me to one of his problems, and after some time reading and understanding how things work, I got it done...

What I learned from perlbrew I signed up for Neil Bowers ' CPAN Pull Request Challenge , and the first...

What I learned from perlbrew
I signed up for Neil Bowers ' CPAN Pull Request Challenge , and the first module I got was App::perlbrew . After some looking and guessing, gugod pointed me to one of his problems, and after some time reading and understanding how things work, I got it done...

Wednesday, July 22, 2015

I went to the page script. To find the template. To find the Javascript library. To find the API ...

I went to the page script.

To find the template.

To find the Javascript library.

To find the API backend.

To even find where the change I need to make exists.

Tuesday, July 21, 2015

Love the video, love the series. Argument I've heard is that the idea of freedom of the skies, that...

Love the video, love the series.

Argument I've heard is that the idea of freedom of the skies, that national sovereignty didn't extend into space, wasn't clear yet, so the US wanted the USSR to go first, so that precedent was set via Sputnik and spy satellites could fly over Russia with impunity.

Of course, lots of rockets were blowing up on the pads, too.



"I don't know why this is still here. We should remove it." "If you don't know why it is there, I won't...

"I don't know why this is still here. We should remove it."

"If you don't know why it is there, I won't let you remove it. If you can explain why it is there, then I'll let you remove it."

I was presented this as an example of Conservative thought. Yesterday, it popped up as a parable of proper system maintenance.

And boy, did it hurt.

Thursday, July 16, 2015

Spammy or cool? What do you think?

Spammy or cool? What do you think?

What I have (and the inverse): receive a possible unix username put unix username into database if ...

What I have (and the inverse):

    receive a possible unix username
    put unix username into database if valid
    return username.is_valid && db.is_successful ? 1 : 0

What I need (and the inverse):

    receive a possible unix username
    put unix username into database if username.is_valid
    for ( list of directories shared to user's boss ) :
         set acl on directory for username 
    return username.is_valid && db.is_successful ? 1 : 0

But, I want to trigger the acl setting after the return, because the database call is fast enough for a user to wait, but the recursive crawl over a file system, setting an acl on every single file or dir, is too much of a thing to expect users to wait for.

Suggestions?

In this function, we're getting a directory, a user or group name, and a means to determine if it's ...

In this function, we're getting a directory, a user or group name, and a means to determine if it's a user or group.

sub set_one_acl {
    my ( $dir, $name, $is_user ) =@_;
    if ( ( -e $dir ) && ( 
         ( $is_user && check_valid_user($name) ) || 
         ( !$is_user && check_valid_group( $name ) ) 
         ) ) {
        ... action occurs here
        return 1 ; 
        }
    return 0 ;
    }

The tests individually work. Could be a symbolic link, so -e instead of -d. $is_user is a boolean. check_valid_user() and check_valid_group() use getpwnam and getgrent to be sure.

I hate that big if statement, though, but think nesting all that if would be worse.

Thoughts? Suggestions? Pity?

This was sent to the mailing list and will also be on the GLOSSY meetup. I think we all can say that...

This was sent to the mailing list and will also be on the GLOSSY meetup.

I think we all can say that the #1 takeaway from last night's meeting is to never trust an HDMI cable. That's fine; I have a LONG one I can bring from home for next time.

I have an idea for a "ring Dave for entry" web-app that'd connect to me. I think it might work well with a QR code, except I generally think QR codes outside of very specialized environments are like "fetch" from Mean Girls; never going to happen.

Thanks to Joe Kline for showing us XPath-style HTML parsing with
XML::LibXML. I'm of at least three minds about parsing:

    * Much of my parsing is simply regular expressions in part
      because I want it now, I don't need it to last
    * I still have code subclassing HTML::Parser, and as long
      as it gets my xkcd and CommitStrip comics for me, I'm happy
    * I work enough with jQuery that using CSS selectors
      is my go-to for writing new code
    * Everybody should be exporting everything in JSON anyway

Four minds. I'm not schizophrenic, I'm quadrophenic! Still, using XPath is a reasonable way of doing it, too. Do you have example code we can look at, Joe?

Thanks to Mark Senn showing us some interesting parts of Perl 6, set for official release before this Christmas but available for testing now.
(http://ift.tt/1I5Buq2) I have it running thanks to rakudobrew, but haven't done much more than used Mark's rewrite of my password code on it.

Thanks also to Broc Seib for reserving the room and finding the one non-crappy HDMI cable in the MatchBox.

There are several open questions for next time:

Did the all-technical talk at MatchBox followed by social time with GLOSSY at LBC work for everybody? Should we stick with that or go back to WSLR?

Is there a topic anybody desperately wants to present for next time?

Is there a topic anybody desperately wants to hear about for next time?

Wednesday, July 15, 2015

Sunday, July 12, 2015

Saturday, July 11, 2015

There was a discussion on Twitter a while ago about the security of +Fitbit devices that gets into the...

There was a discussion on Twitter a while ago about the security of +Fitbit devices that gets into the whole men-and-women-argue-differently.

Thought about writing a blog post about both issues, but as time goes on, the draw of either topic lessens.

Interview-Style Coding Problem: Estimate Pi Saw this as an example of the kind of programming test you...

Interview-Style Coding Problem: Estimate Pi
Saw this as an example of the kind of programming test you get in interviews, so I decided to give it a try. Just to report, it gets there at $i = 130657. #!/usr/bin/env perl

use feature qw{ say } ;
use strict ;
use warnings ;
use utf8 ;

# Given that Pi ...

Superficially ugly code is irrelevant. Pretty formatting--or lack thereof--has no bearing on whether...

Superficially ugly code is irrelevant. Pretty formatting--or lack thereof--has no bearing on whether the code works and is reliable, and that kind of mechanical fiddling is better left to an automated tool.

http://ift.tt/OKXTdu

I disagree with the beginning, but not the end. Programs are messages that we write to future maintainers that also are executed, and superficially ugly code is also unreadable messages. If it really works and is reliable, we read the messages less often, but being able to read and understand it is important.

To some extent, yes, you can automate that. I tend to run PerlTidy a lot on my code, with my own ideosyncratic Perl style, neither K&R nor GNU, which some people hate. (Use your own .perltidyrc if you must!) But you can put unclear, ill-considered, incoherent ideas into grammatically-correct sentences full of spell-checked words. That doesn't mean the message makes sense. 

Thursday, July 9, 2015

"Unnecessary Shredding"? No such thing.

"Unnecessary Shredding"? No such thing.

At first, I didn't contribute to #CPAN because I didn't know what I was doing and my Perl Fu was not...

At first, I didn't contribute to #CPAN because I didn't know what I was doing and my Perl Fu was not strong.

Then, about everything I'd want to put into a module was either very specific to my local environment or already existed.

Now, I believe I can do it, and I know there's nothing in CPAN for Globus. It's likely going to scratch my itches, when I get it more fully-formed.

I have perlmod and perlmodlib opened and I will be reading them. I have the PAUSE account. Other things (besides filling in a LOT of functions and fuller POD) I need to do before this becomes Net::Globus?

From still pictures to smooth video? I'm blown away.

From still pictures to smooth video? I'm blown away.

Dear American Internet, Encryption is here to stay.  You can't get at the bad guy's information if ...

Dear American Internet,

Encryption is here to stay.  You can't get at the bad guy's information if he encrypts it.  And if you get American companies to give you a back door, or "front door," then the bad guys will get their encryption somewhere else.

We already went through this in the 90's.  I can still put an algorithm in a few lines of code on the front of a t-shirt that is virtually unbreakable to anyone, including the government.  Let's not revisit the discussion, because the answer hasn't changed.

Wednesday, July 8, 2015

Because everything can jump the rails... learned how to SSH in Perl yesterday. Opens cool opportunities...

Because everything can jump the rails...
learned how to SSH in Perl yesterday. Opens cool opportunities, but it scares the shit out of me. — Dave Jacoby (@JacobyDave) July 8, 2015 I will have to do a write up. (While you wait for me, read Net::OpenSSH on MetaCPAN  and know the key is keypath .) Th...

Man, JavaScript is gonna get mad over the next few years. That's a good thing.

Man, JavaScript is gonna get mad over the next few years. That's a good thing.

Tuesday, July 7, 2015



Thanks to +Gizmodo I know about this, and now you know about it, too.

Thanks to +Gizmodo I know about this, and now you know about it, too. 

Another controversial programmer opinion: SQL is code. Treat it as such. That is, just like your C#...

Another controversial programmer opinion:

SQL is code. Treat it as such.
That is, just like your C#, Java, or other favorite object/procedure language, develop a formatting style that is readable and maintainable. I hate when I see sloppy free-formatted SQL code. If you scream when you see both styles of curly braces on a page, why or why don’t you scream when you see free formatted SQL or SQL that obscures or obfuscates the JOIN condition?

So much word. 



Monday, July 6, 2015



Skimming this and reading Most comments in code are in fact a pernicious form of code duplication caused...

Skimming this and reading Most comments in code are in fact a pernicious form of code duplication caused me to rethink how I commented the ACL module I created today. 



Entering into the fun of ACLs in Linux. I might start saying "Aye See Elles" because "Ackles" is such...

Entering into the fun of ACLs in Linux. I might start saying "Aye See Elles" because "Ackles" is such an ugly word.

It's my understanding that Windows ACLs are very fine-grained, with things like "view a directory" and such opened out. With Linux, it's read-write-execute again but with finer grain. You can allow group X to access a directory, but you can disallow people who are also in group Y, or use Z who would otherwise have access. 

15 years or so after I first started hearing about them, I finally have a practical reason to play with them.

Sunday, July 5, 2015



Will play with fetch() but will likely stick with jQuery for most uses. Of course, valid or not, it...

Will play with fetch() but will likely stick with jQuery for most uses.

Of course, valid or not, it cries out fit the Mean Girls reference.

My theory is that they're assigned to the Death Star. That is a weapon platform intended to destroy ...

My theory is that they're assigned to the Death Star. That is a weapon platform intended to destroy star systems. If you're going to destroy systems, you don't need to occupy them, so you don't need to sign the top shots and you don't need to give them training in the shooting range as much.

Or, it'd suck if stormtrooper shot holes in our heroes halfway through the movie.

Wednesday, July 1, 2015

Unstuck in Time and Space: An Investigation into Location over WiFi. I track my location with Google...

Unstuck in Time and Space: An Investigation into Location over WiFi.
I track my location with Google and my phone, because I lack sufficient paranoia. To the right is my June 30. I swear that I didn't leave the Greater Lafayette area. I certainly didn't teleport to the southern suburbs of Indianapolis. This happens to me all...

Unstuck in Time and Space: An Investigation into Location over WiFi. I track my location with Google...

Unstuck in Time and Space: An Investigation into Location over WiFi.
I track my location with Google and my phone, because I lack sufficient paranoia. To the right is my June 30. I swear that I didn't leave the Greater Lafayette area. I certainly didn't teleport to the southern suburbs of Indianapolis. This happens to me all...

I run Debian. Is this Mac only? Need I run something other than gnome-terminal for this? https://youtu.be...

I run Debian. Is this Mac only? Need I run something other than gnome-terminal for this? https://youtu.be/ND-W4e-pqMo?t=45s

Just sent this to others working on SparTech

Just sent this to others working on SparTech

Tuesday, June 30, 2015

First look at the costumes from the upcoming reboot of Ghostbusters. I am in serious mixed minds about...

First look at the costumes from the upcoming reboot of Ghostbusters. I am in serious mixed minds about this movie.

I don't do HPC, but my lab does and so many of my friends are professionally involved in HPC. Wonder...

I don't do HPC, but my lab does and so many of my friends are professionally involved in HPC. Wonder what they have to say about this video.

Monday, June 29, 2015



If only this showed up on American TVs, I wouldn't have cut the cable.

If only this showed up on American TVs, I wouldn't have cut the cable.

Fixing an old logic issue I am not especially proud of the code below. It does it's job. Give it a request...

Fixing an old logic issue
I am not especially proud of the code below. It does it's job. Give it a request and a number of accessions and the names you want them to go by, and it changes them in the database. Except... Accessions are defined as zero-padded six-digit numbers, so inst...

Fixing an old logic issue I am not especially proud of the code below. It does it's job. Give it a request...

Fixing an old logic issue
I am not especially proud of the code below. It does it's job. Give it a request and a number of accessions and the names you want them to go by, and it changes them in the database. Except... Accessions are defined as zero-padded six-digit numbers, so inst...

Saturday, June 27, 2015

Oh I get it!

Oh I get it!

I see the point of the fear, but I don't find this argument particularly compelling. It's a very 50s...

I see the point of the fear, but I don't find this argument particularly compelling. It's a very 50s Theremin-drenched vision of the future.

On the other hand, we spend up to decades of developing human intelligence before we let people control cars, money, and other expressions of power, yet we're already using computers to control so many things before AI is "out of the womb".

Thursday, June 25, 2015

I keep Cliff's Silicon Snake Oil next to Negroponte's Being Digital, as sort of the matter-antimatter...

I keep Cliff's Silicon Snake Oil next to Negroponte's Being Digital, as sort of the matter-antimatter of the subject. But Klein bottles, man ...

Monday, June 22, 2015

+Chuck Schwarz, what was your low-power small-board with-SATA solution from last week's LTL? And, after...

+Chuck Schwarz, what was your low-power small-board with-SATA solution from last week's LTL? And, after having it nearly a week, are you happy with it?

"Well, That Was Strange": Hunting Gremlins in SQL and Perl The query base is 90 lines. Depending on ...

"Well, That Was Strange": Hunting Gremlins in SQL and Perl
The query base is 90 lines. Depending on what it's used for, one specific entry or the whole lot, it has different endings, but the main body is 90 lines. There are 20 left joins in it. It is an ugly thing. So ugly, in fact, that am loath to include it her...

Saturday, June 20, 2015

With the Maker Channel on +IFTTT, I can put my bedside light Wemo switch on a crontab, making it easier...

With the Maker Channel on +IFTTT, I can put my bedside light Wemo switch on a crontab, making it easier for me to schedule sleeping late on Saturdays.

Friday, June 19, 2015

Saw this trailer on Hulu last night. Thought it looked cute. I especially like the bird and the poodle...

Saw this trailer on Hulu last night. Thought it looked cute. I especially like the bird and the poodle at the end.

I've recently been reminded that we haven't been letting people know that the group is available to ...

I've recently been reminded that we haven't been letting people know
that the group is available to help with

* general Perl
* general programming
* troubleshooting program problems
* design review and help
* presentation review
* (other things I can't think of right now)

We have always been happy to answer questions, but I had gotten out of
the habit of reminding people.

Depending on your problem and inclinations, we can provide help either
individually or as a group. All you have to do is ask.

Thursday, June 18, 2015

#Javascript  deployment question: When I write a lib, say foobar.js, I put it in my HTML as

#Javascript  deployment question: When I write a lib, say foobar.js, I put it in my HTML as <script src="foobar.js?reload"></script>, which codes it as dynamic and downloads it again each time.

I'm finding points currently where a user is having a problem with a web tool I wrote, so I come up, hit Ctrl-Shift-R and it works. But changes shouldn't be like that.

So, I think that, while I'm developing, it can be foobar.js?reload if I need, but when it's ready to go, I should call it foobar-1.23.js. 

Or, perhaps foobar-1.23.min.js. All this started up when I started playing with yui-compressor this morning, so that's a think I'm looking to do again.

tl;dr - Google+ to Twitter explained. At last night's Food & Beer & Chat for +Greater Lafayette Open...

tl;dr - Google+ to Twitter explained.

At last night's Food & Beer & Chat for +Greater Lafayette Open Source SYmposium (GLOSSY) , it was mentioned that I have all my G+ posts automatically going to Twitter. Today, it struck me that I had forgotten how I had set that up.

Which is: I wrote a tool that took someone's public feed from Google Plus and turned it into an RSS feed, and used +IFTTT to tweet from there. Yes, I most certainly could've gone the rest of the way, tweeting instead of posting, but I think the problem is not tweeting the same post twice. IFTTT solved that one for me.

http://ift.tt/1d4k52h

"It's okay to leave more space than I did" -- Guthrie Govan. I love this guy.

"It's okay to leave more space than I did" -- Guthrie Govan. I love this guy.

I've been critical of Satch-and-Vai-lead jams, because they get filled with the flurry of notes that...

I've been critical of Satch-and-Vai-lead jams, because they get filled with the flurry of notes that each guitarist is capable of. Here, BB King's "The Thrill Is Gone" is nothing I'd expect from Steve, Joe, Tobin, Skwisgaar/Brendon or Mike, but they all did it justice.

Thought occurred to me on the way to work this morning: In fiction, there are cool powerful people where...

Thought occurred to me on the way to work this morning: In fiction, there are cool powerful people where people have parts of their body replaced by technology, with the 6 Million Dollar Man being a perfect example. In reality, no replacement is going to be as functional as the original part, and while mechanical muscles may be more powerful than biological muscles, the cool arm is going to be connected to a normal skeleton, so it can't lift a car. So, you only get a bionic thing if the biological thing is utterly nonfunctional either by defect, age or trauma.

The Singularity/Post-Human dream is digitizing the human brain. Per Kurzweil, at first it'd be a destructive process, requiring the material being scanned to be torn apart piece-by-piece. Who would be willing to go through this process? People whose physical bodies are nearing end stage anyway, by defect, age or trauma. 

The more technology removes accidents and connectedness eliminates ware, the less trauma will be a factor. The more medicine advances, the less defects will be life-threatening. This means that the first people who will be digitized humans will be the elderly.
 
Now, what to do with that....

Wednesday, June 17, 2015

Head-to-Head Web Scraping with Perl: Mojo::DOM vs Web::Query In the last meeting of Purdue Perl Mongers...

Head-to-Head Web Scraping with Perl: Mojo::DOM vs Web::Query
In the last meeting of Purdue Perl Mongers , Joe Kline mentioned Sawyer X's YAPC::NA talk on Modern Web Scraping , where he talked about Web::Query , which uses CSS selectors, compared to the XPath selectors he uses for his own web scraping. I had just writ...

+Joe Kline told me about this. We're looking to have a talk at Purdue Perl Mongers about web scraping...

+Joe Kline told me about this. We're looking to have a talk at Purdue Perl Mongers about web scraping, comparing this style to XPath and maybe Mojo::DOM. Thank you, TPF and Sawyer X.

I'd say to next year's YAPC::NA team, presenters should make their slides public, the links should be in the video description beforehand, and the cameraman should therefore focus on showing the presenter, unless live coding happens. Maybe bring in the slides in post? Watch a few JSConf videos. I know they have $$$$ to make it look good, but even at the level we're at, we can step it up a notch.

McCutcheon students will show younger kids the ropes at an engineering camp program next week. http:...

McCutcheon students will show younger kids the ropes at an engineering camp program next week. http://on.jconline.com/1GO6F6N

Monday, June 15, 2015

+Nerdist pointed me to this video of MarI/O, which teaches a computer to play Super Mario World. Great...

+Nerdist pointed me to this video of MarI/O, which teaches a computer to play Super Mario World. Great stuff.

Making a list of YAPC::NA 2015 Videos using Mojo::DOM Last week, Perl devs from all over North America...

Making a list of YAPC::NA 2015 Videos using Mojo::DOM
Last week, Perl devs from all over North America, and some from other continents, met in Salt Lake City, Utah, for YAPC::NA 2015 . Last week, I took vacation. But I spent the time with family, going to Ohio. So, of course, I wanted to get a list of all the ...

Saturday, June 13, 2015

+Parisa Tabriz +Adrienne Porter Felt +Alex Russell 

+Parisa Tabriz +Adrienne Porter Felt +Alex Russell 

Considering Kurzweillian mental digitization and upload. There's a story by Harlan Ellison called "...

Considering Kurzweillian mental digitization and upload. 

There's a story by Harlan Ellison called "How's the Night Life in Cissalda" where a returning astronaut returns to Earth with an alien parasite that binds to a host sexually. They separate him, but eventually, it splits and connects to the rest of intelligent life on Earth (humanity on down), but the astronaut, having been separated, remains rejected.

If my brain is non-destructively scanned and modeled into Cyber Dave, it could engage in a massively-beyond-massively-multiplayer online game as core reality, GTA with infinite lives and no consequences. The Matrix where everyone is Agent Smith. Or it can connect to a body and engage with the old and slow real world.

That is where Meat Dave, augmented or not,  could only be a visitor.

I'm seeing it as a massive fork of humanity, and the part that isn't will feel like they're stuck at the velvet rope, denied access to the incredible party that is the future. 

Read this man's book.

Read this man's book.

RIP you glorious gentleman. I'd say he had a good run. And right now I imagine Satan reading the news...

RIP you glorious gentleman.

I'd say he had a good run. And right now I imagine Satan reading the news, realising he's going to get his ass kicked AND be dethroned by the biggest badass of them all. 

Wednesday, June 3, 2015

Haven't seen Aloha, but by description, it remind me of his earlier Elizabethtown. In that one, the ...

Haven't seen Aloha, but by description, it remind me of his earlier Elizabethtown. In that one, the lead is a wunderkind whose project who went downhill and brought him with it, but was appreciated long after the initial release. I think he thought the movie would follow the same arc, and it just hasn't. Every trailer I've seen shows me Elizabethtown in Hawaii, and I don't want to see that.

Testing AJAX APIs with Perl In my lab, we have an AJAX-laden web tool which loads a certain JSON API...

Testing AJAX APIs with Perl
In my lab, we have an AJAX-laden web tool which loads a certain JSON API on page load. It was judged that what we had was too slow, so I created a program that wrote that JSON to a static file on regular intervals. Problem with that, of course, is that chan...

I have data that I need for a web page. I have three sources for this data: 1) program that reads from...

I have data that I need for a web page. I have three sources for this data:

1) program that reads from the database and exports the output as JSON
2) program that checks a checksum, regenerating and exporting if necessary but just exporting most of the time
3) static file generated every 15 minutes, which means that, should the source change (rare but it does happen) the cache will be out of date for up to 15 minutes

#3 sucks, but it is the fastest. Looking at developer tools, #2 is only slightly faster than #1, according to the waterfall in Chrome's dev tools, which run once on reload, but the program I wrote using Perl, Benchmark.pm and LWP, which hits each point 200 times, puts #2 as closer to #3.

I get that Benchmark does not behave like Chrome dev tools, so I need a tool that does web dev load testing but can repeat hundreds of times to get numbers that don't just say "Yeah, the file system hiccupped then." Help? #LazyWeb

I want that Mickey Mouse Run The Jewels shirt.

I want that Mickey Mouse Run The Jewels shirt.

Big planes are already pretty much self-flying. Getting that to the small plane level would be interesting...

Big planes are already pretty much self-flying. Getting that to the small plane level would be interesting, but computationally, cars are a harder problem. And look at quadcopter videos for Skynet.

Tuesday, June 2, 2015

I showed up a little early and waited until someone showed up. Lucas did -- he has a tablet with a busted...

I showed up a little early and waited until someone showed up. Lucas did -- he has a tablet with a busted USB port he wanted to ask y'all about -- but at about 7:10, I decided I had a busted taillight and family things to take care of and left.

I understand a number of you showed up later than that and were disappointed to find the locked door. 

I'm curious: How many of you showed up? And did my late announcement of the meeting on G+ have anything to do with that?

As developer, working from home is more productive! http://fifo.cc/MWACNBo 

As developer, working from home is more productive! http://fifo.cc/MWACNBo 

Tuesday, May 26, 2015

All of Unix history now on github "covering the period from its inception in 1972 as a five thousand...

All of Unix history now on github "covering the period from its inception in 1972 as a five thousand line kernel, to 2015 as a widely-used 26 million line system. The repository contains 659 thousand commits and 2306 merges, created by synthesizing 24 snapshots of systems developed at Bell Labs, Berkeley University, and the 386BSD team, two legacy repositories, and the modern repository of the open source FreeBSD system."
...
Quite some analysis is presented on this page, and git allows further digging: "running git blame on the kernel's pipe.c file will show lines written by Ken Thompson in 1974, 1975, and 1979, and by Bill Joy in 1980"

Some of the earliest code was recovered by OCRing printouts!

"The data set can be used for empirical research in software engineering, information systems, and software archeology."

It's legit, too: "Although Unix was initially distributed with relatively restrictive licenses, the most significant parts of its early development have been released by one of its right-holders (Caldera International) under a liberal license."

via the discussion at
http://ift.tt/1Q1uPeR
where we find this comment:
"""I took a university course on Unix internals in 1988. The lecturer started by announcing "this is the last year that we will teach this course as Unix is now very out of date and is being left further behind every year". It turned out to be the best course I ever took.
""

"When you reach bearded-level, there are at least a hundred grey-beards above you." https://github.com...

"When you reach bearded-level, there are at least a hundred grey-beards above you."
http://ift.tt/1x1KZxg

If You Can't Open It, You Don't Own It.

If You Can't Open It, You Don't Own It.

In CS, the mantra was "sleep is for wimps".

In CS, the mantra was "sleep is for wimps".

Wednesday, May 20, 2015

Love this song. Love this version. Love Bruce Springsteen challenging James Burton to a guitar duel...

Love this song. Love this version. Love Bruce Springsteen challenging James Burton to a guitar duel. He goes down in flames but dies like an aviator.

That Roy Orbison shot was Bruce Springsteen backing Roy on Black and White Night. Only a slight mistake...

That Roy Orbison shot was Bruce Springsteen backing Roy on Black and White Night. Only a slight mistake, but worth noting. The guitar duel between Bruce and James Burton is the reason I own that DVD.

On the one hand, Charlie Parker loved Country, said "listen to the stories", and I can't say I'm better than Bird. On other, I don't say I like the genre, but I like several artists within it.

Genre is audience and the chasing of, more than anything else. You mention Television; I took the fact that Dwight Yoakam played CBGB and survived as a sign that it was okay for me to enjoy it. Similarly, I took Eddie Martinez's crucial riffs on "Rock Box" as an okay to enjoy Run DMC as a teen. In these cases, I could expand my genre - teenage white guy <=> hard rock - to include country and hip hop due to demonstrable "rocking".

Tropes of genre are transient. The Carter Family's Country was mostly folk song from Britain. Jimmie Rodgers' Country was very close to piedmont and delta blues. Bob Wills' Country is swing with steel guitars instead of horn second. Hank Williams' honky tonk pulls a lot from electric blues. Big and Rich remind me of nothing more than arena-filling hair metal from the 80s. Examples galore. Nobody's going to say that "Whiskey River" is less country than "Great Speckled Bird" even as there's little in common musical between the two. The audience is the same, adjusting for time.

This is distinct, of course, from which industry it came from. 70s Laurel Canyon Singer-Songwriter is very Country, but it can't from another place and spoke to a different audience. Taylor Swift's audience is suburban teenage girls, and the machine that developed her added some Country identifiers which are decreasing, but it is a mistake to say there ever was an overriding allegiance to the fundamentals of country in her music, in style or in subject. Which, of course, is more than okay. If removing what little twang there was in TS allows more people to let her music into their hearts, to allow something that moves them into their personal genre, so be it.





Tuesday, May 19, 2015

01010100 01101000 01100001 01110100 00100111 01110011 00100000 01110111 01100101 01101001 01110010 01100100...

01010100 01101000 01100001 01110100 00100111 01110011 00100000 01110111 01100101 01101001 01110010 01100100 00101110 00101110 00101110
Slight language warning. The PaleoFuture blog on Gizmodo had a review of Tomorrowland  from a Robot from the Future today, and of course it's in binary. I saw that shortly after coming in, and I thought "Hey, that'd be an interesting exercise to use to prim...

01000010 01101001 01110100 01100101 01101101 01111001 01110011 01101000 01101001 01101110 01111001 01101101...

01000010 01101001 01110100 01100101 01101101 01111001 01110011 01101000 01101001 01101110 01111001 01101101 01100101 01110100 01100001 01101100 01100001 01110011 01110011

Monday, May 18, 2015

I have a Galaxy Tab 4. I want to have a way to mount it to my dashboard while I drive, so I can pause...

I have a Galaxy Tab 4. I want to have a way to mount it to my dashboard while I drive, so I can pause music without unplugging it.

I have the design together. Now if +Chuck Schwarz just would just fix the Solidoodle so I can make it!

Some Wisdom From Twitter "Do you code?" "Fuck son, I copy/paste from StackOverflow until something works...

Some Wisdom From Twitter
"Do you code?" "Fuck son, I copy/paste from StackOverflow until something works then I back away slowly." -Explaining what I do. — Nehemiah Wyant (@newyant) May 17, 2015

Here's a question for all LTL people: I open the door and we use the 3-D printer (when functional) and...

Here's a question for all LTL people: I open the door and we use the 3-D printer (when functional) and the soldering iron, talk about projects and such, and then go home. When warm, there's often a discussion right outside the door that lasts well after the lights are off and the door is locked. And, fewer and fewer people show up. What should we be doing to get new members and retain the interest of the old ones? What should we be changing?

I think I've asked this question before at the meetings, but really, the people who show up every week are not the people I need to ask. It's the people who don't show up anymore who I'd like suggestions from

Thursday, May 14, 2015

There are Two Javas So, this happened... @JacobyDave you mean the same implementation language as in...

There are Two Javas
So, this happened... @JacobyDave you mean the same implementation language as in cassandra, elasticsearch and hadoop ? ;) — Michael Hunger (@mesirii) May 8, 2015 On the one hand, I wrote this on a day when I woke up after watching this fantastic conference ...

Raspberry Pi B+ boards are now $25. If I had multiple spare boards floating around, I'd feel more comfortable...

Raspberry Pi B+ boards are now $25. If I had multiple spare boards floating around, I'd feel more comfortable doing things with them...

So last Friday, we built another supercomputer. We haven't done this in years, but the whole thing went...

So last Friday, we built another supercomputer. We haven't done this in years, but the whole thing went fairly smoothly for trying to unbox, rack, wire, and install OS and software on 700+ nodes in less than a day.

I'm in the time lapse, but since I was responsible for directing all the flow of equipment into the data center, I'm mostly a blur on the left side throughout that segment. You can actually see me briefly at about 2:47. I'm the guy with the red badge and a radio.

Wednesday, May 13, 2015

Being Open, Being Wrong, Being Corrected, Being Smarter: Response about MongoDB Just heard a podcast...

Being Open, Being Wrong, Being Corrected, Being Smarter: Response about MongoDB
Just heard a podcast from Developer Tea where Ben Lesh of Netflix  explain how he likes it when he makes mistakes, because then he learns, and we should always be learning. (I listened to it when driving, so I didn't write down the quote, and I'm not sure i...

Tuesday, May 12, 2015

Note to self: Check Stack Overflow first. D'oh.

Note to self: Check Stack Overflow first. D'oh.

Yeah, I must've deleted the ->next code from the early example I was poking at.

Yeah, I must've deleted the ->next code from the early example I was poking at.

I think I might have it. my $find   = $collection->find ; say Dumper $find ; while (my $record = $...

I think I might have it.

my $find   = $collection->find ;
say Dumper $find ;

while (my $record = $find->next){
    say Dumper $record ;
    }

Trying with my other things. But I want it all instead of next.

Having an issue with MongoDB and Perl I've learned to love SQL. At first I had lots of functions that...

Having an issue with MongoDB and Perl
I've learned to love SQL. At first I had lots of functions that did SELECT * FROM table , then I would put everything together at the last moment, with big slow programs. Slowly but surely, I found myself trusting my tools more and more, writing more and mo...

This is a 10-year-old bug in MySQL. Strikes me that those who have a monetary interest in MySQL would...

This is a 10-year-old bug in MySQL.

Strikes me that those who have a monetary interest in MySQL would respond "if you want this, go to Oracle" and those who have a development interest in MySQL would respond "if you want this, go to MariaDB". Although, honestly, I don't know if either Oracle or Maria allow this.

But MySQL is increasingly reminding me of a dead mall.

I always wondered how combo locks work. Thanks.

I always wondered how combo locks work. Thanks.

Sunday, May 10, 2015

Watched a documentary on Blackadder which days that half the regimental goats in the British Army were...

Watched a documentary on Blackadder which days that half the regimental goats in the British Army were named Baldrick. Turns out there's a tradition where regiments keep goats as mascots. I conflated it with the term for the lowest scoring member of a West Point graduation class.

Friday, May 8, 2015

I worked for the U during my CS degree, handling the technical library for sysadmins. I wrote a library...

I worked for the U during my CS degree, handling the technical library for sysadmins. I wrote a library management system as my first real thing, solving my own problem. So, this. If you want to learn to code, solve a problem.

"You are, all of you, beneath me. I am a god, you dull creature." This, I think, is what every cat thinks...

"You are, all of you, beneath me. I am a god, you dull creature." This, I think, is what every cat thinks about humans.

Wednesday, May 6, 2015

So we have an "Internet of Things" device. We have a computer whose job is to run the Solidoodle. We...

So we have an "Internet of Things" device. We have a computer whose job is to run the Solidoodle. We have @ltl_solidoodle.

When it starts a print, it tweets "Dunno if this is going to work, but in haiku form."

When it finishes a print, it tweets a picture of the final project.

Considering an event loop. When tweeted at or DM'd, something like "hey what's up", it tweets a picture of the current state.

Granted, we have to replace every atom of the printer before we can really start playing with that, but once that's done, we'd have to look into how to schedule this thing. We can't really get data about the current state of the print -- +Chuck Schwarz, tell me if I'm wrong -- but certainly we can say "certainly I'll tweet a shot".

Is this a thing we should do? 

In CSS, the indicator that a thing has priority, that styles after should not override, is '!important...

In CSS, the indicator that a thing has priority, that styles after should not override, is '!important'.

For most programmers, the "!" is a negator, so they'd read that as "not important".

This shows how confusing full-stack development can be.