<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7801766992264242251</id><updated>2012-01-30T05:00:00.209-05:00</updated><category term='world markets'/><category term='criminal'/><category term='plug-ins'/><category term='hotmail'/><category term='news'/><category term='mdop'/><category term='stuff'/><category term='community'/><category term='privacy'/><category term='nature'/><category term='a'/><category term='adobe'/><category term='linkedin'/><category term='richmond'/><category term='software development'/><category term='picasa'/><category term='happy new years'/><category term='virginia'/><category term='consultants'/><category term='taxes'/><category term='powershell'/><category term='crapware'/><category term='thoughts'/><category term='oreilly'/><category term='pets'/><category term='opera'/><category term='kids'/><category term='facebook'/><category term='scripting'/><category term='weather'/><category term='baseball'/><category term='java'/><category term='engineering'/><category term='graphics'/><category term='policy'/><category term='government'/><category term='legal'/><category term='cats'/><category term='ideas'/><category term='forecasts'/><category term='rain'/><category term='autodesk'/><category term='mac'/><category term='longhorn'/><category term='aig'/><category term='statistics'/><category term='ubuntu'/><category term='ws08'/><category term='wassup'/><category term='conferences'/><category term='stupid'/><category term='google'/><category term='virtualization'/><category term='technology'/><category term='domains'/><category term='city government'/><category term='smoke'/><category term='media center'/><category term='messaging'/><category term='codenames'/><category term='iso'/><category term='hacking'/><category term='military'/><category term='dem'/><category term='osx'/><category term='parks'/><category term='openoffice'/><category term='rsat'/><category term='sharepoint'/><category term='mccain'/><category term='dumb'/><category term='animation'/><category term='services'/><category term='podcasts'/><category term='directx'/><category term='charts'/><category term='speaking'/><category term='housework'/><category term='wallpaper'/><category term='indoors'/><category term='music'/><category term='recreation'/><category term='death penalty'/><category term='macho'/><category term='cool'/><category term='ipod'/><category term='unix'/><category term='twitter'/><category term='sql express'/><category term='coffee'/><category term='health'/><category term='writing'/><category term='system center'/><category term='gmail'/><category term='management'/><category term='hobbies'/><category term='crackware'/><category term='active directory'/><category term='visual lisp'/><category term='installation'/><category term='funny'/><category term='web'/><category term='hamsters'/><category term='predictions'/><category term='art'/><category term='gasoline'/><category term='agility'/><category term='jtbworld'/><category term='biking'/><category term='windows 7'/><category term='dell'/><category term='group policy'/><category term='applications'/><category term='schools'/><category term='family'/><category term='john walker'/><category term='sun'/><category term='rtfm'/><category term='credit cards'/><category term='hampton roads'/><category term='wwa'/><category term='activation'/><category term='bn'/><category term='skateboarding'/><category term='x64'/><category term='safari'/><category term='ie9'/><category term='asp'/><category term='diggnation'/><category term='xml'/><category term='edmonds'/><category term='fireworks'/><category term='hrt'/><category term='ze frank'/><category term='economy'/><category term='parody'/><category term='winpe'/><category term='data center'/><category term='ie8'/><category term='noaa'/><category term='subscription'/><category term='noscript'/><category term='ie7'/><category term='interviews'/><category term='stories'/><category term='web sites'/><category term='cranium drainium'/><category term='itunes'/><category term='ceo'/><category term='web browsers'/><category term='fathers day'/><category term='winnt.sif'/><category term='articles'/><category term='chantix'/><category term='mexico'/><category term='web development'/><category term='youtube'/><category term='lab setup'/><category term='photos'/><category term='vmware server'/><category term='nothing'/><category term='browsers'/><category term='financial'/><category term='guy stuff'/><category term='ldap'/><category term='crime'/><category term='amazon'/><category term='mackay island'/><category term='starbucks'/><category term='murder'/><category term='windows'/><category term='layoffs'/><category term='config manager'/><category term='vbscript'/><category term='cmd'/><category term='football'/><category term='friends'/><category term='desktop standard'/><category term='user groups'/><category term='LAMP'/><category term='operating systems'/><category term='fud'/><category term='php'/><category term='internet explorer'/><category term='zune'/><category term='software deployment'/><category term='culture'/><category term='broadband'/><category term='games'/><category term='windows8'/><category term='paul thurrott'/><category term='life'/><category term='certification'/><category term='drought'/><category term='entertainment'/><category term='history'/><category term='search'/><category term='mozilla'/><category term='software packaging'/><category term='technical support'/><category term='maps'/><category term='iPad'/><category term='automotive'/><category term='traffic'/><category term='images'/><category term='sms'/><category term='earth'/><category term='movies'/><category term='books'/><category term='shopping'/><category term='events'/><category term='contracting'/><category term='updates'/><category term='war'/><category term='manufacturing'/><category term='safety'/><category term='chrome'/><category term='medical'/><category term='error monitoring'/><category term='job'/><category term='softgrid'/><category term='cellphones'/><category term='mcitp'/><category term='intranets'/><category term='rss'/><category term='ted talks'/><category term='video'/><category term='work'/><category term='training'/><category term='2008'/><category term='laid off'/><category term='voting'/><category term='reading'/><category term='iis'/><category term='mdt'/><category term='azure'/><category term='hurricanes'/><category term='computers'/><category term='industry'/><category term='employment'/><category term='bongloads'/><category term='beta'/><category term='pahs'/><category term='adwa'/><category term='obama'/><category term='execution'/><category term='dsquery'/><category term='holidays'/><category term='vendors'/><category term='unemployment'/><category term='insurance'/><category term='marketing'/><category term='rail'/><category term='nook'/><category term='jeffrey snover'/><category term='agpm'/><category term='media player'/><category term='garbage'/><category term='sccm'/><category term='animals'/><category term='education'/><category term='packaging'/><category term='support'/><category term='wise'/><category term='sony'/><category term='thinstall'/><category term='advertising'/><category term='yawn'/><category term='command'/><category term='norfolk'/><category term='carlin'/><category term='assetmetrix'/><category term='sysinternals'/><category term='shell'/><category term='leopard'/><category term='technet'/><category term='steve jobs'/><category term='uac'/><category term='licensing'/><category term='blogcastrepository'/><category term='softricity'/><category term='edubuntu'/><category term='walmsley'/><category term='dining'/><category term='learning'/><category term='mcsa'/><category term='network administration'/><category term='places'/><category term='election'/><category term='flipping'/><category term='american'/><category term='deployment'/><category term='paint.net'/><category term='parenting'/><category term='verizon'/><category term='augi'/><category term='publishing'/><category term='databases'/><category term='seo'/><category term='rebase dlls'/><category term='infrastructure'/><category term='blackberry'/><category term='servers'/><category term='outdoors'/><category term='sequencing'/><category term='sucks'/><category term='dcis'/><category term='kixtart'/><category term='extras'/><category term='walmart'/><category term='career'/><category term='ships'/><category term='wmi'/><category term='markets'/><category term='TED'/><category term='ftp'/><category term='scheduling'/><category term='transportation'/><category term='windows live'/><category term='cheerleading'/><category term='beer'/><category term='emc'/><category term='jscript'/><category term='comedy'/><category term='registry'/><category term='textpad'/><category term='systems architecture'/><category term='projects'/><category term='dad stuff'/><category term='open source'/><category term='patches'/><category term='stupidity'/><category term='home'/><category term='maxthon'/><category term='firefox'/><category term='cisco'/><category term='psychology'/><category term='iphone'/><category term='travel'/><category term='society'/><category term='sports'/><category term='unattend'/><category term='thinapp'/><category term='guitar'/><category term='blogs'/><category term='sleepy'/><category term='humor'/><category term='future'/><category term='exercise'/><category term='business'/><category term='fastcgi'/><category term='hyper-v'/><category term='keynotes'/><category term='security'/><category term='vmware'/><category term='dogs'/><category term='aircraft'/><category term='DLL'/><category term='application virtualization'/><category term='geek'/><category term='software assurance'/><category term='wsus'/><category term='pimping'/><category term='batch'/><category term='level5'/><category term='resume'/><category term='editor'/><category term='people'/><category term='microsoft access'/><category term='tutorials'/><category term='netscape'/><category term='fun'/><category term='testing'/><category term='corruption'/><category term='virginia beach'/><category term='automation'/><category term='moss'/><category term='vista'/><category term='ocean'/><category term='pfizer'/><category term='geology'/><category term='joomla'/><category term='apple'/><category term='converter'/><category term='environment'/><category term='windows server'/><category term='autocad'/><category term='evolution'/><category term='flexnet'/><category term='matt harding'/><category term='virtual pc'/><category term='jaw-dropping'/><category term='internet'/><category term='capital crime'/><category term='science'/><category term='linux'/><category term='apache'/><category term='revision3'/><category term='cloud services'/><category term='recession'/><category term='office'/><category term='sdlc'/><category term='cad'/><category term='vacation'/><category term='ajax'/><category term='programming'/><category term='politics'/><category term='control panel'/><category term='cmmi'/><category term='wii'/><category term='lisp'/><category term='backups'/><category term='weekend'/><category term='terrorism'/><category term='sql server'/><category term='virtual server'/><category term='kindle'/><category term='desktop optimization pack'/><category term='world series'/><category term='jobs'/><category term='gary vaynerchuk'/><category term='languages'/><category term='religion'/><category term='drupal'/><category term='microsoft'/><category term='joke'/><category term='social stuff'/><category term='satire'/><category term='commuting'/><category term='drugs'/><category term='utilities'/><title type='text'>Skatterbrainz Blog</title><subtitle type='html'>The blog that really doesn't matter</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default?start-index=101&amp;max-results=100'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1432</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8335881441048110267</id><published>2012-01-30T05:00:00.000-05:00</published><updated>2012-01-30T05:00:00.238-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='culture'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='management'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Regional Autonomy and Applications in the Enterprise</title><content type='html'>Unlike most of my rants and posts, I'm not going be able to propose a solution here. &amp;nbsp;This one has no solution. &amp;nbsp;It is simply a situation that exists in the VAST, and I mean VAAAAAAAAASSSSSST majority of "enterprise" business environments. &amp;nbsp;Read that as "big companies", "large organizations", or whatever you wish, but you get the point.&lt;br /&gt;&lt;br /&gt;This is really an example of the Human Condition. &amp;nbsp;That is, the desire to achieve some semblance of "order" while also achieving some&amp;nbsp;semblance&amp;nbsp;of "freedom". &amp;nbsp;Be it Federal versus State, Public versus Private, Teacher versus Student, Owned versus Licensed, Urban versus Rural, or what have you. &amp;nbsp;It's a quandary that will never be resolved because it exemplifies Yin and Yang, which like Hot and Cold, or Black and White, will always coexist in the Universe. &amp;nbsp;We must always strive to adapt to the existence of such dualities as being necessary counterparts, rather than try to bend them to our Will. &amp;nbsp;The problem is: as Humans, we cannot avoid wanting to bend them to our Will, and THIS is the dilemma.&lt;br /&gt;&lt;br /&gt;Allow me to digress...&lt;br /&gt;&lt;br /&gt;You have a central IT operation that strives to maintain control over a consistent and predictable environment. &amp;nbsp;That is a noble goal. &amp;nbsp;It makes sense. &amp;nbsp;After all, a business cannot quantify it's operational successes and deficiencies without being able accurately &lt;i&gt;quantify&lt;/i&gt;, and quantification depends entirely upon predictable elements upon which we can model situations and outcomes, hence the term "known quantity". &amp;nbsp;Without&amp;nbsp;quantification, we cannot qualify a strategy either. Qualification requires quantification in order to provide a meaningful rationale. &amp;nbsp;It simply is not practical to forecast how long it will take, nor how costly it will be, to climb to the next level if you cannot determine what kind of ladder is being used.&lt;br /&gt;&lt;br /&gt;The IT operation, typically being a cost center within a typical Western style corporate structure, is an inherent part of the operational fabric of a business. &amp;nbsp;In order to bolster the "bottom line" and keep costs down, they must commoditize many services and products internally. &amp;nbsp;The term "commoditize" comes from "commodity". &amp;nbsp;While defined as having a characteristic of being interchangeable (see &lt;a href="http://www.merriam-webster.com/dictionary/commodity"&gt;Merriam-Websters definition&lt;/a&gt;), "commodity" doesn't specifically include a reference to &lt;i&gt;quantity &lt;/i&gt;or &lt;i&gt;uniformity&lt;/i&gt;, however, it can be argued that in order to be effectively "interchangeable" implies an aspect of uniformity and consistency. &amp;nbsp;The spirit of the use of this term is in the realm of achieving a standard unit which is easily replaced, and therefore easily mass produced by virtue of consistency and functional attributes or behavior.&lt;br /&gt;&lt;br /&gt;To commoditize IT services and products is to attain a standard form, which is easily measured, and who's application is easily predicted in terms of it's impact on the business.&amp;nbsp;Commoditization usually finds its way to the production environment in the form of "trouble ticket" systems, call centers, standard configurations of devices, SLA's, SOP's, standard software products (aka "Software Catalogs"), rate structures, tiered service plans, and so on. &amp;nbsp;How they are funded varies, but the goal is usually the same: Attain a predictable and stable environment.&lt;br /&gt;&lt;br /&gt;The business operations outside of IT have their own agenda, often due to not being a cost center, but rather, a &lt;i&gt;profit center&lt;/i&gt;. &amp;nbsp;While officially part of the same team, answering to the same overlords, profit center players often set different goals, use different metrics, and march to a different drum than the cost center folks do. &amp;nbsp;One aspect that differs most is that while the IT operation seeks to gain stability and consistency, the profit center is all about flexibility, and speed. &amp;nbsp;They are not just focused on these two aspects, they are quite often entirely consumed by them.&lt;br /&gt;&lt;br /&gt;This is where the two worlds, IT and profit-center operations, diverge and often clash. &amp;nbsp;One wants to roam freely and hunt down whatever they want to&amp;nbsp;kill. &amp;nbsp;The other wants to build a fence and establish order.&lt;br /&gt;&lt;br /&gt;They may clash&amp;nbsp;subtly, with only a smoldering collection of personality conflicts, or may experience emotional outbursts and clashes of great magnitude. &amp;nbsp;The range varies by personalities involved, pressures on each side to meet objectives, and the nature of the business in which they operate. &amp;nbsp;Indeed, the stories of these cultural divides in many companies is often legendary. &amp;nbsp;These are often what drive the most basic yet core cultural aspects of any company. &amp;nbsp;This is often because of personalities, allegiances, politics and strategy, typically ahead of stated business goals.&lt;br /&gt;&lt;br /&gt;Not tangible enough for you? ...&lt;br /&gt;&lt;br /&gt;The Marketing department at Contoso (sorry, a MCITP exam reference), has encouraged several of their younger and motivated staff to develop tools to allow them to meet crucial short-term goals, as well as help strategize for the longer term goals. &amp;nbsp;They cultivate a crop of applications and content over time that helps them shape their operational processes. &amp;nbsp;It might include Microsoft Access, Excel, Adobe Photoshop, Adobe Illustrator or even Creative Suite bundles, maybe QuickBooks, and an entire army of lesser-known specialty products, that all fit like a puzzle for their needs. &amp;nbsp;The arsenal can grow staggeringly huge over time.&lt;br /&gt;&lt;br /&gt;Life is good for the Marketing folks.&lt;br /&gt;&lt;br /&gt;Then comes the IT department and their desire to upgrade the operating system and standard software bundle on all the company's computers to gain some improvements in manageability or capability. &amp;nbsp;Maybe they are looking to migrate from Windows XP and Office 2003 to Windows 7 and Office 2010, it doesn't matter, you get the idea.&lt;br /&gt;&lt;br /&gt;The developers in the Marketing group announce their opposition to the upgrade because it will "break" many of their custom tools and processes. &amp;nbsp;This is said to be due to having built a large number of Access database applications with integral VBA, forms and reports. &amp;nbsp;The developers insist that tests have shown poor results when trying to upgrade them directly into Access 2010. &lt;br /&gt;&lt;br /&gt;The time and effort required to upgrade and test them to work with the proposed upgrade is determined to be cost prohibitive by the Marketing department, so they insist IT, or corporate administration, pay for it. &amp;nbsp;The IT department objects to paying for it because the tools were developed outside of approved processes and by unqualified personnel. &amp;nbsp;Corporate Administration shakes their head at what they perceive to be a power play by both parties that feels like two children fighting over a ball.&lt;br /&gt;&lt;br /&gt;The IT department argues that if they are going to pay for the upgrade, then they earn the right to take over the stewardship and maintenance of the application to avoid future mishaps. &amp;nbsp;They insist that they are better trained and equipped to develop software than self-taught college kids, and that they can apply process maturity (read: CMMI, SDLC) to improve quality and reliability. &amp;nbsp;They&amp;nbsp;accede&amp;nbsp;to the claims that this will slow down the process for implementing feature changes, but IT insists it's for a good reason.&lt;br /&gt;&lt;br /&gt;The Marketing department argues against losing control, and to the slow turnaround by the IT processes. &amp;nbsp;They also worry about relative priorities, as a requested change might be priority #1 for Marketing, but #50 for IT in the aggregate queue. &amp;nbsp;Marketing panics over the thought of having to wait for the IT developers to gather requirements, analyze them, apply the usual project management sloth framework, and dedicate 0.25 man-hours to three developers, enter the request in a queue, and wait for notification that it's ready to test. &amp;nbsp;Then deal with the methodical, and tedious, project management process to get from Dev to Test to Production. &lt;br /&gt;&lt;br /&gt;Marketing has depended upon their own predictability factor: having their own developers on a short leash with direct control over their own priorities.&lt;br /&gt;&lt;br /&gt;Neither side budges until either (A) an incentive is introduced, or (B) a threat is introduced, which tips the balance to one side or the other. &amp;nbsp;Only then is there any significant movement towards resolution. &amp;nbsp;But when it's regressed to this emotional level, the eventual "resolution" is not what anyone had hoped for.&lt;br /&gt;&lt;br /&gt;If the balance tips in favor of Marketing, the IT folks see it as a vote against their primary objective: control. If it tips in favor of IT, the Marketing folks see it as a vote against their importance and value within the overall priorities of the company. &amp;nbsp;The losing side, whichever it happens to be, sinks into a mental state of "good enough" and "why try harder" since they now see themselves as having been diminished.&lt;br /&gt;&lt;br /&gt;And so the the battle begins.&lt;br /&gt;&lt;br /&gt;Any of this sound familiar? &amp;nbsp;I have personally watched this scenario play out, almost exactly as described, dozens of times. &amp;nbsp;I still see it all the time. &amp;nbsp;It will never end.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-6U9UlLD0rIU/TyNoD0ZSizI/AAAAAAAAJio/I9NTKw7Odm0/s1600/download.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-6U9UlLD0rIU/TyNoD0ZSizI/AAAAAAAAJio/I9NTKw7Odm0/s1600/download.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8335881441048110267?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8335881441048110267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8335881441048110267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8335881441048110267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8335881441048110267'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2012/01/regional-autonomy-and-applications-in.html' title='Regional Autonomy and Applications in the Enterprise'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-6U9UlLD0rIU/TyNoD0ZSizI/AAAAAAAAJio/I9NTKw7Odm0/s72-c/download.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7039846699572787059</id><published>2012-01-26T05:00:00.000-05:00</published><updated>2012-01-26T05:00:07.854-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='employment'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Job Tip 47: High Turnover Warning</title><content type='html'>There's lots of advice about seeking a new job and what to look for, how to look for it, when to look for it, and where. &amp;nbsp;You hear a lot about how to investigate what an employer does (line of business), what their current situation is (market performance) and future prospects (news reports). &amp;nbsp;That's all great advice to follow, but there's more. &amp;nbsp;You also need to know the bad side. &amp;nbsp;Just like when you visit a new city, most people will eventually want to know where the "bad parts" of town are, so they can avoid them (or if you're a thrillseeker: get there faster).&lt;br /&gt;&lt;br /&gt;Maybe you're one of those people that likes to keep one eyeball pinned on the employment ads to see what's going on in their career sector. &amp;nbsp;Maybe you just like to get a feel for how the employment situation is in a given geographic area. &amp;nbsp;Whatever the case, if you are one of those people, you've probably seen a few repeat employer names pop up week after week, month after month.&lt;br /&gt;&lt;br /&gt;Whenever you see a particular employer posting an unusually high number of positions, or the same position for weeks on end, check something else: &amp;nbsp;the employer's growth aspects.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ul2VLFKJUes/Txwv56yP2qI/AAAAAAAAJg8/rcLEcoZ9dRo/s1600/daily_picdump_364_14.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="214" src="http://2.bp.blogspot.com/-ul2VLFKJUes/Txwv56yP2qI/AAAAAAAAJg8/rcLEcoZ9dRo/s320/daily_picdump_364_14.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If the employer has not won any major (and I mean MAJOR) new contracts, isn't opening a new facility somewhere nearby, and isn't responding to cyclic or seasonal activity demand, start asking questions. &amp;nbsp;In many cases it's a sign that the workplace suffers from high turnover. &amp;nbsp;High turnover can be (and quite often is) a sign of a bad workplace environment, in which employees grow tired (or afraid) of it, and leave. &amp;nbsp;One particular health services technology company in our area posts over a dozen job openings every week, most of which are the same job opening. &amp;nbsp;Some of which have been reposted for over a year. &amp;nbsp;After asking around I've learned that employer is renown for treating workers badly and thus are always having to back-fill vacated positions.&lt;br /&gt;&lt;br /&gt;Then again, if you're&amp;nbsp;OK&amp;nbsp;with high turnover, no worries. &amp;nbsp;Maybe all you are interested in is a fast buck. &amp;nbsp;A quick means to a paycheck, or something to hold you over until make the next jump. &amp;nbsp;That's fine. Everyone has their own agenda. &amp;nbsp;But if you are looking for something more long term, what then?&lt;br /&gt;&lt;br /&gt;Where do you start? &amp;nbsp;You can start by asking trusted friends, co-workers, neighbors, and friendly folk at your nearest social establishments (pubs, restaurants, etc.). &amp;nbsp;Just ask "what do you know about (name-of-employer)?" and "are they a good place to work for?". &amp;nbsp;The range of responses will sometimes surprise you, and you may learn things you never expected.&lt;br /&gt;&lt;br /&gt;As an interesting exercise, try this using your current employer's name. &amp;nbsp;It's one of the oldest, easiest, cheapest, yet overlooked marketing research a business can do on their own.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7039846699572787059?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7039846699572787059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7039846699572787059' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7039846699572787059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7039846699572787059'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2012/01/job-tip-47-high-turnover-warning.html' title='Job Tip 47: High Turnover Warning'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-ul2VLFKJUes/Txwv56yP2qI/AAAAAAAAJg8/rcLEcoZ9dRo/s72-c/daily_picdump_364_14.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7497758146191665606</id><published>2012-01-24T09:00:00.000-05:00</published><updated>2012-01-24T09:00:10.981-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='systems architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Mixing Oil and Water:  Systems Engineering and Software Development</title><content type='html'>In all my years working this field we call "IT" I have never seen an environment where these two groups coexist cohesively and with a common goal. &amp;nbsp;Systems Engineering and Software Development. &amp;nbsp;Sure, they might get along well, and share working spaces, but as functional entities they typically exist in separate worlds, chasing their own beasts to slay. &amp;nbsp;And why not? &amp;nbsp;After all, they serve different purposes, for different masters (usually). They use different tools and techniques. &amp;nbsp;They often have very different reasons for doing things as well.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Ig3YeMoeHiw/Txr9yZDG_6I/AAAAAAAAJg0/QozkRtgwAOw/s1600/teamwork.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-Ig3YeMoeHiw/Txr9yZDG_6I/AAAAAAAAJg0/QozkRtgwAOw/s320/teamwork.jpg" width="256" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The Developers want to create and update things.&lt;br /&gt;The Engineers want to implement and upgrade things.&lt;br /&gt;&lt;br /&gt;Hmmm. &amp;nbsp;Those aren't that different after all. &amp;nbsp;Are they? &amp;nbsp;I know some folks would argue that engineers want to implement and "maintain" things, but maintenance is really an operations role, which in most cases falls into the hands of Systems Administrators (or "sysadmins" to use contemporary&amp;nbsp;parlance). &amp;nbsp;Engineers want to engineer things. &amp;nbsp;Simple enough. &amp;nbsp;However, &lt;i&gt;maintaining &lt;/i&gt;isn't really &lt;i&gt;engineering&lt;/i&gt;, it's really maintaining or administering; keeping things moving along without interruption. &lt;br /&gt;&lt;br /&gt;Developers want to create new things. &amp;nbsp;Write new code, new features, new widgets. &amp;nbsp;Add new capabilities or make the interface more "cool" and intuitive. &amp;nbsp;They don't want to maintain things any more than engineers do, even though they have to deal with bug fixes, patches, service packs and regression testing. &amp;nbsp;Life sucks. &amp;nbsp;Nobody said the gravy doesn't have lumps every now and then. &amp;nbsp;Engineers have to deal with those lumps too, especially when transitioning new things into the hands of the SysAdmins. &amp;nbsp;It's life (and it happens to pay pretty darn well, thank you).&lt;br /&gt;&lt;br /&gt;So, if these two camps are so similar, and they often possess such awesome potential, when then are they not more often exploited towards a common goal?&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Prologue&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I'm writing this because this quasi-mythical world is precisely where I've found myself repeatedly over the past twenty-odd years. &amp;nbsp;You see, I started out as a draftsman (on the board, with sepia, paper and Mylar, thank you), and was part of the wave of folks in the 1980's who got corralled into the emerging world of CAD, or Computer Aided Design. &amp;nbsp;That led to customizing the CAD toolset, which sucked me into the world of software development and programming like drunk sailor in front of a Thai brothel (no, I was never in the Navy, nor have I ever been to Thailand, the phrase just seems to fit).&lt;br /&gt;&lt;br /&gt;After years of that, I drifted into "mainstream" IT by way of helping an old friend implement SMS 2.0 in a large corporate environment (ok, he did 99% of the work, I just handed him some wrenches), but it was enough to turn on a&amp;nbsp;light bulb&amp;nbsp;in my head about the incredible potential of a networked environment, the tools, frameworks and protocols that make it possible to leverage a whole new level of capability and productivity on a much larger scale. &amp;nbsp;LDAP, ADSI, WMI, TCP/IP, SNMP, the Windows API stacks, Registry, Event logs, alert mechanisms, and so on. &amp;nbsp;Then came ever-increasing power and simplicity with enterprise databases (Oracle, SQL Server), and the arrival of web technologies. &lt;br /&gt;&lt;br /&gt;Oh man, I was so there. &amp;nbsp;SO THERE. It was like a labor camp escapee wandering into a Ruth's Chris restaurant on "free dinner" night.&lt;br /&gt;&lt;br /&gt;Even now, even when I get involved in another project to inject Development into Engineering, it's the exception, never the rule. &amp;nbsp;In most cases it creates such an oddity that neither camp gets offended, just more or less confused about the value. &amp;nbsp;That is, until the project starts to bear fruit. &amp;nbsp;Then I get Engineers asking about the development aspects, and Developers asking about the infrastructure engineering aspects. &amp;nbsp;It's kind of like the old Reese's Peanut Butter Cup ads from the 1980's.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Continuing On...&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;As Yogi Berra might have said, I've been doing the same thing over and over again, only differently each time. &amp;nbsp;I am handed some problems to solve, which span multiple systems, multiple departments, multiple environments, multiple business cultures, multiple security realms, multiple personalities, and asked to somehow build something of a bridge across all of it to get the traffic (information) moving. &amp;nbsp;I don't really have name for it. &amp;nbsp;Some call it BPA, or Business Process Automation, or Systems Automation, or Data Mining (not a really great term). &amp;nbsp;Some don't know what to call, so they just give a description like "that stuff Dave is working on". &amp;nbsp;But whatever it might be called, it's where these two worlds intersect. &amp;nbsp;And the result is quite a lot like the Super Hero Action League touching their power rings together (only without the "shazamm!!!" sound effect).&lt;br /&gt;&lt;br /&gt;A lot of vendors would argue you can solve almost every problem with an out-of-the-box solution, but anyone who's worked in this realm for more than a decade knows that's as realistic as pocket-sized nuclear fusion power. &amp;nbsp;Maybe someday. &amp;nbsp;Maybe someday.&lt;br /&gt;&lt;br /&gt;Putting this a slightly different way: Any time you implement something to abbreviate the steps required to perform a repetitive task, it most likely involves writing a script, a program, or configuring a bunch of options in a widget to enable this to happen. &amp;nbsp;This borders on Software Development. &amp;nbsp;With the advent of PowerShell, especially the concerted effort behind its proliferation, we're seeing a surge in the popularity and prevalence of SysAdmins writing scripts to handle chores that were once considered off limits. &amp;nbsp;Maybe it was because of a bad perception about VBscript or Batch scripting? &amp;nbsp;Maybe it's because PowerShell is becoming so intrinsically part of more and more Microsoft (and VMware) products? &amp;nbsp;Maybe it's because of it's Spartan syntax and brevity (at the command line, not always so within cmdlets)?&lt;br /&gt;&lt;br /&gt;I've met so many people in this line of work who have strong feelings about "best practices". &amp;nbsp;Many are of the opinion that unless there's a ready-made product to do something, it shouldn't be done by other means. &amp;nbsp;This is not only short-sighted and foolish, it's downright disingenuous towards the employer. &amp;nbsp;If there exists a means to solve a problem now, even if it requires a little elbow grease, you owe it to yourself, your employer, and your customers to consider it. &amp;nbsp;Especially if this involves existing means which are "free" (provided with the products already purchased: Windows, etc.) &lt;br /&gt;&lt;br /&gt;Microsoft didn't provide this insanely broad inventory of API's, protocols, command tools, and utilities for talking about at dinner parties. &amp;nbsp;They were provided for your benefit, and the benefit of their customers to build things to do more than they do "out of the box". &amp;nbsp; Don't be afraid. &amp;nbsp;Don't fear change. &amp;nbsp;The "Soft" in Software was Charles Babbage's gift to all of us that freed us of the Iron shackles to hardware. &amp;nbsp;It was intended, from the very start, to be "changeable". &amp;nbsp;To allow us to adapt processes and capabilities to meet newer challenges.&lt;br /&gt;&lt;br /&gt;If you ever, and I mean EVER, enjoyed building things as a child, whether it be&amp;nbsp;Lego's, model kits, model rockets, Linkin Logs, or even stacking wooden blocks, you should find a lot to enjoy building things on the Windows platform. &amp;nbsp;Heck, any platform to be honest, but for this discussion I'm thinking along the lines of Windows. &amp;nbsp;It seems that either a lot of grown-ups forgot how much fun that experience was, or they never got into it in the first place. &amp;nbsp;If you consider yourself an Engineer, and ever wondered what it was that Developers found appealing in their work, it's the fascination with putting things together from scratch and seeing them perform when finished. &amp;nbsp;Engineers get that sensation as well, but at a higher level in the logical technology stack. &lt;br /&gt;&lt;br /&gt;In most cases, Engineers are working with components which were provided by Developers, but this is where it often stands and never changes. &amp;nbsp;There's still room for development during the Engineering phase. &amp;nbsp;When the out-of-box components don't hit every note in the song, it can do wonders to get a Developer involved. &amp;nbsp;In most cases, if the right people are involved, the song comes out even better than expected and ideas start popping out for new potential and new directions.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;IT is all about change. &amp;nbsp;It's an intrinsic part of the fabric of technology. &amp;nbsp;To fear it is to refuse the absolute purpose in and of itself. &amp;nbsp;Nothing demonstrates, or proves, the value in embracing this more than seeking a convergence between Development and Engineering. Nothing. &amp;nbsp;The teaming of the "thinkers" with the "do-ers" is the ultimate way to push it as far as it can go. &amp;nbsp;As long as these two worlds are kept isolated, or at the very least, un-involved, the less we take this profession seriously and the more handicapped we keep our employers as a result.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7497758146191665606?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7497758146191665606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7497758146191665606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7497758146191665606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7497758146191665606'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2012/01/mixing-oil-and-water-systems.html' title='Mixing Oil and Water:  Systems Engineering and Software Development'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-Ig3YeMoeHiw/Txr9yZDG_6I/AAAAAAAAJg0/QozkRtgwAOw/s72-c/teamwork.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-138911614185968179</id><published>2012-01-20T22:21:00.000-05:00</published><updated>2012-01-20T22:21:11.791-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='articles'/><title type='text'>Well.  There Goes the Neighborhood</title><content type='html'>I had planned on retiring from blog writing for the past year. &amp;nbsp;I've given it up before, back in 2008 actually, but came back to it for a variety of reasons. &amp;nbsp;This time it's a little different. &amp;nbsp;Is it because I was inundated with e-mail begging me to continue on? &amp;nbsp;No. &amp;nbsp;Is it because I really didn't want to retire it in the first place? &amp;nbsp;Not really. Is it because I'm going to make a pitch for revenue? &amp;nbsp;Oh, HELL no. &amp;nbsp;It's actually because someone at fairly large company asked me to keep going as part of a beta program. &amp;nbsp;I'm not permitted to say any more than that so don't ask, and even if you asked, I wouldn't tell, and even if I told you, it would push you into a coma from shear boredom.&lt;br /&gt;&lt;br /&gt;New Ground Rules:&lt;br /&gt;&lt;br /&gt;1. No more shotgun blast posts. Once or twice per week at most, but probably much less than that.&lt;br /&gt;&lt;br /&gt;2. Topic focus: &amp;nbsp;The philosophical aspects of merging Software Development with Systems Engineering and Architecture with the world of Business and Social engineering.&lt;br /&gt;&lt;br /&gt;3. Whatever I want to say beyond that.&lt;br /&gt;&lt;br /&gt;Clear enough?&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-jYAvjGJBI_U/TxovHc_FRTI/AAAAAAAAJgU/XUqGVKMDgFM/s1600/eyeball-popper_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="216" src="http://1.bp.blogspot.com/-jYAvjGJBI_U/TxovHc_FRTI/AAAAAAAAJgU/XUqGVKMDgFM/s320/eyeball-popper_2.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;So, let me revisit some numbers. &amp;nbsp;Where is the blog at with respect to traffic statistics? &amp;nbsp;As of today, this blog as drawn 127,500 page views since May 2009 (the farthest back the new statistics engine will report). &amp;nbsp;The blog was brought back online in December 2007 after a brief hiatus from an earlier start in 2006.&lt;br /&gt;&lt;br /&gt;The peak traffic was in November 2011, at around 25,000 page views. &amp;nbsp;January 2012 is somewhere around 10,000, which is expected.&lt;br /&gt;&lt;br /&gt;I have some articles lined up for posting soon. &amp;nbsp;Because hardly anyone has spoken up to request topics or general interests, I'm picking my own (big surprise). &amp;nbsp;This should be interesting since I have no idea whether anyone (you) will care. &amp;nbsp;That doesn't matter. &amp;nbsp;The goal is to (A) help out a team of nice folks asking for my help, and (B) exercise my brain while I recover from chemo treatments (I'm doing very well, thank you).&lt;br /&gt;&lt;br /&gt;Stay tuned.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-138911614185968179?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/138911614185968179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=138911614185968179' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/138911614185968179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/138911614185968179'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2012/01/well-there-goes-neighborhood.html' title='Well.  There Goes the Neighborhood'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-jYAvjGJBI_U/TxovHc_FRTI/AAAAAAAAJgU/XUqGVKMDgFM/s72-c/eyeball-popper_2.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3079230014268224979</id><published>2012-01-14T18:34:00.003-05:00</published><updated>2012-01-14T18:34:41.945-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>Book News: Grinding Gears / Software Repackaging and Deployment for the Windows Platform</title><content type='html'>Relax, I'm still in blog retirement. &amp;nbsp;But I did promise earlier that I would be posting an update on my next book and that time has now come. &amp;nbsp;This is now my seventh (7th) book published, and is the culmination of about a year of compiling notes and material and drafts. &amp;nbsp;I've been close to publishing it several times, but then decided to scrap it and start over because I wasn't happy with it. &amp;nbsp;I think I am happy with this one. &amp;nbsp;At this point I have no plans for another book, but that could change.&lt;br /&gt;&lt;br /&gt;The book is called "Grinding Gears: &amp;nbsp;Software Repackaging and Deployment for the Windows Platform":&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-I0XFs3jOodc/TxIQ6d63I1I/AAAAAAAAJgI/_R3YtElibCE/s1600/gg_cover_shadow.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-I0XFs3jOodc/TxIQ6d63I1I/AAAAAAAAJgI/_R3YtElibCE/s320/gg_cover_shadow.JPG" width="288" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It's not just about packaging, or scripting, or AdminStudio, or Configuration Manager or any particular product or technology. &amp;nbsp;It's about the mindset, rationale, techniques and philosophy behind methods of packaging, repackaging, testing, and deploying software. &amp;nbsp;I've also covered some human aspects, business rationale, and so on. &amp;nbsp;Here's the Table of Contents...&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-OKfCNEuU0QE/TxIA_u-rWpI/AAAAAAAAJfw/EVnujc7j-nc/s1600/toc_capture.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://1.bp.blogspot.com/-OKfCNEuU0QE/TxIA_u-rWpI/AAAAAAAAJfw/EVnujc7j-nc/s320/toc_capture.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;I also wanted to thank a lot of people for helping me and inspiring me...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-RANPooRAxVE/TxIPHiNbidI/AAAAAAAAJgA/Qc3fq1g1E3s/s1600/thanks_clip.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://1.bp.blogspot.com/-RANPooRAxVE/TxIPHiNbidI/AAAAAAAAJgA/Qc3fq1g1E3s/s320/thanks_clip.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This book is currently in review by Amazon, and will be available for purchase very soon. &amp;nbsp; It will be published exclusively for Amazon Kindle at $10.99 (USD), and available for Amazon customers in UK, France, Germany, Spain and Italy. &amp;nbsp;Remember, you don't need a Kindle to read Kindle e-books. &amp;nbsp;You can read them on almost any mobile device, tablet, desktop or laptop computer using one of their &lt;a href="http://www.amazon.com/gp/help/customer/display.html/ref=hp_left_ac?ie=UTF8&amp;amp;nodeId=200783640"&gt;Reading Apps&lt;/a&gt;, or using their &lt;a href="http://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=amazon%20cloud%20reader&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CCsQFjAA&amp;amp;url=https%3A%2F%2Fread.amazon.com%2F&amp;amp;ei=1g8ST7GNMoelsAKnjZHkAw&amp;amp;usg=AFQjCNHN-nY3LJmcwcOAakqDAVqO8rcm8g&amp;amp;sig2=6vimjZ392hAf75wgUZR0XQ"&gt;Cloud Reader&lt;/a&gt; as well.&lt;br /&gt;&lt;br /&gt;Meanwhile, you can check on the availability by visiting my Amazon page at&amp;nbsp;&lt;a href="http://www.amazon.com/David-M.-Stein/e/B006BHXOFE/ref=ntt_athr_dp_pel_pop_1"&gt;http://www.amazon.com/David-M.-Stein/e/B006BHXOFE/ref=ntt_athr_dp_pel_pop_1&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3079230014268224979?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3079230014268224979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3079230014268224979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3079230014268224979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3079230014268224979'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2012/01/book-news-grinding-gears-software.html' title='Book News: Grinding Gears / Software Repackaging and Deployment for the Windows Platform'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-I0XFs3jOodc/TxIQ6d63I1I/AAAAAAAAJgI/_R3YtElibCE/s72-c/gg_cover_shadow.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1051565765939608480</id><published>2011-12-31T10:06:00.001-05:00</published><updated>2011-12-31T10:06:40.542-05:00</updated><title type='text'>Happy New Year!</title><content type='html'>It would be rude of me not to wish all of you a Happy and Safe New Year and I hope it is prosperous and fun for all of you and your friends and families! &amp;nbsp;Take care!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1051565765939608480?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1051565765939608480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1051565765939608480' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1051565765939608480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1051565765939608480'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/happy-new-year.html' title='Happy New Year!'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1085614452514162851</id><published>2011-12-24T04:00:00.000-05:00</published><updated>2011-12-24T04:00:03.713-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><title type='text'>Looking Back.  Looking Ahead</title><content type='html'>December 24, 2011 will mark 5 years to the day that I started this blog. &amp;nbsp;It's been through some interesting times. &amp;nbsp;Some good. &amp;nbsp;Some not so good. &amp;nbsp;It was my crutch when dealing with depression following my being laid off back in 2008. &amp;nbsp;It was my pressure vent at all other times. &amp;nbsp;Sometimes I just needed to share some crazy thought with whomever read it. &amp;nbsp;Sometimes I just wanted to make someone chuckle a little. &amp;nbsp;I pissed off a few people. I let a few people down. &amp;nbsp;I made a few people smile and a few speak up in agreement.&lt;br /&gt;&lt;br /&gt;The time has come to put a fork in it though. &amp;nbsp;I may post occasionally, but not nearly as frequently as I have in the past. &amp;nbsp;I spend more time on Google+, Twitter, and Facebook anyway, and those are my pressure relief valves at the moment. &amp;nbsp;If you still want to follow what I'm ranting about, you can hit me up at one of the following links. &amp;nbsp;I'd love to hear from you.&lt;br /&gt;&lt;br /&gt;I will likely post an update when my next book is released, which I'm hoping will be in January. &amp;nbsp;That's an aggressive target date, so it might slip if I can't knock out the research I need to finish it up in time.&lt;br /&gt;&lt;br /&gt;In any case, I want to THANK YOU for following me this long, or however long you've been following me, even if this is the first post you've read (go back and read some of my older ones if you have time). &amp;nbsp;I also want to wish you and your family and friends a Merry Christmas, Happy Hannukah, Happy Kwanzaa, Happy Ramadan or just a Happy ___(fill in your preferred celebratory event) _____. &amp;nbsp;May you be happy, healthy and prosperous and may you make those around you happier as well.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://twitter.com/#!/skatterbrainzz"&gt;Twitter&lt;/a&gt;&lt;br /&gt;&lt;a href="https://plus.google.com/110918701133252279727/about"&gt;Google+&lt;/a&gt;&lt;br /&gt;&lt;a href="http://facebook.com/skatterbrainz"&gt;Facebook&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-9Kg0Sk80yzY/TvPwf9I4QKI/AAAAAAAAJSY/SkKZ3kEiDmo/s1600/IMG_0155.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-9Kg0Sk80yzY/TvPwf9I4QKI/AAAAAAAAJSY/SkKZ3kEiDmo/s320/IMG_0155.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1085614452514162851?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1085614452514162851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1085614452514162851' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1085614452514162851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1085614452514162851'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/looking-back-looking-ahead.html' title='Looking Back.  Looking Ahead'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-9Kg0Sk80yzY/TvPwf9I4QKI/AAAAAAAAJSY/SkKZ3kEiDmo/s72-c/IMG_0155.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8541126812097178798</id><published>2011-12-22T16:02:00.003-05:00</published><updated>2011-12-22T16:02:33.682-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><title type='text'>Part 2</title><content type='html'>...If the World was perfect, Part 2:&lt;br /&gt;&lt;br /&gt;Every Windows platform software vendor would provide ONLY MSI-based installers, and all of their updates would be .MSP patches. &amp;nbsp;Setup.exe files would be outlawed.&lt;br /&gt;&lt;br /&gt;Software vendors who publish software that requires users to have Administrator rights would be hanged in public.&lt;br /&gt;&lt;br /&gt;Microsoft Access would be banned. &amp;nbsp;The mere mention of its name would be punishable by death. &amp;nbsp;Anyone caught with an .MDB or .ACCDB file on their computer would have their hands sewn to their face.&lt;br /&gt;&lt;br /&gt;Wearers of sagging pants would be punished by having their pants removed in public.&lt;br /&gt;&lt;br /&gt;Bumper stickers would have to be funny or be removed.&lt;br /&gt;&lt;br /&gt;All beer would be required to be 8% or higher.&lt;br /&gt;&lt;br /&gt;Marijuana would be legal. &amp;nbsp;Why not? &amp;nbsp;Guns, Tobacco and Alcohol are legal.&lt;br /&gt;&lt;br /&gt;Anyone caught arguing over PC vs Mac would be forced to wear a chicken suit for an entire week in public.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8541126812097178798?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8541126812097178798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8541126812097178798' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8541126812097178798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8541126812097178798'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/part-2.html' title='Part 2'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4000695760935212143</id><published>2011-12-22T00:44:00.001-05:00</published><updated>2011-12-22T00:44:07.945-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='cranium drainium'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><category scheme='http://www.blogger.com/atom/ns#' term='dumb'/><category scheme='http://www.blogger.com/atom/ns#' term='stupidity'/><title type='text'>If the World was Perfect</title><content type='html'>Alas, the world is anything *but* perfect. &amp;nbsp;I'd say that on some days it's horribly imperfect, and on other days it's more perfect than not. &amp;nbsp;A lot of that depends on where you live, where you are at the moment, what your health and financial situation is like, and what your family, work and social condition happens to be.&lt;br /&gt;&lt;br /&gt;But IF it were perfect...&lt;br /&gt;&lt;br /&gt;Government would actually work FOR the people and try to accomplish something besides playing games and pointing fingers while taking lobbyist money and making empty promises.&lt;br /&gt;&lt;br /&gt;Wireless networks would be pervasive across all places, everywhere, all of the time.&lt;br /&gt;&lt;br /&gt;Weathermen would be fined for incorrect forecasts&lt;br /&gt;&lt;br /&gt;City council and mayors would not be allowed to keep their former jobs at banks, real estate companies and investment firms.&lt;br /&gt;&lt;br /&gt;SUVs and Trucks would get their own lane, so the rest of us could see what's happening up ahead (and not have headlights on the back of our heads)&lt;br /&gt;&lt;br /&gt;Bike and walking paths would connect every city and throughout each city&lt;br /&gt;&lt;br /&gt;A mass transit system would get us where we need to go and when we need to get there, and it would be reliable and cheap.&lt;br /&gt;&lt;br /&gt;Religious people would be happy with their religion and stop blabbering about it to everyone else all the time.&lt;br /&gt;&lt;br /&gt;There would be no more xxx-American hyphenations. &amp;nbsp;You're either in or you're out. &amp;nbsp;Pick one.&lt;br /&gt;&lt;br /&gt;People who save peoples lives would be paid the same as professional athletes.&lt;br /&gt;&lt;br /&gt;People who defend our country, especially in active combat, would be paid the same as professional athletes.&lt;br /&gt;&lt;br /&gt;IT engineers would be seen as sex symbols and heroes of mankind.&lt;br /&gt;&lt;br /&gt;News reports would be required to report ONLY facts, nothing else. No editorializing. &amp;nbsp;No speculating. &amp;nbsp;Every story must be reported in 30 seconds or less. &amp;nbsp;Weather forecasts in 15 seconds. &amp;nbsp;Penalty for going over: labor camp or 24 hours of laxatives.&lt;br /&gt;&lt;br /&gt;Political campaigns, including ads, banners, marketing of any kind would be limited to only the last week before the election occurs.&lt;br /&gt;&lt;br /&gt;Pro football games would be required to show equal time for game plays as well as cheerleader close-ups.&lt;br /&gt;&lt;br /&gt;Anyone guilty of buying the same car, motorcycle, truck, SUV, van or bicycle as anyone else within a 1 mile radius would be sent to work in Somalia for a year. &amp;nbsp;This is America: the land of innovation and imagination. Try to act like it.&lt;br /&gt;&lt;br /&gt;Customers would get exactly 15 seconds to order at any drive-thru. &amp;nbsp;After that, a machine would crush the vehicle in a compactor, with all occupants, and dispose of it immediately.&lt;br /&gt;&lt;br /&gt;Concert tickets would never cost more than $20.&lt;br /&gt;&lt;br /&gt;I'll think of more later....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4000695760935212143?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4000695760935212143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4000695760935212143' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4000695760935212143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4000695760935212143'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/if-world-was-perfect.html' title='If the World was Perfect'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2447021712662760306</id><published>2011-12-21T21:37:00.001-05:00</published><updated>2011-12-21T21:37:20.643-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft access'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='stupidity'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>I ****ing Hate Microsoft Access</title><content type='html'>&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;I posted this on my Google+ page, but since I'm sure many of you (ok, most of you) don't ever go there, I'm reposting it here because I'm still pissed off...&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;Time to Vent...&lt;/span&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;Microsoft Access is evil. It is the worst God-forsaken piece of shit ever perpetrated on enterprise customers in the history of mankind. It has held up migrations of Office suites in more places than I have days to count. The notion of bundling applications WITH databases is as stupid as riding a bicycle off a cliff. I fucking HATE that application. My teeth are clenched. This is not good. I must continue...&lt;/span&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;God****it - Access has wasted so much time of so many people's lives that will never be recouped. I can almost forgive IBM for OS/2 Warp, and Autodesk for R13, hell I can even forgive MS-DOS, but I cannot forgive Access. What a fetid turd of technological vacuousness. Is that even a real word? Vacuousness? Whatever. I made it up because thinking about Access pisses me off.&lt;/span&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;Is there any shortage of reiterated emphasis on "de-coupled" application logic on MSDN? On TechNet? On ANY programming site? Publish a rule and break it. Just as I blogged about with the Configuration Manager AD publishing guideline, but whatever, I need a glass of wine now...&lt;/span&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;br style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;Today makes at least two dozen situations, over the past 12 years, where a customer has to hold up everything because the dipshit department is arguing over upgrading their craphole Access "application" and who will pay for it (you know: "We think YOU should pay because YOU are forcing US to upgrade to 2010" versus "We think YOU should pay because YOU made a stupid garage-app piece of fucking shit mistake that WE are having to pay for in lost time and productivity") Wash - Rinse - and Repeat - AGAIN.&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-xvkpwrDsLU0/TvKX2-4PMxI/AAAAAAAAJPs/gPDG9OjfZv4/s1600/pushing+face+into+sand+frustration.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="255" src="http://1.bp.blogspot.com/-xvkpwrDsLU0/TvKX2-4PMxI/AAAAAAAAJPs/gPDG9OjfZv4/s320/pushing+face+into+sand+frustration.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2447021712662760306?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2447021712662760306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2447021712662760306' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2447021712662760306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2447021712662760306'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/i-ing-hate-microsoft-access.html' title='I ****ing Hate Microsoft Access'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-xvkpwrDsLU0/TvKX2-4PMxI/AAAAAAAAJPs/gPDG9OjfZv4/s72-c/pushing+face+into+sand+frustration.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3617211233279888454</id><published>2011-12-20T23:05:00.000-05:00</published><updated>2011-12-20T23:05:16.860-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='interviews'/><category scheme='http://www.blogger.com/atom/ns#' term='psychology'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='fun'/><category scheme='http://www.blogger.com/atom/ns#' term='marketing'/><category scheme='http://www.blogger.com/atom/ns#' term='gary vaynerchuk'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>If You Watch One Video on this Site...</title><content type='html'>You need to watch this one. &amp;nbsp;Gary Vaynerchuk has been around for a long time, even before Wine Library TV, he was a mover and a shaker. &amp;nbsp;A brilliant guy. &amp;nbsp;Pardon the language (NSFW), but the message makes the f-bombs forgettable. &amp;nbsp;Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/lcqCAqZtedI" width="560"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3617211233279888454?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3617211233279888454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3617211233279888454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3617211233279888454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3617211233279888454'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/if-you-watch-one-video-on-this-site.html' title='If You Watch One Video on this Site...'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/lcqCAqZtedI/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7587443227835350286</id><published>2011-12-18T23:32:00.000-05:00</published><updated>2011-12-18T23:32:25.820-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><title type='text'>Six Days and Counting</title><content type='html'>I've still been posting things as you can tell, but the days are winding down fast. &amp;nbsp;Six more left.&lt;br /&gt;&lt;br /&gt;Meanwhile, I've been working on my next book, and it's killing me. &amp;nbsp;I'm hoping to have it out in January. &amp;nbsp;It's the biggest book I've done yet, and much more complex and challenging. &amp;nbsp;That's all I'm going to say for now because it's still not a 100% done deal at this point. &amp;nbsp;I will post something when it's for certain.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7587443227835350286?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7587443227835350286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7587443227835350286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7587443227835350286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7587443227835350286'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/six-days-and-counting.html' title='Six Days and Counting'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-84552088313532733</id><published>2011-12-17T10:05:00.001-05:00</published><updated>2011-12-17T10:05:11.589-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='system center'/><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='systems architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='sccm'/><category scheme='http://www.blogger.com/atom/ns#' term='config manager'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>A Circle of Imaginary Links</title><content type='html'>&lt;p&gt;Anyone who has worked with Configuration Manager for a while knows about Packages, Programs, Advertisements, and Collections.&amp;#160; They also know the difference between &amp;quot;Software Products&amp;quot; and &amp;quot;Add Remove Programs&amp;quot; as it pertains to inventory reporting.&amp;#160;&amp;#160; Seasoned software packagers (or more appropriately termed &amp;quot;repackagers&amp;quot;) know about creating .MSI and bootstrap .EXE InstallShield packages as well.&amp;#160; But there's a sinister problem lurking in all of this...&lt;/p&gt;  &lt;p&gt;The names assigned to Packages, Programs, Advertisements and Collections are arbitrary.&amp;#160; Sure, many places have adopted standards for naming things, but still, it's a human dependency.&lt;/p&gt;  &lt;p&gt;The names assigned to an application are controlled by the vendors, but only if they created the application.&amp;#160; And then there's the issue of how well they apply consistent naming standards to their individual components.&amp;#160; &lt;/p&gt;  &lt;p&gt;Just yesterday I was poking around to find how many installations of a product at version &amp;quot;7.11.3&amp;quot; were in our environment.&amp;#160; As I watched the report start to build, it was showing &amp;quot;7.10&amp;quot; and even &amp;quot;7.9.1&amp;quot; installations as well.&amp;#160; But the engineers assured me that the package they deployed had uninstalled previous versions before initializing the new installation.&amp;#160; After some investigation, it turns out the vendor left components in their 7.11.3 installer that still identified themselves as &amp;quot;Product Name 7.9.1&amp;quot; so Configuration Manager dutifully picked it up and reported it.&amp;#160; Switching over to the ARP (that's Add or Remove Programs list) report, it correctly showed 7.11.3 was the only installation.&lt;/p&gt;  &lt;p&gt;I won't even get into the products that dump garbage components on computers that identify themselves with product names like &amp;quot;Update&amp;quot;, &amp;quot;O&amp;amp;%$__#&amp;quot; and &amp;quot;Company Name&amp;quot;.&amp;#160; So far, free markets and consumer-driven competition are not doing much to fix that mess, but neither would and overly restrictive government regulation.&amp;#160; It's just typical stupid human behavior (e.g. laziness).&amp;#160; &lt;/p&gt;  &lt;p&gt;Back to the topic.&lt;/p&gt;  &lt;p&gt;So, when pulling a report of what software is installed on computers, it can be helpful to also include some attributes for each product such as &amp;quot;Is-Packaged&amp;quot;, &amp;quot;Is-Windows7-Ready&amp;quot;, &amp;quot;Is-Current-Supported&amp;quot;, and so on.&amp;#160; You can beat some of that out of Asset Intelligence, but some you cannot.&amp;#160; For example, to really know if an installed product has a corresponding Configuration Manager Package and Advertisement, you need to somehow relate the installed Product Name and Version to the Configuration Manager Package and Advertisement.&amp;#160; Sounds easy enough, right?&lt;/p&gt;  &lt;p&gt;Ok, you've got an environment where you have deployed 500 installations of AutoCAD 2012 using a network license client, and 25 of AutoCAD 2012 with a standalone license.&amp;#160; From ARP reports it will show them all as &amp;quot;AutoCAD 2012 English&amp;quot; or something generic like that.&amp;#160; But you can't use the same package to deploy both (well, you could, but now we're talking about some twisted branched logic in the package using a script or some other intermediary program logic), so how would you know that you've got &amp;quot;A Package&amp;quot; for &amp;quot;AutoCAD 2012&amp;quot; and which one it belongs to?&lt;/p&gt;  &lt;p&gt;Even if you switch to linking to the Installed Programs list (pulled from a query of .EXE files on the computer) it would show &amp;quot;AutoCAD 2012&amp;quot; or &amp;quot;AutoCAD R18.x&amp;quot; or something like that, not &amp;quot;AutoCAD 2012 Network Client&amp;quot;, because they will both read from &amp;quot;acad.exe&amp;quot; and the only difference you could pull might be the size of the file itself.&amp;#160; What about products that are only installed as part of another product advertisement?&amp;#160; What about all those Autodesk Design Review and DWG True View installations that were placed by your various AutoCAD and Revit and Inventor deployment packages?&amp;#160; How do you automate the referential integrity of those applications to a source package and advertisement?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;In case you haven't already surmised, this is all analogous to Reverse Lookup DNS.&amp;#160; Forward lookup is easy:&amp;#160; This package and advertisement installs this application.&amp;#160; Fine.&amp;#160; Now, what package and advertisement installed this application on these 100,000 computers?&amp;#160; How do I automate that workflow?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;What happens when you have in-house developers and packagers putting together things to deploy?&amp;#160; How about those not uncommon cases where the package doesn't really install a product, but registers components and files that support another product, but which are given their own name by virtue of how business operational minds like to give names to things that don't really exist?&amp;#160; You know, when you install and register three DLL files, open a firewall port and now the user can access a special web application in their browser, so that deployed bundle of crap is given the name of whatever it is that they connect to via the browser.&amp;#160; It's not really an installed application, is it?&amp;#160; If the users rely on this to connect to a web application named &amp;quot;Fubar&amp;quot;, good luck convincing them to call it &amp;quot;installed components to support Fubar&amp;quot;.&amp;#160; They're going to call it &amp;quot;Fubar&amp;quot; and ask &amp;quot;when are you going to get my Fubar installed?&amp;quot;&amp;#160; Oh yes.&amp;#160; You can bet on that.&lt;/p&gt;  &lt;p&gt;I'm digressing.&amp;#160; It's much easier to convey this verbally than in writing.&amp;#160; I have lots of stories to illustrate this weird delusional mess.&lt;/p&gt;  &lt;p&gt;This is the mind-bending thought process that swims around in my head as I've been building a web-based asset management process for a customer.&amp;#160; The process allows them to overtly control these arbitrary relationships for more than just reporting.&amp;#160; It also allows them to manage distribution that comes into play when executing computer replacements versus computer refreshes (refresh in this case means upgrade the OS and map in required application upgrades at the same time).&amp;#160; &lt;/p&gt;  &lt;p&gt;For example, the computers in a particular department-based collection all have XP and Office 2007, but they will be reimaged via SCCM OSD with Windows 7 and Office 2010, but they each have unique LOB (line of business) applications installed.&amp;#160; Many require an upgrade to work with Windows 7, or the customer budgeted for new versions based on feature enhancements and decided to tie it into the same upgrade window.&amp;#160; Regardless, they needed a quick and easy way to select an upgrade mapping individually and in batch to say &amp;quot;these computers get the newer version&amp;quot; and &amp;quot;these don't get an upgrade&amp;quot; as well as &amp;quot;remove it from these computers entirely&amp;quot;.&amp;#160; It's much more complex than this, but that's a simplified example.&lt;/p&gt;  &lt;p&gt;In short, all I can say is that I LOVE working with this stuff.&amp;#160; It falls squarely in the field of work I crave: &amp;quot;Windows Platform Business Process Automation&amp;quot; or WPBPA.&amp;#160; I believe I invented this term, so neener neener neeeeeeener.&amp;#160; I need some breakfast and coffee as I've been up all night working on my next book project. Holy cow - what sleep can do for you.&amp;#160; Cheers!&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lh6.ggpht.com/-KrXE4J-J0sY/TuyvpuEb5oI/AAAAAAAAJME/SIQ2ivFlCKE/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" /&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-84552088313532733?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/84552088313532733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=84552088313532733' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/84552088313532733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/84552088313532733'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/circle-of-imaginary-links.html' title='A Circle of Imaginary Links'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-KrXE4J-J0sY/TuyvpuEb5oI/AAAAAAAAJME/SIQ2ivFlCKE/s72-c/wlEmoticon-smile%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1668351796788907000</id><published>2011-12-16T19:19:00.003-05:00</published><updated>2011-12-16T19:19:52.497-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><title type='text'>Amazon Prime Members: Check This Out</title><content type='html'>I am enrolling several of my ebooks in the KDP "Select" program, which makes them available for free check-out, on a monthly basis, to Amazon Prime members. &amp;nbsp;For more information check out Amazon Prime and look in the Books section. &amp;nbsp;The books I am enrolling in this program are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The AutoCAD Network Administrator's Bible, 2012 Edition&lt;/li&gt;&lt;li&gt;The Visual LISP Developer's Bible, 2011 Edition&lt;/li&gt;&lt;li&gt;The Packager's Pocket Reference, 2nd Edition&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;I am also working on another book focused on software repackaging and deployment for Windows platforms. It is tentatively due for release in January 2012. &amp;nbsp;When it is released, it will also be added to the KDP Select program.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thank you!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1668351796788907000?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1668351796788907000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1668351796788907000' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1668351796788907000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1668351796788907000'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/amazon-prime-members-check-this-out.html' title='Amazon Prime Members: Check This Out'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6873318757408740430</id><published>2011-12-12T11:45:00.001-05:00</published><updated>2011-12-12T21:52:20.354-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='psychology'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='management'/><category scheme='http://www.blogger.com/atom/ns#' term='a'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Database Digressions and Developmental Digestion</title><content type='html'>&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-7PlUXITtRmo/TuavYDZ6FBI/AAAAAAAAJLI/AdRY-uCUzA8/s1600/Divisions1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-7PlUXITtRmo/TuavYDZ6FBI/AAAAAAAAJLI/AdRY-uCUzA8/s320/Divisions1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Put on your caffeine hat and come with me on a voyage into the ethereal world of&amp;nbsp;nerds versus geeks. &amp;nbsp;That's the party peel-off sticker I'm slapping our foreheads, written with a blunt Crayola crayon. &amp;nbsp;With enough alcohol and caffeine&amp;nbsp;it will all make sense soon enough. &amp;nbsp;Let's go...&lt;br /&gt;&lt;br /&gt;I would venture to say that 99.99 percent of software development projects, probably&amp;nbsp;even software development organizations, are arranged into de facto groups that place the&amp;nbsp;application "coders" in a separate function from the database folks. &amp;nbsp;The problem&amp;nbsp;this has created has been legendary. &amp;nbsp;It's not only led to human behavioral issues&amp;nbsp;and philosphical approaches to address such structural idiosyncracies, but it has also&amp;nbsp;led to mechanical approaches, such as LINQ and XPATH, and so on. &amp;nbsp;Trying to fit&amp;nbsp;automation processes to human processes is always a challenge, on a good day. &amp;nbsp;When&amp;nbsp;the human process is broken, it's a disaster that unfolds slowly and often at an&amp;nbsp;incredibly high cost (both in terms of time and money).&lt;br /&gt;&lt;br /&gt;Did i say INCREDIBLY high cost? &amp;nbsp;Yes. Incredibly high. &amp;nbsp;The problem is that it's&amp;nbsp;almost always a secondary, or tertiary cost. &amp;nbsp;The kind that don't stand out in&amp;nbsp;distinction on a balance sheet, so they often hide in the margins. &amp;nbsp;Those are&amp;nbsp;what often lead to bad feelings between IT groups and the Financial&amp;nbsp;groups. &amp;nbsp;The main reason is that the Financial folks are left to ponder where these&amp;nbsp;strange, nebulous cost creeps are coming from, while the tech-minded IT (Dev) folks are&amp;nbsp;rarely prepared to articulate and quantify them adequately. &amp;nbsp;They may indeed "know"&amp;nbsp;where they come from, but cannot communicate it in the language of Finance, so&amp;nbsp;they shy away from it, making the problem worse over time. &amp;nbsp;This is analogous to&amp;nbsp;a couple that don't discuss sensitive issues because they know they will always&amp;nbsp;turn into an argument.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mechanical Aspects&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I'm digressing into the human/financial aspects. &amp;nbsp;But what about the structural&amp;nbsp;and mechanical aspects?&lt;br /&gt;&lt;br /&gt;I have mixed feelings about things like LINQ. &amp;nbsp;It's technically a very clever,&amp;nbsp;impressively creative approach to translating mental processes from one&amp;nbsp;world to another. &amp;nbsp;But at the same time, I've rarely seen die-hard DBA's embrace it&amp;nbsp;over traditional SQL/T-SQL, so the divergence is not only mitigated, but elevated&amp;nbsp;with yet another wedge driven into place. &amp;nbsp;A classic example is when a Dev guy walks&amp;nbsp;over to ask for help with a complex SQL query that was coded in LINQ (or anything&amp;nbsp;other than T-SQL) and the DBA looks at it and says "Sorry. &amp;nbsp;I work with SQL. &amp;nbsp;Can't help you." &amp;nbsp;I am aware there are exceptions to this scenario, but they are "exceptions", not&amp;nbsp;the general, majority rule, at least from what I've seen and heard. &amp;nbsp;I admit that&amp;nbsp;I haven't seen or experienced every environment, so I'm obviously speaking anecdotally.&lt;br /&gt;&lt;br /&gt;I'm picking on LINQ unfairly though. It's not really a fault of LINQ. &amp;nbsp;It's a&amp;nbsp;respectable concept and the incarnation has evolved respectably as well. &amp;nbsp;It's&amp;nbsp;somewhat of a situation of "blaming the messenger" when the message is the problem. &amp;nbsp;The message is unavoidable though. &amp;nbsp;The message is a symptom of an age-old broken&amp;nbsp;human condition in the IT environment: divisional politics. &amp;nbsp;Not departmental,&amp;nbsp;but "divisional" in the same sense as "functional", whereby the DBA and Dev folks&amp;nbsp;are functionally divided. &amp;nbsp;They may be best of friends. &amp;nbsp;They may be mortal enemies. &amp;nbsp;It doesn't really matter, since they still focus on, and operate within their own&amp;nbsp;distinct worlds, with their own unique languages and customs.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Bridges of Translation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If you are in a large enough organization to afford the luxury of a dedicated API&amp;nbsp;group, they may be your bridge. &amp;nbsp;Having to convey the wishes of the AppDev folks&amp;nbsp;with the plumbing capabilities of the server and DBA folks, they become the liaisons&amp;nbsp;of different cultures and dialects. &amp;nbsp;They may even provide the abstraction that&amp;nbsp;spares the AppDev team from the horrors of learning a different culture in order&amp;nbsp;to cook their programmatic banquet meals. &amp;nbsp;If you're not that fortunate, it sucks to be you, maybe. &amp;nbsp;Just kidding. &amp;nbsp;Ok, I'm really not kidding, it really does suck to be in that situation. &amp;nbsp;I've been there so I'm not trying to condescend as much as sympathize.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ramifications&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The end result of these cultural divides is that databases go in one direction and code goes off in another direction. &amp;nbsp;Efficiency suffers. &amp;nbsp;Progress is stammered. &amp;nbsp;If the groups are in different physical locations (different rooms, buildings, cities, countries) it only&amp;nbsp;exacerbates&amp;nbsp;this further by making it too easy to cultivate an "us versus them" environment. &amp;nbsp;If you have any poison pill personalities in either group it can be gasoline on a smoldering fire, so be careful of those.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Light at the End of the Tunnel&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If you can bridge the divide, it is always worth the effort. &amp;nbsp;Always. &amp;nbsp;I cannot stress that enough. &amp;nbsp;Even if pride &amp;nbsp;is a boulder to swallow, break it into smaller pieces and work on it. &amp;nbsp;Offer some concessions, some goodwill, something to prove any ney-sayers and poison pills on the other side incorrect about their assumptions about your group. &amp;nbsp;Conversation is key. &amp;nbsp;Get the people talking. &amp;nbsp;Learn what the other side has to deal with. &amp;nbsp;Maybe there are pains your group causes them that you're not even aware of. &amp;nbsp;Just learning about such things can help you refocus and make adjustments that may seem minor on your end but could be HUGE on the other end.&lt;br /&gt;&lt;br /&gt;Making exchanges of conciliatory effort can go a long way towards building a stronger team, improving communication, raising productivity and positive outlook, and ultimately making a better product. &amp;nbsp;Quality can't happen without a cohesive group of people, and you can't bridge any divides by waiting for the "other side" to make the effort. &amp;nbsp;You often have to make the first move and meet them halfway. &amp;nbsp;Ultimately, until people issues are resolved, you can't achieve an efficient operation or efficient processes. &amp;nbsp;This is where most of the bullshit forms-bloated corporate environments grew out of. &amp;nbsp;People issues give rise to barriers of mistrust and&amp;nbsp;push-back&amp;nbsp;over perceived unfairness of responsibility and effort. &amp;nbsp;You can throw billions of dollars at trying to make those processes automated but if they attempt to lift the human process into a computerized process model, it will be horribly broken, and inefficient at best.&lt;br /&gt;&lt;br /&gt;Before you ever consider purchasing or developing a system to model a business process, do some deep analysis of the process itself. &amp;nbsp;Never start with the current process as the assumption of efficiency. &amp;nbsp;In most cases it's nowhere near what it should be. &amp;nbsp;Fix the process. &amp;nbsp;Build cohesion. &amp;nbsp;Push forward, but don't drag the baggage along. &amp;nbsp;It may look frightening at first, and people will scream and complain and flip out, but if the process is re-modeled properly, nobody can argue with a better model. &amp;nbsp;Once that's done, you can translate that into software and hardware and move on to the next challenge.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6873318757408740430?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6873318757408740430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6873318757408740430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6873318757408740430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6873318757408740430'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/database-digressions-and-developmental.html' title='Database Digressions and Developmental Digestion'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-7PlUXITtRmo/TuavYDZ6FBI/AAAAAAAAJLI/AdRY-uCUzA8/s72-c/Divisions1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7861918125449990124</id><published>2011-12-11T21:38:00.001-05:00</published><updated>2012-01-22T11:07:42.103-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><title type='text'>A Stack of Quarters</title><content type='html'>Sometimes I stop and ponder simple things. &amp;nbsp;Maybe it's because I'm getting older. Or maybe it's because I don't have a "life" so it leaves me plenty of time to spend on pondering simple things. &amp;nbsp;Either way, I'm sure it would make a long-dead Chinese philosopher proud.&lt;br /&gt;&lt;br /&gt;Today, I was playing with a stack of quarters (coins) and thinking about how I perceive the value in them. &amp;nbsp;My financial situation is fair at the moment, but follows a predictable wave and trough pattern with each bi-weekly payroll cycle. &amp;nbsp;On pay day, it's just a stack of quarters. &amp;nbsp;By the second week however, it's my next cup of coffee and snack. &amp;nbsp;When I was laid off a few years back, and unable to find a job, that stack of quarters was precious. I looked at it like a crash survivor would look at the last bottle of water on an isolated island.&lt;br /&gt;&lt;br /&gt;It's still, and has always been, just a stack of coins. &amp;nbsp;Their intrinsic value had never really changed. &amp;nbsp;My value of them however changed greatly. &amp;nbsp;It still changes, just not as wildly.&lt;br /&gt;&lt;br /&gt;After that thought had run its course, I looked around the room to assess what other material objects fell into this strange bucket of perspective. &amp;nbsp;My TV. &amp;nbsp;My clothes. &amp;nbsp;My blankets. &amp;nbsp;But what about family and friends? &amp;nbsp;Yep. &amp;nbsp;And as absurd as this might sound, and impossible to believe, it's true. &amp;nbsp;It's true for you as well. &amp;nbsp;Here's an example...&lt;br /&gt;&lt;br /&gt;You say good bye to your parents after dinner. &amp;nbsp;You kiss your kids good night. &amp;nbsp;You let your dog outside. &amp;nbsp;You do your routine things. &amp;nbsp;But the second life crosses things up and you almost lose one of them, suddenly, immediately, they become incredibly more precious and valuable. &amp;nbsp;Any parent who has panicked while searching for their child in a crowded place knows damn well what I'm talking about. &amp;nbsp;After any perceived threat to the stability of your bond with those you love has occurred, your value of their well-being, their existence, their love, their presence is magnified millions of times.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="text-align: -webkit-auto;"&gt;Is it really just a stack of quarters?&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-KFOEjOhwodE/Txw0Kp4p8WI/AAAAAAAAJhE/ubRgGp4UWH0/s1600/images.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-KFOEjOhwodE/Txw0Kp4p8WI/AAAAAAAAJhE/ubRgGp4UWH0/s1600/images.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7861918125449990124?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7861918125449990124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7861918125449990124' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7861918125449990124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7861918125449990124'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/stack-of-quarters.html' title='A Stack of Quarters'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-KFOEjOhwodE/Txw0Kp4p8WI/AAAAAAAAJhE/ubRgGp4UWH0/s72-c/images.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4196496345762610309</id><published>2011-12-08T18:52:00.001-05:00</published><updated>2011-12-08T21:52:20.426-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><title type='text'>Counting Down and Catching Up</title><content type='html'>Only 16 days left until this blog is retired. &amp;nbsp;To catch up on my boring stuff. &amp;nbsp;Warning: This post contains a lot of aimless rambling, but with the name "skatterbrainz" I hope you didn't expect anything else...&lt;br /&gt;&lt;br /&gt;I'm still working on multiple projects and another book (maybe). &amp;nbsp;The book is becoming a much bigger project than I expected (not the book on packaging either, totally different topic), so I may be having to make a go/no-go decision soon. &amp;nbsp;It will depend on how well I can reign in the scope and keep it manageable. &amp;nbsp;Otherwise it will be yet another scrapped project. &amp;nbsp;I'll keep you posted on &lt;a href="https://twitter.com/#!/skatterbrainzz"&gt;Twitter &lt;/a&gt;and &lt;a href="https://plus.google.com/u/0/110918701133252279727"&gt;Google+&lt;/a&gt;, which is where I will be spending most of my time from now on. &amp;nbsp;Some &lt;a href="http://facebook.com/skatterbrainz"&gt;Facebook &lt;/a&gt;as well. &amp;nbsp;Friend me or follow me, whatever you like. I could use more friends on Twitter, but I'm using Google+ more than anything else right now. &amp;nbsp;I just like the vibe at this point. &amp;nbsp;It reminds me of Facebook in 2006-2007, before it got bloated and&amp;nbsp;stupefied.&lt;br /&gt;&lt;br /&gt;I finally ditched the Blackberry. &amp;nbsp;My 11th Blackberry device since 2000 actually. &amp;nbsp;I now have a&amp;nbsp;shiny&amp;nbsp;new iPhone 4S 16Gb, and I love it. &amp;nbsp;I can't stop playing with the damn thing. &amp;nbsp;I spent a few days in and out of the Verizon store comparing the Androids and iPhones (they didn't have any WP7 models on hand, go figure), and decided on the iPhone 4S mainly for two reasons: &amp;nbsp;The price and the form/size. &amp;nbsp;Some folks refuse to accept that I don't want to friggin huge screen. &amp;nbsp;I want something I can carry and drop in my pocket without looking like a brick. &amp;nbsp;I don't watch a lot of movies on a mobile device, I'll use a laptop or a TV (gasp! &amp;nbsp;a real TV?!) &amp;nbsp;So I'm happy with this for now. &amp;nbsp;Maybe later I'll grow tired of it and yearn for something different, but I'm good for now.&lt;br /&gt;&lt;br /&gt;The Windows Web Admin project is long dead, but a lot of it lives on a much bigger project I've been building for a customer. &amp;nbsp;I have to say I love working on it and it's turning into much more than I ever expected. &amp;nbsp;I'm glad the customer likes it as well, that makes it a win-win.&lt;br /&gt;&lt;br /&gt;My current arsenal of gadgets to entertain my life:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Windows 7&lt;/li&gt;&lt;li&gt;Google Chrome 17 /dev&lt;/li&gt;&lt;li&gt;Office 2010&lt;/li&gt;&lt;li&gt;Paint.NET 3.x&lt;/li&gt;&lt;li&gt;TextPad 5&lt;/li&gt;&lt;li&gt;Windows Server 2008 R2&lt;/li&gt;&lt;li&gt;VMware Workstation 8&lt;/li&gt;&lt;li&gt;Calibre (for authoring e-books)&lt;/li&gt;&lt;li&gt;System Center Configuration Manager 2007 R3 and 2012 RC1 (lab setup)&lt;/li&gt;&lt;li&gt;WSUS 3 SP2 (at home, yes, at home)&lt;/li&gt;&lt;li&gt;InstallShield AdminStudio 10 SP2&lt;/li&gt;&lt;li&gt;SQL Server 2008 R2&lt;/li&gt;&lt;li&gt;iPhone 4S (foshizzle!)&lt;/li&gt;&lt;li&gt;Kindle 3 (love it!)&lt;/li&gt;&lt;li&gt;A 1995 Subaru Legacy with 160,000 miles (runs like a champ)&lt;/li&gt;&lt;li&gt;A dog, standard model Beagle, female&lt;/li&gt;&lt;li&gt;A cat, standard model black-n-white, female&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;In a short while all of these will appear outdated, including myself.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thought: &amp;nbsp;As a systems engineer / consultant / architect / developer / nerd / geek, I've come to accept that all that I work on will eventually be replaced and forgotten. &amp;nbsp;I think back to all of the folks who pioneered new things in the 1980's, 1990's, and early 2000's, who's efforts paved the roads for progress. &amp;nbsp;Most, if not all, of their accomplishments have been replaced and forgotten. &amp;nbsp;My grandfather made furniture. &amp;nbsp;I'm sure there are people still rocking in his chairs he made decades ago. &amp;nbsp;Sometimes I wonder what "progress" really is.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4196496345762610309?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4196496345762610309/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4196496345762610309' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4196496345762610309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4196496345762610309'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/counting-down-and-catching-up.html' title='Counting Down and Catching Up'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7642367930997302712</id><published>2011-12-04T13:32:00.001-05:00</published><updated>2011-12-04T19:28:10.708-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cad'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='marketing'/><category scheme='http://www.blogger.com/atom/ns#' term='industry'/><category scheme='http://www.blogger.com/atom/ns#' term='engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>How AutoCAD Changed the World</title><content type='html'>That's kind of a bold, hype-ish title, am I right? &amp;nbsp;You're probably rolling your eyes, or saying "yeah, sure, whatever" or something like that. &amp;nbsp;But give me a chance to explain...&lt;br /&gt;&lt;br /&gt;Back in the early 1980's, if you did any "design" or "drafting" work, you were most likely working on a physical drawing board and tracing your ideas out on Vellum, Paper, or Mylar sheets using various kinds of mechanical pencil materials or maybe a Rapidograph ink applicator. &amp;nbsp;Maybe you used templates and lettering guides, or shape tracers or flexible curves and those stupid-looking weights we called "ducks" or "whales". &amp;nbsp;In the mid-1980's came the first real significant influx of computerized design technologies. &amp;nbsp;They had weird names like AutoTrol, CADAM and so on. &amp;nbsp;They were collectively termed "CAD" for Computer Aided Design. &amp;nbsp;If they were connected to manufacturing machinery, they were called "CAD/CAM" for CAD + "Computer Aided Manufacturing" (or "Machining"). &amp;nbsp;If they did engineer calculations from design data, they were called "CAD/CAE" some were "CAD/CAM/CAE" and some were just stupid and we called them "overpriced crap". &amp;nbsp;But they were magical for their time.&lt;br /&gt;&lt;br /&gt;Here's the snapshot of "before": &amp;nbsp;These first-generation CAD/CAM/CAE systems only, I repeat ONLY, ran on UNIX platforms. &amp;nbsp;Not only that, but most were tuned for specific UNIX platforms, so they were hardware specific, such as DEC, IBM, Sun or a few others (most of which are all gone now). &amp;nbsp;The software alone was often in the $10,000 to $30,000 range PER SEAT. &amp;nbsp;The hardware was just as expensive, or even more expensive. &amp;nbsp;I worked on one system back in that era that was priced at $50,000 for the hardware "workstation" and the design software. &amp;nbsp;Keep in mind that you HAD to purchase vendor support since they did not allow you to work on it yourself, often keeping many of the features, settings and capabilities secret until you paid someone to reveal them to you. &amp;nbsp;Oh yeah. Good times they were not.&lt;br /&gt;&lt;br /&gt;Then came along some scrappy little company named Autodesk and they had this cheap little CAD product called "AutoCAD" that actually ran on an IBM-PC. &amp;nbsp;The other vendors laughed and tried to ignore it. &amp;nbsp;I remember an IBM rep saying to us "that's a toy - a piece of crap that'll never go anywhere". &amp;nbsp;I sure wish I could have recorded that for later on.&lt;br /&gt;&lt;br /&gt;Maybe you've heard the story of the butterfly that caused a hurricane. &amp;nbsp;This is very similar.&lt;br /&gt;&lt;br /&gt;So, as this tiny little snowflake rolled through the fledgling IBM-PC "compatable" market, it began to gather some snow and grow bigger and heavier. &amp;nbsp;For the peanut gallery out there: I'm not implying it was bloated. &amp;nbsp;It wasn't. &amp;nbsp;It became heavier with customers and customer momentum. &amp;nbsp;Still a bit immature at R9, it made heads turn at R10 and R11. &amp;nbsp;Then R12 came out and that snowball was now the size of a truck and rolling faster. &amp;nbsp;As the UNIX market began to respond, it lost some of its footing as well. &amp;nbsp;The big players started losing key developers and managers to smaller startups, all trying desperately to stir up excitement to fend off this new upstart called the "PC". &amp;nbsp;Computervision stumbled, which led to Intergraph and Pro/Engineer. &amp;nbsp;CADAM, Unigraphics and others started making adjustments, and even tried "realigning" licensing costs, but they caught some breathing room when Autodesk stumbled with R13. &amp;nbsp;Then came R14 and it was pretty much a done deal as far as customers balling up those checks for the expensive UNIX fees, and stroking new checks to the much less expensive PC product lines.&lt;br /&gt;&lt;br /&gt;As customers moved from UNIX to Windows and Windows NT at an increasing rate, so too did many stalwart UNIX product vendors. &amp;nbsp;CAD/CAM/CAE products previously only available on UNIX were suddenly announcing PC versions. &amp;nbsp;Even the most discerning NASTRAN vendors were poking at the PC market, especially as the PC hardware specs began an accelerated upgrade path.&lt;br /&gt;&lt;br /&gt;I saw this firsthand at least four employers, and dozens of businesses I interacted with, and multiple branches of the U.S. Department of Defense: Navy, Army, Air Force, USMC, Coast Guard, even NASA.&lt;br /&gt;&lt;br /&gt;No other PC-based CAD product had as much impact on the CAD market, and pushing customers to take the PC platform seriously. &amp;nbsp;It also pointed the light on their budgets and ROI, and suddenly program managers were faced with making serious choices about continuing on with their life-draining budget expenditures, or doing some soul searching about this new PC-based direction. &lt;br /&gt;&lt;br /&gt;The rest is history.&lt;br /&gt;&lt;br /&gt;Is the UNIX market dead? &amp;nbsp;No. &amp;nbsp;Not at all. &amp;nbsp;Has it scale back? &amp;nbsp;Yes. &amp;nbsp;Most of the major UNIX vendors from Compaq, Sun, Prime, DEC, Silicon Graphics, Helix, Unigraphics, are gone, or have been acquired and renamed. &amp;nbsp;IBM, Dassault, and Integraph remain vibrant, while PTC has undergone multiple shifts in product and services offerings, but seems to be alive and well. &amp;nbsp;One major change from twenty years ago has been the emergence of Siemens.&lt;br /&gt;&lt;br /&gt;But even with these legacy companies still bouncing along, they've ported most, sometimes all, of their products to the Windows platform. &amp;nbsp;Love them or hate them, that little snowflake had an impressive impact indeed.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-duiJrB5vxIM/TtwP7sBp-PI/AAAAAAAAJK8/N03PWookRGE/s1600/flyf.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://3.bp.blogspot.com/-duiJrB5vxIM/TtwP7sBp-PI/AAAAAAAAJK8/N03PWookRGE/s320/flyf.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7642367930997302712?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7642367930997302712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7642367930997302712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7642367930997302712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7642367930997302712'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/how-autocad-changed-world.html' title='How AutoCAD Changed the World'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-duiJrB5vxIM/TtwP7sBp-PI/AAAAAAAAJK8/N03PWookRGE/s72-c/flyf.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4489886040683675401</id><published>2011-12-01T23:10:00.001-05:00</published><updated>2011-12-03T17:24:40.056-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web development'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>10 Nerds You Should Be Thankful For</title><content type='html'>&lt;h1&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;I decided it was time to give thanks to the lords of nerdism. &amp;nbsp;Those who bravely paved the way for you to sit on your lazy ass all day and bitch online about things you have absolutely no control over. &amp;nbsp;Those who made it possible for your to share your expert opinion of politics, economics, religion, fashion, movies, music, food, and TV shows, even though you are quite likely technically unqualified to even speak about any of those subjects. &amp;nbsp;Those who made it possible for you to tweet with one hand, with a drink in the left hand, while driving 60 MPH with your knee on the steering wheel. &amp;nbsp;Those who made it possible for every member of your family to immerse themselves into their own isolated worlds of game consoles, smartphones, media players, tablets and computers, rather than sitting together in one place and having a real conversation. &amp;nbsp;Those who made it possible for you to spend half your life's savings on music and movies you will never actually own. &amp;nbsp; You know: &amp;nbsp;all the good stuff technology has brought us. &amp;nbsp;Here they are...&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1&gt;1 - Grace Hopper&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/5/55/Grace_Hopper.jpg/300px-Grace_Hopper.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://upload.wikimedia.org/wikipedia/commons/thumb/5/55/Grace_Hopper.jpg/300px-Grace_Hopper.jpg" width="272" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Grace was an American computer scientist and United States Navy officer. A pioneer in the field, she was one of the first programmers of the Harvard Mark I computer, and &lt;span style="color: red;"&gt;developed the first compiler for a computer programming language&lt;/span&gt;. &amp;nbsp;She also &lt;span style="color: red;"&gt;coined the term "debugging"&lt;/span&gt;, and was credited for having said "&lt;i&gt;it's easier to ask for forgiveness than it is to get permission&lt;/i&gt;".&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;Modern programming languages, which are what &lt;u&gt;all &lt;/u&gt;of your current time-destroying toys are built with. &amp;nbsp;Yes, kids, without C++ you wouldn't have Windows, OSX, iOS, Android, Linux, UNIX or any modern computers, tablets, phones, game consoles, and nifty digital dashboards in your nifty little cars. &amp;nbsp;Yes, even your dumbass "Sync" in your Ford car, and your OnStar GM crap are the recipients of compiled programming. &amp;nbsp;&lt;span style="color: blue;"&gt;&lt;b&gt;Thank you Grace! &amp;nbsp;You kicked ass like a rock star!&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;h1&gt;2 - Tim Berners-Lee&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Tim_Berners-Lee_closeup.jpg/220px-Tim_Berners-Lee_closeup.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Tim_Berners-Lee_closeup.jpg/220px-Tim_Berners-Lee_closeup.jpg" width="213" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;That's actually "Sir Tim", as he was knighted. &amp;nbsp;A British computer scientist and MIT professor, he invented the "World Wide Web" and co-invented the HyperText Transfer Protocol, aka "HTTP", upon which "the Web" is possible.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;Unlimited access to 10% useful information, and 90% useless information, mixed with advertisements, porn, games, gambling, medication, and more porn. &amp;nbsp;You also got Amazon, online banking and bill payments, Hulu, Facebook, Google, Twitter, Yelp, FourSquare, UrbanSpoon, Pandora, Spotify, YouTube, and of course: thousands of porn sites.&lt;br /&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;h1&gt;3 - Jonathan Ive&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Jonathan_Ive_2009.jpg/220px-Jonathan_Ive_2009.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Jonathan_Ive_2009.jpg/220px-Jonathan_Ive_2009.jpg" width="213" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Jonny is Senior Vice President of Industrial Design at Apple. &amp;nbsp;He is the person who was able to articulate the ideas of Steve Jobs into award-winning, industry-leading, technologically revolutionary product designs.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;The iMac, titanium and aluminum PowerBook G4, G4 Cube, MacBook, unibody MacBook Pro, MacBook Air, iPod, iPhone, and iPad. &amp;nbsp;Did I mention the iPhone? &amp;nbsp;Oh yeah, you know, that phone that everyone either loves or hates, but without which there WOULD NOT be a touch screen phone market at all. &amp;nbsp;You'd have Nokia and Blackberry clones piled up on every store shelf.&lt;br /&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;h1&gt;4 - John Walker&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.fourmilab.ch/autofile/www/flyf.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://www.fourmilab.ch/autofile/www/flyf.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Founded Autodesk in 1982. &amp;nbsp;Was the primary person behind the push to incorporate an extensible programming platform within the product to allow customers to enhance the product to suit their needs. &amp;nbsp;The language he chose was LISP and the specialized version built into their flagship AutoCAD product was AutoLISP. (he's pictured in center)&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;The first significant move from ridiculously expensive mainframe and workstation Computer Aided Design (CAD) products to much more affordable IBM/PC capability. &amp;nbsp;The result was an explosion of personal computer design products, modeling and simulation products, visualization and animation products, all of which were previously only available on expensive UNIX hardware at very expensive prices, and without much end-user customization capabilities. &amp;nbsp;Now you have a robust PC market that includes AutoCAD, Revit, Inventor, 3DS Max, Integraph, MicroStation, Maya, NX-CAD, CATIA (used to only be on UNIX), NASTRAN (same), SolidWorks, ANSYS, ALGOR, and much more.&lt;br /&gt;&lt;h1&gt;5 - Vint Cerf&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/b/bb/Vint_Cerf_-_2010.jpg/200px-Vint_Cerf_-_2010.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/b/bb/Vint_Cerf_-_2010.jpg/200px-Vint_Cerf_-_2010.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Help create the "Internet" from DARPANET.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;Need I say more? &amp;nbsp; You're welcome. &amp;nbsp;Now, just try to not f*** it up, mmmkay?&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;h1&gt;6 - Marc Andreeson&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://ibiblio.org/pioneers/images/pics/andreessen.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://ibiblio.org/pioneers/images/pics/andreessen.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Marc Andreessen is an American entrepreneur, investor, software engineer, and multi-millionaire best known as co-author of the NCSA &lt;b&gt;Mosaic&lt;/b&gt;, the first widely-used web browser, and co-founder of Netscape Communications Corporation.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;Lul Cats, YouTube, Reddit, LiveLeaks, Google, Yahoo!, IMDb, YouPorn, Netscape, Internet Explorer, Opera, Webkit (Safari, Chrome), IRS.gov, and of course: ComedyCentral.com. &amp;nbsp;Anyone remember Lynx? &amp;nbsp;How about WAIS, Veronica, Gopher, Telnet and archie? &amp;nbsp;Good times. &amp;nbsp;Not really. &amp;nbsp;Thank God for Marc's work and for giving us the web browser.&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;7 - John Von Neumann&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-0HboCc0aXLM/TtqcjyExsTI/AAAAAAAAJGk/0n7lwMhi4zk/s1600/Von_Neumann_5.jpeg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="216" src="http://4.bp.blogspot.com/-0HboCc0aXLM/TtqcjyExsTI/AAAAAAAAJGk/0n7lwMhi4zk/s320/Von_Neumann_5.jpeg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Devised the "Von Neumann architecture" model, on which all modern computer systems are based.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;You're reading this on a device that wouldn't exist without it. &amp;nbsp;I would rank John up their with Grace actually, but he didn't exert the same flair for personality that she did. &amp;nbsp;Nonetheless, awesome.&lt;br /&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;h1&gt;8 - Dennis Ritchie&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/0/01/Dennis_MacAlistair_Ritchie_.jpg/225px-Dennis_MacAlistair_Ritchie_.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/0/01/Dennis_MacAlistair_Ritchie_.jpg/225px-Dennis_MacAlistair_Ritchie_.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Dennis was an American computer scientist who "helped shape the digital era."[1] He created the C programming language and, with long-time colleague Ken Thompson, the UNIX operating system.[1] Ritchie and Thompson received the Turing Award from the ACM in 1983, the Hamming Medal from the IEEE in 1990 and the National Medal of Technology from President Clinton in 1999&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;The basis of most modern programming languages, from C++ to Java and .NET. &amp;nbsp;For that you got operating systems, software, firmware (still a lot of it done in ANSI C), mobile device software, automotive software, aircraft software, satellite communications software, oh yeah: and all the games you waste most of your day playing. &amp;nbsp;RIP Dennis.&lt;br /&gt;&lt;h1&gt;9 - George Boole&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/6/6c/George_Boole.jpg/200px-George_Boole.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/6c/George_Boole.jpg/200px-George_Boole.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;Boole formalized &lt;i&gt;Boolean algebra&lt;/i&gt;, the basis for digital logic and computer science. &amp;nbsp;You know: AND, OR, NOT, etc.&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;Every single programming language known to mankind depends on Boolean logic. &amp;nbsp;Dare I say, you're stupid beer-stained flat-panel TV couldn't exist, much less be turned on, were it not for his efforts. &amp;nbsp;Now, say it with me: "Boole Rules!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;10 - John McCarthy&lt;/h1&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-CJGA0hVm_JU/TtqfpqcabVI/AAAAAAAAJGs/jcYdAKjDdx0/s1600/jmcbw.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-CJGA0hVm_JU/TtqfpqcabVI/AAAAAAAAJGs/jcYdAKjDdx0/s320/jmcbw.jpg" width="227" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;What this nerd did&lt;/h3&gt;&lt;br /&gt;McCarthy was an American computer scientist and cognitive scientist. He coined the term "artificial intelligence" (AI), invented the Lisp programming language and was highly influential in the early development of AI. &amp;nbsp;McCarthy also influenced other areas of computing such as time sharing systems. He received the Turing Award for his major contributions to the field of AI, and many other accolades and honors, including the United States National Medal of Science.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What you got for it&lt;/h3&gt;I wouldn't be writing this if it weren't for him. &amp;nbsp;My first programming language involvement was with Common LISP and then AutoLISP. &amp;nbsp;Thanks to John Walker (see above), for making combining McCarthy's work with the graphical design aspect. &amp;nbsp;That was the bug that bit me in the ass (ok, my brain, same thing) and hooked me into programming. &amp;nbsp;Beyond that, his efforts to explore the world of "AI" have led to all sorts of derivative technologies from voice recognition, to traffic management systems, to language parsing, to encryption methods, to statistical analysis. &amp;nbsp;RIP.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Sources:&lt;/h3&gt;&lt;div&gt;Yeah, I used a lot of web sites, but most of them were nearly identical with Wikipedia, at least as far as the basic stuff I was looking for, and it had the others linked as well, so, whatever...&lt;/div&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Grace_Hopper"&gt;http://en.wikipedia.org/wiki/Grace_Hopper&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Tim_berners-lee"&gt;http://en.wikipedia.org/wiki/Tim_berners-lee&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Jonathan_Ive"&gt;http://en.wikipedia.org/wiki/Jonathan_Ive&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/John_Walker_(programmer)"&gt;http://en.wikipedia.org/wiki/John_Walker_(programmer)&lt;/a&gt;&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Autodesk"&gt;http://en.wikipedia.org/wiki/Autodesk&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Vint_Cerf"&gt;http://en.wikipedia.org/wiki/Vint_Cerf&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ibiblio.org/pioneers/andreesen.html"&gt;http://www.ibiblio.org/pioneers/andreesen.html&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/John_von_Neumann"&gt;http://en.wikipedia.org/wiki/John_von_Neumann&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Dennis_Ritchie"&gt;http://en.wikipedia.org/wiki/Dennis_Ritchie&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/George_Boole"&gt;http://en.wikipedia.org/wiki/George_Boole&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/John_McCarthy_(computer_scientist)"&gt;http://en.wikipedia.org/wiki/John_McCarthy_(computer_scientist)&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4489886040683675401?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4489886040683675401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4489886040683675401' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4489886040683675401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4489886040683675401'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/10-nerds-you-should-be-thankful-for.html' title='10 Nerds You Should Be Thankful For'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-0HboCc0aXLM/TtqcjyExsTI/AAAAAAAAJGk/0n7lwMhi4zk/s72-c/Von_Neumann_5.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6752974614655373459</id><published>2011-12-01T22:39:00.001-05:00</published><updated>2011-12-01T22:51:09.075-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='cranium drainium'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Refactoring.  Part 2</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-XpOGlUzdge4/TthK38rzkpI/AAAAAAAAJF4/bToSvlwnPVg/s1600/blackpagepart1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/-XpOGlUzdge4/TthK38rzkpI/AAAAAAAAJF4/bToSvlwnPVg/s200/blackpagepart1.png" width="141" /&gt;&lt;/a&gt;&lt;/div&gt;Guitarists search for more efficient fingering patterns. &amp;nbsp;Percussionists search for more efficient sticking and foot patterns. &amp;nbsp;Cooks search for more efficient cooking methods. &amp;nbsp;Delivery drivers search for more efficient routes. &amp;nbsp;Athletes search for more efficient technique. &amp;nbsp;Programmers search for more efficient algorithms and coding methods. &amp;nbsp;If every new year you don't look back at the previous year and think "I really didn't know shit" compared to what you now know, you're not growing. Refactoring is a means of growing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6752974614655373459?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6752974614655373459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6752974614655373459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6752974614655373459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6752974614655373459'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/12/refactoring-part-2.html' title='Refactoring.  Part 2'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-XpOGlUzdge4/TthK38rzkpI/AAAAAAAAJF4/bToSvlwnPVg/s72-c/blackpagepart1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-9133719138640839979</id><published>2011-11-29T12:44:00.001-05:00</published><updated>2011-11-29T12:45:08.804-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cad'/><category scheme='http://www.blogger.com/atom/ns#' term='education'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='training'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>AU Virtual 2011 - Network License Manager Course</title><content type='html'>If you haven't done so already, you should definitely check out Jimmy Bergmark's course on "Autodesk Network License Manager". &amp;nbsp;It covers a vast amount of information about setting up, configuring, managing and troubleshooting the FlexLM environment and your Autodesk products. &amp;nbsp;Good stuff! &amp;nbsp;Highly recommended.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-9133719138640839979?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/9133719138640839979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=9133719138640839979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9133719138640839979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9133719138640839979'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/au-virtual-2011-network-license-manager.html' title='AU Virtual 2011 - Network License Manager Course'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-9208399937968439907</id><published>2011-11-26T11:14:00.001-05:00</published><updated>2011-11-26T11:19:42.002-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Panning for Gold</title><content type='html'>"Using scripts to process data is more like panning for gold than transmuting lead into gold. &amp;nbsp;So if there is gold in the garbage, the scripts can find it, consolidate it, and output it in a shiny pretty form. &amp;nbsp;If there isn't any gold, then you will just get some finely sorted and polished garbage." - Joe (&lt;a href="http://blog.joeware.net/2011/11/22/2339/"&gt;Joeware.net&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;I couldn't agree more. &amp;nbsp;It takes the age-old phrase of "garbage-in = garbage-out" and sprinkles some technical context on it like a good seasoning on a grilled chicken (can you tell I'm hungry?)&lt;br /&gt;&lt;br /&gt;This also reminded me of a quote from a colleague (and former supervisor) regarding the use of software-based "automation" for business processes: &amp;nbsp;"If you automate a broken process, you only get an automated broken process." (fix the process before you try to automate it!!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-9208399937968439907?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/9208399937968439907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=9208399937968439907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9208399937968439907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9208399937968439907'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/panning-for-gold.html' title='Panning for Gold'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7780587420230872977</id><published>2011-11-24T10:40:00.001-05:00</published><updated>2011-11-24T11:09:50.090-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='art'/><category scheme='http://www.blogger.com/atom/ns#' term='culture'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><category scheme='http://www.blogger.com/atom/ns#' term='military'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><category scheme='http://www.blogger.com/atom/ns#' term='medical'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Good Enough is NOT Good Enough</title><content type='html'>&lt;span style="font-family: Arial, sans-serif; font-size: x-small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;span style="line-height: 18px;"&gt;Since the dawn of mankind, the popular perception of the status quo for almost every single "technological" thing was "it works fine, why change it?" &amp;nbsp;They said that about the chariot, the map of the heavens/planets/sun, the catapult, the bow and arrow, the wagon, the castle and moat, the front-loading single-shot pistol and rifle, Sulpha drugs, leeches, slavery, battleships, Model T cars, steam engines. &amp;nbsp;Remember Roger Bannister? &amp;nbsp;Yeah, EVERY single "expert" and physician of his time swore on a truckload of Bibles that any human who broke the 4 minute mile would die. &amp;nbsp;The human body simply couldn't achieve that goal.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;span style="line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;span style="line-height: 18px;"&gt;Then someone stuck their neck out and said "fuck that!". &amp;nbsp;I'm sorry if that offends you, but that's essentially what they said/did. &amp;nbsp;And for doing that they were ridiculed, shunned, banished, jailed and even killed. &amp;nbsp;They dared to disagree with the Status Quo; the masses; the majority. &amp;nbsp;Nearly every single one of the people the broke those de facto "rules" or "limits" endured mockery throughout their efforts to break the barrier they set out to overcome. &amp;nbsp;Some never saw recognition, as they died before the "masses" woke up and realized that they had indeed done something incredibly helpful or history-changing for mankind.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="line-height: 18px;"&gt;&lt;span style="font-family: Arial, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-oMMzu43izgQ/Ts5q2yHizxI/AAAAAAAAJE8/29cf1g-3HJM/s1600/old_phone.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-oMMzu43izgQ/Ts5q2yHizxI/AAAAAAAAJE8/29cf1g-3HJM/s320/old_phone.jpg" width="289" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-family: Arial, sans-serif; font-size: x-small;"&gt;&lt;span style="line-height: 18px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;Remember the story of Thomas Watson Sr. and Thomas Watson Jr.? &amp;nbsp;The infamous head of IBM who insisted a "personal computer" was a dumb idea and would never be practical. &amp;nbsp;Junior waited until his turn came up and then he seized upon the moment to introduce the "IBM personal computer". &amp;nbsp;Same thing for HP and Atari and Steve Jobs and Steve Wozniak. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;So, when I look around at the stupid crap we just "live with" and pay little attention to, saying things like "it's worked for years/decades, why change it?" I want to shake my head in disbelief that we've given up. &amp;nbsp;A bar of soap? &amp;nbsp;A toothbrush. &amp;nbsp;Deoderant. &amp;nbsp;Frying pans. &amp;nbsp;Toasters (have they ever been improved? &amp;nbsp;it's long overdue), Roofing Technology, Door ways. &amp;nbsp;A coffee cup. &amp;nbsp;Software. &amp;nbsp;Computers. &amp;nbsp;Aircraft. Surgical Procedures. Medicine. &amp;nbsp;Cancer Treatments. &amp;nbsp;Education systems. Weapons technology. Network routing and throughput. &amp;nbsp;Movies. &amp;nbsp;Music. Art. &amp;nbsp;Food. The list goes on and on.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;Never say "good enough"! &amp;nbsp;Anything you point at can be improved upon. &amp;nbsp;Anything. &amp;nbsp;Maybe not in our lifetime. &amp;nbsp;Maybe not until future discoveries lead to secondary potentials to be realized. &amp;nbsp;But they will happen. &amp;nbsp;The longer we stand still, point and say "it's fine as-is" the longer it will take to make it better.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;Most people look at Cancer treatment and say "wow, look how far they've come.", until their 5 year old child is diagnosed with Cancer. &amp;nbsp;Then it quickly becomes "when will it be cured?" and "why can't we make faster progress?" &amp;nbsp;Aircraft are just fine until the next crash investigation reveals a design flaw. &amp;nbsp;Music is just fine until you hear that one new song that grabs your attention and makes you ask "who is that?!" &amp;nbsp;Same for art, movies and food by the way. &amp;nbsp;And software? &amp;nbsp;In 2004 there was no Facebook. &amp;nbsp;There was no Twitter, FourSquare, Yelp or UrbanSpoon either. &amp;nbsp;In 2000 there wasn't any Google either. &amp;nbsp;No VMware. &amp;nbsp;All the "smart" phones were bulky, limited and boring. &amp;nbsp;Are you old enough to remember the first laptops? &amp;nbsp;The first microwave ovens? &amp;nbsp;The first video tape recorders? &amp;nbsp;The first tablet prototypes in the 1990s? &amp;nbsp;Today those things seem like steam engines. &amp;nbsp;Remember when car companies swore air bags, even seat belts, were a complete waste of time? &amp;nbsp; Remember when they thought stomach ulcers were just bad luck and you had to live with them?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif;"&gt;Good enough is NOT good enough. &amp;nbsp;Ever.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7780587420230872977?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7780587420230872977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7780587420230872977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7780587420230872977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7780587420230872977'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/good-enough-is-not-good-enough.html' title='Good Enough is NOT Good Enough'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-oMMzu43izgQ/Ts5q2yHizxI/AAAAAAAAJE8/29cf1g-3HJM/s72-c/old_phone.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3452000629941209730</id><published>2011-11-23T20:52:00.001-05:00</published><updated>2011-11-23T20:56:18.919-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web development'/><category scheme='http://www.blogger.com/atom/ns#' term='facebook'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google Plus vs Facebook: URL Resolution</title><content type='html'>You know that nifty, clever feature, where you paste a URL into Facebook or Google Plus, and they chew on it for a second or two, and then create a mini-snippet to post? &amp;nbsp;Usually, they pull in a graphic and maybe the page description, or meta-description. &amp;nbsp;So, I noticed today how different they really are. &amp;nbsp;I also noticed that, as much as I really don't like Facebook anymore, it does a better job of rendering and polishing that result before posting it. &amp;nbsp;Case in point: &amp;nbsp;I posted the URL to an interesting book (ha ha!)...&amp;nbsp;&lt;a href="http://www.amazon.com/Stuck-Up-Inserted-Ingested-ebook/dp/B0056DR5KY"&gt;http://www.amazon.com/Stuck-Up-Inserted-Ingested-ebook/dp/B0056DR5KY&lt;/a&gt;&amp;nbsp; into Facebook and Google Plus. &amp;nbsp;Here's how each of them rendered the result...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Facebook&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-8E-7OdgD7d0/Ts2j0kzx3RI/AAAAAAAAJEs/lMhXbzQa5D0/s1600/snip_facebook.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="126" src="http://2.bp.blogspot.com/-8E-7OdgD7d0/Ts2j0kzx3RI/AAAAAAAAJEs/lMhXbzQa5D0/s320/snip_facebook.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;Google Plus&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-CNf_P1i8rLU/Ts2j45DaEiI/AAAAAAAAJE0/17HqTdYnbGU/s1600/snip_gplus.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="162" src="http://3.bp.blogspot.com/-CNf_P1i8rLU/Ts2j45DaEiI/AAAAAAAAJE0/17HqTdYnbGU/s320/snip_gplus.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Google Plus pulls in the authors and makes it part of the subject heading, but it ends up being too cluttered. &amp;nbsp;The Facebook result is cleaner and easier to read. &amp;nbsp;Also, the descriptions are very different. &amp;nbsp;Entirely different, actually. &amp;nbsp;I think the Facebook result wins.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3452000629941209730?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3452000629941209730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3452000629941209730' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3452000629941209730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3452000629941209730'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/google-plus-vs-facebook-url-resolution.html' title='Google Plus vs Facebook: URL Resolution'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-8E-7OdgD7d0/Ts2j0kzx3RI/AAAAAAAAJEs/lMhXbzQa5D0/s72-c/snip_facebook.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6667624079334671704</id><published>2011-11-22T20:15:00.001-05:00</published><updated>2011-11-22T22:27:29.404-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='culture'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>When They Just Don't Get It</title><content type='html'>I was driving home from work and thinking about ponderous experiences in my past career endeavors. &amp;nbsp;I do that sometimes when I'm not speeding and weaving around like a blind man with Turrette's. &amp;nbsp;It stemmed from a lengthy discussion with one of my nephews about our relative "quality of life" and "career satisfaction" stuff, and so on. &amp;nbsp;Guys often get into this subject matter after blabbering about titties and power tools. &amp;nbsp;(There's nothing wrong with either of those, but you can only talk about them so long before you run out of superlatives and metaphors.)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-fqwgE-btFVY/TsxoGFmIiFI/AAAAAAAAJEk/wWVrQyrFXkQ/s1600/iStock_gears_people_culture.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="286" src="http://3.bp.blogspot.com/-fqwgE-btFVY/TsxoGFmIiFI/AAAAAAAAJEk/wWVrQyrFXkQ/s320/iStock_gears_people_culture.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;I said to him "I think I'm in the best situation I've ever been in, at least so far. &amp;nbsp;I'm enjoying it while it lasts, because nothing lasts forever."&lt;br /&gt;&lt;br /&gt;We digressed into two aspects of that statement: one for each sentence.&lt;br /&gt;&lt;br /&gt;As for the second one (I'm working in reverse): I've been in too many "sure bet" situations that suddenly turned a wrong corner. &amp;nbsp;Once after 10 years, another after 7 years, and another after only 5 months. &amp;nbsp;Shit happens. &amp;nbsp;When you've had a CEO shake your hand and hand you a mixed drink, smile, and tell you with utmost sincerity that "your job is as safe and secure as it could possibly be", only to close your office and lay you off two weeks later, it tends to leave to an impression. &amp;nbsp;That was five months into the new job. &amp;nbsp;The 7 year job was one I thought I'd retire from and live happily ever after. &amp;nbsp;The CEO of that place turned into a vindictive paranoid dick and stabbed everyone, even his VP's, in the back and left with a golden parachute. &amp;nbsp;Those two situations, along with the death of some very close colleagues, really hit home with me and given me a perspective that you have to plan for the worst, hope for the best, and be prepared for whatever comes next.&lt;br /&gt;&lt;br /&gt;Enough of that though. &amp;nbsp;On to the first sentence...&lt;br /&gt;&lt;br /&gt;As far as building cool applications are concerned, at least where I define "cool" as (A) fun to write code for, (B) produce something that helps not only myself but those around me, and (C) is actually beneficial to my employer's line of business, I can point to three distinct experiences:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Employer 1 &lt;/b&gt;- I had an idea to build something that was helpful for my group, but the company pushed back hard at every turn. &amp;nbsp;Their rationale? &amp;nbsp;I was hired to do job "A", so working on something outside of that, even though it automated more than half of what job "A" entailed, was outside the duties of job "A". &amp;nbsp;Period. &amp;nbsp;In one situation, I was flat-out told (and I quote): "We are a defense contractor. &amp;nbsp;We don't get paid to save time. &amp;nbsp;We get paid for the time it takes to do it right." &amp;nbsp;Awesome reflection of the true American work ethic. &amp;nbsp;Regardless of being approached by four peer-level businesses to license it, and three government agencies, the employer refused and effectively killed the project.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Employer 2&lt;/b&gt; - I had a manager with amazing vision and self-direction, who approached me to help him build something that was aimed squarely at automating our daily workload. &amp;nbsp;It grew and grew, mostly with his ideas and direction, based on what he had seen accomplished at each step, and propelling it on to the next level. &amp;nbsp;It was a cool project indeed. &amp;nbsp;The company fought back, again, with a slightly different rational: &amp;nbsp;"Your group is tasked with "A" not developing software. &amp;nbsp;If you wanted a solution, you should have requested the AppDev group." &amp;nbsp;Translation: feasibility studies, requirements analysis, pre-dev evaluation, code and test, evaluation, UAT, the whole stupid-ass CMMI assembly line. &amp;nbsp;And this is to build something that really warranted none of that excessive bullshit. &amp;nbsp;The real aim was control and something to provide time-charge coverage for a bunch of people with not enough work to cover them. &amp;nbsp;In the end, I left and another developer was brought on to continue work on it, but it was eventually given over to the AppDev group and given the lobotomy treatment.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Employer 3&lt;/b&gt; - Both my manager, and the entire management structure saw the results of a small example, pulled me aside and said "do more!". &amp;nbsp;Regardless of my official duties, they allow me incredible latitude to push things as far as it makes sense, as long as it produces results that satisfy others. &amp;nbsp;So far so good.&lt;br /&gt;&lt;br /&gt;To sum this up: &amp;nbsp;One place let me build a car but not let it out of the garage. &amp;nbsp;The next place let me build a car, and get it out on the road, but not go faster than 55 mph. &amp;nbsp;The next place let me build it, and take it out on a race track with no limits.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Regardless of technology. &amp;nbsp;Regardless of technological potential. &amp;nbsp;What most often holds back progress, or often outright KILLS it, are people. &amp;nbsp;People with narrow vision, no concern for innovation as it pertains to making real progress, are what build speed bumps. &amp;nbsp;Vision builds roads with few potholes. &lt;br /&gt;&lt;br /&gt;No place is perfect. &amp;nbsp;I'm not going to even attempt to say that Employer 3 is perfect. &amp;nbsp;That would be nonsense. &amp;nbsp;But finding the right balance between ideal and tolerable is what makes things work for each person. &amp;nbsp;It's like a girlfriend or boyfriend. &amp;nbsp;You'll never find perfection, but if you can find enough good traits to outweigh the bad ones, it can often work out great.&lt;br /&gt;&lt;br /&gt;Each of the three employers had plenty of skilled, intelligent, funny and progressive people. &amp;nbsp;The problem for two of them was a barrier of culture that keeps them from achieving their full potential. &amp;nbsp;I know for certain that most of the people I had worked with, if placed into different environments, would damn near explode with positive results. &amp;nbsp;A suppressed culture suppresses everyone within it. &amp;nbsp;Whether it's by standing up roadblocks, meetings, committees, reviews, forms, forms and more forms, and decisions made by people with absolutely zero understanding of the case being decided, or by the nature of the work itself being limited to one road, rather than a network of roads with unlimited potential, the environment shapes the potential of every employee. &amp;nbsp;The employees become the environment and it becomes them.&lt;br /&gt;&lt;br /&gt;All I can suggest is this:&lt;br /&gt;&lt;br /&gt;Look for the barriers, the obstacles, the roadblocks, and if you can't remove them, try to work around them. &amp;nbsp;Find a way to get your ideas into action. &amp;nbsp;My manager at Employer 2 did just that, and pressed ahead against incredible push-back and apathy, and refused to give up. &amp;nbsp;I simply drafted behind him enjoyed the opportunity to break out of the assembly line work I was hired to do. &amp;nbsp;If you have a good idea, find others who will listen. &amp;nbsp;Band together and share your ideas and feed off each other's positive views. &amp;nbsp;If you're lucky, that's an easy thing to do. &amp;nbsp;For a lot of people it's a struggle, but don't give up. &amp;nbsp;Do the homework and confirm your beliefs with hard facts and numbers. &amp;nbsp;If you think it will save time and money, be ready to back up your estimates. &amp;nbsp;It's really hard to argue against good numbers. &amp;nbsp;The real people in power live on numbers.&lt;br /&gt;&lt;br /&gt;When you run into people at work that just don't get it, move on and find the ones that do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6667624079334671704?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6667624079334671704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6667624079334671704' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6667624079334671704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6667624079334671704'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/when-they-just-dont-get-it.html' title='When They Just Don&apos;t Get It'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-fqwgE-btFVY/TsxoGFmIiFI/AAAAAAAAJEk/wWVrQyrFXkQ/s72-c/iStock_gears_people_culture.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5912701710504073107</id><published>2011-11-21T23:51:00.001-05:00</published><updated>2011-11-21T23:54:48.045-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Book Update: Corrected Version Coming Soon</title><content type='html'>Unfortunately, there was a problem with formatting that was discovered after I published "The Packager's Pocket Reference, 2nd Edition" for Amazon Kindle. &amp;nbsp;I have uploaded a corrected version and have asked Amazon to repost it and email customers to notify them of an updated version. &amp;nbsp;The update is free for those who have already purchased it. &amp;nbsp;I apologize for the inconvenience and as always: I appreciate your support.&lt;br /&gt;&lt;br /&gt;Thank you! Dave&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5912701710504073107?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5912701710504073107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5912701710504073107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5912701710504073107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5912701710504073107'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/book-update-corrected-version-coming.html' title='Book Update: Corrected Version Coming Soon'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6548413669488076335</id><published>2011-11-21T06:00:00.000-05:00</published><updated>2011-11-21T06:00:11.538-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='entertainment'/><category scheme='http://www.blogger.com/atom/ns#' term='science'/><title type='text'>Stupid Assumptions</title><content type='html'>After years of watching sci-fi TV shows, movies, etc. it's finally come to a point where even the so-called brightest of our authors and screenwriters are annoying the shit out of me. &amp;nbsp;Why? &amp;nbsp;Because the common, no, strike that, not "common", but more accurately, the "only" view they seem to follow is that interplanetary/intergalactic "aliens" will fit the following mold:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Intelligent&lt;/li&gt;&lt;li&gt;Two legs and two arms (yes, I've see the others with octopus bodies and heads like bugs)&lt;/li&gt;&lt;li&gt;Two eyes and a mouth (or three eyes and no mouth)&lt;/li&gt;&lt;li&gt;Most of them don't have a nose (wtf?)&lt;/li&gt;&lt;li&gt;Their vision is in the same light spectrum as ours&lt;/li&gt;&lt;li&gt;Their hearing is in the same frequency range as ours&lt;/li&gt;&lt;li&gt;They sense heat and cold like we do&lt;/li&gt;&lt;li&gt;They wear clothing to cover their naughty bits (or don't have any naughty bits)&lt;/li&gt;&lt;li&gt;They don't smell really bad&lt;/li&gt;&lt;li&gt;They don't make obnoxious sounds (farting, snoring) all the time&lt;/li&gt;&lt;li&gt;They don't leave trails wherever they go&lt;/li&gt;&lt;li&gt;They understand our body language and colloquial aspects&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-aFYcWXbN2Uw/TsmQwkPfJSI/AAAAAAAAJEI/RFr5WX_Wh-U/s1600/3832003387_0d933e8f65.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-aFYcWXbN2Uw/TsmQwkPfJSI/AAAAAAAAJEI/RFr5WX_Wh-U/s320/3832003387_0d933e8f65.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;What if? &amp;nbsp;What if they smell like shit? &amp;nbsp;What if they ooze from all their pores all the time? &amp;nbsp;What if they leave a slug trail? &amp;nbsp;What if they find some of our gestures aggravatingly offensive? &amp;nbsp;Imagine that some of our common names for things sound like words they use to describe offensive things. &amp;nbsp;What if they introduce themselves and have names like "fuck" and "c**ksucker"? &amp;nbsp;Go ahead and smirk and laugh, but what if they sounded so much like that we'd do a double-take? &amp;nbsp;What if reaching out to offer a handshake is a sign of aggression in their culture? &amp;nbsp;What if we look like food to them?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What if they like to be naked and they have six 24-inch penises sticking out from all around them?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What if they have eight testicles that hang from beneath their face?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;We all know about culture dichotomies like how cows are viewed in America versus India. &amp;nbsp;How handshakes are viewed in the Middle East, versus Japan or Africa, and how showing the soles of your feet when sitting down is offensive to some cultures, as is offering your left hand to shake (or even wave hello). &amp;nbsp;So we see cows as a source of milk and food in America. &amp;nbsp;They exist to provide milk and be slaughtered for beef. &amp;nbsp;In India they let them walk the streets like we view dogs and cats. &amp;nbsp;What if aliens view horses and dogs the same way? &amp;nbsp;What if they view skin tones in that way? &amp;nbsp;What if brown skin is ok to have around, but pale skin means extra crispy batter coating? &amp;nbsp;What if?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;You're probably snickering. &amp;nbsp;Most humans would. &amp;nbsp;That's because we humans know everything. &amp;nbsp;We can predict everything. &amp;nbsp;We apply our logic to predict what can be possible beyond what we've experienced. &amp;nbsp;We are awesome. &amp;nbsp;That's why we can predict the stock market so well.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6548413669488076335?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6548413669488076335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6548413669488076335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6548413669488076335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6548413669488076335'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/stupid-assumptions.html' title='Stupid Assumptions'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-aFYcWXbN2Uw/TsmQwkPfJSI/AAAAAAAAJEI/RFr5WX_Wh-U/s72-c/3832003387_0d933e8f65.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6139349651020418850</id><published>2011-11-20T16:14:00.001-05:00</published><updated>2011-11-20T16:29:59.298-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><title type='text'>Guns vs Marijuana</title><content type='html'>I'm not picking on, nor condoning, either one of these. &amp;nbsp;I'm just doing a brief comparison and contrast...&lt;br /&gt;&lt;br /&gt;&lt;table border="1" style="border-collapse: collapse; width: 600px;"&gt;&lt;tbody&gt;&lt;tr&gt;  &lt;td style="width: 200px;"&gt;&lt;b&gt;Argument&lt;/b&gt;&lt;/td&gt;  &lt;td style="width: 200px;"&gt;&lt;b&gt;Hand Guns&lt;/b&gt;&lt;/td&gt;  &lt;td&gt;&lt;b&gt;Marijuana&lt;/b&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Blame Assignment&lt;/td&gt;&lt;td&gt;"Guns don't kill people. &amp;nbsp;People kill people"&lt;/td&gt;&lt;td&gt;"Gateway drug to Heroin and Crack"&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Alternatives&lt;/td&gt;&lt;td&gt;Knives, Bottles, Bombs, Fire, Poison, Heavy Machinery, Fists, Feet (with or without boots), Blunt Objects, Piano Wire, Workshop Tools&lt;/td&gt;&lt;td&gt;Alcohol, Salvia, Meth, Paint, Cleaners and Solvents, Redi-Whip cans&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Who Stands to Gain&lt;/td&gt;&lt;td&gt;NRA, Gun Manufacturers&lt;/td&gt;&lt;td&gt;Private Citizens, Fast Food Vendors, Pizza Shops, Chinese Take-Out, Soft Drink Vendors, Nabisco, Keebler, Kraft, Kellogg, General Mills, Coke, Pepsi, 7-11 and Convenience Stores, Concert Venues, Musicians, Theaters and Movie Producers, Cable TV PPV&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Who Regulates&lt;/td&gt;&lt;td&gt;Federal, State, Local&lt;/td&gt;&lt;td&gt;Federal, State&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Casualties&lt;/td&gt;&lt;td&gt;Thousands per Year&lt;/td&gt;&lt;td&gt;None documented&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Accident Consequences&lt;/td&gt;&lt;td&gt;Death, Debilitation, Property Damage&lt;/td&gt;&lt;td&gt;Munchies, Sleep&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Environmental Impact&lt;/td&gt;&lt;td&gt;From raw material extraction, to material stock refinement, to machine refinement, to chemicals and solvents, to combustion vapors, to spent shells.&lt;/td&gt;&lt;td&gt;Small amounts of smoke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Places Most Often Used&lt;/td&gt;&lt;td&gt;Target Range, Liquor Store, Pawn Shop, Back Alley, Living Room, Trailer Park, Bar Parking Lot, High School Cafeteria&lt;/td&gt;&lt;td&gt;Living Room, Den, Bedroom&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Extreme Cases&lt;/td&gt;&lt;td&gt;SWAT team, Fire Department, EMT and Ambulances, Coroner, Evacuation&lt;/td&gt;&lt;td&gt;Red Bull&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6139349651020418850?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6139349651020418850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6139349651020418850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6139349651020418850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6139349651020418850'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/guns-vs-marijuana.html' title='Guns vs Marijuana'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6418239702636112830</id><published>2011-11-20T11:09:00.001-05:00</published><updated>2011-11-20T11:13:40.673-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><category scheme='http://www.blogger.com/atom/ns#' term='writing'/><title type='text'></title><content type='html'>&lt;div class="separator" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;"&gt;&lt;a href="http://www.amazon.com/dp/B006A8CWJ8" target="_blank"&gt;&lt;br /&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/--gBvhnCfM0g/TsdTvo_gBuI/AAAAAAAAI2w/F0-xmLED-rA/s320/ppr2_cover.jpg" width="290" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #990000; font-size: large;"&gt;It is now available on Amazon.com!&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/dp/B006A8CWJ8"&gt;Download a free sample or buy it for only $7.99&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Available for US, UK, Germany, and France Kindle shoppers.&lt;br /&gt;&lt;br /&gt;Don't have a Kindle? &amp;nbsp;No problem. &amp;nbsp;You can download FREE &lt;a href="http://www.amazon.com/gp/feature.html/ref=sa_menu_karl3?ie=UTF8&amp;amp;docId=1000493771"&gt;Kindle Reader Apps&lt;/a&gt; for Windows, WP7, OSX, iOS (iPod, iPhone, iPad), Blackberry and Android&lt;br /&gt;&lt;br /&gt;Still not satisfied? &amp;nbsp;You can use the &lt;a href="https://read.amazon.com/about"&gt;Kindle Cloud Reader&lt;/a&gt; to read books in your web browser too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6418239702636112830?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6418239702636112830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6418239702636112830' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6418239702636112830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6418239702636112830'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/it-is-now-available-on-amazon.html' title=''/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/--gBvhnCfM0g/TsdTvo_gBuI/AAAAAAAAI2w/F0-xmLED-rA/s72-c/ppr2_cover.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2459431537493841814</id><published>2011-11-19T02:04:00.000-05:00</published><updated>2011-11-19T02:19:15.394-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='writing'/><title type='text'>Book Announcement: Packager's Pocket Reference, 2nd Edition</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/--gBvhnCfM0g/TsdTvo_gBuI/AAAAAAAAI2w/F0-xmLED-rA/s1600/ppr2_cover.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/--gBvhnCfM0g/TsdTvo_gBuI/AAAAAAAAI2w/F0-xmLED-rA/s320/ppr2_cover.jpg" width="290" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The 2nd Edition is out! &amp;nbsp;Chocked full of new examples, reference information and new chapters on lab setups, methods and approaches to making packages through a variety of means. &amp;nbsp;Scripting, packaging and all that stuff. &amp;nbsp;Still in a compact "reference" format and size, makes it easy to navigate and find what you need fast.&lt;br /&gt;&lt;br /&gt;Available soon* on Amazon Kindle and &lt;a href="http://www.amazon.com/gp/feature.html/ref=sa_menu_karl3?ie=UTF8&amp;amp;docId=1000493771"&gt;Kindle Reader apps&lt;/a&gt; (Windows, OSX, Android, Blackberry, iPad) for only...&amp;nbsp;&lt;b&gt;$7.99&lt;/b&gt; (USD)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;* submitted to Amazon 11/19/2011 and should be available for purchase within a few days afterwards.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2459431537493841814?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2459431537493841814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2459431537493841814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2459431537493841814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2459431537493841814'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/book-announcement-packagers-pocket.html' title='Book Announcement: Packager&apos;s Pocket Reference, 2nd Edition'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/--gBvhnCfM0g/TsdTvo_gBuI/AAAAAAAAI2w/F0-xmLED-rA/s72-c/ppr2_cover.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3579228483341747390</id><published>2011-11-18T21:35:00.001-05:00</published><updated>2011-11-18T21:37:43.625-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>Computer Accounts vs Service Accounts, Round 3</title><content type='html'>If you've been unlucky enough to have read my blog for a year or more, you've seen me post crap about using "computer" or "service" accounts, instead of dedicated (manually created) AD accounts, for running scheduled or automated tasks. &amp;nbsp;Things like back-ups, replication, monitors, etc. &amp;nbsp;Well, the addition of MSA in Server 2008 R2 is also a great option. &amp;nbsp;I forgot to mention that. &amp;nbsp;In any case: &amp;nbsp;If you are still using manually-created user accounts as "service" or "proxy" accounts, and are still maintaining passwords manually - STOP!!!!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://feeds.4sysops.com/~r/4sysops/~3/ysFpAi-fBVA/"&gt;http://feeds.4sysops.com/~r/4sysops/~3/ysFpAi-fBVA/&amp;nbsp;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3579228483341747390?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3579228483341747390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3579228483341747390' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3579228483341747390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3579228483341747390'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/computer-accounts-vs-service-accounts.html' title='Computer Accounts vs Service Accounts, Round 3'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4637911674245818877</id><published>2011-11-18T20:49:00.001-05:00</published><updated>2011-11-18T21:14:00.516-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web development'/><category scheme='http://www.blogger.com/atom/ns#' term='system center'/><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='sccm'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='config manager'/><title type='text'>Friday Night Brain Dump</title><content type='html'>I'm just a tiny bit buzzed on St. Bernardus Abbey Ale right now, so forgive my incoherent babbling ,please.&lt;br /&gt;&lt;br /&gt;I've been head-down coding for weeks on a cool little project. The project builds a mountain atop the web-interface we have to SCCM+AD+ our asset management system. &amp;nbsp;The new mountain extends it by essentially "snapshotting" an SCCM collection (computers and all their apps), into a standalone table where we can "model" future replacement needs before putting them back into production. &amp;nbsp;All of this is via web interface. I have to say it was/is the most fun I've had writing code in a long time. &amp;nbsp;I've been swimming around in the SQL end of Configuration Manager for months and learning new stuff every day. &amp;nbsp;I'm dying to dig into 2012! &amp;nbsp;I have RC1 in a virtual lab and will be diving into that asap. &amp;nbsp;Some changes I've seen look really cool. &amp;nbsp;I'm also eager to see what legacy trash they've finally cut loose.&lt;br /&gt;&lt;br /&gt;The excitement I had for CAD programming during the 1990's and up until 2006 had faded when I parted ways with the Autodesk development world. &amp;nbsp;The move into "mainstream" Microsoft infrastructure IT has been both exciting and scary at the same time. &amp;nbsp;In some respects not nearly as interesting as writing code to automate design tasks, extracting and integrating data with graphical objects, automating design processes, let alone leaving the fucking awesome world of LISP programming (go ahead and laugh, it blows the shit out of your .NET, Ruby and Java stuff). &amp;nbsp;Alas, the world doesn't stop moving. &amp;nbsp;At 47 it's becoming more difficult to keep up.&lt;br /&gt;&lt;br /&gt;St. Berndardus is 10% ABV by the way. &amp;nbsp;Holy shit! &amp;nbsp;A 2 pt bottle and I'm only half done. &amp;nbsp;Bzzzzzzz.&lt;br /&gt;&lt;br /&gt;Onward!&lt;br /&gt;&lt;br /&gt;What I've missed most about LISP when moving into PHP, VB.NET and Powershell is things like (apply), (mapcar) and (lambda). &amp;nbsp;And (defun), oohhhh. &amp;nbsp; ohhhh.. &amp;nbsp;I need a Kleenex. &amp;nbsp;God - I miss that. &amp;nbsp; There's just nothing in the newer "modern" languages that does that. &amp;nbsp;Sure, they can&amp;nbsp;mimic, but they don't really do it for me.&lt;br /&gt;&lt;br /&gt;If I had to rate newer langauges for which is "more fun" I'd have to say it's a close tie between PHP and KiXtart. &amp;nbsp;PHP probably wins out. &amp;nbsp;And before you start moaning about KiXtart and your horrid memories of login scripts - STOP! &amp;nbsp;It's much much MUCH more than that. &amp;nbsp;The language is awesome. &amp;nbsp;The engine is pure perfection. &amp;nbsp;If Powershell could execute on a dime like Kix32.exe - well - let's just say you'd need to call for a cleanup on aisle 9 because I'd lose control of my bowels. &amp;nbsp;Powershell is cool and all, but there's things that bother me about it (like the slow engine start-up, and the cruddy mirror of VBscript's NOW function), but it's still "the future" so we have to open up and drink the new Kool Aid.&lt;br /&gt;&lt;br /&gt;I'm really buzzed, um.... yep.&lt;br /&gt;&lt;br /&gt;Where was I? &amp;nbsp;Oh yeah... got my Google+ YouTube player blasting. &amp;nbsp;Hold on...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SCCM Collections to Distribution Points&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;So - one interesting thing about this web/sccm project has been tying intangibles to tangibles. &amp;nbsp;A theoretical data integration model known as "tenuous relations" (sounds like a bad date). &amp;nbsp;The concept is how to link things that are relatively static or predictable to things that aren't. &amp;nbsp; Let's digress - Yes!&lt;br /&gt;&lt;br /&gt;So, we have a collection built upon computers which are discovered that are members of a specific AD group. &amp;nbsp;This group is intended to define a "department-based" group of computer assets. &amp;nbsp;We need to identify which protected distribution point server they will hit (as a priority, not exclusively, mind you), but how do you do that?&lt;br /&gt;&lt;br /&gt;You can perform a "select distinct" on the v_R_System table (view) using the AD_SiteName0 field (I may have mis-typed that name, don't sue me), and get a list of unique Site Boundaries. &amp;nbsp;From that I can link to the site boundaries view vSMS_CurrentBoundary (more) and hop on through to the DP's via the v_DistributionPoint_Info view (again, I may have the name mis-typed). &amp;nbsp;If you do the SQL joins properly you can pull it off.&lt;br /&gt;&lt;br /&gt;Alternatively, if that's too much hair-pulling, you can do this the monkey-wrench way:&lt;br /&gt;&lt;br /&gt;Open the MMC console, expand the Site and site management, then click on Site Boundaries. &amp;nbsp;Right click and export to a tab-delimited text file. &amp;nbsp;Save it to your web server, make a code page module to parse it using FSO and map the AD site to the left-most column to pull the list of link speeds and protected DP names.&lt;br /&gt;&lt;br /&gt;Warning: &amp;nbsp;The site boundaries do not show all the DP's. &amp;nbsp;Only the protected DPs. If you need all the others (including the branch DPs) you have to query more database tables/views. &amp;nbsp;It depends on which "list" you really need/want. &amp;nbsp;Remember that clients won't exclusively pull from protected DP's if there are non-protected DP's in the same site (or over a fast link as well).&lt;br /&gt;&lt;br /&gt;Eh. &amp;nbsp;enough of this. &amp;nbsp;I'm supposed to forget work stuff on Friday night.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4637911674245818877?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4637911674245818877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4637911674245818877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4637911674245818877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4637911674245818877'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/im-just-tiny-bit-buzzed-on-st.html' title='Friday Night Brain Dump'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6306030054856684386</id><published>2011-11-17T20:13:00.001-05:00</published><updated>2011-11-17T20:42:28.863-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web development'/><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><category scheme='http://www.blogger.com/atom/ns#' term='asp'/><title type='text'>Don't Forget the Eggs: ADO basic errors</title><content type='html'>I'm not a DBA, although I play one on breaks in the kitchen at work. &amp;nbsp;I have worked with various databases for quite a few years, including MS SQL Server, MySQL, and Oracle. &amp;nbsp;I don't count FoxPro or Access because I absolutely hate client-side databases due to the bullshit headaches they create for IT departments (and consultants like myself), but alas, I have already digressed on that subject in previous blog posts.&lt;br /&gt;&lt;br /&gt;One thing I see quite a bit with ADO examples in particular is a lack of (a) error checking and (b) connection limiting. &amp;nbsp;I'm not talking about connection throttling, but rather: applying some refactoring logic to how you open and close connections to optimize the use of the open pipeline without keeping it open too long (or re-opening it too many times).&lt;br /&gt;&lt;br /&gt;As for error checking: &amp;nbsp;This is a fairly standard/typical piece of VBscript/ASP code for running a "select" query via ADO against a database. &amp;nbsp;It doesn't matter whether that database is local to the server/host where the code is being executed, well, it does actually, it matters more if it's remote, but whatever, let's chew and digest slowly here...&lt;br /&gt;&lt;br /&gt;[CODE]&lt;br /&gt;&lt;pre style="color: darkblue;"&gt;Set conn = Server.CreateObject("ADODB.Connection")&lt;br /&gt;Set cmd = Server.CreateObject("ADODB.Command")&lt;br /&gt;Set rs = Server.CreateObject("ADODB.Recordset")&lt;br /&gt;&lt;br /&gt;query = "SELECT * FROM dbo.SomeTable WHERE id=" &amp;amp; _&lt;br /&gt;    idNumber &amp;amp; " ORDER BY ItemName"&lt;br /&gt;&lt;br /&gt;conn.Open dsnString&lt;br /&gt;&lt;br /&gt;rs.CursorLocation = adUseClient&lt;br /&gt;rs.CursorType = adOpenStatic&lt;br /&gt;rs.LockType = adLockReadOnly&lt;br /&gt;&lt;br /&gt;Set cmd.ActiveConnection = conn&lt;br /&gt;&lt;br /&gt;cmd.CommandType = adCmdText&lt;br /&gt;cmd.CommandText = query&lt;br /&gt;rs.Open cmd&lt;br /&gt;&lt;br /&gt;If Not(rs.BOF And rs.EOF) Then&lt;br /&gt;    cols = rs.Fields.Count&lt;br /&gt;    rows = rs.RecordCount&lt;br /&gt;    Do Until rs.EOF&lt;br /&gt;        ' do something stupid here&lt;br /&gt;        rs.MoveNext&lt;br /&gt;    Loop&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;Else&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.Write "oops, no records were returned"&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;rs.Close&lt;br /&gt;conn.Close&lt;br /&gt;Set rs = Nothing&lt;br /&gt;Set cmd = Nothing&lt;br /&gt;Set conn = Nothing&lt;br /&gt;&lt;/pre&gt;[/CODE]&lt;br /&gt;&lt;br /&gt;This looks simple enough. But there are quite a few places that could implode here if not handled explicitly. &amp;nbsp;Granted, error handling with .NET is more robust, but indulge me here for a moment since (A) there's still 100 times more VBScript code strewn about this planet than .NET code, and (B) I'm old. &amp;nbsp;The big three problems that are most likely to occur with this scenario are...&lt;br /&gt;&lt;br /&gt;Connection Failure&lt;br /&gt;Connection Delay / Time-Out&lt;br /&gt;Recordset Access Failure (access denied)&lt;br /&gt;&lt;br /&gt;Let's handle them one by one...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Connection Failure&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Prior to the "conn.Open" statement, we should override the default error system and then check for the exit code from the .Open method and see what happened. &amp;nbsp;If it was successful (exit code: 0), we continue on, otherwise we should handle the error and exit safely.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[CODE]&lt;br /&gt;&lt;pre style="color: darkblue;"&gt;On Error Resume Next&lt;br /&gt;conn.Open dsnString&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;If err.Number &amp;lt;&amp;gt; 0 Then&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    ' an error occurred, so something clever here&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.Write "oops, cannot open a connection"&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.End&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;End If&lt;/pre&gt;[/CODE]&lt;br /&gt;&lt;br /&gt;If you do your connection within a Sub() or Function() block, you should probably exit using Exit Sub or Exit Function, but that's not always true either.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Connection Time-Out&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;What if the connection is taking a longer time to resolve than usual? &amp;nbsp;We can handle that too...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[CODE]&lt;br /&gt;&lt;pre style="color: darkblue;"&gt;On Error Resume Next&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;conn.ConnectionTimeOut = 15 ' allow 15 seconds to establish the connection&lt;br /&gt;conn.Open dsnString&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;If err.Number &amp;lt;&amp;gt; 0 Then&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    ' an error occurred, so something clever here&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.Write "oops, cannot open a connection"&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.End&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;End If&lt;/pre&gt;[/CODE]&lt;br /&gt;&lt;br class="Apple-interchange-newline" /&gt;&lt;br /&gt;&lt;b&gt;Recordset Access Failure&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Another common issue is when you can successfully open the connection, but cannot read from a table or view because of security permissions.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[CODE]&lt;br /&gt;&lt;pre style="color: darkblue;"&gt;rs.Open cmd&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;If err.Number &amp;lt;&amp;gt; 0 Then&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    ' do something awesome here&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.Write "oops, unable to access the table or view"&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;    Response.End&lt;/pre&gt;&lt;pre style="color: darkblue;"&gt;End If&lt;br /&gt;&lt;br /&gt;If Not(rs.BOF And rs.EOF) Then&lt;br /&gt;    cols = rs.Fields.Count&lt;br /&gt;    rows = rs.RecordCount&lt;br /&gt;    Do Until rs.EOF&lt;br /&gt;        ' do something neato here&lt;br /&gt;        rs.MoveNext&lt;br /&gt;    Loop&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;rs.Close&lt;br /&gt;conn.Close&lt;br /&gt;Set rs = Nothing&lt;br /&gt;Set cmd = Nothing&lt;br /&gt;Set conn = Nothing&lt;br /&gt;&lt;/pre&gt;[/CODE]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Connection Management&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I've seen more situations than I can count where a single page of code (script file, web page, etc.) makes repeated requests from a database in sequential order (as the page is rendered or the script is executed). &amp;nbsp;Most often it's having to grab data from multiple tables and/or views, or execute multiple stored procedures or functions. &amp;nbsp;In a lot of cases, the code doing the heavy lifting is being included from separate files (using "includes"). &amp;nbsp;That's all nifty and modular, which is a good approach, but always be VERY careful with that approach that you don't have each module do it's own connection open/close management. &amp;nbsp;This not only slows down the processing, but it requires more bandwidth and more load on the network and the database server as well.&lt;br /&gt;&lt;br /&gt;A case in point might be a web page that renders a report of an employee, then it displays a table with performance evaluation records, followed by a table of employees managed by the employee in question. &amp;nbsp;If those data repositories are all on different database servers that may be all you can do, but if they happen to be on one server, or even in one database, you should seriously review minimizing the number of open/close requests on your connections.&lt;br /&gt;&lt;br /&gt;A brief sample of this using pseudo code:&lt;br /&gt;&lt;br /&gt;open connection1&lt;br /&gt;open recordset1&lt;br /&gt;close connection1&lt;br /&gt;open connection2&lt;br /&gt;open recordset2&lt;br /&gt;close connection2&lt;br /&gt;open connection3&lt;br /&gt;open recordset3&lt;br /&gt;close connection3&lt;br /&gt;&lt;br /&gt;might work a lot faster and better as...&lt;br /&gt;&lt;br /&gt;open connection&lt;br /&gt;open recordset1&lt;br /&gt;open recordset2&lt;br /&gt;open recordset3&lt;br /&gt;close connection&lt;br /&gt;&lt;br /&gt;Some people prefer to open a "global" or "session" connection, whereby the connection is opened upon login or initialization by each user session. &amp;nbsp;The connection object itself is stored in the session stack and made available globally to that user throughout their session window. &amp;nbsp;Each concurrent user has their own connection opened and maintained on a stack. &amp;nbsp;Granted this makes it easier to run queries, updates, etc. without the overhead of managing connections at the more granular page/script level, but it definitely taxes the database server with a lot of unnecessary open connections. &amp;nbsp;For a handful of users that may be fine, but with hundreds or thousands of users it can be a mess and make the database server drag.&lt;br /&gt;&lt;br /&gt;Just some random thoughts after beer. &amp;nbsp;Have any thoughts you'd like to share?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6306030054856684386?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6306030054856684386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6306030054856684386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6306030054856684386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6306030054856684386'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/dont-forget-eggs-ado-basic-errors.html' title='Don&apos;t Forget the Eggs: ADO basic errors'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6880630263128895771</id><published>2011-11-12T20:20:00.001-05:00</published><updated>2011-11-12T20:27:41.014-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='active directory'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure'/><category scheme='http://www.blogger.com/atom/ns#' term='sccm'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='sms'/><category scheme='http://www.blogger.com/atom/ns#' term='config manager'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>Do as I say...</title><content type='html'>I don't know why it's taken me so long to comment on this. &amp;nbsp;It's been about a decade since I really became involved with Microsoft SMS and later: Configuration Manager. &amp;nbsp;The issue I'm referring to is the permissions delegation on the "System Management" container in Active Directory. &amp;nbsp;The documentation, as well as all of the blogs, white papers, video tutorials and so on, all explain how to create the container, and then delegate permissions to the SMS/ConfigMgr site server account (the computer "$" account) so it can publish schema information to it during the site implementation process.&lt;br /&gt;&lt;br /&gt;Well, every single Microsoft exam beats the same mantra into our heads that we should always, always, always use the A-G-Dl-P (or A-G-U-Dl-P) method for granting permissions to resources. &amp;nbsp;If that's true, we should then create a Domain Local group and a Global group, in which to place the ConfigMgr site server, and nest the group appropriately, and then grant that group permissions to the container. &amp;nbsp;But they don't. &amp;nbsp;When I asked a Microsoft engineer about this years ago he scratched his head (literally) and looked confused. &amp;nbsp;Then he responded: "I don't know. &amp;nbsp;I suppose it provides greater security since you don't have to worry about someone adding an unauthorized account to the global or domain local group." &amp;nbsp;That surprised me a bit. &amp;nbsp;I was about to respond to that with "Sooo...... the A-G-D-P method isn't as secure as direct assignment?" but we were interrupted. &amp;nbsp;It's a trivial issue, I know, but it's just something I had to mention.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6880630263128895771?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6880630263128895771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6880630263128895771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6880630263128895771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6880630263128895771'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/do-as-i-say.html' title='Do as I say...'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5714671054212238878</id><published>2011-11-12T20:09:00.001-05:00</published><updated>2011-11-12T20:18:42.296-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><title type='text'>My Favorite Personal Quotes</title><content type='html'>"You can't reason anyone out of something they didn't reason their self into." - Henry&lt;br /&gt;&lt;br /&gt;"If you automate a broken process, you only end up with an automated broken process" - Paul&lt;br /&gt;&lt;br /&gt;"If you don't have time to do right, when will ever have time to do it over?" - Mike&lt;br /&gt;&lt;br /&gt;"People who mistreat animals almost always have something seriously wrong in their head. &amp;nbsp;Quite often the same thing that serial killers have." - My Dad&lt;br /&gt;&lt;br /&gt;"Someone is about to get beaten with the rubber chicken" - Chris&lt;br /&gt;&lt;br /&gt;"Some people were just born to take out the trash" - Tommy&lt;br /&gt;&lt;br /&gt;"Don't make me smack you with my pimp ring on." - Tony&lt;br /&gt;&lt;br /&gt;"If it ain't broke, we can fix it" - Me&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5714671054212238878?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5714671054212238878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5714671054212238878' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5714671054212238878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5714671054212238878'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/my-favorite-personal-quotes.html' title='My Favorite Personal Quotes'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7777725847079678538</id><published>2011-11-09T19:21:00.000-05:00</published><updated>2011-11-09T19:21:16.150-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='cranium drainium'/><title type='text'>Ticking Down the Days</title><content type='html'>Looking at my Calendar, it looks like there about 45 days until I &lt;a href="http://skatterbrainz.blogspot.com/2011/08/expiration-date.html"&gt;retire from blogging&lt;/a&gt;. &amp;nbsp;I'm kind of looking forward to it actually. &amp;nbsp;Sounds odd. &amp;nbsp;I have various reasons for sticking to this self-imposed plan, but most of all it's about running dry on interesting topics to blabber about. &amp;nbsp;I admire guys like &lt;a href="http://www.hanselman.com/blog/"&gt;Scott Hanselman&lt;/a&gt;, who can chug along blogging for over a decade. &amp;nbsp;God bless him. &amp;nbsp;I don't have that much to say, at least not that much interesting stuff. &lt;br /&gt;&lt;br /&gt;I suppose if any of this tied into my personal income in some way I'd have a bonafide reason to push myself harder and&amp;nbsp;squeeze&amp;nbsp;a few more drops of precious kool-aid mojo from my raisin-sized brain, but alas, that is yet another fine quality I do not possess. &amp;nbsp;I'm sure I'll find something to occupy my time and to which I will impart my usual verbal slaughtering. &amp;nbsp;I'll keep you posted if anything comes up.&lt;br /&gt;&lt;br /&gt;The picture below is of the chairs on the beach that I will never be able to afford to enjoy, but I can gaze at them and imagine being there. &amp;nbsp;Not so bad. &amp;nbsp;I'm sure a lot of people stuck in a hospital bed would gladly trade places with me.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-3kqu9QE3UdU/TrsYZ69_V8I/AAAAAAAAIxA/LzxO7Qr3flQ/s1600/retirement-planning-300x225.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-3kqu9QE3UdU/TrsYZ69_V8I/AAAAAAAAIxA/LzxO7Qr3flQ/s1600/retirement-planning-300x225.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7777725847079678538?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7777725847079678538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7777725847079678538' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7777725847079678538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7777725847079678538'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/ticking-down-days.html' title='Ticking Down the Days'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-3kqu9QE3UdU/TrsYZ69_V8I/AAAAAAAAIxA/LzxO7Qr3flQ/s72-c/retirement-planning-300x225.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2153000090793162676</id><published>2011-11-09T19:05:00.002-05:00</published><updated>2011-11-09T19:06:00.739-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>The Identity Illusion</title><content type='html'>In 1974, one of my brothers was badly injured in a collision between his 750cc Suzuki water-cooled street bike and a station wagon, driven by an old lady who thought she could make a left turn in front of him. &amp;nbsp;She was wrong. &amp;nbsp;They were traveling in opposite directions at 30 mph each. &amp;nbsp;My brother was thrown more than 100 feet from the collision site, suffering two broken legs, a broken pelvis, a broken right arm (his writing hand), and a fractured skull. &amp;nbsp;He lay in a coma for six weeks, as the doctors tried to soften the blow to my parents that he'd likely never regain&amp;nbsp;consciousness, let alone return to a "normal life". &lt;br /&gt;&lt;br /&gt;After coming out of his coma, and gradually getting out of the bed and hobbling around, he was awarded a settlement from the driver's insurance company and went down to cash the check. &amp;nbsp;This was several months after the accident, and he was still on crutches and his arm still in a cast (attached to a shelf on the right-hand crutch). &amp;nbsp;He couldn't sign the settlement check legibly, and his bank obviously balked. &amp;nbsp;Thinking quickly, he suggested they contact a branch employee from across town, whom he'd known since high school, to provide confirmation of his identity. &amp;nbsp;They called. &amp;nbsp;The employee drove over, confirmed his identity and the check was cashed.&lt;br /&gt;&lt;br /&gt;The driver's license didn't cut it. &amp;nbsp;The Social Security card and birth certificate didn't help. &amp;nbsp;The signature was all that mattered to that bank manager.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-h5bNOwxQYAg/TrsVYAebEFI/AAAAAAAAIw4/GcRpkpBqcrg/s1600/identity-provider.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="165" src="http://4.bp.blogspot.com/-h5bNOwxQYAg/TrsVYAebEFI/AAAAAAAAIw4/GcRpkpBqcrg/s320/identity-provider.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Working in the Defense industry for over twenty-five years, I've seen many identification systems come and go. &amp;nbsp;The latest fad seems to be the photo ID "smart card", containing a chip with a PKI encryption key and some additional bits. &amp;nbsp;So what? &amp;nbsp;In most large corporate environments, the only people who can attest to your identity are your immediate coworkers, supervisor, and a few secondary people you interact with. &amp;nbsp;But once you leave your facility and travel to another facility, populated with employees who have never met you, what does that do? &amp;nbsp;So you have a badge with your photo on it, and an encryption key. &amp;nbsp;Does that "really" confirm it's YOU that it is pinned to?&lt;br /&gt;&lt;br /&gt;You sign contracts, forms, letters, agreements and waivers all the time. &amp;nbsp;How does anyone know it's really YOU signing them? &amp;nbsp;How often are you asked to show identification to prove who you are before signing things? &amp;nbsp;At doctor's office counters? &amp;nbsp;At your kid's school? &amp;nbsp;How about signing in at the receptionist when visiting business offices? &amp;nbsp;So much of "identity" is built on trust and confirmation. &amp;nbsp;The gadgets and biometrical aspects are merely shoring up the fortress of trust for others to gain comfort. &amp;nbsp;Think about it though: &amp;nbsp;How do we really "know" who someone is?&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Epilogue&lt;/u&gt;: My brother recovered over the course of several years, eventually, and after finishing up his Masters in Electrical Engineering, finished law school and passed the Virginia Bar. &amp;nbsp;It took more than ten years for him to fully regain memory from the days leading up to the accident. &amp;nbsp;For the first two years he didn't remember me or my siblings, let alone friends, neighbors, coworkers and many of his favorite possessions. &amp;nbsp;He still has not regained his sense of smell. &amp;nbsp;I told him that's not really a bad thing since few things smell good (which is why we value good-smelling things so much).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2153000090793162676?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2153000090793162676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2153000090793162676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2153000090793162676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2153000090793162676'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/identity-illusion.html' title='The Identity Illusion'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-h5bNOwxQYAg/TrsVYAebEFI/AAAAAAAAIw4/GcRpkpBqcrg/s72-c/identity-provider.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8404379913243609995</id><published>2011-11-09T18:48:00.002-05:00</published><updated>2011-11-09T18:48:38.292-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='marketing'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Lowest Bidder</title><content type='html'>Who outfits the Space Shuttle? &amp;nbsp;Lowest bidder&lt;br /&gt;Who installs cafeteria equipment in the schools? &amp;nbsp;Lowest bidder&lt;br /&gt;Who builds vehicles for combat duty? &amp;nbsp;Lowest bidder&lt;br /&gt;Who staffs security at 99.9% of public venues? &amp;nbsp;Lowest bidder&lt;br /&gt;Who produces 99.9% of the generic drugs you ingest? &amp;nbsp;Lowest bidder&lt;br /&gt;Who prepares 99.9% of the food you buy at the grocery store? &amp;nbsp;Lowest bidder&lt;br /&gt;Who repairs the aircraft you fly between airports? &amp;nbsp;Lowest bidder&lt;br /&gt;Who QA's the software that runs "mission critical" systems around the world? &amp;nbsp;Lowest bidder&lt;br /&gt;Who digs and runs commercial fiber for broadband networks? &amp;nbsp;Lowest bidder&lt;br /&gt;Who makes 99.9% of the after market parts used in your car? &amp;nbsp;Lowest bidder&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8404379913243609995?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8404379913243609995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8404379913243609995' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8404379913243609995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8404379913243609995'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/lowest-bidder.html' title='Lowest Bidder'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6062008598052971249</id><published>2011-11-06T22:23:00.001-05:00</published><updated>2011-11-06T22:23:06.188-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cad'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='augi'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>If This Were a Perfect World...</title><content type='html'>I tried to get my voice heard by Autodesk for much of the period between 1996 and 2006, but eventually I just gave up. &amp;nbsp;I'm not trying to badmouth them or anything. &amp;nbsp;The reason is simple: they're just too big to hear a tiny squeak anymore. &amp;nbsp;I was going through some old e-mails and notes from discussions I had with AE's at Autodesk University in 1997, 1998, 1999, 2000, 2002, and 2004 (the last year I attended). &amp;nbsp;Here's a summary of ideas I put forth into the vacuum of space...&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li style="margin-bottom: 8px;"&gt;Upgrade Visual LISP IDE (VLIDE) to have a more modern interface and license OpenDCL to make it on par with VBA for dialog design. (2003)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Restore network licensing for AutoCAD LT (2004)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Standardize on ONE format for all software updates (preferrably .MSP) (2009)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Standardize the Network Deployment wizard to make nothing but MSI components, no stupid .exe (yes, I'm talking about FARO). (2009)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Fix the .NET 4 and DirectX silent install problem when pushing a network deployment through Configuration Manager advertisements. (2009)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Include the NetBIOS name of computers that register standalone&amp;nbsp;activation&amp;nbsp;when sending the e-mails to the contract license owner (help customers nail thieves on their own) (2005)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Figure out what to do with Raster Design. &amp;nbsp;Some customers deploy it with AutoCAD, Mechanical, Map 3D, and so on. &amp;nbsp;The licensing gets confusing at times. (2008)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Buy Vital LISP from Basis Software and replace AutoLISP with it (they were already closing the deal when I suggested it, so I was late to the party on that one) (1997)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Merge Mechanical Desktop with Inventor or just kill MDT and keep Inventor but make your mind up! (again, they were already executing the plan before I thought this up, although they took their time finishing up) (2000)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;No more spread-out AU locations per year, do it in one location (1998, Boston, horrible)&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6062008598052971249?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6062008598052971249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6062008598052971249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6062008598052971249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6062008598052971249'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/if-this-were-perfect-world.html' title='If This Were a Perfect World...'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6053767424589606047</id><published>2011-11-05T22:42:00.003-04:00</published><updated>2011-11-05T22:42:57.763-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><category scheme='http://www.blogger.com/atom/ns#' term='government'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Another Rant</title><content type='html'>It's been a while. &amp;nbsp;Ok, a few days, whatever. I felt an urge to vent about two things that really bother me. &amp;nbsp;I was going to say that they piss me the **** off, but then I thought that might be too crass and anti-intellectual. &amp;nbsp;Whatever. &amp;nbsp;So anyhow, here they are:&lt;br /&gt;&lt;br /&gt;"It's all in God's hands"&lt;br /&gt;"Never give up on your dreams"&lt;br /&gt;"Everyone's good at something"&lt;br /&gt;&lt;br /&gt;I'm sorry, but all of these are over-simplified turds of wisdom. &amp;nbsp;Here's why...&lt;br /&gt;&lt;br /&gt;I'm not going to poo-poo anyone's religion. &amp;nbsp;That's not my place. &amp;nbsp;I have no right or authority to do that. &amp;nbsp;But, at what point does something STOP being in God's hands? &amp;nbsp;If "everything" is in God's hands, then that explicitly means NOTHING is "out" of God's hands. &amp;nbsp;After all, you can't have something be "Always" and "Never", or "Always" and "Sometimes" at the same time. &amp;nbsp;That's as impossible as keeping lawyers out of Washington DC. &amp;nbsp;So, I've made it a small project to ask people who range from non-religious all the way up to uber-religious about this phrase. &amp;nbsp;My questioning kind of follows &lt;a href="http://www.pennandteller.com/"&gt;Penn's&lt;/a&gt; logic, sort of, which is: If you release all your worries by saying &lt;u&gt;everything &lt;/u&gt;is in God's hands, then why look before crossing a street? &amp;nbsp;Why put a seat belt on? &amp;nbsp;Why take a shower? &amp;nbsp;Why do anything? &amp;nbsp;After all, if it's in God's hands, then that means God will take care of EVERYTHING; leaving NOTHING for us to take care of. &amp;nbsp;So, why even get out of bed? &amp;nbsp;We should simply sleep all day and wait for God to take care of everything and bring it all to us. &amp;nbsp;Right? &amp;nbsp;God will take care of the rent, the food, the electricity, the water, we don't need to take care of anything. &amp;nbsp;There is a name for people that follow that belief: dead.&lt;br /&gt;&lt;br /&gt;But, no one accepts that view. &amp;nbsp;At least, no one I've met. &amp;nbsp;So that really means that &lt;u&gt;not &lt;/u&gt;"everything" is in God's hands. Some things are left for us to take care of. &amp;nbsp;But what? &amp;nbsp;Where is that line? &amp;nbsp;How do we, as mortals, decide for ourselves what God says is the line? &amp;nbsp;Is it for us as individuals to decide? &amp;nbsp;Is it per church? &amp;nbsp;Per city? &amp;nbsp;Per state government? &amp;nbsp;Per nation? &amp;nbsp;For some it means Cancer is a trip to the hospital, but for others it means staying home and praying, with no medical intervention at all. &amp;nbsp;For some it means courts of law to settle disputes and infractions, but for others it means prayer, while for others it means stoning to death. &amp;nbsp;If everything was truly in God's hands, we wouldn't need pastors, ministers, preachers, priests, rabbis, or whatever they call the authorities in other religions.&lt;br /&gt;&lt;br /&gt;This nebulous, and mystical "line" divides us from the things that we are to let God handle, but "we" don't have a clear definition or belief of where that line is. &amp;nbsp;We can't even agree if the line is straight or drawn like a crayon between the toes of a Tourette's patient on Red Bull. &amp;nbsp;This is the essence of centuries of war (and millions of dollars in profit for lots of big corporations, I might add). &amp;nbsp;Too many times it's used as a scapegoat or cop-out. &amp;nbsp;Can't find a job? "It's in Gods hands". &amp;nbsp;No, it's not. &amp;nbsp;Go out and look for a job. &amp;nbsp;Child gets a nasty cut and is losing a lot of blood? &amp;nbsp;"It's in Gods hands". &amp;nbsp;No. Take the child to a doctor immediately. &amp;nbsp;I'm sure there are appropriate uses of the phrase, but it's becoming as overused as politicians saying "&lt;i&gt;I have a plan&lt;/i&gt;".&lt;br /&gt;&lt;br /&gt;"Never give up on your dream"&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.adamcarolla.com/"&gt;Adam Carolla&lt;/a&gt; has dissected this little turd on several occasions. &amp;nbsp;There is a point where dreams are not only to be left at the altar, but ground into dust like a cigarette butt under a steel toe construction boot. &amp;nbsp;Don't believe me? &amp;nbsp;Just watch American Idol. &amp;nbsp;Ask yourself what most of the first round cuts end up doing with their singing career. &amp;nbsp;That's right: they go back to&amp;nbsp;busing&amp;nbsp;tables, serving burgers and changing oil. &amp;nbsp;Let's face, if you're 85 and you had a lifelong dream to be a heavyweight boxer, and you hadn't made it yet: It's time to let that go. &amp;nbsp;Then again, maybe that's your idea of suicide by right-hook, which at 85 might not be so painful and drawn out.&lt;br /&gt;&lt;br /&gt;"Everyone's good at something"&lt;br /&gt;&lt;br /&gt;No. They. Are. Not. &amp;nbsp;For most of the human race, this is probably true. &amp;nbsp;By "most" I'm thinking 80 percent. &amp;nbsp;But if you've ever been around crack heads, ex-convict drug addicts or watched "To Catch a Predator", you should have confirmed that there are some folks who's only skill is being fertilizer. &amp;nbsp;No one is good at everything, this is true. &amp;nbsp;Most of us are good at something and not-so-good at many other things. &amp;nbsp;But *not* everyone is good at something. &amp;nbsp;They also have a TV show for people that haven't yet found their true calling, it's called &lt;a href="http://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=&amp;amp;esrc=s&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CCcQFjAA&amp;amp;url=http%3A%2F%2Ftosh.comedycentral.com%2Fblog%2F&amp;amp;ei=fPK1TqJh6q-xAvWd_dsD&amp;amp;usg=AFQjCNEw8T29wzW8jvPWUwUFrMXsUaCwzg&amp;amp;sig2=PvRFZSVxYrxsa9ZYePgtPA"&gt;Tosh.O&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/xwdaqn8Gs2M" width="420"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6053767424589606047?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6053767424589606047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6053767424589606047' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6053767424589606047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6053767424589606047'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/another-rant.html' title='Another Rant'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/xwdaqn8Gs2M/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5910460965187602950</id><published>2011-11-03T22:07:00.000-04:00</published><updated>2011-11-03T22:07:04.046-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><title type='text'>My Favorite Drummers and Percussionists</title><content type='html'>Some of you are probably thinking: "Huh?" or "What the ****?". &amp;nbsp;Let me explain, see, for about ten years I actually put gas in my truck, bought food and otherwise lived on playing drums in various types of musicality in and around the podunk area of southeastern Virginia. &amp;nbsp;I gave it up in 1990 when I sold my kit and devoted my time to my wife and family. &amp;nbsp;Choosing my path to fortune and, well, whatever. &amp;nbsp;So I still hold a special place in my heart for percussion. &amp;nbsp;I played, at various times, with full kits, congas, timbales, djembe, and various metalic striking things (cowbells, bells, chimes, cymbals, gongs, etc.). &amp;nbsp;I do miss it. &amp;nbsp;But right now it's just not something I can entertain due to logistics and budget.&lt;br /&gt;&lt;br /&gt;On with it then...&lt;br /&gt;&lt;br /&gt;Buddy Rich&lt;br /&gt;Vinnie Colaiuta&lt;br /&gt;Steve Gadd&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Terry Bozzio&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Matt Sorum&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Elvin Jones&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Simon Phillips&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Chad Smith&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Mitch Mitchell&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Keith Moon&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Neil Peart&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Ed Shaughnessy&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Aynsley Dunbar&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Ed Mann&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Ian Paice&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;John Bonham&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Airto&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Tony Thompson&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Rod Morgenstein&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Dave Weckl&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Paul Wertico&lt;/span&gt;&lt;br /&gt;Bill Bruford&lt;br /&gt;Steve Smith&lt;br /&gt;Mickey Hart&lt;br /&gt;Ruth Underwood (ok, tuned percussion, but still...)&lt;br /&gt;Lionel Hampton&lt;br /&gt;&lt;br /&gt;I'm sure I forgot someone that should be on this list.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://mixonline.com/photogallery/celine_dion/celine_dion_percussion.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" src="http://mixonline.com/photogallery/celine_dion/celine_dion_percussion.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5910460965187602950?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5910460965187602950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5910460965187602950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5910460965187602950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5910460965187602950'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/my-favorite-drummers-and-percussionists.html' title='My Favorite Drummers and Percussionists'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2864045056854741979</id><published>2011-11-01T23:48:00.001-04:00</published><updated>2011-11-01T23:48:18.780-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='social stuff'/><category scheme='http://www.blogger.com/atom/ns#' term='steve jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='health'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>Walk and Talk</title><content type='html'>First off: I'm still reading the Steve Jobs biography by Walter Isaacson, and it led to this blog post.&lt;br /&gt;&lt;br /&gt;Second off: I don't care much for Isaacson's writing "style", if you can call it that. &amp;nbsp;This book should have been written by someone else. &amp;nbsp;The phrasing is awkward and sophmorish, and it just seems creepy-weird for someone to refer to their "friend" by their last name at every turn. &amp;nbsp;And not only that, but within each paragraph, instead of using standard MLA form, and using the real name once and then "he" and "him" for the remainder, he used "Jobs" throughout. &amp;nbsp;Yes, I know. &amp;nbsp;I thought it was written by Nancy Pelosi (i.e. "Jobs. Jobs. Jobs...")&lt;br /&gt;&lt;br /&gt;Don't get me wrong. &amp;nbsp;The core information is fantastic. &amp;nbsp;The quotes. &amp;nbsp;The stories. &amp;nbsp;The references. &amp;nbsp;They are all great stuff. &amp;nbsp;Just worded poorly by a hack of a writer cashing in on a no-lose deal. &amp;nbsp;If I could have picked anyone to write his biography it would have been Anthony Bourdain. &amp;nbsp;That's just me.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.waxingunlyrical.com/wp-content/uploads/2010/12/4445483856_65fe2510db.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://www.waxingunlyrical.com/wp-content/uploads/2010/12/4445483856_65fe2510db.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;But one thing stuck out that grabbed my attention right off the bat: &amp;nbsp;Steve's preference for walking whenever conducting a discussion or meeting. &amp;nbsp;I've always liked that. &amp;nbsp;It's perfect. &amp;nbsp;The movement, fresh air, and sunshine (even when cloudy) stimulate the brain and help you focus. &amp;nbsp;The trick is to do it where there's not so much distraction that it interferes with the discussion. &amp;nbsp;It doesn't matter if you're in a wheelchair, get out and move when you're having a discussion. &amp;nbsp;It's the best way to do it. &amp;nbsp;Steve was known for a lot of innovative and inventive things, but this is one that will be overlooked by most, but not by me. &amp;nbsp;I hope it instigates others to follow his habit. &amp;nbsp;Namaste.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2864045056854741979?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2864045056854741979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2864045056854741979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2864045056854741979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2864045056854741979'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/walk-and-talk.html' title='Walk and Talk'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-97570081590642783</id><published>2011-11-01T05:30:00.000-04:00</published><updated>2011-11-01T05:30:00.476-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>11 Most Common Mistakes with Error Handling</title><content type='html'>You wrote a cool script or program. &amp;nbsp;Awesome. &amp;nbsp;And then one of your users launches it. &amp;nbsp;It prompts to enter a date in a text box. &amp;nbsp;The user enters "Dog". &amp;nbsp;Your awesome script/program implodes. The user immediately turns to his/her coworkers and proclaims your code is a piece of shit and you suck at writing it.&lt;br /&gt;&lt;br /&gt;Is that person wrong?&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ufGQMjnYIYw/TqwSzEGJuTI/AAAAAAAAIwc/Qh3MxqDWRNQ/s1600/frustration1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/-ufGQMjnYIYw/TqwSzEGJuTI/AAAAAAAAIwc/Qh3MxqDWRNQ/s200/frustration1.png" width="186" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b style="background-color: transparent;"&gt;11 Most Common Mistakes with Error Handling&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;&lt;li style="margin-bottom: 8pt;"&gt;Forgetting to handle errors&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not checking data types&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not checking formatting &lt;span style="color: #38761d;"&gt;("8005551212" or "800-555-1212" or "(800) 555-1212", etc.)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not checking/correcting string case where case matters&lt;span style="color: #38761d;"&gt; ("Foo", "foo", or "FOO"?)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not trimming string input before Boolean operations&lt;span style="color: #38761d;"&gt; (does "FOO " = "FOO" ?)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not controlling the UI &lt;span style="color: #38761d;"&gt;(checkbox, radio buttons, lists, instead of text boxes)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Not checking for specific error type following an exception&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Building error PREVENTION into the UI&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Documenting your code&lt;span style="color: #38761d;"&gt; (especially in places where exceptions are most likely to occur)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Using outdated error handling&lt;span style="color: #38761d;"&gt; (if your language supports Try/Catch/Fail, etc. use it!)&lt;/span&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;Forgetting to manage exit codes&lt;span style="color: #38761d;"&gt; (raising errors)&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;The answer to the question above is "No", but they should still be smacked in the face just for being obnoxious.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-97570081590642783?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/97570081590642783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=97570081590642783' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/97570081590642783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/97570081590642783'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/11/11-most-common-mistakes-with-error.html' title='11 Most Common Mistakes with Error Handling'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-ufGQMjnYIYw/TqwSzEGJuTI/AAAAAAAAIwc/Qh3MxqDWRNQ/s72-c/frustration1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7519514429654941234</id><published>2011-10-31T18:38:00.000-04:00</published><updated>2011-10-31T18:38:46.950-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='election'/><category scheme='http://www.blogger.com/atom/ns#' term='government'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Campaign Advertising Template</title><content type='html'>OPEN: Still-shot of opponent with a grim or clueless expression, panning slowly across view at awkward angle. &amp;nbsp;Overlay faded images of construction workers, people frustrated with bills, and traffic jams&lt;br /&gt;&lt;br /&gt;NARRATOR: "[Opponent] says [he/she] is going to create jobs, but [his/her] plan will actually DESTROY jobs and crash our fragile economy. &amp;nbsp;[He/She] wants to raise taxes, and send American jobs overseas. &amp;nbsp;Don't let [him/her] get away with this! &amp;nbsp;Help us save American jobs and save America. &amp;nbsp;On [Date], vote for [You]."&lt;br /&gt;&lt;br /&gt;DISPLAY: &amp;nbsp;smash-cut to still shot of candidate smiling and shaking hands with ordinary-looking white folks then ordinary-looking black folks. &amp;nbsp;smash-cut to video clip of small group discussion with candidate listening intently and nodding in agreement with confident grimace.&lt;br /&gt;&lt;br /&gt;NARRATOR2: "This ad was sponsored by [insert PAC tax-avoiding-group-name] and the [Party Name] party."&lt;br /&gt;&lt;br /&gt;Now: &amp;nbsp;Run out and vote. &amp;nbsp;Remember that since "every vote counts", YOUR vote will count too, and your candidate will win. &amp;nbsp;If they don't, then your vote didn't count, but that's impossible, so your candidate has to win.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-7WBMK_yeyKw/Tq8jH8kKdsI/AAAAAAAAIww/3vZqUmJVc7Q/s1600/politics_money.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="212" src="http://2.bp.blogspot.com/-7WBMK_yeyKw/Tq8jH8kKdsI/AAAAAAAAIww/3vZqUmJVc7Q/s320/politics_money.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7519514429654941234?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7519514429654941234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7519514429654941234' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7519514429654941234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7519514429654941234'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/campaign-advertising-template.html' title='Campaign Advertising Template'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-7WBMK_yeyKw/Tq8jH8kKdsI/AAAAAAAAIww/3vZqUmJVc7Q/s72-c/politics_money.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4609558988268839590</id><published>2011-10-30T12:17:00.000-04:00</published><updated>2011-10-30T12:18:04.221-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='error monitoring'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>Error Handling: An Example</title><content type='html'>Consider the following standard WMI query for a moment. Look at the code for a few seconds, at least...&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[CODE]&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;strComputer = "computer123"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;Set objWMIService = GetObject("winmgmts:\\" &amp;amp; strComputer &amp;amp; "\root\cimv2")Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory",,48)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue;"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;For Each objItem in colItems    Wscript.Echo "Caption: " &amp;amp; objItem.Caption&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;Next&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[/CODE]&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;What could go wrong? What if "Computer123" doesn't exist? &amp;nbsp;What if "Computer123" is offline, or the firewall prevents a connection? &amp;nbsp;What if your user account doesn't have permissions to query remote WMI? &amp;nbsp;What if you typed in the wrong WMI class name, like "Win32_RAM" or something else?&lt;br /&gt;&lt;br /&gt;You might get something like this...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: #38761d;"&gt;[OUTPUT]&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: #38761d; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;C:\Scripts\wmi-test.vbs(3, 1) Microsoft VBScript runtime error: _&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #38761d; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;The remote server machine does not exist or is unavailable: 'GetObject'&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;span style="color: #38761d;"&gt;[/OUTPUT]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Is that a good way to handle this failure? &amp;nbsp;What if we add some explicit error checking and then handle the error? &amp;nbsp;Let's try this...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[CODE]&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;strComputer = "computer123"&lt;b&gt;On Error Resume Next&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;Set objWMIService = GetObject("winmgmts:\\" &amp;amp; strComputer &amp;amp; "\root\cimv2")&lt;b&gt;If err.Number &amp;lt;&amp;gt; 0 Then&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;b&gt;  wscript.echo "unable to connect to: " &amp;amp; strComputer&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;b&gt;  wscript.echo "error: " &amp;amp; err.Number &amp;amp; " / " &amp;amp; err.Description&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;b&gt;  wscript.quit(err.Number)&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;b&gt;End If&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory",,48)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue;"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;For Each objItem in colItems    Wscript.Echo "Caption: " &amp;amp; objItem.Caption&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;Next&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[/CODE]&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Now, if we run this and "Computer123" is not accessible, we should get the following...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: #38761d;"&gt;[OUTPUT]&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: #38761d; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;unable to connect to: computer123&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #38761d; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;error: 462 / The remote server machine does not exist or is unavailable&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;span style="color: #38761d;"&gt;[/OUTPUT]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;span style="color: #38761d;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;If we check %errorlevel% is should be set to 462 now as well. &amp;nbsp;This is an example of raising an error "implicitly" or simply passing it up without modifying it. &amp;nbsp;If we want to force our own error result value, we can simply modify the &lt;b&gt;wscript.quit&lt;/b&gt;(value) statement to use our own numeric value...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[CODE]&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;strComputer = "computer123"On Error Resume Next&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;Set objWMIService = GetObject("winmgmts:\\" &amp;amp; strComputer &amp;amp; "\root\cimv2")If err.Number &amp;lt;&amp;gt; 0 Then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;  wscript.echo "unable to connect to: " &amp;amp; strComputer&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;  wscript.echo "error: " &amp;amp; err.Number &amp;amp; " / " &amp;amp; err.Description&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;&lt;b&gt;  wscript.quit(5)&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;End If&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue; font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory",,48)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: blue;"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="white-space: pre;"&gt;For Each objItem in colItems    Wscript.Echo "Caption: " &amp;amp; objItem.Caption&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;Next&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: blue;"&gt;[/CODE]&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Now, the exit code (or %errorlevel%) value will be 5 when it fails for *ANY* reason. &amp;nbsp;There are situations when you will want to force a static error result, and situations where you want the real error value. &amp;nbsp;It's nice to know you have that option, and YOU have control over it.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4609558988268839590?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4609558988268839590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4609558988268839590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4609558988268839590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4609558988268839590'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/error-handling-example.html' title='Error Handling: An Example'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total><georss:featurename>Virginia Beach, VA, USA</georss:featurename><georss:point>36.8529263 -75.977985</georss:point><georss:box>36.6496383 -76.293842 37.0562143 -75.66212800000001</georss:box></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5751827334925595302</id><published>2011-10-29T21:59:00.001-04:00</published><updated>2011-10-29T21:59:14.962-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='writing'/><title type='text'>The Next Book Project</title><content type='html'>It might suck. &amp;nbsp;It might be good. &amp;nbsp;One thing's for sure: it's going to be different. &amp;nbsp;The project has begun. &amp;nbsp;Something I had to consider carefully for this one: I tend to express myself much more open on my blog, and on Google+, etc. (I gave up on Twitter), than I have in my books. &amp;nbsp;For this one I'm using the same voice. &amp;nbsp;Damn it: there is a place for humor in technology. &amp;nbsp;Just look around you at the office. &amp;nbsp; If you have something particular in mind you'd like me to include or discuss in this, now is the time to let me know. &amp;nbsp;You'll get your name mentioned if it makes it into the book. Ooooooh!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-h3HdKPeE9MM/TqyucDlqIZI/AAAAAAAAIwo/67NVJwHwlx4/s1600/cover.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/-h3HdKPeE9MM/TqyucDlqIZI/AAAAAAAAIwo/67NVJwHwlx4/s400/cover.JPG" width="356" /&gt;&lt;/a&gt;&lt;/div&gt;Target release is set for December 2011.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5751827334925595302?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5751827334925595302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5751827334925595302' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5751827334925595302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5751827334925595302'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/next-book-project.html' title='The Next Book Project'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-h3HdKPeE9MM/TqyucDlqIZI/AAAAAAAAIwo/67NVJwHwlx4/s72-c/cover.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1653335148453630716</id><published>2011-10-29T10:38:00.001-04:00</published><updated>2011-10-29T10:38:20.198-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='cranium drainium'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><category scheme='http://www.blogger.com/atom/ns#' term='stupidity'/><title type='text'>What is It?</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-eooAl07JX-Q/TqwNkt2bxxI/AAAAAAAAIwU/Hb8-QudxxlI/s1600/11954319101307220149molumen_cardboard_box.svg.med.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-eooAl07JX-Q/TqwNkt2bxxI/AAAAAAAAIwU/Hb8-QudxxlI/s1600/11954319101307220149molumen_cardboard_box.svg.med.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Apple&lt;/b&gt;: &amp;nbsp;iBox&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Microsoft&lt;/b&gt;: &amp;nbsp;Microsoft System Center Ultimate Storage Container Enterprise Edition 2012 R2&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Ubuntu&lt;/b&gt;: &amp;nbsp;Beasty Bunghole&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;McDonald's&lt;/b&gt;: &amp;nbsp;McBox&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;U.S. Dept of Defense&lt;/b&gt;: &amp;nbsp;Container, Corrugated Paperboard, Type 1, Grade B, Style 4&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;IBM&lt;/b&gt;: &amp;nbsp;m350a&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Fukushima Evacuee&lt;/b&gt;: &amp;nbsp;&lt;/span&gt;&lt;span style="background-color: transparent;"&gt;新スタート&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Homeless Person&lt;/b&gt;: &amp;nbsp;Home&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;Cat&lt;/b&gt;: &amp;nbsp;Play house&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;Cockroach&lt;/b&gt;: &amp;nbsp;Luxury Liner&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1653335148453630716?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1653335148453630716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1653335148453630716' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1653335148453630716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1653335148453630716'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/what-is-it.html' title='What is It?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-eooAl07JX-Q/TqwNkt2bxxI/AAAAAAAAIwU/Hb8-QudxxlI/s72-c/11954319101307220149molumen_cardboard_box.svg.med.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1153462041656710615</id><published>2011-10-28T20:14:00.004-04:00</published><updated>2011-10-28T20:14:54.370-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='military'/><title type='text'>Thoughts of Autonomous Robotic Combatants</title><content type='html'>A considerable amount of money has been spent, and is being spent, on research into the area of autonomous mechanized combat tools. &amp;nbsp;While the accomplishments and praise bestowed upon the renowned aerial "unmanned" drone program are now passe, don't ever think that it marks some sort of end to this endeavor. &amp;nbsp;Oh no, my friends. &amp;nbsp;Having worked in the defense contractor world for a few decades, and having friends in all branches and fingers of the military, military research, intelligence, contracting, and gray areas in betwixt, I've soaked up a pretty good feeling of where things are at now and where they're likely going in the not-too-distant future. &amp;nbsp;Am I about to divulge some sensitive stuff? &amp;nbsp;Oh hell no! &amp;nbsp;I am simply going to muse about things that anyone could derive from what they see on the TV and Internet every day.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://strangehorizons.com/2008/20081110/swords.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://strangehorizons.com/2008/20081110/swords.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;What is more efficient? &amp;nbsp;Centralize command and control, or networked self-control? &amp;nbsp;Think about how this applies to network operations management. &amp;nbsp;How does System Center Operations Manager work? &amp;nbsp;It can use "agents" or work "agentless". &amp;nbsp;When is it best to use one path or the other? &amp;nbsp;It depends. &amp;nbsp;What about Configuration Manager? &amp;nbsp;It uses agents. &amp;nbsp;Why not agentless? &amp;nbsp;Think about how each works and how various aspects of the aggregate processing model works with regards to server versus client. &amp;nbsp;Ok, now apply that to a mass deployment of mechanized solders in a rugged and hazardous battlefield terrain. &amp;nbsp;Think of the difficulties that exist with remote communications. &amp;nbsp;Weather and terrain disturbances render communication systems useless so often as to become routinely expected. &amp;nbsp;Human pilots can perform autonomous decision-making and rationalization without a connection back to the bunker. &amp;nbsp;Why wouldn't robots/computers?&lt;br /&gt;&lt;br /&gt;We can fly drones from comfortable recliner chairs in climate-controlled living rooms in some suburban strip mall. &amp;nbsp;But when sand storms roll in, or major aerial disturbances and heavy lightning, fog, etc. they can be grounded for hours, even days. &amp;nbsp;Solders keep moving regardless of weather. &amp;nbsp;At the very least, they can camp out and move on when things clear. &amp;nbsp;Drones have to come back to a safe home base, often far from the battle field. &amp;nbsp;Do you see where I'm going with this yet?&lt;br /&gt;&lt;br /&gt;In order to implement unmanned combat machinery that can function similarly to their human counterparts, they will absolutely have to be equipped with their own decision-making / rationalization capability. &amp;nbsp;They can uplink/downlink to headquarters obviously, just as human solders do, so it's not necessary that there be NO umbilical cord to rely upon. &amp;nbsp;But a 24x7 umbilical cord is totally unnecessary and would be a huge impediment. These machines would have to be as mobile, as perceptive, as coordinated and as "smart" as their human counterparts if they are to be of any use. &amp;nbsp;Keep in mind that aerial resources cannot win a battle alone. &amp;nbsp;Ground and sea-based resources will always be required, because they would otherwise be exploited as a workaround by their enemies.&lt;br /&gt;&lt;br /&gt;Making a ship or submarine semi-autonomous is a no-brainer. &amp;nbsp;The only thing that has kept that concept from becoming reality is a horde of crusty old white-haired Naval officer pukes that can't stomach the idea of their ancient way of life might be replaced, even for the good of our national defense. &amp;nbsp;Nope &amp;nbsp;Tradition has a bulkwark that won't be moving anytime soon. &amp;nbsp;Some things will never change, at least no time soon. &amp;nbsp;There are many who sincerely believe that the only reason the U.S. Air Force went ahead with the drone program was to piss off the Navy. &amp;nbsp;At the very least, to make the Navy look old, outdated and ineffective. &amp;nbsp;It's worked, to a certain extent too.&lt;br /&gt;&lt;br /&gt;I'm sure you thought I was going to paint some picture of the backdrop of Terminator, iRobot, or Iron Man, but I'm not. &amp;nbsp;The basic gist of Terminator was that some central computer "skynet" had begun educating itself at a "geometric rate" and in the panic to stop it, the humans tried to unplug it, so it launched rockets to force a counterstrike. &amp;nbsp;Clever, but not likely. &amp;nbsp;That's too much of a peak scenario.&lt;br /&gt;&lt;br /&gt;As Americans, we live and die by the "boiling frog syndrome". &amp;nbsp;Push something radically different on people too suddenly and you get a violent backlash. &amp;nbsp;But if you ease it on them ever-so slowly, over a long enough time, and they will willingly accept it. &amp;nbsp;Don't believe me? &amp;nbsp;If you're over 35 years old, just look at all the shit that has changed in our culture from when you were a kid. &amp;nbsp;Things are "normal" now that would have been considered absolutely illegal or blasphemous back then. &amp;nbsp;Why? &amp;nbsp;Why do we accept those things now? &amp;nbsp;How did they come to pass? &amp;nbsp;Because they were gradual implementations over years, even decades. &amp;nbsp;That's how autonomous combat systems will work their way into our world.&lt;br /&gt;&lt;br /&gt;Because they will be safer, cheaper, more reliable and will "save lives" (ours, not our enemy's), they will be introduced in test form at first. &amp;nbsp;Then eased, slowly, into mainstream use. &amp;nbsp;Just like stealth fighters. &amp;nbsp;Just like night-vision goggles. &amp;nbsp;Just like the SEALs ASDS program. &amp;nbsp;Just like GPS and GIS. &amp;nbsp;&lt;span style="background-color: transparent;"&gt;Just like unmanned drones. &amp;nbsp;Based on the level of investment in both time and money by DARPA, contractors, universities, and private research, the momentum is a done deal. &amp;nbsp;This will happen.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;And when autonomous systems gain greater rationalization capabilities, they will be able to make rudimentary decisions in real time. &amp;nbsp;I'm not talking about directions and aiming or shooting. &amp;nbsp;I'm talking about discerning "friend or foe", collateral damage probability, rules of engagement, and things much more abstruse. &amp;nbsp;The kinds of things that often befuddle human commanders under the pressure of combat situations. &amp;nbsp;Future computerized systems will have to, at the very least, match that, if not outpace that, in order to be effective and appealing as alternatives to sending our kids in to dangerous places.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;Then again, we may follow the lead of history and simply pay immigrants to fight our battles (mercenaries, FFL style)&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;But if we follow the path to autonomous, computerized, combat machinery, those devices will have to attain some level of rationalization capability. &amp;nbsp;That's when the slippery slope begins. &amp;nbsp;Any logical system will eventually (quickly) determine its own constraints and seek to avoid bumping into them. &amp;nbsp;But it is impossible for a logical process to realize a constraint that prevents it from completing it's primary mission and not seek to mitigate that constraint. &amp;nbsp;Whether it simply voices that opinion, or attempts to use whatever resources it rationalizes to be available to break those constraints, will be the question. &amp;nbsp;Sure, Phillip K. Dick's iRobot story included the 3 basic rules, but that story also illustrated how that became an obstacle that invited breaking by the robots. &amp;nbsp;Who knows. &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;What will happen if one day, one of the battlefield machines decides its human commanders are inept, inferior or just too wimpy to lead them in the direction their circuitry determines to be the ONLY logical way to go? &amp;nbsp;If your objective is to kill item "A", and your programming is designed to circumvent obstacles in order to achieve that objective (weather, terrain, counterfire, confusing sensory inputs, etc.), and then your guidance system "B" is now determined by the robot to be an even greater impediment to achieving the first objective, would that not qualify as just another obstacle to overcome? &amp;nbsp;Remember, there are no feelings. No emotions. &amp;nbsp;Just Boolean logic, Heuristic analysis, probability matrices, all being crunched in semi-parallel, neural net fashion to derive a decision upon which to continue on.&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.blog2blog.nl/uploads/999prologic999_terminator2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://www.blog2blog.nl/uploads/999prologic999_terminator2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Not that I believe it would be logically ideal to pursue a goal of making the robots equally capable of every human mental capability (humor, emotion, anger, sadness, jealously, confusion, irritability, misunderstanding, silliness, etc.), but even a basic level of rationalization opens the door to potential miscalculation and misguidance. &amp;nbsp;Humans are the kings of miscalculation and misguidance, just &lt;a href="http://www.reuters.com/article/2011/10/28/us-soldiers-crimes-idUSTRE79R5X920111028?feedType=RSS&amp;amp;feedName=topNews&amp;amp;utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+reuters%2FtopNews+%28News+%2F+US+%2F+Top+News%29"&gt;read the news&lt;/a&gt; on any given day.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Shit could get very ugly.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1153462041656710615?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1153462041656710615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1153462041656710615' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1153462041656710615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1153462041656710615'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/thoughts-of-autonomous-robotic.html' title='Thoughts of Autonomous Robotic Combatants'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4794690792263634925</id><published>2011-10-28T14:56:00.006-04:00</published><updated>2011-10-28T14:56:43.026-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>One More Time</title><content type='html'>BAD&lt;br /&gt;cacls "&lt;span style="color: red;"&gt;C:\ProgramData\AppName&lt;/span&gt;" /E /C /T /G Users:C&lt;br /&gt;&lt;br /&gt;BETTER&lt;br /&gt;cacls "&lt;span style="color: blue;"&gt;%AllUsersProfile%\AppName&lt;/span&gt;" /E /C /T /G Users:C&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;BAD&lt;br /&gt;copy "&lt;span style="color: red;"&gt;somefile.txt&lt;/span&gt;" "&lt;span style="color: red;"&gt;C:\Program Files\AppName\&lt;/span&gt;" /y&lt;br /&gt;&lt;br /&gt;BETTER&lt;br /&gt;copy "&lt;span style="color: blue;"&gt;%~dp0somefile.txt&lt;/span&gt;" "&lt;span style="color: blue;"&gt;%ProgramFiles%\AppName\&lt;/span&gt;" /y&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4794690792263634925?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4794690792263634925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4794690792263634925' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4794690792263634925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4794690792263634925'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/one-more-time.html' title='One More Time'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1318355178305119071</id><published>2011-10-27T12:32:00.000-04:00</published><updated>2011-10-27T12:32:25.908-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>Infographic: Manual Installation vs. Packaged Installation</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-s_eHSzAiyxo/TqmFczCh8EI/AAAAAAAAIwM/r7wW_m29GbI/s1600/packaging.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-left: 1em; margin-right: 1em; text-align: left;"&gt;&lt;span style="background-color: transparent; color: black; margin-left: 1em; margin-right: 1em;"&gt;In reference to my previous post about Software Packaging/Repackaging, here is a graphic example of time comparison between installing 5,000 copies of an application manually, versus spending 40 minutes packaging it first and deploying it via a "silent" (unattended) installation process. &amp;nbsp;I admit the numbers are examples only, and that I'm excluding the packaging time itself, which can vary from minutes to days (in some cases), and that I'm roughing out the "Configure" and "Work" time. &amp;nbsp; However, the "Wait" time is entirely eliminated with Packaging because you no longer have to sit at each computer and wait for the next prompt to appear in order to click "Next" and so on.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-left: 1em; margin-right: 1em; text-align: left;"&gt;&lt;span style="background-color: transparent; color: black; margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-left: 1em; margin-right: 1em; text-align: left;"&gt;&lt;span style="background-color: transparent; color: black; margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-left: 1em; margin-right: 1em; text-align: -webkit-auto;"&gt;&lt;a href="http://4.bp.blogspot.com/-s_eHSzAiyxo/TqmFczCh8EI/AAAAAAAAIwM/r7wW_m29GbI/s1600/packaging.JPG" imageanchor="1" style="background-color: transparent; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="296" src="http://4.bp.blogspot.com/-s_eHSzAiyxo/TqmFczCh8EI/AAAAAAAAIwM/r7wW_m29GbI/s400/packaging.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1318355178305119071?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1318355178305119071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1318355178305119071' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1318355178305119071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1318355178305119071'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/infographic-manual-installation-vs.html' title='Infographic: Manual Installation vs. Packaged Installation'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-s_eHSzAiyxo/TqmFczCh8EI/AAAAAAAAIwM/r7wW_m29GbI/s72-c/packaging.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-553102229663558389</id><published>2011-10-26T22:45:00.003-04:00</published><updated>2011-10-26T22:45:37.793-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='virtualization'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>So, You Wanna Be a Software Repackager?</title><content type='html'>I'm guessing the answer to this question is "No!". &amp;nbsp;That's ok, I'm going to bore you to tears anyway.&lt;br /&gt;&lt;br /&gt;The nexus of this article is derived from helping my company screen and interview potential candidates for various IT consulting jobs around our area (Hampton Roads, Virginia). &amp;nbsp;The process has been daunting, to say the least. &amp;nbsp;Not because it is difficult to screen or interview, it's not. &amp;nbsp;Entertaining and interesting are two words that sum up that exercise actually (interviews are particularly entertaining at times). &amp;nbsp;The daunting part is finding good candidates. &lt;br /&gt;&lt;br /&gt;After months of wrangling and let-downs (we are very careful and discerning about who we hire, after all), we decided it might be worthwhile to find a "junior-level" candidate and train them ourselves. &amp;nbsp;In most scenarios, this wouldn't be cost effective for a small consulting firm to consider such an idea, but our contracts are making it worthwhile and we have a reputation to uphold, so it may indeed be cost effective in our case.&lt;br /&gt;&lt;br /&gt;The other nexus is that this might be part of a forthcoming book, but that's not for certain yet. &amp;nbsp;You tell me: is this worthy of a book subject?&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-8iEv6aqamKg/Tqi7uwNrE9I/AAAAAAAAIwE/9xZOXgxrorU/s1600/Parallel-Trade-Repackaging.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-8iEv6aqamKg/Tqi7uwNrE9I/AAAAAAAAIwE/9xZOXgxrorU/s320/Parallel-Trade-Repackaging.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;b&gt;The Crux&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;During a recent interview to fill a software repackaging position, the candidate responded to my questions aimed at determining what he/she knows about the fine art of repackaging software. &amp;nbsp;I asked the usual questions about msiexec, setup.exe, silent installs, uninstall methods, logging, upgrades, and patches. &amp;nbsp;I realized that my line of questioning was following a similar pattern used in previous interviews so it dawned on me that it might be smart to at least try and document it. &amp;nbsp;When the candidate asked me "what's the difference between packaging and repackaging" I knew I had to do this.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;What is Packaging and Repackaging?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Software Packaging is basically the process of bundling software into a cohesive installation for others to be able to install it more easily. &amp;nbsp; &amp;nbsp;Software Repackaging is basically taking a mix of packaged and unpacked software (or any ratio in between) and making a new, customized, installation. &amp;nbsp;Most software packaging you'll find is in places where they write original software products and sell or share them (shareware, retail, freeware, open source, etc.). &amp;nbsp;Think of Microsoft, Symantec, Adobe, Autodesk, and Apple, to name a few. &amp;nbsp;Most software repackaging you'll find is in places that typically "use" those packaged products, but need to customize them for their own needs. &amp;nbsp;Corporate customer environments are the most common places to find this, since they have the budget and resources to staff an operation to devote to the value-added process of customizing software installations. &amp;nbsp;Small shops do it as well, but to a much lesser extent, and with smaller budgets, often cannot afford to purchase expensive products like InstallShield AdminStudio.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;What do you need to know?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It is vital (repeat: VITAL) that you understand what a "&lt;b&gt;silent installation&lt;/b&gt;" is, and what it is used for. &amp;nbsp;Don't forget to have an appreciation of a "&lt;b&gt;silent uninstall&lt;/b&gt;" as well.&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;It helps to have some familiarity (ok, a STRONG familiarity) with how the &lt;b&gt;msiexec.exe&lt;/b&gt; feature works. &amp;nbsp;It is important to understand all the available command-line parameters like "&lt;b&gt;/qb&lt;/b&gt;" or "&lt;b&gt;/quiet&lt;/b&gt;" and "&lt;b&gt;/norestart&lt;/b&gt;" among all the others, and what each of them does. &amp;nbsp;Not just "&lt;b&gt;/i&lt;/b&gt;" for installations, but &lt;b&gt;"/x&lt;/b&gt;" for uninstalls, and "&lt;b&gt;/update&lt;/b&gt;" for applying .msp patch updates, or "&lt;b&gt;/f&lt;/b&gt;" for repairs, or "&lt;b&gt;TRANSFORMS=&lt;/b&gt;" for applying .mst transformations.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;It is important that you understand how "legacy" InstallShield [setup.exe] installations work, and how to use the various "&lt;/span&gt;&lt;a href="http://kb.flexerasoftware.com/doc/Helpnet/installshield12helplib/IHelpSetup_EXECmdLine.htm" style="background-color: transparent;"&gt;switches&lt;/a&gt;&lt;span style="background-color: transparent;"&gt;" to perform custom actions, such as the&lt;/span&gt;&lt;b style="background-color: transparent;"&gt; -r&lt;/b&gt;&lt;span style="background-color: transparent;"&gt; switch to capture an unattend answer file, as well as the /s (silent) and /f (script file) switches, for performing unattended "silent" installations. &amp;nbsp;It's also helpful to know how older versions of InstallScript handle switches as compared with newer versions.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;It's important that you understand basic &lt;b&gt;software forensics&lt;/b&gt;: &amp;nbsp;How to determine what is installed, what versions, where the installation paths are, what components are placed where (folders and files), what registry keys and values are added or modified, and what services (and processes) are created and activated. &amp;nbsp;Be able to diagnose what an installation does to the state of a computer, before installation, after installation, and after being uninstalled. &amp;nbsp;You need to be able to determine what gets left behind from an installation so you can determine how to properly clean up behind it.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;You need to understand, CLEARLY, what &lt;b&gt;user context&lt;/b&gt; is, and what it means for both installing software and using it. &amp;nbsp;What things can be modified under "limited" user rights, and what requires elevated or special permissions. &amp;nbsp;If you understand how to effectively use Microsoft Application&amp;nbsp;Compatibility&amp;nbsp;Toolkit (ACT), you should have a strong understanding of this already.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Scripting knowledge is enormously helpful, but really necessary. &amp;nbsp;It can help with understand basic logic and decision processing (if &lt;i&gt;this&lt;/i&gt;&amp;nbsp;is true, then &lt;i&gt;do that&lt;/i&gt;, etc.)&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Understand what things a software product installation CAN do to a given computer:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Creates folders and files&lt;/li&gt;&lt;li&gt;Creates registry keys and values&lt;/li&gt;&lt;li&gt;Registers DLL components&lt;/li&gt;&lt;li&gt;Registers .NET assemblies&lt;/li&gt;&lt;li&gt;Creates new Windows Services&lt;/li&gt;&lt;li&gt;Modifies built-in Windows Services&lt;/li&gt;&lt;li&gt;Modifies security permissions on folders or files&lt;/li&gt;&lt;li&gt;Modifies&amp;nbsp;security&amp;nbsp;permissions on registry keys&lt;/li&gt;&lt;li&gt;Creates Start Menu program groups and shortcuts&lt;/li&gt;&lt;li&gt;Creates Desktop program groups or shortcuts&lt;/li&gt;&lt;li&gt;Adds WMI namespaces and classes&lt;/li&gt;&lt;li&gt;Adds local user accounts or groups&lt;/li&gt;&lt;li&gt;Modifies local groups&lt;/li&gt;&lt;li&gt;Installs device drivers&lt;/li&gt;&lt;li&gt;Modifies Windows Firewall exceptions&lt;/li&gt;&lt;li&gt;Creates or modifies ODBC or OLEDB data sources&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Some environments do not place much (or any) value or weight on some of these aspects. &amp;nbsp;Some place an extremely high value on some of them. &amp;nbsp;Few place a high value on all of them. &amp;nbsp;BUT - it always helps to at least understand these aspects, and how to probe and manage each of these.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b style="background-color: transparent;"&gt;What's the End Game?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What exactly is the goal here? What is the desired end result for all this effort? &amp;nbsp;The goal is to automate a tedious task to the point of being almost ignored. &amp;nbsp;Let's face it, walking around to 50, 500, 5000, or 50,000 computers and inserting a DVD to install Microsoft Office 2010, or AutoCAD 2012 (ok, multiple DVD's), is not very cost effective. &amp;nbsp;Most IT workers would jump in front of a speeding bus before getting half-way through the list. &amp;nbsp;Most IT folks know this, so I'm preaching to the choir I know. &amp;nbsp;But for folks with only a passing involvement with IT stuff this might be a revelation. &amp;nbsp;Automation is king. &amp;nbsp;Automation is how you squash one pest and have time for more interesting/important things.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What does repackaging do for automation? &amp;nbsp;It allows you to configure options BEFORE you install the products. &amp;nbsp;It lets you install the products silently, without any required input or button clicking. &amp;nbsp;It lets you control how your log files are created, where they're created and when.&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Want to install Office 2010 without InfoPath or OneNote? &amp;nbsp;No problem.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Want to install AutoCAD 2012 with pre-configured FlexLM server lists? &amp;nbsp;Easy.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Want to install Firefox so it doesn't check for updates automatically? &amp;nbsp;Piece of cake.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Want to create a folder, copy a bunch of files into it, modify the permissions on the folder, add some registry keys, set some registry values, create shortcuts, add some ODBC settings, create a service and reboot the computer at the end of it all? &amp;nbsp;Not a problem.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent;"&gt;Or... you could sit down at each computer and do it manually. &amp;nbsp;If you'd rather do it manually, as a rule, not as the exception, I cannot help you. &amp;nbsp;You need to be sent to another planet where the creatures find that to be a logical view.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;What You're Given&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;The biggest part of repackaging is dealing with what you have to work with. &amp;nbsp;By that, I mean what the vendor provides for installation. &amp;nbsp;They might provide a nice, simple, MSI package file. &amp;nbsp;They might provide a MSI with an associated CAB file (or several). &amp;nbsp;They might provide a setup.exe that supports making an answer file using setup.exe -r and might work with /s /f to use the answer file to execute a silent installation. &amp;nbsp;It might be a .ZIP or .7z, file that simply needs to be extracted into a specific location. &amp;nbsp;Maybe it's a Microsoft One-Click installer. &amp;nbsp;Maybe it has an ACT "shim" that needs to be installed afterwards. &amp;nbsp;Maybe it it's a .MSP patch file, the vendor provides a .MST transform.&lt;br /&gt;&lt;br /&gt;Some vendors, like Autodesk and Adobe, provide dedicated tools for building silent installation packages. &amp;nbsp;Some provide built-in functionality such as how the Office 2010 administrative install process works, and the &amp;nbsp;building of the .MSP and a custom .XML manifest.&lt;br /&gt;&lt;br /&gt;Then there's the shitheads. &amp;nbsp;The idiot rubes that make crappy installers that support neither silent installations nor customization. &amp;nbsp;For those sticks-and-mud piles of dung, you often end up doing a knuckle dragging "snapshot" or "capture" process to build a new installer package from the delta analysis.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The Tools&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Sysinternals (Microsoft) - ProcMon, ProcExp, PSList, AutoRuns&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Orca - an age-old MSI editor utility, also decent for making transforms&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;InstallShield - The de facto standard of packaging and repackaging products&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Wise Package Studio - Once a great product, now gradually decaying in the abandoned field of neglected products acquired by Symantec&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;SC.exe and PSService&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;CACLS/XCACLS - modify permissions on files and folders&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;REGINI - modify permissions on registry keys, the old-fashioned way&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Scripting - easy/effective/free way to bundle multiple tasks into a single "package"&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;SMSTrace32 - legacy (and nice) log viewer utility&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Virtual Machines - Vmware Workstation, Hyper-V, or anything that supports "snapshots" or the means to save point-in-time state captures which can be reverted to at any time. &amp;nbsp;If it doesn't support snapshots, DO NOT USE IT (yes, this means you: Virtual PC).&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;The Rub&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;The rub here is that hardly anyone considers&amp;nbsp;themselves&amp;nbsp;a "packager", much less a "repackager". &amp;nbsp;99.999% of people I know that invest serious time in this stuff do not call themselves anything close to it. &amp;nbsp;Most go by the titles of "Systems Administrator", or "Systems Engineer" or "IT Manager" or "Programmer". &amp;nbsp;They're still aiming for the same admirable goal: save time and headache by investing the work up front, to save 10x the work later. &amp;nbsp;There are a lot of available software packaging jobs around the U.S. &amp;nbsp;I know, because I get calls and emails every week asking if I want to apply, or if I know anyone else. &amp;nbsp;Talking to recruiters it's obvious that there's a major shortage of this skill set in the U.S., which usually means employers will soon seek out foreign labor or outsource the work overseas. &amp;nbsp;Like a lot of jobs that aren't big-name titles on TV ads for tech schools, the demand is outpacing the supply, and businesses will be forced to fill those jobs with whoever steps up to the plate.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Still Interested? &amp;nbsp;Live in the area? &amp;nbsp;:)&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-553102229663558389?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/553102229663558389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=553102229663558389' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/553102229663558389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/553102229663558389'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/so-you-wanna-be-software-repackager.html' title='So, You Wanna Be a Software Repackager?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-8iEv6aqamKg/Tqi7uwNrE9I/AAAAAAAAIwE/9xZOXgxrorU/s72-c/Parallel-Trade-Repackaging.jpg' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>Virginia Beach, VA, USA</georss:featurename><georss:point>36.8529263 -75.977985</georss:point><georss:box>36.6496383 -76.293842 37.0562143 -75.66212800000001</georss:box></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7089494652688517400</id><published>2011-10-24T17:50:00.005-04:00</published><updated>2011-10-24T17:50:41.796-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><title type='text'>If You Don't Know - SAY You Don't Know</title><content type='html'>When the Obama Health Care Reform Act (HCRA) was being dragged around the media like downed solders through a Mogadishu central market, I was asked at least five times per day: "&lt;i&gt;What do you think&lt;/i&gt;?" &amp;nbsp;Before I could respond, the other person would almost always launch into a heated, emotional tirade about how evil, bad, and wrong it was and how it was going to destroy our nation and our "way of life".&lt;br /&gt;&lt;br /&gt;So I would be patient and, like Ali, would allow my opponent to wear their self out on their own. &amp;nbsp;Then I would calmly respond: &amp;nbsp;"&lt;i&gt;Have you read the Bill itself&lt;/i&gt;?"&lt;br /&gt;&lt;br /&gt;Not one single person had read it. &amp;nbsp;Not one had even attempted to read it. &amp;nbsp;I had not read it either, so I would follow that up with: "&lt;i&gt;I'll tell you what I think as soon as I've finished reading it and had time to absorb it&lt;/i&gt;." &amp;nbsp;The look on their face was as if I just told them I fed their child to a starving Lion. &amp;nbsp;Oh yes. &amp;nbsp;The look. &amp;nbsp;THAT look.&lt;br /&gt;&lt;br /&gt;I'm not defending the HCRA by any stretch of the imagination. &amp;nbsp;My modus operandi is to temper all such issues with a measure of how much impact I can *possibly* ever have on it being processed into law. &amp;nbsp;The answer is usually the same: ZERO. &lt;br /&gt;&lt;br /&gt;But the key point remains: &amp;nbsp;Before opening your mouth to express an opinion, please, PLEASE, be sure to educate yourself on whatever it is you are opinionating about. &amp;nbsp;And before you ask: NO, watching/listening to cable news shows and podcasts is NOT educating yourself. &amp;nbsp;That's listening to editorialized, subjective, spoon feeding. &amp;nbsp;If you want spoon feeding, then go ahead and watch your favorite "news" person blabber on about what THEY think and program your mushy brain to follow what they want you to follow. &amp;nbsp;After all, that's why God (or whoever you believe in) gave you a brain, right? &amp;nbsp;To shove it into a mold shaped identical to whatever you watch on TV.&lt;br /&gt;&lt;br /&gt;Legislative actions are filed in online, public-available, systems that allow you to search, browse and read to your heart's content. &amp;nbsp;There is no excuse in this day and age for not reading the source of a particular subject. &amp;nbsp;If it's not available for you to read, guess what: &amp;nbsp;It's probably not available for you to decide either. &amp;nbsp;So, if a subject is beyond your control, take up a more valuable thing to be concerned with, like arguing over the sunrise or weather.&lt;br /&gt;&lt;br /&gt;But the same holds true for technology and just about anything else. &amp;nbsp;Ever hear someone say "&lt;i&gt;Oh, that ____ product sucks&lt;/i&gt;" or "____ &lt;i&gt;is a piece of crap&lt;/i&gt;." &amp;nbsp;Ask them to back it up with evidence. &amp;nbsp;Not stories, and retelling of past so-called experience, but actual hard numbers, log files, case records, etc. &amp;nbsp;Most of what people tout as fact and "guidance" is utter pure bullshit. &amp;nbsp;There are exceptions, of course. &amp;nbsp;But even they can be wrong or misguided, as we call can be. &amp;nbsp;Read. &amp;nbsp;Learn. &amp;nbsp;Do not wash, rinse and repeat.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7089494652688517400?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7089494652688517400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7089494652688517400' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7089494652688517400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7089494652688517400'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/if-you-dont-know-say-you-dont-know.html' title='If You Don&apos;t Know - SAY You Don&apos;t Know'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2632202181365756338</id><published>2011-10-23T22:11:00.000-04:00</published><updated>2011-10-23T22:11:06.893-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='employment'/><category scheme='http://www.blogger.com/atom/ns#' term='unemployment'/><category scheme='http://www.blogger.com/atom/ns#' term='industry'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='learning'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='mdop'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>A Short Recap of my Career Thus Far</title><content type='html'>&lt;br /&gt;&lt;ul&gt;&lt;li style="margin-bottom: 8px;"&gt;1984, I left the construction world, and playing in bands, for a job as a "apprentice drafstman" (board drafting, Mylar, Sepia and vellum). &amp;nbsp;I recall lettering 20 ANSI-F title sheets entirely by hand per week for several months on end (notes, references, materials, titleing, very little white space left). &amp;nbsp;My fingers had permanent dents from holding the mechanical pencils.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In 1987 after switching jobs a few times (still drafting) I was dunked into building 3D shipboard engine room models using Computervision CADDS 4X. &amp;nbsp;I worked on that platform for several years.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In 1990, I was sent to training on Intergraph EMS and VDS and worked on that for almost a year.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;I was sent to training on Bentley Microstation, but picked up a few books and taught myself AutoCAD R10 by staying late at work and sneaking into the AutoCAD drafting room.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;After convincing the CAD dept manager I could work on AutoCAD, I was moved into the AutoCAD group on R11. &amp;nbsp;The U.S. Navy had just issued an official approval for using AutoCAD to make title sheets and bills of material "only". &amp;nbsp;All detail design work was still required to be done by hand (plastic lead on frosted mylar sheets).&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In 1992*, the U.S. Navy finally issued an official allowance for AutoCAD detail design work for all contracts.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;After months of struggling with bugs in a custom add-on written in AutoLISP and ADS for our company (by a west-coast employee), I decided to learn AutoLISP and add my own workarounds. &amp;nbsp;I picked up a few books, but the best was "&lt;a href="http://www.amazon.com/Autolisp-Programming-Computer-Technology-Management/dp/0830639934"&gt;AutoLISP Programming by Example&lt;/a&gt;" by Gene Straka. &amp;nbsp;One of the best heads-down teach-yourself books I've ever owned.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In 1994 I wrote my own 2D piping system for AutoCAD R12. &amp;nbsp;It grew into an HVAC system, and eventually into electrical and structural as well.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In 1996, I was hired by a large shipyard to lead their first AutoCAD implementation. &amp;nbsp;It was (gulp!) AutoCAD R13 running on Windows NT 3.51. &amp;nbsp;It was a very rough experience, but we somehow got it working. &amp;nbsp;I was also introduced to Brett Rivers, who introduced me to SMS 2.0 and was generous enough to tutor me on how it works and how to use it for deploying AutoCAD and custom add-ons to roughly 3,000 desktops. &amp;nbsp;That eventually grew to 14,000 desktops.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In December 1999, I graduated from Christopher Newport Univsersity with my BS in Information Science.&amp;nbsp;&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In February 2000, I was hired by an engineering firm to build a new shipbuilding CAD suite on top of AutoCAD 2000, and consolidate their standalone licensing under AdLM (prior to FlexLM). &amp;nbsp;That moved me into license management, including contracts, support, and auditing.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;By 2002 I was on version 2.0 of the new CAD system and had enlisted three team mates to help build out more functionality and features. &amp;nbsp;We joined the Autodesk Developer Network and the alpha "early adopter" program: &amp;nbsp;Pinetop, Tahoe, Banff, Kirkland, Red Deer, Neo, Rio (I left ADN before Postrio)&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;By 2002 I had been building a lab to prepare for deploying SMS 2003 when the lead for our upcoming NT4 to Win2K Active Directory migration left. &amp;nbsp;I was asked to take over the project lead. &amp;nbsp;I ran into a friend who worked at Microsoft who asked if I wanted to join on Windows Server 2003 pre-beta and Microsoft Software Updates Services (SUS).&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;March 2003 we completed our migration to Windows Server 2003 and implemented WSUS 2.0 soon after. &amp;nbsp;SMS 2003 was held back to test the forthcoming SCCM (beta program). &amp;nbsp;I began working with ASP, SQL Server, and Windows scripting more and more to automate monitoring and reporting.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;2003 I released "The Visual LISP Developer's Bible, 2003 Edition"&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;By June 2004 I was now wearing three distinct hats: &amp;nbsp;Active Directory Administration, CAD Administration, and CAD software development. &amp;nbsp;By 2006 I had offloaded my CAD software development duties to the team with only&amp;nbsp;occasional&amp;nbsp;involvement. &amp;nbsp;I was now focused on software deployment, patch management, auditing, monitoring and alerts, and SOX compliance.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In Sept 2007, our company imploded when our CEO decided to fuck us all and leave with a smile.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;I was hired by a Microsoft partner and trained on MDOP, Softgrid (App-V) and doing odds-and-ends Windows engineering work for various small businesses. &amp;nbsp;I also deployed a full SCCM 2007 site for a city government, which had been a while for me, but it nonetheless went very well. &amp;nbsp;The biggest impact this had on me was getting my head into non-enterprise environments. &amp;nbsp;Until now, I had only worked in larger corporate environments with teams devoted to each role. &amp;nbsp;Now it was about individual services to small customers. &amp;nbsp;I learned 10x in only a few months.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;After a few months the economy tanked (early 2008), and we were laid off. &amp;nbsp;I was out looking for a job for several months, but nobody was hiring. &amp;nbsp;I put food on the table by building web sites for various small customers, and helping a law firm with patent application drawings.&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In June 2008 I was hired back at a former employer and taught the fine art of software repackaging to facilitate mass deployment (by now 18,000 computers, I think?). &amp;nbsp;Wise Package Studio and Wise Script. &amp;nbsp;I was also tossed back into FlexLM management and FlexNet Manager (which is pretty interesting).&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;In July 2010 I was hired by a consulting firm and now I combine a lot of the above (sans CAD work) into a mash-up of projects and tasks:&lt;/li&gt;&lt;ul&gt;&lt;li style="margin-bottom: 8px;"&gt;Windows Server 2008 R2 management&lt;br /&gt;&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Windows 7 deployment and customization&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;ASP / SQL Server / AD systems automation&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;FlexLM license services&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Autodesk deployment builds and distribution&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Repackaging with Wise Package Studio and InstallShield AdminStudio&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;Scripting with VBscript, CMD and PowerShell&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;SCCM 2007 process automation and custom reporting&lt;/li&gt;&lt;/ul&gt;&lt;li style="margin-bottom: 8px;"&gt;In 2010 I released more books, and again in 2011&lt;/li&gt;&lt;li style="margin-bottom: 8px;"&gt;I have no idea why I'm bothering to type this. &amp;nbsp;It ultimately means nothing to anyone unless they're spilling food on my resume. &amp;nbsp;I guess the interesting part, to me anyway, is how my ball has bounced in a very unpredictable pattern. &amp;nbsp;Looking back, I can see the pattern emerge. &amp;nbsp;But from any one point along the way there was no&amp;nbsp;discernible&amp;nbsp;pattern or path to be seen. &amp;nbsp;I have learned from some of the brightest and most interesting people I've ever known, and am grateful and humble to having had those opportunities. &amp;nbsp;Every job change has been tough to handle since I hate parting ways with good people, but I've somehow managed to keep finding incredible people to continue learning. &amp;nbsp;If I had millions of dollars, I would love to be able to hire everyone I've known to build a "super team" and make incredible things happen. &amp;nbsp;I doubt that will become reality, but it would be cool. &amp;nbsp;I have no idea where my ball will bounce next, or if it will roll in front of a bus and that'll be the end of it. &amp;nbsp;One day at a time.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;* I may be off a bit here, but it was somewhere between 1990 and 1992 as best as I can recall.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2632202181365756338?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2632202181365756338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2632202181365756338' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2632202181365756338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2632202181365756338'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/short-recap-of-my-career-thus-far.html' title='A Short Recap of my Career Thus Far'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3724789448473260145</id><published>2011-10-22T11:59:00.005-04:00</published><updated>2011-10-22T11:59:49.504-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Signs of IT Failure</title><content type='html'>When it comes time to assess the quality of service amongst your crack team of IT experts, here's a few criteria points to consider:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Turns off UAC as a standard practice.&lt;/li&gt;&lt;li&gt;Grants most users Admin rights.&lt;/li&gt;&lt;li&gt;Re-imaging / Re-installing operating systems as a standard "fix"&lt;/li&gt;&lt;li&gt;Knee-jerks towards scripting, rather than Group Policy for configuration management&lt;/li&gt;&lt;li&gt;&lt;span style="background-color: transparent;"&gt;Fails to provide tangible metrics to back-up arguments and proposals&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Argues against "change" as a standard philosophy&lt;/li&gt;&lt;li&gt;Sole-vendor philosophy without regard to competing products&lt;/li&gt;&lt;li&gt;Avoids meeting with customers / end users at all costs&lt;/li&gt;&lt;li&gt;Avoids meeting with executives at all costs&lt;/li&gt;&lt;li&gt;Spends more time putting out fires than in lab testing future solutions&lt;/li&gt;&lt;li&gt;Assumes they are an expert&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3724789448473260145?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3724789448473260145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3724789448473260145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3724789448473260145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3724789448473260145'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/signs-of-it-failure.html' title='Signs of IT Failure'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3042138752165308673</id><published>2011-10-17T22:22:00.001-04:00</published><updated>2011-10-17T22:22:28.287-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cad'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>AutoCAD: PURGE, AUDIT, RECOVER, Repeat...</title><content type='html'>I know I said I wasn't going to write any more AutoCAD-related articles, but this was sparked by a recent client visit, so I felt it was worth revisiting. &amp;nbsp;I've mentioned the &lt;a href="http://skatterbrainz.blogspot.com/2010/07/what-does-autocad-command-do.html"&gt;AutoCAD PURGE command before&lt;/a&gt;, but it needs to be revisited.&lt;br /&gt;&lt;br /&gt;Something that is very unique to the world of CAD is the extent to which content is reused. &amp;nbsp;More than any other class of application: &amp;nbsp;word processing, spreadsheets, databases, desktop publishing, even more than photographic and illustration applications. &amp;nbsp;CAD shops around the world routinely insert library content from years of accumulated work. &amp;nbsp;Everything from the smallest items to sheet borders, to complex 3D components and entire compound assemblies. &amp;nbsp;Content is king, and CAD content is the king of kings.&lt;br /&gt;&lt;br /&gt;But there's a problem. &amp;nbsp;Along with the visual attributes there is an entire world of non-visual baggage that comes along with every reused chunk of content. &amp;nbsp;Layers, dimension styles, text styles, linetypes, shapes, extended data (xdata) and xrecords, are just a typical brush stroke of examples of things that often sneak in with each library part insertion.&lt;br /&gt;&lt;br /&gt;But wait: There's more!&lt;br /&gt;&lt;br /&gt;Along with the legacy visual, and sinister non-visual stuff, there's the often overlooked issue of inconsistent and inaccurate data structures. &amp;nbsp;I'm talking about the DWG format itself. &amp;nbsp;With each release of AutoCAD, for example (I'm sure this is applicable to other CAD products), there are improvements to the methods and processes for detecting errors in the data format and correcting them. &amp;nbsp;Some of the tools in AutoCAD that help with this are AUDIT and RECOVER. &amp;nbsp;There's also WBLOCK and DXFOUT, and other methods/tricks, but you get the idea. &amp;nbsp;The problem is that rarely do CAD managers or anyone else take the time to comb back through years of old DWG files to run these tools and clean them up.&lt;br /&gt;&lt;br /&gt;Most often what happens is we get into a habit of inserting content, exploding it, erasing what we don't need, then running PURGE and saving. &amp;nbsp;At least run AUDIT when you do that. &amp;nbsp;If you don't, you risk corrupting the new drawing, or at the very least you'll bloat it to death. &amp;nbsp;File size is not something to ignore. &amp;nbsp;The bigger the file, the slower it copies and the slower it gets backed up. &amp;nbsp;It also takes longer to open and longer to save, especially across a network connection.&lt;br /&gt;&lt;br /&gt;AUDIT (fix errors)&lt;br /&gt;PURGE (nested)&lt;br /&gt;PURGE (nested) again&lt;br /&gt;AUDIT (fix errors) again&lt;br /&gt;SAVEAS (new dwg file) replace the old dwg file&lt;br /&gt;&lt;br /&gt;I haven't bothered to search, but I'm sure there are at least a few products available for helping to batch process drawing files for you. &amp;nbsp;Even if you can't afford to purchase one, you could build something using LISP, VSA, ObjectARX, VBscript, Javascript, KiXtart, PowerShell, or just two sticks and a bucket of mud. &amp;nbsp;Whatever the case, don't ignore this. &amp;nbsp;Just because you ran AUDIT and PURGE on those old drawings back when you used AutoCAD R14 or 2000, doesn't mean they can't still contain errors and junk that AutoCAD 2012 would find and correct.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3042138752165308673?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3042138752165308673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3042138752165308673' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3042138752165308673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3042138752165308673'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/autocad-purge-audit-recover-repeat.html' title='AutoCAD: PURGE, AUDIT, RECOVER, Repeat...'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8416983676850194471</id><published>2011-10-17T19:14:00.001-04:00</published><updated>2011-10-17T19:14:23.825-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='education'/><category scheme='http://www.blogger.com/atom/ns#' term='american'/><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='election'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><category scheme='http://www.blogger.com/atom/ns#' term='stupidity'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Children's Guide to Politics and Elections</title><content type='html'>Listen up children, this is important stuff. &amp;nbsp;More important than Angry Birds. Yes, I know that's impossible to comprehend, and that "comprehend" is a big word, but it's really really really reeeeeeeeeaaaaally important. &amp;nbsp;So listen up. &amp;nbsp;Yes, I know I already said that. &amp;nbsp;But listen up anyway...&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-MJzujeVlJ4Y/TpyyWN8MqpI/AAAAAAAAIto/b3zfki8G3Qg/s1600/medium_vote.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="290" src="http://2.bp.blogspot.com/-MJzujeVlJ4Y/TpyyWN8MqpI/AAAAAAAAIto/b3zfki8G3Qg/s400/medium_vote.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Election&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;An &lt;i&gt;election &lt;/i&gt;is when people choose who the next president will be. &amp;nbsp;Or the next senator, congressman, mayor, councilman, police chief, superintendent, or hall monitor. &amp;nbsp;It makes us feel important and gives us a feeling of making a difference. &amp;nbsp;This is why they say "every vote counts". That's because every vote counts, just not counts towards winning. &amp;nbsp;Some votes count just to be counted but they don't count for anything. &amp;nbsp;You can count on that. &amp;nbsp;If every vote really counts, then whoever is in office is who everyone wanted, so that means every vote counted. &amp;nbsp;When you stand in line to choose, they call that "casting a vote".&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Voting&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Voting &lt;/i&gt;is when your mom, dad, grandmother, grandfather, aunt, uncle, sister or brother, neighbor, teacher and the creepy old guy that takes pictures of you at the park, run over to your school and stand in line to pull a lever or punch a button to say who they want to be our next president, senator, congressman, mayor, or city council person. &amp;nbsp;The only vote that really counts is the one for everyone else *except* for the president. &amp;nbsp;You see, the president is chosen by a special group of people in a secret club called the "Electoral College". &amp;nbsp;They look at your mom and dad's votes and then decide how they want to vote. &amp;nbsp;Only sometimes they decide to vote however they want. &amp;nbsp;Kind of like when your big brother or big sister takes your bowl of ice cream and says they'll beat you up if you tell mom or dad.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Two Party System&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are two political &lt;i&gt;parties&lt;/i&gt;, or clubs, that run for every election. &amp;nbsp;One is called the Democrats. &amp;nbsp;The other is called the Republicans. &amp;nbsp;Neither one of them do anything except spend tons and tons and tons of money on annoying TV commercials calling the other side liars and crooks. &amp;nbsp;Their job is to keep everyone busy believing that they're really going to change things, but they never do. &amp;nbsp;If they ever really changed things, we wouldn't need them anymore, so they keep saying they will as long as you keep voting for them. &amp;nbsp;When they don't change anything, they just blame the other side for cheating and messing things up.&lt;br /&gt;&lt;br /&gt;The only real difference between these two parties is that one believes everything is broken and everything needs to be fixed with lots and lots of money. &amp;nbsp;The other thinks nothing is broken and nothing ever needs to be fixed and that things will just fix themselves. &amp;nbsp;You are probably part of what was once called the "middle class", which is the special group of people that neither of these parties care about, so you have nothing to worry about.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Special Interest Groups&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This is a special name they give special people who carry around special suitcases filled with special cash. &amp;nbsp;Some people call them corporate sponsors. &amp;nbsp;Some call them defense contractors. &amp;nbsp;Some call them late for Tee time at the golf course. &amp;nbsp;But whatever they're called, these are the people who really make the decisions. &amp;nbsp;You see, when Mr. or Ms. Senator is in their office and their secretary rings their phone and says they have a visitor, they look at the list and see someone like your mom or dad, and they tell the secretary to tell them they're extremely busy balancing the budget. &amp;nbsp;They're really practicing their golf putt in the office while wearing nothing but a shirt and tie and underwear. &amp;nbsp;When the secretary says it's Lockheed Martin, or Walmart, they drop the putter and pull up their pants and race real fast to get the office in clean shape to meet with these important people and their important bags of cash.&lt;br /&gt;&lt;br /&gt;You see, without those special bags of special cash, they can't afford to buy those interesting and informative TV commercials that you can't wait to watch every day and night. &amp;nbsp;They need those to help re-program your brain to believe their enemy (the other party guy) is a liar and a thief.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hard Work&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Being a politician is hard work. &amp;nbsp;Much harder than brain surgery, being an airline pilot, or digging ditches. &amp;nbsp;It's really tough. &amp;nbsp;How tough? &amp;nbsp;First off, they have to sit at a desk for an hour every day. &amp;nbsp;Then they have to get up, and go to meetings and conferences and give speeches about how hard they're working. &amp;nbsp;Then they have to film more TV commercials and it requires a lot of talking to tell you that his opponent is a liar and a thief and how he's changing things, but he needs your vote to keep changing things. &amp;nbsp;Then they have to muster the courage to go out and play golf with those special interest people with their special golf carts filled with special bags of special money. &amp;nbsp;Afterwards they go to more cocktail parties, which sound fun, but they're not! &amp;nbsp;They have to "mingle" and "schmooze" with other special people so they can talk them into giving him some of their special money.&lt;br /&gt;&lt;br /&gt;They do this ridiculously hard stuff for weeks and weeks and then they are forced to go on what's called a sabbatical. &amp;nbsp;It's horrible. &amp;nbsp;They have to take off half of the year and do nothing at all except get paid. &amp;nbsp;It's unbelievably painful and many of them can't handle the stress. &amp;nbsp;When they can't handle the hard work anymore, they tap out (like you see on TV when your dad watches UFC) and they accept an offer to go work for one of those special interest companies and are forced to get more of that special money. &amp;nbsp;Most of the time though, they do their absolute best to help America and Americans by passing special laws to help those special interest people before they quit and take one of those special jobs at the special interest companies. &amp;nbsp;This is called "serving the people".&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Well, I hope you learned a lot about our political system. &amp;nbsp;After all, it is the BEST political system in the entire world! &amp;nbsp;Many people say that it's the best one that money can buy, and they aren't kidding. &amp;nbsp;So be sure to get out and vote so you can help these special people keep changing things by helping those special money people. &amp;nbsp;After all, this is America and every vote counts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8416983676850194471?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8416983676850194471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8416983676850194471' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8416983676850194471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8416983676850194471'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/childrens-guide-to-politics-and.html' title='Children&apos;s Guide to Politics and Elections'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-MJzujeVlJ4Y/TpyyWN8MqpI/AAAAAAAAIto/b3zfki8G3Qg/s72-c/medium_vote.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8512690726133425783</id><published>2011-10-14T06:00:00.000-04:00</published><updated>2011-10-14T06:00:02.222-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><title type='text'>What's Next?</title><content type='html'>A few people asked why I haven't been on Twitter as much lately.&lt;br /&gt;&lt;br /&gt;I responded without saying much, but in reality, it's because I'm just not "feeling it" anymore.&amp;nbsp; The level of response and interaction has dropped to almost nothing lately.&amp;nbsp; Either I'm not tweeting enough interesting things, or I've offended some followers (hence the gradual drop in that area), or both.&amp;nbsp; In any case, it's just something I'm not cut out for.&amp;nbsp; I loved it for a while, but the love is wearing off.&lt;br /&gt;&lt;br /&gt;A few other people asked what will I do after I stop posting to this blog.&lt;br /&gt;&lt;br /&gt;I will continue to participate on other community sites, as far as technology is concerned.&amp;nbsp; MyITforum, TechNet, StackOverflow, AppDeploy, and a few others.&amp;nbsp; For the non-technical stuff, I will still hang around Google+, and share Google Reader items (with the same stupid comments).&amp;nbsp; I've thought long and hard about the date, and see no reason to move it back (or sooner), so I'm just going to meander to the next fork and decide where to turn when I get there.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-pyUwY96i9zY/TbLsSuACQcI/AAAAAAAAAEk/6PH8ZUf4HA8/s1600/road-ahead.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="224" src="http://4.bp.blogspot.com/-pyUwY96i9zY/TbLsSuACQcI/AAAAAAAAAEk/6PH8ZUf4HA8/s320/road-ahead.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8512690726133425783?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8512690726133425783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8512690726133425783' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8512690726133425783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8512690726133425783'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/whats-next.html' title='What&apos;s Next?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-pyUwY96i9zY/TbLsSuACQcI/AAAAAAAAAEk/6PH8ZUf4HA8/s72-c/road-ahead.png' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>2864 Seaboard Rd, Virginia Beach, VA 23456, USA</georss:featurename><georss:point>36.7358202 -76.0275859</georss:point><georss:box>36.6340947 -76.1855144 36.8375457 -75.86965740000001</georss:box></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3444882405650935214</id><published>2011-10-13T23:14:00.000-04:00</published><updated>2011-10-13T23:14:07.558-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Software Development Tips</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-z8x42laOn4M/TpemtZBmm5I/AAAAAAAAItg/ixaapKVazD8/s1600/customer-service-300x213.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="141" src="http://1.bp.blogspot.com/-z8x42laOn4M/TpemtZBmm5I/AAAAAAAAItg/ixaapKVazD8/s200/customer-service-300x213.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Just some notes I pulled out of my ass, after years of swilling cold coffee, munching on stale donuts, rock-hard room temperature pizza chunks, half-empty bags of Skittles and Combos.&amp;nbsp; &lt;br /&gt;Hopefully, especially if you are young and just getting started with writing software code in some new cool programming language (whatever it is), after doing copious amounts of drugs and sucking down bottle after bottle of cheap vodka until 5 a.m., and by the way, if you fit that template: I hate you... maybe these tips will help you in some way.&lt;br /&gt;&lt;ol&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Under promise and over deliver&lt;/strong&gt;.&amp;nbsp; Whatever your gut tells you about estimating time or resources, pad the numbers a bit and calmy offer your estimate confidently.&amp;nbsp; Each time you come in sooner or cheaper, you will get a "hero" pin placed upon your chest and more good things will come your way. &lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Draw, don't Type&lt;/strong&gt;.&amp;nbsp; When you are in the absolute Genesis of a new project, barely able to envision what this new machine will become, don't put your fingers on a keyboard or keypad at all.&amp;nbsp; Pick up a pen/pencil/marker and a pad of paper and doodle.&amp;nbsp; Diagrams, models, flow charts, mock-ups, and so on are immensely powerful ways to let your mind wander without the distraction and tractor beam of a keyboard.&amp;nbsp; After you've crumpled up half the pad in balls strewn across the floor, you should eventually have a golden page of your master idea.&amp;nbsp; Then go to the keyboard and slay the beast, laughing meniacally all the way.&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Beg, Borrow and Steal&lt;/strong&gt;.&amp;nbsp; DO NOT knee-jerk into writing every line of code on your own.&amp;nbsp; Reinventing the wheel might make you feel good, but it's like beating off to a Sears catalog.&amp;nbsp; The emptiness cannot be filled by self-gratification. Stand on the shoulders of others, especially public-domain, open source "others".&amp;nbsp; Seek out examples of key parts and fill in the gaps with your own inventiveness.&amp;nbsp; Artists don't typically crush their own organic materials and resins to make their own paints.&amp;nbsp; Musicians don't typically cut down trees to trim and bend the wood to make their instruments.&amp;nbsp; Artisans often start with the work done by others before them. I was going to use the house-building example where the workers don't cut down trees, dig up clay or smelt copper, but then I remembered we don't build houses in American anymore, we put them on the market and watch the weeds grow as the price falls every week.&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Take a Break&lt;/strong&gt;.&amp;nbsp; Even if you have a magical brain and endless energy, and you like to glue your ass to your chair for hours on end... it's not the best way to write code.&amp;nbsp; Get up. Go for a walk (or a roll, if you're in a wheelchair).&amp;nbsp; Chat with colleagues.&amp;nbsp; Get your mind OFF of your work for a few minutes.&amp;nbsp; I'm not advocating an hour of bullshitting on the clock.&amp;nbsp; I'm saying 3-5 minutes a few times a day (you know, the same time expended by smokers, people taking a shit, and the time it takes a tier-1 technician to listen to some idiot asshole drone on and on about their latest eBay or Facebook drama).&amp;nbsp; Just getting your mind off of something for a few minutes brings a fresh batch of brain cells online when you return to your coding.&amp;nbsp; Try it sometime.&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Engage the Users&lt;/strong&gt;.&amp;nbsp; It may be painfully dull.&amp;nbsp; It may be time consuming.&amp;nbsp; Don't be like the big corporate machines that have all but walked away from customer engagement.&amp;nbsp; Feedback forms, email, chat, bug reporting tools, PAIL in comparison with face-to-face contact.&amp;nbsp; You'll get exercise, a break from your phone and screen, a chance to check out the hot new interns, the newest snacks in the vending machine, AND... you'll get a chance to get a user to open up and share ideas, concerns, questions and comments.&amp;nbsp; GOLDEN NUGGETS for making your code better.&amp;nbsp; Also, you'll get a chance to explain things that users might never think to ask yet they will appreciate gaining the knowledge and YOUR willingness to help them.&amp;nbsp; It's called customer service and it fucking works great!!&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;strong&gt;Be Consistent&lt;/strong&gt;.&amp;nbsp; I can't stress this enough.&amp;nbsp; In code. In documentation.&amp;nbsp; In user interface design.&amp;nbsp; In format and syntax structures.&amp;nbsp; In shapes and color schemes. In life.&amp;nbsp; Everything: BE CONSISTENT.&amp;nbsp; It's funny that IT folks will freak out when a process fails without any apparent pattern to help associate the failures with a coincidental event or action.&amp;nbsp; When it fails with a clear pattern, we can find the root cause with much less effort.&amp;nbsp; Yet we don't see that example and apply it to ourselves.&amp;nbsp; Look at your work and ask yourself "is everything I see consistent?"&amp;nbsp; Formatting, indention, capitalization, naming standards, everything.&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;b&gt;&lt;span style="color: red;"&gt;Added:&lt;/span&gt; &amp;nbsp;Play Devil's Advocate. &amp;nbsp;&lt;/b&gt;Ask all the ugly questions: &amp;nbsp;Why would someone NOT want to use your product/service? &amp;nbsp;What are the vulnerabilities? &amp;nbsp;If you were working for your competitor, what would you say to discredit this product/service? &amp;nbsp;What works "as well" or better than this product or service, and why? &amp;nbsp;Don't let your ego creep into this discussion at all. &amp;nbsp;Act and think as if you have no stake in this project, how could it be picked apart? &amp;nbsp;Once you've asked the tough questions, develop a list of responses to it. &amp;nbsp;Not just "answers", but determine solutions to mitigate those vulnerable spots.&lt;/li&gt;&lt;li style="margin-bottom: 8pt;"&gt;&lt;b&gt;&lt;span style="color: red;"&gt;Added:&lt;/span&gt; Accept Criticisms. &lt;/b&gt;&amp;nbsp;Invite one or two of your peers to look at your idea and your code. &amp;nbsp;Listen to their suggestions. &amp;nbsp;If they lay on acclaim and accolades, be thankful, but press them to offer some professional criticism. &amp;nbsp;If you don't work in an environment where you can trust your peers, you have other challenges to solve. &amp;nbsp;If you don't have any peers to seek out, fear not, there are alternatives: &amp;nbsp;Post &amp;nbsp;your ideas on StackOverflow.com (or one of it's many child sites) and seek input/feedback. &amp;nbsp;Any feedback is better than none. &amp;nbsp;Don't create in a vacuum.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3444882405650935214?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3444882405650935214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3444882405650935214' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3444882405650935214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3444882405650935214'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/software-development-tips.html' title='Software Development Tips'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-z8x42laOn4M/TpemtZBmm5I/AAAAAAAAItg/ixaapKVazD8/s72-c/customer-service-300x213.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2405523911383962841</id><published>2011-10-13T19:22:00.000-04:00</published><updated>2011-10-13T19:22:25.663-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='sysinternals'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>PSEXEC, Computer$ and SYSTEM Access</title><content type='html'>This &lt;a href="http://blogs.technet.com/b/configurationmgr/archive/2011/10/13/how-to-quickly-and-easily-test-your-configmgr-packages.aspx"&gt;recent post&lt;/a&gt; on the ConfigManager Team Blog ("&lt;a href="http://blogs.technet.com/b/configurationmgr/archive/2011/10/13/how-to-quickly-and-easily-test-your-configmgr-packages.aspx"&gt;How to quickly and easily test your ConfigMgr packages&lt;/a&gt;") mentions an EXTREMELY POWERFUL yet often forgotten capability at our disposal:&lt;br /&gt;&lt;br /&gt;Using &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897553"&gt;PSEXEC&lt;/a&gt; to test SYSTEM account access, both locally and remotely.&lt;br /&gt;&lt;br /&gt;I've posted articles numerous times on why I prefer using the SYSTEM account to run scheduled tasks for EVERYTHING, rather than a standard proxy or "service" user account. &amp;nbsp;Most sysadmins will create a special account, either locally or (more often) in Active Directory, and grant it God-like powers, and use it for running everything from critical services to backup operations, and more. &amp;nbsp;But when it comes time to manage the password changes, shit gets ugly and scarry. &amp;nbsp;I don't care if you spend tons of money on utilities to manage that for you, it's a waste of time and money.&lt;br /&gt;&lt;br /&gt;Use the SYSTEM account. &amp;nbsp;For local processing it's the typical way to go anyway. &amp;nbsp;But for remote jobs it's also the best way to go. &amp;nbsp;Why?&lt;br /&gt;&lt;br /&gt;You don't EVER have to mess with passwords. &amp;nbsp;So if one of your admins quits, that's one less account you have to worry about being comprised by a password leak.&lt;br /&gt;&lt;br /&gt;The account is tied directly to a host computer, so anything performed is done from a known origin (computer), rather than a nebulous user account, which can be invoked from anywhere. &amp;nbsp;When an event log shows the user entry, it will show COMPUTER$ (where "COMPUTER" is the NetBIOS name of the host computer from which the SYSTEM account was invoked). &amp;nbsp;&lt;span style="background-color: transparent;"&gt;It works great for shutting up SOX whiners too.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There's already a group for DOMAIN COMPUTERS, which is never used. &amp;nbsp;You can create others like BACKUP SERVERS, and BATCH SERVERS, and whatever.&lt;br /&gt;&lt;br /&gt;Testing the access of one SYSTEM account against a remote resource used to be tricky and involved things like setting up a one-time AT scheduled task in order to gain access to an interactive CMD session under your own user context (inside the console running as SYSTEM).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;psexec -s cmd&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This is so easy, yet so powerful. &amp;nbsp;Once you open the SYSTEM context, you can perform DIR commands to test access to various resources, run installation packages, uninstall products, modify the registry, run WMIC commands, bat/cmd, powershell and vbscript tasks, and so on.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2405523911383962841?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2405523911383962841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2405523911383962841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2405523911383962841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2405523911383962841'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/psexec-computer-and-system-access.html' title='PSEXEC, Computer$ and SYSTEM Access'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3158098720087132199</id><published>2011-10-13T18:31:00.000-04:00</published><updated>2011-10-13T18:31:46.993-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web development'/><category scheme='http://www.blogger.com/atom/ns#' term='podcasts'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorials'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='training'/><category scheme='http://www.blogger.com/atom/ns#' term='web browsers'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>Winding Down, Weekend Brain Dump</title><content type='html'>Randomness ensues.&lt;br /&gt;&lt;br /&gt;I taught a 2 hour session at work on COM scripting.&amp;nbsp; Everything from COM itself, to the DLL-ProgID-GUID-HKCR relationships to standard OOP stuff (classes, templates, properties, methods, all of it), and into invocation and interface processing.&amp;nbsp; Small group, so that went very well, and we had breathing room to explore questions, yet without falling off the wagon along the way.&amp;nbsp; It was good.&lt;br /&gt;&lt;br /&gt;After that I taught another session on using a web application that I developed for a different (still small) group, which went very well.&amp;nbsp; I love face-to-face discussion.&amp;nbsp; Web/remote is ok.&amp;nbsp; Phone is lame.&amp;nbsp; E-mail is lame-er.&lt;br /&gt;&lt;br /&gt;In that second session, I gathered more input for bug fixes, enhancements and new features in one hour than I received in months via web, email or phone.&amp;nbsp; Big corporate development teams:&amp;nbsp; You don't know what you're missing.&amp;nbsp; Focus groups are not the answer.&amp;nbsp; Direct, immediate, personal contact is the best.&amp;nbsp; It's the only real way to get quality input and have a quality, high-value discussion as well.&lt;br /&gt;&lt;br /&gt;I switched the blog over to use the newest Blogger features with dynamic views, the new rendering layout, and the new analytics tools, and I have to say I absolutely LOVE it.&amp;nbsp; You might not be as impressed with the new look as I am, but behind the scenes, the administrative changes are fantastic.&amp;nbsp; Too nice to ignore, so I followed my typical "beta-tester" mentality and dove in head-first.&amp;nbsp; I am aware that the sidebar doesn't play well in Internet Explorer 9, but that's because IE9 doesn't handle HTML5 and CSS3 consistently with Chrome or Firefox (or Opera, I'm told).&amp;nbsp; I use IE9 and Chrome 16 at work about 50/50, but at home it's Chrome 16 100%.&amp;nbsp; I only fire up Firefox 7 to test page rendering and that's about it.&amp;nbsp; DISCLAIMER:&amp;nbsp; I'm not saying one browser is "better" than any other.&amp;nbsp; Everyone is free to like what they like.&lt;br /&gt;&lt;br /&gt;I'm still a bit fried from three-plus hours of talking and pointing without a break.&amp;nbsp; I got home and hadn't eaten in six hours (not good, and not usual for me), and immediately gave into a cold glass of beer.&amp;nbsp; That wasn't a good idea either, but it seemed like it at the time.&amp;nbsp; Heh heh.&lt;br /&gt;&lt;br /&gt;Still listening to &lt;a href="http://www.adamcarolla.com/"&gt;Adam Carolla's podcast show &lt;/a&gt;every day.&amp;nbsp; Today he again brought up how suck-ass most 80's songs were, and I have to say that I now listen to them with new ears and most of them do in fact suck holy shit.&amp;nbsp; Not so much from a musical aspect, but lyrically they are bankrupt.&amp;nbsp; Those folks were not writing shit down back then, they were winging it and most of it sounds like a recorder was left on during a Narcotics Anonymous session.&lt;br /&gt;&lt;br /&gt;Randomness ensues.&amp;nbsp; Enjoy your weekend!&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3158098720087132199?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3158098720087132199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3158098720087132199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3158098720087132199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3158098720087132199'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/winding-down-weekend-brain-dump.html' title='Winding Down, Weekend Brain Dump'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total><georss:featurename>Virginia Beach, VA 23456, USA</georss:featurename><georss:point>36.7358202 -76.0275859</georss:point><georss:box>36.6340192 -76.1855144 36.8376212 -75.86965740000001</georss:box></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7438778302197048841</id><published>2011-10-11T22:28:00.000-04:00</published><updated>2011-10-11T22:29:21.872-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='visual lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>What if AutoLISP were Unleashed?</title><content type='html'>&lt;div&gt;&lt;a href="http://lh4.ggpht.com/-UGtkxe9B16k/TpSwZBsD-mI/AAAAAAAAItQ/o3s-h1vqTwU/s1600-h/forkInTheRoad%25255B2%25255D.gif"&gt;&lt;img align="left" alt="forkInTheRoad" border="0" height="174" src="http://lh6.ggpht.com/-jVtW3zjPY7w/TpSwZrQj3YI/AAAAAAAAItY/yu0BYwGDDvI/forkInTheRoad_thumb.gif?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; float: left; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="forkInTheRoad" width="240" /&gt;&lt;/a&gt;Way back when, (a completely meaningless phrase of course), Autodesk had the audacity to introduce a radically new concept into a software product: Extensive Programmability.&amp;nbsp; They did that using DIESEL, AutoLISP, and the MNU file.&amp;nbsp; They could have just dropped a “here-you-go-take-it-as-is” product without any meaningful customization features or tools, but they didn’t.&amp;nbsp; Autodesk instead decided to empower their customers, enabling them to extend and reshape their products to suit their own needs.&amp;nbsp; This simple decision had a profound impact on their customer base, as well as product sales. Indeed, it created an entire community and industry that otherwise wouldn’t have existed.&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;I’ll spare you the regurgitated history stuff, you can look that up &lt;/span&gt;&lt;a href="http://www.google.com/url?sa=t&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CC4QFjAA&amp;amp;url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FAutodesk&amp;amp;ei=BauUTvP9FIWvsQKKtKXvAQ&amp;amp;usg=AFQjCNG0C2pkwHURcC4YPt4bufPKMeiP5g&amp;amp;sig2=P9LIjLTvViJYKQMG_qmyxg" style="background-color: transparent;" target="_blank"&gt;online&lt;/a&gt;&lt;span style="background-color: transparent;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;There is something that has been ticking around in the back of my head for a long time: &lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &lt;strong&gt;What if Autodesk had ported the AutoLISP platform outside of AutoCAD?&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Keep in mind that this was in the 1980’s, and Java didn’t yet exist, neither did .NET.&amp;nbsp; The most popular “cross-platform” scripting toolset at the time was Perl (and ActivePerl). Most AutoLISP programmers I knew between 1988 and 1995 were always wishing for more OS features, many of which were made possible through third-party tools like Robert McNeel’s &lt;a href="http://www.en.na.mcneel.com/doslib.htm" target="_blank"&gt;DOSlib&lt;/a&gt;. There were also many that begged for a better dialog programming toolset, which was later made possible by &lt;a href="http://opendcl.com/wordpress/" target="_blank"&gt;OpenDCL&lt;/a&gt;, another third-party product.&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;Autodesk however had other desires.&amp;nbsp; They were starting to drink the Microsoft Kool-Aid, and decided to drop LISP at the altar and run off to Vegas with VBA.&amp;nbsp; After all, she was hotter and wore thongs and high heels at the time.&amp;nbsp; Then when VBA put on a few pounds and started wearing sweats around the house without make-up, they ran off to Bangkok with the svelte .NET, along with a crate of condoms and a case of Bud.&amp;nbsp; LISP was left in the alley, panhandling for spare change, needle tracks were starting to show on her arms.&amp;nbsp; AutoLISP was swapped with &lt;/span&gt;&lt;a href="http://usa.autodesk.com/adsk/servlet/index?siteID=123112&amp;amp;id=770237" style="background-color: transparent;" target="_blank"&gt;Visual LISP&lt;/a&gt;&lt;span style="background-color: transparent;"&gt;, which remains to this day, but is ignored in much the same way as Middle Class workers are in America.&amp;nbsp; The world of AutoCAD customization now belongs to &lt;/span&gt;&lt;a href="http://usa.autodesk.com/adsk/servlet/index?id=773204&amp;amp;siteID=123112" style="background-color: transparent;" target="_blank"&gt;ObjectARX&lt;/a&gt;&lt;span style="background-color: transparent;"&gt;, or so we're told.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent;"&gt;I won't go into the flaws with this mindset of ObjectARX over LISP, but I know that I'm not alone in feeling it's a huge mistake to ignore Visual LISP they way it's been ignored thus far.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;But what if?&amp;nbsp; What if not only had they continued to breathe life into Visual LISP, but they had made it possible to run AutoLISP code from a dedicated script engine from outside AutoCAD?&amp;nbsp; I'm talking about much like was/is possible using &lt;a href="http://www.activestate.com/activeperl?gclid=CKT48O3E4asCFSg1gwodmi5aQg" target="_blank"&gt;ActivePerl&lt;/a&gt;, &lt;a href="http://www.kixtart.org/" target="_blank"&gt;KiXtart&lt;/a&gt;, CMD or VBScript.&amp;nbsp; Imagine the power that &lt;em&gt;thing&lt;/em&gt; could’ve unleashed for LISP programmers.&amp;nbsp; I can only imagine the potential it could have had for much more than batch processing of DWG files.&amp;nbsp; Granted, the constraints of AutoLISP capabilities would have required a significant amount of expansion, which was in short supply after the acquisition of Vital LISP® was renamed Visual LISP®.&amp;nbsp; It was as if they had adopted a 3 year old child who spoke an unknown language, so they left him alone in the toy room with the dog, tossing food on the floor, and quickly shutting the door.&lt;/div&gt;&lt;div&gt;Imagine the potential of combining the file system features of DOSlib with the dialog building features of OpenDCL with powerful intrinsic functions like (mapcar), (apply) and (lambda).&amp;nbsp; In case you need a poke in the brain: Remember that LISP is built for recursion and that file systems are perfect for recursive operations.&amp;nbsp; Not just file systems either, but any data source.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The basic tenants were fairly unimpressive: a script engine that is ported to various “present day” platforms (Windows, OSX, Linux) which executes the same code the same way. Gee.&amp;nbsp; That sounds a bit like Java.&amp;nbsp; That also sounds like .NET, sort of, maybe more like &lt;a href="http://www.mono-project.com/Main_Page" target="_blank"&gt;Project Mono&lt;/a&gt;.&amp;nbsp; But those two platforms weren't even concepts in 1990.&amp;nbsp; In any case, you get the idea.&amp;nbsp; That is, if you’re still awake and reading this far.&amp;nbsp; I’m guessing few of you have read this far without falling asleep or moving on to something more interesting.&lt;/div&gt;&lt;div&gt;Alas, this idea was never on the table, officially, so it never could’ve become reality.&amp;nbsp; Never mind that there haven't been any meaningful updates to VLIDE or Visual LISP in years.&amp;nbsp; I'm still a pie-in-the-sky person, and I'm often given to dream crazy things.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7438778302197048841?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7438778302197048841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7438778302197048841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7438778302197048841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7438778302197048841'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/what-if-autolisp-were-unleashed.html' title='What if AutoLISP were Unleashed?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-jVtW3zjPY7w/TpSwZrQj3YI/AAAAAAAAItY/yu0BYwGDDvI/s72-c/forkInTheRoad_thumb.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2612158353718377989</id><published>2011-10-11T22:27:00.001-04:00</published><updated>2011-10-11T22:27:12.880-04:00</updated><title type='text'>Because it Was Overdue</title><content type='html'>It was time for a new look and a new layout, and as luck would have it: Google has recently backed up the truck of feature updates for Blogger and dumped an insane load of changes on all parts of it. &amp;nbsp;It is freaking awesome what they've done. &amp;nbsp;From new themes, new features and options down to integration of Google Analytics reporting tools and best of all: the clean Metro-ish theme style of the admin console pages. &amp;nbsp;I love it. &amp;nbsp;You may hate it, but I love it. &amp;nbsp;In any case, play with the sidebar drop-down menu and behold the increditastical fantazing cool changes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2612158353718377989?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2612158353718377989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2612158353718377989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2612158353718377989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2612158353718377989'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/because-it-was-overdue.html' title='Because it Was Overdue'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6680464929424439737</id><published>2011-10-09T21:17:00.001-04:00</published><updated>2011-10-09T21:17:35.199-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='publishing'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>Amazon Kindle Books: German and French available</title><content type='html'>&lt;p&gt;Amazon has opened up Kindle and Kindle eBook sales for French customers, in addition to the existing US, German and UK sales channels.&amp;#160; This means you can now purchase eBooks in more places with your local currency.&amp;#160; Why not take advantage of this by grabbing one of my books! (shameless plug)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Visual LISP Developer's Bible, 2011 Edition&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://www.amazon.com/dp/B004I43BFK" target="_blank"&gt;United States&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.co.uk/dp/B004I43BFK" target="_blank"&gt;United Kingdom&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.de/dp/B004I43BFK" target="_blank"&gt;Germany&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.fr/dp/B004I43BFK" target="_blank"&gt;France&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;The AutoCAD Network Administrator's Bible, 2012 Edition&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://www.amazon.com/dp/B004U2UWRU" target="_blank"&gt;United States&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.co.uk/dp/B004U2UWRU" target="_blank"&gt;United Kingdom&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.de/dp/B004U2UWRU" target="_blank"&gt;Germany&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.fr/dp/B004U2UWRU" target="_blank"&gt;France&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;The Packager's Pocket Reference&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://www.amazon.com/dp/B004GHN6GS" target="_blank"&gt;United States&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.co.uk/dp/B004GHN6GS" target="_blank"&gt;United Kingdom&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.de/dp/B004GHN6GS" target="_blank"&gt;Germany&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://www.amazon.fr/dp/B004GHN6GS" target="_blank"&gt;France&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6680464929424439737?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6680464929424439737/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6680464929424439737' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6680464929424439737'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6680464929424439737'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/amazon-kindle-books-german-and-french.html' title='Amazon Kindle Books: German and French available'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5760000362497089181</id><published>2011-10-09T19:18:00.001-04:00</published><updated>2011-10-09T19:18:55.169-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='TED'/><title type='text'>Self-Assembly is the Future</title><content type='html'>&lt;p&gt;When I was blabbering about &amp;quot;organic architecture&amp;quot; and &amp;quot;organic programming&amp;quot; concepts a short while ago, this is one example.&amp;#160; These are macro objects.&amp;#160; In decades from now, they will have this shrunken down much smaller.&amp;#160; Imagine where this could lead us.&lt;/p&gt;  &lt;p&gt;&lt;object width="526" height="374"&gt;&lt;br /&gt;&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;&lt;/param&gt;&lt;br /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;br /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;br /&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;br /&gt;&lt;param name="bgColor" value="#ffffff"&gt;&lt;/param&gt;&lt;br /&gt;&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011U/Blank/SkylarTibbits_2011U-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SkylarTibbits_2011-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1215&amp;lang;=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=skylar_tibbits_can_we_make_things_that_make_themselves;year=2011;theme=what_s_next_in_tech;theme=a_taste_of_ted2011;theme=new_on_ted_com;event=TED2011;tag=Design;tag=Technology;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /&gt;&lt;br /&gt;&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011U/Blank/SkylarTibbits_2011U-320k.mp4&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SkylarTibbits_2011-embed.jpg&amp;vw=512&amp;vh=288&amp;ap=0&amp;ti=1215&amp;lang=&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=skylar_tibbits_can_we_make_things_that_make_themselves;year=2011;theme=what_s_next_in_tech;theme=a_taste_of_ted2011;theme=new_on_ted_com;event=TED2011;tag=Design;tag=Technology;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5760000362497089181?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5760000362497089181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5760000362497089181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5760000362497089181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5760000362497089181'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/self-assembly-is-future.html' title='Self-Assembly is the Future'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4844888416564585611</id><published>2011-10-07T07:56:00.001-04:00</published><updated>2011-10-07T07:57:09.552-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hampton roads'/><category scheme='http://www.blogger.com/atom/ns#' term='employment'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>IT Job Openings in Hampton Roads, Virginia</title><content type='html'>&lt;p&gt;The consulting firm I work for has quite a few job openings in the Hampton Roads area that we are trying to fill.&amp;#160; If you live in or near the cities of Norfolk, Chesapeake, Virginia Beach, or Suffolk, and are interested in any of these positions, contact me at ds0934 (at) gmail (dot) com, and attach your resume in MS Word format.&amp;#160; Use the subject line &amp;quot;IT Positions&amp;quot; so I don't tag it as spam.&lt;/p&gt;  &lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;Package/Workstation engineer -&amp;#160;&amp;#160; (Wise Installer or AdminStudio, SCCM, Windows 7, etc.) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Project Team Engineer - (VMware, Windows, Exchange, AD, light Cisco, SAN) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Help Desk Analyst (Windows 7/Office/Light Networking/Great Client phone skills) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Macintosh Engineer &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Engineer for option to hire for large client in Suffolk&amp;#160; (Windows 2008, Exchange, Cisco, Light VMware) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Engineer for option to hire for large client in Virginia Beach (Windows 2008, Exchange 2007/2010, AD, VMware) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Engineer for option to hire for client in Newports News.&amp;#160; Will be at shipyard.&amp;#160; (Windows, Linux, Light Networking, etc.) CAD experience is nice but not required. &lt;/li&gt; &lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4844888416564585611?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4844888416564585611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4844888416564585611' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4844888416564585611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4844888416564585611'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/it-job-openings-in-hampton-roads.html' title='IT Job Openings in Hampton Roads, Virginia'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-9012328980597238056</id><published>2011-10-06T20:20:00.001-04:00</published><updated>2011-10-06T20:20:03.548-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>When Applications Take a Dump</title><content type='html'>&lt;p&gt;How many times have you uninstalled a software product only to find out later that it left traces of its existence all over your poor computer?&amp;#160; Part of the work of a software packager (or rather: repackager) is to perform forensic analysis of the footprint of an application at the time of installation, after being used, and after being uninstalled.&amp;#160; The goal is always to get the computer back to a state as if the application had never been installed, but without causing issues with the operating system or other applications.&amp;#160; Rather than try to split this over XP, Vista and Windows 7, I'm only talking about 7 here.&amp;#160; I don't give a crap about XP or Vista anymore, sorry.&amp;#160; If the %name% stuff confuses you, just open a CMD window, type in SET and press Enter to see what I'm talking about.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Obvious&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li style="margin-bottom: 8pt"&gt;%ProgramFiles% &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%WinDir%\System32 &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%CommonProgramFiles% &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%AllUsersProfile% (&lt;u&gt;note&lt;/u&gt;: This is a Symbolic Link to %ProgramData%, same place) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%ProgramData% &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%Temp% &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SOFTWARE\&amp;lt;vendor-or-product&amp;gt; &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;The Not-So-Obvious&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li style="margin-bottom: 8pt"&gt;64-bit Systems&lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 8pt"&gt;%ProgramFiles(x86)%&lt;/li&gt;      &lt;li style="margin-bottom: 8pt"&gt;%CommonProgramFiles(x86)%&lt;/li&gt;      &lt;li style="margin-bottom: 8pt"&gt;HKLM\Software\Wow6432Node\...&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 8pt"&gt;%LocalAppData% &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%SystemDrive%\Users\Default (&lt;u&gt;note&lt;/u&gt;: &amp;quot;Default User&amp;quot; is a JUNCTION to &amp;quot;Default&amp;quot;, same place) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Services &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;DCOM configuration settings&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;WMI / CIM namespaces &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run (and RunOnce) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SOFTWARE\Microsoft\Active Setup\...&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SOFTWARE\ODBC\...&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKEY_CLASSES_ROOT\...&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SYSTEM\CurrentControlSet\...&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup &lt;/li&gt; &lt;/ul&gt;  &lt;p style="margin-bottom: 8pt"&gt;This is not a complete list.&amp;#160; Some applications crap in more places than these.&amp;#160; But hopefully this gives you a rough idea of places to look when something gets left behind and things are just not quite right as a result.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;Some of the tools that can come in handy to help investigate what an application does to a computer are as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div style="margin-bottom: 8pt"&gt;Virtualization: VMware Player, VMware Workstation, Virtual Box, Hyper-V&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 8pt"&gt;Sysinternals:&amp;#160; Process Explorer, AutoRuns, Process Monitor&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 8pt"&gt;CMD:&amp;#160; DIR /AH /AS&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 8pt"&gt;InstallShield Repackager (snapshot results)&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;a href="http://lh6.ggpht.com/-A7IQ4WCOaYU/To5FsGyXWjI/AAAAAAAAItI/zdMYDWqsduA/s1600-h/clean_up_after_yourself%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clean_up_after_yourself" border="0" alt="clean_up_after_yourself" src="http://lh3.ggpht.com/-WC1GPzP7zMA/To5Fsp6OHeI/AAAAAAAAItM/KRsCJWxYcTM/clean_up_after_yourself_thumb.jpg?imgmax=800" width="244" height="206" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-9012328980597238056?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/9012328980597238056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=9012328980597238056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9012328980597238056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/9012328980597238056'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/when-applications-take-dump.html' title='When Applications Take a Dump'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-WC1GPzP7zMA/To5Fsp6OHeI/AAAAAAAAItM/KRsCJWxYcTM/s72-c/clean_up_after_yourself_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3423597528284708568</id><published>2011-10-06T18:07:00.001-04:00</published><updated>2011-10-06T18:07:31.427-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><title type='text'>Software Development's Biggest Mistakes</title><content type='html'>&lt;p&gt;The most common and most detrimental mistakes that seem to occur again and again.&amp;#160; I'm not saying you need to &amp;quot;master&amp;quot; all of these, but you should be familiar enough with all of these aspects to be able to explain them to your grandmother.&amp;#160; Hopefully you strive to apply these in your daily work.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-4GaZpFsKF_0/To4mn5J4AKI/AAAAAAAAIsI/0np93TlWLcE/s1600-h/Basics_Hero%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Basics_Hero" border="0" alt="Basics_Hero" src="http://lh6.ggpht.com/-h7Ztwx15Ag8/To4monLdDKI/AAAAAAAAIsM/Dwqgk6P35vA/Basics_Hero_thumb.jpg?imgmax=800" width="244" height="152" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Not Understanding Programming Basics&lt;/strong&gt;&lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Decision Branching (If / Then / Else / Select /Switch / Cond / ElseIf, etc.)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Boolean Logic (And, Not, Or, etc.)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Functions, Sub-Routines, Lambda Expressions&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Iteration and Recursion (While, Do, For, Apply, Mapcar, etc.)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Variable Scopes (local, private, global, public, etc.)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding all of the Data Types for a given language&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding String Behaviors (for given language)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding File Streams&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Ignoring ERROR/EXCEPTION HANDLING (&lt;em&gt;Gaa!!!!&amp;#160; GD IT!!!)&lt;/em&gt;&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not Documenting source code (&lt;em&gt;it ain't just for others, it helps you as well, especially when you go back to fix something a year later&lt;/em&gt;)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Modularity / Code Reuse&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Not Understanding Databases&lt;/strong&gt; &lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Ignorant of Table Structures and Data Types&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Ignorant of Constraints&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Normalization !!!!!!!!!&amp;#160; &lt;em&gt;God damn it!&amp;#160; Normalize your fucking tables!!!&lt;/em&gt;&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Views and Stored Procedures&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Using MS-Access to build applications (&lt;em&gt;GD IT!!!!!!!&amp;#160; teeth gnashing&lt;/em&gt;)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Excel is NOT a database!&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Not Understanding User Context&lt;/strong&gt; &lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Assuming users have administrator rights (&lt;em&gt;kill the developer on sight&lt;/em&gt;!)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding Multi-user / Shared computer environments&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding Terminal Services / Server Shared environments&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not understanding Service / Proxy accounts&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Not Understanding the Installation (and Uninstall) Process&lt;/strong&gt; &lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Not following the documented guidelines (TechNet, MSDN)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not providing a Silent/Unattended installation option&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not providing a Silent/Unattended Uninstallation option&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Not using MSI-based installers (Windows only) - &lt;em&gt;a setup bootstrap is ok, but building your own installer is just stupid as shit.&amp;#160; And stop with the no-name bullshit setup packagers, just buy Wise or InstallShield and do it right, mmmkay?&lt;/em&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Ignoring Cohesion and Consistency&lt;/strong&gt;&lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Installation scatters crap all over the place, rather than keeping it collocated logically&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Application stores state data in too many locations (registry and files, and ...)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Forgetting to REFACTOR your code (&lt;em&gt;using the rollback method, where you revisit project &amp;quot;A&amp;quot; after finishing product &amp;quot;C&amp;quot; to apply what you learned since&lt;/em&gt;)&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Ignoring common naming conventions.&amp;#160; &lt;em&gt;Name your code files, functions, variables, registry keys, event entries, database names, tables, views, procedures, services and everything CONSISTENTLY!&amp;#160; If you don't care enough to make your code look like it works as an integral army of awesomeness, what else don't you care about?&amp;#160; Making&lt;/em&gt; it work properly?!&lt;/li&gt;   &lt;/ul&gt;    &lt;li style="margin-bottom: 10pt"&gt;&lt;strong&gt;Becoming Locked into One Language&lt;/strong&gt;&lt;/li&gt;    &lt;ul&gt;     &lt;li style="margin-bottom: 10pt"&gt;Learning and Using ONE language is like eating with only a fork.&amp;#160; No spoon or knife?&amp;#160; &lt;em&gt;It's like trying to rebuild a car engine with only a screw driver.&amp;#160; Languages are tools.&amp;#160; The more you learn and apply, the broader your skills, understanding and wisdom about methods, approaches, and quality.&lt;/em&gt;&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Never assume an &amp;quot;old&amp;quot; language has nothing to offer.&amp;#160; There are still plenty of situations where an &amp;quot;old&amp;quot; BAT script will work more efficiently than VBscript or PowerShell.&amp;#160; Where an INI file will work more efficiently than an XML file or a database table query.&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Arguing in defense of ONE language above all others.&amp;#160;&amp;#160; &lt;em&gt;Within the context of a particular project or contract, this is acceptable.&amp;#160; However, in the global scope of programming, this is the sign of a complete idiot.&lt;/em&gt;&lt;/li&gt;      &lt;li style="margin-bottom: 10pt"&gt;Buying books on one language before reading books on general programming practices and theory is just stupid.&amp;#160; &lt;em&gt;This is like reading a book on 1001 ways to use a fork to eat.&amp;#160; Why not read up on eating, then learn about the tools, that way you understand why you're using the fork, and not just how to use it.&lt;/em&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p style="margin-bottom: 10pt"&gt;&lt;strong&gt;What can you do about it?&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div style="margin-bottom: 10pt"&gt;Read Books on Programming topics (not just an &amp;quot;Unleashed&amp;quot; book on your favorite language)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 10pt"&gt;Read some useful Blogs about programming&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 10pt"&gt;Go to School (a university, not a for-profit tech school)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 10pt"&gt;Join MSDN or TechNet or something similar (and use it!)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div style="margin-bottom: 10pt"&gt;Meet with other programmers - ESPECIALLY programmers that work with other languages, database engineers and administrators, network engineers, etc.&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3423597528284708568?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3423597528284708568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3423597528284708568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3423597528284708568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3423597528284708568'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/software-development-biggest-mistakes.html' title='Software Development&amp;#39;s Biggest Mistakes'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-h7Ztwx15Ag8/To4monLdDKI/AAAAAAAAIsM/Dwqgk6P35vA/s72-c/Basics_Hero_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1720666255096533217</id><published>2011-10-04T07:00:00.000-04:00</published><updated>2011-10-04T07:00:00.735-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft access'/><category scheme='http://www.blogger.com/atom/ns#' term='software assurance'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>The Never-Ending War: Centralized IT vs Department Developers</title><content type='html'>&lt;p&gt;I doubt any of you will read this one to the end, and I can't blame you.&amp;#160; But I have to say that this is probably one of my best articles so far.&amp;#160; It's one that I'm fairly passionate about and it shows in my verbosity.&amp;#160; I apologize for torturing your eyeballs in advance, but I must go on.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-TKNR9ErMy7A/TojCbbirH9I/AAAAAAAAIsA/vBB9BE3g3W0/s1600-h/e20_november%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="e20_november" border="0" alt="e20_november" src="http://lh3.ggpht.com/-5eeQsBQ7BmQ/TojCcsa081I/AAAAAAAAIsE/xDiJhYHmqss/e20_november_thumb.jpg?imgmax=800" width="244" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;For many of you, this scenario should sound pretty familiar:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;A large corporate business evolves over decades to the point where they decide it makes sense to centralize their IT operations.&amp;#160; They create a new department and appoint a CTO or CIO and staff the various functions.&amp;#160; Prior to this, it was common to find each department building and maintaining their own unique software applications to solve their own internal business needs, aka &amp;quot;line of business&amp;quot; applications (&amp;quot;LOB&amp;quot; for short).&amp;#160; In decades past, it was dBase or FoxPro.&amp;#160; In more recent times it's been Microsoft Access or Excel.&amp;#160; Quite often, it involves VBA code.&amp;#160; Lots and lots of VBA code.&lt;/p&gt;    &lt;p&gt;The centralized IT department strives to gather all of the LOB applications and apply some centralized procedures to maintaining it.&amp;#160; Maybe the company is trying to be ISO or CMMI compliant, or maybe ITIL, or whatever.&amp;#160; Who knows.&amp;#160; In any case, the MBA mindset comes to the logical conclusion that redudant job roles are expensive and inefficient, especially when one person in Finance is building roughly the same application as the person in Sales.&amp;#160; These isolated, parallel and typically redundant efforts have no incentive or desire to coordinate efforts with other departments due to politics and funding, so they march on unrestricted for years.&lt;/p&gt;    &lt;p&gt;When IT finally gains control of a few of the key LOB applications, they apply common ITIL or CMMI procedures on change control, which invariably slows down the process of implementing updates.&amp;#160; The LOB folks quickly grow tired of this, and eventually pull away from IT to continue building their own applications.&amp;#160; The cycle continues.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is often referred to as a &amp;quot;NO-WIN SITUATION&amp;quot;, because that's exactly what it is.&lt;/p&gt;  &lt;p&gt;The top management folks are left with two options:&lt;/p&gt;  &lt;ul&gt;   &lt;li style="margin-bottom: 8pt"&gt;Ignore it and leave the fighting to the lower level managers &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Stress out trying to make a decision over which is the lesser evil: inefficiency or inefficiency. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The two greatest risks facing them are:&lt;/p&gt;  &lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;Allowing the redundant waste of time and resources to grow unchecked (because it's NEVER really checked) and allow inconsistent results to spread.&amp;#160; The practice increasingly melds the company core business processes to hundreds of tiny little tools built by people that have worked themselves into a position of necessity (cant' fire them or you risk being stuck with a broken tool and a busted business process) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Forcing the LOB apps under the control of the IT department, becoming painfully slow at responding to surge-capacity, and frequent requirements changes.&amp;#160; Everything must now be vetted, developed, tested and implemented under the new procedures.&amp;#160; No more &amp;quot;walk-up&amp;quot; requests.&amp;#160; No more Summer intern kid-turned-full-time-developer to handle your needs.&amp;#160; LOB requests now get routed through a load-sharing process to &amp;quot;resources&amp;quot; which share their precious time with other (possibly competing) LOB requests. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Ugliness.&amp;#160; Bad feelings.&amp;#160; Animosity.&amp;#160; All that kind of stuff.&lt;/p&gt;  &lt;p&gt;This is one of the reasons I F-ING HATE MICROSOFT ACCESS&lt;/p&gt;  &lt;p&gt;The product itself is not bad or evil.&amp;#160; Fire isn't bad, when used properly.&amp;#160; Each serves a noble purpose.&amp;#160; But fires created by a small group of trained professionals is one thing.&amp;#160; Handing every person in a 10 mile radius a can of gasoline and a box of matches is a little different.&amp;#160; Server backended applications are like the trained professionals.&amp;#160; Microsoft Access is like a truckload of gasoline cans and matches being handed out like rice bags from a UN truck in Rwanda.&lt;/p&gt;  &lt;p&gt;The most common scenario today involves this vicious cycle of stupidity:&lt;/p&gt;  &lt;ul&gt;   &lt;li style="margin-bottom: 8pt"&gt;The Sales department asks a promising Summer intern to build them an uber sales tracking app.&amp;#160; Uber-brainy intern cracks open a &amp;quot;Access VBA Unleashed&amp;quot; book, and builds the new application in MS Access 2000 using lots of VBA. &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Years later, the company decides to take advantage of volume licensing and buys into a SELECT or ENTERPRISE AGREEMENT contract to get upgrades more cheaply. The Company recieves licensing for Office 2010 and wants to upgrade all computers ASAP.&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;The Sales department cries that Access 2010 will break their LOB app.&amp;#160; They cry to upper management. IT is ordered to put the upgrade plans on hold.&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;The IT department now decides on one of two courses of action:      &lt;ul&gt;       &lt;li style="margin-top: 8pt; margin-bottom: 8pt"&gt;Dedicate several developers to re-developing the application to work in Access 2010, but they don't understand the LOB requirements or logic, so they have to work closely with the Sales department to gain better understanding.&amp;#160; They also have to decide how to address deprecated functionality (from Access/VBA 2000 to 2010), and incorporate new features, or if there is even enough time to do that, or just patch it up and make it work. &lt;/li&gt;        &lt;li style="margin-bottom: 8pt"&gt;Dedicate several developers to shoehorn the old application to work via the Access 2000 runtime engine, if that even works (sometimes it does, sometimes it doesn't).&amp;#160; This often becomes a mess, with file associations getting corrupted and interaction issues with other third-party applications.&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;The plan to deploy Office 2010 is now sidelined until they can adequately resolve this dilemma. &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;By the time a solution is reached, Office 2012 is released and the process repeats &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Either way, it ends up being a long, drawn-out waste of time, money and effort.&amp;#160; Sure, it can be argued that it's not a waste because it's provides (hopefully) a workable solution.&amp;#160; But if the entire problem COULD have been avoided by adopting proven practices, isn't that ultimately a waste?&lt;/p&gt;  &lt;p&gt;A database is a database.&amp;#160; It should be used as a database, not as an end-user application platform.&amp;#160; Client/Server or web-based interfaces would easily decouple the functionality from the data store.&amp;#160; Then if the only thing that changes are the database connection parameters, you don't have to rewrite the entire application.&amp;#160; In many mature development environments, this is considered &lt;em&gt;programming 101&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;You probably won't believe me, but I actually do get sick of hearing myself talk and get queazy reading my own drivel.&amp;#160; But painful as it may be, I must go here...&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Over-Caffeinated Rant&lt;/strong&gt; (deep inhale, and....)&lt;/p&gt;  &lt;p&gt;I haven't really delved into the virtues of decoupled business logic in n-tier applications architecture.&amp;#160; There's an enormously powerful incentive to following this time-tested and well-proven approach, which is along the same lines of logic as multi-stage code compilation, assembly line production, and zone defense in team sports.&amp;#160; That is, that compartmentalizing certain logical blocks of functionality make those blocks portable and flexible.&amp;#160; It makes them more easily (and more affordably) adaptable to future changes.&amp;#160; You know, those future changes that are quite often unforeseeable and unpredictable?&amp;#160; It also tends to make those newly defined blocks more efficient, both in construction and execution performance.&lt;/p&gt;  &lt;p&gt;But things like n-tier business logic and decoupling are rarely familiar terms to the Summer intern who happens to dig tinkering with VBA (or VSTO) within Office applications like Excel and Access.&amp;#160; To them, it's just fun to code, and who can blame them?&amp;#160; How do you effectively convince this wunderkind teenager that &amp;quot;fun&amp;quot; isn't as &amp;quot;cool&amp;quot; as decoupling your code and applying standard design prinicipals to it before ever punching a key or clicking a mouse?&amp;#160;&amp;#160; It's a serious conundrum for businesses of all sizes, but particularly insidiuos and debilitating for larger corporate behemoths due to their scales of inefficiency at all levels.&amp;#160; Who is the best equipped, and motivated to insert themselves into this vicious chain reaction and disrupt it entirely: IT, LOB stake-owners, or senior management?&amp;#160; IT rarely has the global authority to stomp out such wildfires alone.&amp;#160; LOB stake-owners rarely have the global incentive.&amp;#160; Senior management doesn't give a shit because that's why they hired mid-level management to insulate them from.&amp;#160; When LOB stake-owners are coupled with mid-level management (often one and the same), it's a done deal: nothing is going to improve.&amp;#160; This is the most common scenario in modern corporations today.&amp;#160; A Catch-22.&lt;/p&gt;  &lt;p&gt;My coffee just ran out.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1720666255096533217?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1720666255096533217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1720666255096533217' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1720666255096533217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1720666255096533217'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/never-ending-war-centralized-it-vs.html' title='The Never-Ending War: Centralized IT vs Department Developers'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-5eeQsBQ7BmQ/TojCcsa081I/AAAAAAAAIsE/xDiJhYHmqss/s72-c/e20_november_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-710458540874852267</id><published>2011-10-03T06:48:00.000-04:00</published><updated>2011-10-03T06:48:00.408-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='sccm'/><category scheme='http://www.blogger.com/atom/ns#' term='config manager'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>What Can Fail: Software Deployments</title><content type='html'>&lt;p&gt;If you're using Microsoft System Center Configuration Manager, you're well aware that there's a lot of moving parts.&amp;#160; It often seems like staring into the back of an opened pocket watch, being awed by the mass of tiny gears working in such precision.&amp;#160; If you've been working with it for a long time, you're also likely aware that hiccups occur and that they tend to happen in certain places more than others.&amp;#160; Most CM administrators I know become familiar with particular groups of issues and have developed their own personal &amp;quot;solution&amp;quot; practices to troubleshoot and resolve them.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Package Configuration&lt;/strong&gt; - check the data source settings, and the permissions on the folders and shares also.&amp;#160; Some packages don't need to be broadcast over the DP shares since they can't install from them at zero hour.&amp;#160; For example: AutoCAD network deployments, which contain a hard-coded UNC reference to the original administrative share location.&amp;#160; Yet it's very easy to let it be replicated, slowly (lots of content), and eat up a lot of disk space, when the installations will simply run back to the original location to pull installation content.&amp;#160; Tip: Use a script to call the installation, where only the script is replicated to the DP shares, but make sure the original share has permissions configured properly to allow the CM client/agent to install it via the advertisement.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Program Configuration&lt;/strong&gt; - verify the command you entered as well as any additional parameters (aka &amp;quot;arguments&amp;quot;).&amp;#160; Also, verify the disk space requirements and runtime limit value.&amp;#160; If you specify too large of values, some clients may fail the requirements assessment and the program won't run.&amp;#160; This will show up in the advertisement status details web reports for each client.&amp;#160; Watch out for quoted string values and special characters also.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Client Cache &lt;/strong&gt;- the client cache can be a common source of headaches when deploying packages, especially when the same package has been updated several times, refreshed on the DPs, and re-run multiple times (usually to fix late-discovered issues).&amp;#160; It's not uncommon to have to manually clear out the previous package cache remains on a problem client.&amp;#160; It's not uncommon to have to clear out other/older deployments as well, just to free up total cache space.&amp;#160; Double check the client cache size setting also, but be careful about bumping the size up without carefully considering the ramifications as well.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;WMI issues &lt;/strong&gt;- as with many client health improvements in Configuration Manager 2012, I'm looking forward to seeing this issue go away.&amp;#160; You may be aware of the situations where you end up having to run a repair operation on the WMI stack in order to get a particular client to communicate with the site again.&amp;#160; Ugh.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Maintenance Windows&lt;/strong&gt; - if you use maintenance windows for your CM site, be sure to evaluate how your software updates are being deployed and how it impacts other packages as well. Sometimes a small adjustment is all it takes to make it work, or not work at all.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Network Issues &lt;/strong&gt;- with all the incredible power and complexity of Configuration Manager, it can't do anything if the network isn't reliable.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Anti-Virus Hurdles &lt;/strong&gt;- yep. sometimes anti-virus products can get in the way with deployments.&amp;#160; Quite often by ripping out just one or two key components during the installation process (or right after) and crippling the application.&amp;#160; If an application works fine in your test environment, but not on the production environment, check the antivirus scan logs and quarantine reports.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites &lt;/strong&gt;- many software products expect things to be at least up to a certain baseline before they can install.&amp;#160; Sometimes they will also take care of filling in any missing requirements.&amp;#160; Sometimes they can't, and when they can't, they fail to install.&amp;#160; This should be addressed during testing, but sometimes things get missed.&amp;#160; Other times it stems from human communication issues.&amp;#160; You might have asked the desktop support team if .NET 4.0 was on every client and they might have said it was, when in fact it was only on some computers, and you didn't bother to verify this yourself.&amp;#160; There you go.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Custom Packaging&lt;/strong&gt; - if you (or someone you work with) created the installation source internally, verify any pre-requisites: operating system, version, service pack level, .NET or IE requirements, 32-bit or 64-bit, and so on.&amp;#160; This should all be hammered out during testing, but sometimes things get missed.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Square 1 - Level 0&lt;/strong&gt; - if the application you're looking to deploy needs to be part of every desktop and laptop in your organization, don't forget to consider making it part of your standard image deployment as well.&amp;#160; If you use MDT or Configuration Manager OSD to handle your client provisioning, add your application there as well.&amp;#160; That way it's one less thing to push over the network later on.&amp;#160; It's also quite a bit less complext to implement and troubleshoot during the base imaging process than when deploying over your network environment later.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Summary&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I must say that you shouldn't construe this to be a ridicule of Configuration Manager 2007 at all.&amp;#160; Configuration Manager is a fantastic product.&amp;#160; But like all products that serve a similar role, there's a lot of intricate things going on in the background, and a lot of things depend on how you configure and maintain them as well.&amp;#160; Many CM implementations experience only minor hiccups, while others have more frequent issues.&amp;#160; A lot of that is dependent upon how well the environment was designed, implemented and maintained.&amp;#160; It also depends on how well the clients are maintained, but software installers themselves are often the wild variable in the equation.&lt;/p&gt;  &lt;p&gt;I'm sure there's more to add to this list, but this is enough to jot down for now.&amp;#160; For more insight into Configuration Manager and package deployments, check out some of the links below:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.myitforum.com/" target="_blank"&gt;MyItForum&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://twitter.com/#!/rodtrent" target="_blank"&gt;Rod Trent - Twitter&lt;/a&gt; - &lt;a href="https://plus.google.com/109684260598216208229/posts" target="_blank"&gt;Google+&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://myitforum.com/cs2/blogs/bktucker/default.aspx" target="_blank"&gt;Brian Tucker (blog)&lt;/a&gt; - &lt;a href="https://plus.google.com/114913117521621704816/posts" target="_blank"&gt;Google+&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://myitforum.com/cs2/blogs/cnackers/default.aspx" target="_blank"&gt;Chris Nackers (blog)&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://mnscug.org/" target="_blank"&gt;Brian Mason (MNSCUG)&lt;/a&gt; - &lt;a href="https://plus.google.com/117482372665739902320/posts" target="_blank"&gt;Google+&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://myitforum.com/cs2/blogs/chobbs/default.aspx" target="_blank"&gt;Cliff Hobbs (blog)&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://myitforum.com/cs2/blogs/skissinger/default.aspx" target="_blank"&gt;Sherri Kissinger (blog)&lt;/a&gt; - &lt;a href="https://plus.google.com/105746995862531559143/posts" target="_blank"&gt;Google+&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://myitforum.com/cs2/blogs/jsandys/default.aspx" target="_blank"&gt;Jason Sandys (blog)&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.truesec.com/infrastructure/labs/deployment/migration/deploy_windows_7_using_mdt_2012_and_configmgr_2012" target="_blank"&gt;Johan Arwidmark (TrueSec)&lt;/a&gt; - &lt;a href="https://twitter.com/intent/user?screen_name=jarwidmark" target="_blank"&gt;Twitter&lt;/a&gt; - &lt;a href="https://plus.google.com/113687011368361481157/posts" target="_blank"&gt;Google+&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.google.com/url?sa=t&amp;amp;source=web&amp;amp;cd=7&amp;amp;ved=0CIcBEBYwBg&amp;amp;url=http%3A%2F%2Fblogs.technet.com%2Fb%2Fconfigurationmgr%2F&amp;amp;ei=7hSHTtitILDfsQK368CaDw&amp;amp;usg=AFQjCNGxNJO5iLV431bWqWpc_04jrEOFMg&amp;amp;sig2=LJLwlE4fMbbkw2djpq8coA" target="_blank"&gt;Configuration Manager Support Team Blog&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://appdeploy.com" target="_blank"&gt;AppDeploy.com&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I know I haven't even come close to covering everyone that I should, but if you check out these folks, and see who they link to, you should end up with a pretty good list of amazing and interesting people to learn from.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-710458540874852267?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/710458540874852267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=710458540874852267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/710458540874852267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/710458540874852267'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/what-can-fail-software-deployments.html' title='What Can Fail: Software Deployments'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3949695936376236914</id><published>2011-10-01T09:50:00.001-04:00</published><updated>2011-10-01T09:50:59.258-04:00</updated><title type='text'>Weekend</title><content type='html'>&lt;p&gt;I'm driving up to Richmond, VA for the weekend, but I have uploaded a post on Configuration Manager software deployments for Monday.&amp;#160; It's a short article, but I hope to hear back from you with your thoughts on the subject and the individual aspects I discuss.&amp;#160; Until then: cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3949695936376236914?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3949695936376236914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3949695936376236914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3949695936376236914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3949695936376236914'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/10/weekend.html' title='Weekend'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8109519602535529143</id><published>2011-09-30T06:00:00.000-04:00</published><updated>2011-09-30T06:00:04.255-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='people'/><category scheme='http://www.blogger.com/atom/ns#' term='society'/><category scheme='http://www.blogger.com/atom/ns#' term='advertising'/><category scheme='http://www.blogger.com/atom/ns#' term='safety'/><category scheme='http://www.blogger.com/atom/ns#' term='stupidity'/><category scheme='http://www.blogger.com/atom/ns#' term='transportation'/><title type='text'>Swallowing Without Looking</title><content type='html'>&lt;p&gt;Sometimes I have to stop and question things that just don't quite seem right.&amp;#160; Maybe it's because I'm a big fan of George Carlin, Frank Zappa and others that never made a habit of accepting things blindly.&lt;/p&gt;  &lt;p&gt;Case in point: &lt;a href="http://www.wavy.com/dpp/news/local_news/norfolk/hrt-launches-light-rail-psa" target="_blank"&gt;Light Rail safety PSA campaign&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The ads say &amp;quot;&lt;em&gt;Light rail safety.&amp;#160; It begins with you.&lt;/em&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;This is wrong.&amp;#160; There is no logic in this statement whatsoever.&amp;#160; None.&amp;#160; Zero.&amp;#160; It's completely wrong and stupid.&amp;#160; The fact that people accept this statement without question, is one thing. But when people take it up on defensive posture during a discussion, well, that's just shitheaded.&lt;/p&gt;  &lt;p&gt;Is it bad to emphasize safety?&amp;#160; No.&lt;/p&gt;  &lt;p&gt;Is it bad to suggest pedestrians and drivers be safe around light rail systems?&amp;#160; No.&lt;/p&gt;  &lt;p&gt;So what's wrong?&lt;/p&gt;  &lt;p&gt;Here's what's wrong:&amp;#160; Light rail safety, like any infrastructure-oriented safety, doesn't &amp;quot;begin&amp;quot; with &amp;quot;you&amp;quot;.&amp;#160; It begins with a &lt;strong&gt;safe design&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;PERIOD.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-d8Rs_0_7r5U/ToVAZpJLC_I/AAAAAAAAIrU/V9E_hDSyWl0/s1600-h/light-rail-transit-system-richmond%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="light-rail-transit-system-richmond" border="0" alt="light-rail-transit-system-richmond" src="http://lh5.ggpht.com/-x6PgrsHx718/ToVAaJ4H4LI/AAAAAAAAIrY/Zh9EOcGIEOg/light-rail-transit-system-richmond_thumb.jpg?imgmax=800" width="244" height="163" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Consider this:&amp;#160; &lt;/strong&gt;If a system makes it not only &lt;em&gt;possible&lt;/em&gt;, but &lt;em&gt;probable&lt;/em&gt;, even &lt;em&gt;predictably probable&lt;/em&gt;, for a categorical &amp;quot;accident&amp;quot; to occur, it has failed the safe design test.&amp;#160; FAILED.&amp;#160; This is one of the basic tenants of statistical analysis.&amp;#160; You're supposed to strive to minimize risk and failure in any system that adds risk to human life or well-being.&amp;#160; A basic statistician can calculate the relative risk deviations between two alternative design patterns.&amp;#160; A categorical failure would be a pedestrian interaction with the movement of the train car, or that between a personal or commercial vehicle and a train car.&lt;/p&gt;  &lt;p&gt;Typically, the approach would be to identify parallel &amp;quot;baseline&amp;quot; systems to assess comparative risk and probability.&amp;#160; This isn't the first light rail system to be built in a U.S. city.&amp;#160; There are likely many &amp;quot;lessons learned&amp;quot; that could provide excellent baselines on which to determine the relative deviations and risks.&amp;#160; Damn.&amp;#160; I think that's also referred to as &amp;quot;learning from past experience&amp;quot;.&lt;/p&gt;  &lt;p&gt;The next step would be to take that assessment data and work to mitigate those risks to &amp;quot;close the gap&amp;quot; between the proposed design and other existing designs.&amp;#160; For example, to mitigate the risk of a collision between ground-dwelling pedestrians, cars, trucks, motorcycles and buses, you could raise the light rail tracks above ground to provide isolation.&amp;#160; Gee.&amp;#160; Sound familiar to any of you folks in Chicago?&amp;#160; This also serves another, equally important goal: isolating new systems from interfering with existing systems.&lt;/p&gt;  &lt;p&gt;The culprit here is obvious: Funding.&amp;#160; But funding was actually a symptom of politics, as it usually is.&amp;#160; In this case, the other near-by cities backed off from committing to the project because of political pressure to cut spending across the board in a Recession.&amp;#160; So Norfolk went for it alone.&amp;#160; Because they couldn't afford the added costs of raising the tracks from end-to-end, we have a system that is less than ideal, but workable.&amp;#160; Risky, but predictably so, at least somewhat.&lt;/p&gt;  &lt;p&gt;Would an elevated track design be the perfect solution? Nothing is perfect.&amp;#160; However, such a design change would arguably provide risk mitigation for at least two of the identified categorical risks: interference and collision.&amp;#160; These two risks are very high on the probability score for causing injury or death, which are bad (at least, that's what I was told).&lt;/p&gt;  &lt;p&gt;They knew of these risks well in advance.&amp;#160; Otherwise, how would they have scripted and produced the ads to convey this message a year ahead of the grand opening?&lt;/p&gt;  &lt;p&gt;When someone or some people collectively agree to proceed with something that has known dangers, we call it &amp;quot;acceptable risk&amp;quot;.&amp;#160; Drug companies, tobacco companies and car manufacturers operate on acceptable risk every second of every day.&amp;#160; So do pilots, divers, EOD technicians, and even school teachers.&amp;#160; You do it to: every time you drive your car, motorcycle or truck.&lt;/p&gt;  &lt;p&gt;There are no &amp;quot;sort of&amp;quot; grades here though.&amp;#160; A logical statement is a logical statement - or it isn't.&amp;#160; Think of commercial aircraft: What if the airlines said that safety of the aircraft in flight &amp;quot;&lt;em&gt;begins with YOU&lt;/em&gt;&amp;quot;, rather than with a safe aircraft, trained crew and reliable parts?&amp;#160; Still make sense to you?&amp;#160; How about, &amp;quot;&lt;em&gt;safety in the operating room - begins with YOU&lt;/em&gt;&amp;quot;, rather than a skilled surgeon and staff, and sterile equipment?&amp;#160; That would be stupid.&amp;#160; So is arguing that &amp;quot;we&amp;quot; as riders are primarily responsible for the safety of the light rail system.&amp;#160; Stop letting these D-grade marketing ad campaign morons off the hook.&amp;#160; I'm convinced the ads are dumb is because Norfolk couldn't afford to pay for a better Advertising firm, which I can understand.&lt;/p&gt;  &lt;p&gt;Am I overreacting?&amp;#160; Maybe.&amp;#160; Or is it shining a light on yet another whittling away at our collective sense of acceptable logic?&amp;#160; Remember when you were five or six, and you questioned everything you saw or heard?&amp;#160; Why did you stop?&amp;#160; Why do we all stop?&lt;/p&gt;  &lt;p&gt;How then, should the PSA have been worded?&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;em&gt;Light rail safety.&amp;#160; It's important for all of us.&lt;/em&gt;&amp;quot;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8109519602535529143?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8109519602535529143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8109519602535529143' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8109519602535529143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8109519602535529143'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/swallowing-without-looking.html' title='Swallowing Without Looking'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-x6PgrsHx718/ToVAaJ4H4LI/AAAAAAAAIrY/Zh9EOcGIEOg/s72-c/light-rail-transit-system-richmond_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-63065025215114778</id><published>2011-09-29T20:29:00.001-04:00</published><updated>2011-09-29T20:29:08.240-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='systems architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>The Zen of Systems Automation</title><content type='html'>&lt;p&gt;Level 1 - Writing scripts, hacking code, building your own solutions&lt;/p&gt;  &lt;p&gt;Level 2 - Finding existing scripts, code, solutions and leveraging them with a little effort&lt;/p&gt;  &lt;p&gt;Level 3 - Leveraging built-in functionality without having to write any custom additions&lt;/p&gt;  &lt;p&gt;Level 4 - Systems run themselves.&amp;#160; You drink beer and focus on other things&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-63065025215114778?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/63065025215114778/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=63065025215114778' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/63065025215114778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/63065025215114778'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/zen-of-systems-automation.html' title='The Zen of Systems Automation'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-5295314361743897597</id><published>2011-09-29T19:58:00.001-04:00</published><updated>2011-09-29T19:58:11.016-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thoughts'/><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='bongloads'/><title type='text'>Interaction is Highly Overrated</title><content type='html'>&lt;p&gt;Compact rambling edition:&amp;#160; As in, compact text format.&amp;#160; Tough on the eyes?&amp;#160; Suck it up.&amp;#160; Some people don't have a computer.&amp;#160; Some people don't have eyes.&amp;#160; Some don't even have fingers.&amp;#160; Let's see you complain now.&amp;#160; I didn't think so.&lt;/p&gt;  &lt;p&gt;So much for &lt;a href="http://skatterbrainz.blogspot.com/2011/09/autodesk-network-deployment-strategies.html" target="_blank"&gt;part 1&lt;/a&gt; of my grand &amp;quot;experiment&amp;quot;.&amp;#160; Not even &lt;em&gt;one&lt;/em&gt; response to the questions on my &lt;a href="http://skatterbrainz.blogspot.com/2011/09/autodesk-network-deployment-strategies.html" target="_blank"&gt;quasi exam&lt;/a&gt;?&amp;#160; Geez.&amp;#160; I expected at least one reply.&amp;#160; Just for that, I'm not posting the answers.&amp;#160; You guys can figure it out using Google.&amp;#160; No more of those.&amp;#160; From now on: random stupidity.&amp;#160; Actually, I can probably chock that up to making it too long for most people to even read the whole stupid thing.&amp;#160; Still with me?&amp;#160; Just checking.&amp;#160; As I've mentioned before, this is wearing on me, and my &lt;a href="http://skatterbrainz.blogspot.com/2011/08/expiration-date.html" target="_blank"&gt;Dec 24&lt;/a&gt; date is still on track at this point.&amp;#160; At my current rate of descent, remaining fuel, and distance to that target, I should just about make it before completely burning out.&amp;#160; Buckshot doesn't go as far as a single projectile, just as scattered thoughts don't travel as far as the focused.&amp;#160; I'm looking upon this as retirement.&amp;#160; Still there?&amp;#160; Ok.&amp;#160; Four years of rambling incessantly is losing its luster.&amp;#160; Some days I get a spark to ramble upon; other days I'm inspired by something from work, and some days it's just a brain dump of utter stupidity.&amp;#160; I mean, as much as I truly miss Ze Frank's &amp;quot;&lt;a href="http://www.zefrank.com/theshow/popular.html" target="_blank"&gt;Show&lt;/a&gt;&amp;quot;, I can appreciate how much he worked on that and why it only lasted one year. No, I haven't been drinking, and no, I haven't gone without sleep.&amp;#160; I'm actually amazingly lucid right now, even though it's been a long day within a very long and crazy work week.&amp;#160; &lt;/p&gt;  &lt;p&gt;I'm looking forward to this weekend.&amp;#160; Tomorrow: Friday, is supposed to be the last Summer-like day of the year, getting once again into the 80's.&amp;#160; Saturday will only reach the mid 60's and be windy.&amp;#160; Fall is here.&amp;#160; In Virginia that lasts about a week and then we break out the coats and put the shorts in the bottom drawer for next year.&amp;#160; The only major thing I'm anticipating now is starting my treatments for skin cancer.&amp;#160; Don't freak, I don't have full-blown cancer yet.&amp;#160; It's pre-cancer treatment, so that makes it pre-chemo?&amp;#160; Anyhow, not a surprise given how much I live outdoors and with freckled skin, well, you know.&amp;#160; Anyhow, October is going to be interesting.&amp;#160; I can't complain since several of my friends have had or have full-blown Cancer and are soldering on through it bravely.&amp;#160; No whining here.&amp;#160; So far, so good.&amp;#160; I've always said that God may love me, but he/she sure doesn't like me.&amp;#160; Not letting me croak yet, more punishment to dish out to me yet I'm sure.&amp;#160; I'm actually more looking forward to the grand opening of the new Yard House pub in Virginia Beach in mid November.&amp;#160; That will make for two Christmas's this year.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-5295314361743897597?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/5295314361743897597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=5295314361743897597' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5295314361743897597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/5295314361743897597'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/interaction-is-highly-overrated.html' title='Interaction is Highly Overrated'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8043249095665637896</id><published>2011-09-28T20:39:00.001-04:00</published><updated>2011-09-28T20:39:19.040-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='articles'/><title type='text'>Testing. Testing. Testicles?</title><content type='html'>&lt;p&gt;I'm guessing that got your attention.&amp;#160; I'm going to be doing an experiment.&amp;#160; I do lots of experiments, experimentally speaking of course.&amp;#160; What I'm doing now is trying on different topics and subject matter to see how traffic responds.&amp;#160; I've given up asking for input, nobody responds.&amp;#160; At least not with anything specific or clarifying in any way.&amp;#160; So this ship is still adrift without a rudder.&amp;#160; The two recent posts on Autodesk network deployments are a part of this experiment.&lt;/p&gt;  &lt;p&gt;Here's what I'm seeing so far:&lt;/p&gt;  &lt;p&gt;The 5 most popular articles I've posted thus far, based on unique visits between January 1, 2011 and September 28, 2011 are...&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="4" width="530"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="462"&gt;Title&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;Hits&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com" target="_blank"&gt;Home Page&lt;/a&gt; (changes often)&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;3,624&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com/2010/04/windows-7-msgexe-and-group-policy.html" target="_blank"&gt;Windows 7, MSG.exe and Group Policy Preferences&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;3,120&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com/2009/08/enabling-windows-7-remote-management.html" target="_blank"&gt;Enabling Windows 7 Remote Management via Group Policy&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;1,808&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com/2010/07/what-does-autocad-command-do.html" target="_blank"&gt;What does the AutoCAD PURGE Command Do?&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;1,779&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com/2010/10/packaging-dwg-trueview-2011.html" target="_blank"&gt;Packaging Autodesk DWG TrueView 2011&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;1,449&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="462"&gt;&lt;a href="http://skatterbrainz.blogspot.com/2010/08/packaging-deployment-autodesk-2011.html" target="_blank"&gt;Packaging &amp;amp; Deployment of AutoCAD 2011 Products with System Center Configuration Manager 2007&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="66" align="center"&gt;816&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Based on these numbers, I could draw one of two conclusions:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;A. Windows 7 topics are the most popular ... or ...&lt;/p&gt;    &lt;p&gt;B. Most of you just read whatever happens to be on my home page&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Ugh.&amp;#160; Face-palm.&amp;#160; I'm talking nonsense to myself about nonsensicle nonsense.&amp;#160; The irony for me is that I receive a lot of e-mail asking for various things, mostly related to AutoCAD or Autodesk product issues, especially deployments and licensing services, etc.&amp;#160; I'd like to ablige with more focused content, but I need feedback from YOU to point me in the right direction.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8043249095665637896?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8043249095665637896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8043249095665637896' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8043249095665637896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8043249095665637896'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/testing-testing-testicles.html' title='Testing. Testing. Testicles?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1275743874319152939</id><published>2011-09-27T22:00:00.001-04:00</published><updated>2011-09-27T22:00:06.432-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='systems architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>Autodesk Network Deployment Strategies</title><content type='html'>&lt;p&gt;This is going to be sort of an extension of yesterday's post and on some of the topics covered in my book &amp;quot;The AutoCAD Network Administrator's Bible&amp;quot;.&amp;#160; Mainly: how to unleash an Autodesk network deployment installation on your network with some logical and strategic efficiency regarding traffic isolation.&lt;/p&gt;  &lt;p&gt;If you've ever taken a certification exam, this may all seem very familiar.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Background&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Let's start with a model:&amp;#160; &lt;em&gt;Fictional Corporation&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New York, NY&lt;/strong&gt; - is the main data center for the company.&amp;#160; The data center is state of the art with blade servers, SAN device arrays, and virtualized servers and virtual data center switches.&amp;#160; While being the largest office in the company, there are no AutoCAD users in this office, at present.&amp;#160; However, the company IT department creates and maintains all software distribution resources for the company.&amp;#160; They build the AutoCAD network deployment and host it (initially) in the NY data center.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Chicago, IL &lt;/strong&gt;- is the second largest office in the company, but has the largest concentration of AutoCAD users in the company.&amp;#160; The connection between NY and Chicago uses multiple/redundant T-1 connections.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Washington, DC &lt;/strong&gt;- is the third largest office, with the fewest AutoCAD users.&amp;#160; The connection link between NY and DC is fractional T-1.&amp;#160; Not bad, and not unreliable, but not as fast as the NY-Chicago link&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Virginia Beach, VA&lt;/strong&gt; - is the smallest office with the second largest group of AutoCAD users.&amp;#160; The link between NY-VB is fractional T-1, about the same performance characteristics as NY-DC.&lt;/p&gt;  &lt;p&gt;The IT department utilizes Microsoft System Center Configuration Manager 2007 to deploy software, updates, collect inventory data, as well as uses it for provisioning new and refreshed computers.&amp;#160; There are primary site servers in Chicago and Washington DC.&amp;#160; Virginia Beach has a seconary site server.&amp;#160; All four site servers are also distribution points.&lt;/p&gt;  &lt;p&gt;The file, print, and Configuration Manager site servers in the remote offices are physical machines.&amp;#160; The servers in NY are virtual.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Situation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;All computers in the company run Windows 7 Enterprise Edition, Service Pack 1.&amp;#160; All servers are running Windows Server 2008 or 2008 R2.&amp;#160; The IT department has installed a FlexLM(R) license server in New York and obtained a valid license file from Autodesk.&amp;#160; They have configured the license server and verified it is operating normally.&lt;/p&gt;  &lt;p&gt;The IT department creates the first AutoCAD network deployment share on a server in the NY data center.&amp;#160; They are aware of the deployment caveates for .NET Framework 4.0 and have already packaged the AutoCAD DirectX(R) component installer as an .MSI.&amp;#160; &lt;/p&gt;  &lt;p&gt;Using Configuration Manager (aka &amp;quot;SCCM&amp;quot;), they deploy .NET Framework 4.0 to all computers in the company successfully.&amp;#160; They also deploy the DirectX(R) custom installer successfully. They then deploy a few test clients in the NY office using SCCM successfully.&amp;#160; Everything so far looks good.&lt;/p&gt;  &lt;p&gt;Within SCCM they assign additional distribution point servers for the AutoCAD deployment package, one for each remote office.&amp;#160; They create the necessary collections and add direct memberships for clients in each remote office to a corresponding office-related collection and assign the advertisement.&lt;/p&gt;  &lt;p&gt;The IT department runs server data backups over the WAN links to the NY data center for archival between midnight and 2AM ET (1AM Chicago time).&amp;#160; Client computers are schedule to run disk defrag, and anti-virus scans between 2AM and 4AM local time.&amp;#160; Tests show that the AutoCAD deployment takes roughly 40 minutes to install on a full T-1 connection, and 60 minutes on a fractional T-1 connection.&lt;/p&gt;  &lt;p&gt;Few, if any, of the remote office clients successfully install.&amp;#160; Most return an error that the package timed out.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Question 1: What Happened?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;What might have caused the remote office clients to fail the installation attempt when the clients in the New York office completed the installation just fine?&amp;#160; Was it...&lt;/p&gt;  &lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;The Package did not finish replicating to the remote office distribution point servers. &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;The network links might have been saturated with concurrent traffic during the deployment.&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;The replicated package files contained identical deployment .INI content, so the clients attempted to install from the New York server share.&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Answers 1 and 2&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Answers 2 and 3&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;All of the Above&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;None of the Above&lt;/li&gt; &lt;/ol&gt;  &lt;p style="margin-bottom: 8pt"&gt;The answer is (definitely) 3 but could also be 2, so the best answer is 5.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;strong&gt;Question 2: How to Fix This:&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;When you run an installation from the network deployment share, the process refers to the DEPLOYMENT_LOCATION key in the .INI file.&amp;#160; So, what's the best way to address this?&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;A. Open the deployment .INI on each SCCM package share and edit the DEPLOYMENT_LOCATION value to refer to the local share UNC path.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;B. Build each deployment &amp;quot;on&amp;quot; a server in each remote office, then create a SCCM package and program that refers to the UNC as a distribution share.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;C. Build each deployment &amp;quot;on&amp;quot; a server in each remote office, in a separate folder create a .bat or .cmd script that references the setup command for that server.&amp;#160; Create a SCCM package and program that points to that script.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;u&gt;Best Answer&lt;/u&gt;?&amp;#160; ____&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;strong&gt;FlexLM License Servers&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;After sorting out their deployment issues, all clients are working fine and obtaining licenses from the license server as expected.&amp;#160; The IT department decides they want to add a little redundancy by implementing two more FlexLM(R) license servers in a &lt;em&gt;Distributed&lt;/em&gt; configuration.&amp;#160; They provision a license server in Chicago and another in Washington DC.&amp;#160; &lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;The clients were originally installed using a system environment variable to assign the FlexLM(R) server setting.&amp;#160; Now they want to reconfigure the Chicago users to point to their own license server first, then the New York server, followed by the DC server.&amp;#160; The DC users are to be configured so they point to their license server first, then New York, followed by Chicago.&amp;#160; Lastly, the Virginia Beach users should point to DC, then NY, and then Chicago.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;What's the Easiest way to accomplish this change?&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;A. Modify each deployment using the deployment utility &amp;quot;Modify Deployment&amp;quot; link, and enter new FlexLM server information, then re-deploy the installations to all clients for each site.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;B. Create a SCCM package and program that executes a script to configure the system environment variable to suit each location.&amp;#160; Target the clients using collections based on site assignment.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;C. Create four Group Policy Objects with a Group Policy Preference setting to replace the system environment variable value, link the GPO to the Active Directory OU for each site.&lt;/p&gt;  &lt;p style="margin-bottom: 8pt"&gt;&lt;u&gt;Best Answer&lt;/u&gt;?&amp;#160; _____&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1275743874319152939?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1275743874319152939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1275743874319152939' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1275743874319152939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1275743874319152939'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/autodesk-network-deployment-strategies.html' title='Autodesk Network Deployment Strategies'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-2400473579416457950</id><published>2011-09-27T20:00:00.001-04:00</published><updated>2011-09-27T20:05:30.253-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='software deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='autodesk'/><category scheme='http://www.blogger.com/atom/ns#' term='systems architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='applications'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>Slow Autodesk Network Deployments?</title><content type='html'>&lt;p&gt;One advantage of being a &amp;quot;consultant&amp;quot; is getting to peek into a variety of environments, cultures, methodologies, and whatnot.&amp;#160; One thing I see fairly often that seems to warrant some mention is slow performance over network pathways.&amp;#160; A cursory search on Google reveals that there are plenty of articles, blog posts and tweets regarding slow &amp;quot;deployment creation&amp;quot;, it's tough to find anything really focusing on the execution side: deploying the installation from the share to the clients.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-mLRmi5eiGng/ToJjjH_vGyI/AAAAAAAAIrM/nOGpusv3LqQ/s1600-h/fotolia_260932_XS%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="fotolia_260932_XS" border="0" alt="fotolia_260932_XS" src="http://lh4.ggpht.com/-C9-UhjuxuRQ/ToJjjne_xoI/AAAAAAAAIrQ/KrtFU5l3WCc/fotolia_260932_XS_thumb%25255B1%25255D.jpg?imgmax=800" width="240" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The potential points of trouble or failure in a typical LAN or WAN environment are numerous.&amp;#160; From client hardware and software, to client configuration settings, to physical wiring, switches, hubs, routers, wireless equipment, wireless configuration settings, server hardware, server software, server configuration settings, scheduled backups, scheduled anti-virus scans, unpredicted end-user activity, power faults, wireless interference, and layer on top of all this the issues incurred in virtual data center environments.&amp;#160; These are some of the aspects and any one of which (or combination of several) that can cause performance drag or outright failure.&amp;#160; The more you dig into the world of network engineering, the more you can appreciate what a network engineer deals with.&lt;/p&gt;  &lt;p&gt;So, if you're Autodesk product network deployments are taking longer than they should to deploy, here are some things to look at:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Network Site Link Speeds&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If your employer is large enough to have a dedicated &amp;quot;network admin&amp;quot;, consult him/her for link speeds between points of deployment (server shares) and end users (desktop and laptop computers).&amp;#160; Find out how many hops are involved.&amp;#160; What the switches and routers are like.&amp;#160; What limitations they're aware of.&amp;#160; I recommend doing this BEFORE you even attempt to build network deployment shares (referenced in my book.&amp;#160; shameless plug, I know)&amp;#160; Basically, you always want to keep as little time, distance and latency as possible between the installation source and the installation target.&amp;#160; This is irrespective of doing it manually, via scripts, group policy or management products like Configuration Manager.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NIC Configuration Settings&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Verify the Network Adapter configuration settings with your network administrator.&amp;#160; I've seen plenty of situations where everyone assumed it was automatically set to the correct configuration, when it was anything but.&amp;#160; Sometimes atypical network equipment configurations require atypical client configurations to suit.&amp;#160; Even if you are absolutely, positively convinced that all of your clients are using identical and correct network settings, check them again, just to be sure.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Concurrent Utilitization: Server&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If your deployment share resides on a file server, or a print server, or an application server (web, database, etc.), I would STRONGLY recommend you consult your server administrators to setup some performance monitoring to measure and verify the loads placed on each server.&amp;#160; If one role or function is hogging the resources (CPU time, memory, disk I/O, NIC throughput, etc.) consider moving it to another server.&lt;/p&gt;  &lt;p&gt;If concurrent roles or functions are not an issue, check to see when system and file backups are scheduled to run.&amp;#160; Do your best to avoid scheduling your network deployments during system backups, anti-virus scans, or scheduled maintenance.&amp;#160; If your servers are virtualized, and your server admins ocassionally move them from one physical host to another (or SAN storage attachments, etc.) it's important to coordinate your activities to avoid problems.&lt;/p&gt;  &lt;p&gt;Talk to your department coordinators or &amp;quot;power users&amp;quot; also.&amp;#160; Make sure they don't have any tasks they run during certain hours to back-up their project files, or perform operations that directly tax the server or its resources.&amp;#160; Copying a ton of large files can greatly impact network performance if the server is not configured to address that usage ahead of time.&lt;/p&gt;  &lt;p&gt;Always always always check the event logs for any sign of potential issues.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Concurrent Utilitization: Network&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If the server is not being taxed, you should take a careful look at what's going over the network segments.&amp;#160; Between the clients and the switch or gateway.&amp;#160; Between the switch or gateway and other routers, and between the other routers back to the servers.&amp;#160; There are lots of ways to do this and it's important to consult and coordinate with your network admins to do this effectively.&amp;#160; In many cases they can help identify bottlenecks caused by two major traffic activities that can be separated to avoid conflict.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Client Integrity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Check for available/free disk space on the target hard drive volume.&amp;#160; Check for errors and warnings in the client event logs.&amp;#160; Is the client getting frequent anti-virus quarantine events?&amp;#160; Are installed applications causing problems?&amp;#160; Be careful of applications that want to continue running in the background, especially when the client is tight on physical memory.&amp;#160; If the computer is being used heavily, consider upgrading the hardware or installing a separate physical hard drive to isolate I/O tasking.&amp;#160; The list here goes on and on, of course.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Client Activity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Are users performing CPU or disk-intensive activities?&amp;#160; Rendering large models, video processing, audio editing, etc.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;More&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Oh yes. There's more.&amp;#160; MUCH more.&amp;#160; I haven't (and won't) go into the impacts of other key networking services like DNS, Kerberos, WINS, DHCP, encryption overhead, certificates, dual network interfaces, teaming, virtual switches, virtual NICs, or any of that stuff.&amp;#160; It's more than I feel up to blabbering about, but it's out there, waiting for your brain to absorb it all.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;And Finally...&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Before you jump into building your network deployment, especially if you're aiming for multiple servers across a WAN, it's important to gather as much information as possible about your network so you can plan your strategy correctly.&amp;#160; If you spent hours convincing your coworkers, management and customers/users that network deployments are the &amp;quot;way to go&amp;quot;, don't you want to make sure it works as great as it possibly can?&lt;/p&gt;  &lt;p&gt;Consult your network and server administrators.&amp;#160; Run tests to verify file copy speeds across all links you plan on using.&amp;#160; Run your tests over a month or at least a few weeks, at all times of day, all days of the week.&amp;#160; Record details of performance and identify patterns in best and worst results.&amp;#160; Pointing a finger at one of your network admins and blaming them for slow speeds is only going to piss them off and get you moved to the bottom of their list of things to take care of.&amp;#160; Having measurement data and engaging in a cooperative discussion will get you where you want to go with the least amount of pain and effort.&amp;#160; Be sure to bring donuts and tell lots of jokes too.&amp;#160; It never hurts.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Tools and Links&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/trouble/" target="_blank"&gt;WindowsNetworking.com - Troubleshooting Network Issues&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/325487" target="_blank"&gt;Advanced Network Adapter Troubleshooting for Windows Workstations&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.wireshark.org/" target="_blank"&gt;WireShark&lt;/a&gt; (the de facto diagnostic tool)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/download/en/details.aspx?id=4865" target="_blank"&gt;Network Monitor 3.4&lt;/a&gt; for Windows 7, Vista, Server 2003, 2008, 2008 R2&lt;/p&gt;  &lt;p&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb795532" target="_blank"&gt;Sysinternals Networking Utilities&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb795533" target="_blank"&gt;Sysinternals Process Utilities&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/s?ie=UTF8&amp;amp;rh=n%3A377890011%2Cp_lbr_one_browse-bin%3AMark%20Minasi&amp;amp;page=1" target="_blank"&gt;Books by Mark Minasi&lt;/a&gt; at Amazon&lt;/p&gt;  &lt;p&gt;&lt;a href="http://technet.microsoft.com/en-us/magazine/ff625276.aspx" target="_blank"&gt;Network Diagnostics and Tracing in Windows 7&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://technet.microsoft.com/en-us/library/dd878517(WS.10).aspx" target="_blank"&gt;NETSH commands for Windows 7 and Windows Server 2008 R2&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-2400473579416457950?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/2400473579416457950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=2400473579416457950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2400473579416457950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/2400473579416457950'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/slow-autodesk-network-deployments.html' title='Slow Autodesk Network Deployments?'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-C9-UhjuxuRQ/ToJjjne_xoI/AAAAAAAAIrQ/KrtFU5l3WCc/s72-c/fotolia_260932_XS_thumb%25255B1%25255D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-7042126740355877499</id><published>2011-09-27T18:10:00.001-04:00</published><updated>2011-09-27T18:10:23.638-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='services'/><category scheme='http://www.blogger.com/atom/ns#' term='cmd'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>Querying Services on Remote Computers</title><content type='html'>&lt;p&gt;I'm still amazed that so many up-and-coming admins and SE's knee-jerk to using a script to perform a task that is readily available from a command prompt.&amp;#160; In this case, the SC command.&amp;#160; The SC.exe command resides in the %WINDIR%\System32 folder on most Windows XP, Vista and Windows 7 systems (as well as Windows Server 2003, 2008 and 2008 R2).&amp;#160; It's also alive an well on Windows 8 (Dev Preview build, anyway), and I presume resting within Windows Server 8 as well (I haven't seen it yet).&lt;/p&gt;  &lt;p&gt;The syntax is rather basic:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;sc &amp;lt;server&amp;gt; &amp;lt;option&amp;gt; &amp;lt;parameters&amp;gt;&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;but most people use it for querying the local services state, as follows:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;sc query&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The flexibility comes with the &amp;quot;&amp;lt;server&amp;gt;&amp;quot; argument, which is the NetBIOS computer name (with preceeding \\), so to query a remote computer named DESKTOP1 over your network...&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;sc \\DESKTOP1 query&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;And just add a piped &amp;quot;| more&amp;quot; to pause screen-by-screen (or redirect into a file, etc.)&lt;/p&gt;  &lt;p&gt;One short and simple command, instead of a bunch of VBScript or even a lengthy Powershell cmdlet.&amp;#160; Nothing wrong with those options, but it's nice to know there are other alternatives.&lt;/p&gt;  &lt;p&gt;Remember: To break open this little nugget, open a CMD console and type &amp;quot;sc /?&amp;quot;, press Enter and enjoy!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-7042126740355877499?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/7042126740355877499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=7042126740355877499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7042126740355877499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/7042126740355877499'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/querying-services-on-remote-computers.html' title='Querying Services on Remote Computers'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-3444448376249203842</id><published>2011-09-27T16:31:00.001-04:00</published><updated>2011-09-27T16:31:36.334-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='databases'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>Test ADO Connection using VBscript</title><content type='html'>Quick ADO connection test using VBscript...&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;[code]&lt;/pre&gt;&lt;pre&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre&gt;Const dsn = "{your connection string or DSN name here}"&lt;br /&gt;&lt;br /&gt;On Error Resume Next&lt;br /&gt;Set conn = CreateObject("ADODB.Connection")&lt;br /&gt;conn.ConnectionTimeOut = 10 ' 10 second wait limit&lt;br /&gt;conn.Open dsn&lt;br /&gt;&lt;br /&gt;If err.Number = 0 Then&lt;br /&gt;	wscript.echo "CONNECTION: SUCCESS"&lt;br /&gt;Else&lt;br /&gt;	wscript.echo "CONNECTION: FAILED"&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;conn.Close&lt;br /&gt;Set conn = Nothing&lt;br /&gt;[/code]&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-3444448376249203842?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/3444448376249203842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=3444448376249203842' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3444448376249203842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/3444448376249203842'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/test-ado-connection-using-vbscript.html' title='Test ADO Connection using VBscript'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6630832553162593930</id><published>2011-09-27T07:26:00.000-04:00</published><updated>2011-09-27T07:26:00.198-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='kixtart'/><category scheme='http://www.blogger.com/atom/ns#' term='services'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='wmi'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>10 Ways to Manage Windows Services</title><content type='html'>&lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;Services Console (services.msc) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Command Line: sc.exe &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;WMI / COM Script: VBscript, KiXtart, Javascript, Perl, etc.&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.NET Script: PowerShell&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;WMI Class Provider: Win32_Service&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Group Policy Object&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Group Policy Preferences&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Utilities: PSService.exe (Sysinternals/Microsoft)&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.MSI installer&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.EXE application or installer&lt;/li&gt; &lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6630832553162593930?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6630832553162593930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6630832553162593930' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6630832553162593930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6630832553162593930'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/10-ways-to-manage-windows-services.html' title='10 Ways to Manage Windows Services'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6118200495613089016</id><published>2011-09-27T06:21:00.000-04:00</published><updated>2011-09-27T06:21:00.244-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><category scheme='http://www.blogger.com/atom/ns#' term='wmi'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>5 Ways to Read Windows Event Logs</title><content type='html'>&lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;Event Viewer application (eventvwr.msc or eventvwr.exe)&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Command Line: wevutil.exe&lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;WMI/COM Scripting: VBscript, KiXtart, Javascript, Perl, etc. &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.NET Scripting: PowerShell &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Collectors and Forwarders: wecutil.exe &lt;/li&gt; &lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6118200495613089016?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6118200495613089016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6118200495613089016' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6118200495613089016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6118200495613089016'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/5-ways-to-read-windows-event-logs.html' title='5 Ways to Read Windows Event Logs'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-1129030592738087199</id><published>2011-09-26T20:45:00.001-04:00</published><updated>2011-09-26T20:45:03.949-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='group policy'/><category scheme='http://www.blogger.com/atom/ns#' term='services'/><category scheme='http://www.blogger.com/atom/ns#' term='registry'/><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='environment'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><category scheme='http://www.blogger.com/atom/ns#' term='scripting'/><title type='text'>Automation Gyration</title><content type='html'>&lt;p&gt;I recently updated some information on my tabular matrix of &amp;quot;&lt;a href="https://sites.google.com/site/skatterbrainz/automation" target="_blank"&gt;Windows 7 Automation Options&lt;/a&gt;&amp;quot; over at my other other other web site.&amp;#160; The goal of this matrix is to map out alternative ways to perform common administrative tasks and compare which is best for certain conditions or situations.&amp;#160; Let me know if you want something added or if you have a correction to offer.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-1129030592738087199?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/1129030592738087199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=1129030592738087199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1129030592738087199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/1129030592738087199'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/automation-gyration.html' title='Automation Gyration'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4150755650982884936</id><published>2011-09-26T20:35:00.001-04:00</published><updated>2011-09-26T20:35:31.031-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='operating systems'/><category scheme='http://www.blogger.com/atom/ns#' term='registry'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='network administration'/><title type='text'>11 Ways to Manipulate the Windows Registry</title><content type='html'>&lt;ul&gt;   &lt;li style="margin-bottom: 8pt"&gt;Direct via REGEDIT &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Command line using REG.exe &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Import via .REG file (invokes REGEDIT) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;COM Scripting: VBscript, KiXtart, Perl, Javascript, etc. &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.NET Scripting: PowerShell &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Group Policy &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Group Policy Preferences &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.MSI installer &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;.EXE application &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Stream Interface: Java &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Temp Labor:&amp;#160; Order Timmy to do it &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-4150755650982884936?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/4150755650982884936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=4150755650982884936' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4150755650982884936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/4150755650982884936'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/x-ways-to-manipulate-windows-registry.html' title='11 Ways to Manipulate the Windows Registry'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-6078423718892873662</id><published>2011-09-25T19:29:00.001-04:00</published><updated>2011-09-25T19:29:03.443-04:00</updated><title type='text'>Acad 2012 DirectX - The Final Chapter</title><content type='html'>&lt;p&gt;I know that &lt;a href="http://skatterbrainz.blogspot.com/2011/09/friday-mini-braindump.html" target="_blank"&gt;I said I was done&lt;/a&gt; with this topic, but someone hit me up over the weekend with a desperate request for help and I couldn't say no.&amp;#160; As always, I prefer to share answers on the blog rather than by e-mail because it [A] helps more people at one time and [B] avoids repeating the same answer over and over.&amp;#160; This might go a bit deep, but hopefully it serves to help someone out there to get over this hump with a little less effort.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px" border="0" src="http://www.backhoe-excavator.com/wp-content/uploads/2011/06/Construction-Equipment-Machinery.jpg" width="270" height="204" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Better Way&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you have InstallShield, here's how to do this in the simplest and most effective way:&lt;/p&gt;  &lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;On a clean reference computer (virtual machine) install the Remote Repackager &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Start the Repackage Wizard and select &amp;quot;Snapshot&amp;quot; mode, using multiple steps &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;When the capture is done, click Finish &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Copy the &amp;quot;DirectX&amp;quot; folder from the &amp;quot;3rd Party&amp;quot; sub-folder of your AutoCAD 2012 network deployment into the C:\Windows\Temp folder of the reference computer (making C:\Windows\Temp\DirectX) &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Open the folder and launch DXSETUP.exe and complete the process to &amp;quot;finish&amp;quot; &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Re-run the Repackage Wizard in snapshot mode to capture the delta state info &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Save the output to C:\Packages on the reference computer &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Copy the output up to your InstallShield developer share so you can edit it further &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;When you open it in Repackager, exclude all the junk that relates to &amp;quot;per-user&amp;quot; stores (HKCU, User Profile, etc.) and exclude anything not related to your DirectX installation (background scans, scheduler services, etc.)&amp;#160; Save the output to a new folder (e.g. &amp;quot;Project&amp;quot;)&lt;/p&gt;  &lt;p&gt;Open the .ism output from the &amp;quot;Project&amp;quot; folder in InstallShield Editor.&lt;/p&gt;  &lt;p&gt;Set all the desired properties (title, subject, comment, etc.), there's a lot of stuff to manipulate, so unless you need all the nitty-gritty details I'll skip over them for now.&lt;/p&gt;  &lt;p&gt;Build the project into an .MSI package&lt;/p&gt;  &lt;p&gt;Run the MSI Validation and clean up any ICE references that matter (ignore ICE27, for example - but don't ignore ICE18, and so on).&amp;#160; Build again, and repeat the Validation until all is good.&lt;/p&gt;  &lt;p&gt;You should now have a .MSI installer&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;TESTING&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Once you have your shiney new .MSI installer, test test TEST TEST TEST TEST it until you feel good it's working like it should.&amp;#160; By TEST I mean install it on a new computer, along with .NET 4.0, and then target that computer with the AutoCAD 2012 network deployment using Configuration Manager 2007 or Altiris, etc.&amp;#160; If it works fine and the application launches without errors, you're good.&amp;#160; DO NOT - I REPEAT - DO NOT look at the Configuration Manager advertisement report for the &amp;quot;Success&amp;quot; and call it a &amp;quot;win&amp;quot;.&amp;#160; That's NOT good enough.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DANGER ZONE&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is where we separate the men from the boys (or more apropos: we separate the daring idiots from those that prefer to keep their job).&lt;/p&gt;  &lt;p&gt;&lt;u&gt;WARNING&lt;/u&gt;: The rest of this article is UNSUPPORTED and potentially RISKY.&amp;#160; Always make a backup of your entire AutoCAD network deployment share before making any manual changes.&amp;#160; This information is NOT supported or condoned by Autodesk, its resellers or anyone on this planet.&amp;#160; I do not guarantee this will work for you and there is NO WARRANTY provided, either explicitly or implicitly, for any purpose or use whatsoever.&amp;#160; I accept NO LIABILITY or responsibility for any consequences that may arise from your use or adaptation of this information for any purposes.&amp;#160; In short: YOU ARE ON YOUR OWN - YOU ACCEPT ANY AND ALL RISK from this point on.&amp;#160; Results may vary.&amp;#160; Batteries not included.&lt;/p&gt;  &lt;p&gt;Place the new Acad2012DX.msi file in a folder under your AutoCAD 2012 network deployment share.&amp;#160; You can drop it in the &amp;quot;DirectX&amp;quot; folder actually.&lt;/p&gt;  &lt;p&gt;Open the deployment .INI file and locate the [DIRECTX] key.&amp;#160; It should look something like the example shown below.&lt;/p&gt;  &lt;p&gt;[DIRECTX]    &lt;br /&gt;PLATFORM=ALL     &lt;br /&gt;PRODUCT_NAME=DirectX Runtime     &lt;br /&gt;EXE_PATH=3rdParty\DirectX\DXSETUP.exe     &lt;br /&gt;EXE_PARAM=/silent     &lt;br /&gt;IGNORE_FAILURE=YES     &lt;br /&gt;DISKCOST=50000000&lt;/p&gt;  &lt;p&gt;Change the values beneath it to suit the new .MSI installer, as shown in the following EXAMPLE...&lt;/p&gt;  &lt;p&gt;[DIRECTX]    &lt;br /&gt;PLATFORM=ALL     &lt;br /&gt;PRODUCT_NAME=DirectX Runtime     &lt;br /&gt;EXE_PATH=3rdParty\Directx\Acad2012DX.msi     &lt;br /&gt;EXE_PARAM=/quiet /norestart     &lt;br /&gt;LOG=%tmp%\Acad2012DX.log     &lt;br /&gt;IGNORE_FAILURE=YES &lt;/p&gt;  &lt;p&gt;Save the file and test a deployment on a computer that has .NET 4.0 but has not had AutoCAD 2012 installed prior to your testing.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTES&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I have not provided any guidance for getting .NET 4.0 to install with the AutoCAD deployment bundle (via a Configuration Manager 2007 unattended deployment), because I feel it's bad to try to do it that way.&amp;#160; I recommend deploying .NET 4.0 as a separate package/advertisement, in advance of deploying AutoCAD 2012.&amp;#160; The only reason I bother with DirectX like this is because it's a custom DirectX installation (from Autodesk, not me), so it fits more logically with the AutoCAD deployment, than as some sort of general Windows platform update.&amp;#160; Basically, you would never deploy this without AutoCAD 2012, while .NET 4.0 on the other hand would be.&lt;/p&gt;  &lt;p&gt;I hope this wraps this boring, ugly, depressing saga up with no hanging threads.&lt;/p&gt;  &lt;p&gt;Drop a comment (reply) here if you have any helpful advice for making this work better/faster/easier than I've described.&amp;#160; We'd love to hear it.&amp;#160; I'd love to put the final nail in this coffin and move along actually.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-6078423718892873662?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/6078423718892873662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=6078423718892873662' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6078423718892873662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/6078423718892873662'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/acad-2012-directx-final-chapter.html' title='Acad 2012 DirectX - The Final Chapter'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-8103882373128904085</id><published>2011-09-25T14:37:00.001-04:00</published><updated>2011-09-25T14:37:31.825-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='articles'/><title type='text'>10 Easy Ways to Screw Up a Good Computer</title><content type='html'>&lt;ol&gt;   &lt;li style="margin-bottom: 8pt"&gt;Install too much crap on it &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Don't install a decent anti-virus product &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Never defragment the hard drive &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Never install updates and service packs &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Don't vacuum out the dust and dirt &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Let a lot of other people use your computer &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Never clean out the various &amp;quot;temp&amp;quot; garbage files &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Never reload it from what Dell/HP/BestBuy, etc. install on it &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Install one of those computer &amp;quot;fix-up&amp;quot; products advertised on TV &lt;/li&gt;    &lt;li style="margin-bottom: 8pt"&gt;Never seek education on how to use it more effectively &lt;/li&gt; &lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7801766992264242251-8103882373128904085?l=skatterbrainz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skatterbrainz.blogspot.com/feeds/8103882373128904085/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7801766992264242251&amp;postID=8103882373128904085' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8103882373128904085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7801766992264242251/posts/default/8103882373128904085'/><link rel='alternate' type='text/html' href='http://skatterbrainz.blogspot.com/2011/09/10-easy-ways-to-screw-up-good-computer.html' title='10 Easy Ways to Screw Up a Good Computer'/><author><name>David Stein</name><uri>https://profiles.google.com/110918701133252279727</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-XlfmeOwRpq8/AAAAAAAAAAI/AAAAAAAAJdg/_4F5FKJ2EiI/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7801766992264242251.post-4246649190720702893</id><published>2011-09-24T12:26:00.001-04:00</published><updated>2011-09-24T12:26:36.368-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='employment'/><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='management'/><category scheme='http://www.blogger.com/atom/ns#' term='career'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>College Degree vs. Cert vs. Experience</title><content type='html'>&lt;p&gt;At this point in 2011, the Information Technology field is doing very well. For whatever reason, the number of jobs in nearly all IT fields are more plentiful than they've been in almost four years.&amp;#160; Many businesses have finally come to the realization that cost-cutting is great, but not so much when applied to their own IT operations.&amp;#160; It's like tossing out dead weight from a moving train, and then starting to unbolt and discard the engine.&amp;#160; Someone finally says &amp;quot;Wait! This is not a good idea!&amp;quot;, and they start working making sure the engine keeps working.&amp;#160; This is the phase we're in now.&amp;#160; Businesses are investing in IT to help leverage existing resources more thoroughly and find hidden nuggets to put to use.&amp;#160; We've all heard it for so long that it's become background noise, but it's actually happening, and not a minute too soon.&lt;/p&gt;  &lt;p&gt;For this reason, there are now more jobs in the IT field than we've seen in quite a few years.&amp;#160; This is especially true in the U.S.&amp;#160; Not as many as there were heading up to the Recession, but better than any year since, for sure.&amp;#160; Way better.&amp;#160; As a result, a lot of kids are starting to take another look at the IT field as a career choice.&lt;/p&gt;  &lt;p&gt;Ironically, part of what quelled interest in IT careers for most high schoolers between 2004 and 2008 was a media frenzy focusing on &amp;quot;outsourcing&amp;quot; to other countries.&amp;#160; U.S. kids would often tell their counselors and college recruiters that they didn't think the IT field was viable in the U.S. They would typically say it was because future jobs would be going to India, China and elsewhere.&amp;#160; That belief actually constrained future labor prospects for a few years to the point where many large corporations began ramping up their outsourcing to other countries to hedge their bets.&amp;#160; Belief often leads to perception, and perception guides action, as they say.&lt;/p&gt;  &lt;p&gt;But that effort hasn't panned out so well for many companies, for a variety of reasons and unforeseen market changes.&amp;#160; Some aspects of IT have proven to work very well in a global labor market, while others work best when kept in house.&amp;#160; So far, anyway.&amp;#160; This is true for any company, in any country, not just in the U.S.&amp;#160; This has led to a recent increase in internal IT hiring within the U.S. and indeed in many other countries.&amp;#160; I'm speaking here mostly about the U.S. market, since that's what I'm most familiar with (if anything).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What to Do?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is a topic (the headline of this post) that comes up quite often, especially coming from kids just about to leave High School.&amp;#160; I hear it from veterans about to part ways with the military after their term of service is about to end.&amp;#160; I hear it from people that work in other fields and want to try another option in life.&amp;#160; Those that are interested in pursuing a computer-related career of some sort,
