Scott Alan Miller

Never Get Advice from a Reseller (or Vendor)

This is general business advice that often applies to IT but is certainly not limited to that realm alone.  Outside support in IT comes from two main sources: firms who are paid (by you) to advise you and firms paid (by you) to sell you something.  The first are what we generally consider consultants.  The second are what we call resellers.

The simple rule of thumb is – never, ever get advice from a reseller.  At least not general advice, at best very specific advice centered purely around only the products that that reseller sells.  This isn’t to say that resellers are bad, far from it.  In fact, the reason that you can’t get advice from a reseller is not because of them but is because of you – let me explain.

When we go to a company to get advice we must pay for that advice.  One way or another, nothing is ever free.  Resellers traditionally earn their money by providing whatever free advice we desire and then making their money by selling us a product that has been marked up to cover their costs and to provide for their profit.  This is fine, but as the customer we need to understand that we are only compensating that reseller if they convince us to buy a product or a service that they sell and we compensate them better the more of that product that they convince us to buy.  The reseller isn’t at fault here, we need resellers and we need them to make money in this manner.  The issue is going to them and attempting to get free, general advice – we are forcing them to either work for us for free or to sell us something whether it is the right thing for us or not.  We’ve backed them into the proverbial corner and the only reasonable response is for them to attempt to sell us what they offer.  That is, after all, their job.

This leads to an additional problem, of course, which is that resellers don’t have skilled, professional, general-consultants on staff – at least not as a rule.  So if you go to a reseller and ask for advice, that reseller is almost assuredly only trained and knowledgeable on the products that they sell themselves.  They may not even be aware of what other solutions are on the market or, if they do, they do not know them to the same depth as their own products and may be unaware of advantages and caveats that you might need to know to make a truly informed decision.  Even if they did, it is not in their interest to tell you about them – you are only going to compensate them if they sell you something.

This is not to say that resellers are not good, honest, hard-working folk with value for our industry.  They are, but they aren’t magically free consultants like many people expect them to be.  Resellers are there to add consulting and selection assistance, as well as warehousing, repair, logistics and other value-adds, solely around the products that they represent.  Trying to get general consulting from a reseller is like asking your Chevy dealer to advise you as to what vehicle to buy and hoping that they equally consider all major makes, models and types of transportation as well as the regulations and limitations of all of these and are able to apply this to your unique situation – including knowing when to tell you that you don’t need to buy anything at all.  Of course, all they will do is try to sell you the best Chevy that meets your needs whether the best option for you is to just walk, buy an Impala, take a cab or to buy a fifty foot deep-sea fishing trawler.  Even if they did have the expertise to look at the big scope of your transportation needs you aren’t willing to pay them unless they give a specific answer.  So we can expect that the answer we pay for is the one that we will get.

Resellers are useful only after the decision to buy the products that they sell has already been made.  A reseller can then help you choose the right product from the range that they have.  For example, if you are buying a server from a reseller, that reseller can help you to choose which options like drive types and sizes, out of band management and other add-ons you might want.  But even then, be wary that they are likely earning more to upsell you and will recommend unneeded extras or may advise making configuration changes without understanding the entire scope of the project and how those changes from your original requirements might affect you.

Attempt to limit the advice that you receive to very concrete items such as “does this particular model offer this particular feature that I am seeking?” and avoid subjective valuations between products “is this one fast enough or should I buy the bigger one?” or “how does this compare to your competitor’s product?”

When asking subjective questions you are actually pressuring the reseller into either making more money overselling to you or losing money while trying to find the most appropriate product.  Not only do they make more money (generally) selling you the more expensive item but it also mitigates their risk that they didn’t get you what you needed.  There is no reason for them to take on risk, they’ll just try to sell you as much as possible and, if you come back unhappy, they can say “well, we tried to convince you to get a bigger, faster model but you wanted to save money and this is what happens.”  So it is not in their interest in any way to size to your needs but always to pad for safety and profit.  A position that they are put in, again, by their customers.

In most cases, principal vendors are themselves a reseller so can be considered in exactly the same way.  If you call Dell to buy a product, they will sell you a Dell no matter what your needs are.  This is not their fault, they only have one job, to sell you Dell products and if you call them for advice they can only assume that you did so because you wanted to buy a Dell.  They are no more going to consult on what IBM product to buy as they are on what car to drive or if its a good time to sell your house and move to Florida.  But they are very helpful in making sure that the Dell product that you order is going to be the one that you wanted and that the extra parts that you are getting will work with that model.  That’s what they are there for.  They will figure out how long it will take to arrive, go over warranty terms as well as give you pricing and financing options.  These are all things that your general consultant cannot do.  The two roles are complimentary, not competitive.

A perfect example of this entire scenario is one that I see happen in the real world time and time again.  With the recent explosion in virtualization businesses are turning, en masse, to vendors to find out what they need in order to dip their toes into the world of virtualization.  What I see, over and over, is instead of being sold a reasonable virtualization setup they are often sold entire systems including storage and software that in no way meets their needs and, often, actually works against their needs while costing as much as ten to twenty times what a better performing, more reliable system would have cost.  Often they are upsold into a completely unreasonable category of product for their project and then caught by budget limitations and stuck skimping – leaving them with a crippled virtualization project that could have been completed successfully for a fraction of the money spent and leaving good room for growth over time as needed.

The issue, of course, is that turning to a vendor and asking for advice on virtualization products is exactly like saying “I have no idea what I’m doing, let’s see what you can sell me on.”  And honestly, once the vendor knows you don’t even have your architectural elements worked out before contacting them, they know that the sky is the limit.  The goose has arrived and all they have to do is wait for that golden egg to be delivered.

I’ve heard this exact scenario so many times, I can’t count.  Your vendor is not your friend.  They have one job to do – sell you as many products as possible.  If you ask them what you should buy they will tell you whatever you want to hear.  They will cut corners on safety items or management items that they feel you will not find flashy or cool and will sell you what they think you will get excited about or confused about.  They know their jobs well – they have to, it is a tough market.  A great example is vendors cutting storage costs by selling smaller than appropriate storage arrays and using risky array configurations to make the capacity cost less.  That the client is at heightened risk to a failing array doesn’t impact the vendor and is a very hard issue to quantify, so once the product is sold it is the customer’s concern not the vendor’s.

