June 2, 2011

Re-examining Dropbox and its alternatives

By Woody Leonhard

Recent revelations about privacy concerns with Dropbox have led many people — including me — to think about changing my practices regarding online file-storage and -synchronization providers.

If you use Dropbox or some other cloud storage and sync program, let me explain what you do — and don't — need to be concerned about. And what you can do to sleep better at night.

Michael Lasky wrote about Dropbox in his October 28, 2010, Top Story, Dropbox: File synching and sharing made easy. Dropbox lets you drag and drop files into a special folder on your Windows desktop. The dropped files then magically appear on all other PCs, laptops, phones, and iPads that use the Dropbox service and are set up to share the folder you have. It has good password-based security and fine file-sharing options.

We here at Windows Secrets use Dropbox all the time, both as individuals and as a group. As Michael said, "Every once in a while some product — or service in this case — comes along that we soon find we can't live without. Dropbox, an online file-backup, -sharing, and -synchronization service, fits that category."

I personally like Dropbox so much I recommended it in my January 27 Top Story, Seven simple steps for setting up Windows 7.

That's why I was very concerned when reports started surfacing a few weeks ago about possible privacy problems with Dropbox.

Setting up Dropbox from a privacy point of view

To understand the problems that have caused all the concern, you need to understand how Dropbox works.

When you sign up for Dropbox, you supply a user name and password and then install the application. As long as you're connected to the Internet, the files you drag into the local Dropbox folder magically appear on all PCs, laptops, phones, and iPads that also have Dropbox installed and are attached to the same Dropbox account. The files also appear online when you sign into the Dropbox site and specify the same user name and password.

The first time you set up Dropbox on a new machine (PC, Mac, phone, tablet), you have to specify the user name and password for your account. (Currently, you can have multiple Dropbox accounts, but you can use only one at a time — you have to sign out of one account before signing into another.) After that, Dropbox remembers the sign-in details, and it's click-and-drag easy for you to store files in the cloud. Dropbox automatically synchronizes the contents of the Dropbox folder on all of the machines using the same account.

Dropbox has a lot of smarts. For example, it won't store the same file twice. If you drop a picture of your summer vacation into your Dropbox folder and your brother drops the same picture into his Dropbox folder, Dropbox recognizes the duplication — it uploads and stores the file only once. Even if you and your brother have completely different user names and passwords and work with completely different folders, Dropbox is smart enough to refrain from storing the same file twice.

Moreover, if you make a small change to a big file and then drag the updated file into your Dropbox folder, Dropbox is smart enough to just synchronize the deltas — it identifies the parts of the file that have changed and uploads only those changed parts. That can save you a lot of time and bother with sluggish upload speeds. It also saves bandwidth and storage on the Dropbox servers. Slick.

Other people can't get into your Dropbox unless you give them your account's user name and password. (You can set up Public folders with Dropbox, which — as the name implies — are accessible to anyone with the right URL. But you have to specifically designate a folder as Public.)

When you move from one device (computer, phone, tablet, etc.) to another, or you have more than one Dropbox folder set up on your computer, you have to supply the correct user name and password on each device to get at the data. (Or you can sign in to the Dropbox website with the correct user name and password.)

So only people with the user name and password can see the data, right? Well, no — and that's the source of the privacy problem.

Dropbox privacy called into question

Until a month ago, the Dropbox FAQ said, "All files stored on Dropbox servers are encrypted (AES-256) and are inaccessible without your account password."

But as he reported in his April 12 blog, security researcher Christopher Soghoian put two and two together and came to a rather disconcerting conclusion: the only way Dropbox could deduplicate files or store the deltas is if the Dropbox system can get at the contents of your files. At least on the surface, that contradicts the assurance that your files "are inaccessible without your account password."

The Dropbox help site also stated a month ago, "Dropbox employees aren't able to access user files, and when troubleshooting an account, they only have access to file metadata (file names, file sizes, etc. — not the file contents)." As it turns out, that isn't exactly true, according to Soghoian's blog.

I don't want to leave you with the impression that Dropbox was trying to hide the fact that it could (and can) look at the contents of your files (for example, in response to a legal warrant). A Dropbox representative, Drew H., stated publicly in a three-year-old Dropbox forum post that company employees were authorized to look at stored content such as file names — but not file contents. Dropbox encrypts the data before it's stored, but the encryption is done with Dropbox's own keys, and those keys are maintained by Dropbox. When required, people at Dropbox can get at the keys and decrypt your data; but that process is tightly controlled, as described in the "Compliance with laws and law enforcement requests; protection of Dropbox's rights" section on the company's Privacy Policy p! age.

