Logo
Entries about technology. Website-related news. Projects that I'm working on. Code, web services and more. Programming insights and help. Space
Space

You really should purchase your imagery.

0
Posted on July 27, 2010 by Jimmy K. in Articles
If you’ve ever used an image on your blog or website that you just sort of “borrowed” without asking permission from the author, you are guilty of copyright infringement. Copyright infringement is defined as “the unauthorized or prohibited use of works covered by copyright law, in a way that violates one of the copyright owner’s exclusive rights, such as the right to reproduce or perform the copyrighted work, or to make derivative works”. Yes, I copied and pasted that from Wikipedia. I’m probably guilty of copyright infringement myself! Ha! Just kidding.

Listen, we’ve all done it. You know who you are. Yes, I’m talking about you! Sometimes you just don’t have $800 for that perfect image that conveys anything and everything you’re trying to say without having to actually say it. Just keep in mind that if you do “borrow” an image from another website, blog, or stock photography website… *cough* Getty Images *cough* … you could face some serious fees and/or legal actions.

For example, the other day one of our clients called me in a fit of panic babbling on about “I just received a letter…”, “OMG! I think they’re going to sue me…” and “What do I do? What are they talking about? What pictures?” I quickly told her to calm the eff down and fax me a copy of the notice she received. Sure enough, Getty Images sent her a demand for $1,700+ (I’m rounding) for the unauthorized use of a handful of stock images.

Not only did they find the images that she had used on her website, along with item numbers and author information, but they also included screen shots of her website to point out the instances in which the images were used. All of which I thought was absolutely fascinating. What’s even more fascinating is that they were demanding that she pay them within 14 days of receiving the notice, seven of which I’m sure she spent stressing out about what to do.

So! The moral of the story here is this: If you’re going to use stock photography on anything you are personally responsible for creating, make sure you purchase it. I’ve also upload a copy of the settlement demand from Getty Images (parts of it are obviously omitted).
Continue Reading...

Why sitemaps are important.

0
Posted on June 29, 2010 by Jimmy K. in Articles
Yesterday, I set out to make sure everything was running smoothly with my blog, which included minor changes to theme files as well as a little search engine indexing maintenance. Recently, I had switched over to WordPress and wasn’t really paying attention to what was going on in the search engines. Low and behold (as much as I should have figured this was going to happen), my sitemap was broken and needed to be fixed immediately so search engines like Google, Bing and Yahoo! can index my site better.

What is a sitemap?

Well, young grasshopper, a sitemap or “site index” is a list of pages of a web site accessible to crawlers (that’s the search engine) or users (that’s you!). What this does is allow search engines to know which pages of your website you want included in search results, the URLs to those pages, and how often they’re updated. More than likely, your website will still be crawled and indexed without the use of a sitemap, but it is an industry standard to have one created for each website as it not only provides a mechanism for search engines to discover more of the content on your site, but also acts as a navigation aid by providing an overview of your website’s content at a single glance.

Websites built in Flash…

Sitemaps are a useful tool for making sites built in Adobe Flash and other non-html languages more searchable. If a website’s navigation is built with Flash, the initial homepage of a site developed in this way will probably be found by search engines. However, the subsequent pages are unlikely to be found without the use of a sitemap.

How can I generate a sitemap?

If you are using WordPress, I suggest using the Google XML Sitemaps plugin by Arne Brachhold. This plugin will generate a sitemap for you to better index your blog. It also supports all kinds of WordPress generated pages as well as custom URLs. Additionally it notifies all major search engines every time you create a post about the new content.

If you’re not using WordPress, I suggest using the Sitemap Generator at xml-sitemaps.com. This will crawl through all the pages of your website and create a sitemap that you can upload to your website.

What are the next steps?

I like to use Google Webmaster Tools at google.com. You have to have a Google Account (which is free), submit your website and verify it by including a meta tag in the homepage’s source code. However, once you have been verified as the owner, you can specify the URL of your sitemap and Google will keep it on file to help with their indexing. Additionally, Google Webmaster Tools also displays your top search queries, links to your website, keywords and more.
Continue Reading...

How to change your WordPress username.

