Managing Creative Assets - 1

    Managing Creative Assets is a multi-part series on how you can manage your creative works such as a novel or even blog post without impairing your creativity. It highlights the importance of using a version control system as an integral part of one’s creative workflow

    Why Do We Need A Version Control system?

    Let me start off by saying that this is article is not for the techies. Despite what the title might tell you, this is an article about how to make computers help your creative process. How does a creative process work?

    Most creative people follow the following simplified process attributed to Graham Wallas while thinking creatively:

    • Preparation (preparatory work on a problem that focuses the individual’s mind on the problem and explores the problem’s dimensions),
    • Incubation (where the problem is internalized into the unconscious mind and nothing appears externally to be happening),
    • Intimation (the creative person gets a ‘feeling’ that a solution is on its way),
    • Illumination or insight (where the creative idea bursts forth from its preconscious processing into conscious awareness); and
    • Verification (where the idea is consciously verified, elaborated, and then applied).

    Obviously, this is an iterative process. Most writers would have a pile of crumpled paper sheets overflowing their waste baskets. Be prepared to reject a lot of ideas (even good ones) when you are involved in some creative process. Sometimes, against your earlier good judgement you would like to go back and retrieve an idea that you had discarded. You may have to rummage your waste basket for that page and if you are lucky, you might find it among the pile.

    These days most of the creative works; be it a novel, a movie or even a comic is prepared on a computer. However, the process of throwing away drafts into the waste basket and later digging them out, is still the way we humans work. The various ways people achieve this in practise is:

    1. Saving multiple version: This results in a whole mess of files grouped by their prefixes. Some prefer to suffix them with version numbers like file-v0.5.doc, file-v1.0.doc etc, while others prefer to use descriptive suffixes like file-draft.doc, file-sentforreview.doc etc. As anyone who might have used this system would have experienced, this quickly becomes unwieldy. For example what is the difference between file-v0.5.doc and file-v1.0.doc? How can I revert to the earliest version while correcting many of the typos I found in the latest version?

    2. Using Undo and Redo: This is a very simple system to understand and hence quite popular among artists. If something doesn’t feel right, keep pressing the Undo button till you are satisfied and then start over. There are many problems with this approach. Firstly, the timeline is linear. You cannot try two different approaches at the same time. Secondly, the Undo history is available only for a single session. Close the application and the undo history is forgotten.

    3. Use a version control system: This approach relies on an version control system that remembers every version you had ever saved (rather checked-in). This system is the focus of this article.

    To extend the analogy further, a version control system can give you a bottomless waste basket with the ability to show you what changes you made from one version to another. Version control systems are powerful enough to allow you to branch out into various versions simultaneously, which is often useful when you are collaborating with others.

    In fact, the addition of a version control system makes a profound change to your creative process. You are no longer afraid to make mistakes. You can play around with your creations without the fear of what you had created so far. Most people are afraid to start from scratch, even though, it is often documented that subsequent creations become more refined and hence elegant due to the better understanding of the ‘problem’ mentioned in the Preparation phase above. But be mindful of drifting in the opposite direction too, as in the case of the Second System effect.

    In the next part, we will be introduced to two kinds of version control systems - Centralized and Distributed; and which one is suited for certain scenarios.

    Comments →

    Emacs tip: Prevent too many buffers in Dired

    This is for the users of the Emacs editor

    Dired mode is the default way of visiting directories on Emacs. Whenever you open a file using C-x C-f, you would see the current directory. If you chose to press Enter without entering a file name, you would visit the current directory in Dired mode.

    I don’t use the Dired mode very much to browse directories. I would rather use Windows explorer or Nautilus. Don’t get me wrong, I do find Dired extremely useful to locate a file. But for every directory you visit it adds a new buffer. This quickly becomes very unmanageable.

    However, I recently found out that you can make Dired re-use the same buffer if you press a (dired-find-alternate-file) rather than ‘Enter’ for visiting a directory in Dired mode. This is can be even used to open a file which results in the last Dired buffer being completely removed (alternatively you can use v or dired-view-file to view a read-only version of the file).

    With this tip, I am finding myself using Emacs more for browsing around my file system.

    Comments →

    Top 7 Inexpensive but Indispensible Things

    I was shifting to a new house in Mangalore recently. I realised that some of the things that I value the most were not the typical big screen home theatre system or a luxurious jacuzzi.

    Without sounding too cliched, let me say that some of the best things in life are not expensive. Here are some of the best things you can buy for less than Rs. 8K (around $160):

    Wifi Router

    This is a blessing for those with frequently off working hours calls or if you have multiple laptops. The convenience of being able to work near the balcony enjoying the quiet scenery and sipping tea is divine.

    Small Water Heater

    This is a pet peeve of mine. Hot water is absolutely essential for a bath. Even in summer. Yep. Nothing gives you a better satisfaction that a hot bath after a warm day. And in Mangalore it’s either raining in buckets or it’s hot and humid. I would recommend that you go for a 8l one if you want a good tradeoff between heating time and power consumption.

    Portable Harddisk

    I am sure most of us have tried using CDs for backing up all those wonderful photos and songs we have. The problem is - CD are not really great for organising data. It is readonly and once you burn it, there is no way to go back and change it. There are, of course, other problems like limited space and suceptibility to scratches.

    Harddisk prices have gone down… a lot. So there is really no excuse for not getting one. There are sub-terrabyte ones at throwaway prices. I recommend the Western Digital’s handy Passport 500 GB.

    Ebooks

    Can anyone guess what’s the most heaviest thing to transport? Yep, it is undoubtedly books. The weight of a carton of books can exceed that of a TV, Microwave or even a carton full of iron boxes. I think everyone who love books would have had to part with them if they have had to travel a lot. They would have given away most of it to friends or relatives, never to see them back again.

    This is sad. I don’t like giving away books. Neither do I want to kill my desire to create a personal library. I suggest an eco-friendly compromise - make a digital library. Do invest in Ebooks and Audio books. I have invested heavily in a collection that I am sure I can use anywhere once ebook readers become more cheaper. For now, I don’t mind reading them on my laptop. And yes, my library weighs less than a kilo ;)

    Gamepad

    I am a guy who is always tempted to buy game consoles. I have made up my mind a hundred times to buy a playstation or a nintendo, only to find that the latest PC is much better at it. And you know what PCs are always ahead in terms of sheer processing power. Except that they have clumsy input devices. Ever tried to play a racing game with a keyboard? Then you will know what I am talking about.

    This is easily fixable. A USB gamepad (which looks like a PS2 Gamepad) comes in for less than Rs. 500. It is a great value for money. It has all the 4 way controls, shoulder buttons and 2 joysticks. Plus it has a built-in vibrator (no batteries needed)! I am planning to go for a second one. Now you can safely give your PC to your 5-year old cousin to play Mario Kart without fearing that he with smash your keyboard to bits shouting ‘Maaario’:)

    Decent Mattress

    Some one rightly said that we spend one-thirds of our life on a mattress. So why not in a really good one? There are cots in the market all the way from Rs 200 to branded mattresses worth several tens of thousands. Go for a really good branded mattress. It might cost a couple of grand, but you will not lose sleep over it ;)

    Portable Home-kit

    A briefcase sized kit that contains a small drill, spanners, measuring tape, pipe wrench, screwdriver set etc costs less that Rs. 2000 these days. I think it is well worth the price.


    Those were, in my opinion, the best little things that don’t cost you a fortune. What are the ones you feel give you great value for money? Do add in your comments.

    Comments →

    Poem: Little by little

    Little by little

    Soft pink tiny hands
    Thump, thump… thump, thump
    Travel to unexplored lands
    Thump, thump… thump, thump

    A gingerly turn
    A confident roll
    Ebbing everywhere
    Her ropey drool

    Bangled hands on plastic chairs
    Tap, tap…. tap, tap
    Music to her little ears
    Tap, tap…. tap, tap

    Kitten eyes
    On a sorry face
    When I sigh
    upon a broken vase

    Grandfather clock smiling above
    Tick, tock… tick, tock
    She smiles back beaming with love
    Tick, tock…. tick, tock

    This is It: Remembering the Performer Extraordinaire

    How do you exactly remember Michael Jackson? A pale faced ageing popstar with bad plastic surgery artifacts? His controversial child molestation charges cases settled out of court? Or his unnaturally feminine voice?

    this is it
    For a normal kid who grew up in the eighties, Michael Jackson was a part of growing up. MJ - the legend - was a larger-than-life icon. We spent hours trying to copy his moves and create that illusion of ‘Break Dance’, a style of dance that Michael defined and redefined continually. Some of us were pretty good. There was a Michael Jackson imitator in every school or college dancing competition. There were many who could manage a close imitation (Prabhu Deva for instance) but never truly ‘perfect’. To know what’s perfection, one had to rent out a copy of Michael Jackson’s videos. And then watch the jaw-dropping performance for the hundredth time.

    Yes, MJ has had more than his share of controversies. The multi-millioniare King of Pop residing in the amusement-park like estate of Neverland Ranch was easy to be hated. Media loved to lampoon every excess of his. But when MJ stepped on stage, when the arc lights shone, something extraordinary happened. When he made his spectacular entry there were goosebumps on every person in the audience. When he moved, the laws of physics would not apply. When he sang, he could dive into pathos and immediately hit a howling yell with remarkable ease. He was in every sense of the term, a performer extraordinaire.

    Two days back, in a small packed screening of perhaps a hundred people, I saw one of the most moving homage to this incredible artist. It was aptly called ‘This is It’. Rather than a boring documentary with interviews and flashbacks, the film directly took you to the auditions for MJ’s final tour of the same name. In the next few minutes, you are taken through the gruelling preparations Michael had for what could possibly have been a stage performance never experienced before.

    To appreciate the genius of his performances, you need to look no further than the immense amount of improvisation and perfection in every performance of Michael. He doesn’t mime his old soundtracks. He doesn’t even sing to a recorded soundtrack. Everything which happens in an MJ’s show is being performed Live. Yes, today’s teen popstars who can barely mime their performances on stage surely have it easy, don’t they?

    As we watch the rehearsals of several iconic hits like ‘Billy Jean’, ‘Thriller’ and ‘Beat It’, you don’t feel for a minute that you are watching an ageing fifty year-old. He effortlessly performs his trademark moves that, despite millions of imitators (including the very talented and cherry-picked stage extras), only Michael could convincingly perform. When he sings, he doesn’t gasp for breath or lose his tempo. He, in fact, single-handedly resurrects his hit numbers performing frighteningly close to what how did when he was a teenager.

    As you watch these songs, you cannot help wondering the immense capacity of MJ to entertain his audience. He can stir a range of human emotions be it Romance, Empathy, Frustration or Terror in the deepest possible way through his songs. His audience escape to a world that’s very uniquely Michael’s creation. A surreal world inhabited by gangsters, zombies, and panthers in locales varying from Egyptian deserts to lush tropical rain-forests.

    Michael was not just an exceptional artist but an extraordinary human being. In the rehearsals, he treats every artist on crew with respect and humility. He has been credited with supporting more charities than any other artist - 39 charitable organizations - either with monetary donations through sponsorships of their projects or participation in their activities.

    His songs broke all boundaries of culture or race. His songs like ‘Heal the World’ leaves a lump in one’s throat and stirs your heart everytime you hear them. For millions of fans, there will be more pop crooners or dazzling dancers, but there will be only one King of Pop. And he will be missed - Forever.

    Yes…. This is IT!

    Comments →

    PyCon India Talk 2009: Game Programming in Pyglet

    Thanks to everyone who enjoyed and commented on my talk today titled ‘Accelerate Your Game Development with Pyglet’. I am happy to see so much enthusiasm within the python community for game development. This was my first lightning talk (and the first one for the day as well) and though, I slightly overshot the timelimit, it was a great experience.

    The talk was about creating a simple casual game using Pyglet called ‘FruitCatch’. The source code is really small and very readable. I also compared Pyglet with Pygame and why I prefer Pyglet (in certain situations:)). The demo showed the working game in the end.

    You can download the game source code and presentation slides (PDF) here. I’ve shared this with the organisers as well, so it will be put up at the Pycon site as well

    UPDATE: The video of the lightning talk is now available and has been added below:

    UPDATE 2: Fruitcatch source code is on github now.

    Comments →

    Weekend Gains

    This weekend I was pretty productive. Among other things, I was able to perform a much needed upgrade for my laptop after my hard disk crashed and to bring it at par to the prevailing standards, as well. I bought a 320 GB hard disk (up from 100 GB) and added a RAM module bringing the total RAM to 2.5 GB (up from 1 GB). So it’s a Big Deal :D

    While purchasing the hard disk, I was sure that I don’t need it to fill it up with lots of data (like movies or songs). I would rather use my external hard disk for that. I had planned to use majority of the space for Linuxes (is that the correct plural form?). Why not Windows, you may ask. Especially with the snazzy Windows 7 being already available for Beta?

    Well the reasons are quite simple. Firstly, too many viruses and malware. Especially, if you have removable storage like pendrives or CDs. Next, it’s not very stable. Though Windows XP is a comparatively stable member of the Windows family, I have had more than my share of screen freezes and blue screens. This causes bad sectors and reduces the life of your hard disk. Next, most of the apps I use are open source anyways - Firefox, Open Office, GIMP, Inkscape, Emacs, Foxit etc. Then why not run the same in a better OS like Linux? Lastly, distributions like Ubuntu have become really user-friendly. Vidya and many others who use my laptop really don’t find it difficult or inconvenient to use.

    Well, you must have noticed the plural form of Linux I’d used. This weekend I installed the following OSes and they are all working fine:

    • Ubuntu (Jaunty): Perfect for most multimedia and productivity apps
    • Fedora 11: For trying out Java apps and other enterprisey stuff
    • Arch Linux: An ideal hacker’s OS
    • Windows XP: For the necessary evils like movie playback
    • FreeDOS: This is the good ol’ DOS. For classic DOS games and simple low level programming

    I am planning to add a couple of more varied distributions. I am currently thinking of adding Puppy Linux and Rescue CD. Any suggestions?

    Comments →

    Office Diff: An Open Source Diff for Office 2007 or 2003 documents

    This Saturday, I started working on something that many of my colleagues had complained about a long time ago. They work on reports all the time and most of these reports have small changes in each version. They are only interested in seeing what changed rather than read the entire report.

    You might suggest a lot of ‘diff’ tools which can do the job in either Word or Textpad. The issue was that they were working with Excel spreadsheets rather than text files and I couldn’t find any free or open source solution for them. So I ended up creating a new tool called Office Diff. Interestingly, it handles not just Excel, but also all the Office 2007 and 2003 file formats plus PDF and HTML formats as well. It features an intuitive GUI interface and is completely written in Python.

    The next best thing was to open source it. I am using the BSD licence. I found sourceforge a good choice because they support Bazaar, my version control of choice at the moment.

    Please visit Office Diff homepage for screenshots and check out the first release.

    Comments →

    Don't Worry About Zipping Office 2007 Documents

    Old habits die hard. Whenever we have to send huge attachments; the wise ones used to say ‘Don’t clog their mailbox, zip it and send it’. Everyone religiously used to follow the rule and every word document, presentation or excel sheet was zipped before sending. The zipped file would be a good 40% smaller. The mails would reach faster and everyone would be happy in the process.

    Fast forward to 2009, most people now use Office 2007. The new Office is vastly more ….well…new and the preferred file formats all have changed. There is a x at the end of the all filenames so we have .docx, .pptx and .xlsx floating all over the place (how do you pronounce these anyways?!). The documents are still religiously sent as zipped files. Except there is no 40% reduction. Actually it isn’t even 10%. Why?

    Because you cannot zip a file that’s already zipped. Yep…. all the new office documents are already zipped anyways. You can even open them using Winzip by simply renaming their extensions to .zip.

    So folks, next time you mail someone, don’t bother to zip it. There is only the added annoyance of the recipient having to unzip before opening the file.

    Comments →

    20 Truism for Project Management

    Tony Collins has compiled a list of Project Management facts which might very well be the ‘Mythical Man-Month’ for the new era. It explains why so many IT projects fail so aptly that I had to reproduce it here:

    1. Projects with realistic budgets and timetables don’t get approved

    2. Activity in the early stages should be dedicated to finding the correct questions

    3. The more desperate the situation the more optimistic the progress report

    4. A user is somebody who rejects the system because it’s what he asked for

    5. The difference between project success and failure is a good PR company

    6. Nothing is impossible for the person who doesn’t have to do it

    7. Every failing, overly ambitious project, has at its heart a series of successful small ones trying to escape

    8. A freeze on change melts whenever heat is applied

    9. There’s never enough time to do it right first time

    10. You understood what I said, not what I meant

    11. If you don’t know where you’re going, just talk about specifics

    12. If at first you don’t succeed, rename the project

    13. Everyone wants a strong project manager - until they get him

    14. Only idiots own up to what they really know (thank you to President Nixon)

    15. The worst project managers sleep at night

    16. A failing project has benefits which are always spoken of in the future tense

    17. Projects don’t fail in the end; they fail at conception

    18. Visions are usually treatable

    19. Overly ambitious projects can never fail if they have a beginning, middle and no end

    20. In government we never punish error, only its disclosure

    21. The most difficult way is, in the long run, the easiest

    22. A realist is one who’s presciently disappointed in the future

    I am pretty sure most of us can relate to these ;)

    Comments →

    « Newer Page 9 of 20 Older »