Soghoian posted his analysis on April 12; shortly after, several Dropbox website statements on privacy and security changed. On April 21, the folks at Dropbox posted a clarification of their terms of service. "We felt our old TOS language was too broad and gave Dropbox rights that we didn't even want. We wish we had explained this when we made the change, but unfortunately we didn't and we're sorry if these changes have raised concerns about our commitment to keeping your stuff private." Again, it's important to note that Dropbox has always clearly stated that it maintains keys for unlocking all of the data: that's in the company blog and has been for years.

The blog goes on to describe situations in which Dropbox will divulge your data, under the new Terms of Service: "We may disclose to parties outside Dropbox files stored in your Dropbox and information about you that we collect when we have a good-faith belief that disclosure is reasonably necessary to (a) comply with a law, regulation or compulsory legal request; (b) protect the safety of any person from death or serious bodily injury; (c) prevent fraud or abuse of Dropbox or its users; or (d) protect Dropbox's property rights." You can see the full statement on Dropbox's Privacy Policy page.

You may find those terms chilling, but Dropbox does make a compelling argument in its favor by comparing its Privacy Policy with those of Apple, Google, Skype, and Twitter. Apple and Google store data online and have similarly broad-reaching policies. Skype and Twitter aren't quite so broad, fitting the nature of their service.

Soghoian has since filed a 16-page complaint with the U.S. Federal Trade Commission, alleging deceptive trade practices and unfair competition. He argues with some authority that Dropbox has an unfair advantage over competing cloud file-sharing services by maintaining its own keys (which allows its programs and employees access to your data). He further argues that Dropbox is misrepresenting the strength of its security and that its inferior security practices allow it to operate at a lower cost than its competitors.

What should — or can — you do about it?

I don't have any secrets worth sweating about, and I bet you don't either. But it's disconcerting nonetheless to know that specific Dropbox employees, no doubt following strict company guidelines, can see all of the data in my Dropbox folders. I'm also more than a little concerned about recent massive data breaches, where data and keys on other sites — such as Epsilon, Sony, Honda, Netflix, DSLReports, SecurID, Gawker, WordPress, iTunes, and many more — have fallen into bad-guy hands. Dropbox may follow the best security practices in the world, but that still doesn't make the company or its employees impervious to the rewards of data harvesting. And who's to say the keys can't be swiped as well?

Depending on your level of security comfort (or paranoia), you have four possible choices if you want to synchronize data in the cloud:

You can use Dropbox, realizing that the staff of Dropbox has the capability to read your data and send it to duly constituted authorities in some jurisdiction or another. If you understand the situation and it doesn't bother you, more power to ya!

You can encrypt your data before Dropbox gets it. The people at Dropbox recommend TrueCrypt, which runs on Windows, Mac OS X, and Linux. In general, all you have to do is put a TrueCrypt-encrypted file inside your Dropbox folder and change one setting on the TrueCrypt file. Dropbox has a forum thread that describes the approach and some of its problems. Suffice it to say that most people find it works easily. The major downside? It doesn't work on mobile devices, and file uploads and downloads might take longer.

You can use one of the integrated Dropbox third-party routines that perform encryption and decryption. At this moment, SecretSync and BoxCryptor are the best-known representatives of the genre. Both work with the Dropbox API and allow you to encrypt and decrypt the data with your own keys. Dropbox still encrypts the files (a second time), but should the occasion ever arise where Dropbox or some nefarious person uses the Dropbox key, the resulting file will still be scrambled — and you're the only one with the key. Users report varying degrees of success with BoxCryptor on Mac OS X and Linux. SecretSync support for Mac and Linux is "coming soon." There's no mobile support for this technology, either.

Or, you can drop Dropbox altogether. SpiderOak offers similar services, free, without the centrally maintained encryption keys: you encrypt the data with your key — and only you have the key. Bad guys can steal everything in SpiderOak, and they still can't crack your files. With SpiderOak, you create your password on your own computer — not through a Web form received by SpiderOak servers. According to a SpiderOak FAQ, "When you create a SpiderOak account, the setup process happens on your computer (after you download the application), and there your password is used in combination with a strong key derivation function to create your outer layer encryption keys. Your password is never stored as part of the data sent to Spide! rOak servers." In fact, SpiderOak's support staff has no ability to reset your password — you are completely responsible for its safekeeping. SpiderOak works on Windows, Mac OS X, and Linux but not on mobile devices.