0
Posted on June 22, 2010 by Jimmy K. in Articles
With the release of WordPress 3.0, some of you may have been excited to hear that you’ll be able to specify your own admin username. I didn’t install a fresh copy of WordPress 3.0, but instead chose to upgrade my current version using the built-in upgrade method. I was also under the assumption that I would be able to go into the settings panel and change my username from “admin” to something more familiar to me. “Admin” is just so.. blah. *insert tongue sticking out motion with wrists unrolling hands toward you* I wanted something interesting like McLovin.. or SexPanther1972.. anything other than “admin”, really.

Alas, I was let down. Boo to you, WordPress. I thought that this would make 3.0 for sure (and it’s such an easy query to run!). No, seriously, look:
UPDATE `wp_users` SET `user_login` = 'new_username' WHERE `user_login` = 'admin';

So, how do I do it?!

  • Log into phpMyAdmin (or something similar) to manage your MySQL database.
  • Locate and browse the “wp_users” table (this will show the records).
  • Locate the entry titled “admin” and click edit.
  • In the “user_login” column, change “admin” to your preferred username.
That’s it! After changing my default admin username, I immediately felt better and you probably will too.
Continue Reading...

What's up with vague error messages?

1
Posted on June 22, 2010 by Jimmy K. in Uncategorized
World of Warcraft Login
As many of you are probably aware, those crazies over at Blizzard update the snot out of the World of Warcraft, a popular online video game for super nerds. Yes, I play this game occasionally. However, today I am going to talk less about me being a nerd and more about cryptic and often misleading error messages, which are being seen more often lately.

As you can probably tell from the above screenshot, there are two things happening. 1) There is breaking news stating that there will be extended maintenance on Thursday and that there will be a period of downtime (a period in which you will not be able to play the game) and 2) We are unable to connect. This message says, and I quote, “Unable to connect. Please try again later. If the problem persists, please contact technical support.” … But why?

I believe that the above-stated error message is simply too vague. Granted, anyone with half a brain can put two and two together and come to the realization that you are probably unable to connect because Blizzard is performing “extended maintenance”. However, this message never appears when they are performing maintenance. Usually, the person is able to log in and view the realm list (that’s sort of like choosing which “world” you want to play in). Long story short, a lot of people are probably wondering wtf is going on, why they can’t connect, is their internet broken, do they need to open firewall ports, etc.

What they didn’t tell you is that they’re temporarily taking their servers offline.

Just then, a very basic, easy-to-implement solution popped into my head. Why didn’t Blizzard just tell everyone that this would probably happen? And what better way to do that than by utilizing the news section of the game launcher? Something like, “Oh, hey guys. Just so you know we’re taking our servers offline and moving them so the game will run better. By the way, you’re probably going to get a connection error. Please don’t freak out and do anything rash like throw your firewall through a window.”
World of Warcraft Launcher
If you look at this screenshot, you’ll notice a section titled News. It’s big, it’s orange and you can’t miss it. My guess is that anyone looking for news pertinent to the game would probably look at this screen first, considering it’s displayed every time you launch the game.

But no.. Instead of using this space for actual news, they use this space to try and sell things like mounts, posters, mouse pads and tankards (yes, the kind you drink out of).

Why has Blizzard done this? I don’t know. They do a lot of weird, unexplained things. They make really fun, visually-stunning games. I just don’t think they do a good job of letting everyone know what the hell is going on. :) But hey, that’s what happens when you’re making billions of dollars per year. You come up with vague error messages to confuse your customers.
Continue Reading...

CLEAR Mobile Internet? SUCKS.

0
Posted on June 18, 2010 by Jimmy K. in Articles
Clear Mobile Internet
I’m not usually one to bash products or services but Clear Mobile Internet (“4G Wireless Internet Service with WiMAX“) is the most-frustrating service I’ve ever used in my life, which is saying a lot because I’m constantly being bombarded with new technologies on a daily basis. Our relationship started out really well: A rep contacted me and let me borrow a device to see how it worked and to be perfectly honest… I absolutely loved it. I could use it anywhere. My house, the park, my car, downtown… the bathroom. Anywhere! I canceled my current service and got my own CLEAR wireless modem. But after using it for a while, I’m not having any luck with this thing.

The service worked great for a little over a month. I’d get home, click connect and be blazing all over the internet at lightning fast, 4G speeds. I could download full-length DVD-quality (700MB+) movies in a little under half an hour. Sometimes less than twenty minutes. Which was awesome. I could play World of Warcraft without any lag at all. What did this mean? This meant that I could nerd it up on the train. I could nerd it up in the park. I could nerd it up anywhere I wanted with a really, really good mobile internet connection.

