Thursday, November 29, 2012

Amtrak and my winter holidays

This holiday season, I am happy to say, I will not fly. For the second year in a row.

Last year I visited my family in Houston for Thanksgiving via a combination of bus and Amtrak. I wrote about what it's like to ride Amtrak. This year I plan to spend Christmas with my family thanks to a roundtrip Amtrak ticket.

Amtrak is significantly cheaper than airfare during the holiday season. While a plane ticket costs about $500 one way on the busiest days, Amtrak cost me only about $135 one way for the same time period.

The downside, of course, is that a trip that takes, say, six hours by plane (including going through security, waiting, delays, etc.) now takes about 24 hours.

But the upsides exist also. First, the price difference is huge. Second, you get to see some scenic sights of your country. You get a nice large window, and there's even a Viewliner -- a separate traincar with floor-to-ceiling windows where even the ceiling is mostly transparent. You get a comfortable seat, lots of legroom, nice reclinability, and! your very own power outlet! Now you can do some light [e]reading, some gaming, music listening, or even honest-to-goodness work. You can even be online by tethering to your mobile device. Since you're traveling by ground, your cell phone works normally.

I am excited about the roughly 40 hours (roundtrip) I'll spend on the train. Right now I plan to conduct a study of the quality of Verizon's 4G LTE. I am going to combine Verizon's UML290 USB modem with a GPS receiver. Using a custom program I plan to write, my laptop will continuously assess the quality of the Internet and record the result combined with the GPS location. Meanwhile I'll be free to do other stuff. After my trip, I'll plot the data using Google (or Bing?) Maps. Then we'll see how decent Verizon's LTE is, especially on the fringes of major cities.

Monday, November 19, 2012

Videos of performances

When I really enjoy any kind of musical performance, whether it's a band performing a song or a pianist performing a classical piece, I search YouTube for a video of the artist performing it. While sometimes I am fortunate (or very fortunate), most of the time there is no live performance!

That's amazing to me because, as someone who has never been good at musical instruments but always has wanted to be good, I know that if I magically acquired the skills, I'd want to shout from the rooftops and perform for everybody; just give me an excuse!

And here I see wildly talented artists, having been accepted to Magnatune or other major record labels, having highly rated audio tracks on YouTube, not capitalize on video! Teeming hordes of fans, drooling for more multimedia by their favorite artist, being turned away? What's going on here?

My best guess is that artists underestimate themselves. They believe that people only want them for their voice and sound. So they don't want to invest in a videorecording. Maybe the artists even believe that creating a videorecording makes them appear conceited. But that's not true! Fans want it! Fans want everything! Fans want audio, video, interview transcripts, bloopers, autographs, locks of hair, and favorite recipes! There are also those who want to watch the technique. While a song may be great to listen to, watching the stage presence may be twice as satisfying. A classical piece may be awesome, but you don't see the fingers flying. (Go click "very fortunate" if you haven't yet.) I've bought many songs and even whole albums either by discovering it on YouTube or by liking the song, finding it on YouTube, and being doubly impressed by the video.

Artists: you have a wonderful gift. Share it every way technology permits! And gain fans as a result!

Free hosting of Shared Usage Alerter

I just had a thought. I need access to shared/family plan account-holder credentials on various cell networks, so I can integrate my Shared Usage Alerter with every mobile provider. You need a convenient way to be alerted of upcoming overages that your kiddos will subject your wallet to.

Here's a deal you can't refuse. Allow me access to your shared/family plan, and I'll run an instance of my Shared Usage Alerter for you, indefinitely, at no charge. Your credentials will live on my Linux server, surrounded by high security. The server will retrieve your usage information nightly, analyze it, and send coaching (warnings) to you and/or the usage offenders. No more overages! Now there's no excuse! "I didn't know" will not fly anymore.

(This is a best-effort offer. It's possible that some mobile providers make it too difficult or literally impossible to collect usage statistics from their web site. Also, this offer applies only if I know [of] you.)

Sunday, November 18, 2012

Shared Usage Alerter

Cell companies (Verizon, AT&T, Sprint, T-Mobile, etc.) all offer "family plans" or "share plans" that allow multiple people to share a bucket of minutes, texts, and data. This is an interesting arrangement because as a rule, the cell companies intentionally don't provide a way to limit individual users or the account as a whole. Like banks with their overdraft fees, cell companies enjoy socking customers with overage charges.

To help address this problem, today I wrote a small Python module called Shared Usage Alerter. It's open source, and it comes with a demo program and a unit-test suite. It allows a savvy account administrator (such as a parent) to automatically determine if anyone's usage poses a red flag. The program will detect such usage and generate a warning. The warning can then be emailed to the offender and/or the account administrator.

In addition to preventing inadvertent overages, Shared Usage Alerter also watches for underutilization and notifies users if they should feel free to use more data. (This is very conservative, of course.)

This is not (yet) a push-button operation. The account administrator needs to be familiar with Python and scheduled tasks to make this thing work. The missing piece is integration with the cell phone companies. I actually do not have access to any family/share plan, so I wasn't able to write a screen-scraper for per/user utilization. If you have such access, I'd love to borrow it, with a promise not to vandalize your account. So for now, Shared Usage Alerter requires you to integrate it yourself with your mobile provider. Once you do, run it as frequently as you like. It'll generate warnings, and then you decide what to do with these. (I'd send an email or a text message using an email-to-SMS gateway.)

