{"id":72,"date":"2006-12-11T11:08:08","date_gmt":"2006-12-11T11:08:08","guid":{"rendered":"https:\/\/driverentry.com.br\/en\/2006\/12\/11\/walter-oney-para-gerentes\/"},"modified":"2026-07-24T19:09:48","modified_gmt":"2026-07-24T19:09:48","slug":"walter-oney-para-gerentes","status":"publish","type":"post","link":"https:\/\/driverentry.com.br\/en\/2006\/12\/11\/walter-oney-para-gerentes\/","title":{"rendered":"Walter Oney for Managers"},"content":{"rendered":"<div style=\"text-align: right;\"><a href=\"https:\/\/driverentry.com.br\/2006\/12\/11\/walter-oney-para-gerentes\/\"><img loading=\"lazy\" decoding=\"async\" title=\"Em Portugu\u00eas\" src=\"https:\/\/driverentry.com.br\/en\/wp-content\/uploads\/2026\/07\/br.gif\" alt=\"\" width=\"21\" height=\"19\" \/><\/a><\/div>\n<p><img decoding=\"async\" style=\"float: left; margin: 0px 10px 10px 0px;\" src=\"https:\/\/driverentry.com.br\/en\/wp-content\/uploads\/2026\/07\/wdm_book.jpg\" border=\"0\" alt=\"\" \/><\/p>\n<p>The fact of writing a little unusual\u00a0program has some consequences.\u00a0Some of your friends at work, those ones who sometimes sit beside you, do not understand what you are doing (and vice versa).\u00a0Others are seen whispering: &#8220;Look out! Is that guy the one who programs drivers.&#8221;\u00a0This difficulty other people have to understand what we write, ends up also affecting the managers, directors and so on.\u00a0Not that they were guilty of this.\u00a0After all, if they were interested in the technical area at this point, probably they would not be managers, directors or whatever they are.\u00a0This is not a rule, but at least it worked in companies where I have worked for; the minority of my superiors understood those problem\u00a0complexities that ended up delaying a product\u00a0release.<\/p>\n<p>The worst case is when your manager thinks it&#8217;s simple to solve things.\u00a0After all, when he programmed in COBOL, there was no problem he could not solve and you would probably be acting as a lazy guy or simply as a superstar for being able to solve blue screen problems.\u00a0I particularly\u00a0think it is beautiful when they ask: &#8220;But didn&#8217;t you already solve this blue screen\u00a0problem?&#8221;, as there was only one problem what would result in a blue screen.<\/p>\n<p>Well, so I think the recognized authority&#8217;s opinion\u00a0on this could have some influence over those people&#8217;s opinions.\u00a0In the first chapter of his book <a href=\"http:\/\/www.amazon.com\/Programming-Microsoft-Windows-Driver-Second\/dp\/0735618038\/sr=1-1\/qid=1165884463\/ref=pd_bbs_sr_1\/103-8590945-4577448?ie=UTF8&amp;s=books\">Programming The Microsoft Windows Driver Model (2nd Edition)<\/a>, Walter Oney gives some tips on how a company could consider driver development to obtain results closer to the expected. I have separated some sections that it follows below.<\/p>\n<p><em> <\/em><\/p>\n<p><em>&#8220;The sad truth is that WDM driver programming is pretty hard, and only experienced (and expensive!) programmers are capable of doing it well.&#8221;<\/em><\/p>\n<p><em>&#8220;Driver programming should start as soon as there is a reasonably firm specification for how the hardware will work. You should expect to modify the specification in light of unpleasant discoveries during driver development&#8230;&#8221;<\/em><\/p>\n<p><em>&#8220;You should also expect driver programming to last longer and cost more that you initially imagine. All software is subject to time and cost overruns. Additional overruns in this kind of programming stem from communication difficulties between the hardware and software people, from ambiguity in specifications and in the DDK documentation&#8230;&#8221;<\/em><\/p>\n<p><em>&#8220;Pay attention early on to how end users will install the driver software. Most vendors of add-on hardware prefer to ship a custom installation program on a CD-ROM, and writting the installer is a lengthy process that can consume en experienced programmer for several weeks&#8230;&#8221;<\/em><\/p>\n<p><em>&#8220;Your driver executable will also probably include the text of messages in a special multilingual message resource, and it would be a good idea to have a trained writer compose that text. (I&#8217;m not saying your driver developer can&#8217;t do this, but he or she may not be the best choice.)&#8221;<\/em><\/p>\n<p><em>&#8220;Finally, don&#8217;t treat your drivers as unimportant details. Having a good driver with a smooth installation is at least as important as the exterior appearance of the product&#8230; So a myopic decision to short-fund driver development could easily have a dramatic, negative effect on your bottom line for years to come. This advice is especially important for hardware manufacturers in developing countries, where managers have a tendency to look for every possible way to cut costs. I suggest that driver development is one place where cost-based decision making is inappropriate.&#8221;<\/em><\/p>\n<p><em> <\/em><\/p>\n<p>Perhaps they will never read this, but for sure it will help us take a deep breath and continue programming.\u00a0Now, you back to work because you are not getting paid for surfing the Internet!\u00a0(This is also great) &#8230;\u00a0\ud83d\ude00<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The fact of writing a little unusual\u00a0program has some consequences.\u00a0Some of your friends at work, those ones who sometimes sit beside you, do not understand what you are doing (and vice versa).\u00a0Others are seen whispering: &#8220;Look out! Is that guy the one who programs drivers.&#8221;\u00a0This difficulty other people have to understand what we write, ends [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pagelayer_contact_templates":[],"_pagelayer_content":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-72","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/posts\/72","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/comments?post=72"}],"version-history":[{"count":1,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/posts\/72\/revisions"}],"predecessor-version":[{"id":73,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/posts\/72\/revisions\/73"}],"wp:attachment":[{"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/media?parent=72"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/categories?post=72"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/driverentry.com.br\/en\/wp-json\/wp\/v2\/tags?post=72"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}