SpiderOak even offers an open license, which allows your company or organization to set up its own SpiderOak operation. The administrator can see each account's name and contact information as well as the amount of data stored — and that's it. There are no keys floating around and no way for admins to look at the data. SpiderOak calls it "zero-knowledge privacy."

So whether the Dropbox privacy news elicits a yawn or seems dire (or at least sobering), you now know its limitations and you have alternatives.

Permalink • Print • Comment

10 mistakes to avoid when designing Access objects

June 1, 2011, 6:28 AM PDT

Takeaway: There are lots of false assumptions floating around the world of Access development. Susan Harkins has rounded up some of the worst object design mistakes that developers make — and offers a best practice to counter each one.

When you develop an Access application, normalizing your data and creating relationships is just the beginning. The next step is adding the UI objects that users will interact with and the queries that will populate those objects. There isn’t a set of rules, like normalization rules, to guide you during this stage. It’s easy to make assumptions that will haunt you sooner or later… usually both. The following are 10 assumptions you shouldn’t make when adding queries, forms, and reports to your database application.

1: Object names don’t really matter

Object names indicate the object’s purpose and often provide an easy way to organize objects in a logical manner. Object names can also help a developer work a bit more efficiently. A descriptive name, such as Employees, is adequate for users. But it doesn’t help the developer much. Some developers use a prefix or tag to identify objects by type. This practice can come in handy during programming. For example, you can easily cycle through collections and find all subforms by checking the name property for an appropriate prefix or tag. The details are up to you; I don’t advocate a one-size-fits-all convention. Find one that helps you work efficiently and apply it consistently.

2: Tables are for storing data, period

Tables are an interface used to display data, but there’s more to them than data. Field properties, such as data type and field size, help you maintain data integrity. An input mask provides a pattern for data input, and a default value can reduce input. Indexing the appropriate fields will help performance. Even the field description, which many developers ignore, is helpful. Access displays the description text in the status bar, providing a helpful hint to users. Setting the Required property to Yes eliminates the need to deal with null values (although null values are acceptable values). In addition, forms and reports inherit these attributes and properties. That means you can set them once at the table level instead of repeatedly throughout all your UI objects.

3: You can just replicate your paper forms

Paper forms are for paper — not your Access forms. Trying to replicate paper forms in Access might work, and it might not. You could end up making a lot of extra work for yourself. Let the data and the process dictate form design.

4: You need just one big form

Access will let you build a form that’s 22 inches wide, but how are you going to display it? Too much of a good thing is a nuisance. When designing forms, break processes down into small tasks and use forms to perform them. Don’t try to use one form to do it all. The larger the form, the slower it will perform, and it’s sure to overwhelm the users.

5: Wizards produce reports you can use as-is

Access wizards are pretty slick. Most of them will save you time, prevent errors, and produce an acceptable object. Unfortunately, the results of the report wizards are ugly. These wizards provide a nice start, but if you distribute one of these reports without some serious tweaks, you’ll look incompetent. Just don’t do it.

6: Wizards creates subforms, so go ahead and use them

If you run a form wizard on a multi-table query, the wizard will most likely generate a main/subform arrangement to display related data. The arrangement is sound, but controls load faster than subforms. Often, list controls are a better choice for displaying related data than subforms. Don’t settle.

7: Users don’t need to know what’s going on

One of the most grievous mistakes developers can make is to ignore the user. Impatient users are apt to do things they shouldn’t. When they don’t know what else to do, they press [Esc], [Enter], [F1], and even [Ctrl][Alt][Delete] — oops! Give users some kind of visual feedback. Let them know that a task has been successfully completed (or not). If the latter, tell them what they need to do to continue. When users need to wait for a task to complete, show them a simple meter or status message. Don’t leave them hanging.

8: Basing forms and reports on a table is just fine

Base your forms, subforms, reports, and subreports on queries rather than tables. You can easily restrict queries to return just the fields and records you really need to populate the object. In addition, you can easily adjust the underlying query to adapt to changing requirements.

9: Users should ignore empty reports

Don’t display empty reports. Users will assume something’s wrong. It might not occur to them that there’s just no data to report. Use the report object’s NoData event procedure to display an explanatory message and cancel the report as follows:

Private Sub Report_NoData(Cancel As Integer)     MsgBox "The report has no data.", vbOKOnly + vbInformation     Cancel = True End Sub

10: You’ll remember what you did

