Saturday, July 31, 2010

Your time is limited…

Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. Don’t let the noise of other’s opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.
        -– Steve Jobs

Start each day anew

Finish each day and be done with it. You have done what you could. Some blunders and absurdities no doubt crept in; forget them as soon as you can. Tomorrow is a new day; begin it well and serenely and with too high a spirit to be encumbered with your old nonsense.
        -– Ralph Waldo Emerson

Anyone can give up…

Live each day like it’s your last

Rise of the Literature Machines

In the midst of the Internet excitement over the meme “I Write Like,” (does it really work? What’s the algorithm? Why does everyone end up writing like Stephen King?), the literary blog “The Valve” pointed to a another fun combination of computers and literature.
For his “Auto Summarize” project, the graphic designer Jason Huff took the one hundred most downloaded copyright-free books and reduced them each by ten sentences with Microsoft Word 2008’s AutoSummarize function. The result is absurd and also quite funny.
I had never used the auto-summarize function before, and I was surprised at how strangely astute some of its readings were. Take this abbreviated history of coffee:
Is there really anything else?
The past year or so has brought a few technological reworkings of great books. Sarah Schmelling transposed classics into Facebook pages (her "Hamlet" newsfeed can be read here). Emmett Rensin and Alexander Aciman, both students at the University of Chicago, did the same with Twitter. For me, the humor in this kind of retelling always comes from hearing a recognizable tale in a modern, clipped voice. I like how Hamlet becomes “a fan of daggers” on Facebook and takes the time to tweet “Uncle just confessed to Dad’s murder.” The projects always come with an ominous undertone, though. Is this how the students of the future will read Shakespeare?
So it seems like a natural extension of the idea to rework the classics so that they are not just mediated by technology but completely transformed by it. I wonder what the next step is. Hamlet: the iPad app? Books consumable by implanting a computer chip?

Ghosts now officially exist, thanks to Sergey Larenkov's computational rephotography

Photographer Sergey Larenkov uses computational rephotography (as shown above and explained here by Wired) to overlay extant WWII-era photographs on their corresponding modern settings. The results are both spooky and stunning:
The shots really do have to be seen large, so check out Larenkov's LJ page for the rest of 'em.
via gizmodo

Friday, July 30, 2010

