Friday, November 16, 2012

Watch What Permissions You Give

Watch what permissions you grant to apps on social sites and on your cell phone.

I logged into Facebook today and there was a message " wants to include you as a travel connection in Tripadvisor."

I clicked it and saw this (faces obscured for privacy reasons):

I don't know why Tripadvisor needs to have access to all that in order to make travel suggestions, but I'd never grant it. On the other hand, my work issued blackberry has been prompting me lately saying that the Phone app would like to access phone information. ...well, Duh! of course the phone part of my cellphone needs access to phone information. Funny thing though, I denied it and was still able to use the phone... so I'm not sure what phone info it needs, but It seemed to be doing ok without it.

Sunday, November 11, 2012

Test Your Passwords

This is a little follow-up to the post about learning to program in python.
I thought I would throw some code out there for people to play with.

This program is written in python3. It prompts the user to enter a password that they want to test and compares it to complexity requirements and then checks if it is in a file called passwords.txt in the working directory.  It will tell the user if the password meets complexity requirements (currently set for windows' standard for complexity (8+ characters and 3 of the 4 categories: upper case, lower case, number or special characters)  There are some unused functions in this such as num_specials() that are there in case you want to customize it for stricter password requirements.

You will need to provide a passwords.txt file with one word per line of passwords that the user should not use. A good place to look for password lists is

If you are learning python then take a look at the code, run it in IDLE, play with the functions, see if you can extend it to do something cool.

If you are not learning python that's cool just place a password.txt file in the same directory full of words you don't think are good to use (The top 10 most used passwords is a start), and run it like so:


 Anyway, here is that code:

Saturday, November 10, 2012

Want To Learn To Program A Computer?

If you have never taken a computer programming course before I'd strongly recommend picking up python as your first programming language. (version 3 if you are starting from scratch)

Take a beginner's course over at Coursera.  I highly recommend the University of Toronto one, Learn to Program: The Fundamentals, which is just wrapping up it's first semester now (and should be starting again soon) Paul and Jen's approach of teaching functions first, starting with defining exactly what the function should do, including examples of inputs and the expected outputs, in the docstring, then moving on to actually coding the function to do that is much easier to get your head around than the way I learned programming back in the early to mid 1990's.

Of course there is also Google's Python Class that is available on-demand, but not as interactive.There is thenewboston's YouTube tutorials, which are really engaging and perfect for new programmers.
Or there's Codecademy: Python or if those methods don't work for you, there's Learn Python the hard way pick what works for you. They are all free.

Pick up a free e-book, or perhaps several of them, from

I'd recommend starting with Think Python: How to Think Like a Computer Scientist or Dive Into Python 3.

The main thing that holds a lot of us back from learning how to code is not having an idea of what we would like to do with the code. Sometimes all it takes is just sitting back and thinking about problems that you'd like to solve, tasks you do repeatedly every day, every week or every month that could be simplified because you do the same thing every time, again and again. Those are things that computer programs are good for.

I manage a lot of windows computers. Some of them are on the old side, running dangerously close at times to the limits of what their hard disks can hold. Time and again, I found myself going in and deleting uninstall files for updates I knew I would never be uninstalling, just to free up a little space. So, I wrote a program that looks for those files and checks how old they are. If an update was installed more than 90 days ago it deletes the uninstall folder for it. Launching that program saves a bit of precious time each time I find I'm in that position of having to free up some disk space ASAP.

Sit down and think, what tasks like that could you automate? I bet there are at least a few.

Another one was a program that reads a comma separated list of computers (name, ip address, mac address) and uses Wake On LAN to wake the computers in that list up at a specific time. At first I had it call a command line based wake on lan program I downloaded from the net, but later I revised it to create and send the WOL Magic Packets itself ...The possibilities are basically endless.

Monday, November 05, 2012

Free E-book - Learn Windows 8

 Are you looking for a good book to learn Microsoft's new Windows 8 operating system? Start with this free one from Microsoft :

Introducing Windows 8: An Overview for IT Professionals

more free e-books