Sure you will. Anytime you strategize and choose between possible solutions, consider documenting that decision. You don’t have to write a book; most of what you do is self-explanatory. If you’re writing code, you can add a few comments, but there’s no such vehicle for objects. Consider adding an invisible text control (visible in Design view only) with a short explanation — at least leave the next guy a few breadcrumbs. (That next guy might be you!)

Additional resources

Permalink • Print • Comment

10 add-ins that make Outlook easier to use

May 26, 2011, 8:00 AM PDT

Takeaway: If you can’t do something in Outlook, chances are there’s an add-in that can. Susan Harkins lists some handy add-ins that close a few feature gaps.

Outlook is a winner in the add-in department, with so many good ones available. Of course, not all add-ins deliver on their promises — and some slow down an already performance-challenged program. But there are plenty of Outlook add-ins that expand functionality or enhance existing features. Here are 10 of my favorites.

 

1: RecoverMyEmail

Outlook is a great management tool, but it’s prone to corruption errors. Usually, a corrupt PST file is the culprit, and the result is lost information. If you’re lucky, Microsoft’s pst repair tool can recover everything. But in my experience, it doesn’t.

 

RecoverMyEmail can repair a broken PST (and DBX) file and recover emails. Figure A shows the add-in at work; the process can take a while. This add-in can also undelete email after you’ve emptied your Deleted Items folder. It’s easy to implement and use. Unfortunately, it won’t recover or undelete anything but email items. You’ll have to look elsewhere for help recovering contacts and calendar items.

Click Open Email File to start the recovery process.
  • Windows 2000, XP, 2003, and Vista
  • Outlook 2000, 2002, 2003, and 2007 (and Outlook Express)
  • $99.95
  • Free trial

2: E-mail Follow-up

Outlook lets you assign a reminder when you send email and then adds the reminder to your To-do list. If you need more (like me), try E-mail Follow-up. This add-in lets you set a response time when you send an email, as shown in Figure B. If the recipient doesn’t respond within the allotted time, the add-in will remind you that you’re still waiting on a response.

 

Set a response time and let E-mail Follow-up do the remembering for you.
  • Windows 2000, XP, 2003, Vista, and 7
  • Outlook 2000, XP, 2003, 2007, and 2010
  • $24 (single user) up to $1200 (for 100 users)
  • Free trial

3: Lookeen

Despite improvements in Outlook’s search features, many users are still turning to Lookeen. It quickly finds Outlook items, email, contacts, appointments, and so on, that contain your search string. Even attachments are searched. Results are easy to work with and provide an additional management tool for previewing, moving, and deleting.

 

Type in the search string and Lookeen finds every item that contains that string.
  • Windows XP, Vista, and 7
  • Outlook 2003, 2007, and 2010
  • $39.80 (single user) with volume discount
  • Free trial

4: Xobni

It happens to all of us: I know John changed the meeting time after Mary said she couldn’t make it… but you can’t find the message with the new time. And when you finally find it, you realize that John’s assistant, and not John, responded with the new time. Xobni works alongside your mail window to display recent conversations, exchanged files (Figure D), and related emails from people in the copy line. You can also view statistics and graphs that will tell you about your email habits.

 

View people and attached files related to a specific email.
  • Windows XP, Vista, and 7
  • Outlook 2003, 2007, and 2010
  • $7.99 a month
  • Free trial

5: SimplyFile

Despite my best efforts, my Inbox stays crowded. I can drag messages to categorized folders, but I have many folders and I’m good at dropping messages into the wrong folder. SimplyFile does what Outlook does, but a bit more efficiently. After a little training (SimplyFile, not you), a single click to the SimplyFile group, shown in Figure E, will move messages. As you use this add-in, its ability to choose the right folder improves. (This add-in doesn’t support Google Docs and has known issues with Gmail.)

 

With SimplyFile, filing is a single click away.
  • Windows XP, Vista, and 7
  • Outlook 2003, 2007, and 2010
  • $49.95
  • Free trial

6: Email Scheduler

Outlook offers a bare-bones scheduling feature. You specify a day and time, and Outlook won’t send the message before the allotted time. If you’re scheduling messages frequently, you’ll probably want more options. Email Scheduler fully automates scheduling delayed messages and sending messages. You can attach files and even whole folders. Although this is a handy add-in, be sure to check its restrictions before purchasing — it doesn’t work with Outlook Express or Exchange Client.

  • Windows 2000, XP, 2003, Vista, and 7
  • Outlook 2000, XP, 2003, and 2007
  • $24 (single user) up to $1200 (100 users)
  • Free trial

