## El Gringoqueño

### All a man needs out of life is a place to sit ‘n’ spit in the fire.

#### Category: Technology (page 1 of 3)

Tech tips, howto’s and other writings mostly concerning with Linux and Open Source or Free Libre Open Source Software (FLOSS)

Two Congressmen have written a letter to the Federal Trade Commission (FTC) asking the FTC to investigate certain websites’ use of “supercookies” to track the activities of website visitors after they have left the website and without their knowledge.

Which begs the question, who says you left the website? In today’s interconnected web/Facebook API you essentially never leave Facebook. If a website has Facebook’s API installed, you know, that innocuous little “like” and “share” buttons, you are on Facebook.  Of course Facebook tracks you, you never left their site.

The web, in its most essential form, is just an interconnected series of HTTP calls via GET, HEAD, POST, PUT, DELETE. Any webpage can have resources linked to any other site. We have crammed a bunch of functionality into our venerable HTTP specification, but it’s essentially just that simple.

When you visit a website, you are not visiting a destination, you are visiting a virtual representation of resources fetched from all over the world, some of which are Facebook. Since you are using Facebook, they know what pages are using their resources, because the site operators opted in to their API. If you wish to avoid this, you will need to delete your cookies from Facebook and deny them the ability to place them. If you are a site owner and you are worried about your visitors’ privacy, you should remove the Facebook API calls from your site.

I have to admit, I’m a little ambivalent about the death of Steve Jobs.  If I am honest though, it hurts a little.  It hurts a little when great people pass on, never to conqueror again what they had conquered, never to achieve again what they had achieved.  For us, the peons, never to witness that level of greatness again is a bit bitter.

In my case, it’s strange, because I don’t use Apple products.  I don’t like them.  I don’t like Steve Jobs.  I don’t like his company.  I don’t like his business practices or caged computing environment. I personally have stayed away from Apple and Microsoft products completely. I don’t have any grand hatred toward either, but I do value the freedom to tinker, and to control where and how I create what I create. Way back in 1999, I swore it was the last time that I would have some proprietary piece of software tell me where and when I could install it and what I could do with it. And that was that.

So why feel even a twinge of sadness at the passing of Steve Jobs?  He fabricated products I don’t use and restricted people’s freedom to create pushing them more toward mindless consumption.  Perhaps, it’s our little monkey brains, terrified and mesmerized by the strength of one of our own, a brutal conqueror who was able to accomplish something no one else had.  Steve Jobs was ruthless, driven, ambitious, and intelligent.  He did not suffer fools, nor anyone.  His company conquered a particular consumer computing space thoroughly and completely.

Alexander the Great?  Great because he killed a whole bunch of people?  Yoda: Wars not make one great.  Genghis Khan, Gen Patton.  We worship them, revere them simply for their ability to ruthlessly conqueror and lay waste with efficiency in a way no one else has done before.

Sure, let’s not get carried away.  Steve Jobs is no Genghis Khan, but his greatness is familiar in that sense.  He had a vision for a part of this world that he felt he owned, and he shaped it, and nothing got in his way, not people, not money, not technology.

So, props, Steve.  You did it your way.  You were great in what you did.  I know why people worship you, but just shake my head.  I don’t think, in the end, your vision was the right vision.  Sure you and Apple made a lot of money, but I think you missed the point of the future envisioned by your 1984 self.

A lot of the work I do is bascially phone/email corporate tech support.   I get the IT managers and their assistants calling me for advice and troubleshooting on network, security, email spam, filtering, and on and on.  I’m sort of the go to guy for corporate IT managers in my little circle in Puerto Rico.

Here’s the thing, I used to get annoyed by the fact that I couldn’t get ANYONE to use email.  Email is my trouble ticket system.  It’s allows me to assign a date to the incident, make a to do list, and have a record in case my clients forget that they called me.

Here’s the problem:

Everyone wanted to call.  Everyone wanted to leave voice mail messages that said, “Give me a call.”  There was no mention of the problem, a description anything.  If they did send an email it would say something like, “I have a problem with the server.”    I would sigh, pull out my crystal ball and divine up the problem with a series of repetitive questions…  all of which we’ve been through before.  If there’s a problem with an email, instead of emailing me the bounce, error or whatever, they’d call and say that someone (top secret identity?) was having problems with their mail.  Sending? Receiving?  Was anyone else having this problem?  Was it with only a particular recipient?  Was it a network problem?  Can I see a copy of the email bounce in question?  And on and on.   Wouldn’t it just be easier for them to click forward and send me the email?  They already know what I’m going to ask.

