## Tuesday, October 09, 2012

### natbib-like frontend for chicago-style macros

For some reason, the ACM has baked in chicago-like citation macros into the ACM SIG proceedings LaTeX templates instead of using the far superior natbib that literally everyone else on the planet uses. I'm much more accustomed to typing \citet as opposed to \shortciteN, \citeauthor as opposed to \shortciteANP, etc. So I decided to add this little translation table to my preamble:
\def\citet{\shortciteN}
\def\Citet{\shortciteN}
\def\citeauthor{\shortciteANP}
\def\Citeauthor{\shortciteANP}

\let\chicagociteyear\citeyear
\def\citeyearpar{\chicagociteyear}
\def\citeyear{\citeyearNP}

\def\citep{\shortcite}
Unfortunately, that means I can't use any of the optional arguments to \citep or \citet. If you are just looking for a translation table so you can use the chicago-style macros directly, try this:
natbibchicago
\citet or \Citet\shortciteN
\citeauthor or \Citeauthor\shortciteANP
\citeyear\citeyearNP
\citeyearpar\citeyear
\citep\shortcite
It's crazy how chicago-style macros sometimes use "N" to mean "noun" and other times to be the first half of "NP" being "no parentheses."

## Thursday, August 09, 2012

### CTAN search engine definition for Firefox

