Thursday, August 25, 2005

SF Cliff house faux bois garden

Hedgehogs, each black nail polished to a hearty shine, pinkies up like at tea, dunking rottweilers in chocolate sauce, because it matches their coat, addressed with a robust jewel color'd wine, guess which jewel? The soup, of course, Borscht, hold the turnips (no really, please do), the sober crown of dignified white sour cream with the rubied red running up and melting the white volcano into vast decors of pink pink pink and I at sea remembering only the glass curtain marked :: Deux exMachina:: Deux exMachina :: dribbled silver drops of white into the sheer magnificent blue see not one of them barked in complaint, they licked off the chocolate and asked for borscht, "Can I have a little more please sir" eyes doleful and smoking violence, when really all they wanted was pink cream to lap and a hug from their captor, drunk or not.

More blogs about wonderlane.

Sunday, August 21, 2005

Describe some of your experiences writing functional/technical specs?

To produce functional docs I use Word, Project, Visio, Graphics, RAID (product studio), and other product management applications. Sometimes a graphic showing flows can render needs much more clearly than tables can alone.

Generally I conduct research discussing the product with managers and developers who have already worked on the project (sometimes also networking and support staff). I use existing records in product studio (RAID) and read the existing documentation, case studies, and user interface and security audits. Traffic records and support totals can all be gleaned for information. In the future I hope to also have the opportunity to review child and personal safety documentation as it becomes available.

Microsoft's Software Development Life Cycle (SDLC) has changed due to new regulation, the Sarbanes-Oxley Act (SOX), which requires traceability through financial functions which will help to standarize development documentation.

Just recently working on launching MSN Spaces, I worked more on the end of a product lifecycle, I documented the support process for MSN worldwide, researched policies and procedures and re-wrote the policy (with the Microsoft Policy unit), wrote go to market (GTM) documentation and marketed Spaces to a local radio station going live with streaming media (107.7 The End - Entercom). That was fun!

When I assisted in creating the functional specification for Microsoft's Order Management 5.0 product, it was based in part on two reports I wrote, one a study on user interfaces and one recommending adding an admin / dashboard interface, and on discussions about how successful user interface design works, and the knowledge it is based upon.

In the beginning I drew wireframes and layouts on paper and eventually did full page layouts and integrated them with the functional specification, including Visio data flows.

While there I designed product logos for three product groups at Microsoft, in quick succession - one proposal had 25 varations on a theme (just for fun!)

Worked on building the first ever web application used at the 2 billion dollar a year medical insurance firm Premera, with a team of developers and development managers I supervised the entire software development lifecycle for RapidRate, including functional specifications. BlinkIA performed the usability testing, and a security firm from Kirkland did the security audit for me and the eBusiness teams.

Reviewed a number of end-to-end enterprise software lifecycle solutions covering requirements definition and management, code and content development, and change and configuration management, with a focus on administration tracking and functionality over the web. My pick for the winning application was Starbase, purchased shortly after by Borland.

Mapped business processes for larger firms, and developed complete end-to-end processes for the eCommerce ASP Pandesic, which we used to release all subsequent large ecommerce sites.

I studied writing effective use cases class while at Microsoft in 2003.

More blogs about wonderlane.

What are the greatest accomplishments in your career? Why?

I have enjoyed several neato accomplishments in my career.

My great team being responsible for releasing nearly 50 ecommerce sites to the world in 2000, because it was a lot of fun at an exciting time. Silicon valley was hopping in 2000. Helping my staff & team members to grow both personally and professionally-- because it's great to see them take off and grow. Having them accompany me to the next firm we worked for was very personally rewarding.

The single largest application I worked on was designing Microsoft's UI and helping to develop the specifications for Order Management 5.0 in 2003. I believe the advise I gave helped the redesign of the entire application including the onboarding of new products.

Recently helping a global virtual team work with MSN and Microsoft to update their child and personal safety viewpoint and develop apps and enhance their safety process activities worldwide was a wonderful experience. It will be a great advancement that will affect millions of people's lives worldwide.

