{"id":3402,"date":"2011-04-25T00:00:00","date_gmt":"2011-04-24T22:00:00","guid":{"rendered":"http:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/"},"modified":"2011-04-25T00:00:00","modified_gmt":"2011-04-24T22:00:00","slug":"use-sensible-defaults-when-building-a-web-mobile-or-desktop-application","status":"publish","type":"post","link":"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/","title":{"rendered":"Use sensible defaults when building a web, mobile or desktop application"},"content":{"rendered":"

While working on migrating “gomore.dk”, a Danish ridesharing service, to Rails 3, I figured it would make sense to look into the existing database to figure out if I could add some sensible defaults when creating e.g. new rides. The site already contains a decent database so I figured it would be rather easy to measure which defaults to use.<\/p>\n

As an initial example, I would like to know how many seats were shared on each trip and therefore I did a simple query as shown below:<\/p>\n

\"Number<\/p>\n

From this, it is pretty obvious that I should use “3” as a default number of seats available. In this case, some common sense would probably give you the same result (four seats in a standard car minus one for the driver).<\/p>\n

Same type of query can be used to figure out the most popular seat price:<\/p>\n

\"Default<\/p>\n

It is even possible to remove<\/em> options if you look into providing sensible defaults for your users. As in this case where the existing gomore.dk contains a checkbox for specifying if car is “smoking” or “non smoking” area. A query showed me<\/p>\n

\"Smoking<\/p>\n

i.e. we really don’t need to have users decide on this .. more than 95% of all rides are non-smoking rides so the rest should either write it in a comment field or edit the ride afterwards to mark is specifically as “smoking”. So in this case we just removed an option from our wizard to avoid clutter. Lovely.<\/p>\n

The examples above should go for all defaults .. also stuff your marketing department would like to decide e.g. when a user creates an account and have to uncheck instead of check a “Subscribe to our daily, fancy, not-to-miss newsletter” box. Focus on pleasing your users by pre-selecting choices they probably are<\/em> going to make themselves … follow the “don’t make me think” principle! It makes users happy and allow them to complete a task faster.<\/p>\n

Using sensible defaults goes for any type of application you are creating being for web, mobile or desktop.<\/p>\n","protected":false},"excerpt":{"rendered":"

While working on migrating “gomore.dk”, a Danish ridesharing service, to Rails 3, I figured it would make sense to look into the existing database to figure out if I could add some sensible defaults when creating e.g. new rides. The site already contains a decent database so I figured it would be rather easy to … Continue reading Use sensible defaults when building a web, mobile or desktop application<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"amp_status":"","spay_email":"","jetpack_publicize_message":""},"categories":[1],"tags":[],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"yoast_head":"\nUse sensible defaults when building a web, mobile or desktop application • Peter Theill Site<\/title>\n<meta name=\"robots\" content=\"index, follow\" \/>\n<meta name=\"googlebot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta name=\"bingbot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Use sensible defaults when building a web, mobile or desktop application • Peter Theill Site\" \/>\n<meta property=\"og:description\" content=\"While working on migrating “gomore.dk”, a Danish ridesharing service, to Rails 3, I figured it would make sense to look into the existing database to figure out if I could add some sensible defaults when creating e.g. new rides. The site already contains a decent database so I figured it would be rather easy to … Continue reading Use sensible defaults when building a web, mobile or desktop application\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/\" \/>\n<meta property=\"og:site_name\" content=\"Peter Theill Site\" \/>\n<meta property=\"article:published_time\" content=\"2011-04-24T22:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i2.wp.com\/www.theill.com\/stuff\/screenshots\/gomore-number-of-seats-per-ride-20110424-090916.png?w=660\" \/>\n<meta name=\"twitter:card\" content=\"summary\" \/>\n<meta name=\"twitter:creator\" content=\"@theill\" \/>\n<meta name=\"twitter:site\" content=\"@theill\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.theill.com\/#website\",\"url\":\"https:\/\/www.theill.com\/\",\"name\":\"Peter Theill Site\",\"description\":\"What\\u2019s going on in the personal life of Peter Theill\",\"publisher\":{\"@id\":\"https:\/\/www.theill.com\/#\/schema\/person\/d65d009363af2cc0a150b55dc20fa301\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/www.theill.com\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/i2.wp.com\/www.theill.com\/stuff\/screenshots\/gomore-number-of-seats-per-ride-20110424-090916.png?w=660\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#webpage\",\"url\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/\",\"name\":\"Use sensible defaults when building a web, mobile or desktop application • Peter Theill Site\",\"isPartOf\":{\"@id\":\"https:\/\/www.theill.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#primaryimage\"},\"datePublished\":\"2011-04-24T22:00:00+00:00\",\"dateModified\":\"2011-04-24T22:00:00+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/\"]}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#webpage\"},\"author\":{\"@id\":\"https:\/\/www.theill.com\/#\/schema\/person\/d65d009363af2cc0a150b55dc20fa301\"},\"headline\":\"Use sensible defaults when building a web, mobile or desktop application\",\"datePublished\":\"2011-04-24T22:00:00+00:00\",\"dateModified\":\"2011-04-24T22:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#webpage\"},\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.theill.com\/#\/schema\/person\/d65d009363af2cc0a150b55dc20fa301\"},\"image\":{\"@id\":\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#primaryimage\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.theill.com\/blog\/2011\/04\/25\/use-sensible-defaults-when-building-a-web-mobile-or-desktop-application\/#respond\"]}]},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.theill.com\/#\/schema\/person\/d65d009363af2cc0a150b55dc20fa301\",\"name\":\"Peter\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.theill.com\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f4f96a08152550e603ee595403f3ba57?s=96&d=retro&r=g\",\"caption\":\"Peter\"},\"logo\":{\"@id\":\"https:\/\/www.theill.com\/#personlogo\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","jetpack_shortlink":"https:\/\/wp.me\/p8TYI1-SS","jetpack-related-posts":[{"id":3089,"url":"https:\/\/www.theill.com\/blog\/2018\/08\/14\/ns-usage-description-default-values\/","url_meta":{"origin":3402,"position":0},"title":"Sensible NS*UsageDescription values","date":"August 14, 2018","format":false,"excerpt":"While working on Familio I regular have to add new usage descriptions in our Info.plist. These usage descriptions are required when asking for various kinds of permission. I've collected my list of default usage descriptions which others might find useful as a sensible default. <key>NSBluetoothPeripheralUsageDescription<\/key><string>By allowing access to Bluetooth, we\u2026","rel":"","context":"In "familio"","img":{"alt_text":"","src":"https:\/\/i2.wp.com\/www.theill.com\/wp-content\/uploads\/2018\/08\/chris-lawton-154388-unsplash.jpg?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3396,"url":"https:\/\/www.theill.com\/blog\/2013\/07\/07\/tweak-appcode-font-aliasing-on-your-mac\/","url_meta":{"origin":3402,"position":1},"title":"Tweak AppCode font aliasing on your mac","date":"July 7, 2013","format":false,"excerpt":"If you can\u2019t use your beloved Monaco font in AppCode because it has gained weight and simply looks too bold, you might want to trim your anti-aliasing settings. Try running this in your terminal $ defaults write com.jetbrains.AppCode.plist AppleFontSmoothing -int 1 Left one is updated and right one is original\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3414,"url":"https:\/\/www.theill.com\/blog\/2010\/01\/27\/facebook-css-for-will_paginate-gem\/","url_meta":{"origin":3402,"position":2},"title":"Facebook CSS for will_paginate gem","date":"January 27, 2010","format":false,"excerpt":"Today I needed to add pagination to my Danish beta application for handling your accounting called Hurtigmoms. Since I'm developing in Rails it was a logically choice to use \u201cwill_paginate\u201d to support pagination. Our prototype layout is using a Facebook header and so I wanted my pagination control to mimic\u2026","rel":"","context":"In "development"","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3395,"url":"https:\/\/www.theill.com\/blog\/2013\/08\/14\/immediately-flush-iis-log-for-real-time-tail-to-avoid-60-second-buffer-delay\/","url_meta":{"origin":3402,"position":3},"title":"Immediately flush IIS log for real time tail to avoid 60 second buffer delay","date":"August 14, 2013","format":false,"excerpt":"I wanted to tail my IIS log in realtime to avoid having to wait 60 seconds as is the default on IIS 7. I found out that I could run the command > netsh http flush logbuffer This is great but I wanted to do a tail so this short\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3415,"url":"https:\/\/www.theill.com\/blog\/2009\/04\/03\/tracking-coffee-intake-with-touchatag-and-lifestyleapps\/","url_meta":{"origin":3402,"position":4},"title":"Tracking coffee intake with touchatag and Lifestyleapps","date":"April 3, 2009","format":false,"excerpt":"I have bought a touchatag RFID reader and a couple of touchatag RFID tags and was wondering how I could use these to track my daily intake in lifestyleapps. I noticed a Twitter application already has been developed which post a message from a configured account. Since lifestyleapps already integrate\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3410,"url":"https:\/\/www.theill.com\/blog\/2010\/08\/18\/upgraded-shoutsms-from-rails-2-3-8-to-rails-3-in-five-minutes\/","url_meta":{"origin":3402,"position":5},"title":"Upgraded ShoutSMS from Rails 2.3.8 to Rails 3 in five minutes","date":"August 18, 2010","format":false,"excerpt":"Today I wanted to try how easy it would be to upgrade our existing ShoutSMS (pretty small) rails application from 2.3.8 to latest Rails 3 release candidate (currently rc3). Without taking our test suite into consideration it took around five minutes with help from the official rails_upgrade[1] plugin. This is\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"amp_validity":null,"_links":{"self":[{"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/posts\/3402"}],"collection":[{"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/comments?post=3402"}],"version-history":[{"count":0,"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/posts\/3402\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/media?parent=3402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/categories?post=3402"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.theill.com\/wp-json\/wp\/v2\/tags?post=3402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}