WizGidget

March 30, 2011

Backup Solutions, Part I

Filed under: Belton Journal, Info Bytes, Tips & Tricks — pmckinley @ 12:00 AM

One of my church friends Jim asked me about backup solutions, so I thought it might be good to drill into that subject this week.

First, let’s think about why we need backups: data loss. One way you could lose data is if your hard disk crashed, in which case you would most likely lose all of the data you have on that computer. Years ago disk crashes were fairly common, but these days they’re fairly rare. Even so, it’s a good idea to take backups. Another way would be if the data on your disk were corrupted somehow, such as by a virus. Yet another way would be if the computer were stolen, such as having a laptop stolen out of your car. Finally, and most usually, what I call a “short between the seat and the keyboard” — you accidentally delete or overwrite a file you realize you needed. So, there’s three basic modes of data loss: total data loss, partial data loss where the computer becomes unusable, and one or two files.

The fast, easy and fairly cheap way to provide backups these days is using an external USB drive. There’s a bewildering array of these available: I did a quick check of the local office supply chains as well as a major electronics retailer to find a combined 13 different makes of external USB drives. Some of them are intended to be desktop, some are portable — I have two that I carry with me when I travel. Most if not all of them these days come bundled with some form of backup software.

There are several things to look for in an external backup drive and it’s software. First, I’d look for one that can provide an emergency recovery backup. My Maxtor external drive has something it calls “SafetyDrill”, that when combined with a DVD that came with the drive will pretty well put humpty back together again — just connect the drive, boot off the DVD, and follow the instructions. This assumes you’ve taken the SafetyDrill backup beforehand — it can’t recover your data from thin air. The SafetyDrill backup isn’t intended to recover individual files, it’s a disaster recovery tool. Also, my other external drive, a Seagate drive, doesn’t have this feature.

The next thing to look for is the backup software itself. You’ll want something that can take “incremental” backups, which is to say that after taking a full backup you can then regularly backup only files that have changed. You need this feature to recover from those “oops” situations where you deleted or overwrote a file accidentally. If you set the backup software to do an incremental backup every night or every other night, you’ll likely have a good copy of any file you accidentally delete. Which brings up another feature you need: the ability to schedule backups. You also need something that’s going to be fairly easy to use, although I don’t really see how you’d know that before the purchase decision, unless the people at the store have a demo set up for you to test drive.

Next week we’ll continue the discussion on backups.

March 23, 2011

Creative Retailing

Filed under: Belton Journal, Info Bytes, News — pmckinley @ 8:00 AM

You may have seen some of the ads on television recently about the new “Auction” site called QuiBids.com.  Son Jesse checked it out, and it sounded like a good topic for WizGidget.

Basically, QuiBids puts new items “up for auction”, and registered users “bid” on the item.  It costs 60 cents for each bid.  Every time someone bids on an item, it increases the price by one or two cents, depending on the auction.  The auction goes for a specific time, although if bidding is continuing on an item the “Timer” gets extended.  If the timer goes below 20 seconds, and someone bids, the timer gets reset to 20 seconds.  After so many bids, it only gets reset to 15 seconds, and then 10 seconds, and eventually it no longer resets — kind of a “going…. going…. gone!” thing.

The auctions start at zero, and yes usually the item “auction price” goes for much less than what a retail item would fetch. Let’s take one auction as an example.

The item was a Mark of Fitness WS-820 blood pressure monitor — IF you can believe the photo on the auction — they don’t tell you the model, and have a caveat “Contents of package may vary from those pictured”.  Target had them online for $60, but I found them as low as $30, and more typically about $35.  Quibids listed their “value price” as $35.15.  When I started watching this auction, the auction price was 20-something cents.  The auction ended at $1.96.  The winning bidder bid 22 times, which cost them $13.20 (60 cents times 22 bids) plus the $1.96 auction price, for a total cost to them of $15.16 — about half off.  Oh, and they had to pay $7 shipping.

So, how does Quibids make money on this, when the sale price ends up being half of retail, you might ask?  Let’s do the math.  It costs $.60 for each bid, and each bid ratchets the price by one cent.  The $1.96 final price translates to 196 bids.  196 x $.60 = $117.00.  So, Quibids sold a $35 blood pressure monitor for $117.  Creative retailing, eh?

