Sunday, September 30, 2012

Minimum wage - to the roof!

The higher the minimum wage, the more profitable it is to automate jobs. Demand for automation helps hardware people, software people, system integration people, IT people, etc.

As a libertarian, I am against the concept of minimum wage.
As a software engineer, I am for raising it.

Saturday, September 29, 2012

RealCalc app for Android

Were you fortunate enough to learn Reverse Polish Notation (RPN) in high school or in college? I learned RPN in high school, for University Interscholastic League competitions. RPN is a more powerful and more predictable method of inputting expressions into a calculator. Imagine: no more parentheses, no more memory add/recall, and the ability to solve equations of arbitrary complexity in one fell swoop!

Very few handheld calculators support RPN, so it was difficult to dip your toes into RPN to see if you like it. Today it's easier than ever! Android has an app called RealCalc that allows both regular way of entering expressions and RPN! Beyond supporting RPN, it also has a nice list of constants and conversions for many disciplines (such as gravitational constant, Avogadro's number, elementary charge, and many more), and it's even aesthetically pleasing. And today only, it's on sale for just 25¢!

Give it a chance. It opens new horizons, and it makes using a calculator fun!

Sunday, September 23, 2012

My thoughts on Facebook

There are two reasons I closed my Facebook account. The main reason is that I don't even have most of my current friends on Facebook. We use Google+ or just instant messaging / texting. For instant messaging, I find that having an XMPP (Jabber, Google Talk) and an AIM account covers all my bases. You can find me on XMPP at

Second, I don't like how Facebook mixes one's wall with ads. Here's a normal update from a friend. Now here's "Your friend likes Megacorp Inc." followed by some inane update from Megacorp Inc that I couldn't care less about. A sweepstakes? A contest? A sale on something that's completely irrelevant to me? Not interested. The ads are both on desktop and mobile editions.

What's Facebook's value-add? It helps people find each other, to stay in touch, and to coordinate events. As an online identity management service, Facebook also makes it convenient to identify yourself to other sites.

I am in the minority in that I don't need Facebook to help people find me. Enter my name into any search engine, and my web site will be on the first page. My web site lists all the ways you can get in touch with me, and links to my social media. As far as events, I never liked Facebook for this purpose. Sure, it's convenient, but it's also a walled garden. I am partial to email-based invitations, with making it convenient.

As far as identifying yourself to other sites through your Facebook account, I believe that's a dangerous practice if you can fathom ever parting ways from Facebook. Now instead of parting ways from Facebook, you'd be parting ways from all the accounts that know your Facebook identity. You're putting all your eggs in one basket. Just say no. Isn't online independence valuable to you? Do you really want to be beholden to Facebook forever? I create a separate accounts on each site, and keep track of them all using KeePass, an encrypted password wallet. I share it between my desktop, my laptop, and my smartphone, so I always have all my passwords securely available.

I also use OpenID for sites that support it. OpenID is a decentralized single-signon based on open standards and supported by many sites. My provider of choice is StackExchange, but many other large sites can serve as free providers, including Yahoo and Google (I think). In my experience more sites support OpenID than Facebook for creating accounts.

All in all, I think Facebook serves its users very well. No doubt it's a revolutionary service, and it's always had to find and recalibrate the sweet spot between making "social" convenient and accessible vs. over-sharing. I think it's done well on that front. It has committed to remaining free, and the ads aren't all that onerous.

But my biggest concern is that Facebook tries to obsolete the Internet's openness. The Internet is based on open, decentralized standards which don't allow any one entity to have too much control.

There is no monopoly on email. Gmail is so good that most people have a Gmail account, but anyone can email anyone whether they use Gmail or not. That's openness. If an email provider goes down, it doesn't bring down anyone else. There is no one chokepoint through which all communication goes, monitoring, logging, and analyzing your traffic. That's decentralization. Does Facebook's internal email system have any of these benefits?