So, what’s the problem?

The wireless modem stopped connecting to the 4G WiMAX network. At first I was like, “You know what, this is probably expected of a company that’s just starting out on a 4G WiMAX.” But it didn’t get any better. After a week (I actually put up with this for seven entire days), I decided to contact someone about it. I called CLEAR and they said everything was working fine on their end, which I know every company says regardless of whether or not there is a problem so naturally I didn’t believe them.

I reinstalled the drivers, I disconnected/reconnected the modem, I went to different locations to figure out if my walls were causing the problem. No dice. Then, out of nowhere, I get a connection. I’m like, “Sweet!! Time to get online!” Wrong. It dropped the connection almost ten seconds after I started surfing. So I just kept clicking the connect button. I mean, I had ten little bubbles and the program said Perfect Signal. Why shouldn’t I be able to connect?

Why I think I couldn’t connect.

I think that CLEAR has over-sold their service. I think that CLEAR promised a lightning fast, 4G network and that there are too many connections in the Chicago area for their technology to handle. Once I’m on the network, I can usually go a little while before being disconnected. However, 95% of the time, I can’t even connect. It goes: 1) Searching for network… 2) Ready to connect! 3) I press connect. 4) Connecting… 5) Searching for network… Over. And over. And over again.

I’m going to give CLEAR another month before I give up on them for good and decide to switch to another internet service provider. I chose them for two reasons: They’re new (I like new technologies) and they’re cheaper than Comcast. The only frustrating thing is that I went from being able to get online any time I wanted (most of the time.. I mean, I did have Comcast and we know how that goes) to never being able to get on. And when I do get on, the latency is so high I want nothing more than to get off my computer!

Boo to you, CLEAR. If you’ve had (or someone you know has had) a horrible CLEAR Mobile Internet experience (or even regular CLEAR Internet), I’d love to hear about it.
Continue Reading...

The Throwdown: GoDaddy vs. FatCow.

0
Posted on May 06, 2010 by Jimmy K. in Articles
We’ve used GoDaddy for a long time. Almost every website I’ve ever developed has been hosted through GoDaddy, which is fine if you’re running a small website and your MySQL database use is kept to a minimum. While this may be the scenario for most of our clients, this is not the same for us. We operate a local email marketing website called BHI Marketing Tools and as you can probably imagine, our database use is very heavy.
GoDaddy vs. FatCow
Our online application used to be hosted with GoDaddy, but in the last year, their service has really tanked. Frequently, when I call about a problem, the customer service representative doesn’t know what they’re talking about and I have to wait while they confer with their peers to find a solution. Which is fine because I understand that GoDaddy is a large company and not every employee will know the inner workings of hosting, servers, etc.

However, the intermittent downtime and constant instability got to the point that we started to look at other hosting providers. That’s where FatCow comes into the picture. I had heard nothing but good things about FatCow and after discussing it we decided to give them a try. Their company is also completely green and eco-friendly, which we liked because we could tell our customers that we, too, were “going green”.

Here’s the first hitch we ran into after switching to FatCow: Most of our processing scripts are run from our office and communicate directly with the MySQL database on our hosting account. So after the files were pulled from GoDaddy’s servers and uploaded to FatCow’s servers, the DNS information was changed to point to the new servers, yada yada, we went to run the scripts and… What’s this? They all failed. After a little digging, I found out that FatCow doesn’t allow remote MySQL access. What that means is that our maintenance scripts that run every day from our office, which absolutely, positively must be in our office, cannot connect to our MySQL database because they’re not running on the same server. We promptly rewrote all the scripts to be called locally using web services instead of direct database access and it temporarily solved the problem.

Today, however, we went to log into our Adminstration Panel at FatCow and low and behold our account was suspended because of “too many requests”. That’s the only explanation we received until we called and inquired further. Apparently, you can’t request any single page more than [insert unknown value here] number of times per day. If you do, they’ll suspend your account indefinitely until you either a) delete the files in question, or b) stop requesting those files so often. Have you ever used a simple meta-refresh on one of your web pages? Well if you use FatCow, you’re not allowed to do that. I’m fairly certain that, using the same logic, pages called using Ajax will trigger your account to be suspended as well.