Getting something half off may seem not too bad, until you think about the fact that there were 196 bids on the item, out of which only 22 were from the winning bidder.  If the typical bidder bid 22 times more or less, that translates to about 8 bidders, which each invested $13 or so to bid on this item.  One won.  Seven lost.  It reminds me of my friend Jerry’s comment about the Lottery being a tax on people who are bad at math.

There is an escape clause though.  They have a “Buy it now” feature, which basically allows you to use the amount you’ve spent bidding on an item to buy an identical item at the “Value Price” — within 2 hours of the auction end.  What this means is that when you bid, you’ve decided to buy that item, at their price, without really knowing exactly what the item is.  Show me a retailer, and I’ll show you someone who likes the idea of getting a customer to commit to buying at retail by charging them 60 cents a bid to try for a better price.  Getting customers to commit is probably one of the hardest tasks for a retailer.

March 16, 2011

Speed up by Defragmenting

Filed under: Belton Journal, Info Bytes, Tips & Tricks — pmckinley @ 8:00 AM

Spouse Ann asks about ways to speed up her PC.  One easy way is to defragment the disk.  First let me explain what disk fragmentation is. As your computer writes things to the disk, it allocates blocks of data on the disk to whatever file is being written.  Ususally the blocks are allocated in full sectors. Think of cutting a pie —  Ann likes to cut really small slices to get maybe 12 slices.  Then think of concentric circles around the pie that cut each piece into really thin arcs.  That’s about like a sector on a hard disk — it’s a portion of a full circle around the disk.

When you first write a file, generally all of the blocks (sectors) are all together, so it’s easy to read the data.  If you only wrote data to the disk all at once and never erased, you might not ever need to defragment.  But we generally don’t work that way.  We write a little to this file, then write a little to that file, the erase that file.

Let’s say I create a Word document.  I write a bit to the document, and of course save it.  Something else comes up, so I go on to something else, and start creating a new file, which gets written starting with the block just after the last block written for the previous file.  When I go back to the first file again and add to it, it doesn’t have any more free, contiguous space, so it hopscotches over whatever’s there and starts writing on the first free block.  When you erase files, that creates free blocks in the middle of other files, which will then start to be used, but those also are of fixed length, so that leads to more of the hopscotching thing.  That is fragmentation.

When files are fragmented, the read-write head, about like the needle in an old phonograph, has to be moved around a lot (called a “seek”) to find the right blocks.  Also, let’s say the current block I’m reading is on sector 1, while the next block is in the last sector, sector 12 (Ann cut this disk to get lots of pieces).  As the disk is spinning, I have to wait until the right sector comes around before I can read my block, almost a full revolution of the disk. You can see that all the hopscotching and waiting for the slot to come around on the merry-go-round can really slow things down.

Defragmenting reorganizes files on the disk so that the blocks are all together.  It’s an easy thing to do.  Open a Windows Explorer by right-click on My Computer (or the Start button), then click Explore.  Make sure the folder hierarchy is displayed in the left pane (click the Folders button), then expand “My Computer” in the left pane.  Right click on the C: drive and select “Properties”.  Pick the Tools tab of the Properties window; and click “Defragment Now.”  Right-click the disk to be defragmented (C:) and pick Defragment.  I recommend starting the defragmentation just before you wander off to bed — it can take a very long time.

March 9, 2011

Running out of Addresses, part IV (and Last)

Filed under: Belton Journal, Info Bytes, Tips & Tricks — pmckinley @ 12:00 AM

Last week I introduced IPv6, which is the eventual solution to the IPv4 address exhaustion issue.  Besides having a much, much larger addressing space (from 4 followed by 9 zeros to 3 followed by 38 zeros), IPv6 has a number of other features built in,  including some security features.  It’s more complicated than IPv4, which means us propellorheads will have to get bigger propellors.  Probably the biggest issue with IPv6 is that it isn’t compatible with IPv4.  If the equipment is designed for it, such as routers, computers and such, the equipment can handle it, but it’s like having two different networks on the same wire — they don’t talk to each other.

There is some equipment that can translate between the two protocols, but I suspect what will happen is that internet providers will at some point simply stop issuing IPv4 addresses and require using IPv6 addresses.  I don’t think that will happen for several years, but when it does it may mean buying a new router and/or getting some help with reconfiguring the network on our computers.