There is no monopoly on instant messaging. Google Talk is so good that most people have a Google Talk account, but (did you know?) you can communicate over Google Talk with anyone else who uses XMPP, whether they use Google for this or not. For example, on Google Talk you can add my identity,, to your buddy list, and voila! That's decentralization. That's openness. XMPP even implements encryption. Does Facebook's instant messenger have any of these benefits? (Note: Facebook does allow the use of XMPP to chat with your friends outside of Facebook, but it's not federated: you cannot chat with anyone other than your online Facebook friends, and it's very much centralized.)

There is no monopoly on updates from friends. Many of you read this blog through a service or a program that uses this blog's RSS or Atom feed to "instantly" tell you that a new post is available. Google Reader is so good that many of you use this, but RSS/Atom feeds are open standards. You can use any program or service for this, and many exist. In fact, these allow you to have a "wall" of sorts with latest posts from people you care about. I have a "wall" of posts from journalists, economists, technologists, and friends whose blogs I follow. But it's all open and decentralized! As a result, almost all sites that have updates provide RSS/Atom feeds. Check NPR. Check your favorite web site. Check your own blog. (In Firefox, right-click the webpage, go to View Page Info, and see if there's a Feeds section at the top.) Could I follow your Facebook status updates with the same system? No, because Facebook doesn't make these available. There's technically nothing stopping them, but they want to keep it a walled garden.

All in all, Facebook sees open standards and decentralization a threat. Its business model is to have everything about you depend on it, and this is in conflict with what the Internet is all about! Facebook's goal is for the Internet to equate to Facebook. To me, that's not a utopia. It is my firm belief that the less people depend on Facebook, the healthier the Internet will remain.

To kick it old-school, why don't you send me a message outside of Facebook? I really want to hear from you! Post a comment here, add me to your Google Talk / Jabber account, send me an email, or heck, call me! We are still in control of this big thing called the Internet.

Sunday, September 9, 2012

Avis is a spammer

I received two emails, one day apart, from "Avis News Center." That's Avis, the car rental company. The emails were unsolicited. From the email address it became clear that Avis buys bulk email lists from the scum of earth—those who crawl web sites and collect every email address they stumble onto.

Here's a copy of the Avis spam email.

Spread the word: don't give Avis your business. There are more ethical car rental companies out there.

Saturday, September 8, 2012

Personal experience with Windows 8

I've read a lot of online reviews of Windows 8. At best, reviews of Windows 8 are cautiously optimistic; at worst, foaming with hatred.

Now, finally, I've had a chance to try Windows 8 for myself. I must say, it's not revolutionary -- and that's a good thing. Windows 8 makes total sense once you think of the live tiles screen as a larger (full-screen) Start menu. Each tile is a Start menu entry. Except dynamic.

What's the purpose of the Desktop anyway but to hold shortcuts to your commonly-used programs, and to show a cute wallpaper? I know you don't store documents on your desktop, because documents go into My Documents. So you're using a full-screen Desktop to hold your shortcuts. Well, now your shortcuts are on a full-screen tile grid rather than the Desktop, with the bonus that each program can provide you dynamic information. Nice.

To continue the parallel, once you're at the (old-style) Desktop, you can return to live tiles by clicking on where the Start button used to be.

There is now also a new type of application: Metro-style. This application is written to take advantage of multi-touch inputs and the concept of live tiles. For now I am unclear if those two are the only differences between Metro-style applications and regular WPF/XAML applications that are compatible with Windows XP onward.

Windows 8's window management of Metro-style applications is causing some gripes for now. You can have either one full-screen or two side-by-side Metro-style apps. That's it. Then again, considering Metro-style apps are designed for tablets, having two apps side-by-side is revolutionary. On a 27" monitor, however, the limitation becomes more apparent.

Long term, I believe Windows will continue supporting old-style desktop applications for many years to come, but Microsoft wants the tablet interface (the Metro paradigm) to be the default for new applications. Microsoft's vision is for every modern application to be multi-touch equipped, and to be easily portable to any form-factor. I fully support this, and this may well set Microsoft apart from Apple's and Google's platform offerings.

The next few years promise to be exciting!