Now I don’t mean to bash FatCow without bashing GoDaddy. They’re just as bad. There were days that our website would just stop working. No error messages, no apology emails, no phone calls, nothing. Our databases would stop responding for no reason, and we were left in the dark as to what the hell was going on. So what did we do? We called them! But what did that accomplish? Nothing! Their answer was always the same: “Nothing seems to be wrong on our end. We can see it just fine. We’ll run some diagnostics and see if we can find anything else. Oh, nope. Diagnostics are fine.” But we could run the MySQL Health Widget and see with our own eyes that there were thousands of connections and queries being run every second. Scouring the internet has also shown that GoDaddy has some serious MySQL problems as of late as well.

MySQL timeouts aren’t GoDaddy’s only problems either. FTP Authentication used to be god-awful. There were times that it would take at least twenty seconds to authenticate before I was allowed to do anything. This includes listing a directory, uploading a file, downloading a file, etc. It’s been running pretty well lately, but of course anything that’s been bad starts to get better after you switch to something else. Of course when you ask them about it, they blamed your ISP and asked if you’re “connected to the internet”. Ha.

So, I would like to list the pros and cons that I’ve come across using both hosting companies. Ultimately, we are switching back to GoDaddy for the time being because FatCow doesn’t like us. Which is fine.

The pros and cons of GoDaddy:

  • Pro: They’re cheap, cheap, cheap.
  • Pro: You can basically do whatever you want on their servers.
  • Pro: They allow remote MySQL access.
  • Con: Their technical support usually sucks.
  • Con: You can basically do whatever you want on their servers (other people are usually responsible for your site going down).
  • Con: They don’t do a very good job of policing people that abuse their databases.
  • Con: They are very popular targets of DDoS attacks, causing downtime.

The pros and cons of FatCow:

  • Pro: They are relatively inexpensive.
  • Pro: Their technical support staff usually knows what they’re doing.
  • Pro: Their server response time is blazingly fast.
  • Con: Hosting packages don’t come pre-configured with the most-frequently used things (Sessions, Uploading, etc) so you’ll have to call tech support.
  • Con: They don’t allow direct MySQL database access.
  • Con: They police their servers a little too hard, in my opinion.
I will admit that this review is probably very biased, but I have been sitting on these experiences for a while now and when our site went down again today, I decided enough was enough and here we are. I do not apologize if someone from GoDaddy or FatCow stumbles across this blog post. The trend lately is that companies call or send me a message every other day because they don’t like something that I write. Well too bad. I live in America and these thoughts are my own.

If you are a representative of FatCow or GoDaddy, please take this review as constructively as possible because I’m sure there are people out there that have experienced the same problems as we have.

Everyone else: I hope you found this useful. I feel better writing about it either way.
Continue Reading...

Track your WordPress post views.

2
Posted on May 04, 2010 by Jimmy K. in Tutorials
I wanted to be able to track the number of views each one of my posts gets in a very general way so I could create a “popular articles” section on my blog. I looked through the MySQL database and couldn’t find any traces of WordPress tracking post views by default. So! What I did was write a nifty little set of functions that I’m pretty sure don’t follow any development standards.

Update: I’m slowly tackling the obstacle of converting this tutorial into a WordPress plugin.

First, I created a table in the MySQL database to keep track of the post views and I update the table every time a post is loaded in the browser. I only count specific post views (where ./?p=XYZ) is in the URL.