100 Best Novels

  1. ATLAS SHRUGGED by Ayn Rand
  3. BATTLEFIELD EARTH by L. Ron Hubbard
  4. THE LORD OF THE RINGS by J.R.R. Tolkien
  5. TO KILL A MOCKINGBIRD by Harper Lee
  6. 1984 by George Orwell
  7. ANTHEM by Ayn Rand
  8. WE THE LIVING by Ayn Rand
  9. MISSION EARTH by L. Ron Hubbard
  10. FEAR by L. Ron Hubbard
  11. ULYSSES by James Joyce
  12. CATCH-22 by Joseph Heller
  13. THE GREAT GATSBY by F. Scott Fitzgerald
  14. DUNE by Frank Herbert
  15. THE MOON IS A HARSH MISTRESS by Robert Heinlein
  16. STRANGER IN A STRANGE LAND by Robert Heinlein
  17. A TOWN LIKE ALICE by Nevil Shute
  18. BRAVE NEW WORLD by Aldous Huxley
  19. THE CATCHER IN THE RYE by J.D. Salinger
  20. ANIMAL FARM by George Orwell
  21. GRAVITY'S RAINBOW by Thomas Pynchon
  22. THE GRAPES OF WRATH by John Steinbeck
  23. SLAUGHTERHOUSE FIVE by Kurt Vonnegut
  24. GONE WITH THE WIND by Margaret Mitchell
  25. LORD OF THE FLIES by William Golding
  26. SHANE by Jack Schaefer
  28. A PRAYER FOR OWEN MEANY by John Irving
  29. THE STAND by Stephen King
  31. BELOVED by Toni Morrison
  32. THE WORM OUROBOROS by E.R. Eddison
  33. THE SOUND AND THE FURY by William Faulkner
  34. LOLITA by Vladimir Nabokov
  35. MOONHEART by Charles de Lint
  36. ABSALOM, ABSALOM! by William Faulkner
  37. OF HUMAN BONDAGE by W. Somerset Maugham
  38. WISE BLOOD by Flannery O'Connor
  39. UNDER THE VOLCANO by Malcolm Lowry
  40. FIFTH BUSINESS by Robertson Davies
  41. SOMEPLACE TO BE FLYING by Charles de Lint
  42. ON THE ROAD by Jack Kerouac
  43. HEART OF DARKNESS by Joseph Conrad
  44. YARROW by Charles de Lint
  46. ONE LONELY NIGHT by Mickey Spillane
  47. MEMORY AND DREAM by Charles de Lint
  48. TO THE LIGHTHOUSE by Virginia Woolf
  49. THE MOVIEGOER by Walker Percy
  50. TRADER by Charles de Lint
  52. THE HEART IS A LONELY HUNTER by Carson McCullers
  53. THE HANDMAID'S TALE by Margaret Atwood
  54. BLOOD MERIDIAN by Cormac McCarthy
  55. A CLOCKWORK ORANGE by Anthony Burgess
  56. ON THE BEACH by Nevil Shute
  58. GREENMANTLE by Charles de Lint
  59. ENDER'S GAME by Orson Scott Card
  60. THE LITTLE COUNTRY by Charles de Lint
  61. THE RECOGNITIONS by William Gaddis
  62. STARSHIP TROOPERS by Robert Heinlein
  63. THE SUN ALSO RISES by Ernest Hemingway
  66. THE HAUNTING OF HILL HOUSE by Shirley Jackson
  67. AS I LAY DYING by William Faulkner
  68. TROPIC OF CANCER by Henry Miller
  69. INVISIBLE MAN by Ralph Ellison
  70. THE WOOD WIFE by Terri Windling
  71. THE MAGUS by John Fowles
  72. THE DOOR INTO SUMMER by Robert Heinlein
  74. I, CLAUDIUS by Robert Graves
  75. THE CALL OF THE WILD by Jack London
  76. AT SWIM-TWO-BIRDS by Flann O'Brien
  77. FARENHEIT 451 by Ray Bradbury
  78. ARROWSMITH by Sinclair Lewis
  79. WATERSHIP DOWN by Richard Adams
  80. NAKED LUNCH by William S. Burroughs
  81. THE HUNT FOR RED OCTOBER by Tom Clancy
  82. GUILTY PLEASURES by Laurell K. Hamilton
  83. THE PUPPET MASTERS by Robert Heinlein
  84. IT by Stephen King
  85. V. by Thomas Pynchon
  86. DOUBLE STAR by Robert Heinlein
  87. CITIZEN OF THE GALAXY by Robert Heinlein
  88. BRIDESHEAD REVISITED by Evelyn Waugh
  89. LIGHT IN AUGUST by William Faulkner
  91. A FAREWELL TO ARMS by Ernest Hemingway
  92. THE SHELTERING SKY by Paul Bowles
  94. MY ANTONIA by Willa Cather
  95. MULENGRO by Charles de Lint
  96. SUTTREE by Cormac McCarthy
  97. MYTHAGO WOOD by Robert Holdstock
  98. ILLUSIONS by Richard Bach
  99. THE CUNNING MAN by Robertson Davies
  100. THE SATANIC VERSES by Salman Rushdie

Saturday, July 24, 2010

Michael Jackson Medley


Friday, July 23, 2010

A regular expression to check for prime numbers

