I decided to really dig into Ruby and its ecosystem. It’s quick to get things started using RVM and the language is fun (and for what it’s worth, on my system Ruby 1.9.3 is slightly faster than Perl 5.12 on my favorite trivial string parsing test of extracting fields from 500,000 lines of Apache combined log) but coming from Python and Perl I find frustrating quirks in the tools. Today’s example is that the debugger is broken on 1.9.x and searching turns up hundreds of “fixes” that don’t work or only build for specific releases of ruby and the dependencies. I realize it isn’t “core”— there is a debug module in the 1.9.3 stdlib that is kind of undocumented— but it is the sort of thing you expect to work or get flagged as broken. It seems that the authors/maintainers of the debugger gave up on it, but Gabriel Horner has a fork that works.
It’s been sixty days without cable television and so far no one in the house misses it. The TiVo had been recording a blank signal for a week after the last firmware update went out to the cable decoders so I knew it was time to cut the cord. As a family we just don’t watch, preferring to spend our time reading or fiddling with our portable devices. Netflix and Amazon Prime on the Roku are sufficient video entertainment.
It’s quite a savings. We didn’t have anything extravagant— expanded digital TV, two decoders, phone over cable, and internet service— but the bill was slowly creeping upward until it broke $200 per month when the provider expired the last discount and began charging a rental fee for their cable modem. New customers pay $99 and their customer service was not helpful. Enough. I set up a pay-as-you-go account with voip.ms and ported my existing number during a promotion for $10, so it runs me $10-$12 a month for usage including e911, CallerID, and a second DID. I replaced their modem with one I purchased and bumped the internet service up a tier and my monthly for internet is $55. I might spring for a HDTV antenna and ATSC receiver (my old LCD flat panel is strictly a monitor, no tuner) so I can get local channels but that’s not urgent.
We’ve had telephone service through the local cable company for the past four years in a digital tv-phone-internet package. The “digital voice” service from Time Warner is voice-over-DOCIS but otherwise unexceptional and runs on the same cable network as the TV and internet services. We’ve seen our monthly price of the package climbing up and annual offers to new customers for the same package sliding down and received very little satisfaction from customer service. The whole bundle costs too much for the value we get. Cutting cable is a topic for the future, but I think I can do better for our very modest home phone usage.
I bought an Obihai OBi100 VoIP device. A colleague raved about how great his was and I found it selling new for less than $50 with tax and shipping. The first thing that struck me was how tiny it is, pictured here with a pack of gum and a pen for comparison:
The device is about the size of a deck of playing cards, but a bit thicker. The second thing to know is that once it picks up an IP address with DHCP, the web-based interface offers both a “wizard” guided setup and a do-it-yourself mode where you input the configuration. I spent an hour reading the PDF documentation and forums on the vendor site, fiddling with Google two-step authentication, setting QoS on my router, and flashing the device with the most recent firmware before setting it up. The “wizard” is, at least for me, easier and I had the device working perfectly inbound and outbound as line #2 on my desk phone with Google Voice in five minutes.
My next step is to select a SIP provider and configure it as a second service.
It’s been months since I modded my HP Touchpad with Cyanogenmod. I’m not going to get into how to do it because there are fairly adequate guides. I’m now running a mid-June official CM9 nightly build. The touchpad is a nice Android tablet (read that “games”) and a great e-reader (kindle & nook apps) after setting the DPI to the native 132 with DPI Changer. The wireless behaves itself, battery life is acceptable, and other than the camera and app store it mostly works. The camera is only supported by a binary blob in an old kernel unless HP makes a code drop, so may never work. The Google app store, a.k.a. Google Play, is annoying in that it checks the DPI and make and model of the unit when it is first run but never again after that and disables updates on many existing apps. Setting a few values (youtube example on CM7) in the
build.prop then clearing the app cache in system settings, clearing the
/cache partition, and rebooting with the default DPI fixes it. I used
ro.product.brand=samsung ro.product.model=GT-I9100 ro.product.name=GT-I9100 ro.product.device=GT-I9100
which gives better results than the usual recommendation of faking a
SGH-T989. After updates, I switch the DPI back to 132.
In honor of Independence Day, I’d like to offer some suggestions for writing a good political screed:
- Reference one or more of the founding fathers
- Describe a false dilemma, register everything in black or white.
- Invoke the Constitution without being specific
- Refer to the Articles of Confederation, Federalist Papers, or the private writings of the founders.
- Misrepresent 18th & 19th C. thinking. Opportunities exist in misunderstanding Natural Rights, Exceptionalism, Manifest Destiny, the Enlightenment, Objective Idealism, Romanticism. Get creative here.
- Make a inappropriate reference to the Separation of Powers.
- Make an appeal to Anti-Federalism, ex. States Rights
- Claim an immediate threat to a politically powerful but diffuse group: small business, seniors, the wealthy, etc.
- Warn of an existential threat to the nation:
- external threats might include Europeans, China, brown-skinned people, trade imbalances, or Communism
- popular internal threats are debt, minorities, Socialism, Liberalism, and moral hazard
- Engage in one or both of Naturalistic and Moralistic fallacies.
- Include numbers without scale, history, or comparison taken from unnamed sources.
- Reach a false conclusion (or none at all).
Following these hints will all but guarantee that your posts to your favorite social media sites will grab attention. Have a good time!
Received an odd email reads like some kind of link scam. That it came through the forwarder my domain registrar provides me for my DNS contacts is suspicious:
We recently contacted you regarding advertising for one of our clients.
We pay an annual fee to you as soon as the advert is live. It is a straightforward process and we work with you to make sure we fit naturally with your site. Please let me know if you are interested and I’ll send you more details.
Would you be interested in selling us a simple text based advertisement on your website Lonsteins.com?
This e-mail message is strictly confidential. It is intended solely for the person or organisation to whom it is addressed and contains confidential or privileged information. If you have received it in error, please notify ####@###########.com immediately and destroy this e-mail and any attachments. You must not disclose, copy, distribute or take any action in reliance on this e-mail or any attachments. Views or opinions presented in this e-mail are solely those of the author and do not necessarily represent those of More Digital.
More Digital does not accept liability for any data corruption, interception, unauthorised amendment, viruses and delays or the consequences thereof relating to this or any other email. Any e-mail or attachment is opened at your own risk.
To help protect you, this email (ID-##########) was scanned for viruses by Norton AntiVirus.
Weird. Do a google search, it’s not a great reputation. Do they really get anyone to bite on these things?