7: Sent Item Organizer

Occasionally, I run into an add-in that doesn’t add functionality, it just lets me do what I want to do more efficiently. Sent Item Organizer lets your organize your sent messages by filing them in specific folders. This add-in is more flexible than Outlook’s built-in rules. You can use keywords or email addresses to trigger the move. This add-in is also good for users who need more control but are unfamiliar with Outlook features.

  • Windows XP, Vista, and 7
  • Outlook 2000, XP, 2003, 2007, and 2010
  • $29.95
  • Free trial

8: Easy2Add

The coolest stuff comes sometimes comes in the smallest package. Easy2Add displays a small icon in your task tray. When you want to add a new item to Outlook, click the icon and enter the item. That’s all you see, but behind the scenes, it creates a new item in Outlook even if Outlook is closed. Want to add a quick lunch meeting? You don’t have to launch Outlook and wait for all those add-ins to load — just use Easy2Add, enter the details (Figure F), and you’re done. You’ll have to follow a few rules about the text you enter, but they’re simple. (Note: The documentation doesn’t list Outlook 2010, but so far, so good; just keep that in mind if you use it with 2010.)

 

Enter item details without launching Outlook.
  • Windows XP and Vista
  • Outlook 2002, 2003, and 2007
  • Free

9: PocketKnife Peek

PocketKnife Peek lets you view HTML messages in plain text without the potential danger of executing a malicious script. After installing this add-in, you’ll find a Peek button on the standard toolbar in Outlook 2000 through 2007. In Outlook 2010, it’s on the Add-In tab. Select the email item and click Peek. Figure G shows an issue of the Office For Mere Mortals newsletter in plain text. (No, I wasn’t really worried about the newsletter. OfMM has been around for ages and is clean and informative!

 

Click the tabs to view an HTML email in plain text.
  • Windows XP, Vista, and 7
  • Outlook 2000, XP, 2003, 2007, and 2010
  • Free

10: SMS

Microsoft’s SMS add-in lets you send SMS text messages through most mobile phones. In addition, you can save a draft, send to groups, print the SMS, and forward a message as SMS or email. You can lookup contacts and use Spellcheck. Connect your mobile phone via Infrared, Bluetooth, or even a USB cable and you’re ready to go.

  • Windows Server 2003, XP, Vista
  • Outlook 2003 and 2007
  • Free
Permalink • Print • Comment

Nine guidelines for writing effective email messages

May 26, 2011, 11:02 AM PDT

Takeaway: If you want people to pay more attention to your email, perhaps you should pay more attention to your email!

In elementary school, we learned how to compose a business letter by including the date, a return address, a greeting, and so on. Those rules still serve us well for letters. Unfortunately, there are no such guidelines for email.

We want recipients of our email to treat our message seriously, yet we often give little thought to the message we send, because it’s quick and easy, at least from a technical perspective. It’s up to us to apply common sense and good taste to the messages we send. Here are a few guidelines you might find helpful, whether you’re using Outlook, Outlook Express, or a web client:

  • Keep it brief: I never make it through a long email. I find myself scanning, and I miss important details. You’re not writing a book or a love letter, you’re sharing information. Share the information and move on. If you write more than two or three paragraphs, a face-to-face meeting or conference call might be better.
  • Include a succinct subject: Long subject lines are as bad as no subject at all. Pinpoint a few keywords that convey the email’s purpose.
  • Check your spelling and grammar: Your email client has tools for checking your spelling and grammar so use them. Many people are sensitive to misspelled words and poor grammar. They see it as a lack of concern. If you don’t care, why should they?
  • Don’t use emoticons and acronyms: Emoticons and acronyms are fine for personal email, but don’t use them in your professional correspondence.
  • Don’t use ALL CAPS: ALL CAPS is the email equivalent of angry shouting. You wouldn’t use ALL CAPS in a professional letter, so don’t use them in email.
  • Limit copies: Only copy those who absolutely need to be in the loop. Otherwise, colleagues will start ignoring your email.
  • Greet your recipients: Use a short greeting to acknowledge your reader; include their name if you can.
  • Include a closing: Let the reader know you’re done by including a complimentary closing and signature.
  • Retain the thread: When responding to an email, include previous messages and add your response to the top. That way, the recipient is privy to all the information that you already have.

In short, show some courtesy and don’t take your reader for granted.

Permalink • Print • Comment
Made with WordPress and Semiologic • Sky Gold skin by Denis de Bernardy