If you're looking for search engine definitions for CTAN that are compatible with Firefox's search toolbar, then visit:While on that page, click on the down arrow in the icon in your your Firefox search toolbar. You should see several "Add" options at the bottom. That lets you add several different types of CTAN search to your toolbar. You can then "Manage Search Engines" and add a keyword to some of them. I use the keyword "ctan" to search package ID's and the keyword "ctanp" to search over package ID's and descriptions. The keyword lets me search directly from the awesome bar without having to use the search bar. [ These definitions were inspired by firefox_ctan_plugins by Martin Engler, but those don't work with CTAN anymore. ]

## Sunday, July 29, 2012

### Bookmarklets for Arizona State University (ASU) library proxy

This message goes out to ASU faculty, staff, and students. Doesn't it make you mad when you're off campus and you want to read a paper and the research database that holds the paper doesn't let you view it because you're not a subscriber? I hate that.

Luckily, the ASU library system provides an off-campus scholarly portal from my.asu.edu (under the "Library" option on the left) that can be used to make your off-campus connection look like an on-campus one so research databases will grant you ASU-caliber access. Unfortunately, if you've clicked on a link to a paper, you have to re-do your search within their portal to get your off-campus access, and that's really inconvenient. So I've come up with a shortcut (similar to my OSU LOCSI shortcut).

Drag the bookmarklet below to your "bookmarks toolbar" (that strip of bookmarks that rides just below the "location bar" in your browser).
• ASU LOCSI ("LOCSI" = "Library Off-Campus Sign-In")
When you're on a page you'd like special access to (e.g., the official site of an academic paper of interest to you), click on the bookmarklet and you'll be transported to that site via ASU's off-campus sign in. You may have to use your ASU username and password to login the first time you click on the bookmarklet, but after that you should be granted ASU-level access quickly.

(feel free to rename that bookmarklet as you wish; the name "ASU LOCSI" isn't important to its function)

I hope that helps.

## Tuesday, June 19, 2012

### Printing from your Android device (tablet or phone)

I know someone who recently purchased an Asus Transformer TF300T from MicroCenter in the store for a cool $350, which means that after tax it was still cheaper than it was selling for at Amazon ($384). Strangely, I can find no mention of the TF300T on MicroCenter's website (maybe local store was just clearing inventory and they don't plan on selling them in the long term?). Anyway, this is the first Android tablet this person has ever used, and they were interested in getting the ability to print from it to the printers in their home. Here's how I responded (text copied from an e-mail and then marked up a bit).
Here are some tablet printing options that I've tried that appear to still be popular. I've put some footnotes at the bottom of this message that are tangential topics that may still be interesting to you. For example, the first footnote [*] is about a way to pick printers in the future that allow for cloud printing without the aid of a PC being on.

The first two apps I currently have installed on my phone and am happy with. You would probably only need one of them. The third app is one I tried, but I gave up on because I thought the first two apps were just as good or better. I have not used the fourth app, but you should know it exists as it would be handy if on the go and you need a hard copy of something.
1. First, here's "Cloud Print," which is a free app with no limitations but will display ads unless you donate to it:

To give it the ability to print, you have to also install Google Chrome (Google's web browser) on one or all of your machines. You can get Google Chrome web browser [**] from:

After you install it, complete these steps to connect your PC's printers to the web where "Cloud Print" can access them:

Note that if Chrome is already installed on another computer in the house, and if that person has shared her printers with you, you should already be able to print to printers connected to her computer even if your computer isn't on (but hers has to be on). Once printers are connected to your Google account's Cloud Print, then you can use the "Share" button (it looks a little like a tree with two branches, typically) from any app to export whatever you're looking at to the "Cloud Print" app. That document will then get printed to the Cloud Print printer you choose. Note that "Print to PDF" is always available (and it will store that PDF on your Google Drive, I think, which you can access using the "Google Drive" app I just e-mailed you about). There are competing Android apps to Cloud Print, like "Easy Print:"

but I don't think they're as well developed as Cloud Print.

2. Next, there's "PrinterShare," which has limited printing for free, but unlimited printing if you're willing to buy their premium key for a pricey $12.95: https://play.google.com/store/apps/details?id=com.dynamixsoftware.printershare PrinterShare's features largely overlap with Cloud Print. That is, Cloud Print does a couple of things PrinterShare doesn't, and PrinterShare does a couple of things that Cloud Print doesn't. For example, you can use Google Cloud Print with PrinterShare, and so any printer that you can use with Cloud Print, you can also use with PrinterShare. One major difference is that PrinterShare also supports WiFi printing to network-enabled printers (e.g., the HP LaserJet 2055dn) and some print servers. Initially, the support was spotty. However, I'm noticing more and more printers start to pop up on my WiFi list when I check. It's a solid app, but it's a little annoying that if you switch printers frequently, it has to re-download print drivers nearly every time. Downloading print drivers is very fast, and it's not much of an annoyance, but it's a little confusing why it can't keep these installed. Otherwise, it's a solid application that's a tough competitor, which is why it maintains such a high price for it's premium key. 3. I have also used the "PrintBot" app, which allows for 3 printouts a month unless you pay$4.50 for the full version (which is unlimited). It supports printing directly to a print server (no Google Cloud Print required), but it is not as easy to setup as PrinterShare. So unless they've improved things a bit since I used it last, I don't recommend it. In theory, it may be the only tool that can print to the print server connected to the HP LaserJet 5 upstairs without using Google Cloud Print; however, PrinterShare may have improved to be able to do that natively anyway:

4. Alternatively, HP and others(?) have apps like this one:

that allow you to print to public printing locations, like FedEx Office stores, UPS Office stores, Walmart photo kiosks, hotels, and others. This is a neat idea if you're on the go and need a paper copy of something. The downside is that although the app is free, the place that prints your document may charge you per page.

In summary, if you're OK with having a computer on and connecting your legacy printers to the Google "cloud print" service, then give the first free app ("Cloud Print") a shot. If you want the ability to print over WiFi directly without computers being on, then consider the second app ("PrinterShare", which is pretty expensive for an app if you want to print more than 3 things a month). Note that the WiFi option only works if you're on the same network as the printer. You cannot print from remote with PrinterShare unless you're using Google's cloud print service (and thus have a PC turned on).

--Ted

Footnotes:

[*]: If you find yourself buying a new printer in the near future (not likely), you can choose a "Cloud Ready" printer:

These printers connect to servers at HP, Kodak, Epson, or Canon that allow access to them from remote provided the correct username and password. Google Cloud print can print directly to these without the aid of a computer being on.

In general, any network-enabled printer will probably have good Android support even if it's not "cloud ready." In fact, some vendors release their own apps to make it simpler to print to them from Android, like Lexmark (but I think generic network printer apps will connect to these too, in most cases):

[**]: If you like Google Chrome as a web browser, you can use it instead of Firefox. If you have Firefox bookmarks, Chrome will import them. Also (and this might be interesting to you), you can share your Chrome bookmarks and tabs to your tablet and so you can easily go from one to the other. If you don't like Chrome but like the idea of getting your same bookmarks and tabs on your tablet as is on your Desktop, that's possible with Firefox too. Either way, we should probably install the "Chrome to Phone" app

## Friday, April 13, 2012

### Instagram and Tumblr, in case you didn't notice

In case you didn't notice the extra links, I now maintain a couple of Tumblr microblogs and photos via Instagram. Here are the Tumblr microblogs:
You can catch my Instagram feed (@tedliman) via several places, including: I have an Instacanvas gallery for buying of my Instagrams on stretched canvas: Finally, you can check out the Twitter feeds too: Thanks for your interest!

## Saturday, February 11, 2012

### Your iPad/iPhone/iPod not showing up on wireless sync on iTunes in Windows XP?

UPDATE: This solution appears to work for Windows 7 as well. As the problem is likely in the Apple software, the solution should work across Windows operating systems.
Last year for my mom's birthday, we bought her an iPad 2. When iOS 5 came out, she took advantage of the cool wireless sync feature to iTunes running on her Windows XP machine. It worked great for a few months, but then suddenly her iPad stopped showing up in the sync list unless it was physically plugged into her computer. On the iPad, it said it couldn't see her computer.

After tweaking some settings and doing a few reboots, I managed to get her computer to start wireless sync'ing again. I had an idea about what it was, but I wasn't sure.

Then, after a few weeks, I hear from her that it has started again. So I did a little more searching, and after combining multiple people's error reports and extracting the common thing that seemed to fix them all, I think I came up with the fix. It's a simple fix, and she's able to do it herself whenever the iPad loses connectivity. For the last few weeks, every time the iPad stops talking to her computer, she's able to recover immediately. So I think we've figured it out.

The fix? Restart the Apple Mobile Device service. Here's how:
1. Quit iTunes.
2. Right-click on "My Computer" and go to "Manage".
• Alternatively (e.g., on Windows 7), open up your "Control Panel". Then click to see "All Items." Then look for "Administrative Tools." You should find "Services" in there. That's the ultimate destination we're heading to.
• Alternatively, click on "Start" and then "Run" and type "services.msc" (without the quotes) and hit enter.
3. Click on "Services and Applications" inside the "Computer Management" console.
4. Double-click on the "Services" that shows up.
5. Find the "Apple Mobile Device" service in the list and select it by clicking on it.
6. Click the link that says "Restart the service".
• Alternatively, you can right-click on the service and select "Restart."
• Alternatively, you can double-click on the service and then click the "Stop" button and then the "Start" button.
7. Close the management console.
Now that you've restarted the "Apple Mobile Device", your system should start working like normal again (you may want to start up iTunes again though). Eventually when your iOS device starts looking again, it will find your system and sync as needed.

This problem appears to be caused by some sort of race condition dealing with the Apple Mobile Device and the network. As the computer starts, the order in which things start is non-deterministic. Due to some random delays, the network may not come up quick enough. Consequently, the Apple Mobile Device gets confused by the network being in this state. Re-starting it manually later when the network is definitely up and running seems to fix this problem every time.

## Thursday, February 02, 2012

### What it means for GMail's web interface to use a different grammar for labeling and searching...

I have been having a hard time explaining this to the Google Apps support team. I originally contacted them because I had a lot of labels with leading special characters that I use to affect their sort order. For example, I have a "?Bulk" label grouped together with other "?Bulk/sublabels" (e.g., "?Bulk/Facebook"). The leading question mark prevents them from showing up in the middle of other labels I have that start with "B". Moreover, using leading special characters lets me put certain important labels at the top of my list where they are easy to see and access.

Now, the search bar at the top of the GMail web interface doesn't have much problem with this. It will match such labels regardless of whether I include the leading special character:

Note that it's not just finding partial matches in the middle of a label. If you drop the first alphanumeric character after the special characters, you get no matches:

Now, you would expect the "Move To" and "Copy To" quick searches to behave the same way. At first, it seems like they do. They'll do partial matches from the front of the label if you include the special character:

But if you drop the special character, you're doomed.

Pretty annoying, huh? See, "Move To" and "Copy To" are using some special grammar to extract information from the list of labels. Apparently this grammar is overly simple. Now, I might be able to live with that if it wasn't the case that GMail Search knows how to get labels right. In fact, Gmail Search can even handle nested labels with leading special characters. Check it out:

See? It was able to recognize that the "/" in big version of the label name separated parent from child label (which actually can be a problem if you're not intending to use nested labels). It then looks for matches at the start of the sublabel, which is in the middle of the big label shown. Pretty cool. Moreover, if you drop the leading alphanumeric character, the match fails:

Now, apparently "Move To" and "Copy To" have some of this matching behavior. That is, they'll properly chop the label into parent and child and look for matches in just the child part:

Unfortunately, you need the special character for the match to work:

So, again, for some reason GMail has developed the quick search for "Move To" and "Copy To" independently from GMail Search in general. Maybe this was an optimization, but it seems like it wouldn't be too slow to call out to GMail Search to find these labels. Then everything would be consistent.

Now, I tried explaining this to the Google Apps support team initially. You know what they told me? That "Gmail Search" doesn't do partial matches, and so it's the expected behavior. Can you believe they actually had the nerve to forward me to a GMail Search page when the real problem is that "Move To" and "Copy To" are in fact acting DIFFERENTLY than GMail Search? IF ONLY the issue was with GMail Search; I could live with that.

Well, Thunderbird gets it right. I guess that's a nice workaround.

## Monday, January 30, 2012

After much searching, buying, and evaluating, I'm convinced that the Sony SMP-N200 (or maybe the older SMP-N100 if you can find it) is probably the best streaming device you can buy. Well, it's at least the best value streaming device you can buy (under US$80). It does everything that a Roku device does plus a little more and is substantially cheaper when you compare apples to apples. The only thing you really lose is the ability to watch trailers in the Amazon Instant/Video-on-Demand application. However, trailers are available in basically every other movie app plus a Flixster application with plenty of trailers. For US$66.99 on Amazon (and US$69.99 on Best Buy) at the time of this post, you get: • HDMI output for full 1080p video and 5.1 channel audio • Optical audio output (if your receiver doesn't do HDMI audio) • Analog audio output (via RCA connectors) • Composite video output • Component video output • Wired ethernet support • Wireless 802.11b/g/n support built-in • USB port (videos, pictures, music) • DLNA client (and maybe server for that USB?) • HDMI wake-up (i.e., device turns on and off automatically based on HDMI signal; moreover, this behavior is configurable if you don't like it) • Very thin and simple remote control powered by a watch battery People say this remote is an improvement over the one that came with the old SMP-N100 model, but I disagree. For one, the "Home" button is too close to the down arrow. More importantly, the old remote control was quasi-universal in that you could program it to your TV and it would control your TV's volume, power, and video input. So I basically only need one remote with the SMP-N100 to do everything. • Android phone and tablet remote control apps • iOS remote control app • ...probably more that I overlooked because I personally didn't care With all of that hardware support, the device is great for a wide variety of home theater systems (e.g., with old TV's or old receivers). You can contrast this with the more expensive Roku that has an HDMI output and a composite output. Those people with older receivers and/or older TV's are not going to enjoy all of the advanced features of modern streaming content on a Roku. This is not as much the case with the Sony players. And the applications that come on board the Sony SMP-N200 include: For some reason, Amazon Instant/Video-on-Demand was not advertised anywhere on the box or on the Sony website like it used to be. However, the application still exists on the device. Despite it being the same application that is used to access Sony's own "Video Unlimited" service that supports movie trailers, the Amazon app has no trailer support. That's frustrating and makes me think that Sony has been given financial incentive to de-emphasize Amazon over its other providers. One of those providers includes Vudu, which is provided by the full-featured Vudu application you get on every other streaming device (minus the "Vudu apps" support you might see on a Blu-ray player). Regardless, if you're OK with getting your trailers elsewhere, this is a fine selection of applications. UPDATE: As of a recent software update on my Sony SMP-N100 (and so also likely on the Sony SMP-N200), trailers are available now in the Amazon VoD app. So it is much nicer now to browse for movies within the single app. And if that's piqued your interest, you should also take a look at the previous model, the Sony SMP-N100. It is nearly identical to the SMP-N100 except that it lacks support for a few providers, of which the only one you should care about is Vudu. It still has Netflix, Hulu Plus, Amazon Instant/Video-on-Demand (no trailers though), DLNA (which means PlayOn too), Crackle, YouTube (but no movie rental support), Pandora, and much more. However, it sells for at least US$20 less (so US$49.99 on Amazon (same price at Best Buy) at the time of this post) because the new version exists. So if you're looking for a nice streaming player for a good value, I think most people will point you at the Roku. However, the Sony players (both the SMP-N200 and SMP-N100) are cheaper and do more. The interface is not as clean and cozy as Roku though. Moreover, it might be annoying to you that you cannot play Amazon video trailers. However, trailers are available through lots of other services, and there's a lot of value to having them all on one device (as opposed to having, say, Vudu on your Blu-ray player and Amazon VOD on your Roku). ## Monday, January 23, 2012 ### Cloud Storage Referral Links (and tips on getting even more space) I like to accumulate cloud storage so I can have redundant backups of my files in easily accessible places all over the Internet. Below is a list of referral links to a few services that I've tried. In each case, activating an account via the referral link will bring both you and me a little extra space (if you need help linking them together, check out Otixo). All of these services have good Windows support, decent OS X support, and at least a hint of Linux support. Some of them are easier to activate using Windows than other platforms. • Dropbox, an old standard in could storage. The referral link gets you 2.25 GB of free storage to start with. Make sure you complete at least five of the steps under the "Getting Started" tab to get another 0.25GB. Also, for a limited time, you can use the "Camera Upload" feature of the Windows beta or the Android beta to get up to 5GB more free space (so 7.5 GB total!). Then you can get 0.25 GB more for every new person you refer to the service. • SpiderOak will give you 3 GB if you join via that link. However, during your account setup, you can then try the promo code worldbackupday to get an additional 3 GB so that you top off at 6 GB total of free storage for the life of the account. In case you already have a SpiderOak account and didn't know about the promotion code, you can still get the extra 3 GB. Just login to the SpiderOak website, click on the "add new space" (it might say "buy new space"), then click to "Change" your account, and then enter the worldbackupday promotion code. Assuming the promotion code hasn't expired, it all should work. SpiderOak is very similar to Dropbox and yet also very different. It encrypts your files locally so that SpiderOak employees don't even have access to your data. It also does the encryption in a way that ensures that files duplicated across your machines don't take up duplicate space. Plus, you can create encrypted shares where a subset of people have access to storage but no one else. Finally, SpiderOak allows you to select multiple folders to backup on your system rather than just keeping one "dropbox" in sync. You can use it like dropbox by selecting a single folder to be synchronized across your computers, but you don't have to. • Minus.com will give you something like 10.2 GB for clicking on that referral link. It's a relatively new service, and it has a nice on-line interface with plenty of mobile apps. It's easy to upload large files and distribute download links to people. You can mark entire folders as "Public" or "Private", and you can still share download links to private folders or even individual files inside private folders. Just be careful because the default access level is Public. You can change the default to Private in the settings on the web page. • Memopal is a little difficult to setup if you use a non-Windows system. In that case, follow the referral link and register your e-mail. Then follow the link corresponding to your operating system and follow the instructions. I think it will say you'll be getting 3 GB for free, but then you'll actually get 3.5 GB because you registered your e-mail as a referral. One plus of Memopal is that you can guy a whopping 200 GB for US$50/year, and that rate gets discounted as much as 60% if you purchase several years at once. Unfortunately, I didn't see an easy way to configure what Memopal backs up. I didn't play with it long, but it may just try and backup every bit of media it can find (and use as much CPU resources as it wants to do so).
• SugarSync gives you around 5 GB at that referral link. For non-Windows users, you should check your e-mail after going to that link and you'll find an e-mail verification link. That e-mail verification link will bring you to the standard login and a Dropbox-like web interface. Moreover, you can find additional software support there. You get extra space for completing tasks like installing the mobile app or going through the mobile app's demo "game" that leads you through sharing files from SugarSync.
• Box.net has no referral links. However, they often offer 50 GB promotions that upgrade your free storage from 5 GB to 50 GB just for logging in in a special way. For example, back in December, I logged into my Box.net account via someone else's iPad and then logged out. That's all it took for me to get 50 GB for the life of the account.
• SkyDrive is Microsoft's cloud storage offering. There are no referral links; everyone gets 25 GB of free space.
• Bitcasa is still in beta, and it won't have referral links because every user gets infinite storage. They use a dubious encryption scheme that prevents duplication across users so they can maximize on storage efficiency in their end while still keeping stuff encrypted.
If you're interested, Dropbox is usually my go-to service followed up by SpiderOak. I've configured SpiderOak to act just like Dropbox, except that SpiderOak is infinitely more secure than Dropbox. Consequently, a few sensitive documents I backup only to SpiderOak. If I ever need more space than I've accumulated at Dropbox or SpiderOak, I'll have to re-think things a bit. Oh, and I also pay for space at rsync.net; the cost for storage is not the cheapest, but it's affordable. More importantly, it's stored on UNIX machines (that support symlinks!) and can be accessed with rsync over ssh. That's worth it to me to pay a little extra. They have student discounts, by the way. If they do ask who referred you, tell them it was pavlic.3@osu.edu.

By the way, if you open up multiple such accounts and want a central place to manage all of your services, check out Otixo which can connect to each of your sharing sites and create shared workspaces bridges across storage boundaries.

## Friday, January 13, 2012

### Best Idea Ever: "Air Snail" to lock down MacBook Air with Kensington-style lock

UPDATE #2: More competition has come onto the market. Check out the Snake ~ Chicago Snake lock solution. It looks a lot less scary (in terms of potential scratching) than the others, like macBracket. It's \$20 and available from Amazon, where several pictures of how it works are shown. You can also find it at its home page.
UPDATE #1: It turns out this is not the only bracket available. As reviewed by MacGirl.net, there used to be a bracket sold on an eBay store that slid up through the MacBook Air. Unfortunately, not only was the locking portion in front of the screen, but it could slide around and scratch the device. Then came the macBracket out of Germany. The macBracket is pretty slick and looks like it is relatively gentle on the MacBook Air. It's a little pricey, but it's not like there's a lot of competition right now.

So if you need a good solution right now, check out the macBracket. Just make sure to order the correct version for your MacBook Air; they have support for new MacBook Airs (MBA). That new MBA bracket will be shipping soon (at the time of this posting), but it's available for order on their website.
I was surprised to hear that the MacBook Air has no Kensington lock slot. It's too small. Apparently, some of the PC ultrabooks also have this problem. Tablets have this problem, but it's easy to take tablets and phones with you... It's a little harder to carry the MacBook Air everywhere.

There are a ton of alarm solutions (like what you'd expect to see in a BestBuy) that rely on USB connectivity or adhesion or something similar. Those aren't really ideal. A lock is what is really needed. I've seen two locking solutions available for purchase, and both of them are a bit ugly.
• The first, from MacLocks.com is a protective case which attaches to the bottom of the MacBook Air with screws. The protective case includes a Kensington lock slot, and so your MacBook Air can be locked down so long as the potential thief doesn't carry around the right screw driver (some sort of security star head or something like that). I suppose they could have used those non-removable screws that only support a driver in the clockwise direction (like in many bathroom stalls), but then you'd be out of luck if you ever wanted to get the case off of your MacBook Air.
• The second, from JKLocks.com, has a few variations. I saw version RL108 on YouTube, but there are other versions on the company website. It uses 3M command strips to attach a Kensington lock slot to the back of the laptop. When the lock is connected, it covers the ends of the command strips so they cannot be removed. Of course, if you ever try to remove the command strips, you have to be very careful the metal base of the Kensington lock slot doesn't go scratching across the top of the laptop (!!).
So neither solution is really that good. But then I saw this YouTube video of the Air Snail, a prototype that was invented before either of those solutions were marketed (I think) and requires no screws or funny adhesives

That's genius! It is just an eared sickle that slides through the hole between the screen and the keyboard; the hinges and lock keep it from sliding out! Unfortunately, the inventor cannot find any partners willing to fabricate it in large quantities and market it. Sure, it would need to be built so it could be tough while not scratching the device (and would need to be fabricated for relatively cheap). However, I think those challenges are not insurmountable.

So do you have some dough laying around and want to market a great idea? If so, contact the inventor and start selling these things! Get them out before there are a lot of ultrabooks on the market -- I'm guessing there will be a demand for this little portable toy!

Meanwhile, you could probably fabricate something similar yourself (e.g., with some coated aircraft cable thin enough to slide through the MacBook Air). It might be hard to make it compatible with a Kensington lock without some fabrication, but you could surely make it compatible with a padlock.