Maximum WordPress Spam Prevention: Part 2

Anyone who has a public facing blog knows about being bombarded by spam. Recently I got so annoyed I started locking down blog comments after thirty days. After a month or so I realized this was counter productive. Readers could no longer participate, ask questions, etc. so I started searching for a better way to handle my anti-spam measures.

After doing a bunch of research I landed on Askimet. Note, I am not being sponsored by Askimet, I truly did this research on my own. I can say so far the results have been awesome. I’ve been able to turn all blog comments back on, and it’s very rare for a spam comment to sneak through. 99.9999% of the time when that happens it seems that Askimet has already killed the spam by the time I get around to viewing the WordPress spam queue.

Since turning Askimet on I haven’t had to personally deal with 462 spam comments. Yay! In the screenshot below, the 228 spam comments number represents a partial snapshot of the spam that I had to manually delete prior to Askimet.

Spam and Web ads are annoying but much better than TV ads

For now my blog will continue to be ad free. Full disclosure: I’ve had two offers in the last month to expose my visitors to ads. The presumption is that I would make some (albeit small) amount of money. However, I’ve done the homework and know that the advertisers make the big bucks and not the advertisees.

Ads in all forms continue to plague the earth because some surveys consistently show that they work. The math is stark and the math simple. Someone is responding to spam email, even the icky ones. Someone is clicking on those web ads, and someone claims to be watching TV ads and even going so far as saying they are effective. Gasp! I will reluctantly agree that some ads are useful for communicating new products or features, but that doesn’t mean I have to like them.

I recently read about a survey claiming that 53% of online consumers said a TV ad had influenced them to purchase a product or service in the last twelve months. My heart nearly stopped. Yikes! Who are these people? Speaking on behalf of my own brain, it automatically shuts down within 30 milliseconds of an ad starting on TV or Hulu, or YouTube. Sometimes I can barely read a news article because my brain automatically blurs out 3/4’s of the page where presumably the evil ads are lurking.

Here’s a fact. When you watch prime time television you will be brainwashed and turned into a zombie through the constant exposure of 50 – 70 ads per hour. I’ll repeat that in case you missed it: 50 to 70 advertisements in a single hour. I can tell you this with certainty because I sat down one night and decided to convert percentage of ad time per hour into a meaningful number that anyone could understand. If you watch two TV shows back-to-back that’s possibly 100 to 140 ads that have soaked into your sleep addled brain. And, these are the actual ads and the numbers don’t include embedded product placements that are getting increasingly brazen.

After I had a grasp on the level of digital bombardment we were receiving from TV ads, I was able to take some of the full page, online, take-temporary-control-of-the-entire-browser ads with a bit more perspective. I also said a silent praise for DISH Network’s Hopper.

Maybe I’m writing this blog post because an ad told me too.

Bye bye IPv4 and the sooner the better

I was surprised today when I read on BBC that Europe had begun rationing their remaining 16 million IPv4 addresses. What surprised me  was not that we were finally running out, but the fact that I had scanned all the major U.S. headlines today and I didn’t see a peep about it.

The beginning of the end started for real in February of 2011 when IANA issued the final pool of 16 million IPv4 addresses. And, now Europe is dipping into the final bucket.

Well this is a heads-up to all my IT friends since it will eventually affect anyone who works with computers. Internet Protocol is how computers direct traffic to each other both inside the firewall, within your home and out on the public internet. If you haven’t seen an IPv6 address before it looks like this: 1001:0cb9:66b3:0042:1234:8a2e:2851:7334. It’s quite a bit harder to type than IPv4 addresses which look like 192.168.0.1. But…IPv4 allowed for only 4,294,967,296 addresses, which in today’s terms seems quite small for some reason.

So what does all this mean? As of today, it’s not real clear how much of the public, world wide web will work properly using IPv6 TCP/IP requests. There have been reports of major companies enabling IPv6 and there have been some international efforts to promote awareness and cooperation to upgrade. My guess is that for some period of time both IPv4 and IPv6 will have to live side-by-side until the vast majority of routers, phones, computers and servers get upgraded.

One thing is clear that the faster systems get upgraded the smoother the transition will occur.

References

What is IPv6

World IPv6 Launch

Safe internet surfing for travelers

These are some easy and basic precautions you can take that will reduce the possibility of having your online identity stolen. While I am not an internet security expert, I do know enough about software and HTTP sniffing to say that a few simple steps will help discourage the every day thief, which is about the best that a typical traveler can ask for. Think of these suggestions as being similar to not leaving your valuables sitting on your car seat when parked in a public parking lot.

Note, these steps will not protect you against the most determined individuals and organizations since they are typically equipped to do things such as cracking your encryption. If you have business concerns about your encryption being hacked then you will definitely need to consult with a security expert.

1. Do not use public wifi. These can easily be monitored by crooks using what’s commonly called “packet sniffers” which can be used to steal your passwords. Crooks also sometimes set up fake wifi nodes specifically aimed at monitoring and stealing information.

2. If you do use a public wifi with your device then also use a consumer Virtual Private Network, or VPN. These are becoming available for smartphones. If you don’t know what this is, then here is an example. VPNs encrypt all of your traffic making it more challenging to see what you are doing. I have noticed the free versions typically cause some slowing down of your surfing experience.