The answer to this is to leverage a general consultant.  A general consultant gets compensated by delivering good advice and not for selling you a product.  In theory a general consultant will earn a similar amount regardless of whether they convince you to install millions of dollars of products or to do nothing and use what you currently own.  A general consultant should be far more intimate with your environment than a vendor or reseller could ever be and should be able to speak to your technical staff, make presentations to the business and put their advice into the proper context for your business with insight into how the costs, risks and other factors will impact you specifically and advise on what they feel is more appropriate for your specific needs.

In reality you still have to consider the complete role of your general consultant.  Most often a general consulting firm will also offer broad support and implementation services.  These are loosely tied to their recommendations so caveat emptor applies as always, but since they are compensated in a far more direct manner (paid for their effort) they have a very real reason to deliver you what you are buying.  Even general consultants who have some ties to reselling often make a very small fraction on the resold goods as they do on the consulting so anything that puts their consulting work at risk is a major liability to them.  Make sure that any general consultant, if offering resold services, is not tied to them and works with other resellers or vendors as well.  Sometimes general consultants offer low cost reseller services as a loss leader or at minimal profit just to keep customers from feeling that they must turn to another company but would prefer if their customers did not use  that service – profits are often higher not reselling.

Your general consultant should be able to interface with your resellers or vendors directly or allow you to do so.  Having a consultant handle the transaction can be beneficial because it provides an integrated procedure and consultants are very unlikely to be persuaded to make snap decisions based on sales, “special deals” or to be sold on a different approach by a salesperson who has a specific product to push that month.  The consultant has little emotional tie to the purchasing process and so can be much more methodical and calculating.

Of course we must consider the opposite situation as well – how do we treat our service providers?  For example, if we go to a reseller over and over again asking for advice, making them generate quotes and generally spin their wheels and then buy nothing from them or very little we will, sooner or later, force them to either refuse to work with us at all or do something drastic like supplying less than accurate data or raising prices.  A good vendor or reseller will provide you with the best value when you treat them well.  Loyalty may seem to be dead in business transactions today, but this is not at all true.  Good relationships still pay off.

With consultants the need to treat them well is somewhat built into the equation – you generally pay for what you get so other than being friendly and respectful you don’t normally have too much to worry about as far as how you are structuring your relationship.  But even with a consultant there are still concerns.  If you pay for an “unlimited” service plan, use it well but don’t abuse it, for example.  Always make your consultant happy that you are their customer and, most likely, they will work hard to make sure that you are happy to be their customer too.

The most important concept to take away from this is that with any company with whom you do business, you should have some empathy for them.  Put yourself in their shoes and think about how your relationship with them is structured.  Are your goals mutually aligned?  Is it in both companies’ interests to act in the interest of the other?  Or have you arranged for an adversarial relationship where they can only win at your expense?

Keep in mind that you are the customer so, very likely, your consultant or reseller is, to some degree, at your mercy to make sure that your relationship is a healthy one.  In order to obtain clients they are often pressured into a position of accepting a less than ideal arrangement.  As the client, you have the opportunity to be the client that that consultant or reseller is excited to work for and will go out of their way to make happy.  The choice is very much yours to make in most cases.  Choose well because good relationships can work wonders for your business.

Ask a jeweler what to get your wife for your anniversary and he will say: “You can’t go wrong with jewelry.”

Ask a florist what to get your wife and he will tell you: “Women always love flowers.”

Ask a chocolatier and he will tell you that nothing makes a woman happier than chocolate.

Ask a consultant he will ask you: “What does your wife like?”

Share
Scott Alan Miller

7 Reasons It’s Time for Windows 7

What’s your reason for not upgrading to Windows 7? Many IT managers wait for the first service pack before deploying an OS upgrade; others update the operating system as part of a hardware refresh. Here are some advantages to upgrading.

1) Inevitability

If you have been watching Microsoft’s enterprise desktop operating systems over the past two decades then you are aware that there is a pattern emerging and that pattern places Windows 7 as the long term successor to Windows XP and that XP was the clear successor to NT 4.0.  Each of these were the golden child of the Microsoft machine, blessed with prime market positioning, lack of extreme overhauls and sporting a high level of polish.  As such, whether you are seeking the latest and greatest or just looking for the best desktop OS investment, Windows 7 meets your needs.  Windows 7 is here to stay and adoption rates are already very high.

Once you accept that Windows 7 is coming to your environment sometime over the next several years then the question truly becomes: “What are you waiting for?”  The sooner that you get Windows 7 in place, the sooner you can make the transition and the sooner you can start reaping the benefits of the latest technologies and nearly a decade of development since Windows XP originally released – and let’s face it, most shops are moving from XP to 7 today.  You will achieve your greatest benefits from Windows 7 the sooner that you put it in place giving your users maximum time to adapt to it and giving you more time to take advantage of its features.
2) Performance

One of the biggest complaints of users who switched to Vista from XP was a lack of performance.  Windows 7 addressed this very well and is more performant than Vista and has lower minimum requirements allowing it be used in the Netbook realm that had been previously reserved for Windows XP up through the Vista era.  Windows 7 runs nicely on Vista-era equipment and much of the XP-era equipment while taking good advantage of new hardware as well making it a good option for in-place software upgrades.

Having a Windows operating system that actually outperforms its predecessor on the same hardware is a major feat.  Traditionally an OS was only expected to be comparable or faster when used on hardware current to its release.  Unlike any other Windows upgrade, Windows 7 can be deployed onto existing hardware without needing hardware upgrades and you will still see small performance gains.  This alone removes one of the traditional obstacles to in-place operating system upgrades.
3) Security

Security is always of concern and Windows 7 comes with a slew of security enhancements.  The best one results in an improved user experience as well – the update of User Account Control (UAC.)  This update makes UAC, the bane of Windows Vista, into the security tool that it was always meant to be.  UAC is now easy to use and control but still powerful enough to protect you in critical ways.  Moving from XP to 7 provides a very important security update from a technology side while moving from Vista to 7 makes this technology user friendly enough that it can remain enabled without the bulk of users demanding that it be removed.
4) Solid State Drive Support

With solid state drives rapidly dropping in price and growing in popularity, having specific support for them in Windows 7 is a very big deal today but especially over the next few years as solid state drives move from the realm of power user equipment to mainstream user equipment.  Solid state drives work best when the drivers handling them are aware that they are solid state.  SSDs should not be treated like tradition, spindle-based hard drives for maximum performance and reliability benefits.

