Business

Protect Client Search Engine Placement with 301 Redirects

Wednesday, October 15th, 2008 | Business | 2 Comments

This is a big win for us web developers.  It helps maintain all the SEO work that has gone into a site, and lets us move site architecture around with minimal impact.

Many times I run across companies whose website just went from ASP/CFM/JSP/PHP/CGI/HTML/HTM to ASP/CFM/JSP/PHP/CGI/HTML/HTM.  Fill in the blank, migrating from one platform to another is a big deal.  To make matters worse, how is a search engine supposed to know NOT to link to an old file, and to redirect the same relevancy to the new file?

The magic of 301 Redirects

301 is an HTTP Status code (just like 404 and others, 403, 500, etc).

301 tells browsers and search engines that a page has been “Moved Permanently”

 

How can you do a 301 redirect?

First off, do NOT attempt redirecting unless you know specifically what to do.  Trying to implement a meta-refresh tag will hurt you more than it will help.  Search engines have become wise to the meta-refresh game that spammers have been involved with.  Do not do it.

There are 2 routes to take, server side, and code side.

 

Server Side 301 Redirects

If you’re lucky enough to be working on a server supporting .htaccess files, your life is easy.  

  1. Create a file called “.htaccess” in the root of your website
  2. Open the file in a text editor
  3. Set the contents to the following (replacing original, and new):

Redirect 301 /original/original.html http://www.yoursite.com/new/new.html

OR if you want to wildcard it:

RedirectMatch 301 (.*)\.htm$ http://yoursite.com$1.html

If your server is IIS, you can do a redirect with the following:
  1. In IIS (internet services manager), right click on the old file
  2. Select “a redirection to a URL”
  3. Enter the URL for the new page
  4. Select “The exact URL entered above” and “A permanent redirection for this resource.”
  5. Click “Apply”
Code Implementation of 301 Redirects (PHP, ASP, JSP)
Of course a 301 redirect can be implemented in the front end code for a specific file.  That can be done fairly effectively with very basic code.
Following are some examples of redirects in some popular languages:
PHPheader( "HTTP/1.1 301 Moved Permanently" );
header( "Status: 301 Moved Permanently" );
header( "Location: http://www.newsite.com/" );
exit(0);
 
ASPresponse.setStatus(301);
response.setHeader( "Location", "http://www.newsite.com/" );
response.setHeader( "Connection", "close" );
 
JSPresponse.setContentType("text/html");
response.setDateHeader("Expires", 0);
response.setHeader("Location", "http://www.newsite.com/new.php");
response.setStatus(301);
Of course if you want to get fancier, you could create a script that automatically detects the page name and derives the new page name from that string (example done in JSP):
HttpServletRequest req1=(HttpServletRequest) request;
StringBuffer ReqUrl= req1.getRequestURL();
String RequestUrl=ReqUrl.toString();String source;
String str; 

source = RequestUrl;

str = source.substring(0, source.indexOf(".jsp"));

response.setContentType("text/html");
response.setDateHeader("Expires", 0);
response.setHeader("Location", str+".php");
response.setStatus(301);

Conclusion
That’s it.  It should be easy to move pages around from one platform to another, to a new domain, or a new directory structure.
Your clients will thank you, and it will save you the work of redoing all of your SEO work down the road.

Tags: , , , , , , ,

Papervision3D update

Saturday, October 11th, 2008 | Business | 1 Comment

So far so good with Papervision3D.  It took me a few hours but I’m already mostly up and running with the new framework.

Later on I will post each step that I made in working with Papervision3D.

When I learn a new framework I like to learn each of the basic tools first in their entirety.  It helps later on when dealing with more complicated ideas.

Along the way I’ve run across a few extremely useful sites:

  • Mad Vertices – Jim Foley’s Brain.  Flex, Flash, Papervision 3D, Swift 3D and other cool stuff.
  • InsideRIA – Useful blog touching on more complex flash / actionscript 3.0 issues
  • EverydayFlash – Creative use of technology.  A blog about 3D Flash and Actionscript by Bartek Drozdz
The libraries that I’ve ended up with are:
Papervision is, of course, the core 3d engine.
Tweener provides some very nice 2D and 3D transformation animations with actionscript.  This is stuff I’ve always done by hand before, no longer!
AS3Dmod is a great library of cross-engine modifiers.  The modifiers provided include Bend, Noise, Skew, Taper, Bloat, Perlin, and Twist.  It has some nice developer documentation (for developers, not really mainstream).  To be fair, only hardcore developers should get themselves into these modifiers.
In a little over 5 hours I’ve managed to explore the nuclear functionality of all of these frameworks, so it’s quite possible.  
Sometime soon I’ll be posting my progress in a series of flash and actionscript source files.

Tags: , , , , , , ,

Papervision 3D work

Tuesday, October 7th, 2008 | Business | No Comments

Among us flash web developers, who hasn’t tried creating a 3D engine of their own before?

