April, 2011


28
Apr 11

TextExpander, iOS and Markdown, oh my

The iPad keyboard works quite well for general typing. Where it falls short is accessing the extended keys such as @, *, #, [ and alike. Forget trying to type a tab character on the standard iOS keyboard. It's not available in most applications. The tab requires a developer to implement a custom keyboard like Nebulous Notes (which is rare). Consequently, a user is required to tap the ".?123" key on either side of the space key to access most of the special keys. It's even worse if you need a square bracket or hash symbol. To access those keys you need to additionally tap the "#+=" key to access a third keyboard.

TextExpander Touch to the rescue

Many third party apps now support TextExpander Touch for snippet expansion. Great! I can use TE to expand all those Markdown characters from the standard iOS keyboard. After much experimentation, I developed a memorable, consistent and convenient set of TE snippets for Markdown on iOS keyboards. These snippets can all be accessed from the main iOS keyboard. Related snippets simply differ by the number of comma characters.

Snippet Definitions

In the definitions below "(space)" is meant to represent the space character. I wanted to highlight it specifically in this post because as with any language white space in Markdown is important to me. Additionally, the characters "%|" are specific to TextExpander. After expanding the snippet, the insertion cursor is paced at the position marked with "%|"

Shortcut Expansion MD Definition
,,h #(space)%|(space)# Heading 1
,,,h ##(space)%|(space)## Heading 2
,,,,h ###(space)%|(space)### Heading 3
,,u *(space) Unordered List
,,i *(space)%|(space)* Italic
,,b **(space)%|(space)** Bold
,,,i ***(space)%|(space)*** Bold Italic
,,d -(space) Unordered List
,,p +(space) Unordered List
,,q >(space) Block Quote
,,' ` Code format Backtick
,,r --------------------- Horizontal Rule
,,l [%|] Link
,,,l [%|]:(space) Definition Link
,,f [^%|] Footnote
,,,f [^%|]:(space) Footnote reference
,,g ![%|] Image Link
,,e \ Escape Char

Finally, I have two additional snippets for general use. I user the @ symbol to begin tags.

Shortcut Expansion
,,a @
,,t tab character

26
Apr 11

Corporate Honesty

This post is a bit of a departure, but bear with me since I think it has relevance to the Tech sector.

The WSJ is reporting on federal efforts to oust the CEO of Forest Labs after the company was found to be responsible for marketing violations (I’d rather not get into a discussion of the specifics or of Pharma in general. This is just an example). The efforts simply amount to barring the CEO from doing business with the Federal Government (i.e. Medicare, Medicaid and the VA). However, this is a groundbreaking move by the Feds.

Typically companies are penalized for bad behavior with simple (but large) fines. However, this is a minor deterrent for most companies, and specifically for most company executives. In the case of marketing violations, the pay-off for misrepresenting a product is so large that there is almost no fine that could deter the behavior. This is particularly the case in the world of pharmaceuticals.

By barring the CEO of a pharmaceutical company from doing business with the government, they are effectively shutting down the business until the CEO is gone. Essentially, this action lays responsibility for violations at the feet of the CEO. This is the way it should work. This is the way responsibility has worked all through your childhood and young adult years. Responsibility for your actions is part of the membership fee for living in a society.

I’d like to see this kind of responsibility spread to other industries. Wouldn’t it be great if you could trust advertising again. Imagine if a company was banned from TV advertising because they misrepresented the features of their tablet computer or the battery life of their laptop. I understand that the FTC has the authority to make this happen, but it rarely makes a difference. If a business can sell billions of dollars worth of junk before they are fined, then what is the deterrent. I’d guess that if the CEO had a vested interest in the penalties of bad behavior, then honesty might actually become a corporate goal. No one is perfect. Everybody makes bad decisions sometimes. For the majority of us, market forces keep us honest.


24
Apr 11

Weekly Instapaper