Windows 7′s solid state enhancements like TRIM and removal of spindle drive tools like Superfetch and ReadyBoost give SSDs better performance and longer lifespan on Windows 7 then on previous Windows iterations.  These features may not seem like a big deal today but over the lifespan of Windows 7, as SSDs become more and more of an expected desktop component for the average office worker these SSD-specific features will play a bigger and bigger role.
5) XP Mode

XP Mode is one of those really stand-out features that sets Windows 7 apart from its predecessors.  Previous Windows version have struggled in handling legacy applications.  Windows 7′s new approach of including a Windows XP operating system as a complete virtual machine handles this issue in a graceful way.  Now legacy apps are more reliable and the Windows 7 system is not encumbered with extra subsystems needed to handle legacy systems.  With Windows XP having been such a dominant player like no Windows platform had been before, this approach is brilliant and a shrewd move on Microsoft’s part.  XP Mode delivers a level of confidence that existing apps will continue to work on Windows 7 – even apps that no longer see active development and are not being tested against the newest Microsoft operating systems.  Once again, Windows 7 provides more than its predecessor in an area where we would not expect to see this – backwards compatibility.  Windows 7 is dramatically more compatible with Windows XP software than Vista is.
6) Branch Cache

Enterprise customers can leverage Branch Cache, Microsoft’s new WAN optimization technology targeted at supporting branch offices within a larger, enterprise environment.  Branch Cache can be a significant feature for the many companies who struggle with providing storage resources out to small, remote offices.  Branch Cache’s ability to seamlessly store previously accessed CIFS and web resources out at a branch office can, for some businesses, mean that extra equipment and larger Internet connections need not be purchased which can result in substantial cost savings and branch office productivity gains.  Branch Cache will also reduce loads on central storage systems allowing file server dollars to be stretched a little farther too.
7) Direct Access

Previous versions of Windows have had VPN products included with them but Direct Access takes the idea of “always connected mobility” to a new level.  Direct Access adds seamless VPN to Windows which gives users a unified experience between remote and “in office” computing modes.  No longer do users need to manage their VPN experience – as long as they are online they are connected to the office.  Direct Access leverages IPv6 and IPSec for simple, efficient and extremely secure remote computing.  Direct Access is designed to work with Microsoft’s existing authentication systems allowing it to be used for normal, everyday computing without breaking communications with Active Directory so that both the machine and the user can properly authenticate – even when working remotely.

Summary) At the end of the day, however, what makes Windows 7 compelling isn’t any significant feature.  In fact, it is the lack of major features that makes Windows 7 so important.  Like XP, its spiritual predecessor, Windows 7 tweaks a working formula.  Vista introduced the new kernel, the new interface, UAC and other features.  Introducing change is painful.  Windows 7 takes what works and makes it better.  Windows 7 is the long term, strategic desktop decision because it is a polished system that introduces small, incremental updates and relies on established features to drive its overarching value.  Think of 7 as the evolutionary whereas Vista was revolutionary.

Share
Scott Alan Miller

Hiring IT: The Reverse Interview

Corporate interviewers often forget that interviews are a two way street: yes the company is interviewing the hopeful job candidate but that candidate is interviewing the company as well.  Unless you are a wildly well known and highly desired company at which to work (e.g. Apple, Microsoft or Google) then you have probably little more than the interview process in which to demonstrate what kind of company you are to a potential candidate and even then many candidates will take the media’s opinions of working at those companies with a proverbial grain of salt.

No matter how fashionable or well respected the firm, most likely a job candidate will get one chance to peer into the inner workings of your company.  They will not judge you based on your cafeteria food nor on how friendly the staff is nor the lengthy, and probably completely inaccurate, job description – all of that is a form of marketing – a good candidate knows that and is exposed to it all of the time.  No, they will judge you based on your processes and the only process that you can’t gloss over, hide or fake is the interviewing process.

A company’s ability to interview effectively is the best cradle to grave process example that a candidate will see – very likely it will be the only one.  And since this is a process that affects all others, in that every person at the company was selected using it, it is also the best way to indicate to the candidate what the overall company is likely to be like and how it functions.  A good hiring process reflects a healthy company using good processes and possessing good staff, a bad hiring processes reflects a company with generally poor procedures and staff consisting mostly of those unable to find work someplace more attractive.

The hiring process is so often either complete afterthought or, at best, based completely around weeding out bad candidates that there is little thought put into convincing good candidates to accept a position at the firm.  The better the candidate the more likely that that candidate is already working and getting offers from more than one company.  The interview process must often convince a candidate that the unknown of your company is better than their existing, known position and that it is better than the unknowns of potentially many other firms.  Overcoming the “devil you know” issue can be very difficult, especially if that candidate already has a great job.  Ask yourself, “If I had their job, why would I leave it to come work for me?”

Vetting a potential candidate is not something that interviewers and the hiring process creators are likely to forget or overlook, but focusing so heavily on ruling out bad candidates will often also tell good candidates that this isn’t a place where they are interested in working.  Good candidates don’t want to work in a place lacking bad people, they want to work in a place full of good people.  The two are not the same thing.

Having a good, efficient and goal-oriented interviewing process can be difficult, especially if your firm is large and follows traditional interviewing practices in a codified manner.  There is no simple equation to running a great interview process, what every company’s technical needs and cultural needs are will dictate how best to approach enticing the best fitting candidates.  There are simple rules, though, that must be followed.

Every potential candidate that you will ever interview is full of horror stories from their own job hunts over the course of their careers.  Some are nearly universal, such as stories about how the human resources department sabotaged an otherwise perfect fit position, while others are unique and surprising.  Anyone that you will be interviewing will be thinking about their own past experiences as well as stories that they have heard from others and will be thinking about these things as they go through your company’s process.  Most process issues can be resolved, or at least mitigated, simply by taking the time to empathize with the candidates and see the process from their perspective.

Running a good interview process can start with the simplest of things like making sure that the team preparing to interview a candidate are on time, prepared for the interview, the appropriate people for that interview, aware of what they are interviewing for, etc.  Too often candidates go to an interview just to find that they are being interviewed by random people in the office who just happened to be available.  Those interviewers have not seen the resume ahead of time nor are aware of the qualifications that they are seeking.  You would not be impressed if the candidate being interviewed was late and unprepared, why are we then surprised if they are equally unimpressed when we are unprepared.  We can hardly fault a candidate for not taking the interview seriously if we are not taking it seriously, but this is exactly how the average interview goes – the candidate is far more prepared than the interviewing team.