Regular expressions are extremely powerful. This is something I read at least once or twice every day while reading articles and blogs on the Web.
While browsing today, I found this page which thoroughly describes the use of the regular expression /^1?$|^(11+?)\1+$/ in Perl to check if a number is prime or not!!!
To be frank, I was skeptical. The regular expression looks like magic! And I wanted to understand it better. I rewrote it in Ruby using irb and I tested it:
Avinash@noulakaz:~$ irb
irb(main):001:0> def is_prime(n)
irb(main):002:1> ("1" * n) !~ /^1?$|^(11+?)\1+$/
irb(main):003:1> end
=> nil
irb(main):004:0> is_prime(10)
=> false
irb(main):005:0> is_prime(11)
=> true
irb(main):006:0> is_prime(12)
=> false
irb(main):007:0> is_prime(13)
=> true
irb(main):008:0> is_prime(99)
=> false
irb(main):009:0> is_prime(100)
=> false
irb(main):010:0> is_prime(101)
=> true
Great! It also works in Ruby! This means that there is no (Perl) magic going on. The regular expression really works. But how? Let’s try to follow the logic behind it.
Is 7 prime?
To know this, the function first generates “1111111″ (from “1″ * 7) and tries to see if that string does not match /^1?$|^(11+?)\1+$/. If there is no match, then the number is prime.
Notice that the regular expression has two parts (separated with the vertical bar |).
The first part is /^1?$/ is trivial and matches with beginning of line (^), an optional 1 (1?)
and end of line ($) which implies that it matches either the empty string or “1″. This simply indicates that calling that function with n==0 or n==1 will correctly return false (as the “1″ * n will match with the first part of the regular expression)
The second part is where the magic occurs…
/^(11+?)\1+$/ matches with beginning of line (^) then by (11+?) then by \1+ and finally by end of line ($). I guess that you know that \1 is a variable which is bound to whatever was matched previously (in our case by (11+?)).
Let’s proceed slowly…
(11+?) does two things
  1. It matches with “1″ followed by one or more ones minimally. This means that it matches with “11″ initially (notice that if there was no ? (i.e. (11+) was used instead, the whole string would have matched)
  2. The string obtained (“11″ initially) is bound to the variable \1.
\1+ then matches with whatever has been matched above (“11″ initially) repeated one or more times. If this match succeeds then the number is not prime.
If you are following, you’ll realise that this eliminates all even numbers except 2 (for example, 8 is “11111111″ and therefore (11+?) will match with “11″ and \1+ will match with “111111″).
As for odd numbers (in our case 7), the (11+?) matches with “11″ initially but \1+$ cannot be true (notice the $) as there are 5 remaining ones. The regular expression engine will backtrack and will make (11+?) match “111″ and here also \1+$ won’t be true because there will be 4 remaining ones (and \1+$ will only match with a number of ones which is a multiple of 3 followed by end of line) etc. hence “1111111″ will not match the regular expression which implies that 7 will be considered as being prime :-)
When I showed this to Christina this morning (true), she told me that this only checked for a number being odd or not. This is also what I felt at the beginning. But it really works. For instance, let’s try to apply it to 9 (which is obviously not even), “1″ * 9 should match the regular expression…
“1″ * 9 = “111111111″. (11+?) matches “11″ initially. \1+$ cannot match because there are 7 remaining ones. Backtracking occurs. (11+?) now matches “111″. And here \1+$ matches the remaining 6 remaining ones! Hence, 9 is not prime.
Easy… and beautiful at the same time ;-)

Thursday, July 22, 2010

Know Your Icons Part 1 – A Brief History of Computer Icons

As with great works of art, you must look into the past to appreciate the future. With roots as far back as the 1970′s, the humble icon has come a long way. Following is a collection of icons though history. Although there have been many other operating systems in the time between 1981 – 2010, I’ve hand picked the ones of the most significance to modern icon design. These designs show just a small fraction of the icons in the many and varied User Interfaces throughout the years. To learn more about the history of User Interface Design you can find a comprehensive article on the subject on Wikipedia.

1981 Xerox 8010 Star — The First Consumer GUI Computer

In 1973 the Xerox Alto was the world’s first GUI (Graphical User Interface) based computing system. Designed around an "office" metaphor (also a first), the Alto was built as a research computer and therefore wasn’t available for commercial release. With 2,000 machines worldwide, the Xerox Alto was so significant, it was a source of inspiration for the Apple Lisa (1983). In 1981 the Xerox Star was released, incorporating many of the design features of the Alto. The Xerox icons demonstrate a consideration for human interaction. As you can see, Calculator, Document, Folder and Trash haven’t changed in almost 30 years.
1981 – Xerox 8010 Star

1983 Apple Lisa — Popularized the GUI

Development of the Apple Lisa started in 1978 and was heavily influenced by the earlier Xerox computers. Hoping to carve a niche in the personal computing market, Apple adopted the office metaphor to make navigation easier for new users. Lisa was an advanced GUI for the time as it had movable "Desk Accessories" (early Widgets), drop-down menus and folder based directories. You can see the icons are not much different from the Xerox, except for the size and single pixel outlines, and the use of the computer as the preferences icon (it’s now common to use cogs).
1983 – Lisa Office System 1

1984 Apple Macintosh 1.0 — Artist Designed Icons

A year after Lisa the Apple Macintosh 1.0 was released. We now see drag and drop file copying, movable windows and fancy new icons! The Macintosh icons were designed by the now legendary Susan Kare. Susan Kare has to be the all time master of Icon design and was responsible for many icons including the MacPaint interface (fig 2). Kare’s philosophy on icon design is simple, "I believe that good icons are more akin to road signs rather than illustrations, and ideally should present an idea in a clear, concise, and memorable way. I try to optimize for clarity and simplicity even as palette and resolution options have increased." This philosophy is at the core of Apple’s early commercial success.
1984 – Macintosh System 1.0 (fig 1)
1984 – Macintosh System 1.0 (fig 2)