Finally, here's the output of the demo program:
== Scenario 1 ==
Global status (4.4 / 7.5 GB) is Ok.  Estimated usage by EOBC: 22.0 GB.
Philip the Model Citizen (used 1.0 / 2.0 GB):
        to account admin: Ok.  Est. local use by EOBC: 5.0 / 2.0 GB.
John the Hermit (used 0.1 / 2.0 GB):
        to account admin: Ok.  Est. local use by EOBC: 0.5 / 2.0 GB.
Yuri the Streamer (used 2.2 / 2.5 GB):
        to account admin: Overuse.  Est. local use by EOBC: 11.0 / 2.5 GB.
        to user: Extrapolating your usage to the end of the billing cycle, you may exceed your personal quota.  Be careful.
David the Downloader (used 1.1 / 1.0 GB):
        to account admin: Overage.  Est. local use by EOBC: 5.5 / 1.0 GB.
        to user: Please stop using data.  You've exceeded your portion.  Any additional data you use will steal from someone else's bucket or cause an overage charge that you'll be fully responsible for.

Time flows... we're approaching the end of the billing cycle, but data usage doesn't change

== Scenario 2 ==
Global status (4.4 / 7.5 GB) is Ok.  Estimated usage by EOBC: 5.5 GB.
Philip the Model Citizen (used 1.0 / 2.0 GB):
        to account admin: Underuse.  Est. local use by EOBC: 1.2 / 2.0 GB.
        to user: Rock on... feel free to use more data.  Use it or lose it.
John the Hermit (used 0.1 / 2.0 GB):
        to account admin: Underuse.  Est. local use by EOBC: 0.1 / 2.0 GB.
        to user: Rock on... feel free to use more data.  Use it or lose it.
Yuri the Streamer (used 2.2 / 2.5 GB):
        to account admin: Ok.  Est. local use by EOBC: 2.8 / 2.5 GB.
David the Downloader (used 1.1 / 1.0 GB):
        to account admin: Overage.  Est. local use by EOBC: 1.4 / 1.0 GB.
        to user: Please stop using data.  You've exceeded your portion.  Any additional data you use will steal from someone else's bucket or cause an overage charge that you'll be fully responsible for.

Friday, November 16, 2012

Emma Wallace, one of my favorite indie artists

Thanks to my lifetime Magnatune membership, I get to explore, discover, and end up owning a lot of music that I would never hear on mainstream radio. This summer I surreptitiously promoted Magnatune to my high school students by playing some of my favorite albums during non-lecture times.

Magnatune is how I discovered Emma Wallace. She has three albums published there. In her own words, she is "a maker of songs for those wearing rose-colored glasses, those who love life and happy endings." To date, I've spent probably at least 24 hours listening to her music, and it hasn't gotten old yet. Her songs flow so easily and are so catchy that I am surprised she's not much more popular than she is. I almost never care about the lyrics of songs that I like, focusing much more on the music, but even in the lyrics department Emma Wallace's songs are a hit.

Here are two YouTube videos of the live performances of two songs I particularly like:
But in my opinion her recorded versions sound much better. Magnatune lets you listen to her songs without limit, but with an audible watermark. Check her out: "A Reason to Stay Up all Night" by Emma Wallace. Enjoy!

Tuesday, November 6, 2012

Marijuana legalization

It's an exciting time for marijuana legalization. Today Colorado approved marijuana use for any purpose, including recreational. No matter what side of this issue you're on, this issue is the perennial states' rights vs. federalism debate.

I have a hard time reading the populace's views on marijuana. The majority of the US is pro-legalization. Yet, Gary Johnson (the prominently pro-marijuana Libertarian candidate) got only 1.0% of the vote nationwide. Yet, today the majority of Colorado's voters are pro legalization for any purpose.

Is there anything special about Colorado? In Colorado Gary Johnson got 1.3%, which is above the national average but nothing special. Other states got a much higher percentage -- New Mexico, Montana, Wyoming, Missouri, and Arkansas being some. What's the deal here?

If you're pro-legalization, your job was to vote for Gary Johnson if you're not in a swing state. If you're in a state that always votes for a specific party, you'd be "throwing away" your vote if you vote for anyone else. This is a blessing because it lets you vote your conscience. If you're pro-marijuana, voting for a third party (and in particular Gary Johnson) was your best bet to make a difference.

I believe pot has an unfair and unfounded bad rep with the federal government. Today Colorado's stance on marijuana today directly contradicts the federal law. Colorado will need all the help they can get to make their voice "stick." Let's support them. Let's also support a similar measure in our state.

I am confident that through our collective effort, marijuana nationwide (or at least in many states) will become legal within my lifetime. Help me make it happen.

Friday, November 2, 2012


I have 180 Bitcoins ($1,920 equiv.) but nowhere to spend them. Local businesses, hear me.

Thursday, November 1, 2012

Virtual memory -- off.

Today I got tired of sometimes having to wait tens of seconds for software to get swapped in on my work PC, so I turned off virtual memory on Windows completely. Apparently others have had success with this.

This is a Windows XP machine. (My employer plans to upgrade to Windows 7 early next year.) I have 4 GB of physical RAM, and Windows is making available a total of 3.16 GB of RAM.

I stressed my system by opening Lotus Notes, Visual Studio, Simulink, Stateflow, and Rhapsody Developer with a sample project, plus the usual web browser, music player, etc. The memory usage is hovering at 65%, and switching between windows has never been faster!

This just might work out.