Human resources presents one of the most well understood failures in the interviewing process.  HR is seldom prepared to speak to a potential candidate in any meaningful way in the information technology arena.  Rarely, if ever, is HR in a position to judge a candidate’s skillset, skill level, ability to mesh with a team or appropriate compensation.  HR could be involved for verifying resume data or supplying benefits details, of course, but only after a candidate is otherwise selected.  Every IT professional can spot a job description that HR has touched and great candidates turn down your firm at this stage, long before they ever show up in any statistic.  You are losing potential employees, the best potential employees, before you ever find out that they were giving you a moment of their time.  You may also accidentally turn away candidates who would happily have accepted a position with your firm but were misled into believing that they were not qualified for a position due to nothing more than an incorrect, often impossible, job description.

It is important, too, to have a generally well laid out and efficient process to move from one interviewing stage to another and to do so, from end to end, in a relatively short period of time.  I myself have had poorly planned interviewing processes that stretched for longer than six months.  In these cases the people involved will often change positions, or even companies, during the process and the same stages might get repeated over and over with the interviewing company not remembering the candidate or what had been said and determined in earlier interviews.  If an interviewing process spans more than about a week the process is too long and the stages are too disconnected.  Decisions should also come in a timely manner, not weeks after an interview has taken place.

The interview process should be designed around the desired candidate traits.  If you want to hire someone to just hit the ground running and have no long term viability, focus purely on tech skills.  If you want someone to be a part of the team, focus on personality and just make sure that they can learn the tech skills in an amount of time that is appropriate for your needs.  If a position is important enough to hire someone to fill, it is important enough to interview well to get the right person.  Hiring a new staff member is a very big deal, nothing defines your company more than the people that it hires.  Nothing should be taken more seriously than the processes used to acquire the best staff.

Communications between interviewers and stages is important.  An interviewee will not be impressed if asked the same question multiple time, especially not if asked by the same person.  This is far more common than interviewers may realize.

Put yourself into the shoes of your candidates.  Think about how they will see your company when they interview with you.  Will they see an organization that treats them with respect and professionalism?  Will they see you as prepared and highly skilled?  Will they see processes that encourage the kind of people that they want to work with to join your firm?  Or will they see that your company thinks that hiring good people is not a priority?  Will they find that their future coworkers aren’t the cream of the crop and that they aren’t being hired to compliment good people but to provide skills that you have failed, thus far, to cultivate?  Will they see processes designed to weed out bad people but that fail to attract good ones?

Interviewing processes do not need to be exceptionally formal or rigid.  Alternative approaches can work wonders and can tell a candidate much about your company.  But make sure that any process that you implement reflects positively on your firm and is not turning away the candidates that you might wish to hire.

No matter how much you imagine that candidates should be beating down your doors to come work for you – those candidates don’t know that.  Until you convince them otherwise, you are just another unlikely job prospect to them in an endless sea of job listings – unlikely that they will get an offer and unlikely that they will accept one if received.  Job seekers are inundated with job listings and head hunters daily.  Most companies that a candidate will decide to interview with will turn out to not even really be hiring but are just “fishing” – looking to see what the candidates and going compensation rates are like in the current market.   A candidate is not going to get excited until they feel that you are a serious firm and that the job sounds exciting.

Interviewers generally approach candidates with the impression that the candidate is begging for the position and that they are charged with turning away all but the best option.  But there is a very good chance that the person that you are interviewing was cajoled or begged (or even bribed) to sit across that table from you by a headhunter, consulting or staffing firm.  Often they’ve been lead there under false pretenses, such as being told that compensation is as much as double what is actually your realistic cap or that they will be in a far more senior position than you are interviewing for.  In that person’s eyes it is you the interviewer, not they the interviewee, who is in the begging position.

If a candidate is brought in by a staffing firm then chances are that that candidate has been presented with a very different view of the situation than you expect.  Likely they have been told great and unrealistic things about the position and they see that staffing firm as the direct and official representative of your firm – which if you have hired them, they are.  So you are effectively reaching out to candidates, pre-selecting them and asking them to come interview with you.  To the candidate, they are doing you the favor, not the other way around.  If they show up and you are not ecstatic that they took the time out of their schedules to meet with you they are going to be less than impressed.  They assume that you have sifted through large numbers of candidates and selected them for a reason.

Using a staffing firm is never advised, in my opinion.  They do not represent the interests of you as the hiring company nor of the candidates.  They, at best, are a point of miscommunications and increased cost.  At worst they play both parties against each other for their own gain.  Like an HR department, they have very little to add to a selection process but have the capacity to wreak nearly unlimited damage.  The best companies, no matter what size they are, take the time to make their hiring process a purely internal one.  No matter what type of business you are in, the ability to attract, acquire and retain the best staff is the best competitive advantage possible.  If your hiring process isn’t taken seriously there is no way that you can compete  cost effectively.  Your only option is to raise salaries to a point that enough candidates concerned about money over job quality are willing to come work for you.  This can work but is very expensive, and not completely effective, compared to having great hiring practices.

The bottom line is that your hiring practices dictate what you are and will become as a company.   If you don’t acquire and develop good staff you won’t have them to drive efficiency and innovation.  Take your hiring process very seriously and consider how your company presents itself to a candidate.  Remember, weeding out bad people is easy.  Attracting good ones is hard.

Share
Scott Alan Miller

Why IT Pro’s Home Computers Are Different