1985 Atari TOS — Isometric Icons

It’s important to note — for those a bit younger than us old sentimental computer users — that the GUI was not only for the Apple systems. The Atari ST had an OS called TOS which had a minimal interface also using the desk metaphor, which by then had become a computer standard. It’s interesting to see that the TOS has Isometric Disk icons (file drawers).
1985 – Atari TOS Version 1.0

1985 Amiga Workbench — Four Color Icons

The Amiga Workbench was made for the Amiga 1000 personal computer. Despite the crudely designed icons, Workbench was actually ahead of its time. Including features such as customizable mouse cursors, four color graphics and multi-state icons. You can see the two states of the "Workbench" icon in the example below. The Amiga broke with the desktop convention and chose to use a workbench with drawers instead of files.
1985 – Amiga Workbench 1.0

1985 Windows 1.0x — Microsoft’s First GUI OS

In 1985 Microsoft finally released its first GUI. The icons are just as crude as the Amiga but don’t include color. It’s interesting to see that the first icons for Windows Paint employ different symbols to MacPaint, in particular the Spray Painter.
1985 – Windows 1.0x

1986 GEOS for Commodore 64 — The Alternative OS

I’ve included GEOS for the Commodore 64 as, at the time, it was the second most popular GUI behind Macintosh 1.0 (based on units shipped). The icons have more character than Windows OS and share the Mac philosophy of clearly expressed metaphors.
1986 – Commodore C64 GEOS

1991 Macintosh System 7 — First Mac OS with Colors

With System 7 we saw the introduction of color to the icons. You may notice that the icons are now slightly raised to appear "clickable".
1991 – Macintosh System 7

1992 Windows 3.1 — New Designer Icons!

In Windows 3.0 (1990) Microsoft employed Susan Kare (who first made icons for the Macintosh 1.0) who greatly improved the designs. In 3.1 Kare further refines the colors and designs for the icons. Windows 3.1 was the first Windows platform with pre-installed True Type Fonts.
1990 – Windows 3

1995 Windows 95 — The Start Button

Windows 95 introduces more colors to the icons and a few more isometric designs. The Windows 95 design is a complete re-build and includes elements that are still part of Windows designs to this day. The elements include, the taskbar, the menu and Microsoft’s famous Start Button.
1995 – Windows 95

1997 Macintosh OS 8 — Brighter Icons for Mac

In Mac OS 8 the icons are now beginning to look brighter and rendered to show a strong light source. Macintosh also starts to implement an isometric style with a strong "drop shadow".
1997 – Macintosh OS 8

2001 Mac OS X v10.0 — Jelly Mac

Mac OS X was released around the time I was studying for my degree in Multimedia. Lovingly called the "Jelly Mac" by most of the students. We couldn’t help but notice the ultra shiny and plastic-jelly like finish of the icons. The icons in OS X are also a huge leap forward in design from the previous OS 9, which was released just two years earlier (OS 9 looks almost the same as OS 8 above.) Presumably, due to the Dock, the icons are rendered either from a straight forward point of view or slightly above. Designed around the new Aqua theme, icons show complex reflections, highlights and textures. Without the Aqua theme, I doubt that icon design would be as desirable as it is today.
2001 – Mac OS X v10.0

2001 Windows XP — Bright Soft Icons

In 2001 Microsoft introduced, yet another, completely new OS system. Adopting a saturated color palette, the icons are rendered with a soft illustrative look that uses a single light source and a semi transparent drop shadow. They continue to use the isometric style.
2001 – Windows XP

2007 Mac OS X Leopard — Reflective Dock

Mac ditches the stripes and adopts a 3D reflective doc for the icons to "sit on". The use of chrome, glass and reflections is as popular as ever. The icons don’t change much from v10.0.
2007 – Mac OS X Leopard

2009 Windows 7 — Soft and Reflective

The Windows 7 icons are completely different from Windows XP and similar to Windows Vista. The major difference between Vista and 7 is the direction the icons are facing. I haven’t been able to find any official documentation on the change, but I’m not the only one who’s asking the question. The icons in Windows 7 are also softer and more glassy than previous ones.
2009 – Windows 7

10 big ideas from GTD

Josh Kaufman wrote a succinct review of Getting Things Done on his blog, The Personal MBA.  David saw it and commented to Josh, “I’ve run across few people who have “grokked” GTD conceptually as well as you have.”  With Josh’s permission, we’re sharing his complete review here.
If you’re ready to stop stressing and start accomplishing your goals, David Allen’s Getting Things Done can help you create a simple, effective personal productivity system.