When have you had to make feature trade offs? What happened as a result?

Seems like the need to make feature trade offs always happens!

It was particularly painful once when the business wanted to cut probably the most important and simple data input feature to get the product launched before the competition (based on faulty competitive research), but as expected the customers complained about the lack.

The product went back into dev for a revision immediately, meanwhile the competition did not even release a similar version for more than a year.

So while we got the product out the door, it was not nearly as robust as it could have been, on the other hand, the group looked very responsive to our customer base because we could make the changes so quickly, in the face of no competition at all.

How do you prioritize features?

Prioritizing features is specific to each company but in general it is done in consideration of customer's needs or by the willingness of a client to pay for the feature, or with an eye to competitors feature sets, or the need to grow the feature set to attract and retain customers.

You balance what the business needs are against the amount of time they require and determine which features are the most likely to be completed and add any 2-for-1 features where adding one thing will also cure another.

In a worst case you have to prioritize a fix for something that is costing too much to support, or is truly broken or causes damage to data such as corruption.

What can cause a product to slip? How do you safeguard against this?

The most common factor in a product slipping is scope creep but it can also occur for a variety of reasons such as lack of resources, which includes information about other products that yours interacts with. This is both the strong suit and the potential weakness of .NET.

For example MS Messenger Service can solve a lot of security issues, when you know how it functions and can test it.

Doing more project planning with dependencies worked in, and resource planning helps.

Letting management know what the limitations are especially when you can not effect needed changes directly from your own level helps safeguard things over time. In this way you are asking for resources before it becomes too late, or making it clear what the results will be if the resources are not available, or if you don't get the information you need on time, raising any issues that can potentially cause product release slipage.

It is important to put this kind of information into written, not just verbal, reports.

How do you go about developing a good design?

Developing good design intiality can be instant, but then refined iteraratively. If working with other people agreeing on a style of working together, process, and communication are very important.

Depends on what I am designing but generally I start on paper and work through wireframes and the relationship to other products, flesh out the design and maybe do a high end first pass.

I like to gather other people's opinions and datapoints so I will show it around and ask for input. Make some changes and go to the next step.

Sometimes a project also requires advising people what they need to learn or to understand in order to accomplish a very flexible interface. Elements like using the proportion of the golden rectangle (also called the "golden mean") makes user interface design beautiful.

Visio plans often help in visualization for everyone involved.

When we have something we are somewhat happy with I like to run it through user interface studies, even if they are informal using volunteers or paying to do a brief study. Oftentimes this will back up what you already believe about a design but what is really great is when you learn something totally unexpected and you can use it.

With my experience in fine art and design, I enjoy the critical review cycle, but it's always nice to give some positive feedback.

Most of my work is in product or program management so in this way I work interactively with lots of very smart people to design a composite of what we need, using the best ideas and best practices in a cooperative manner.

When designing a small business website, after meeting with the client I begin by structuring the information, and visualizing the look and feel of their site design. Then I follow my iterative process as time and their budget permits.

What is your definition of a well-designed product? Example/Why?

A well designed product is one which seamlessly performs as the customer thinks it should, and expects it to, and is easy to use.

An example is a product which gets fewer support calls.

Another definition is a product that is reliable, and doesn't cause systems or the OS to fail in the worse case, or leaks memory. On the web you don't want to over burden the client or make too many trips to the server.

A well designed product is one that in a way you don't notice, because nothing bugs you. A poorly designed product, for example is one that you can't even authenticate (in otherwords you can't use your userid and password to get into or there are severe complications.)

For an example of a good platform design; within the .Net framework, code is compiled rather than interpreted as ASP script is; this aids in early binding of objects directly resulting in performance gains. Since state management is handled within .Net, lines of code can be eliminated and this reduces the time required to load functionality.

Less processing time between pages contributes to an improved end user experience. A cleaner code set makes upfront development costs per feature less expensive, Web applications quicker to test and deploy, and as a bonus are easier to maintain and update.

I think a great product should be fun to use.

Friday, August 05, 2005