I joined Moody’s Analytics as a User Experience Designer a month ago. Moody’s Analytics is a division of Moody’s that provides credit and risk analysis solutions to corporations. In simpler terms the company provides software and research services in the financial sector. I am working in the San Francisco office of Moody’s. I am enjoying the design challenges in my new position.

I am working on a product called RiskOrgins. This application will be used by banks to manage the loan origination process, and evaluate the risk involved in a loan. There is a lot of data within a financial company. But not all of that data is available in the front lines, where account managers are taking to customers. RiskOrigins will provide the process and data to identify the loan proposals that will benefit the bank. I like to think that RO will help banks avoid the next financial crisis by supplying risk information before issuing the loan.

As a designer, I am challenged with creating user interfaces to input the complex details of loan proposals, comparing different proposals along multiple dimensions and completing the loan approval process efficiently. One of the design activities I have been enjoying on this project is identifying user interface design patterns. There are few problems that appears in different parts of the application, like managing a collection of objects. This has helped me a lot and I’m planning  to write about my design patterns in future posts.

OmniGraffle has become my favorite tool for all design work. Stencils are reusable diagrams, like templates in MS Word. There are some stencils like YUI, Facebook that I use frequently, but I also search for new stencils often. Graffletopia has the best collection of Omnigraffle stencils online. I am surprised that Omnigroup is not maintaining their own repository of stencils. It is like Mozilla not maintaining the FireFox addons repository.

It is possible to download stencils from Graffletopia without leaving Omnigraffle. To download stencils within Omnigraffle, open the stencils window (shortcut: ⌘+0) and click on the triangle next to the lens icon stencils and choose Graffletopia. Now you can search for stencils as you would on Graffletopia website. Click on the search results and select install to download the stencil.

stencils-1stencils-1

This design pattern of installing addons/extensions within the host application is becoming standard. During the early days Firefox for example, users had to visit Firefox addons website to find extensions, download the file and install them. Now users can install addons within Firefox itself. Other browsers like Google Chrome also do the same.

Do you have any OmniGraffle tips? Share them by adding your comments below.

Some free software tools (mostly OS X)  I have been using with some success to reduce distractions and stress while working on my computer.