I’m including a new class of post today. Here is a view into my weekly Instapaper Liked articles. They are wide ranging topics and some slant more political than this site. If you are not an Instapaper user then this is the only way to follow my Liked articles. But seriously, just signup of an account. Better yet, buy a premium account and support a wonderful service.


24
Apr 11

Winning Without Competing

By now, it has become fairly obvious that the latest round of iPad competition has made little impact on the public mindshare that Apple occupies. One thing that I have heard repeatedly from Apple supporters is that Apple needs competition to push their products. I have generally taken this for granted, but I have now changed my opinion.

Looking over the Apple product line, it is evident that they are only competing with themselves. From the Macintosh computer, to the iPod to the iPad, Apple has not chased competitors in their designs but rather iterated over a long term design plan. The closest early iPod competitors were the Rio player and the Creative Labs devices. Both companies went with large format players with a litany of features. The iPod remained true to the design until the iPod touch merged the line with the iPhone design. The iPod stayed simple and perfected a basic feature set and did not chase the competition.

The same can be argued for the current iPhone development. Apple started with a specific vision and has not deviated significantly from the original trajectory. The iPhone is a four button piece of hardware (home, power, mute, volume) that relies on a touch interface. Apple has not added additional “features” to compete. Instead of talking about how the iPhone competes with Android specifications, Apple has changed the conversation. Rather than increasing the screen size, Apple increased the resolution. They didn’t add a 3D camera. They added a high quality digital camera that rivals many point-and-shoots. They didn’t push out an LTE device, they increased the battery life instead.

The same story is playing out with the iPad. Apple is ignoring their competition and following their own agenda. There is no 7” iPad. There is a faster iPad 2. Again, they chose to improve the core feature set: speed, battery life and graphics performance. Apple is playing a different game than everyone else. Apple wins by not competing and they don’t need competition to push them to make their products better. They have vision for that.

Note: I am only referring to the Apple before and after Sculley, Spindler and Amelio. The Jobs Apple.


23
Apr 11

Doctor of Social Imagineering

A recent post by Marco Arment perfectly frames a problem I see with technology workers: artificial titles intended to divert attention. What exactly is a Social Media Expert? I also see the titles Journalist, Engineer and Knowledge Worker thrown around rather freely. This isn’t directed at particular individuals are careers. There are many people that are actually experts in the technology field. However, there must be some minimum level of investment or achievement otherwise the titles are meaningless.

One thing that I have learned is that the majority of people that have hard-earned titles rarely use them. I hold a Ph.D. and I have never asked to be called doctor and only rarely include the title in communications. It just feels awkward. It feels like demanding respect and attention that I have not earned. I don’t begrudge someone that has earned a title from using it. What I begrudge are fake titles that are leveraged in an attempt disguise an issue or portray expertise.

Here’s my rule: If anyone can self-assign the title, then it is not a real title. You can not self-designate titles like Professor, Doctor, Attorney or even Nurse. Those are earned titles that mean something.


21
Apr 11

Data Privacy and Dropbox

There has been a bit of excitement over the Dropbox security standards and controls. This is nothing new, but it might be a slow news week.  Dropbox has responded with a lengthy blog post. Most of their arguments make sense to me. For example, they must decrypt user objects if they are to be available through the web application:

“The reason is many of the most popular Dropbox features — like accessing your files from the website, creating file previews, and sharing files with other people — would either not be possible or would be much more cumbersome without this capability.”

I’m not one to make the Schmidt-y argument about data privacy but I would remind folks that if you put something out on the web without manually encrypting it, then you are not securing your data. As I have pointed out several times, I encrypt all of my confidential data in DMG files BEFORE uploading to Dropbox or placing on an FTP server. It adds a few limitations and requires significantly more bandwidth, but it provides significant piece of mind and is just good practice.


21
Apr 11

A Use Case For Bluetooth: The Sony DRCBT30 Review

I purchased the Sony DRC-BT30 Bluetooth Headphone Adapter about a month ago from Amazon. After a month of heavy use I thought I’d share my experience with it. Be warned, it’s an unsatisfactory ending.

