Windows Tech Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 30 June 2011

Things My Mother Taught Me

Posted on 05:15 by Unknown
Today would have been my mom's 83rd birthday.  She died at 69 unfortunately, but I think of her almost every day and pause every June 30th to think of something from way back in the brain vault to make me smile.  This year I thought I'd compile a list of things she taught me.  Not just implicitly or infusively, but actually taught me in some way or another.
  • To judge people by their actions not so much by what they say
  • To treat animals with kindness
  • To respect people's privacy.  Knock before entering.  Don't go through people's stuff
  • Ask before borrowing
  • NEVER burn bridges
  • Fess up if I break or lose something belonging to someone else
  • How to cook spaghetti, pancakes, hamburgers, hotdogs, eggs and bacon
  • How to sew simple stuff (buttons, tears, etc.)
  • How to perform first aid on bad cuts (I had quite a few growing up)
  • How to remove my own stitches
  • Stay calm under pressure
  • How to set the timing on a 1968 Ford Mustang the "old way"
  • What someone does in life has no relation to how important they are as a human being
  • Everyone is an expert at something, and a complete dumb ass at many other things
  • To appreciate the story in everything
  • To appreciate Zeppelin, Pink Floyd, The Rolling Stones, ELP, Yes, as well as Bach, Mozart, Zappa, Mickey Hart and Airto
  • Read books (I'm still playing catch-up)
  • You will always need something the day after you've thrown it away
  • Never make promises you cannot keep
  • Follow through on the promises you make
  • Scary looking people are usually not scary inside
  • History is not dull.  Textbooks are dull
  • People who don't pay for things have no value for those things
  • You have to learn about pain and happiness yourself. No one can teach them to you
  • Don't yell from the next room.  Come over and ask in a normal voice
  • Don't answer someone yelling from the next room until they come over and ask in a normal voice
  • Beauty and Kindness are rare in life because it makes you appreciate them more
  • It always feels better to earn something
  • Don't make fun of other people.  You don't know what they feel inside
  • Defend yourself. No one else will
  • How to remove a Tick
  • Drink water before you go out to work in the heat
  • How to solder electrical connections
  • How to read the PDR and Goodman & Gilman's books
  • Hugs are important
Read More
Posted in family, life, people, thoughts | No comments

Wednesday, 29 June 2011

Done Flip-Flopping

Posted on 16:37 by Unknown

I apologize for the flip-flop waffling insanity over WWA.  I submitted a formal request to SourceForge to nuke the project.  It will be no more.  2011 will be a watershed year for me and my family and this is like step one.  Even if I’m a little late to the party.  Just sayin.  I’m sure that this post makes absolutely no sense to anyone whatsoever.  That’s ok.  Neither did I.

Read More
Posted in blogs, life, projects, wwa | No comments

Thursday, 23 June 2011

Interview Warnings for the Interviewee

Posted on 18:19 by Unknown

story.bad.interview.giWe’ve all read a lot of things to watch out for when interviewing potential candidates for filling position vacancies.  There’s plenty of horror stories to go around, and most of them are based at least in part on fact. I’ve experienced my share of bad interviews from the side of the employer and doing some questioning. 

 

Some of my personal favorite lines from candidates include the following:

“What do I know about [product]?!  It’s more like, what do I NOT know!”

“I don’t write scripts.  That’s for minions to do.”

“Why do I got to know how to speak clearly? I’m applying for a IT job.”

“I can tear apart and fix an iPod and an Xbox 360 on my own.”

But what about the things to watch out for in a potential employer?  You know, the small, even subtle clues hidden within innocent comments strewn throughout your interview discussion that may reveal a horrific nightmare awaiting you on your first day of work.  I’ve learned many of these first-hand, so I can vouch for their validity.  Here’s a few to take notice of:

“We do not write any code here. Everything is off-the-shelf or out-of-the-box”

Translation: We are too ignorant and scared to death of tinkering with our precious technology.  We might break something.  Change is evil.  Things should remain unchanged forever.  An object in motion tends to stay in motion unless acted upon by dangerously unapproved forces which must be prevented at all costs.

“This position requires a wide range of software, hardware, networking, storage, database, programming, web development, and helpdesk expertise.”

Translation: We are going to dump a mountain of shit on your head and pay you less than what an expert in any one of these “skills” would normally earn.  It also means our top priority is cutting costs (one person, many hats) rather than accomplishing a meaningful improvement.  You will work insane hours and either burn out or check into a rehab clinic within a year.

“We are a 100% [vendor name] shop here! We don’t even consider other vendors.”

Translation: We have drank (or drunk?) the Kool-Aid from the crotch of our vendor masters. We expect you to do the same. Making bold claims is higher priority than searching for a truly optimal (and cost-effective) solution. If the interviewer also happens to be wearing vendor apparel (shirts, ball caps, coffee cups, underwear, tampons, etc.) be especially careful. This is not going to be a very open-minded shop to work in.

“We are strictly a nine to five operation here”

Translation:  Hours trump innovation and quality.

“We let the last guy go because he lacked the skills we needed”

Translation: We will talk shit about someone you don’t know in front of people they don’t know.  What will they say about you later on.

“Training?  That’s something you do on your own time”

Translation: Run for the door.  Don’t say another word.

“I know the position you applied for is [x], but we really need a [y]”

Translation: We are desperate!  DESPERATE! We may have had several key personal up and quit suddenly and we are doing everything in our power not to look scared shitless.

“Have you worked with Excel databases before?”

Translation:  I am a complete idiot from the Human Resources department, who was chosen to interview IT candidates and I have absolutely zero knowledge of IT terms, and concepts.  I probably won’t even remember this interview when you leave.  Good luck!

“How would you approach this project we just described?”

Translation: We are fishing for help by pretending to interview you, but really we are just picking your brain to do it ourselves and have no intention of hiring you or anyone else.

Read More
Posted in business, employment, interviews, jobs, social stuff, technology, work | No comments

Tuesday, 21 June 2011

The Low-Hanging Fruit: 5 Quick Projects for Your Windows Network

Posted on 03:50 by Unknown
So you have a small business environment with a handful of employees and computers. Maybe you have a few dozen computers. Maybe you’re so busy running around tending to user needs and putting out fires that you haven’t stopped to take a breath and prioritize where to dig your trenches yet.

Fear not. I’ve put together a short list of easy projects you can knock out in a few hours that will help shift the burden of your work either into the computers themselves or bestow your users with powers to solve their own problems ( or at least some of them ). Every minute you save each day adds up. The more time you free up, the more time you have to automate other tasks, thereby freeing up even more time. It’s a win-win-win and can easily turn into an exponential curve of goodness for you.


(1) Implement WSUS


Why? It will do a much better job of keeping your computers updated with current patches and service packs than Automatic Updates can ever do. It’s easy to setup. Easy to administer. It gives you a clear view of your environment.

Whether you have one server or two, you can drop WSUS on one of them and setup your own internal software updates management system. Automatic Updates are nice (aka Windows Update, aka Microsoft Update), but there are many update types that you cannot configure to automatically install (root certificates, optional updates, etc.). Plus, when you get WSUS up and running, you will quickly have a simple, easy, clear and concise view of your environment, including a direct view of which computers are getting updates and which are not.

Steps:
  1. Download and Install the WSUS 3.0 pre-requisites
    1. Microsoft Report Viewer Redistributable 2008
    2. Microsoft .NET Framework 2.0 (or later)
  2. Download and Install WSUS 3.0 Service Pack 2 (x86 or x64)
    1. Do not install on C: (or wherever Windows is installed). Choose a different local drive on the server to install and for storing updates locally.
  3. Configure your WSUS options and run an initial Synchronization
    1. Synchronize against Microsoft Update servers
    2. Set the schedule for off-hours (i.e. 2:00 AM)
    3. Select all the update categories except “Drivers” (my opinion only)
    4. Select only the products and platforms you have in your environment
  4. Configure a GPO to point your computers to the WSUS server for updates
  5. Come back in 24 hours to review the results
  6. Revisit the WSUS console every month to review and approve updates
Or use the TechNet guidance if you don’t trust me: click here

(2) Microsoft Security Essentials


Why? It’s a FREE and easy to deploy anti-virus/anti-virus product from Microsoft which also just happens to be pretty darn good. It’s also low-overhead compared with other vendor products in the same category (doesn’t tend to bog machines down nearly as much).
  1. Download and Install it on each computer
  2. Tip: Configure automatic “definitions” updates via WSUS
(3) VSS and Previous Versions


Why? Instead of users coming to you (email, phone, walk-up) to get deleted or corrupted files restored from backups, you can let them sort through the backups online and get their own restores without bothering you.
How: http://windows.microsoft.com/en-US/windows7/Previous-versions-of-files-frequently-asked-questions


(4) Group Policy Preferences


Why? You can easily configure a huge number of settings for your users with little effort.
  • Drive mappings
  • Printer mappings
  • Shortcuts
  • Environment variables
  • IE Home Page and Favorites
  • Registry keys and values (important: read this too)
  • Automatic Updates (or WSUS)
  • Screensavers and Lock features
(5) SharePoint Foundation Server 2010


Why? SPF 2010 has to be one of the easiest to implement intranet portal products ever. And it also happens to be FREE. Totally FREE.
Maybe you’ve tried previous versions of the free SharePoint product line like Team Services or WSS, but SPF 2010 is completely different. You can quickly take advantage of document libraries, discussion groups, forms libraries, custom lists, calendars and scheduling, and e-mail notifications.
  1. Download and Install SharePoint Foundation Server 2010 (read min. requirements)
  2. Get Started building your home page and add new pages/sites to start your journey
Additional Projects to Consider:
  • MDT 2010 (Microsoft Deployment Toolkit 2010) and WAIK
  • Saved Queries in Active Directory Users and Computers
  • More to come… 
Read More
Posted in active directory, automation, backups, group policy, network administration, sharepoint, wsus | No comments

Monday, 20 June 2011

SQL Query Functions for Configuration Manager 2007 Folder Trees

Posted on 20:29 by Unknown

When you look in the System Center Configuration Manager 2007 admin console, you should be familiar with "folder" structures with respect
to Packages and Advertisements.  However, when you want to determine the folder tree/path for a given package or advertisement programmatically, it takes a little patience and scratching.
 
There are two key SQL tables in the site database: Folders, and FolderMembers.  To start with, you can query the "FolderMembers" table to get the "ContainerNodeID" identifier value for a given Package or Advertisement by passing in the "InstanceKey" value.  This is actually either the AdvertisementID or PackageID value, which should begin with the 3-char site prefix (i.e. "ABC1234B", where "ABC" is the site code).  Once you get the ContainerNodeID, you can query for the Folder "Name" and “ParentContainerNodeID” values and begin walking up the logical folder hierarchy.  The functions below will help get you there.  The Function "CMFolderID" returns the ContainerNodeID for a given Package or Advertisement by name.  The result of that function call is then passed into the Function "CMFolderTree" to return a concatenated folder path using a fairly basic recursive SQL routine.
 
The only additional ingredients you will need to use these two functions are (a) the standard ADO enumeration constants definitions, and (b) a data source name connection (aka “dsn”) of some kind.  These were coded for use in ASP, but you can easily convert these to VBScript, KiXtart or PowerShell if you prefer. – Cheers!

Examples:

Package for application "My Stupid Application 2011" has an ID of "ABC1234X"
The console shows it under:

---\Packages
    +---\Engineering
          +---\Contoso 
                +---\Stupid Applications

nodeID = CMFolderID ("ABC1234X")
folderTree = CMFolderTree (nodeID )

returns: "Packages\Engineering\Contoso\Stupid Applications"

'----------------------------------------------------------------
' function: returns Folder NodeID from object name (package, advertisement, etc.)
'----------------------------------------------------------------

Function CMFolderID (instanceID)
Dim conn, cmd, rs, query, retval : retval = ""

query = "SELECT DISTINCT dbo.FolderMembers.InstanceKey, dbo.FolderMembers.ContainerNodeID, " & _
"dbo.Folders.Name FROM dbo.FolderMembers INNER JOIN " & _
"dbo.Folders ON dbo.FolderMembers.ContainerNodeID = dbo.Folders.ContainerNodeID " & _
"WHERE (dbo.FolderMembers.InstanceKey = '" & instanceID & "')"

Set conn = Server.CreateObject("ADODB.Connection")
Set cmd = Server.CreateObject("ADODB.Command")
Set rs = Server.CreateObject("ADODB.Recordset")

conn.Open dsn

rs.CursorLocation = adUseClient
rs.CursorType = adOpenStatic
rs.LockType = adLockReadOnly

Set cmd.ActiveConnection = conn

cmd.CommandType = adCmdText
cmd.CommandText = query
rs.Open cmd

If Not(rs.BOF And rs.EOF) Then
retval = rs.Fields("ContainerNodeID").value
End If
rs.Close
conn.Close
Set rs = Nothing
Set cmd = Nothing
Set conn = Nothing
CMFolderID = retval
End Function


'----------------------------------------------------------------
' function: returns concatenated chained folder path string for object
'----------------------------------------------------------------

Function CMFolderTree(NodeID)
Dim conn, cmd, rs, query, retval : retval = ""

query = "WITH ParentChildRels (ParentContainerNodeID, ContainerNodeID, " & _
"Name, HierarchyLevel) AS " & _
"(SELECT ParentContainerNodeID, ContainerNodeID, Name, 1 as HierarchyLevel " & _
" FROM Folders " & _
" WHERE ContainerNodeID='" & NodeID & "' " & _
" UNION ALL " & _
" SELECT " & _
" r.ParentContainerNodeID, r.ContainerNodeID, r.Name, " & _
" pr.HierarchyLevel + 1 AS HierarchyLevel " & _
" FROM Folders r " & _
" INNER JOIN ParentChildRels pr ON " & _
" r.ContainerNodeID = pr.ParentContainerNodeID " & _
") " & _
"SELECT * FROM ParentChildRels " & _
"ORDER BY HierarchyLevel DESC, ParentContainerNodeID, ContainerNodeID, Name"

Set conn = Server.CreateObject("ADODB.Connection")
Set cmd = Server.CreateObject("ADODB.Command")
Set rs = Server.CreateObject("ADODB.Recordset")

conn.Open dsn

rs.CursorLocation = adUseClient
rs.CursorType = adOpenStatic
rs.LockType = adLockReadOnly

Set cmd.ActiveConnection = conn

cmd.CommandType = adCmdText
cmd.CommandText = query
rs.Open cmd

If Not(rs.BOF And rs.EOF) Then
cols = rs.Fields.Count
rows = rs.RecordCount
Do Until rs.EOF
If retval = "" Then
retval = rs.Fields("Name").value
Else
retval = retval & "\" & rs.Fields("Name").value
End If
rs.MoveNext
Loop
End If
rs.Close
conn.Close
Set rs = Nothing
Set cmd = Nothing
Set conn = Nothing
CMFolderTree = retval
End Function
Read More
Posted in asp, config manager, programming, sccm, scripting, sql server, vbscript | No comments

IT Jobs in Hampton Roads

Posted on 08:24 by Unknown

My employer, Endurance Network Services, has openings for two qualified Systems Engineers.  These are full-time positions in the area of Norfolk / Virginia Beach, Virginia.  ENS is a great place to work and grow.  The following qualifications are desired:

 

·         Windows Server 2008, 2008 R2

·         Active Directory

·         Exchange 2007 or 2010

·         VMware ESX

·         Storage Area Networks (SAN) – enough to work with ESX HA

·         Cisco networking (low-to-moderate experience)

·         Some experience with Backup Exec, Barracuda, AntiVirus apps, etc.

·         Client-facing skills for face-to-face with customers on a daily basis

·         Technical writing skills for assessments, etc.


If you are seriously interested, contact me for more details and to schedule an interview:  ds0934 (at) gmail (dot) com

Read More
Posted in | No comments

Saturday, 18 June 2011

First Hampton Roads VMware Users Group Meeting

Posted on 16:15 by Unknown

We finally going ahead with starting a VMware User’s Group.   Although I am still working with VMware on the official sanctioning of a user’s group for Hampton Roads, I want to get started before everyone starts their summer vacations J.

 

S.L. Nusbaum Realty has graciously volunteered to host our first meeting at their corporate facilities:


Endurance Network Services has agreed to provide us with some refreshments.

 

June 28, 2011.  The current schedule is for a mixer from 5:30PM – 6:00PM on the deck to be followed by some formal information from 6:00PM – 7:00PM.


At least one vendor presentation will be made during this time.  I believe that Acronis is going to be able to provide us with a presentation of the June 20th release of virtual backup and recovery software, version 11.

 

Please share this invitation with any co-worker, friends or other associates that may have an  interest in virtual environments.  Although are focus is going to be related to VMware.  There are definitely overlaps that we can all benefit from.

 

I am going to ask you to RSVP by June 24th to insure that we have enough refreshment and space for everyone to enjoy and benefit from the occasion.   I hope to rotate the hosting around to multiple locations as this continues to allow for each of us to varying commutes to these events.

 

Contact Karlow Kroon for details and location information ( KarlowKroon at cox dot net )

THANX and looking forward to seeing you there!

Read More
Posted in hampton roads, social stuff, technology, vmware | No comments

Friday, 17 June 2011

Windows Web Admin (WWA) Updates

Posted on 06:15 by Unknown
Ok, so I killed the project, officially, yet I've posted some recent updates. Now you know why I chose "skatterbrainz" as my moniker. No worries. I can explain:



WWA is actually a stepchild of several customer projects in production environments. A more recent project required me to dust it off again and borrow pieces from it. That in-turn led to me rolling new features back in. So while the public version of this beast is semi-supported, the production implementations are moving ahead full speed. I've tried to snapshot the more useful (and general) changes to roll back into the public version, and that has led to a life of its own.



I posted build 2011.06.15.001 two days ago. This is a major update. Way too many changes to list here (ok. Maybe not "too many", but I am definitely "too lazy"). However, one of the core modifications caused problems with two key modules that wasn't discovered until this morning.



So, this morning I posted build 2011.06.17.001 to close that gap. You can download the source code at http://wwadmin.sourceforge.net.



You can also post your reviews, comments, gripes, bitching, complaints, praises and whatever there as well. If you really want to help me feed my kids, you can donate via PayPal also, but I don't expect any donations. Just sayin :)



I may continue to post updates, but they won't be nearly as often. If you need or want a particular feature added or enhanced, just let me know.



Cheers!
Read More
Posted in | No comments

Tuesday, 14 June 2011

Barriers to Change in the IT Department

Posted on 16:10 by Unknown
If you listen to vendors and book authors, you'll quickly come to believe that everyone working in the IT world on this planet is moving ahead of you and you are falling behind.  That is: UNLESS you adopt the newest, latest, greatest, coolest, neatest, most awesome increditastical technology/product (the one they are pushing in your face).

Don't buy that storyline.

Think you're the only person still using VBScript and not moving into PowerShell?  Wrong.
Think you're the only person not building web sites with ASP.NET?  Dead wrong.
Think you're the only person not entirely done migrating your data center to virtual services?  Nope.

The problem isn't that IT folks resist change.  Ok, well, a lot of them do (ironic, isn't it?).  It's really a pretty simple story:

Time and Budget.

Especially so in the current stinky economy, where many IT departments are understaffed, underbudgeted, and overstretched on things to do.  There's simply no time to stop and regroup on a new thing.  Sure, some will argue the infamous sales-pitch line: "You can't afford NOT to".  Logically, that is the most illogical dumbass statement ever invented by sales people sitting around a lap dance couchset in a Vegas strip club.  They sure get a lot of mileage from it though.  We'd all love to be 100% on par with the current trends.  We've been beat over the head again and again with a tube sock filled with the wood screws of technology vendor demos and presentations.  We get it.  The new stuff is awesome.

But right now, I can't get my CIO/CFO/CTO/CxO to buy me some slack (and time) to learn new things in my un-budgeted lab, and my wife/husband/significant-other will soon start looking for a new significant other if I continue to carve out personal time for the benefit of my employer.  I've heard this story so many times I can lip synch it to the tune of anything by Lady Gaga.  We're overstretched.

Now, let me spew some disclaimers: I'm a consultant.  I don't necessarily fit into this particular scenario, BUT I see it and experience it all the time through contact with customers and emails and phone calls.  The IT world is busy.  Too busy to rewrite all their scripts in PowerShell.  Too busy to move all their databases from SQL 2005 to 2008 R2 (and soon Denali).  Too busy to get the last two servers virtualized.  Too busy to finish migrating all the desktops, laptops and tablets to Windows 7.  But they're trying.  They are trying in between answering phone calls from absolute dumbass users with stupid questions, gripes and requests about things like Little Kitty screensavers, dancing flower mouse cursors and how to print their grandkids photos.  They're busy fixing the printer that someone keeps jamming.  Emptying mailboxes for users that refuse to and wonder why it's causing problems.  Busy trying to test all the patches every month AND get all the machines patched, including the ones that users like to turn off every night.

