Tips for Deploying a Project Like Enterprise Search
December 17, 2010
I recommend “Staging Servers, Source Control & Deploy workflows, and Other Stuff Nobody Teaches You.” The article by Patrick in the MicroISV blog is an excellent description of some engineering basics often overlooked. He points out that his lessons came from a non-US firm for which he worked. The implication for me was that most US firms don’t do methodical engineering. I don’t know if that sweeping generalization is accurate, but the tips he describes are indeed useful.
He wrote:
I worked for almost three years as a cog in a Japanese mega corporation, and one of the best parts about that experience (perhaps even worth the 70 hour weeks) was that they taught me how to be a professional engineer. Prior to doing so, my workflow generally involved a whole lot of bubble gum, duct tape, and praying. I spent a lot of time firefighting broken software as a result, to the detriment of both my customers and myself. Talking to other software developers has made me realize that I’m not the only person who was never taught that there are options superior to bubblegum.
The write up then covers the use of staging servers, version control workflows, and tested, repeatable deployments.
Image source: http://wildomarmagazine.files.wordpress.com/2010/09/clueless-excuse.jpg
In terms of search, most of the problems in search come from lousy engineering, bubblegum as Patrick states.
One quick point: there has been some chatter about head-to-head testing of search systems before making a choice of vendors. This type of evaluation is perhaps the best way to determine if a vendor’s system will work on the potential licensee’s content and deliver the precision, recall and performance required by the spec.
Know what. Talk is easy. Doing is hard. The reason circles back to this post and “stuff nobody teaches you.” Most organizations don’t have a tight spec for search. Most organizations don’t know what problem the system is to solve. Most organizations don’t have the test corpus, the infrastructure, or the staff to run a test.
Search is implemented via bubblegum engineering. Know what? Get it wrong and the search system will suck. Let me be clear. The vendor may not be at fault for some of the many, many problems information access systems create for the users.
“Nobody teaches” translates to a thriving business for failed journalists and English majors in mid tier consulting firms. “Nobody teaches” reflects on those implementing as well as those building. Bubblegum in today’s economy can be expensive. Just my opinion and a suggestion: read Patrick’s Web post.
Stephen E Arnold, December 17, 2010
Freebie