Timeout – This application reminds me to take breaks while working on my computer. I can set how frequently I want to take a break and how long I want to take a break. There are many more settings but these two are the basic settings. When it is time for a break, Timeout gets into full screen to remind about the break. If I can’t take the break for any reason, there are two buttons to skip the break and postpone the break. I have configured it to take a 20 second break every 20 minutes. During the break, I do some light stretching, look outside my office window to reduce eye strain or just walk around. It has been very helpful to reduce my back pain. (http://www.dejal.com/timeout/)

Freedom: A simple application to block my Internet connection for specified number of minutes. Once the time has been entered, the application will not respond until the set time has elapsed. If I HAVE to connect to the Internet, I have to restart my computer. Inters tingly, the time spent in standby or sleep mode does not count. I used Freedom frequently while writing my novel for NaNoWrimo 2009. Helped me to stay focus on my writing and stay away from the distractions. (http://macfreedom.com/)

JDarkRoom – A full screen text editor that has, well … nothing. I’m writing this blog post in JDarkRoom. The application takes over the entire screen. Only the contents of the text file is on the screen. There is no toolbar, context menu, or even the OS X menu bar, dock bar. It doesn’t support formatting and spell checking – which are my only complaints. But the absence of those features helps to focus on my writing and not worry about spelling or formatting. (http://www.codealchemists.com/jdarkroom/)

ResuceTime – I use this tool occasionally. Analytics tools can become an escapade. Instead of getting work done, I can spend time on the productivity tool. RescueTime could be that tool. It is an desktop application that runs in the background and tracks the amount of time I spend on application and websites. I can visit the website to view the aggregate times and categorize/tag my applications. It provides so much information that I can spend a lot of time looking at the data. A recent update has premium feature that looks promising – to get into focus mode. It blocks access to distracting websites and applications for given time. (www.rescuetime.com)

Some browser based tools I use:
  • Readability – A bookmarklet to format a web page for easy reading. Smartly removes all the unwanted page elements and presents the web page in a format I can customize.
  • Empty New Page – Google Chrome’s blank new tab extension. Replaces the distracting Chrome’s default start page with a blank screen.

This is my literature review of a paper by G. Hertel et al. titled – “Motivation of software developers in Open Source projects: an Internet-based survey of contributors to the Linux kernel”.

Based on discussions in the mailing list, the two motivations for contributing to Linux kernel were identified: “fun to program” and to compete with other projects and commercial software. But since there wasn’t any empirical evidence to verify this anecdotal evidence, the authors conducted a research study the Linux Kernel community to verify the claim.

Open Source Software (OSS) development  has some properties of a social movement and a small work team. The authors used models developed by sociologists, to explain participation in social movements (EKM) and work teams (VIST). Thus the authors combined the data from three sources – Open Source community, research on social movement participation and work teams to develop a model for explaining OSS participation.

The authors announced the survey on the mailing list. In the spirit of openness the survey and its motivations were published on a website and invited comments. The final survey was expected to take a 15 minutes to complete. Survey respondents were classified into developers (kernel developers or module maintainers) and readers.

Using factor analysis, seven factors were identified in the responses as follows:

  1. Identification as Linux user
  2. Identification as a Linux developer or with a Linux subsystem
  3. Pragmatic motives related to the improvement of one’s own software and career advantages
  4. Norm-oriented motives related to reactions of relevant others (family, friends, colleagues)
  5. Social and political motives related to supporting independent software and networking within the Linux community
  6. Hedonistic motives such as pure enjoyment of programming
  7. Motivational obstacles related to time losses due to Linux-related activities

Not all the factors had influence on the contributions made to the project. Only the following factors predicted contributions to Linux Kernel:

  • Factors (2) and (7) predicted the numbers of hours spent, especially by developers.
  • Factor (3) predicted willingness to engage in Linux related activities in future

The developers worked on subsystem like a virtual team. Survey respondents who were developers answered additional questions about their contribution like number of lines and patches. These variables were predicted using motivational processes.

  • Number of hours spent is correlated with how important a developer considered his/her contribution to the subsystem (referred as Instrumentality).
  • A developer’s willingness to increase participation in the subsystem was correlated with his/her perceived value of the subsystem goals (referred as valence)  and instrumentality.
  • Number of patches accepted from a developers was explained by self-efficacy and instrumentality.
  • Finally, the number of lines a developer submitted was correlated with self-efficacy.

The authors have made a good case for treating open source community participation as a social movement. Which gives a good source of reference for researchers studying open source communities.   The study also gives a set of motivational factors that can be used to other open source communities.

I was concerned that survey might have selection bias since respondents choose to participate. Also the paper did not mention the population size, although that is difficult to determine given the nature of the medium. It is not surprising that the authors did not receive many responses when they started a discussion about the survey before launching. I’m curious if the researchers received many comments that were against the intentions of the study, how they would proceed. Finally, I was tad disappointed that the research did not use any data from mailing list or source code repository. It would have been interesting if the study involved correlating surv

Random numbers are an important part of the digital world. Computer security relies on prime numbers and random numbers to secure communication channels. And we rely on physical devices to provide us with a random number.

Humans are hopeless in coming up with a random number. Ironically, it is because we try to avoid any pattern while coming up with a random series. I’m fascinated that we need a physical device to generate an ideal random number. In other words there is no algorithm that will yield a random number every time it is executed. There are some pseudo random number generators that are good enough. But in theory they are not truly random.

We essentially need a black box to generate the random number. We should not know how the black box works inside. True random number generators rely on the quantum properties to generate a random number.

A while back I read the book Sustainable Fashion: Why Now? – a book on technologies, methodologies and practices to developing a sustainable clothing. I can’t use word industry because the book advocates abandoning the contemporary industry’s producer-consumer approach to solve problems.

It was interesting to learn about the clothing and fashion before the advent of industrial age. Resources like fiber were scarce; people spun the fibers and wove clothes in families and communities. Clothes were reused heavily. Damaged clothes would be re-purposed as another garment or in worst case used as cleaning rags. Thus the life span of the fabric increased. In essence all the garmenting was done by the users.

With the advent of industrial age, the process user production of garments was disrupted. Industrialization of fabric and garment production caused the supply to outstrip demand. It changed the framework of garment production to a producer-consumer linear model. In the new framework, if there is a need for a product, then a producer gathers raw materials, processes it and floods the consumer market. So we consume more clothing than we need. Unused clothing ends up in landfill instead of being recycled like pre-industrial age.

Many solutions to reduce fabric waste and improving recycling are discussed in the book. Fashion was very democratic. It was defined by users who wore the garments, and reused it heavily. Industrialization disrupted this model. Now we have fashion designers and trend setters to define the fashion.

MVI_0250
I’m reading Sketching User Experience by Bill Buxton. It is a interesting book, just the title convinced me to read the book. In a chapter the author refers to the prototyping of the bifocal display  (YouTube Video of the original prototype) which displays receding text above and below the user’s field of vision. This allows to gauge what is coming up ahead and what was just read. This solution can be useful for reading text in small displays. The author recreated a prototype of the bifocal display using materials found around the office. THe author went on to say any interaction designer should be able to recreate the prototype and record a video of it in 30 minutes. I took up the challenge and started creating the prototype.

The book has pictures showing how the prototype was constructed. So I started by collecting materials similar to what was used in the book – cardboard pieces, magazine cutouts, pens. I didn’t have a printer or a screenshot printout – so I sketched it on a blank paper. I used rice instead of glue (gross!). For the first 5 minutes I thought this would be a cake walk. But when I started putting together the cardboard and the screenshot I had aligned issues. Then there were problems with the thick edges of the cardboards.

I kept reminding myself that the end objective is to show how the user experience will be, the materials and method don’t matter. I tore up the thick edges and used a cardboard box instead of the single cardboard sheet. Finally I set up the camera on a bar stool and recorded the video. I completed the prototype in 35 minutes. My prototype would not be effective in communicating the intended experience of the bifocal display. But it was a good learning experience for me.

I came across an interesting service Tipjoy. to simplify the hard problem of co-ordinating a monetary transaction. Exchanging money is a very strong social signal. When we communicate with others we are exchanging only attention, other costs associated with communicating are almost zero. Internet and mobile technologies have made attention very scarce resource. I would argue that in some context it is more scarce than money. Attention scarcity is one of the challenges facing development of new Web 2.0 applications.

I think money, in the form of micro transactions, can be used to solve of this problem. By micro payments I mean in the order of few dollars or dimes. But coordinating human activities is very difficult, let alone exchanging money. So the cost of making a financial transaction is greater than transacted amount (a few cents dimes.)

It is not a very difficult problem. But I think it is a more rewarding problem to solve than doing information aggregation (news feeds), new messaging channel (Twitter), or similar tools which only steal more attention from us.

Go tipjoy, go, run like a wind….

I got a Dell Mini 9 netbook. One of friends bought a Dell Studio 15, along with it the Mini 9 was offered for $100. So I lapped it from him :-) It was a pretty good deal.

It is base model Mini 9 – with 512 MB RAM, 5GB SSD and Ubuntu 8.04. It has no moving parts – not even a cooling fan. I love the fact that it make no noise. I’ve gotten used to the humming sound from all computers. This is my first silent computer.

The switch from the enormous 15″, 3lbs laptop to a 8″ netbook is interesting. Two things I noticed quickly are screen real estate and keyboard layout.

  • I knew that netbooks are underpowered but I didn’t know that meant I can run only Firefox. If open Firefox and the Ubuntu update manager, Firefox would stop responding. In such scenarios the system mamager would report max CPU and/or RAM utilization. The major resource hogers were – Firefox and GNOME. Firefox is definitely not recommeded for netbook. I installed Midori web browser – which has much lesser memory foot print. But flash is not working in Midori – I need to fix that problem. Next I installed OpenBox Window manager which is supposed to be much lighter than GNOME. It seems faster, but I don’t have the numbers yet. GNOME panel which runs the OS taskbar takes 30 MB. The only information I need from the GNOME panel is battery and wifi information. I’m hunting for options to get these info without the GNOME panel.
  • The screen size is 8.9″ – which is sufficient for my needs. But the title bars and task bars take up a lot of screen space. I used Metacity window manager to remove the title bars. I tried autohiding the taskba, but it wasn’t annoying at times – the taskbar won’t come out sometimes, or would take too long.
  • The keyboard is definitely cramped; many keys are ridiculously small. I don’t blame Dell – they have used all the space they had. I think 10″ netbooks would be the sweet spot – to have a full sized keyboard. From a human factors perspective – width across two comfortably held hands would be 10″ to 12″. So I think 10″ would be the sweet spot – as long as the main input device is an analog keyboard. The Mini keyboard doesn’t have the F11 key (so I use full screen), there is only one Ctrl key, and page-down, insert keys are entered using Fn key combinations.
  • Battery life is an acceptable 3 hours. But the standby time seems to be poor. I didn’t measure it – but I think it consumes relatively more battery during standby.

As a fun project, I’m working on the actors social network in Bollywood; in this network the nodes represent Bollywood actors and actresses, an edge connects actors who starred in a movie together. Hollywood actor networks have been studies for a long time. It would be interesting to compare Bollywood and Hollywood actors network, to find useful insights into Bollywood.

IMDB is obvious choice for getting this data. I was skeptical if it covered foreign film industry. After getting the database, I think it is very comprehensive. IMDB offers unix and windows programs to download and maintain the IMDB files locally. I found them a pain to install; I could not install it on my Ubuntu box. JMDB is a Java based program to import the IMDB files into a MySql database. It was easy to use; although it takes a few hours to import the whole database.

Some numbers from the dataset:

  • Number of Hindi movies: 8,119
  • Number of actors:15,954 (Male:10816, Female: 5138)
  • Number of actors who have acted in more than one movie: 5,365 (Male: 3516, Female: 1849)

The database includes both movies and TV. This may be a problem, since TV has larger cast and has different variables than movies.

2007 Bollywood Actor Movie Network
2007 Bollywood Actor Movie Network

I generated the network for the year 2007. The whole network is too big for my computer. I need to figure out methods to visualize such large networks. The red nodes are movies, green nodes are actors.

I will be working on this network, trying to gain insights. I’m interested in identifying ‘star children’; whom I hypothize get a shortcut into the industry. Also I want to find the cliques or clans in the network. Watch this space.