My sister in law once asked me why they have so many computer problems and we do not.  My wife and I are both technology consultants and our home network probably seems incredibly stable to the casual observer.  This question, in one form or another, comes up pretty often.  I thought about it at length and feel that there are really a number of common factors that are pretty common to find differing between how the average IT professional sets up their home computers (as opposed to their work computer) and how the average user does.  Not every IT pro does these things and not ever non-IT person does not, but these are pretty common differentiators that all factor in to stability of the home computing environment.

  1. We Don’t Log In as the Administrator.  This is probably the single biggest difference between normal users and IT professionals at home.  Running as the administrator for every day computing just isn’t wise – any malicious or misbehaving application will be able to be malicious with your user privileges, which as the administrator are unlimited.  I have been working in IT for over twenty years and would never use the administrator account for anything but system maintenance tasks.  It just isn’t safe.  The entire purpose of having these different types of accounts is for your protection.
  2. Keep the System Patched. A patched computer is, more or less, a safe computer.  Those patches that come out from Microsoft, Apple and your application vendors are there for a reason – because a problem has been found and they want to get it fixed before something bad happens to you and it is their fault.  Once a patch is released, you need to get it installed right away because the security hole that it patches is now public knowledge and you are particularly vulnerable in the time right after the patch is released.  Nearly anytime that I log onto someone else’s computer the first thing that I notice is that there are a large number of security patches waiting to be installed.  Never let this happen – patch immediately.
  3. Use AntiVirus and Software Firewall.  Running a good antivirus (there are plenty of free ones for home users) is quite important as is having a firewall on your computer.  AntiVirus helps your computer protect itself against known attacks and will look for dangerous files on your computer that may have been downloaded, found on removable media, on a website, etc.  In theory, if you are not the administrator and are well patched viruses will be able to do only limited damage, but any damage you can prevent is a good thing.   A software firewall on your computer is an added layer of protection as well – for home users it is pretty minor but it is free and you should never turn down valid protection.
  4. Use a Real Firewall.  A software firewall on your computer is not enough, you should always have a real, hardware firewall as well.  This does not have to be an expensive device and you will often need one for other purposes anyway – such as sharing your Internet connection with multiple users – just make sure that you have one installed.  This is far more important than having a software firewall but neither is an excuse for not having the other.  You need both.
  5. Never Use the Pre-Installed Operating System.  This is one of those “tricks” that IT pros learn after working on many, many machines.  Computers come with a pre-installed copy of the operating system on them.  This pre-installed copy normally is loaded with horrible software that you would never, ever want to have installed on your computer and is often just trials of software that you will have to buy to use.  You don’t want this.  Instead, take the operating system installation media that came with your computer (you didn’t buy a computer without it, did you?) and install a fresh copy of your operating system without any of that additional stuff before you do anything with that computer.  This is important for two reasons: first that you eliminate all of that useless advertising that might even go so far as to break your computer and second it gives you a basic install that you can repeat later, which is important.
  6. Reinstall the Operating System Periodically.  Over time, on Windows especially, you will notice a deterioration of your computer over time.  Except in the cases of hardware failure, this is caused by a sprawl of data, settings, registry changes, etc. on your hard drive.  There are techniques for fixing this but none are perfect.  From time to time, often once every one to two years, it is very advantageous to blow everything away and install the operating system fresh (as in the tip above) and start over with a “new” computer.  As long as the hardware has not begun to fail your computer will now behave exactly as it did the day that you got it.  (Do not forget to patch it immediately.)  This also gives you the very important chance to reinstall only those applications that you actually need and use and leave unused ones behind (along with any malware that has found its way onto your system.)
  7. Have a Spare Computer.  It is a rare IT professional who relies on a single desktop or laptop for everything that they do.  There is too much riding on the ability to be online, all the time to only have one computer.  The slightest hiccup and you are unable to do anything – including unable to look up what you need to know to fix your computer!  Having a spare computer means that you have another computer to use while you are busy reinstalling the operating system on your main computer, for example.  It also gives you a secondary location from which you can verify that all of your critical data is still available while working on your main machine which is some serious peace of mind.
  8. Take Good Backups.  Nothing is more important to IT professionals than backups.  Backups are what keep us in business.  Most likely these days you will find IT pros not only have an external hard drive (or better, an actual storage server) in their homes on which they keep complete copies of everything that matter to them but also that they have online backups going to a cloud storage provider so that should their home be lost (flood, fire, tornado) that they would still have their precious files.  Losing your photographs, home movies, financial records, etc. can be quite tragic – take steps to protect these.  If you do it right, you should never fear your computer dying beyond the slight annoyance that it takes to install your operating system again.
  9. Don’t Install Just Anything.  What you install and run on your computer matters.  IT professionals are generally pretty wary of what they install and normally only install known applications from trusted vendors – not any random piece of software that is found on the Internet.  It is important to know what you are installing and why you want it.  The average computer user, IT pros included, actually need very few different applications on their computers.  The fewer you install the fewer you need to maintain and the less chance that you will have one that damages your system or slows it down.  Often when helping non-IT professionals with their computers I find that the computers are full of applications that no one has ever heard of and the person whose system has them installed has never really used or may not even know what they are!  This is how the bulk of malware gets installed.
  10. Download Drivers, Don’t Use Vendor CDs.  IT Pros know that drivers are critical to system stability and that the latest are available from vendor websites.  Any CD with a driver for a new piece of hardware that you just bought is pretty much guaranteed to be out of date and, more often than not, the vendor will use the opportunity of you putting their CD into your drive to install extra software that you don’t want onto your computer.  Avoid this completely; use the vendor website to get the latest drivers immediately and don’t use the media that comes with your hardware.
  11. Buy Commercial, Not Consumer, Equipment.  I’ve written whole articles on this in the past – this is one of those industry insider tricks.  In business, we look for computers to be stable and reliable, not flashy and “cool”.  Nothing is cooler than a computer that works reliably.  Big computer vendors make one line for consumers to be sold at your local store and another line for discerning companies who do their homework.  Skip the in-store buying.  Go directly to the big vendors (don’t even think about buying something made by the guy down the street) and stick exclusively to their commercial or business lines.  These lines are built for buyers in the know who need their computers to be cost effective over their lifetimes, not to be cheap up front.
  12. Have a regular maintenance routine.  There are simple tasks that need to be done all the time such as defragging your drives, cleaning up unneeded files and blowing the dust out of your machine.  IT pros regularly maintain their computers to maintain system health.  Computers are not just “set and forget” devices.  They are just too complex for that.  That being said, though, most tasks can be automated.
  13. Run wires.  Wireless networking is simple, clean and easy.  It is also slow and difficult to troubleshoot.  When possible, consider running cabling in your home so that your computers, at least the desktops, game consoles and other stationary devices, can get the speed and stability advantages of cabling.  The more devices on your cabled network also means the fewer devices that will be competing for wireless resources.
  14. Use a UPS.  A UPS, or uninterruptable power supply, is a crucial component in protecting your computer equipment.  It protects computers from disruptions and surges in the power grid.  Computers are very sensitive to power problems and an inexpensive UPS can go a long way to keeping your computer healthy for a long time.  More importantly, it protects against data loss.

The basic tip here is – treat your home like a business, not like a toy.  The average home user doesn’t take their computer seriously at all and never gives it a second thought until something goes horribly wrong – and then it is likely too late.  Your computer is one of your most expensive and most important possessions, treat it more like a car and less like a toaster.

Share
Scott Alan Miller

IT Roles: Productivity and Availability