But they didn’t, and for many moons, I felt like an automated question engine running through my script, yes, no, no yes, okay BING here’s your problem.  But recently, perhaps in the past year or two, something has changed, and I suspect it has something to do with social media and SMS.

People have stopped using the phone to make voice calls.  I’ve noticed it in personal relationships.  Talking has become passé.  People are now practiced in asynchronous communications.   We can now dispense with the “Hi, how are you, how’s your family,” salutations and pleasantries that used to bind our social network of personal interaction.  Now it’s all asynchronous and me-centered.  I have information I want to send you, here it is.  Read it when you wish, but I don’t really want to talk to you.  We post on our facebook, twitter, whatever and just throw it out there.  It requires NO interaction.  People will take that and use it for what it’s worth.  We are detached from our communications.  Everything is a discrete packet self-contained and autonomous – automated.

It’s a shame to admit it, but it makes my job easier.  I can knock things out with minimal stupidity.  Simple bug report, simple fix.  It seems social media and SMS has trained my clients to send it and forget it.   I have become an automaton, a problem solving engine dependent on rich precise input.

But is this is healthy for society at large outside of specific business contexts?  What are your thoughts?

I was watching the History Channel yesterday, you know, the channel with nothing actually historic, only speculative.  Haha, it used to be the channel about stuff that happened during the years 1938 through 1945.  Now it’s the channel about stuff that might have happened.  Some shows (After Humans), are about stuff that could happen someday.  Is it the Speculative Future Channel?  Maybe they are turning into the vacancy left by the SyFy *snicker* Channel.

But I digress.

So I was watching this show about the ancient pyramids, ruins in Peru (Machu Picchu, etc), and manna in the Bible, all these mysterious and wondrous artifacts (except manna), and how they were all achieved by alien tech.  Yeah, that’s right, aliens gave us advanced technology to play with thousands of years ago.  I don’t make this stuff up, that’s what the history channel was saying.  It’s a fun speculative show and everybody’s all deep and mysterious.

“These tolerances are impossible, even with modern technology.”

“If someone came to me and said I wanted a stone cut like that, I wouldn’t do it for any price.”

Ooo, spooky.

And it goes on, one breathless expert after another speaking at length about how such feats, difficult to achieve today, would have been impossible thousands of years ago – unless they had help.  Help from aliens.

Yeah, that makes sense, I think.  Just because something seems impossible or difficult you’ve got to pull out the aliens card.  I’m more a fan of Occam’s Razor.  There’s a simpler explanation, one that actually has plenty of evidence in existence today.

It goes a little something like this:  Engineers are not particularly good at documentation.  You can actually stop reading here, because that’s it.

Even in our time, clever engineers fail to document stuff that has to be rediscovered as little as ten years later.  Engineers are so enamored of their works, so convinced at their own brilliance of cleverness, that the construction or solutions are believed to be, by them, self evident.  How could you not know what it does, it’s so simple, they say. There’s an old gripe about how clever programmers always think their solutions are self documenting because they are so elegant and perfect.   The pyramids?  Whatever their purpose, I’m sure engineers of the era couldn’t possibly conceive of someone NOT KNOWING what they do.  It’s obvious.  It’s always obvious to someone, except when that someone has been dead for 4500 years.

Without fail we must rediscover these “simple” solutions over and over again.  Remember, concrete?  The ancient Romans used it all over the place, but its secret was lost for 13 centuries until 1756. “Bah, write it down!?  You must be an idiot.  It’s so simple.  No way is anybody going to forget this.  Oh, shit, the Visigoths!  They weren’t covered in our disaster recovery plan.”

I suppose there’s also the problem that people just don’t have a multi-generation mindset when it comes to passing information forward.  We might think of our kids, but beyond that, it’s all a hazy blur of “somebody else’s problem.”

And bam! You forget how to make concrete.

So, it wasn’t the aliens that gave us awesomely advanced technology to make mind bogglingly beautiful and intricate structures.  We just forgot to write it down and back it up.  “That’s the next contractor’s problem,” they said.

I’ve been using and abusing Gutenberg.org a lot lately.  It’s a web site dedicated to public domain books, mostly in English but there is variety in other languages too including Beowulf in Old English.  You can basically find anything you want that was published before 1923.  They have ebook formats, pdfs, html documents, and a lot of audio books submitted by supporters.  All the classics are there.