Busy Busy Busy.

So, if you're starting to feel panicky about falling behind: don't.  Relax.  There will be time to catch up.  Fit it in when you can.  When you get some precious time at the office, take advantage of it.  Keep your personal time for your personal life.  DO NOT sacrifice your personal life for technology.  That's a short term gain for a long term loss.

Cheers!
Read More
Posted in employment, jobs, network administration, powershell, technology, vbscript, windows 7, work | No comments

Monday, 13 June 2011

Opinions are like...

Posted on 13:56 by Unknown
Well, it's time for another mindless rant.

Today I was standing idle, minding my own business for a few minutes enjoying a Starbucks latte.  Then some fat slob passes me and makes a snide comment about "Starbucks is stupid".  Last weekend, someone walked by me in Lowe's and commented on my Red Sox ball cap, saying "Boston, pffft."

What it is about some people that makes them feel compelled to:

A. Form an opinion/judgement of others
B. Feel compelled to share that asshole shit-brained opinion with strangers
C. Become offended if judgement is aimed back at them.

I don't know.  Stupidity?

So, you don't like Starbucks.  Maybe (very likely) you also don't like certain music, sports, politicians, actors, races and religions, hair cuts, clothing styles, cars, colors, sounds, light, whatever.  Who cares.  Nobody cares what you care about.  Nobody cares what I care about either.  Like most people, I certainly do not walk around and aim judge mental comments at strangers.  But a significant minority of idiots does just that.