For instance, I run both a Cisco “Pix” firewall and a wireless router on my home network.  The Pix supports IPv6 at software version 7.0.  I can upgrade the software in the Pix, but I don’t think the model I have can be upgraded past the version I have already, so it’s likely my Pix will become obsolete.  That was an expensive piece of gear — about $500 new.  The modern replacement for the Pix will cost about $350 new, although I might could find a used higher-model Pix that could handle IPv6.  And then again there are probably other firewall-routers out there that would do the same thing(s) for much less.  The wireless router would also have to be replaced — it doesn’t handle IPv6 no way, no how.  Fortunately there again there are better wireless routers on the market that sell for $100 or so.  One of the things I really need the Pix for is getting a VPN (“Virtual Private Network”) connection into my home network from “outside.”  The newer wireless router I mentioned does VPN, so it might satisfy the need within a single network appliance.

It seems likely that most of us will have upgraded to IPv6 compatible equipment by the time it becomes a requirement.  Granted that I tend to run things for years past their normal lifetimes, but I have had to replace our wireless router about 5 years ago when the old one succumbed to a lightning storm, or getting too hot or something.  So, it seems reasonable that it will have to be replaced again eventually, and all the new ones support IPv6, and usually also are faster and more powerful.

IPv6 is supported on Windows XP and later, and although it needs to be turned on and may take some tweaking, after being turned on it should configure itself just as your PC does now when you connect it to your wireless or wired router.

Got a computer question or having an issue that would make a good article?  Contact the author through the Journal or WizGidget.com

March 2, 2011

Running out of Addresses, part III

Filed under: Belton Journal, Info Bytes, Tips & Tricks — pmckinley @ 12:00 AM

Last week the discussion left off with addressing for end users — people who are accessing the internet like you and me.  Many if not most internet providers use a live internet address for each of their subscribers, although the addresses are dynamic — a new address is issued every time you connect.  So, for instance if you had your computer connected directly to your cable modem or whatever, and I knew your internet address, I could conceivably connect to your computer.  This would be a Really Bad Idea, because if I can connect to it, then so can all the hackers in Korea, China, Russia and Romania.  This is why I recommend people use either a wired or wireless router between their computer and their internet connection.  So, if every internet user gets his own address, that could mean it would be difficult to get a connection to the internet.  You might try to connect, but couldn’t get anywhere because you couldn’t get an address.

It’s possible that your internet provider could use something called “NAT” (Network Address Translation) to expand their assigned addresses out, many users to one address.  The typical wired or wireless router for home use does this — it needs one address on the “outside” to connect to the internet, but it also handles having many addresses (computers, printers or what-have-you) on the inside.  The addresses on the inside aren’t true internet addresses, they’re usually on what’s called a “non-routable subnet”.  So for instance, your “outside” address might be 66.196.3.249, while the inside network is 192.168.123.(something between 2 and 254).  Your router would “live” at 192.168.123.1 on the “inside”, and your computer would be for instance 192.168.123.10.  When you access the network, the router translates between 192.168.123.10 and 66.196.3.249, so from a server on the ‘net, it looks like the connection is coming from 66.196.3.249.  The router tracks connections (each connection has a unique sequence numbers assigned) so that when whatever server responds, the router says “Oh, that’s connection number 1928734, that means the packet needs to go to 192.168.123.10 on the inside.”  The cool thing about this is there’s no way to create an inbound connection: the exchange has to be initiated from the “inside,” and this is why using a router provides security.

The NAT thing could work for normal users, but some of us propellor-heads have servers we run from our “home” connection.  Those servers have to have a live address in order to be useful, so that the connection can originate from the “outside.”  So, there’s no way of getting around it, sooner or later we’ll need more addresses.  What we need is a new addressing mechanism that has more addresses, and that solution already exists, in the form of “IPv6.”  IPv6 uses 128-bit addresses, so the new address space supports 2128 (3.4×1038 or 3 followed by 38 zeros) addresses.  Weren’t we talking about Really Big Numbers just last week?  IPv6 technology is already available on most operating systems like Windows 2000 and later, MacOS, and I would expect all versions of unix from the last 10 years or so.  Next week will finish up with what IPv6 means to us end-users.  Be sure to send in your questions for future articles.

February 23, 2011

Running Out of Addresses, Part II

Filed under: Belton Journal, Info Bytes, Tips & Tricks — pmckinley @ 12:00 AM