Here is the MySQL statement to create the table:
CREATE TABLE IF NOT EXISTS `wp_postviews_z` (`PostID` mediumint(8) unsigned NOT NULL, `NumViews` mediumint(8) unsigned NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Then I wrote a function called jTrackPostView(), which basically updates the database whenever a post is being viewed. I placed this code into the index.php file. All it really does is says: if $_GET['p'] is set, call the jTrackPostView() function because we only want to track the post view if we’re actually reading the entire post (not the excerpt).
<?php print('This is PHP.'); ?>
To display the popular posts, I placed this code into the sidebar.php file:
<table style="width: 250px;">

<?php

$aViewCounts = array();
$oViewsQuery = mysql_query("SELECT `PostID`, `NumViews` FROM `wp_postviews_z` ORDER BY `NumViews` DESC LIMIT 10;") or die(mysql_error());
$sPopularQuery = "SELECT `ID`, `post_title` FROM `wp_posts` WHERE `ID` = '0'";

while ($oViewsResults = mysql_fetch_assoc($oViewsQuery)) {
$aViewCounts[$oViewsResults['PostID']] = $oViewsResults['NumViews'];
$sPopularQuery .= " OR `ID` = '" . $oViewsResults['PostID'] . "'";
}

$sPopularQuery .= " ORDER BY `post_title` ASC;";

$oQuery = mysql_query($sPopularQuery) or die(mysql_error());

$y = 0; while ($oResults = mysql_fetch_assoc($oQuery)) {
print('<tr style="width: 250px;">');
print('<td style="width: 250px;"><ul><li>');
print('<a href="./?p=' . $oResults['ID'] . '">' . $oResults['post_title'] . '</a> <span>(' . $aViewCounts[$oResults['ID']] . ')</span>');
print('</li></ul></td></tr>');
}

?>

</table>
I really want to help other people by converting this into a lightweight WordPress plugin, but I don’t know how to do that yet. Hopefully by the end of May I’ll be better equipped to tackle that. Can someone please suggest where I can find a decent tutorial for writing WordPress plugins? If so, please let me know in the comments.
Continue Reading...

No installer data could be found?

0
Posted on May 04, 2010 by Jimmy K. in Uncategorized
Okay, so I’m a closet World of Warcraft player. My friends Ryan Reid (of rynotec.com) and Greg Manning finally got Level 68 (don’t laugh) and we decided it was time to buy the expansion and go to Northrend.

I went to upgrade my account this morning and download the expansion, Wrath of the Lich King, and after the installation files had finished downloading, an error popped up: No installer data could be found. If this problem persists, please contact Blizzard Technical Support. What the heck does that mean? Could you be a little more vague…

After poking around on the internet for a while and not finding any solutions that didn’t involve physically having the installation disks in front of me, I decided to just delete some files and pray for the best.

I did this on a mac: Navigate to Macintosh HD : Users : Shared : Blizzard and rename the folder “World of Warcraft Installer” to anything else. (I renamed mine to “Crap”). You can probably delete it and it should be fine.

Either way, I just ran the installer again and it worked. I’m sure there is a very similar process to solving this problem if this happens on a Windows machine.
Continue Reading...

We're moving to a new office.

1
Posted on May 03, 2010 by Jimmy K. in News
Maybe. With all this down-sizing happening and the economy taking a real toll on businesses, we’ve decided to move into a smaller, more budget-friendly office. Even though the new space is going to be a lot smaller, we’ve put together a floor plan that we think will still bring a large amount of awesomeness and creativity to the mix.
New Office Layout
As you can see (or maybe you can’t because this image is crap quality), we’ve created an elevated area where we can get our work on. We’re thinking it’s going to be similar to a split-level home with stairs to get onto the elevated platform. There is also an area for the Accounting Department to do their thing.

I’m going to miss the massive amount of windows and sunshine we currently have, but what can you do. I thought about framing lightboxes on the walls with birds chirping and nature sounds (or something). I don’t know yet. Either way, the new office is going to be intense.

I also tossed around the idea of painting the walls green with white vines and leaves coming out of the corners/edges to portray our unspoken commitment to “going green”. I’ll keep everyone updated with our progress on the move.
Continue Reading...

Out with the old, in with the new.

0
Posted on April 28, 2010 by Jimmy K. in News
So I guess it’s safe to say that I’ve finally been converted to WordPress. I’ve been trying for so long (more than two years) to say no and it was finally mandated at work that I start using it. One of our clients was very persistent on using WordPress as a content-management solution. I have to be honest though, it’s unbelievably easy to use. And I don’t mean that it’s just easy to update your website content.. It’s easy to create templates (sorry, themes) for it too.

I’ll probably post a lot of links about helpful websites and code snippets that have helped me do what I need to do in WordPress. I already have a few in the back of my mind that I’ve come across while I’ve been developing the current theme for my site (at the time of writing this post, the theme is shades of gray with green and blue accents).

I’ve also started porting some of the posts from my old website to this new system. The information doesn’t link exactly, so there are a lot of broken links and blurry images, but I should have it fixed soon. I’m sure there are more things I could say about it, but I really want to get the new WordPress-powered site/blog up tonight so I’ll leave the rest for another post.
Continue Reading...
Space
 
 
Archives
 
 
Popular Articles
 
 
 
 
Friends
 
 
Tag Cloud
Space
Space
© 2010 END[SEVEN] Web Development. All Rights Reserved.