tantek.com

t

  1. Who took 2012? Any doubt it was PSY? Fave mashup vimeo.com/54526179 #wham #gangnamstyle via @thisismyjam / @gridinoc

  2. Hey F.A.A., drop your pseudo-science about using devices on takeoff/landing. It's hurting people: http://bits.blogs.nytimes.com/2012/12/30/f-a-a-rules-make-electronic-devices-on-planes-dangerous/

  3. In Praise of Checkie: the Minimal Foursquare iOS Client That Could, Can, And Does

    If you use Foursquare on an iOS device, I highly recommend trying out the Checkie iOS app. It's an incredibly minimal and efficient interface for checking into Foursquare.

    Though I'm a big fan of the numerous innovations that Foursquare has made, the user efficiency of Foursquare's fundamental check-in feature has been steadily deteriorating since the days we could simply send a text message to Dodgeball.

    Foursquare: 5+ steps with waiting to check-in

    Now it takes several steps check-in with Foursquare:

    1. Launch Foursquare
    2. Tap the "Check-in" button
    3. Wait for network response
    4. Spend time reading/scrolling to find the venue you want
      • if you don't find it, search and wait for network response again
    5. Tap a venue in the list
    6. Wait for network response to fill in information
    7. Tap the "Check In Here" button
    8. Consider entering a message (and/or photo)
    9. Tap the "Check In" button

    On the other hand...

    Checkie: 2 steps to check-in

    With Checkie, it's two steps:

    1. Launch Checkie - it lists the venues from the last time you used it (in easily readable nicely sized black on white Helvetica to boot), so if you're nearby, it's easy to immediately find your new venue. Or if you wait a few seconds it will quickly and automatically refresh the list.
    2. Tap a venue to immediately check-in

    That's it, you're done. Power-button-lock your device and put it away, no need to wait to see the UI update, though it eventually does, showing you the number of points you got for that checkin. You can also optionally tap-and-hold a venue in the list, and Checkie will take you to a second screen where you can add a message to the check-in.

    Mobile UI = focused, task-oriented, minimal

    Minimizing the number of steps it takes to check-in is super-critical for an application like Foursquare, where you're typically out and about, and want to spend very little time interacting with your device before putting it away. I wrote most of this recommendation to use Checkie as a comment on Edd Dumhill's Google+ post where he lamented: "I never have time [to check-in] when I'm somewhere interesting." Edd's observation is spot-on. Mobile UI design must be focused task-oriented in order to be cheap enough in terms of time/attention cost to be worth using. Get in, minimal steps to do the task, get out. All the "distract me looking through a seemingly endless stream of random unrelated things" features should be buried or secondary at most.

    Toward IndieWeb Checkins

    I find Checkie not just useful, but inspiring. If a third party client can provide a better check-in experience than Foursquare itself, then perhaps by adopting such designs we can provide a better IndieWeb check-in experience. Such an IndieWeb check-in interface would first post a check-in to your own site (perhaps privately or with limited access), and then syndicate it out to Foursquare (and potentially other check-in sites) so you could keep in touch with friends still in the silos. The best part: Checkie is on github.

    Bottom line: if you have an iOS device and use Foursquare, get Checkie, use it, be inspired, build something similarly minimal and useful for your own site. Hat-tip to Edward O'Connor for showing me Checkie earlier this year (who then hat-tipped Ben Ward for telling him about Checkie).

    Additional Reading

    Previously

  4. How to Disable Java Now in Chrome, Firefox, Opera, and Safari

    It's the end of another year and holiday season, and thus a good time to help make sure those you visit have Java disabled on their browsers in order to reduce the chances they'll get exploited. Originally posted in 2010, here are the instructions (with few changes) to turn off Java in Chrome, Firefox, Opera, and Safari.

    Disable Java in Chrome

    • There is no direct UI in Chrome. You have to:
    • Go to chrome://plugins (if clicking that link doesn't work, copy/paste it into a new tab)
    • Scroll down to Java ...
    • Click the blue underlined Disable text link there
    • Consider disabling Flash and others too

    Disable Java in Firefox

    • From the Tools menu, choose Add-ons
    • Click Plugins on the left
    • Scroll down the list til you see Java Plug-in ...
    • Click the ( Disable ) button on the far right
    • You should see (disabled) immediately to the right of the Plugin name.
    • Consider disabling Shockwave Flash and others too
    • Close the Add-ons window

    Disable Java in Opera

    • Go to opera:config#Java|Enabled (if clicking that link doesn't work, copy/paste it into a new tab)
    • Uncheck the Enabled [ ] checkbox if any
    • Click [ Save ]
    • Click ( OK ) to dismiss the dropdown sheet
    • Choose Quit Opera from the Opera menu
    • Relaunch Opera
    • Go to opera:plugins (if clicking that link doesn't work, copy/paste it into a new tab)
    • Click the blue Disable text button to the right of where it says "Java Applet Plug-in..."
    • Or simply uncheck [ ] Enable plug-ins at the top to disable Java, Flash, others in one click
    • Close the tab/window

    Thanks for the update ‏@rchl2k!

    Disable Java in Safari and WebKit nightlies

    • From the Safari menu, choose Preferences...
    • Click the Security (with lock icon) in the top row
    • Uncheck [ ] Enable Java
    • Close the Preferences window (titled Security at this point)

    Bonus: Disable Java in Camino

    • From the Camino menu, choose Preferences...
    • Click Web Features (with globe/switch icon) in the top row
    • Uncheck [ ] Enable Java
    • Close the Preferences window (titled Web Features at this point)

    Performance boost: disable Flash

    Disabling Java will not only increase security (by avoiding all the above-mentioned Java vulnerabilities) but it will increase performance as well because your browser won't waste any network time downloading Java applets, nor will it waste any CPU time running them.

    Disabling Flash, though it has fewer vulnerabilities than Java, will likely cause sites to load faster, since much more network/CPU is wasted by all the Flash ads that sites have these days. I disable Flash everywhere but Safari and run ClickToFlash (the 1.6b9 beta works fine) to selectively run Flash on video sites like Hulu and YouTube.

    Additional Reading

    More on the subject of Java (and Flash) vulnerabilities, additional sets of disabling instructions, etc.

  5. Fellow appreciators of LEGO, Star Wars, and especially Star Wars LEGO, check out @brickpicker and http://usatoday.com/story/money/business/2012/12/27/lego-investors-profit/1732525/

  6. downloaded Twitter archive (see: indiewebcamp.com/Twitter#Download_all_your_tweets) Embarrassed by 2008. I would now unfollow my 2008 Twitter self.

  7. FYI printable asciibet: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

  8. new personal nerd trick for 2013: memorizing the printable asciibet (0x21-0x7E), and respective Helvetica letterforms.

  9. Grateful for good friends, old and new.

  10. Create and share things that are useful even if you're the only person who ever uses them. #indieweb ht: @ade_oshineye

  11. Now live on an episode of "The Web Behind" on @thewebahead show with @jensimmons @meyerweb audio: http://5by5.tv/live

  12. Why you should say HTML classes, CSS class selectors, or CSS pseudo-classes, but not CSS classes

    Search the web for "CSS classes" and you'll find numerous well intentioned references which are imprecise at best, and misleading or incorrect at worst. There are no such things as "CSS classes". Here's why you should refer to HTML classes, CSS class selectors, or even CSS pseudo-classes, but not "CSS classes".

    Terminology Summary Table

    Wondering what to call "classes" and don't care why? Here's a handy table of examples and terms.

    the thing what to call it
    class="h-card vcard" class attribute, HTML class attribute
    h-card vcard classes, class names, HTML classes / class names, or class attribute value
    h-card class, class name, or HTML class (name)
    .h-card class selector, or CSS class selector
    :active pseudo-class, pseudo-class selector, or CSS pseudo-class (selector) - except for :first-letter, :first-line, :before, :after
    ::first-letter pseudo-element, pseudo-element selector, or CSS pseudo-element (selector)

    Why "CSS classes" is imprecise or incorrect

    There's no such thing as a CSS "class". Optimistically what may be happening is that people who say "CSS class" are using it as an imprecise shorthand for "CSS class selector". However, in articles / conversation I've seen / heard that's not the case. They're incorrectly referring to the "class" itself, just the class name, e.g. "h-card" in the above table/examples.

    Both "h-card" and "vcard" are just "classes" or "class names" (as well as being root class names for the h-card / hCard microformats). If you need to be explicit that you're talking about web technologies, prefix the phrases with "HTML", e.g. "HTML class(es)" or "HTML class name(s)".

    Why saying "CSS classes" is bad practice

    This isn't just pedanticism. By using the phrases "CSS class(es)" or "CSS class name(s)" you're not only being imprecise (or just plain wrong), you're tying the presentational context/framing of "CSS" to class names which implies and even encourages the bad practice of using presentational class names.

    Why saying "HTML classes" is good practice

    In conversations, discussions, and especially when teaching workshops, it's better to be consistent about calling them "HTML class(es)" because that more accurately refers to their effects on structure and semantics. It's upon that structure and those semantics that we can then write whatever CSS rules we need to achieve the design of the day/week/month (which inevitable gets changed/tweaked far more often than the underlying markup / classes).

    Hat-tip to Jonathan Neal, who asked about a "css naming convention guide" in a certain Freenode CSS related IRC channel, to which I answered text similar to the above and then decided I should blog it for reference. Oh, about class naming conventions: a big part of where microformats came from was the desire to come up with naming conventions for common components/chunks/modules in pages like people, organizations, events, reviews, etc. Want to explore more such class naming conventions? Join us in IRC: Freenode: #microformats, or if you're in the San Francisco Bay Area, come by the microformats meetup & drinkup tonight (Facebook, Google+, Plancast).

  13. Every time I chat with @brianoberkirch I seem to spew a blog post (into IM). He knows how to push my buttons.

  14. 1982-2012: 62 mass murders in 30 US states; 75+% legal guns; 72% semiauto/assault guns. data+map: motherjones.com/politics/2012/07/mass-shootings-map

  15. President @BarackObama's statement: youtu.be/mIA0W69U2_Y It's time: krugman.blogs.nytimes.com/2012/12/15/whistling-past-the-gun-lobby

  16. How I learned to stop worrying and love the main element: http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-December/038328.html cc: @BrendanEich @stevefaulkner #html5

  17. Flynn Effect: IQs up each gen +3/10y http://scientificamerican.com/article.cfm?id=will-we-keep-getting-smarter-flynn-effect-says-yes Kids, bring it GameCenter:tantek.com. More: http://www.nytimes.com/2012/12/13/opinion/kristof-its-a-smart-smart-smart-world.html and "Principia Cybernetica" circa 2000: http://pespmc1.vub.ac.be/FLYNNEFF.html via http://bits.blogs.nytimes.com/2012/12/12/eric-schmidt-how-we-outrace-the-robots/

  18. yesterday: bicycled, low-impact swing danced, drove. today: long stride fast walking. recovering/regaining motions daily.

  19. walking (even fast-walking) normally again, thanks to dad's ice calf and raise leg recommendations. will try a hike tomorrow.

  20. liking iMessage on my iPod 5 touch. simple focused UI, no distractions to wade thru unlike Twitter's UI to get to DMs.

  21. yoga, stretch, walk, jog to warm up beforehand, still tore my right calf during a sprint. runner friends, got tips?

  22. thus begins the darkest month of the year for us northern hemisphereans. should we burn twice as bright to compensate?

  23. then there's this (WARNING: upsetting images+story): http://www.dailymail.co.uk/news/article-2238577/Maria-Santos-Gorrostieta-executed-surviving-assassination-attempts.html via @escapist, keeping it real. Real scary.

  24. if I was the kind of person that emoted on Twitter, today would have been such a day, with the exception of a nice lunch.

  25. web host switched from Apache to LiteSpeed, which errantly treats "DefaultType text/html" as "send text/plain". anyone else?

  26. am fan of and benefit from doing yoga almost daily. If you're into it as well, please be careful: nytimes.com/2012/01/08/magazine/how-yoga-can-wreck-your-body.html

  27. appreciating simple design of @instagram web profiles (e.g. instagram.com/tantek). bonus: rel=me #microformats support

  28. writing up steps learned in 2.5 months of swing dance lessons, haven't found taxonomy nor state diagrams. suggestions?

  29. nephew1 took off, finished 5k in 27.3min! I dropped almost 4min from Sunday, set personal 5k record: 32:40.2; 10:31/mi

  30. Happy Thanksgiving everyone! Running my first "Turkey Trot" 5k run this morning with dad, sister, and nephew1.

  31. ran @awesome80srun 5k in 36:24.2 (~11:43min/mi) in @karenism's Team Pink Jellies. https://pic.twitter.com/TWQafxUh photos: https://pbs.twimg.com/media/A8AMfoRCEAElW7T.jpg:large?x=.jpg Team Pink Jellies: @shaylakristy @karenism @t @Timoni @juicysanchez @vnaylon. Naturally I wore my Threadless "My Other Ride Is a Light Cycle" TRON hoodie: http://distilleryimage7.s3.amazonaws.com/0ecd6c5c31b411e2b10e1231380f24b0_7.jpg instagram.com/p/SLqVDSg9Rb threadless.com/product/2281/My_Other_Ride_Is_a_Light_Cycle and ended up with runner's bib #1 thanks to the registration website's UTF8 mishandling of the Ç in my name and errantly sorting me alphabetically at the top before the As. After crossing the finish line, we received finishing medals in the shape of a cassette tape, had the opportunity to sit in a DeLorean with cosmetic flux capacitor, and rock out to the tunes of 80s cover band "Fast Times": http://distilleryimage0.s3.amazonaws.com/f506817431a311e2b7ab22000a1f90e7_7.jpg instagram.com/p/SLdI6Rg9Tg singing Van Halen's "Jump!" and other popular 80s hits. http://distilleryimage5.s3.amazonaws.com/0cab1a9231a911e2a5cd22000a1fb0b0_7.jpg instagram.com/p/SLhT5WA9Xx/ Finally, here's Timoni triumphantly crossing the finish line after running the 10k. Congrats to all finishers! Let's do this again next year. Update: The 5k race route for reference: mapmyrun.com/routes/fullscreen/152262985

  32. The sky has cleared up for this morning's @awesome80srun in Golden Gate Park. Heading over to run the 5k.

  33. #indieweb software should be easy to install/update/revert portably across web hosting services. cc @maxwellsalz #MVRM

  34. https://devcenter.heroku.com/articles/multiple-environments too Heroku-specific; 12factor.net too heavyweight. want: MVRM minimum viable release management

  35. Why I distrust updates: whether iOS or OSS, they're too hard to revert. It's my device/server, it should be my choice.

  36. agree with @dakami https://twitter.com/dakami/status/266459300480811008. Also, release updates should be easy to apply and easy to revert.

  37. Final 2012 San Francisco Election Flyer Statistics

    I documented A Few San Francisco Election Flyer Statistics. Here is an update of what I've received since and final totals.

    Flyers after 2012-10-21

    After I received the following flyers for specific propositions and candidates:

    And the following flyers from committees, groups, coalitions advocating for (y) or against (n) propositions and candidates:

    • 2 Small Business Action Committee - advocating: 30n, 32y, 40y
    • 1 Sierra Club Voter Guide - advocating: 31n, 32n, 37y, 39y, Cy, Mark Leno, Phil Ting, Tom Ammiano, John Rizzo
    • 1 Election Digest / Coalition For Literacy Newsletter - advocating:30y, 32n, 33y, 37n, 38n, 39y, Obama, Feinstein, Klivans

    Flyer Totals

    With the above flyers included, here are the updated flyer totals for various issues and candidates, with the winners highlighted in green and rejected propositions in red. Results are from SFDOE Results and California General Election | California Secretary of State.

    Committees, Groups, Coalitions

    A number of flyers were from various groups that advocated for (or against) particular propositions and/or candidates. It made the most sense to list those flyers separately by group. In alphabetical order:

    • 2 Budget Watchdogs (re: 30-37, 39)
    • 1 Election Digest / Coalition For Literacy Newsletter - advocating: 30y, 33y, 39y, Obama, Feinstein, Klivans
    • 1 San Francisco Firefighters (re: 30, 32, A-E, F, supervisors, state senate/assembly)
    • 1 Sierra Club Voter Guide (37y, 39y, Cy, Mark Leno, Phil Ting, Tom Ammiano, John Rizzo)
    • 4 Small Business Action Committee (32y, 40y). One flyer had the URL "readityourself.org" which is apparently about Packard Humanities Institute and doesn't mention Small Business Action Committee at all.

    California Propositions Flyers

    Flyers primarily about specific California (CA) state propositions:

    Most California propositions failed. 5 out of 11 passed. It's not clear whether their outcomes had any relation to flyers distributed.

    San Francisco Propositions Flyers

    Flyers primarily about specific SF city propositions:

    All San Francisco propositions passed except for F (draining the Hetch Hetchy Reservoir and identifying replacement water and power sources) for which there were no flyers. However, it's not clear that the flyers had anything to do with the results - the one that failed was seemingly obviously not in the best interest of any San Francisco resident.

    SF School Boards

    Flyers for school and community board positions:

    • 2 Matt Haney for school board
    • 1 Chris Jackson for Community College Board
    • 2 Hanna Leung for Community College Board (No URL)

    SF District 5 Supervisor Flyers

    Sorted by family-name:

    *I received a doublesided doorhanger with London Breed on one side and Thea Selby on the other, and thus decided to count it as half a flyer for each.

    If we look at the number of votes each candidate received, there is a rough ordered correlation with fliers sent. The top 5 vote receiving candidates were the 5 candidates that sent out flyers, and only in the case of incumbent Christina Olague vs. John Rizzo did a candidate who sent fewer flyers receive more votes - perhaps due to an incumbent advantage factor.

    Sorted by votes received:

    candidate votes flyers v/f
    LONDON BREED8821 11.5 767
    CHRISTINA OLAGUE (I) 6203 5 1241
    JOHN RIZZO 5130 5 1026
    JULIAN DAVIS 4786 3 1595
    THEA SELBY 4287 2.5 1715

    London Breed sent out more than twice as many flyers as next most spammy candidate, and she won the election. It's not clear how much (if at all) the number of flyers helped her win, or if the number of flyers merely reflected some other factor (e.g. amount of campaign funding raised) that helped get more votes.

    Now to recycle all those flyers. I might first see if it is possible to arrange all the flyers on the floor and take a photo of all of them. Will post a follow-up if that works out.

    I expect there are more interesting ways to present some of this data. If you'd like to do anything with these statistics, please help yourself as I'm licensing this entire blog post and the research contained therein with the Creative Commons Attribution 3.0 license.

    Update : While recycling/shredding some old junk mail I found a couple more old flyers (one for London Breed and one for Christina Olague) and have added them to the totals accordingly.

  38. took swing lesson from Lindy legend Chazz Young; created Wikipedia article. Please help expand it https://en.wikipedia.org/wiki/Chazz_Young

  39. OH at #sciencehackday: I'm still waiting for that rock polisher I asked for in '98. And power tools. #thatswhatshesaid