3. Don’t use an internet cafe to log into your email, facebook, twitter, etc. If you absolutely have to use an internet cafe be sure to run your session in private browsing mode and then close the browser completely when you are done. Change your password when you get home.

4. Some phones will work internationally, and you can ask your carrier for a one month international data plan. If your phone does not work internationally, then rent an international phone with a data plan. Do your research first on pricing and hidden extras. Also try to make sure you rent from legitimate vendors by searching and reading reviews. If you have a travel agent ask them for suggestions.

References:

Chrome Incognito mode

Firefox private browsing

Safari private browsing

Internet Explorer private browsing

The Art of Internet Connectivity

Everyone’s internet connectivity experience is unique and it can vary from minute to minute. Most internet users can sense slowdowns, and everyone can identify when a connection fails. Web developers absolutely rely on a web connection to build web pages. So, when our internet connection goes down our productivity comes to a halt.

I’ve lost count of the number of times I’ve reported to various tech support organizations that I wasn’t able to reach a particular website or web service and was told by the tech: “I was able to reach it just fine.” This happened again today when I called my DSL provider to inform them our internet service went down completely and then was degraded to 1/10 of what we were paying for (e.g. ~1.12 Mbps on a 12 Mbps service). They told me that the line was stable. Although I’m not real sure what stable means. Then the speed gradually increased back up to normal of over the next hour and a half. This has happened about a half dozen times over the last three months. 

As a web developer, you load web pages up to several hundred times per day. I almost always have monitoring tools hooked up that give the exact time to download a page and its associated elements. So, I have a good idea of when the internet is performing well, and when it isn’t.  Because of this I’ve become sensitized to small, millisecond changes in download times.

I also gained extensive knowledge of internet connections when working on high availability systems with up to five-nines uptime. We deployed systems that monitored web traffic all over the U.S. 24×7. I was amazed to see that internet traffic was very much like our roadways. Sometimes traffic is moving fast, other times it’s slow in spots, and sometimes it’s completely stopped or even re-routed.

In many cases, a modem (or router, as I’m using the terms interchangeably) simply locked up. This is quite common as these devices often run a small linux-based operating system that can occasionally flake out. I can say with certainty in the cases where my DSL modem/wireless router didn’t die, and there was no internet connection, then in 9 out of 10 of these cases it was a problem upstream with the carrier.

Guidelines. So, here are some guidelines for helping you narrow down where the problem might be:

– Check the modem connectivity lights. Usually if a modem is connected to the internet, the connectivity light will be a steady or flickering green. Red  or no connectivity light almost always means no connection. It should be a matter of reflex to simply restart the modem and see if that fixes the problem.

– If the internet connectivity light doesn’t come back after restarting the modem, then call tech support.

– On rare occasions (1 out of 10), restarting the server plus the modem restored connectivity.

– Still no service? You can go get a cup of coffee then come back later and recheck.

– Or, if the internet connection light is green, try blowing away the browser cache and try to reload? Sometimes old versions of pages can stick in the cache.

– Can you load any other websites? If you can, then your particular server or service is most likely down.

– Can you ping the server? (for servers that allow ping). Determines if the server has basic connectivity.

– Can you run a tracert? Let’s you look at the connectivity between you and the remote server.

– Document the problems so you have a record for future reference.

– If you need continuous monitoring with alert thresholds, then look into evaluating continuous monitoring tools such as Paessler.

– If you know how to get the basic troubleshooting out of the way, or if you’ve already done it, then insist on escalation when you call tech support. You need to get back to coding as fast as possible.

10 Tips for New Web Developers

If you are just getting started building web applications, these 10 tips are fundamental to learning how to build really great apps and to being successful in your new career.

1. Build at least one application on your own that wasn’t required in class and include a complex user interface component, such as a widget, and database access.

2. Understand how to use debuggers, browser debugging tools and breakpoints on IE, Chrome, Firefox and Safari for desktop and mobile.

3. Practice building your own prototype apps using the most common JavaScript libraries. The best way to learn is to roll up your sleeves and work on it. Get your curious on!

4. Understand how to use a code repository. Try posting a few of your prototypes on github.

5. Read books written by the experts. When done read some more. Learn by example.

6. Participate by asking and answering questions in industry forums such as  Stack Exchange. You’ll gain more confidence as time goes on.

7. Understand how basic coding patterns such as loops and HTTP request/response can affect website and mobile performance.

8. Learn the difference between client and server-based code.

9. Practice problem solving by testing your prototype apps against the different major browsers. You will really learn what works and what doesn’t work. In most problem solving there is no exact answer, but knowing how to come up with potential solutions will save the day.

10. Research a problem first, then ask questions. Your colleagues that have been coding for a long time know when a question wasn’t well researched beforehand. You will learn best by trying to solve it. It can be like a puzzle and you have to figure out how the pieces fit together.

11. Yep, I know I said 10 tips, so this is a bonus. Read and learn about user interface design, and if possible work with an experienced UX engineer/designer. UX, or user interface design, makes the difference between an okay app and an excellent app.