Friday, March 6, 2009

Automating Your Testing and Build System?

GOAL: For a tester to hit a "build" button to get the current trunk revision.

We want a fast bug report to build turnaround time, like immediate. A web page with a "bugs fixed" revision log entry, build errors, and build button. This would require a few things on the end of the developers to work:

1) Unit tests. First test: revision builds successfully. Subsequent feature tests included as well.
2) Super stable trunk. The developers must take responsibility to keep the trunk as stable as possible by learning to use branches and patching techniques.

Has anyone else done this? I wrote something once in a Trac tool for a python app with extensive unit test reporting (made easy with an exception-based runtime), but never for a C++ application. Are there any web apps like this out there?

The most important thing is to remove the build phase from the project manager's work plate. 

Wednesday, March 4, 2009

La Musica Bonita

Flash forward fifteen years in the future. and electronic music is dead. The word "genre" has been whittled down from 800 permutations including funk, house, ambient, classical, minimal, rock, and indie, and now is used to differentiate between two musical environments - live and recorded.

Just like the merging genetic avenues of the human race, all of the technologies and methods learned during the electronic revolution have been absorbed into a single, advanced, tan-skinned entity, simply known as "music". Artists have learned to effectively use computers and other signal processors just as effectively as violins, violas, drums, and kitchen appliances to create music that their cultural parallels can relate to, understand, and enjoy.

Music schools do not teach musical fundamentals with regards to the instruments or methods used to produce music, but instead students are encouraged to practice expressing themselves with rhythm and intonation, by singing and banging and watching and listening to their fellow learners. Before a student opens his or her creative eyes they are asked to open their ears and their mind, in an effort to help them connect to their own emotional purpose and meaning of the expression they will try to master.

Drum machines, sequencers, glitch racks, send tracks, software components, storage formats and recording techniques have all become so advanced that the majority of artists on the scene have reconnected with their abilities to directly express their thoughts and emotions through mastery of their instruments of choice. Industry standard production tools are ubiquitous, and every aspiring artist is free to explore their world of sonic pleasure in the comfort of their daily lives.

The primitive fetish with the mechanized and lifeless sounds of today are gone, and have been replaced with organic and humanized versions, giving an accurate and intimate view into the artist's thoughts. DJ's and mash-up architects can no longer escape the harsh scrutiny from the musical world, they are now known for what they are - regurgitators of counterfeit art, and the composers of harmony heavy and over produced dance tracks have found their rightful places as backup bass players and professional studio engineers.

Groovy, baby.

Monday, March 2, 2009

The Most Important Streaming Video Feature

There are a few videos that I watch online, like Family Guy, South Park, some random Adult Swim stuff, and netflix movies. I'm really psyched to have them available, but I can't believe that none of them use a calculated wait on the buffer to ensure that the video will playback smoothly. Yeah, sure we all have different speeds, but do some simple math and adjust the window accordingly! At least let us know how where the buffer is in relation to the playback cursor (South Park!) so we can do it ourselves if necessary.

I think if you ask anyone out there that they would rather wait longer for the video to start than sit there and hit pause a hundred times to fill the buffer. Honestly! Sites that have these problems:

www.adultswim.com
www.southparkstudios.com
www.netflix.com (albeit the best)

Is there something that I'm missing about the basic use of a ringbuffer? has this been done and found to be impossible?