About David Allen

David Allen is the author of the Personal MBA-recommended book Getting Things Done, as well as Ready For Anything, and Making It All Work. For more information about his work, check out David Allen’s website.
Here are 10 big ideas from David Allen’s Getting Things Done

1. If your day-to-day life is out of control, it’s almost impossible to think strategically or plan effectively.

When you’re feeling overwhelmed about how much you have to do (and who isn’t, really?), it’s difficult to focus on ensuring your life and work is moving in the direction you want to go. That’s why it’s important to get control of your daily tasks before working on your big-picture life planning.
GTD is a “bottom-up” approach to productivity. The goal is to establish a sense of comfort and control over the work that’s on your plate right now, so you can free up some mental energy and space to think about the big stuff.

2. Define what being “done” looks like.

Most of the tasks people keep on their to-do lists are “amorphous blobs of undoability” – commitments without any clear vision of what being “done” looks like. That’s a huge problem – your brain is naturally designed to help you figure out how to do things, but only if you know what the end point looks like.
Everything you’re working on should have a very clear stopping point – a point where you know you’re done. If you don’t know what that point looks like, you’ll find it very difficult to make any progress at all. When you’re having trouble making progress, first clarify what being done looks like.

3. Mental work has five distinct phases: Collect, Process, Organize, Do, and Review

Not all work is the same. There are five separate phases of effective work:
  • Collecting is the act of gathering inputs: resources, knowledge, and tasks. You’ll have a much easier time making use of your available inputs if they’re all in one place before you begin.
  • Processing is the act of examining your inputs: what you can do with the resources at your disposal. This is where you start separating things according to what you’re planning to do next: tasks, projects, future plans, and reference information.
  • Organizing means taking the results of your processing and putting it in a system you trust, so you don’t have to remember it all. Tasks go on your to-do list, projects go on a projects list, future plans go into a tracking system, and reference information goes into a file or database you can access easily.
  • Doing means working through the tasks you can accomplish right now.
  • Reviewing means examining the results of your work, revising your strategy, and improving your systems for better results.
Keep the phases deliberately separate, and you’ll get a lot more done.

4. Get everything out of your head.

Many people try to keep track of everything they need to do in their mind, which is a big mistake. Our brains are optimized for fast decision-making, not storage. Trying to juggle too many things in your head at the same time is a major reason we get stressed out when there’s a lot going on: we’re using the wrong tool for the job.
The best way to stop mentally thrashing and start being productive is to spend a few minutes putting everything on your mind onto paper. You can write or draw – whatever works for you, as long as you can see it when you’re done. Once the information is out of your head, it’s far easier to figure out what to do with it. Even 10 minutes of Externalization can help you feel less freaked out about your workload.
Of course, it’s better not to be freaked out in the first place, so make it easy to capture what you’re thinking on paper. I carry a wallet that has a space for 3×5 index cards and a pen – whenever I have an idea, it’s easy to capture it, even if I don’t have my notebook or computer with me at the time. If you reduce the Friction you experience when capturing ideas, you’ll naturally capture more of them.

[IMG] No Comic Sans

Apparently some people still haven’t gotten the memo that Comic Sans is unacceptable in any form in the professional world. Please tell everyone you know.


[IMG]Should journalists learn programming skills?

[IMG]Bunny Sugar Lumps

Sunday, July 4, 2010

How to Use Facebook for Good Not Evil

Facebook isn't given the credit it deserves. In fact, the word "Facebook" is often synonymous with "procrastination." While you can find plenty of ways to waste time on Facebook, social networking on Facebook can be beneficial for a number of reasons. Try these tips to help you balance Facebook for good and not evil.


Avoiding the evils of Facebook

  1. Even an outdoor power nap might be break time better spent
    Even an outdoor power nap might be break time better spent
    Use Facebook as a distraction only on occasion. Take short breaks from tough assignments on occasion. Sometimes when you're sitting in your dorm room working on that 15 page paper for your Lit class, you need a mental break. If you find yourself drooling while blankly staring at the cursor on your Word document, it may be time to take that break. Taking a quick look at Facebook can be a good way to feel like you're connected to the outside world after being locked up doing whatever task you may be doing. However, don't forget that Facebook isn't the only way to break your mental block:
    • Sometimes taking a 5 or 10 minute walk outside can help.
    • Or maybe drop in on a friend to say a quick "hello." Have a coffee and browse through your friend's summer vacation album you've been meaning to flip through... then, back to the grind!