So, when he said that I should have just responded "well, you're just fat" or "you don't like Starbucks and I don't like people who drive up our aggregate health care costs.  We're even.  Shut up."  You go on eating until your heart explodes and I will go on enjoying my Starbucks.  Did that offend you?  Well, maybe you shouldn't have started it.  If you shoot first, expect to get shot at.

By the way, to the person that said the Boston comment, I politely told to fuck off.  They turned back and stopped.  I smiled.  They moved on.  Life is good.

Conclusion:  If you feel compelled to throw judgments at people, be prepared for equally angry/stupid comments being fired right back.  Opinions are like assholes: Nobody wants to see yours. Keep it to yourself.  Blog about it all day.  Keep your mouth shut in public.

This has been a message from Citizens Concerned about Idiots in Public.
Read More
Posted in people, society, thoughts | No comments

Saturday, 11 June 2011

Refactoring

Posted on 10:33 by Unknown

I love this word.  I love what it means.  I love what it implies and what it stands for, both in the literal and theoretical sense.

In short, it means “a disciplined way to restructure code”, which is obviously a software development reference.  But it’s much more than that.  MUCH more.

Refactoring, in some ways, parallels material and structural concepts such as “single instance storage” or “refinement”, and because of that it extends out way beyond software or even computers.  It applies to life in general.

