Death of Windows XP? (Part 4)

The last post, Death of Windows XP? (Part 3), was supposed to be the last word on this topic that won’t die, but as usual, it isn’t. The hackers of the world have figured out a new an interesting way of getting around Microsoft’s plan to kill Windows XP. It turns out that you can continue to get updates if you’re willing to use a registry hack to convince Windows Update that your system is a different version of Windows that is almost like Windows XP Service Pack 3, but not quite. You can read the article, How to get security updates for Windows XP until April 2019, to get the required details.

The hack involves making Windows Update believe that you actually own a Point of Sale (POS) system that’s based on Windows XP. The POS version of Windows XP will continue to have support until April of 2019, when it appears that Windows XP will finally have to die unless something else comes along. It’s important to note that you must have Windows XP Service Pack 3 installed. Older versions of Windows XP aren’t able to use the hack successfully.

After reading quite a few articles on the topic and thinking through the way Microsoft has conducted business in the past, I can’t really recommend the registry hack. There are a number of problems with using it that could cause issues with your setup.


  • You have no way of knowing whether the updates will provide complete security support for a consumer version of Windows XP.
  • The updates aren’t specifically tested for the version of Windows XP that you’re using, so you could see odd errors pop up.
  • Microsoft could add code that will trash your copy of Windows XP (once it figures out how to do so).

There are probably other reasons not to use the hack, but these are the reasons that come to mind that are most important for my readers. As with most hacks, this one is dangerous and I do have a strong feeling that Microsoft will eventually find a way to make anyone using it sorry they did. The support period for Windows XP has ended unless you have the money to pay for corporate level support-it’s time to move on.

I most definitely won’t provide support to readers who use the hack. There isn’t any way I can create a test system that will cover all of the contingencies so that I could even think about providing you with any support. If you come to me with a book-related issue and have the hack installed, I won’t be able to provide you with any support. This may seem like a hard nosed attitude to take, but there simply isn’t any way I can support you.


Practice Icon on Page 59

A number of you have written to ask me about the Practice icon on page 59 of Java eLearning Kit for Dummies. It turns out that the practice won’t quite work as originally written because Java’s Random class now ensures that you get a random number each time you call it. As a result, the original practice no longer works.

In order to obtain consistent results from the example, you would need to set the seed to the same value every time. Here is an example of what I mean:

// Import the required API classes.
import java.util.Scanner;
import java.util.Random;
import java.util.Calendar;
public class ShowInt
    public static void main(String args[])
        // Create the scanner.
        Scanner GetInt = new Scanner(;
        // Obtain an int value.
        System.out.print("Type a number between 1 and 10: ");
        int YourGuess = GetInt.nextInt();
        // Get the current time.
        Calendar MyCal = Calendar.getInstance();
        // Create a random number generator.
        Random MyRandom = new Random();
        // Set the seed value for the random number using
        // the current number of milliseconds in the time.
        // Obtain a random number between 1 and 10.
        int MyGuess = MyRandom.nextInt(10) + 1;
        // Display the value on screen.
        System.out.print("Your guess was: " + YourGuess);
        System.out.println(" My guess was: " + MyGuess);

Notice that I’ve commented out the original MyRandom.setSeed(MyCal.getTimeInMillis()); line that ensures you get a more random result every time and added a new MyRandom.setSeed(5); line that sets the seed to the same value every time. Now when you run the example, you get the same value every time. On my system, the example guesses 8 every time.

This change to the practice should produce the desired result. I’m sorry about any confusion the original practice may have causes. Please let me know about any other book-related concerns at


Memorial Day – A Time of Remembrance (Reposted)

A number of people have asked me to repost this particular blog entry. As you know, this upcoming weekend is Memorial Day, which is a time we should remember the sacrifices made by our military to keep us free. So, without further adieu…

Many Americans have lost sight of the significance of Memorial Day. For them it has become a time to partyto celebrate something, anything. I spent 10 years of my life in the Navy serving my country—I
look on it as the hardest 10 years of my life. Fortunately, I was never
called upon to make the ultimate sacrifice that so many people have.
Although I’m sure that most of these dear departed liked a good party as
much as anyone else, it’s also important to remember why we’re taking a
day off.

Our freedom cost many lives. In fact, our freedom is
drenched in the blood of all of those who heeded their country’s call to
duty. Memorial Day is a time to reflect on the extreme sacrifice of
those who have fought and died to ensure that you can be safe in your
bed each night, exercise control over your government, and choose to do
things like protest an unpopular decision made by those in office. In
fact, they died to ensure that you’d also have the choice to do
absolutely nothing at allyes,
it’s a privilege to decide what to do and when to do it, even if that
means doing nothing. During my time in the service, I saw how many
people in the world live and I truly wouldn’t want to live like them. I
consider America the greatest country in the worldGod has truly blessed us.

won’t deny that celebrating the lives of those who fought for our
freedom is a good idea. However, take a few minutes to also think about
the sacrifice these people have made on your behalf. If you see a
service member, be sure to thank them for the time they spent serving
your needsusually in less than happy conditions. Memorial Day is much more than another holidayit’s
a time to reflect on just how good people have it in this country. Make
your Memorial Day celebration special this year, take time to consider
just how valuable your freedoms are and the price someone paid to get
them. If you want some other ways to observe the holiday, check out How to Observe Memorial Day.

There won’t be a blog entry from me on Monday.  Please come back starting on Wednesday for my regular blog entries.


Texting and Common Sense

I had written a post some time ago entitled Determining When Technology Hurts that caused quite a stir. Some people accused me of being anti-technology (a luddite, which is actually a misnomer because the Luddites weren’t anti-technology either). If you read the post again, you’ll find that I’m actually pro-technology, I simply espouse common sense when using it. Using the right technology at the right time is an essential component of using technology responsibly and gaining the maximum benefit from it.

When I read about people doing all sorts of weird things while trying to text, the only thing that comes to mind is that they really need to reconsider their use of the technology. Obviously, it doesn’t work to text and drive at the same time, yet people continue to do it. The latest nonsensical use of technology that I read is about people who insist on texting 911, rather than call. It turns out that most 911 call centers aren’t equipped to handle texting, so texting doesn’t produce a useful result.

However, the problem is more subtle than simply not reaching 911 when you really need the service. After having had to call 911 several times to help my wife as a caregiver, I’ve learned that the officer responding to the call often needs more information. A text can’t provide this information, but a call can. The officer can request additional information that can make the difference between saving and losing a life.

The FCC has mandated that 911 centers do indeed implement a texting interface, but has no power to enforce it. The main reason for the texting interface is to address accessibility concerns for people who truly can’t call 911. It’s not meant as a method for perfectly able bodied people to text instead of calling. The truth is that even with a text interface, 911 works better with a call simply because a call allows for complete communication that is usually faster than texting will allow.

When working with technology, it pays to think things through and use the appropriate technology for a particular need. Let me know your thoughts on texting 911 at


Power Words

It has been two and a half years since I wrote my Not Mere Words post where I explored nuances of meaning in word choice. Since that time, a number of readers have questioned whether word choice can really mean that big of a difference. When it comes to technical documentation, nuance is incredibly important. In fact, the reason you see so much jargon in technical documentation is to ensure clarity of meaning. Yes, you must learn what the jargon means, but the jargon usually has just one meaning, which means the use of that term is clearer than using other words to convey the same thought.

However, words also have a certain power of their own. What you say and when you say it have social implications that extend to books and to the pieces you write. Masters of fiction writing use specific terms to convey a character’s feelings, outlook on life, or point of origin. Technical writers often use specific terms to add emotional impact to what would otherwise be a relatively dry form of writing. So, it was with great interest that I recently read 19 Words That Will Make People Like You More. The article simply affirmed what I already knew—that saying things like “You’re welcome!” rather than an alternative (such as “No problem”) have significant meaning to those that hear them.

The words you choose both in personal conversation and in writing reflect who you are as a person. A discerning person can tell a lot about you just by the words you choose and how you use them. More importantly, the terms you use can affect you as a person. Saying “I can”, even when you’re certain that it’s more accurate to say “I can’t”, could actually change the situation from one of failure to one of success. Another interesting article on word choice is 10 Words That Can Make You More Powerful.

As always, the reason you use specific words is to affect those around you. Knowing that you can perform a task isn’t the problem, getting someone else to realize it is. Likewise, generating interest in a topic that is dear to you (and nearly unknown to everyone else) requires careful use of terms. Body language doesn’t translate through to writing, so word choice becomes your only tool for changing the opinion of others so that they see your point-of-view.

All this leads to the same conclusion that I made in my Not Mere Words post. In order to be successful in helping others see your perspective in person and in writing, you need to have a wide variety of words at your fingertips and understand the nuance of those words. It’s not just shades of meaning, but also how those words affect those who hear them. Power words are actually just ordinary words used in a specific manner. Let me know your thoughts about word selection at


Death of Windows XP? (Part 3)

Questions continue to come in from readers who are still using Windows XP despite the fact that Microsoft is only marginally supporting it. Yes, it’s the operating system that refuses to die and readers really are confused as to why Microsoft has decided to kill what is obviously a popular operating system. They’re in good company. In fact, some authors, such as John Dvorak, have gone a lot further in their negative comments regarding the demise of Windows XP. The point is that Microsoft is quite determined to force anyone they can into using Windows 8.1, whether it works for them or not. It doesn’t seem to matter that people still have perfectly usable systems that are happily running Windows XP without problem.

My first two posts on this topic, Death of Windows XP? and Death of Windows XP? (Part 2) should have addressed any questions that people reading my books might have. Essentially, I recommend updating to Windows 7 (for business users) or Windows 8.1 (for consumers) when your hardware begins to die of old age or your needs change.


I no longer have access to a Windows XP system, so I’m not able to provide support for my old Windows XP books at this point in time. If you have one of my old Windows XP books, you’ll need to use it as is. I haven’t purposely gone out of my way to orphan the books, but the technology is old and I simply don’t have the resources to provide support for these books any longer. In addition, none of my current programming books are designed for Windows XP developers.

In the meantime, you need to ensure that you get security updates. Microsoft has extended a limited level of security support until 14 July 2015 that includes malware signatures and the associated engine. You won’t receive any sort of bug fixes. In order to enhance the security of your environment, you may want to consider these changes to your system:

  • Use a browser that receives regular security upgrades, such as Chrome or Firefox (IE is a bad choice because Microsoft won’t update it).

  • Remove any software that is prone to security problems, such as Java.

  • Rely on an account with limited privileges, rather than use the Administrator account.
  • Update any application software as often as is possible.
  • Keep the number of installed applications as small as is possible.
  • Examine your system (especially your hard drive) for signs of intruders (such as unexplained processes) on a regular basis.

  • Stay offline whenever possible.

These strategies can help you out for a while, but they’re short term solutions. Eventually, you need to go offline permanently (such as when using the system to run older games) or upgrade to something newer. Please let me know whether you have any additional questions about Windows XP and how it affects support for my books at

An Update on the RunAs Command

It has been a while since I wrote the Simulating Users with the RunAs Command post that describes how to use the RunAs command to perform tasks that the user’s account can’t normally perform. (The basics of using the RunAs command appear in both Administering Windows Server 2008 Server Core and Windows Command-Line Administration Instant Reference.) A number of you have written to tell me that there is a problem with using the RunAs command with built-in commands—those that appear as part of CMD.EXE. For example, when you try the following command:

RunAs /User:Administrator “md \Temp”

you are asked for the Administrator password as normal. After you supply the password, you get two error messages:

RUNAS ERROR: Unable to run – md \Temp
2: The system cannot find the file specified.

In fact, you find that built-in commands as a whole won’t work as anticipated. One way to overcome this problem is to place the commands in a batch file and then run the batch file as an administrator. This solution works fine when you plan to execute the command regularly. However, it’s not optimal when you plan to execute the command just once or twice. In this case, you must execute a copy of the command processor and use it to execute the command as shown here:

RunAs /User:Administrator “cmd /c \”md \Temp””

This command looks pretty convoluted, but it’s straightforward if you take it apart a little at a time. At the heart of everything is the md \Temp part of the command. In order to make this a separate command, you must enclose it in double quotes. Remember to escape the double quote that appears withing the command string by using a backslash (as in \”).

To execute the command processor, you simply type cmd. However, you want the command processor to start, execute the command, and then terminate, so you also add the /c command line switch. The command processor string is also enclosed within double quotes to make it appear as a single command to RunAs.


Make sure you use forward slashes and backslashes as needed. Using the wrong slash will make the command fail.

The RunAs command can now proceed as you normally use it. In this case, the command only includes the username. You can also include the password, when necessary. Let me know if you find this workaround helpful at


Dealing with Thin Shells

A while back I provided a post entitled Feeding for Healthy Chickens that described conditions where chickens could eat their own eggs. This post provides you with some good ideas on just what to do to prevent the problem in most cases. However, it seems that the post doesn’t go quite far enough. There are situations where the weather is cool, the chickens are perfectly healthy, and they aren’t eating their eggs when you’ll still see broken eggs in the coop. In this case, you see the whole egg and need to clean it up immediately. However, the defining characteristic of this condition is that the shell will be paper thin.

Chickens need sunlight, just like everyone else, to produce Vitamin D. In addition, chickens need quite a bit of calcium in their diet and it isn’t always easy to get them to eat enough. When you see that the chickens are healthy and that the weather isn’t too hot, but the shells are still thin, it’s a sign that the chickens likely have a Vitamin D or calcium deficiency. In this case, the thin shells came right after winter, so the problem was Vitamin D.

In order to combat this problem, you may need to resort to unusual measures. In order to fix this particular problem, I started feeding the chickens expired yogurt. No, the yogurt hadn’t gone bad yet, but it was far enough past the expiration date that it had started separating quite badly. The chickens won’t care. It turns out that chickens absolutely love yogurt and can’t get enough of it. Just make sure the yogurt you feed them is made with Vitamin D enriched milk or has the vitamin added to it.

After some experimentation, I found that I could get the shells to harden up by feeding our ten chickens 1 cup of yogurt each day for about a week. Given that I have a cheap source for expired yogurt, I’ll keep feeding them yogurt on a regular basis, but not continuously. Part of the problem here is to ensure you get high quality eggs without cutting your profits too much. An egg shell should be relatively thick and smooth. When you start to see the egg shell getting thin and rough, it’s time for more yogurt.

There is a problem that can occur when you feed the chickens too much calcium. I’ve actually managed to get the shells thicker than they should be and that makes the eggs hard to use. If you like your eggs over easy or sunny side up, it’s important to maintain the correct egg shell thickness. Let me know about your egg production problems at


Appreciating the Healing Powers of Animals

I’ve always appreciated the ability of animals to make bad feelings better. There always seems to be something interesting going on with animals that makes the day more pleasant and happy. Of course, there is an almost continuous array of bird song in our area during the daylight hours. Just the happy song of birds is enough to make me smile.

When the native birds add antics to the mix, I sometimes get a good laugh in as well. Such is the case with a little downy woodpecker that visits the feeder near our house. He never seems to arrive right side up. No, despite his best efforts, he always seems to hit the perch upside down and must fight his way to an upright position. The vibrant mix of colors doesn’t help the woodpecker’s cause—he looks a bit like a clown anyway. Our particular downy woodpecker seems to have a bit more head color than pictures I see online show, but far less than a red headed woodpecker.

Now, when you mix native birds with chickens, you really get a visual treat. In most cases, the chickens try their best to ignore the native birds because they’re obviously better (at least, as far as the chickens are concerned). However, the other day the chickens didn’t have much choice in the matter because some sparrows decided to have fun with them. Imagine this scene for a moment, chickens running madly about flapping their wings and clucking crazily while sparrows are dive bombing them. I laughed so hard that it took several minutes for me to compose myself enough to come to the chicken’s aid.

In a contrast to the antics of the chickens, our rabbits are lovers, not fighters. They often need a hug. At the top of the hugging list is Twilight. She always wants a hug whenever I open her cage to feed her. In fact, she actively pursues hugs every time I walk by. She does this odd sort of clapping motion to attract my attention by sitting on her hind feet and moving her front paws back and forth.

Entertainment isn’t something that happens just outside either. Our dog Reese is hysterical. For one thing, she can’t go anywhere in a straight line. She runs in circles every time she goes from one place to another. When she’s excited, she mixes the frantic circles with a mix of barking and baying. How any one dog can look so happy and absurd at the same time is amazing.

Whenever Shelby (our other dog) senses that I’m blue, she offers me a paw. She’s not really looking for a handshake. Instead, she wants me to hold the paw—possibly for as long as I need to do so. So, I hold her paw and she washes my hand. It’s therapeutic, even if it does get a bit wet.

Another washer is Smucker who offers kisses by the gross. He likes to lean into my side and then wash my arms, hands, or other exposed body parts. Of course, the bath comes complete with purring.

Finally, Sugar Plum is absolutely frantic about getting petted. She’ll keep nuzzling me until I pet her (and keep petting her until she’s satisfied that I’ve petted her enough). Her purr is a bit louder than Smucker’s purr (as is her meow).

All of these behaviors (and many others) serve to help keep my calm and feeling good. I can actually measure a change in both blood pressure and heart rate after interacting with the animals. Many medical studies have noted similar results with other people, so I’m definitely not alone. The point is that animals provide benefits far beyond companionship and laughter. They also make it easier for people to deal with a host of problems in their lives. Let me know about your health benefit experience with a pet at


Beta Readers Needed for MATLAB for Dummies

Math is the basis for a good many human endeavors and we often use it without thinking about it. For example, when you go to the store to buy groceries, the clerk who checks you out relies on math to compute how much you owe. Perhaps you also used math as you shopped to ensure that you didn’t go over your budget. In addition, you might have used math to convert one unit of measure to another so that you’d know how much of a particular item to get. In looking at two similar products, you used math to decide which one offered a better deal. You get the idea. It truly isn’t possible to perform even the simplest task without using math in some way.

As the use of math for performing a task becomes more complex, so does the need for precision, accuracy, and an understanding of how math works. MATLAB is a product designed to help people perform complex math tasks more efficiently, accurately, and with less effort. In addition, you obtain a level of precision that only a computer can provide consistently. However, MATLAB itself is somewhat complex, which is why I’m writing MATLAB for Dummies with my coauthor Jim Sizemore (The Fun Physicist who has extensive MATLAB experience). The two of us want to make your MATLAB experience fun and interesting. With this in mind, we’ve put together the following outline:


  • Part I: Getting Started With MATLAB
    • Chapter 1: Introducing MATLAB and its Many Uses
    • Chapter 2: Starting Your Copy of MATLAB
    • Chapter 3: Interacting with MATLAB
    • Chapter 4: Starting, Storing, and Saving MATLAB Files
  • Part II: Manipulating and Plotting Data in MATLAB
    • Chapter 5: Embracing Vectors, Matrices, and Higher Dimensions
    • Chapter 6: Understanding Plotting Basics
    • Chapter 7: Using Advanced Plotting Features
  • Part III: Streamlining MATLAB
    • Chapter 8: Automating Your Work
    • Chapter 9: Expanding MATLAB’s Power with Functions
    • Chapter 10: Adding Structure to Your Scripts
  • Part IV: Employing Advanced MATLAB Techniques
    • Chapter 11: Importing and Exporting Data
    • Chapter 12: Printing and Publishing Your Work
    • Chapter 13: Recovering from Mistakes
  • Part V: Specific MATLAB Applications
    • Chapter 14: Solving Equations and Finding Roots
    • Chapter 15: Performing Analysis
    • Chapter 16: Creating Super Plots
  • Part VI: Part of Tens
    • Chapter 17: Top Ten Uses of MATLAB
    • Chapter 18: Ten Ways to Make a Living Using MATLAB
  • Appendix A: MATLAB’s Functions
  • Appendix B: MATLAB’s Plotting Routines
  • Appendix C: Geometry, Pre-calculus, and Trigonometry Review

As you can see, this book is going to give you a good start in using all the functionality that MATLAB has to offer. Because of the subject matter, I really want to avoid making any errors in book, which is where you come into play. I’m looking for beta readers who use math as part of their profession and think they might be able to benefit from the functionality that MATLAB provides. As a beta reader, you get to see the material as Jim and I write it. Your comments will help us improve the text and make it easier to use.

In consideration of your time and effort, your name will appear in the Acknowledgements (unless you specifically request that we not provide it). You also get to read the book free of charge. Being a beta reader is both fun and educational. If you have any interest in reviewing this book, please contact me at and will fill in all the details for you.