PHP

Favorite Software for Web Development

Wednesday, December 3rd, 2008 | Business | 1 Comment

Sometimes when you start out doing something on computers, it seems so hard until you get the tools that everyone else uses.

In this post I’m asking everyone else for feedback, what do you like to use?  Go ahead and comment it in there, I’ll add it to the article as I see em.

Below are some of my favorite pieces of software for web development, some will be very obvious (Flash, Photoshop, etc.) … some maybe not so much:

TextPad
I love textpad for basic text changes from everything PHP, to HTML, to writing notes.   It’s great to have multiple documents, line numbers, quick global / file / local search and replaces etc.  I use this when I’m working with source files, XML definition files, CSS files, to CFM or other formats.  I love it.  

HomeSite
Those of you who know homesite, will know it’s pretty much gone nowadays.   The heyday was many years ago.  The direct FTP editing was amazingly useful.  It has some features that I still go back to now and then.  Mostly search and replace functionality, FTP based editing (right on ther server … mostly), document formatting (code sweeper), and other utilitarian functions.  

CuteFTP Pro
Working on the web, we all are in constant use of FTP (more so than we should be).  Cute FTP has always been a staple of my software toolbox.  It’s so easy to launch connections to all the FTP servers you use throughout the day, keep them open for jumping between projects.  The number of protocols it supports is flexible (FTP, FTP w/ SSL, SFTP, HTTP, HTTPS, etc.), and it always seem to be able to connect.  The speeds and setting are highly configurable.  It’s nice having 50 simultaneous downloads going at a time.

Tortoise SVN
Whoever isn’t using SVN, should be using SVN (or CVS or whatever other version control system you can think of).  Tortoise SVN is an essential windows interface enhancement to integrate SVN into the file browser.  For those of you who use CVS, there’s a Tortoise CVS as well.  It is easy to look at version histories, compare files based on modification dates, and to pull down new updates.  

Subversion
Source control is underutilized in my experience.   So many sites aren’t run with source control.  Think of the advantages: automatic source control, automatic offsite backup (if you use an external host — which I would love to recommend svnrepository.com, a very cheap hosted SVN repository).  Read about it, get used to it, it will save a project.

Eclipse
You were waiting for me to say it weren’t you?   An open source IDE.  Technically it started as a Java IDE (most Java developers should be intimately familiar with this).  Thanks to add-ons developed by the community, it supports, quite adeptly, PHP and other web development technologies.  It has built in SVN support, supports deployment scripts… its amazing.  Try it, explore the community around it.  Check out the Subclipse add-on, as well as the Web Developer Tools, and Eclipse XML Editors and Tools.

Adobe Flash (Adobe Creative Suite 4 Design Premium)
Pretty much a no brainer, you need Adobe Flash to develop flash.  It’s a great tool, worth every penny.

Adobe Photoshop (Adobe Creative Suite 4 Design Premium)
Another obvious one.  Photoshop is a requirements for all web development.  No, you shouldn’t be doing web design work as a developer.  However, there is always the need to look at colors, size things, cut up images, process original artwork, the list goes on forever.  I really recommend the Adobe Creative Suite, we use almost all of the software anyway.  

Microsoft Word (Microsoft Office)
You will always need this (or another decent word processor).  Yes, you can get by without it.  However the sheer amount of things Word can handle: Estimates, Proposals, Letterheads, Envelopes, Labels, the list goes on and on.. you will wish you had it someday.

Microsoft Excel (Microsoft Office)
Another one that you don’t always think about, but excel makes writing estimates so much easier.  You can update your entire estimate based upon a new discount, manage hours, track changes.  I’ve used Google’s online spreadsheets before – they are great.  But they aren’t fully able to replace excel yet. 

Microsoft PowerPoint (Microsoft Office)
Those proposals are much better with an accompanying presentation. Tell your clients what you do, what they need, in a way that can impact people in a conference room.  Everyone yawns when it comes to yet ANOTHER powerpoint presentation, but you look unprofessional without one in most cases. 

MySQL
Normally this is on a hosted platform, but you need a database to do the cooler web development projects.  MySQL is cheap, but if you want you can substitute in Microsoft SQL Server, or even Oracle.  In my experience if you know why you want MS or Oracle, you can pay for them.  If you don’t know why you want either of those, just go with MySQL.  

PHP MY Admin
Administration software is just as important as the backend engine, at least for development.  It lets you manage a database online, easily, and export simply.  If you haven’t used it, try it. 

SQL Server Management Studio
Another tool for development on SQL servers.  Same as PHP My Admin, arguably much more helpful, but it is a client app.  If you’re working with Oracle, or prefer these desktop applications to the PHPMyAdmin web interface — check out Aqua Data Studio

There are really dozens more tools I consider very useful.  Not exluding:

– Versions of all browsers
– VPN Connectivity software
– Remote Desktop
– VNC Client
– pcAnywhere (not so much anymore)
– Outlook / Email Client

Last but not least, is Google.  It is the best tool you will have when working in web development.

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

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:
PHP header( "HTTP/1.1 301 Moved Permanently" );
header( "Status: 301 Moved Permanently" );
header( "Location: http://www.newsite.com/" );
exit(0);
 
ASP response.setStatus(301);
response.setHeader( "Location", "http://www.newsite.com/" );
response.setHeader( "Connection", "close" );
 
JSP response.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: , , , , , , ,


Please share, it makes me happy:

Subscribe to Email Alerts

Follow Me

Follow seangw on twitter

Archives

Categories

prestashop theme

virtuemart template