As IT managers we face the need to deal with two very different types of technical professionals.  These two types of professionals are separated, not by their personality types or working styles, but by the very nature of their job roles.  Understanding the unique needs of these two job types is critical in effectively managing technical workers, but few IT departments truly take the time to understand and appreciate the nuances inherent to these two different job roles.

The first type, and by the far the best understood, I will call the “engineer.”  This engineering role encompasses a massive array of job functions ranging from software developers and designers, architects, system engineers, network engineers or anyone whose primary function is to creatively design or implement new systems of any sort.  The term engineer is a loose one but is relatively meaningful.

The second type of technology worker role can be generically referred to as the “support” role.  Support professions might include helpdesk, systems administration, desktop support, network monitoring, command center, etc.  What separates support professionals from engineering professionals is that they are not tasked with creative processes involving new designs or implementations but instead work with existing systems ensuring that they run properly and get fixed quickly when something is wrong.

It goes without saying that no one real-world human is likely to ever be completely in only one category or the other, but almost all job functional in IT focus very heavily upon one or the other.  It is pretty safe to assume that almost any role will be exceptionally weighted to one role or the other.  It is very rare for a single position to be split evenly between these roles.

Where this identification of roles comes into play is in knowing how to measure and manage technical staff.  Measuring and managing engineers, from a very high level, is quite well understood.  The concept of productivity is very simple and meaningful for engineering roles.   The goal of managing an engineering person or team is to allow and encourage that role to output as much creative design or implementation as possible.  The concept of quality exists as well, of course, but we still can think generally about engineering roles in relatively concrete terms such as number of functions written, number of deployment packages produced, size of network designed, etc.  Metrics are a fuzzy thing, but we at least have a good idea of what efficiency means to an engineer even if we cannot necessarily measure it accurately.

Support roles do not have this same concept.  Sure you could use an artificial metric such as “tickets closed” to measure productivity in a support role, but that would be very misleading.  One ticket could be trivial and the next a large research challenge.  In many cases there may be no tickets available for a long time and then many arrive at once that cannot be serviced simultaneously.  Productivity is likely to be sporadic and non-sustainable and, ultimately, not at all meaningful to measure.

Engineering positions earn their keep by producing output effectively over a rather long period of time often even spanning into months and years for large projects.  The goal, therefore, with engineering positions is to provide an environment that encourages sustainable productivity.  It is well know that engineers will often gain productivity by working shortened or alternative hours, taking regular vacations, etc.  Not only does this often increase productivity but often greatly increases the quality of the output as well.

Support positions earn their bread and butter by “being there” when needed.  If a support person is attempting to work at maximum efficiency there is a natural implication that there is a continuous backlog of support issues awaiting the support team’s attention and that there are many people requiring support who have to wait for it in order to form a queue.  By having a queue always in place this also means that support personnel are continuously taking work off the stack instead of resolving live items – either ignoring high priority items or being regularly interrupted – causing continuous context switching which significantly reduces the ability to efficiently handle the queue – whose entire purpose for existing was to create the appearance of artificial productivity in the first place.

Support roles are “event driven.”  I like this terminology because I think it most accurately describes the mode in which nearly all support professionals work.  Whether an event is generated by a phone call, an instant message, an email or a ticket it is an “event” that kicks off the transition of the support person from idle to action or, in some cases, from a low priority item to a high priority item.  One way or another, an event represents a “context switch” for the support professional.  Without an event there is nothing for a support professional to do.  Even if the “event” is represented by a ticket queue or an email backlog it is still a form of event.

Having a truly efficient support desk requires careful management of the event process.  Having a never ending queue of support issues is exhausting for the support professionals and it also means that no amount of staff is ever in an “idle” state awaiting high priority items.  Because of this, high priority items are either not addressed as quickly as they should be or else in-process items are neglected.

Understanding the event driven nature of support staff is critical to understanding how to approach the management of these teams.  There are no simple answers, and metrics of support staff are often even more meaningless than those of engineering staff – so use with extreme caution, but by empathizing with the support role we can begin to see where our role as a support manager plays into the bigger picture of supporting and promoting the support team members.

The most important concept, from my experiences, is providing a good flow of the interrupts going to the support team.  Often support teams are handling a number of different avenues for support, such as email and telephone.  Restricting and funnels events to appropriate channels is critical.

The problem with telephones is that they are aggressive and demand an immediate context switch whether the recipient is idle or if they are currently supporting the most critical production outage in corporate history.  The person calling is guessing that their immediate need outweighs the current needs of whomever the support person is currently supporting.  Telephones cause this problem everywhere that they are used.

Think about the last time that you were at a pizza parlor placing your order at the counter.  You waited in line patiently as each person was served.  You did the right thing.  You arrive at the front of the queue.  You begin to place your order when, the phone rings.  The person taking your order puts you on “hold” even though you are standing right there, picks up the phone, takes the order, hangs up and returns to you.  What this says is that the person calling, being the “squeaky wheel”, is more important to the restaurant than are the people actually in the restaurant.  This same effect happens on many support desks – in process work is interrupted by calls going to a group line or directly to the support person.  This is, at best, inefficient and at worst may disrupt critical support processes for highly critical issues.

So when thinking about how to manage IT professionals, think about the purpose of their role.  The goal of an engineer is productivity.  The goal of a support professional is availability.

Share
Scott Alan Miller

Why We Reboot Servers

A question that comes up on a pretty regular basis is whether or not servers should be routinely rebooted, such as once per week, or if they should be allowed to run for as long as possible to achieve maximum “uptime.”  To me the answer is simple – with rare exception, regular reboots are the most appropriate choice for servers.

As with any rule, there are cases when it does not apply.  For example, some businesses running critical systems have no allotment for downtime and must be available 24/7.  Obviously systems like this cannot simply be rebooted in a routine way.  However, if a system is so critical that it can never go down then this situation should trigger a red flag that this system is a point of failure and perhaps consideration for how to handle downtime, whether planned or unplanned, should be initiated.

Another exception is some AIX systems need significant uptime, greater than a few weeks, to obtain maximum efficiency as the system is self tuning and needs time to obtain usage information and to adjust itself accordingly.  This tends to be limited to large, seldom-changing database servers and similar use scenarios that are less common than other platforms.

In IT we often worship the concept of “uptime” – how long a system can run without needing to restart.  But “uptime” is not a concept that brings value to the business and IT needs to keep the business’ needs in mind at all times rather than focusing on artificial metrics.  The business is not concerned with how long a server has managed to stay online without rebooting – they only care that the server is available and ready when needed for business processing.  These are very different concepts.