I think it’s par for the course for any flash programmer who has taken linear mathetmatics or 3d coding classes at some point in our histories.

I’ll admit, my last official adventuring into 3D engine work was maybe 8 years ago back when I was in the Computer Science program at Boston University.

At that point it was mostly implementing ray tracers, DirectX 3D transforms and other basic 3d manipulations (stick figures, kinematics, reflectivity, etc.).

Flash has been much more “complicated” as it were.  Given the processing limitations it’s always been a game of artifically implementing 3D effects, as opposed to creating a real 3D engine.

In my upcoming project, I’ll be playing with Papervision 3D (Blog, Project Home, Official Site).  

I’ve followed Papervision3D for a while now, watching as site after site wins awards.  

The most interesting thing, is that the sites that win awards for implementation of Papervision3D don’t implement extraordinarily complex 3d sites (at least so it seems, maybe that’s the magic) but artfully integrate a 3d engine into their experience:

  • Barcinski & Jeanjean – I love the unique “loader”, as well as simple early interactions to allow for loading, while the user doesn’t think loading is going on.
  • Fat-Man Collective – A great website fully integrating a 3d engine with design, seamless, simple, and very effective.
  • 13Flo – Ignore everything you think a website had to be, just take a look at this.

Results will be posted here.

Tags: , , , ,

AJAX Effects, including Heatmapping

Tuesday, October 7th, 2008 | Business | No Comments

I saw an article on Digg today, 20 Excellent AJAX Effects You Should Know.

They go through the usual stuff, auto completing forms, inline editing, fancy uploading, email, file directory, etc.

The most interseting, to me at least, is the “ClickHeat Clicks Heatmap“.

ClickHeat image screenshot of reported heatmap information.

The other effects are all standard, they are very useful, but as is noted in the article — heatmaps are an underused aspect in web development.

 

Way back when, I used to work on Heatmaps (although I didn’t have a name for it).  I had created a webpage that was just a grid of 5×5 transparent pixels.  The point of that, was that each pixel reported the mouse position on mouseover.  Back then (this was in 1998 now), I had tried to find a way to get the browser to be able to track down where the user “looks” with the mouse, while on your website.

Can’t we all understand just how powerful this is?

We can finally, clearly, see what a user is looking at with their mouse.  I know I do this — move my mouse around as I’m interested in something in an article.  I don’t know why I do it, but I do.

Here’s just some quick ideas:

  1. Identify if the users can “see” parts of your navigation, or if they are ignoring it
  2. Which articles are they looking at?
  3. Optimize the functionality to report on a single user, and record the time of the mouse position — giving a view of exactly where a user moves their mouse (they may provide this functionality)
  4. Adding mouse movement tracking (the software seems to only report clicking locations)
I know other reporting services like Google Analytics have website overlays that let you see visually where a user clicks, but this is a different approach.  It logs mouse events.  Minor tweaks to it, and we have an extremely powerful production and/or test environment logging software.

Tags: , , , ,

jQuery becomes an official part of Microsoft and Nokia Frameworks

Monday, September 29th, 2008 | Business | No Comments

As posted on the official jQuery blog, “jQuery, Microsoft, and Nokia“, jQuery is being made an official part of the development platforms for both Microsoft and Nokia.

That’s going to be quite the blow to other frameworks.  Does this mean Scriptaculous will be slowing down?

I think this may have been strategic, as Apple has pushed Scriptaculous, and other developers have been using the Yahoo AJAX kit, as well as the Google AJAX kits.

All in all, great news for the talented jQuery team.  A great piece of software that is changing the way the web is being built.

Tags: , , , , ,

Flash Optimizations of onClip enterFrame events

Thursday, September 25th, 2008 | Business | No Comments

I’m going to be writing up a tutorial and exploring the benefits of what I am about to propose, this is for conversation and discussion.

When creating MovieClip objects that update their status every frame they enter, traditionally you bind a general loop to their “onClipEvent(enterFrame)” or other methods to bind to the onEnterFrame method.

Inside is normally a loop that executes perpetually with each frame refresh.  When objects build up with this logic, the framerate in Flash movies can dwindle.  This is especially evident on slower functioning computers.

I will be testing out a method to enhance movieclips who don’t need to always be looping.  For example, if you have a navigational structure with 3 elements.  Lets call them Home, News, and Contact.  These navigational elements need to animate themselves when told to do so by the main flash animation.

Normally I would bind a method to “setTargetXY”, “doAnimation”, and let the main handler “onEnterFrame” handle the animation from there.

But what about when the movie isn’t moving the navigation around?

I propose the doAnimation should always have a “this.start()”.  Additionally when the animation is over, the main handler should “this.stop();” to stop the moving from entering frames and continuously checking for an “isActive” or other qualifiers to begin animation calculations.

I’ve informally done this before just out of optimizing code, but I think a more formal approach may be beneficial.

Does anyone know if the flash player automatically does this?  Tests for logical qualifiers in movie loops, and stops them until those qualifiers change? 