Refactoring comes into play when you clean your desk and organize your things.  It comes into play when you sit down to evaluate your plans in life.  It comes into play when you experience a major change in life and are forced to adjust your routine.

In practical terms, refactoring simply means that you look for ways to optimize and simplify something without sacrificing quality or capability.  Even sports teams refactor when it comes to strategy, position assignments, management and recruitment.  Businesses refactor all the time, looking for improvements in efficiency to reduce costs and raise profit margins.  Evolution and extinction are probably the simplest and most direct examples of refactoring.  Refactoring is a natural part of life itself.

Any time you look for ways to combine steps, to do more with what you already have, or to find ways to reuse things for entirely new purposes, you are refactoring.

Enjoy!

Read More
Posted in society, software development, technology, thoughts | No comments

Hope

Posted on 09:54 by Unknown
Read More
Posted in science, technology | No comments

Friday, 10 June 2011

Mapping Out Windows 7 Automation Options

Posted on 18:56 by Unknown

This is another one of those projects I’ve had swimming around in the back of my puny brain for a long time.  Think of it like an ant rollerskating around the inside of a vacant Walmart building.  Yeah.  Kind of like that.

The idea was to map out various “common” IT chores against the four most common methods for automating them and checking which ones work best and which are the “easiest” to implement.  Is it perfect?  Ha!  If you know anything about me you’ll know it’s at least sincere and fairly thorough, but I cannot claim 100% accuracy.  It is a living document since I’m using one of Google’s coolest and most flexible tools: Google Sites List Page template.  It lets you define your own list structures, including data types per column (text, date, URL, checkbox, drop-down, etc.) and specify the default sorting options. 

I plan on adding to this and updating it as time permits and as something new comes up.  I welcome any input and corrections, so chime in and I will be sure to post credit for submissions/corrections on the page.  I hope it helps system admins to more quickly pick an option to solve an automation challenge using one of the many built-in features of Windows 7 and Windows Server 2008 R2.

https://sites.google.com/site/skatterbrainz/automation

Please check it out and let me know what you think?  Thank you!

Read More
Posted in environment, network administration, registry, scripting, windows 7, windows server, wmi | No comments

Thursday, 9 June 2011

Group Policy vs Scripting. Version 2011

Posted on 21:09 by Unknown

I know I repeat myself quite a bit.  My kids tell me that.  My wife tells me.  My dog tells me as well.  That’s ok.  Sometimes things need repeating.