For most any normal business server, there is a window when the server needs to be available for business purposes and a window when it is not needed.  These windows may be daily, weekly or monthly but it is a rare server that is actually in use around the clock without exception.

I often hear people state that because they run operating system X rather than Y that they no longer need to reboot, but this is simply not true.  There are two main reasons to reboot on a regular basis: to verify the ability of the server to reboot successfully and to apply patches that cannot be applied without rebooting.

Applying patches is why most businesses reboot.  Almost all operating systems receive regular updates that require rebooting in order to take effect.  As most patches are released for security and stability purposes, especially those requiring a reboot, the importance of applying them is rather high.  Making a server unnecessarily vulnerable just to maintain uptime is not wise.

Testing a server’s capacity to reboot successfully is what is often overlooked.  Most servers have changes applied to them on a regular basis.  Changes might be patches, new applications, configuration changes, updates or similar.  Any change introduces risk.  Just because a server is healthy immediately after a change is applied does not mean that the server nor the applications running on it will start as expected on reboot.

If the server is never rebooted then we never know if it can reboot successfully.  Over time the number of changes having been applied since the last reboot will increase.  This is very dangerous.  What we fear is a large number of changes having been made, possibly many of them undocumented, and a reboot then failing.  At that point identifying what change is causing the system to fail could be an insurmountable process.  No single change to roll back, no known path to recoverability.  This is when panic sets in.  Of course, a box that is never rebooted intentionally is more likely to reboot unintentionally – meaning the chance of a failed reboot is both more likely to occur and more likely to occur while in active use.

While regular reboots are not intended to reduce the frequency of failed reboots, in fact they actually increase the occurrence of failures, the purpose is to make those failures easily manageable from a “known change” standpoint and, more importantly, to control when those reboots occur to ensure that they happen at a time when the server is designated as being available for maintenance and is designed to be stressed so that problems are found at a time when they can be mitigated without business impact.

I have heard many a system administrator state that they avoid weekend reboots because they do not want to be stuck working on Sundays due to servers failing to come back up after rebooting.  I have been paged many a Sunday morning from a failed reboot myself, but every time I receive that call I feel a sense of relief.  I know that we just caught an issue at a time when the business is not impacted financially.  Had that server not been restarted during off hours, it might have not been discovered to be “unbootable” until it had failed during active business hours and caused a loss of revenue.

Thanks to regular weekend reboots, we can catch pending disasters safely and, thanks to knowing that we only have one week’s worth of changes to investigate, we are routinely able to fix the problems with generally little effort and great confidence that we understand what changes had been made prior to the failure.

Regular reboots are about protecting the business from outages and downtime that can be mitigated through very simple and reliable processes.

Share