I’ve been reading Edgar Rice Burroughs’s Tarzan and John Carter of Mars books to the kids at bed time.  I loved those books as a kid and now despite limited library space and an unwillingness to store any more books in this house, I can read the classics to my heart’s content.

So here’s the work flow:  Download a book at gutenberg.org, open it up in konqueror or firefox and when you come upon a strange archaic word pop it into your kdict public domain dictionary reader and peruse several different definitions and usage entries.  I’m simply amazed at how awesome the public domain is and how many volunteers have come together to make it all possible.  Consider donating to gutenberg.org.

I just noticed that the character of Tarzan went into the public domain in 1998.  Is it a coincidence that Disney’s movie was released in 1999?  Hmmm.

I just got a new phone, and I wanted to customize it with some of my favorite things: my wife and songs that remind me of her, one being her incoming ring of course.  I don’t care much for any other calls, but when my love calls, my heart skips a beat, so here we go.

First, select a photo.  I choose this one because she’s smiling at me and looks lovely.

­

Next, I took a short video in order to reverse engineer the video format of the Samsung Rant m540.  Turns out the sound is AAC, 128 kbps, and the video is mpeg-4 (reports as DIVX) and the frame size is 176×144 and the rate is 15 fps.

I want to create a video with a still picture along with a song by NEK called, "Laura no está" – the sentiment of the song is that Laura is not there, but in her absence, I am tormented, she is everywhere.  I am unable to escape.  Honey, your feet must be tired, because you’ve been running around in my head all day.  Chuckle.  So I want to loop a 16 second sample of that song (the refrain) along with the above still picture.  Turns out that ffmpeg (in Linux) will help you out tons.  Check out the following gem:

­ffmpeg -loop_input -vframes 240 -r 15 -f image2 -i foo.jpg -i foo.wav -s 176x144 -f mp4 -acodec libfaac bar.m4v

-loop_input causes the image to repeat throughout the clip.  -vframes 240 is 16 seconds multiplied by 15 frames per second to give total frames.  -f image2 is from the man page of ffmpeg and and forces a format.  Specify two inputs -i foo.wav and -i foo.jpg a frame size -s 176×144, and video format -f mp4 an audio codec -acodec libfaac (you have to compile ffmpeg with libfaac support) and the output file bar.m4v.

Take the resulting video file and copy it to the directory /dcim/100ssmed/ of your phone’s memory card.  I think you have to rename the file to sspx000(?).3g2 where the "?" represents a sequential number.  I had trouble getting the video to play properly at first, but I think it’s because I had the frame rate slightly off.  I don’t know, however, because I changed the frame rate and the file name at the same time and the thing started playing, so I’m unsure which was the cause, the frame rate or special sequential internal naming of the Rant m540.  Dunno, maybe I’ll mess around with some more and post my results here.

So there you go.  Now every time my love calls, I am greeted with her smiling face and a song.

I’ve been messing around with Qtpfsgui, a High Dynamic Range (HDR) photo tool for Linux, Mac, and Windows. There are number of processes that on­e can invoke to increase the dynamic range of photos from RAW captures or multiple tripod exposures, but first, an example.

This was taken at dusk at a hotel pool in Rio Grande, Puerto Rico.  Very scary sky.

The basic concept is that your camera can’t really capture a bright sky with a dark landscape.  Set the exposure for your land, and the sky is washed out.  Lower your exposure for the sky, and the land comes out too dark.  Wouldn’t it be nice if you could combine the two and fudge the photo to look more like your eye sees it?  The best way is with a tripod and multiple exposures with different settings, but I’m lazy and I want results NOW.

If you’re shooting RAW in your digital camera, you can capture a little bit more dynamic range than what you see when you export it to a jpg.  Try using an HDR tool to pull out a little more dynamic range or, in my case, heavily process it to give you that funky black velvet painting effect.  Meh, whatever floats your boat.  A lot of people seem to like these images.  ‘Course people seem to loathe them too.

The original photo looks like this:

It’s a nice photo, but the first one is quite dramatic, no?

Here’s another dramatic shot of the Mississippi and Missouri River confluence, shot on a cold day in December from the Missouri side.

I’ve been busy copy-editing and typesetting Laura’s doctoral dissertation. I’ve always been a fan of Donald Knuth and his obsessive work in typesetting with Tex. Since my beloved wife is a Stanford Student, I figured, cool, I’ll use TeTex (Latex) to publish the thing, kinda like an homage to the their text publishing tradition. Also to thumb my nose at the Computer Science graduate students who don’t think anyone outside of their department uses TeTex/Latex. They provide a Microsoft Word Template for the rest of the school. Screw that.

