Erik Vergobbi Vold
Vancouver, BC Canada

Twitter Suspended My Account For 5 Days Without Providing A Reason

I was suspended from twitter without cause, and I'm pissed off with the lame company now. Here is the time line for twitter request ticket #388899:

  1. Jun 24 12:33 pm
    From Erik:

    My account @erikvold was suspended and I have no idea why..

  2. Jun 24 2009 02:23 pm
    From delbius:

    At some point, the link that you had put into your web or bio spot on your Twitter profile or an update you sent out was classified by either Google or Firefox (or both) as having some form of malware attached to it. This means that most likely your website (or the website you linked to) was compromised by a hacker at some point. I've restored your account and deleted that link; once the site has been cleaned up, you're welcome to replace the link.

    Thanks!

  3. Jun 25 2009 03:56 pm
    From Erik:

    Hey guys,

    My account is suspended again?! what's going on?

    The hostmysite shared server my domain, erikvold.com was on was compromised.. it turns out that every site on the server was injected with javascript. They have move the site to another server, and I have cleaned the site by downloading the live files in to a working copy of the head on my svn repo, and reviewed the diffs, finding all of the injected javascript and removed it. So the site is clean, and I await news on the source of the compromise before deciding what to do, and then I will work on cleaning my rep with the security lists out there.. but my site should be clean, and I do not know why you need to continue suspending me, I am not pleased with this treatment..

    Regards,
    Erik

  4. Jun 26 2009 01:47 pm
    From Erik:

    Any news on when I can use twitter again?

  5. Jun 30 2009 06:44 pm
    From Erik:

    Any news on when I can use twitter again?

  6. Jul 01 2009 01:23 pm
    From delbius:

    We believe that you are no longer experiencing the issue that you were when you filed this ticket. If you had found your account suspended, we suggest that you ensure that your following and unfollowing behavior is in line with the Twitter Rules and/or that you ensure that you were not linking to malware in your URL, location, or bio. If you could not find yourself in search, we encourage you to wait a day and see if new updates are now resolving into search. We also strongly encourage everyone to be aware of not only the Twitter Rules (http://help.twitter.com/forums/26257/entries/18311) but also the Best Practices for search (http://help.twitter.com/forums/10713/entries/42646).

    Thanks! Del

  7. Jul 02 2009 02:15 am
    From Erik:

    The links you provide do not explain why my account was suspended from June 25th to July 1st. Please explain, because I believe my following/unfollowing is normal, I simply follow people I want to follow once, and that's it, so the one hint you give doesn't make any sense..

  8. Jul 02 2009 01:42 pm
    From tiger:

    The reason you were suspended again (and nearly a third time) is that your link was not yet recognized as clean. In fact, it is still giving malware messages. Unfortunately, there is nothing I can do to stop you from being flagged if that is the case. I would recommend having the site checked out again.

    Thanks,
    tiger

  9. Jul 02 2009 03:36 pm
    From Erik:

    - "The reason you were suspended again (and nearly a third time) is that your link was not yet recognized as clean." this reason was only clearly given with initial response I received from delbius, where she also said "I've restored your account and deleted that link; once the site has been cleaned up, you're welcome to replace the link." and after this point my account was suspended a second time and the link was not in my bio, so excuse me but nobody has explained to me why my account was suspended the second time. Saying that the link in my bio was not clean is not a answer, because there was no link to my site in my bio during my second suspension.. This is the question I have been trying to get an answer for since June 25th....

    - "In fact, it is still giving malware messages." from where? my site is clean at the moment I just checked again using the process I have already described.. further more google toolbar does not claim the site has malware on it anymore, which was the only service I was aware of my site being listed as malware on.

    - "I would recommend having the site checked out again." Just scanned my site again as I have already stated, and it is clean.....

  10. Jul-02 2009 03:45 pm
    From tiger:

    The account was definitely flagged as linking to malware. Could Firefox have flagged it? Either that or since you haven't actually been suspended again, there might just be some sort of technical error.

    Let us know if you have any more issues. Your account is active.

    Thanks,
    tiger

  11. Jul-02 2009 08:12 pm
    From Erik:

    I realize now that it was a Firefox and not Google toolbar warning that I was referring to before, so my url must be off of the Firefox malware list.

    So I am baffled why twitter says my url is not clean.. and would appreciate some guidance with the issue.

    Identifying why my account was suspended the second time, on June 25th, is all I want to do.. as to avoid this very painful experience from happening again. I am 99.9% certain that the url in my bio was removed June 24th by delbius and it never changed back until I did so on July 1st. So as far as I can tell there is no reason provided to me as of yet as to why my account was suspended from June 25th to July 1st, during which time I could not follow people, others could not follow me, I could not post a status update, I could not use any twitter clients, and my profile page was vandalized.

  12. Jul 02 2009 08:15 pm
    From Erik:

    A response from badwarebusters.org:

    "Google shows your site to be clean. Firefox pulls from Google’s list, so Firefox isn’t a problem now. Stopbadware pulls from Google’s list, which is probably why you can’t Request a Review there since you aren’t flagged right now by Google.

    I don’t know what list Twitter uses, or if it is real-time. Have you checked their site help for information about how their warnings work?

    The last time Google visited this site was on 2009-06-29 and it was clear. Twitter may not be using the Google Safe Browsing list."
    by Kaleh, the url is: http://badwarebusters.org/main/itemview/5394

    And I was mistaken about the date, it was June 29th that Google reviewed my site and cleared it.

I don't know if I will continue to tweet any longer now, and will certainly not recommend it to anyone, when users are treated so poorly on purpose.

Short URL Discovery Using Google App Engine

URL Shorteners and Link Rot

Short urls have numerous benefits I won't go through here, one example is for use in twitter which has a string length limit of 140 characters, another example is shortening urls with Google Analytics campaign tracking url variables.

The problem with all of the third party url shortening services out there is that eventually they will have to reset old urls in order to continue providing "short" urls, and even if they don't they could at any time stop providing service, in either case any link using the short url will be dead. Dead links are something all webmasters and users dislike.

The best way to defend against link rot is to create your own personal url shorting service for your own use, on a domain that you control. An added benefit to this approach for Google Analytics campaign tracking is that you will have the control to change the variable values in your campaign links even after the links have been used, like in an email campaign that wasn't setup properly for example.

Google App Engine (GAE)

Google App Engine is another one of those fantasic services which Google provides, this one however is meant to give developers the ability to write their own apps to use the Google infrastructure. GAE provides two programming language choices: Java and Python. Python was the first choice available and recently Java became a option.

I knew about the Google App Engine for a while now, but did not get started writing apps until I saw this RevCanonical project by Kellan who provided the source . After I saw Kellan's source, I noticed that it did not check the HTTP Headers for Links, which was a proposed technique which can potentially save a lot of bandwidth. Also, because I was interested in learning Python, GAE, and Git, I decided to created a copy of the Git repository, and run the code on one of my own Google App Engine spaces, and I learned how to do this by reading the Google App Engine Python tutorial. After I got Kellan's code running, I dug into the Python tutorial (which was an excellent read), and started hacking away the code.

Get Short URL

Well after modifying the RevCanonical project's source code I had made Get Short URL. Get Short URL will scan HTTP and HTML header links for a url which is sigalled as an alternative for the given url, this can be signaled a few different ways which I list at http://getshorturl.appspot.com

I must thank Kellan too, because I learned a lot from his source, and it got me started learning Python, and once I figure out Git I will create a patch for his project.

Same Google Analytics Cookies Less GA Fat

Most of those that use Google Analytics know about the GA cookie set, and the same is true for GWO users. I also think it is true that all of the aforementioned users know that http cookies are sent on every http request. So we should all know that the total burden of adding Google cookies to one of our web pages is a multiple of the number of the number of static components we have have on the page which will receive the Google cookies. The end result is that our user's experience is a slower one, energy is wasted, and useless data is sent over the wire. This is something I don't think many people have thought about this when they add GA to their site.

The way to resolve the problem mentioned above is to setup a cookie free domain for your site's static components. If you take a look at erikvold.com's source for example, then you will see that I have transferred the css, js, and most images to static.evold.ca.

Make A Separate Firefox Profile For GA Troubleshooting

I saw a couple of good posts last on tools that can be used to troubleshoot Google Analytics. The first was 6 Tools You Can Use to Troubleshoot Google Analytics Yourself by Shawn Purtell @ ROI Revolution, and the second was The Analytics Pro's Tools of the Trade by Caleb Whitmore @ Analytics Pros. They mention some good tools, all of the ones I use, and I can't add anything to the two lists. I did notice however that they did not mention Firefox profiles, which is what I want to bring up in this post.

I think of Firefox profiles as a set of user customizations, you can read about profiles here, and managing profiles here. Most importantly to this post, Firefox profiles will allow you to make a set (collected in a profile) of extensions. So I propose making a Firefox profile to store the extensions you use to test/debug/troubleshoot GA, and only these extensions, because it will mean that you will not require them to be installed in your main profile, while remaining available (and are less likely to conflict with other FF extensions).

Preview GWO MVT Combinations In A New Tab

If you dislike using the preview window that is provided by default for Google Website Optimizer, then I promise you will like this userscript, because it will provide you with means to preview your MVT combinations without following these instructions all of the time.

[More]

Social Bookmarking Bookmarklets For Your iPhone

The following links lead to detailed instructions on how to add a given bookmarklet to your iPhone or iPod Touch device:

  1. DiggBar - Allows you to use DiggBar, even though it sucks to use, especially on your iPhone.
  2. Mixx This - Allows you to submit a website to Mixx.
  3. Reddit This - Allows you to submit a website to Reddit.
  4. Sphinn This - Allows you to submit a website to Sphinn.

Get your "Sphinn This" Bookmarklet For Your iPhone/iPod Touch

It's a bit of a hassle getting a bookmarklet on my iPhone's Safari browser without drag and drop or copy and paste, but I saw how delicious did it, and how iTransmogrify did it, so I thought I would make a few installation guides myself, at least until we have copy and paste. Sphinn is just the first to come.

In order to install the sphinn bookmarklet follow these instructions.

Track Your rel=canonical URL With Google Analytics

I have been putting some (but very little) effort in to getting my pages tagged with rel=canonical and I have noticed that some of the time I was getting 1+ pageviews with a different page name that were actually for the same page in Google Analytics. So I decided that a little javascript to grab my rel="canonical" and dump that in to pageTracker._trackPageview(); would be nice.

[More]

Some more help for those still confused by rev="canonical"

I just read an interesting comment by one of the fieriest rev=canonical opponents Sam Johnson where he explains his confusion here, by saying:

I'm surprised the rev=canonical guys are still banging on about this... nobody outside of the web developer community has a good word to say about it and it's been universally criticised by the standards community (with good reason).

rev=canonical is saying "I'm the canonical URL and that URL over there points at me". That means it must only ever be used on the canonical URL itself - too bad for an infinite number of potential permutations. Then there's the likes of Matt Cutts pointing out that one should give, not take, canonical-ness but Chris Shiflett (one of the primary promoters) foolishly dismisses this feedback as "irrelevant". Mark Nottingham is more direct in Counting the ways that rev="canonical" hurts the Web but the rev=canonical fanboys cite this as "evidence that those writing the standards are going off track".

I suggest rel="shortlink" as an unambiguous solution to this fiasco - the short[_- ]?ur[il] option has more permutations than can easily be counted and delivers no additional value.

In order to discourage people from supporting many variations I'm now serving up warnings and errors when rev=canonical and rel=short*ur? are discovered at http://rel-shortlink.appspot.com/.

Sam

Well that is wrong and here is my response:

[More]

Counting the ways rev="canonical" helps the Web and a rel="short*" rebuttal

Well I am very excited to write this post, but I concede if the title did not peak your interest this may be as exciting as watching grass grow. If you are confused at all at this point, I should mention that there has been a lot going on that has lead up to my post, so I'm going to post a bunch of links in chronological order below before getting in to my thoughts, so that we can insure you are on my wavelength.

Timeline

  1. 2005-12-??: Link Relationships - Web Authoring Statistics by Google.
  2. 2006-01-04: SEO advice: url canonicalization by Matt Cutts.
  3. 2006-06-05: [whatwg] Where did the "rev" attribute go? by Ian Hickson.
  4. 2008-05-02: Domain Canonicalization by Nathan Buggia.
  5. 2008-08-20: The Difference Between REL and REV attributes of the A Tag (or REL vs. REV) by Erik Vold.
  6. 2008-11-18: [whatwg] Absent rev? by Ian Hickson.
  7. 2008-11-30: URL Referrer Tracking by Nathan Buggia.
  8. 2009-02-12: Partnering to help solve duplicate content issues by Nathan Buggia.
  9. 2009-02-12: Specify your canonical by Joachim Kupke and Maile Ohye.
  10. 2009-02-12: Fighting Duplication: Adding more arrows to your quiver by Priyank Garg.
  11. 2009-03-11: The Rev Attribute, Link Types, and Vote Links Explained by Erik Vold.
  12. 2009-03-17: How To Use The Rev Attribute by Erik Vold.
  13. 2009-04-01: Short URL Auto-Discovery by Robert Spychala.
  14. 2009-04-02: DiggBar Launches Today! by Kevin Rose.
  15. 2009-04-03: on url shorteners by Joshua Schachter.
  16. 2009-04-03: URL Shortening Hinting by Kellan Elliott-McCrea.
  17. 2009-04-09: Google Juice & Page Views: Or How I Learned to Stop Worrying and Love the DiggBar by John Quinn.
  18. 2009-04-10: Save the Internet with rev="canonical" by Chris Shiflett.
  19. 2009-04-11: A rev="canonical" Rebuttal by Ben Ramsey.
  20. 2009-04-11: rev="canonical": DiggBar outrage causes bad ideas to come out of the wood work by Dare Obasanjo.
  21. 2009-04-11: Summarizing My rev="canonical" Argument by Ben Ramsey.
  22. 2009-04-11: A rev="canonical" HTTP Header by Chris Shiflett.
  23. 2009-04-11: rev=canonical bookmarklet and designing shorter URLs by Simon Willison.
  24. 2009-04-11: Revving up by Jeremy Keith.
  25. 2009-04-12: RevCanonial blog turns 10! by Kellan Elliott-McCrea.
  26. 2009-04-12: rev=canonical considered harmful (complete with sensible solution) by Sam Johnston.
  27. 2009-04-12: Specifying rev="canonical" With HTTP by Ben Ramsey.
  28. 2009-04-13: Introducing rel="shortlink" - a better alternative to URL shorteners by Sam Johnston.
  29. 2009-04-13/14: I (used to) like rev="canonical" by Leslie Michael.
  30. 2009-04-14: rev=canonical by Anne van Kesteren.
  31. 2009-04-14: Rev-canonical should be handled with care by Ciaran McNulty.
  32. 2009-04-14: Counting the ways that rev="canonical" hurts the Web by Mark Nottingham.
  33. 2009-04-15: (Yet) Another DiggBar Update by John Quinn.

My Thoughts

[More]

More Entries