I’ve worked with scripting and programming, in various languages and on various platforms, for about 22 years now.  I still do a lot of scripting and code development for servers, desktops, web applications, infrastructure, and just for the hell of it.  Ok, at times it’s a lot of for-the-hell-of-it, but that’s ok, since I have no life whatsoever it makes me forget that while I curse and swear at my screen.

So why does it freak out my colleagues when I respond to most questions involving automation with “have you looked at using Group Policy?” ?  Or when someone says “I need to push out this registry/file/shortcut/scheduled task/drive mapping/printer mapping/environment variable (or whatever) to 50,000 computers by tomorrow!” and I say “Group Policy Preferences” and slurp the bottom of my cup through the straw loudly without blinking.

Yes.  Group Policy, and the newer Group Policy Preferences extensions, are better, easier and quicker to use for solving most sys-admin problems than scripting.  There are exceptions of course (hey, EVERY rule has exceptions), but they are rare.  To sum it up in the simplest “general rule”:

- If you need deploy or push a configuration change “outward”, use GPO or GPP

- If you need to collect something or some things from desktops and servers, use scripting (or System Center Configuration Manager 2007)

Does that make sense?  Again: this is a general rule, and it applies mostly to environments with Windows Vista or Windows 7 and Windows Server 2008 or 2008 R2.  However, there are extensions for GPP to run on Windows XP and Windows Server 2003 (eeew!).  I say “mostly” because even though GPP is applicable to XP/2003 and newer versions, there are hundreds of base-level Group Policy Object settings which are only applicable to Vista/2008 and newer versions.  Since nothing works in a vacuum, it really takes a comprehensive approach to judiciously leverage GPO settings with GPP to accomplish real automation results.

So, whenever you are facing a task involving the deployment of a configuration change to your environment, always, ALWAYS, consider Group Policy and Group Policy Preferences FIRST.

Read More
Posted in active directory, group policy, network administration, windows, windows server | No comments

Thoughts on Testing Database Connectivity

Posted on 07:28 by Unknown
When using a script or a compiled program to test connectivity to a database, there are two general approaches – of which only one is preferred: 



** Test the Connection



** Test the Connection and Table or View access

 

The first method simply attempts to open a connection to the database and returns success or failure (or the error details).



The second method opens a connection AND attempts to read from a table or view and returns some result.

 

The second method is correct. The first method is bullshit.  Why?  Because it doesn't really test if the application can read the resources.  In fact, you could argue that if the application requires writing to the database, that the test should attempt to write to a table.  I've seen so many cases where someone tested the connection and was perplexed as to why their application would still not work.  The root cause in every one of those cases was permissions within the database environment which prevented the application context from performing the actions it expected to accomplish.

 

Testing database writes as part of a routine "test" verification can be messy, so I usually don't recommend that except for unique situations.  In most cases, just test a read operation against the tables or views and hopefully that will provide sufficient validation for your scripts or applications.  I'm not going to bother posting examples because the Internet is overflowing with plenty of examples already (if you search for them you will see what I mean).  In any case, I hope this helps.
Read More
Posted in | No comments

Wednesday, 8 June 2011

Dear Software Developers v2.0...

Posted on 07:00 by Unknown
If you are currently developing software which will be available to the public for installation on their desktops, servers, phones, tablets, etc. and you are NOT building it to support silent/unattended installation AND silent/unattended uninstallation: go find a land mine to step on.
Read More
Posted in | No comments

Tuesday, 7 June 2011

Retraction Time

Posted on 19:52 by Unknown

I’m a bit slow, but I eventually get around to admitting my mistakes.  Ok, well, most of them.  I have to save a few apologies for those long spells when I don’t make any mistakes (those last about 15 seconds).

R.K. kindly corrected my mention about the Autodesk University 2011 course listing.  The listing for the System Center Configuration Manager course with Nate Bartley and Jerry Milana was actually a leftover from AU 2010.  My bad.  Sorry to spin everyone up.

Read More
Posted in autodesk, blogs, thoughts | No comments

Dear Software Developers...

Posted on 06:13 by Unknown
Good morning Coders,