BT30

Why?

I listen to podcasts and music all day. My sole music player is my iPhone 4. I generally switch between a couple different headphones based on the working conditions. If I am stationary for awhile and need to concentrate, I will wear my Beyerdynamic DT 770 headphones. These are closed cup headphones that provide fantastic sound isolation and superb audio quality. They are also pretty large. The rest of the time, I use the apple headphones that came with the iPhone. Well, actually, I am on my third pair since I seem to destroy these things in the most bizarre ways. I also use my iPhone for occasional phone calls. Crazy, right?

The problem with both of these headphones is that they are tethered to an expensive piece of glass encased circuit boards. Several times a week the headphone cord will catch on something and violently rip the headphones off my ears or drop the iPhone to the floor. So I did the math and it seemed worth a modest expense to purchase a bluetooth transmitter for my headphones.

What?

I have not been a fan of Sony products for quite some time. The last high quality Sony product I owned was a Discman 350 from the 1990’s. Since then, Sony devices have not held much allure for me. After reading numerous reviews it became obvious that the options for good Bluetooth adapters would lead down the Sony path. I eventually settled on the Sony BT30 Bluetooth adapter.

Quality

As I anticipated, the build quality of the BT30 is less than impressive. It is entirely plastic. The prototypical shiny black plastic. The buttons are mushy and feel fragile. Accessing the mini USB connection requires a finger nail and a fair amount of force.

Usage

This is where I make all of my complaints moot. The BT30 changes my usage of my iPhone. For example, I would rarely listen to music while I worked around the house. This was learned behavior from accidentally yanking my iPhone out of my pocket after catching the headphone cord on a bush or some other nefarious environmental hazard. The difference in sound quality for MP3 or AAC files is imperceptible to me. I have not experienced interference or random un-pairing that I have with other unnamed bluetooth audio connectors.

Phone calls are as clear as with the Apple iPhone headphones. I have no complaints from the other end of the call either. The mic seems to be a bit more sensitive to wind or external noise. Perhaps this is a result of the greater microphone distance from the mouth. After all, the Apple mic is typically just an inch or two from the mouth.

Controlling the audio playback can be a little hit-and-miss. Since the buttons are imprecise, several times a week I will inadvertently forward tracks when I intended to pause playback. However, the buttons are responsive. I have had problems with other Bluetooth devices not immediately responding to button presses. This is not a problem with the BT30

Finally, the battery life is not impressive, but usable. I typically get about 8 hours of continuous use over a day. I have not done exhaustive battery life testing but I can say that I have not been limited in my use of the device. Fortunately, recharging is very fast. Typically, a recharge for an hour or two gets me through the rest of a long day.

Conclusion

Sadly, Sony has discontinued this product as well as the slightly cheaper BT15. They do not list a replacement product but the BT30 and BT15 are still available through Amazon (see links above). I highly recommend grabbing one while they are still shipping. It’s unfortunate that this is the end of the product line because this is one area where Sony is over achieving and filling a need.

Notes

While I have an Amazon associates account, I chose not to include those links in the body of the review. I do not want to give the impression that the review was written to generate revenue. If I ever decide I need the additional support, it will be done outside of a review post.


20
Apr 11

Markdown Bullets