« Prev - Next »

  • Buy Cheapest bayer levitra online pharmacy Online Pharmacy Store. Free Viagra Pills!
  • Buying Cheapest where can i get cialis. Offshore Pharmacy, Good Prices. Low Prices.
  • Buy Cheapest diflucan information Now Best Prices. Top Online Pharmacy Supplier.
  • Buy Cheap cheap soft viagra Online Guaranteed Shipping. Pharmacy Store.
  • Buy Cheapest levitra result Now Best Prices. Top Online Pharmacy Supplier.
  • Buy Cheap canadian pharmacy levitra Now Drugs, Health And Beauty. Guaranteed Shipping.
  • Buy Cheapest levitra generic Now Cheap Online Pharmacy. Best Internet.
  • Buy Cheap find cheap cialis Now Best Prices. FDA Approved Rx: Online Pharmacy.
  • Buy Cheap purchase phentermine mexico Online Cheap Online Pharmacy. Online Medical Shop.
  • Buy Cheapest tramadol maximum dosage Now WorldWide Shipping. Cheap Online Pharmacy.
  • Buying Cheap online pharmacy no prescriptions. Offshore Rx, Good Prices. Top Online Pharmacy.
  • Buy Cheap diflucan effects Now Cheap Pharmacy Online. WorldWide Shipping.
  • Buy Cheap breast cancer prevention Online Online Medical Shop. Best Drugstore.
  • Buy cialis free coupon Without Prescription Doctor. Pharmacy At The Best Price!
  • Buy Cheapest diet and weight loss product Now Pharmacy Store. Buy Medications Online.
  • Buy Cheap clomid 25mg Now Best Drugstore. Order Cheap Meds Without Rx.
  • Buy canadian pharmacy Online Without Prescription. Low Prices. Pharmacy Store.
  • Buy Cheap vitamin store for sale Now Free Viagra Pills! Special Prices For vitamin store for sale!
  • cheap phentermine without a prescription Online Without Prescription Low Prices. Free Viagra Pills!
  • Buy Cheap headache relief medications Online Guaranteed Shipping. Free Viagra Pills!
  • Buy Cheap list of anti anxiety medications Online 24/Online Pharmacy. Best Drugstore.
  • Buy Cheap vardenafil discount Now Cheap Online Pharmacy. Guaranteed Shipping.
  • Buy Cheap atarax information Now Low Prices. Drug Store Without A Prescription.
  • Buy Cheap pain medicine ultram Online 100% Satisfaction Guaranteed. Best Prices.
  • Buy Cheapest buy valium no presciption Online Best Drugstore. Free Viagra Pills!
  • Buy Cheap generic amoxicillin Online Best Drugstore. Online Medical Shop.
  • Buy Cheapest sildenafil oral Online Buy Medications Online. Best Internet.
  • Buy Cheap prescription medication Now 24/Online Pharmacy. Cheap Pharmacy Online.
  • Buy Cheap usa diazepam fed ex Now The Largest Internet Pharmacy. Best Online.
  • Buy Cheap cheap tramadol without prescription Online Best Internet. Internet Prices For cheap tramadol without prescription!
  • Buy Cheapest cialis discounted Now Online Prices For cialis discounted! Pharmacy Store.
  • Buy Cheap buy lipitor online Now Guaranteed Shipping. Cheap Online Pharmacy.
  • Buy Cheap lasix dosage Now Best Prices. Internet Prices For lasix dosage!
  • Buy cost of chlamydia medication Without Prescription Doctor. Best Internet. Best Prices.
  • Buy Cheap cialis lowest price Now Pharmacy Store. Top Online Pharmacy Supplier.
  • Buy Cheap doxycycline tablets Online Drugs, Health And Beauty. Pharmacy Store.
  • Buy Cheapest prices cialis Now Pharmacy At The Best Price! Best Prices.
  • Buy Cheapest german online pharmacies Now Cheap Prescription Drugs. Best Internet.
  • Buy Cheapest ambien 10 mg Now Pharmacy Store. Discount Online Pharmacy.
  • Buy Cheap klonopin social anxiety Online Best Prices. Order Cheap Meds Without Rx.
  • Buy Cheapest ampicillin side effects Now Pharmacy At The Best Price! Best Online.
  • Buy Cheap levaquin used to treat Online WorldWide Shipping. No Prescription Needed.
  • Buy Cheap lasix without prescription Now No Prescription Needed For Drugs. Best Prices.
  • buy acomplia Online Without Prescription Best Internet. Pharmacy Store.
  • Buy Cheapest cialis italia Online Low Prices. Discount Online Pharmacy.
  • Buy Cheapest online stores hair loss products Online Best Internet. Discount Online Pharmacy.
  • Buy Cheap levitra male enhancement Now Online Prices For levitra male enhancement! Best Internet.
  • Buy viagra cheap buy online Online Without Prescription. Pharmacy Store. Low Prices.
  • Buy Cheapest mexico levitra Now Cheap Online Pharmacy. Best Internet.
  • Buy Cheapest ultram 100 mg Online Best Internet. Free Viagra Pills!
  • Buy Cheapest low cost brand viagra fast Online Drugs, Health And Beauty. Best Prices.
  • Buy Cheap ultram drug Online Buy Medications Online. Free Viagra Pills!
  • Buy Cheapest top rated diet pills Now Special Prices For top rated diet pills! Pharmacy Store.
  • Buy Cheap phentermine online doctor Online Best Internet. Discount Pharmacy Online.
  • Buy Cheap over the counter drugs Online Best Drugstore. Guaranteed Shipping.
  • Buy Cheapest rimonabant with no prescription Now Pharmacy At The Best Price! Best Drugstore.
  • Buy Cheapest codeine prescription 60mg Now Cheap Pharmacy Online. Guaranteed Shipping.
  • Buy Cheap non prescription drugs Now 24/Online Pharmacy. Cheap Pharmacy Online.
  • Buy Cheapest buy australian viagra Online Best Online. Internet Prices For buy australian viagra!
  • Buy Cheap canadian mail order drugs Now Discount Online Pharmacy. Best Drugstore.
  • Buy Cheapest order tenormin Online Buy Medications Online. Low Prices.
  • Buy Cheap how to control your appetite Now Low Prices. No Prescription Online Pharmacy.
  • Buy Cheap pet skin inflammation treatment Now Pharmacy Store. Internet Prices For pet skin inflammation treatment!
  • Buy Cheapest cures for panic disorder Now Top Online Pharmacy. Cheap Online Pharmacy.
  • Buy Cheap augmentin antibiotic Now Best Drugstore. Online Prices For augmentin antibiotic!
  • Buy Cheapest what diet pills really work Online Best Internet. Free Viagra Pills!
  • Buy Cheap levitra online order Now Pharmacy At The Best Price! Best Drugstore.
  • Buy Cheap order phentermine c o d Now Special Prices For order phentermine c o d! Free Viagra Pills!
  • Buy Cheapest lipitor 20mg Now Best Drugstore. Pharmacy At The Best Price!
  • Buy Cheap how to take levitra Online Drugs, Health And Beauty. Pharmacy Store.
  • Buy order levitra online Without Prescription Doctor. Pharmacy Store. Low Prices.
  • Buy Cheapest plavix price Online Best Online. Guaranteed Shipping.
  • Buy Cheap pharmacy valium Online Cheap Prescription Drugs. Best Online.
  • Buying Cheap prescripion weight loss drugs. Mexican Rx, Good Prices. 24/Online Pharmacy.
  • Buy Cheapest fat burn appetite suppress Now Best Drugstore. 24/Online Pharmacy.
  • Buy Cheap order aldactone Online Drugs, Health And Beauty. Best Online.
  • Buy Cheapest online prescription pills Now Drugs, Health And Beauty. Best Online.
  • recreational viagra use Online Without Prescription WorldWide Shipping. Best Prices.
  • health med Online Without Prescription Low Prices. Best Drugstore.
  • Buy Cheapest diet pill on line pharmacy Now Best Internet. Order Cheap Meds Without Rx.
  • Buy Cheapest pills for bipolar disorder Online Low Prices. Online Prices For pills for bipolar disorder!
  • Buy Cheapest newest weight loss pill Online Top Online Pharmacy. Best Prices.
  • Buy Cheapest how much does viagra cost Online Guaranteed Shipping. Best Prices.
  • Buy Cheap tramadol overnight delivery Now No Prescription Needed. Best Drugstore.
  • Buy Cheap buy prescription diet pills Now Drugs, Health And Beauty. Guaranteed Shipping.
  • Buy Cheapest cheapest online cialis Now Guaranteed Shipping. 24/Online Pharmacy.
  • Buy Cheap ativan used Now No Prescription Online Pharmacy. Best Online.
  • Buy Cheap klonopin blood pressure Online Best Prices. 24/Internet)(safe Pharmacy.
  • Buy Cheap antidepressant pill high Online Discount Pharmacy Online. Pharmacy Store.
  • Buy Cheap 100mg viagra professional Now Online Medical Shop. Top Online Pharmacy.
  • Buy Cheapest order super viagra Online WorldWide Shipping. Top Online Pharmacy.
  • Buy Cheapest price nexium Now Top Online Pharmacy. WorldWide Shipping.
  • Buy Cheapest diazepam no prescription Now Online Prices For diazepam no prescription! Best Internet.
  • Buy Cheapest purchase medications on-line Online 24/Online Pharmacy. Best Prices.
  • Buy Cheap order tenormin Online Best Online. The Largest Internet Pharmacy.
  • Buy Cheap compare lipitor Online Order Cheap Meds Without Rx. Best Internet.
  • Buy Cheap international pharmacy klonopin Now Cheap Pharmacy Online. Buy Medications Online.
  • Buy Cheapest pain medication without a prescription Online Free Viagra Pills! Best Internet.
  • Buying Cheap treatment of childhood obesity. Offshore Rx, Good Prices. Guaranteed Shipping.
  • Buy Cheap no prescription valium Online Cheap Prescription Drugs. Low Prices.