It could be a nice optimization to the way Flash player handles static objects who have a loop with a single if statement wrapped around.

Tags: , ,

G1 – Will it support flash?

Tuesday, September 23rd, 2008 | Business, Personal | No Comments

One of the biggest questions I have right now, is will the G1 support flash?

The famous “Google Phone”, competing with the iPhone — so far I cannot confirm or reject the possibility that it supports flash.

The lack of flash support on the iPhone is my biggest problem with the phone.

Some other various pieces of information I have gathered, mostly negatives about the G1:

 

  • it is almost 30% thicker, 20% heavier
  • smaller screen
  • forces the user to use google accounts for email / contacts
  • does not sync with desktop applications 
The positive updates:
  • Built in compass (think of applications in Streetview, and other geospacial technologies)
  • Google Street View support
UPDATE 2008.09.23- According to Xbit laboratories in this article, the Google Android Phone will NOT be supporting flash.

Tags: , , ,

Apple’s controversy regarding stealing ideas from Intelliscreen

Monday, September 22nd, 2008 | Business | 2 Comments

 

Intelliscreen home page preview

Intelliscreen's modifications to the locked screen of the iPhone.

Intelliscreen is an application for jailbroken iPhone’s.  The application modifies the “locked” iPhone screen (normally your background with an unlock slider), and adds information collected from various sources.

 

After I got my new iPhone 3G, I had the privilege of fearlessly jailbreaking my old iPhone.  I installed the application, it was great.  When you pick up your phone you saw news, weather, and messages all without even unlocking your phone. 

To the right you can see what the Intelliscreen image looks like.  Very useful.

Recently Apple has announced they will be releasing the same functionality legitimately on the iPhone.  This is of course through a patent filing.

Everyone has been saying that Apple was stealing from Intelliscreen.  This coming as everyone is hearing the story about the furniture salesman who “invented” the iPhone (here’s a hint how that’s going, he’s still a furniture salesman).

In recent light, it turns out the filing actually dates back BEFORE the Intelliscreen application came out.  That’s right, the patent dates back to June 2007, whereas the Intelliscreen application didn’t come out until May of 2008.

I think the consumers win out on this one, as Intelliscreen has had time to test the application in a small subset of iPhone users.  Apple will officially release the alterations to the home page.

I hope Intelliscreen doesn’t get left out in the cold, as they made some nice software.

Tags: , , , ,

Feedburner, WordPress and Blogs

Monday, September 22nd, 2008 | Business | No Comments

Running and maintaining a blog is a learning experience for me.

First thing I’m learning, there is no instant gratification.

Second, fortunately, there are tons of tools out there to help you.

I’ve just stumbled across a post at TD Creative, with regards to Feedburner.  It highlights some things that feedburner will do for you.

Highly recommended read, I’m looking into it at the moment.

Tags: , ,

Chrome – Holding Steady

Sunday, September 21st, 2008 | Business | No Comments

I had posted earlier that I had setup Google’s new Chrome browser.

Now it’s been at least a week that I’ve been using it and I wanted to post some comments.

First of all, I don’t consider a “beta” browser.  I know whenever I test out a new browser it feels like it’s almost unusable for a period of time.  It’s been getting much better since the IE4 days, but there’s still always a sense of “this isn’t ready yet”.

Being a web developer, I dread new browsers because … thats just one more environment you have to test in.  

With this browser, I feel like it is already a final product.  Already I’m excited about the integration of “Gears”, the slim application like interface when you “Create application shortcut”, how fast it seems to run, and the possibilities it introduces for Javascript and AJAX online.

Some minor issues I would, however, like to raise are:

  • I had a tab freeze, and the other tab froze as well — I had thought each tab was supposed to be entirely independent from one another in processor space and prevent this.  Maybe I’m misunderstood?
  • It seems the great “V8” team that Google had put together is in competition with SquirrelFish Extreme in terms of pure performance.  Needless to say, I’m no expert in this, and it’s probably one of those benchmarks that highly favors a browser, or isn’t indicative of the complete functionality of an engine.
  •  This is entirely a subjective point, but I don’t like the way the Taskbar icons look.  I know I’m tuned into Firefox and IE’s icons for the web, but I always get confused with the 3 colors in the Chrome taskbar icons.  
  • Whos’ taking advantage of the new functionality the most?  I remember years ago seeing links to who was taking advantage to IE4′s new capabilities, does anyone have a list of site’s that are built to embrace Chrome?  (maybe an idea for a future project)
Overall I’m impressed with the new browser.  It feels clean.
Chrome is slowly becoming my browser of choice.  
I know lots of early adopters tried and switched back (check out this interesting review of Chrome adoption and usage at Arstechnica, it is useful information).

Tags: , , , , , , , , , ,


Please share, it makes me happy:

Subscribe to Email Alerts

Make a Donation

Follow Me

Follow seangw on twitter

Archives

Categories

prestashop theme

virtuemart template