If you write in Markdown then you are well acquainted with the idea of alternative convenience tags. For example, creating links in-line or by reference. You can also create headings with just leading hash symbols (‘#’) or by enclosing the text in matching hashes. One convenience option I regularly take advantage of is the un-ordered list tag. In Markdown, both the asterisk (‘*’) and the dash (‘-’) symbols can be used for indicating un-ordered list items.

Previously, I alternated between asterisks and dashes to provide a bit more readability to the text. For example

* Get a life

    - Leave the house more

    - Shower more frequently

    - Rethink the codpeice as a fashion statement

* Business Plan

    - The 7 minute abs

    - The 10 minute work week

    - Macrame codpeices

* Profit

However, I found that the asterisks cause issues for importing these lists into a small variety of applications on the Mac and Windows. Rather than troubleshoot and remember which apps support asterisk list bullets, I’ve decided to stick with the dash pre-pended lists. So now my agenda looks like this:

- Get a life

    - Leave the house more

    - Shower more frequently

    - Rethink the codpeice as a fashion statement

- Business Plan

    - The 7 minute abs

    - The 10 minute work week

    - Macrame codpeices

- Profit

19
Apr 11

Old School Passion

I’m a scientist by training. A chemist, to be specific. While I am no longer a practitioner of the craft, I will always be tied to the romanticism and mythology of the endeavor. Sadly, the romanticism is giving way to a new reality. William Lipscomb passed away last week and I think this tribute is fitting. You can sum up the old traditions of chemistry in this single quote: “You can see the fire in his eyes.”

With many endeavors, the more money is a factor, the less passion will be. William Lipscomb is from a time before multi-million dollar grants or academic licensing (as always R.B. Woodward was the exception).

Lipscomb was from a time when science was a vocation and not an occupation.


14
Apr 11

Noah Glass

Heart wrenching.

via Scripting News


14
Apr 11

Responsible Serving

In light of the last post, I think it’s my responsibility to highlight some important points about securing a Mac Server. These are also just good ideas for any computer.

  1. Turn on your firewall. It’s easy and it works.
  2. Check your router port forwarding. Make sure you know where your incoming traffic is going. Specifically, if you do not forward your incoming HTTP connections, then your router is accessible from the Internet. This may be what you want, but for me, that is out of the question.
  3. Check your open ports. Just visit Gibson Research’s ShieldsUP! test site. If you do not understand the results, then you are not ready to run a home server. It shouldn’t take long to familiarize yourself with what the various ports are used for.
  4. Check your logs. Open the Console (in the Utilities folder) and check the following logs periodically: appfirewall.log, apache2 error_log, ftp.log. Better still, is to invest in Little Snitch. It’s by the makers of LaunchBar so you know it’s good. Little Snitch can be configured to alert you of almost any unusual activity. I have it on all of my Macs.
  5. Change your passwords regularly. I keep a monthly task to reset all of my critical passwords. It’s annoying but it’s worth it. Make a list of all of the services that you may have given access to your personal confidential information. Now change those passwords every 30 days. That includes PayPal, Amazon, Netflix, and Apple. Your bank account may be drained from these entry points the same as your banking Web site. For example, a miscreant could “gift” $2000 of Apple gift cards to an accomplice and then sell the cards for profit. It’s much less likely a hacker will target your bank since the security is generally much greater than your Netflix account.
  6. Use strong passwords. Don’t use your birthday or name. Don’t use anything that could be discovered in public records, like your dog’s name. Use non-sense gibberish. See #6.
  7. Use 1Password. This is self explanatory. Just buy it.
  8. Secure your most private data outside of the file system. I secure all of my financial and personal information in encrypted disk images (DMG). These can be accessed directly from the file system but I prefer to use Knox from the makers of 1Password. It’s simple and always works. It also gives me direct access to the disk images through my menu bar. I have not had any problems keeping large encrypted disk images in Dropbox either. The only downside is that a small change to the encrypted disk means the entire image must be resynced through Dropbox. It’s a small price to pay for high security.

 


13
Apr 11

More Dropbox Fun (FTP Access)

Tinkering

Dropbox is incredibly useful and I enjoy extending it’s utility whenever I can. I also enjoy choosing projects that will teach me something new about my Mac. My latest project was to provide SFTP access to my Dropbox account. For security reasons, I am not allowed to install Dropbox at work. I considered several options for direct access to my files (email, webdav) but FTP is the most simple and universal access I could develop.

The Mac Mini Setup

There are many advantages to having an always on local server. In particular, it means the various Apple TV’s in the house always have a movie library available without having to go to another room and start a computer. It also means I can tinker with server projects locally with a Mac rather than strangling myself with a remote unix server on Amazon or my web host.

To create a Internet accessible Mac server you will need to make some minor changes to your Mac and your broadband router.

Open the System Sharing Preferences and turn on Remote Login. I limit access to a single user account for a bit of added security. I’m the only one that needs to access the server, so this works fine for me.

SharingControl.png

 

Open the Network Preferences and locate your IP address.

networkControl.png

The Router

Connect to your broadband router and locate the Port Forwarding configuration settings. This will be different for every router. The main point is that this needs to be configured at the router that connects your home to the Internet. If you have additional routers between your computer and the broadband router, you may need to enable additional settings. My Mac Mini is directly connected to my router through a LAN.

Configure the SSH port forwarding on the router to go to your Mac Mini IP address. The SSH port is generally set as port 22.

While you are in your router’s admin portal, write down the IP address of your router. This WILL NOT start with “192.168″ but rather will be a unique IP address that your ISP is providing to your router. You will need this for the next step of this tutorial.

portForward.png

The Secret Sauce

Getting to your Mac Server on your local LAN is easy. Getting to it over the Internet is a bit more complicated but there is a very easy way to enable a DNS alias to your home Mac.

Go over to DynDNS and sign-up for a free account. From within your free account you can configure up to TWO new hosts. Importantly, you can choose host addresses that are memorable, rather than 10 digit IP address. For example, “myawesomeserver.dyndns.org.” I use the “Host with IP address” option. This is where you will enter the IP address of your broadband router. Once complete, you should have a static IP address that now maps back to your Mac server at home. The only problem is, when your ISP changes your home IP address, everything will break.

DynDNS has a nice solution to help resolve this issue. Go to the DynDNS Update Client page and download the Mac Updater. Install this on your Mac Server and enter your account credentials. That’s about it. Make sure this application always starts up with the server. Now when your local IP address changes, the DynDNS Updater will notify the name server of the new address.

dynDNSControl.png

 

Finally, install Dropbox on your Mac Server.

Connecting

There are several options for connecting to your new server. SSH terminal connections give you direct access to the shell of the Mac. This is quite powerful. Unless you are accustom to using the terminal on your Mac, I do not recommend experimenting from a remote location. However, SFTP is a fairly safe way to access files on your Mac Server.

On windows, I use Filezilla for SFTP. It’s far from the quality available on the Mac with Transmit, but it is free and simple to use. From within Filezilla, create a new server connection using the DynDNS host name you set up. Provide the user credentials that are defined for the Mac Remote Login settings. Finally make sure to use port 22 (which you mapped in the router settings). This port is generally reserved for SFTP connections.

That should be all you need to connect to your Mac. Now you can navigate to your Dropbox directory and manipulate files until your heart is content.

Voilà, Dropbox FTP access.

References

These are links I found useful or interesting while building this service.

http://www.macinstruct.com/node/152
http://www.maclife.com/article/howtos/how_build_your_own_online_cloud
http://www1.maclife.com/article/howtos/how_enable_ssh_your_mac
http://www.dyndnscommunity.com/questions/3849/mac-osx-snow-leopard-bt-homehub-2-and-ftp-server.html


13
Apr 11

Shepard's Prayer

Words to live by.

Also, it was only 50 years ago a man went into space. I’m not even sure the last shuttle launch was mentioned on a major network news cast. We are desensitized to some pretty amazing things. What will our kids have to dream about when nothing is impressive?


12
Apr 11

Working For Money

Things that cost me money*

Things that cost me peace of mind*

*These lists may not be mutually exclusive. Nothing is free.

 

EDIT: I forgot about the terrific Instapaper service


11
Apr 11

Indev Sale Today

Indev makes some ridiculously useful software. I own licenses for them all. Today MacZOT! is having a bundle sale that includes all of the email tools that Indev makes. You’re not going to find a better deal on some great Mail.app plugins.