Last week I introduced the internet address exhaustion as an issue, and explained the difference between an internet domain and an internet address.

As mentioned, the current addressing scheme uses four numbers separated by dots.  Actually the address is four 8-bit numbers (remember everything computer is binary at some level and “bits” are digits in a binary number), where an 8-bit number can have values between zero to 255.  Four of these numbers translates to 32 bits (8×4=32), ) which is effectively 2 times itself 32 times, a number that translates into 4,294,967,296. There’s some overhead in how the addressing works so the actual available addresses is maybe a half percent less than that.  The point though is that it’s a somewhat limited number, about 4 addresses for every 6 people on earth.

I can imagine a scenario where every person needs several addresses, such as one for your phone, one for your PC, one for your laptop, and so forth, so despite the fact that there’s lots of people in the world who don’t use the internet, that number is made up by all the web and email servers in use. Eventually we’re bound to run out, and that’s what happened February 3, 2011, at least the last of the main blocks of addresses were allocated to regional internet registries.  At this point either your eyes have glazed over, or your propellor beanie is really spinning, so let’s get down to what it means to us civilians.

In terms of domain names, it doesn’t really mean anything.  Remember we have DNS (Domain Name Service) to provide mapping between URL’s and the actual address.  Internet domain names have their own limitations, but it’s more of a practical limitation than a functional one — domain names can be up to 63 characters (a-z, 0-9, and “-”) long, not including the www or the .com.  That’s a LOT of permutations (think 37 characters raised to the 63rd power, or 6 with 98 zeros, a Really Big Number), but typing in 63 characters can be a bit cumbersome, especially if they’re random characters, so that cuts down on the practical list of domain names.

Also, it’s possible to run multiple domains on the same address.  The http protocol specifies that when you type in a URL, the packet of information that gets sent to the server to request your webpage includes the URL of the page.  It’s not difficult for the server to sort out which web server to send the request.  The web server where wizgidget.com lives has something like 30 different domains/websites.  It’s quite common to have hundreds or more, although the web hosting services that load too many suffer from poor performance. Your website’s cheap hosting service may mean that they’ve leveraged their server a bit much so your site may be a bit slow to load at times.  So, address exhaustion could possibly be an issue for websites, but we’ve kinda handled that.

Another possible issue would be end users  like you and me — people who are trying to access the internet.  You have to have an address to get to the internet.  Next week we’ll continue with this issue — addresses for end users.

February 16, 2011

Running Out of Addresses

Filed under: Belton Journal, Info Bytes, News — pmckinley @ 12:00 AM

Spouse Ann asks: “There is a lot of noise right now about how the internet is running out of addresses. A new system that is not compatible with the old is in the works. But how does this affect us who are trying to get new websites up and how does it affect purchasing a domain name.”

I think it would be helpful first to differentiate between a domain name and an internet address. A domain name is a “user friendly” name used to connect on the network, like “wizgidget.com”.  It’s a bit like saying “First United Methodist Church of Belton Texas” — you know what/who it refers to but maybe not where it is.  The internet address (at least the current “IPv4″ address, more on that later) is a sequence of four numbers separated by “dots”, such as 173.201.16.100 (which happens to be the address of the server where wizgidget.com lives).  It’s also referred to as the IP address, where IP means Internet Protocol.  The IP address is about like the street address, such as “204 East 3rd Ave.” is the street address for First UMC Belton.  That and a map will get you there.

Web page URL’s (Uniform Resource Locators) that we use to navigate to web pages generally start with the domain name, and may be followed by a specific path on that server, such as “wizgidget.com/articles” for the articles published on wizgidget.com.  Think of the part that comes after the domain, the “/articles” part, to be similar to referring to a location within the church, like “/first-floor/kitchen/west-wall/top-cabinet/left/topshelf/bowls” might refer to the place where you’d find something within the church for serving chili.  Most people are used to adding the “www” on the beginning, ala www.wizgidget.com, but in many cases that’s not necessary.  The “www” in “www.wizgidget.com” is actually the “hostname” part (a “host” being a “server” or computer in this case) or specifically the name of A (not necessarily THE) server that lives at wizgidget.com.  “wizgidget.com” can itself refer to a server.  A given domain may have one or many servers, with each server having a different address, just like a church might have several buildings, each of which has a different address.