I hope your day has started off well? (Can you already tell this isn't going to end well? Heh heh...)



Hopefully, you've finished off your bag of Skittles, your third Mountain Dew or second can of Rock Star, and are looking forward to hitting your favorite X-men Edition Signature series ceramic bong at lunchtime. A good day so far.



I would like to make a few small suggestions on behalf of all IT minions around this big ball of dirt floating in space:



Please be consistent. Please use a common naming and version method for all of your products, components, files, folder names, services, processes, threads, interfaces, API modules, documentation, support files, registry keys, junctions and reparse points?



Is this really too much to ask?



So, you say "but Dave, we have 9,000 skittle-swilling bastards spewing code in 24 countries and 12 languages. How do you expect us to be that consistent?"



Write a memo. Send an email. Hold a meeting. I don't know and I don't care. McDonalds can do it, so can you. Or are you saying you cannot perform at the level of a McDonalds worker? Wow.



Pick a 3 or 4 character label that uniquely identifies your company and use it on everything you do. EVERYTHING!



Stop with the "Shitware 2011" and "Crapware 14.5" and "Doucheware 0.0.002.9a" versioning and pick ONE format for everything. Okay?!



Pick ONE standard for publishing updates. Zip,MSI, EXE, MSP, whatever, just pick ONE f-ing format and stick with it. Survey your customers (whoa! What a concept!) To see what works best for them.



Fill-out the property tags on all of your DLL and component files. Company, product, version. You know: all that painfully complicated stuff. I know it might cut into your bong-loading time, but it'll make a better product.



Mm-kaay??!



Jesus! Shitty coders piss me the f**k off.
Read More
Posted in | No comments

Monday, 6 June 2011

10 Microsoft Tools You Might Not Know Exist

Posted on 19:41 by Unknown

Before you smirk and roll your eyes, I’ll be the first to say that at least once a month I run into another tool I never knew Microsoft published.  No, I’m not talking about Steve Ballmer, but real software tools.  Some you may know, some you may not.

  1. Microsoft IT Environment Health Scanner
  2. Microsoft Active Directory Topology Diagrammer
  3. Client Profile Configuration Designer
  4. Risk and Health Assessment Program for Active Directory (ADRAP)
  5. Microsoft Network Monitor 3.4
  6. Web Application Configuration Analyzer
  7. Microsoft Deployment Toolkit (MDT) 2010 Update 1
  8. Application Compatability Toolkit (ACT) 5.6
  9. Windows Server Update Services 3.0 SP2
  10. Microsoft Assessment and Planning Toolkit (MAP)
Read More
Posted in applications, microsoft, utilities | No comments

Autodesk University 2011

Posted on 12:14 by Unknown
First off, all I can say that I wish I were going, but I'm not able to. Financially, it is beyond my reach this year. I've attended four of them, the most recent in 2004, so I'm dating myself badly of course. LA in 1997, Philly in 1998, Boston in 1999, and Vegas in 2004. All of them were well worth the trip, except for maybe Boston in 1999

(Although, Boston itself was a blast).



But what I wanted to mention is that I saw a session that caught my eye:



CM330-2 "Installing Autodesk(r) Applications with Microsoft(r) System Center Configuration Manager"



Speakers are: Nate Bartley and Jerry Milana



I've known Jerry for quite a few years, so I'm sure that will be a very good session. I don't know Nate, but given the subject matter and Jerry as co-speaker, I have to assume he is also a very worthy speaker. In all, that should be a great session for anyone working in a network environment, even if you do not yet own a product like Configuration Manager.



As a small favor, I'd like to ask: who is planning to attend that session?



If your are, or are even thinking about attending it, send me an email at ds0934 (at) gmail (dot) com.
Read More
Posted in | No comments

Friday, 3 June 2011

Photos from Tech-Ed 2011 Atlanta

Posted on 17:28 by Unknown

IMG00047-20110516-1210

Read More
Posted in conferences, photos | No comments

Wednesday, 1 June 2011

Windows 7: Default User vs All Users

Posted on 07:57 by Unknown
A lot of confusion seems to occur with understanding the difference between the "Default User" profile, and the "All Users" profile on Windows 7.  This applies, conceptually, going back to Windows 2000, Windows XP and on up to Windows7 (as well as Windows Server 2000, 2003, 2008 and 2008 R2).  From what I've seen this shows up with software developers and software packagers, but also with script developers.

 



The "Default User" is basically a template for any new user logins for a given computer.  The net result however is that the template is applied "per user", rather than "per computer".  So, ultimately, if you make a change to the "Default User" profile, and there are already existing user profiles from previous logins, they will not receive the changes, only new user logins will receive them.

 



The "All Users" profile is a "per computer" feature that applies to all users, existing and new.

 



Default User (aka "%SysDrive%\Users\Default User"):



"C:\Users\Default User\Start Menu\Programs"

 



All Users (aka "%AllUsersProfile%"):



"C:\ProgramData\Start Menu\Programs"

 



As a test, try this out:



1.  Create a folder under "C:\Users\Default User\Start Menu\Programs" named "Default Users Folder"



2.  Create another folder under "C:\ProgramData\Start Menu\Programs" named "All Users Folder"



3.  Log off and log back on to the computer



4.  Click the Start Menu and click "All Programs".  Scroll down to view all folders on the Start Menu.  Which do you see?



5.  Log off and log on as a different user (a user that has NEVER logged onto this computer before).



6.  Click the Start Menu and click "All Programs".  Scroll down to view all folders on the Start Menu.  Which do you see now?

 



I hope this helps gain a little more insight into how these two user profile features behave.
Read More
Posted in | No comments

Reminder: WWA is Toast

Posted on 05:28 by Unknown
I thought the word had gotten out, but for anyone that missed it:

Windows Web Admin is no longer being developed or updated. I will leave build 2011.05.13.001 online for another month or so. The project site is still http://wwadmin.sf.net.

Now, back to your regularly-scheduled Wednesday, already in progress.

Read More
Posted in | No comments
Newer Posts Older Posts Home
Subscribe to: Posts (Atom)

Popular Posts

Categories

  • a
  • activation
  • active directory
  • advertising
  • agile
  • agility
  • amazon
  • american
  • apple
  • application virtualization
  • applications
  • art
  • articles
  • asp
  • augi
  • authors
  • autocad
  • AutoCAD Autodesk
  • autodesk
  • autolisp
  • automation
  • automotive
  • backups
  • batch
  • beer
  • beta
  • blackberry
  • blogs
  • bongloads
  • book
  • books
  • Books writing kindle amazon technology business projects
  • browsers
  • business
  • cad
  • career
  • certification
  • chrome
  • city government
  • civilization
  • cloud services
  • cmd
  • cmmi
  • comedy
  • command
  • community
  • computers
  • conferences
  • config manager
  • consultants
  • consulting
  • contracting
  • cranium drainium
  • crapware
  • culture
  • data center
  • data mining
  • databases
  • deployment
  • directx
  • DLL
  • domains
  • dumb
  • earth
  • economy
  • editor
  • education
  • election
  • elections
  • employment
  • engineering
  • entertainment
  • environment
  • error monitoring
  • events
  • exchange
  • facebook
  • family
  • firefox
  • flexnet
  • fud
  • fun
  • funny
  • games
  • gary vaynerchuk
  • gmail
  • google
  • government
  • group policy
  • hampton roads
  • health
  • history
  • holidays
  • home
  • html5
  • humor
  • hyper-v
  • iis
  • industry
  • infrastructure
  • installation
  • installshield
  • internet
  • internet explorer
  • interviews
  • jobs
  • jtbworld
  • kindle
  • kixtart
  • lab setup
  • languages
  • ldap
  • learning
  • legal
  • licensing
  • life
  • lifecycle
  • linux
  • lisp
  • logging
  • management
  • manufacturing
  • marketing
  • markets
  • mdop
  • mdt
  • medical
  • messaging
  • microsoft
  • microsoft access
  • military
  • mountains
  • movies
  • mozilla
  • music
  • nature
  • network administration
  • news
  • nook
  • nothing
  • office
  • open source
  • openoffice
  • opera
  • operating systems
  • oracle
  • osx
  • packaging
  • patches
  • people
  • photos
  • podcasts
  • policy
  • politics
  • powershell
  • predictions
  • process automation
  • products
  • programming
  • projects
  • psychology
  • publishing
  • rail
  • reading
  • registry
  • religion
  • reporting
  • reviews
  • rsat
  • rss
  • safari
  • safety
  • sales
  • satire
  • sccm
  • scheduling
  • science
  • scripting
  • search
  • security
  • servers
  • services
  • sharepoint
  • shopping
  • sms
  • social stuff
  • society
  • softgrid
  • software assurance
  • software deployment
  • software development
  • software packaging
  • sony
  • speaking
  • sports
  • sql express
  • sql server
  • statistics
  • Statistics news marketing
  • steve jobs
  • stories
  • stuff
  • stupidity
  • symantec
  • sysinternals
  • system center
  • systems architecture
  • t-sql
  • taxes
  • technet
  • technical support
  • technology
  • TED
  • ted talks
  • testing
  • textpad
  • thoughts
  • traffic
  • training
  • transportation
  • travel
  • troubleshooting
  • tutorials
  • twitter
  • ubuntu
  • unattend
  • unemployment
  • updates
  • upfront ezine
  • utilities
  • vacation
  • vba
  • vbscript
  • video
  • virginia
  • virginia beach
  • virtualization
  • visual lisp
  • vmware
  • vmware server
  • voting
  • war
  • weather
  • web
  • web browsers
  • web development
  • web sites
  • windows
  • windows 7
  • windows live
  • windows server
  • windows server 2012
  • windows8
  • winpe
  • wise
  • wmi
  • work
  • writing
  • ws08
  • wsus
  • wwa
  • x64
  • xml
  • ze frank

Blog Archive

  • ►  2013 (37)
    • ►  October (1)
    • ►  September (5)
    • ►  August (8)
    • ►  July (2)
    • ►  June (4)
    • ►  May (4)
    • ►  April (2)
    • ►  March (2)
    • ►  February (8)
    • ►  January (1)
  • ►  2012 (120)
    • ►  December (14)
    • ►  November (12)
    • ►  October (10)
    • ►  September (7)
    • ►  August (3)
    • ►  July (2)
    • ►  June (6)
    • ►  May (6)
    • ►  April (20)
    • ►  March (16)
    • ►  February (18)
    • ►  January (6)
  • ▼  2011 (343)
    • ►  December (15)
    • ►  November (23)
    • ►  October (27)
    • ►  September (35)
    • ►  August (29)
    • ►  July (17)
    • ▼  June (23)
      • Things My Mother Taught Me
      • Done Flip-Flopping
      • Interview Warnings for the Interviewee
      • The Low-Hanging Fruit: 5 Quick Projects for Your W...
      • SQL Query Functions for Configuration Manager 2007...
      • IT Jobs in Hampton Roads
      • First Hampton Roads VMware Users Group Meeting
      • Windows Web Admin (WWA) Updates
      • Barriers to Change in the IT Department
      • Opinions are like...
      • Refactoring
      • Hope
      • Mapping Out Windows 7 Automation Options
      • Group Policy vs Scripting. Version 2011
      • Thoughts on Testing Database Connectivity
      • Dear Software Developers v2.0...
      • Retraction Time
      • Dear Software Developers...
      • 10 Microsoft Tools You Might Not Know Exist
      • Autodesk University 2011
      • Photos from Tech-Ed 2011 Atlanta
      • Windows 7: Default User vs All Users
      • Reminder: WWA is Toast
    • ►  May (20)
    • ►  April (38)
    • ►  March (61)
    • ►  February (54)
    • ►  January (1)
Powered by Blogger.

About Me

Unknown
View my complete profile