Note: Some links on my site and on my blog will redirect you to Amazon.com. These links usually provide me with referral fees when you purchase products I recommend, review, or highlight in some manner. The referral fees don't increase the cost of your product, but do help me maintain my site and blog.
A number of you have pointed out that the extras for C++ All-In-One for Dummies, 3rd Edition on the Dummies site are a bit confused at the moment. Thank you, as always, for your input. I always appreciate getting your e-mails on any topic that affects the usability of my books. The publisher has assured me that the links will be cleaned up. Of course, eventually getting the links fixed won’t help you today. With this in mind, here is a list of the actual extras for this book—the elements that I’ll support and that provide support for the book:
To access a particular extra, just click its link in the list. Of the items you can download, the items that I most strongly suggest you download are the code examples. Downloading the code examples will save you considerable time, reduce potential errors, and make your experience with the book a lot better. If you want to type the examples in by hand, try them first using the downloaded code and then type them in. Using this two-step process makes it possible for you to easily see typos that you make as you work with the code on your own.
Remember that this edition of the book uses a newer IDE, Code::Blocks 13.12. Even though some examples will work with the older versions of Code::Blocks used in the second edition, other examples won’t. Upgrading your copy of Code::Blocks to version 13.12 ensures that you see the examples as they are meant to work. A few readers have asked about the requirements for using the extras and you really do need Code::Blocks 13.12 to use them correctly. You can also get by with a compiler that provides C++ 14 support, but you’ll need to modify the procedures to use that compiler, rather than Code::Blocks. I don’t provide support for other compilers because I don’t have them installed on my system.
Please let me know if you have any other questions about the extras for this book. It’s important to me that you get the maximum value from your purchase. Report any problems to me at [email protected]. Of course, I always want to hear your book-related queries as well.
Cheat sheet: You remember using crib notes in school to make a better mark on a test, don’t you? You do? Well, a cheat sheet is sort of like that. It provides you with some special notes about tasks that you can do with Python that not every other developer knows. You can find the cheat sheet for this book at http://www.dummies.com/cheatsheet/beginningprogrammingwithpython. It contains really neat information like the top ten mistakes developers make when working with Python and some of the Python syntax that gives most developers problems.
Dummies.com online articles: A lot of readers were skipping past the part pages in the book, so I decided to remedy that. You now have a really good reason to read the part pages, and that’s online content. Every parts page has an article associated with it that provides additional interesting information that wouldn’t fit in the book. You can find the articles for this book at http://www.dummies.com/extras/beginningprogrammingwithpython. Here is a quick overview of the articles you find on the extras site:
Updates: Sometimes changes happen. For example, I might not have seen an upcoming change when I looked into my crystal ball during the writing of this book. In the past, that simply meant the book would become outdated and less useful, but you can now find updates to the book at http://www.dummies.com/extras/beginningprogrammingwithpython.
Companion files: Hey! Who really wants to type all the code in the book? Most readers would prefer to spend their time actually working through coding examples, rather than typing. Fortunately for you, the source code is available for download, so all you need to do is read the book to learn Python coding techniques. Each of the book examples even tells you precisely which example project to use. You can find these files at http://www.dummies.com/extras/beginningprogrammingwithpython.
Of course, you’ll also continue seeing extra content for the book on my blog. Always check out the Beginning Programming with Python for Dummies category to see new posts for this book. You’ll find all sorts of useful information in this category including: book fixes, source code fixes, answers to reader queries, and general Python news.
Ready or not! Here it comes! Winter is on its way! If you live in the Midwest, it is time to winterize your house and stock up your pantry. It is also time to bring in any plants that were taken outside for the summer. There was a radio talk show host in the late 90’s who had a rant titled, “Houseplants are HOUSEplants! They are supposed to stay in the house!” But for those of us who have sentimental plants that are precious but large, taking the plant outside is a necessity in the summer. Those with greenhouses, the Winter period also brings with it darkness so it may be worth considering the benefits of a light deprivation greenhouse tarp for year-round growing.
If you are in the habit of taking houseplants out for the summer, here are the best ways to assure that you don’t bring problems back into your house along with your plants:
Spray the plant for any insects that are common to the plant as a preventive measure. Relocating a plant to the warmth of your home will encourage insect survival.
Be sure that any houseplant spray you use will kill insect eggs. If it doesn’t kill the eggs, plan to spray 3 times at two week intervals.
Be safe by making sure that the plant you are spraying is listed on the label. Many plants are killed because they were sprayed with a chemical that was not safe for them.
If you want to use less chemical and have more effect, place the houseplant inside a trash bag while it is outside for spraying. Carefully spray the chemical into the bag. Quickly seal the bag with the plant and chemical inside. Leave it alone for 24 hours away from direct sunlight. After 24 hours, open the bag and air out the plant for about an hour. Then bring your treated plant in the house. This system can also be used inside.
Be careful to keep all chemicals away from pets or children.
Trim away any dead or dying leaves. The plant will continue to try to support any weak leaves. Removing them helps reduce insect and disease possibilities as both attack dying tissue.
Give your plant as much light as you can when you first bring it inside. Plants like the moringa tree still need 6+ hours of sunlight a day, even during winter. As the plant adjusts to the new light source, you can slowly move it to its final location. This may mean that you will be moving your plants around inside a couple of times but your plant will be happier in the long run. If your plant has only one location that it will fit inside your home, consider using grow lights to help your plant make the adjustment from summer home to winter home. (You don’t have to do anything fancy, you can actually get grow lights that will fit in a standard light fixture.)
Pay attention. With houseplants it is very important to pay attention to them. Insect and disease problems often start slowly but spread quickly and if you are paying attention, the problem leaves can be removed and the problem remedied before it affects the whole plant.
Growing and caring for plants is a very satisfying way to pass the winter. Transitioning your plants from their summer home to their winter location is easy, but takes some finesse. If you really need to have blooms through the winter, search out paperwhite bulbs, zygocactus (also called Christmas Cactus) or amaryllis. For easy greens choose spider plants, peace lily, or Norfolk Island pine. Whether they are Aunt Violet’s African violets or a new and exotic species that you discovered at the local greenhouse, plants are great company and worth the attention.
If you have any thoughts about bringing in plants for the winter or stories about the plants that you have inherited that have been part of your family, please add a comment to this post or contact John at [email protected].
A number of people have written to ask me about the Beginning Programming with Python For Dummies books that I originally discussed in my Beta Readers Needed for Beginning Programming with Python For Dummies post. My copy of the book finally arrived on Friday and I can’t be more excited about how it turned out. This is the book you really need if you want to get started working with Python quickly and easily. As the title suggests, this is a beginner book—as in, you don’t need any experience to use it. Unlike most books, I don’t assume you already have some programming experience (although, you do need to know how to use your computer system). The really cool thing is that this is the book you need if you’re learning about programming in school and your school uses Python as a learning tool.
This book contains a wealth of examples, but you go through them using step-by-step procedures, so there isn’t any of the head scratching that occurs when you work with other books. The examples were tested on the Macintosh, Linux, and Windows platforms, but I’m sure they’ll work on other platforms as well. Any platform that runs Python and provides access to IDLE will be able to use this book. Here’s a list of the things you’ll learn:
Part I: Getting Started
Chapter 1: Talking to Your Computer
Chapter 2: Getting Your Own Copy of Python
Chapter 3: Interacting with Python
Chapter 4: Writing Your First Application
Part II: Talking the Talk
Chapter 5: Storing and Modifying Information
Chapter 6: Managing Information
Chapter 7: Making Decisions
Chapter 8: Performing Tasks Repetitively
Chapter 9: Dealing with Errors
Part III: Performing Common Tasks
Chapter 10: Interacting with Modules
Chapter 11: Working with Strings
Chapter 12: Managing Lists
Chapter 13: Collecting All Sorts of Data
Chapter 14: Creating and Using Classes
Part IV: Performing Advanced Tasks
Chapter 15: Storing Data in Files
Chapter 16: Sending an E-mail
Part V: Part of Tens
Chapter 17: Ten Amazing Programming Resources
Chapter 18: Ten Ways to Make a Living with Python
Chapter 19: Ten Interesting Tools
Chapter 20: Ten Libraries You Need to Know About
All the basics are here. By the time you complete this book, you can perform essential Python programming tasks and even use your new found knowledge in practical ways, such as sending an e-mail or storing data in files. Of course, there are limits to most books. This one doesn’t cover advanced topics—instead, it serves as your introduction to such books. Instead of spending hours just trying to figure out the jargon in these advanced books, you can move right along with doing something interesting.
This is your must have introduction to Python. Of course, I’m sure you have questions and I want to hear from you about them. Please feel free to contact me about any questions you have at [email protected].
The question of just how robots will affect us in the future consumes quite a bit of my time because I’m so interested in how they can be used for good. For example, robots are currently used to fight fires and to keep humans out of inhospitable environments. We also rely on robots to build some of the goods we enjoy and as a result, there are fewer assembly line accidents today than there were in the past (the quality of the output is also increasing). In the future, you can count on robot technology to help you remain independent, rather than ending up in a nursing home. There are even cars that rely on robots to drive them today and if things turn out as I expect, everyone will eventually use this sort of vehicle because robots will actually follow the traffic laws and reduce accidents as a result. In fact, it’s not too surprising to think that robots will appear in a lot of different situations that you don’t see them in today.
Humans are afraid of change. So, I’m also not surprised to find reports online that range from robots stealing jobs to terminator type robots killing us all off in order to save us (as in I, Robot). The fact is that robots really are under our control and as long as we exercise even a modicum of judgement, things will remain that way. I’m not saying that we couldn’t create a terminator-style robot. Recent advances in chip technology make it quite possible that we could create such a robot, but it’s important to ask why we’d ever do such a thing. In order for a new robot to become successful, there has to be a commercial reason to develop it and no one is interested in creating a terminator to destroy the human race.
What I think is more likely to happen is that robots will become companions to humans—devices that are both willing and able to take the risk out of human existence. The reduction of risk is an essential element in the robot/human relationship. We’ll continue to increase our use of robots as long as we can see a significant benefit to our personal lives. For example, it would be nice if we could eliminate the use of nursing homes altogether—that people could continue to live in their homes using robotic assistance. And, because those robots would be dedicated to the humans they serve, the standard of caregiving would increase dramatically. Of course, we have to get used to the idea of talking to a mechanical contrivance. Wait, we already do that—just consider how people interact with applications like Apple’s Siri.
Of course, people are asking what humans will do in the future if robots take on all of the tasks we have them slated for. For better or worse, the human condition has been changing at an ever more rapid pace over the last several years. If you look at just one statistic, you’ll miss what I’m trying to say here. For example, humans now live to an average age of 80 in many areas of the world—the average age will only increase barring some major change. People have children later in life now and focus more on career during the early years. Schools focus on getting kids to college and the college courses are becoming more challenging. In short, the environment in which we live today will change significantly in the next 40 or 50 years—to the point that most people won’t recognize the future as being any part of the past.
The change that has grabbed my attention most though is how much technology is now incorporated into humans (and the pace is only increasing). Yes, most of the technology currently does things like help people walk—it meets accessibility requirements. However, it’s only a matter of time before the technology will be used to help extend life and potentially make humans better adapted at excelling at tasks that we can’t even imagine now. So the question isn’t one of robots stealing jobs or killing us off terminator style, it’s one of understanding that humans are changing is a significant way and we’ll actually need robots to excel in the future. Let me know your thoughts about robots and our future at [email protected].
It’s only September and yet the thermometer has dipped into the 30’s. Since we live in a big old farmhouse with lots of character, we have consciously changed it as little as possible. We only make changes if we absolutely need to. For example, a few years ago our roof was leaking in multiple places and if we let it continue, we would face much bigger issues like structural damage. So, we look at the best roofing companies Winston Salem had to offer and picked the company that was able to maintain the farmhouse’s character. And in a perfect world, we would have all of the original storm windows. But unfortunately, we don’t live in a perfect world. We have a mixture of old wooden storms, some aluminum and a couple of windows that have been missing the storm for years. But we have learned how to button up this old fashioned house using some old techniques and developing a couple of new ones by trial and error.
First and thankfully, a previous owner had the foresight to completely surround the framing of the house with insulation from the attic to the basement. That addition is key to keeping any house warm during the Wisconsin winters. There are several ways to insulate the walls in all price ranges. Many of them can be done by a do-it-yourself enthusiast.
The next most important thing that can be done to keep the drafts out of an old home are tight windows. A previous owner installed aluminum double hung windows. We check them over every year (washing them when possible) to make sure that there is a tight seal. If the caulking has hardened or fallen away, we replace it. There are also some of the original wood framed storm windows that we check over every year-re-caulking as necessary. We put the storm in the window and go inside with a candle to check for any draft. If there are drafts or the window feels loose, we fill it in with rope putty.
For windows that have the storm completely missing, we use the plastic window kits. In order to be effective, they are best installed on a calm, warm day so that the adhesive is tacky enough to stick well. For any window that is going to be subject to lots of wind, it is a good idea to install plastic on the inside and outside as well. Follow the directions for the window product.
Lastly, the simplest thing to do to help the house be warmer in the winter is is the same as when our ancestors did it. Open the shades during the day! Capture the solar energy inside on sunny days, then close the drapes at dark and hold the heat in!
Another item that must be attended to before the winter sets in is making sure that your furnace is in good working order. It is a good idea to leave this to the expert. Your favorite carrier furnace repair guy can come out and inspect it to check it doesn’t need anything doing to it. If it does, he can fix it for you! There may be a charge for the service but compared to an emergency call in the dead of winter; or worse yet a fire call, it is well worth the price! You may want to find a furnace repair company sooner rather than later as the winter is one of the busiest periods for a heating company and they can get booked up very quickly.
Smoke detectors need their batteries changed twice a year. Utilizing the biennial time change date will help jog your memory. If your smoke detectors are old (anything over ten years), it may be time to replace the whole unit rather than just the batteries. Regardless of whether you repair your current smoke detector, or decide to get a new one altogether, it is really important that you implement the relevant changes. You may find this piece of information interesting if you are thinking about either options and how professional electricians can resolve the problem for you. But why is this so essential? Because it could help to save you, your family, and your home in the event of an emergency. You just need to consider both the options so you can do what is best for you. (However, if you want to test your smoke detector, use a spray tester, rather than the smoke from a match or candle, because the smoke can actually cause the detector to fail.)
Outlets are often a source of secret heat loss. Insulating liners are available that can be installed behind the outlet cover that can help keep these sneaky heat thieves from creating cold spots in the room.
Some people dread the fall, knowing that it is the precursor to winter. Others, like me, revel in the beauty of the fall colors and the smell of the crisp leaves. I thank the good Lord for the reminder (and the time) to prepare for the cold season. Good planning and good preparation leads to a great party! So this winter, prepare for Old Man Winter and Party On!
If you have tips for preparing for the fall preparation I would love to hear from you! Please respond here or send an email to John at [email protected].
In my Using CAPTCHA for Comments post, I described the need to use CAPTCHA to help keep spam under control. Using CAPTCHA has dramatically reduced the amount of spam the blog is receiving and provides a nicer environment everyone. In a perfect world, I wouldn’t need CAPTCHA, but the spammers have other ideas. So, this is one of those situations where everyone has to pay for the misdeeds of the few and I truly am sorry I had to implement this solution.
Of course, anti-spam solutions are only good if they actually do the job. This solution does keep the spam under control and many readers have written to tell me that it works better than the CAPTCHA solutions used on other sites. I want things to be easy and workable for everyone. This solution also seems to be doing a better job of keeping the spammers at bay than other solutions I’ve tried, so it’s both easy and effective—a rare combination.
A reader mentioned yesterday that he couldn’t get the CAPTCHA I selected for the site to work. The CAPTCHA solution doesn’t want to accept the input he’s providing. What I’m trying to do at the moment is track down what is happening because I want everyone to be able to post comments as needed. If you’re having problems using the CAPTCHA on this blog, please let me know at [email protected].
Please provide specifics on what you’re seeing to make it easier for me to hunt the problem down. If you could also let me know which OS and browser you’re using, that would be helpful. I need as much information as possible to determine whether I can fix the problem or whether I have to work with the CAPTCHA provider to fix it. I’m hoping the problem is limited to a few people and that there will be an easy fix, but I need good information to make this determination. Thanks, as always, for your help!
My upcoming book, Beginning Programming with Python For Dummies, describes how to start working with Python. You discover how to perform all the basics and I even provide a few real world examples. However, once you’re done with the book, you might ask how Python can be used for real world programming of the sort that you need to do. One of the most common tasks is creating a user interface. Just about every application out there requires a user interface and it has become popular to make user interfaces touchable. Fortunately, Python developers have access to a huge number of libraries to make seemingly hard tasks simple. In fact, that’s one of the advantages of using Python—the immense number of really practical and useful libraries at your disposal. It’s possible to find a library for just about any need.
Of course, there are tons of libraries for Python, so why did I choose to talk about this particular library? It turns out that Kivy is proactive about obtaining as much developer support as possible, to the point of running contests (yes, that’s more than one of them) to see what sorts of things people can do with Kivy. I’ll admit it, I was bedazzled looking at all the eye candy on this site. What I thought was a five minute scan of the example applications turned out to be more than an hour of perusing what’s possible with Kivy and Python. All you need to do to try one of the applications out is to click its link, download the code, and start running it. Nothing could be easier (or time consuming as it turns out). Soon, you’ll find your days consumed by checking out Kivy applications too.
Fortunately, Kivy is also free. All you need to do is download the copy for your platform and install it. So, you get this great library that you can use for your business applications and it doesn’t cost you a dime. What I’d most like to hear about is whether someone is using Kivy in a large scale business application and how its performing for them. Speed is always an issue with Python, despite all the other amazing features it provides, so finding libraries that use every bit of speed Python has to offer is essential.
I take a lot of time looking for various tools, libraries, applications, and other resources for readers to use with my books. I’m not looking for anything cheesy, crippled, or difficult to use—I want well written, popular, and preferably free resources I can share. If you have a resource that specifically meets the needs of my readers, please let me know about it at [email protected].
Someone recently wrote to ask me about what I thought the trends regarding the command line are. Based on my statistics, I would think that administrators are continuing to use the command line and more power users are rediscovering the command line. However, basing an opinion solely on book-related e-mail isn’t always the best idea and it certainly isn’t very scientific. Statistically, the e-mail is probably skewed to some extent because people aren’t speaking in general about their feelings—they have specific questions.
So, today I come to you with a request. Could you either comment to this blog post or send me e-mail about how you use the command line, or whether you use it at all? Microsoft is doing everything it can to move people to PowerShell. You can do quite a lot with PowerShell, including writing scripts that are more robust than those you can write at the command line. In addition, there are sites, such as PowerShell.com, that cater to the needs of the PowerShell user.
Even though it would seem at first like PowerShell is the future and the command line is passé, the command line has the advantage of simplicity and long term stability. In addition, there are still more resources available for the command line than there are for PowerShell. I generally use the command line for all my needs because I simply haven’t had a need for the additional resources that PowerShell provides. Let me know your thoughts about the command line and whether you generally see PowerShell as the required replacement for it at [email protected].
I grew up in a meat and potatoes household. Although my mom grew a garden full of a wide variety of vegetables, my dad really only believed that there were 4 kinds of vegetables worth eating. Those were corn, peas, beans and potatoes. As a result, most of our meals were created with those basics but there was always plenty! If we didn’t have enough production of potatoes from the garden, my dad would stop by a roadside stand in the fall and buy a bag of 100 pounds for about $4. That would last us through the winter and into the early spring. In the fall, potatoes are at their least expensive and best quality compared to any other time of year. Buying them in bulk and storing them is as good an investment now as it was when my dad was doing it in the 60’s.
Storing potatoes is one of the earliest self-sufficiency skills I learned. We always lived in an old house with an unfinished cellar. We would put the potatoes down in the basement in a barrel and just go to collect what we needed when it was time to make supper. Once in awhile we would come in contact with a slimy potato that had to be tossed out. We were warned that we should always bring up anything that had been in contact with the bad potato so they could be used right away. As kids, the science wasn’t explained to us. It was just the rule. Now that I understand the science, it’s still a rule that I live by.
Here are some rules for successful potato storage:
Choose a potato variety that is appropriate for storage. My favorite is Kennebec. Some like Russet. There are others. The grocer or garden center should be able to tell you which potatoes are going to be good for storing. You can also go online to find the attributes for most vegetables.
Raw potatoes should not be washed before storing. Remove the big chunks if you have been digging during a wet season. However, a powdery coating of dry soil toughens the skin and helps them stay dry longer in storage.
Check all potatoes over for spade cuts or bad spots. If there are soft spots, cut away the bad section and use only the good one or discard the whole potato.
Do NOT store anything with a bad spot or spading fork cut.
After sorting, store the unwashed raw potatoes in any place that is dry, cool (but not cold) and dark. Exposure to sunlight will cause the skin to go green, get bitter and can cause illness if you eat a large quantity.
Frequently check your stored potatoes for any that have developed soft spots and discard them immediately when you find them.
Wash and dry any potatoes that are in contact with a bad one during storage. Keep it apart so it can be used soon.
With smaller houses and less storage space, it is still possible to find good storage for potatoes. One way is to store them in milk crates in a pantry, cool closet or heated garage alongside an outer wall. If the area has a window, drape a heavy cloth over the whole stack. With the coolness of the wall, the airflow created by the construction of the milk crates and the dark provided by the cloth, it works beautifully. As the potatoes at the top are used, take the crates out to store and start on the crate below it.
Also, if you have a rarely used, cool bedroom; a layer of crunched up paper under potatoes in an under-the-bed container is the perfect place for storing them. Winter squash and pumpkins can be stored there also! The main idea is to keep them dry, dark and cool but not frozen.
Another favorite way to store potatoes is simply to put your pressure canner into play.
As with other vegetables, canning potatoes is a great way to control the salt level and quality of the food as well as customizing the cut of the finished product.
For best results, the potatoes should be washed and peeled before cutting into your favorite shapes – slices, cubes, shreds or small whole potatoes.
Amandolin is a useful tool when cutting potatoes into thin, even slices. Be very careful when using a mandolin because it has an extremely sharp edge.
A French fry cutter is great for making cubes. Simply put the potato through the cutter and then cut the ‘fries’ into chunks. This cuts the potatoes into really nice sized cubes.
Always follow the instructions for canning that came along with your pressure canner.
Do NOT try to pressure can anything completely absent of salt. A little salt is absolutely necessary for successful canning.
Once the potatoes are processed and cooled they are ready to eat! You can rinse them, cold and use them in potato salads. You can microwave them to have them warm. You can mash them with garlic and butter. You can drain them, dry them and fry them with your favorite seasonings for fantastic hash browns. In a pinch, you could eat them straight from the jar!
The potato is the workhorse of the pantry. It is low in saturated fat and sugar. It has no cholesterol or sodium unless you add it. It is also high in potassium and vitamin C as well as very high in vitamin B6, the vitamin that helps to improve moods.
If you have stories or recipes using potatoes, I would love to hear from you. Please share them by adding your comment to this post or contacting John at [email protected].