Naturally, knowing “FUMC Belton” isn’t very helpful to you, unless you either know where the church is already, or have a way of using the name to look up the address.  The internet has a lookup facility called “DNS,” which stands for Domain Name Service.  It’s a bit like the whitepages in the phone book — if you know the name, you can look up the address.

A bit earlier, I referred to the “IPv4″ addressing that is current primary addressing scheme.  By the way, “IP” stands for “Internet Protocol” which is the standard that describes the addressing scheme, and “v4″ is the version of the standard. As mentioned, IPv4 addresses are a series of four numbers, with each number having a values between 0 and 255.  The challenge comes in that this numbering scheme defines a finite number of addresses: approximately 4.3 billion usable addresses.

Next week, we’ll dig a bit deeper into IPv4.

January 19, 2011

Of Humor and Prophets

Filed under: Belton Journal, Info Bytes — pmckinley @ 8:00 AM

I’ve noticed that there seems to be two alternative characteristics that make things seem funny: either it’s patently ridiculous, or it skates a bit too close to the truth.

Since my background is engineering, I tend to think of things in geometric terms.  So let’s think about this in terms of a number line, with some arbitrary point as zero that represents reality or truth: the way things really are.  Let’s say our point of ridiculousness is somewhere around 10, so anything above that is patently ridiculous, and therefore funny (or stupid and therefore funny).  Moving towards smaller numbers things start to look a little more reasonable around 2, but they’re still enough “off” to tickle our funny bone.  Between a 2 and a 10, things are a bit blasé because they aren’t ridiculous, but they’re still patently untrue.  Keep in mind that the scale varies between individuals, and also depending on the emotional state of the individual.

Let’s take a look at the patently ridiculous.  Someone makes a statement that is so blown out of proportion that it’s laughable, like someone who has no manual skills saying they’re going to take on a remodeling project by themselves.   We see that a lot on spouse Ann’s favorite channel: HGTV.  Clowns and caricatures are funny because they exaggerate things to an extreme.  We laugh.

Now let’s look at “Skating too close to the truth”.  Political cartoons are a good example, they’re funny because there’s some truth to them.  Actually a lot of the comics in the Sunday paper are funny because they’re almost, but not quite true.

The skate mode is a bit tricky though: it has a fairly short span on our humor line, say from a 2 to about a 1, and the boundaries are sharper, less fuzzy.  Anything below a 1 is risky.  The problem with being TOO close to the truth is that it assassinates our self-image of perfection.  It challenges us to examine ourselves and engage in the very hard work of improving ourselves by overcoming bad habits and seeing ourselves as we really are.  We don’t really like seeing ourselves as we are, we feel threatened by the need to change because change is darned hard work and we’re basically pretty lazy.  So we tend to respond in a less-than-positive way.  Going too close to the truth with someone is about like cornering a wildcat:  they’ll come after you with bloodlust and slash you to ribbons.  Oh, and bite your head off. Cats seem to like biting heads off.

This is why it’s dangerous to be a prophet.  The role of the prophet is to point out the truth, to observe and project the consequences — to tell it like it is.  And people don’t like that.  They don’t like being stirred out of their complacency.  You’ll notice that all of the biblical prophets were persecuted.  In fact that’s one of my criteria for whether someone is a prophet or not: have they been persecuted?  Of course being persecuted doesn’t make one a prophet, but someone who hasn’t been persecuted certainly isn’t one.  Yet.

December 15, 2010

Disaster Recovery

Filed under: Belton Journal, Info Bytes, Tips & Tricks, Warnings — pmckinley @ 8:00 AM

A computer disaster can come in many forms.  It might be a disk failure, or the computer is lost or stolen, or you just accidentally erase or overwrite a file you needed.  I wonder how many of my readers have taken steps to deal with a computer disaster?  Making backup copies is good practice.

Traditionally, backups were done with some form of tape drive.  Most large companies still do some form of tape backup, although backup-to-disk has also become popular especially with new deduplication technology.  Backup to disk basically means the data gets copied to a secondary disk device.