Latex is not for the faint of heart, though. The text markup language has a pretty steep learning curve, but once you get the hang of it, you won’t know how you lived without it.

First: Here is what you get with a Latex source document.

• Auto generated/indexed/enumerated list of tables and figures, complete with hyperlinks (in the PDF generated version) to their appropriate section
• All the enumeration happens regardless of where the table is. You cross reference based on a reference flag, not text. So for example, you don’t write out, "see table 2.1" you just create a label to your table like so, giving it a human readable name (although it could be anything):

\caption{\label{tab:Articles-with-Language} Articles with Language as Subject}

and then you reference your table like this:

The high percentage of articles on Language present in this local news section in contrast to a low percentage on Education (Table \ref{tab:Articles-with-Language})

You never have to remember what table or figure number goes where with what table or chapter or whatever. You also don’t have to manually update your list of tables or figures. This lets the researcher get to the business of writing their paper rather than screwing around with formatting, which, let’s be honest, occupies a vastly disproportionate amount of the researcher’s time.

• Benevolent Stanford students have graciously provided a complete thesis Latex style to take care of formatting for print/ebook publication. Even/Odd margin stuff is taken care of for you. Smart beautiful justification and hyphenation, footnoting, contents, etc is formated and beautifully handled.
• Laura gets to write her stuff in OpenOffice, export it to Latex and I then format with Stanford’s thesis style sheet.

Here’s what it looks like:

Now that I’ve gotten into this a bit, I’m addicted. I’ve seen how other people have published ebooks and to tell you the truth, they get them pretty wrong. There is no cross referencing, no hyperlinks to the sections, no footnote links, table links etc. In addition, with Lyx (frontend editor to Latex) you get to separate out your chapters, sections etc and have multiple people work on or copy edit at the same time. Since each is but a text file, you can use a source code versioning system like Subversion or CVS to track changes. This allows you to publish tight updated versions and divide up the work.

I highly recommend Lyx, Latex for any sort of professional publishing. It’s makes maintaining long documents of any sort simply a breeze.

Well, they (my thoughts) are mostly unprintable, but I will strongly express my position on bottom posting.

It sucks.

But first, a bit of history:

The top posting, bottom posting debate has been mostly won by the bottom posting folks, that is, when replying to an email, your response should go after the quoted portion of the original email.

That’s caca – big stinky pungent steaming caca.

First, if the email was lengthy, you must scroll for ages to even get to your response. Second, the assertion that bottom posting "conserves" the flow of the conversation and is more "right" is also caca. The flow of the conversation is contained in your threaded mail reader. You do use a threaded mail reader, right? The threaded mail reader will preserve the flow of the conversation just fine, thank you, without all the fuss and muss of quoted portions above and below and all around.

My reasons for top posting (in email… doing so in Usenet will get you keel-hauled) is that my response is the most relevant portion of the email. My response is the reason I am sending said email. If the recipient is too lazy to look at his last email to discern to what I am replying, I have included a snippet of relevant text after my important response for reference’s sake. It is just a little reminder, not the important portion of the email. Bottom posters just don’t seem to get this, little bottom feeders that they are.

I get it, I really do. You are so humble, so meek, so respectful in your correspondence that your pathetic little response must be relegated to the tail end of the email. You suck. I don’t want to do business with you. I would rather do business with someone who has the balls to believe his words mean something and places them at the top of the email accordingly.

Got it?

I understand that this is a sensitive topic for many programmers and Open Source developers and furthermore that the convention of "bottom posting" or "bending over and taking up the rear" has won the day. I understand that top posting is frowned upon in public discussion forums. I disagree of course. Again, your Usenet reader is threaded, right? If you need to bottom post, I think you are an idiot, but I am outnumbered, so I acquiesce. You shall, however, not have the pleasure of enforcing upon me your flagrant disregard for common sense and decency by encroaching upon my personal email habits.

In my email I will top post. I will defend my top posting. I will throw down with anyone that wants to start a flame war on the subject.

I am prepared to defend myself.

P.J. and I discussing some of the confounding requests we get from windows admins as we try to protect them from themselves:

"Yeah, it’s like, ‘I want you to secure it, but I also want be able to do every stupid thing I can think of.’"

And there you have it in a nutshell the security problems with Microsoft users.