These days tape technology has just about become obsolete for the typical home or small business user.  I have a two-drive tape library that holds 10 tapes, with each tape holding something like 40 to 60 Gigabytes (Gb) per tape depending on how well the data compresses (some data compresses well, other not so much).  A few years ago when a 100Gb disk drive was really huge, having 10 tapes in the library was ample capacity.  Nowadays the disk drive capacity for the typical PC has grown to the point that even my strato-geek 10 tape library is struggling to keep up.  Spouse Ann’s new PC has a 500Gb drive.  I just upgraded the disk in my laptop to 500Gb.  That’s a terabyte (Tb) of data to store on tapes that might only get 40Gb per tape — I’d need something like 25 tapes just to take one full backup if both disks were reasonably full (fortunately they’re not).  And that doesn’t include another 100Gb or so spread across two Unix servers and a Windows server that I run.

Fortunately there is a good solution available for the casual user.  Not only is the capacity of disk drives  increasing, but external disk drives have gotten quite cheap.  It’s not uncommon to find an external 1Tb disk drive that will run off your USB port for something in the range of $100.  Many of these disk drives come with backup software that is quite adequate for the casual user.

Even though I have all the fancy equipment to do backups, I still need something to use when I travel.  Recently I bought a 1Tb external drive to use for backups when I’m on the road.  I paid a bit more for it because it was a model that has a dock accessory available.  It’s about the size of a largish deck of cards.  When I’m home, I plug the drive into its dock.  When I’m on the road, I take it with me, and use a regular USB cable to connect it at night, so that backups (I use the included backup software) will be done while I sleep.  Half my brains are on my laptop, if it were destroyed or lost, I would have a really hard time supporting my clients.  Having a backup of my data means that in a worst case scenario I could go buy a new laptop and restore the important data within a day or so.

December 8, 2010

Web Browsers Galore

Filed under: Belton Journal, Info Bytes — pmckinley @ 8:07 AM

According to Wikipedia, the first web browser was something called WorldWideWeb or Nexus, and came out in early 1991. In early 1993 Mosaic came out of the National Center for Supercomputing Applications in University of Illinois and within a year displaced Nexus.  Back then your choices were pretty much Mosaic or Lynx, but Lynx was strictly text-based — it didn’t understand pictures.  Several of the folks who developed Mosaic then went off to develop Netscape commercially, and then Mozilla and its more recent offspring Firefox and Seamonkey.  Along about 1995, Microsoft decided they needed to get into the game and came out with Internet Explorer, or Internet Exploiter as I call it.  Interestingly, they also started out with the Mosaic browser, with their own “tweaks”.    Another browser called Opera came out in late 1994, which is still available today.

A number of other browsers that came and went over the years.  The main ones these days are Internet Explorer (for Windows users), Firefox or Seamonkey which are pretty much the same browser, Safari, Opera, and Google’s Chrome browser.

Internet Explorer (IE) continues to improve over time, especially regarding support for internet standards.  While IE has been available for Mac’s in times past, it’s currently a windows-only product.  I noticed they won’t be supporting Windows XP and earlier for IE9.

Firefox was pretty much the front-runner with IE, having replaced the previous Mozilla.  Firefox has been a fairly innovative web browser, quickly adopting new features such as “tabbed” web browsing.  A source of frustration has been websites that have adopted Microsoft technology that makes their website work only for Internet Explorer.  I’ve solved that problem with an IETab plugin for Firefox, so at least I can view these pages within my Firefox window.

Recently son Jesse became frustrated with some bugs with the Firefox browser, and tried out the Google Chrome browser.  I decided to take a look at it for the sake of this article.  It’s actually a pretty interesting browser.  The Google folks have pretty much thrown the baby out with the bath water and started over.  The rendering engine is based on something called WebKit, which is also used for the Mac web browser Safari.  They also rewrote the Javascript engine from scratch.  The whole thing is designed to be sleek and fast.  You may have noticed that some of the current smartphones are based on Google Chrome.

Safari is Apple’s answer to web browsing, but the browser is also available for Windows.  As mentioned, it’s based on the WebKit rendering engine.  It’s a fairly good web browser.

Opera is off on its own, having different roots than the other mentioned browsers. Opera is very innovative: they’re the originator of tabbed browsing.

I’d suggest downloading and trying each of these browsers.   Use each one for a week or so, you’ll know if you like it enough to switch.   You can find them by doing a google (or whatever) search for the browser names that I’ve mentioned: Firefox, Seamonkey, Safari, Chrome or Opera.

« Newer PostsOlder Posts »

Powered by WordPress

Bad Behavior has blocked 49 access attempts in the last 7 days.