Still looking for fast web development techniques

I’ve been developing web sites for almost 10 years now. I’m still in search of a way to develop faster. I find myself doing things over and over again.

I use PHP as the programming language to develop the web apps with MySQL database. I started to look for different frameworks – but most use MVC and I don’t have time to learn it.

Some have suggested to do validation using MySQL. This helps a bit so I don’t have to write more PHP code to validate whether or not the record exists, foreign key constraints, etc. Plus it really is good practice to have these in place in the database layer.

Next I looked in to template engines to help with the layout of the site. It does help quite a bit but I’m still left with a lot of PHP code. I use Dreamweaver to write code and I used to use its automated code writing but I found it too messy and inefficient. Now I only use it because the FTP client is built in, has a file checkout system and in CS5 it can read included files so I have easy access to them. The error check is nice too. It catches many syntax errors right away. It can read used variables and be a part of the autocomplete feature.

I tried using existing systems like CMS or blogs (Joomla and WordPress). I figured I can create add-ons on top of an existing system. Joomla uses the MVC framework. WordPress on the other hand is easier to figure out how to build on top of it. Plus their documentation is really easy to follow. One of the limitations I found is the lack of access levels. Another is the pre-existing environment may not fit with a project since it’s so customized – better to be built from the ground up.

I’ve been peeking into the .NET framework off and on. I don’t primarily use Windows at all. I’m mostly on a Mac or using some sort of Linux flavor. I do have Windows7 running virtually on my MBP and iMac so I can play with it. I have played with Visual Studio and it felt easy to use plus it seemed to make developing quick. The drawbacks I’ve found are Windows hosting is more expensive than Linux hosting, IDEs are expensive and run mostly on Windows OS, and I don’t like creating online applications that can potentially only work with Internet Explorer (does not support web standards and only available on Windows OS).

Rails looks promising with the DRY (don’t repeat yourself) approach. I’ve tried to look into it and even bought some books and watched some screencasts. It’s a great language but I can’t seem to understand how to authenticate/authorize different users. They have many different plugins that I can use but each one uses their own way of doing it.

I guess I’ll keep looking. Either I’ll find time to learn MVC framework, get better at Rails, or someone will develop a new platform to speed up web development.

Artisteer 2 and Dreamweaver CS5

I’ve been trying out the demo for Artisteer 2 and it’s great. Creating templates for popular CMS softwares such as WordPress, Joomla, and Drupal have never been easier. I’ve done some playing around with manually creating a WordPress template and it’s not too bad. The WordPress documentation is fairly easy to follow. But doing it in Artisteer is a lot quicker. There’s 2 versions of the software, a home/academic edition that will create WordPress templates for $50 and a standard edition that will allow you to create templates for the other CMS (Joomla, Drupal, etc) for $130. So far I only need the home edition since I use WordPress but at work we also use Joomla. I don’t normally create the layouts at work so I’m hesitating to buy the home edition. I have sent them an email to see if there’s an upgrade path from home to standard and the cost. My work will not pay for the software and if they do, it will take such a long time to get since they only purchase things through purchase orders (sigh).

Now I’ve been curious about Dreamweaver CS5. I’m currently using CS3 with Espresso. I rarely use Dreamweaver’s auto coding – it’s too bulky. I like coding by hand. Espresso is great for that and it’s lightweight and fast. It just doesn’t have the design view tab like Dreamweaver does. Adobe also has a student/teacher version of the software for only $150. I’m downloading a trial version now and will check it out. I’m curious about the CMS code “sniffer” that they have.

Creating a wrapper page within WordPress 2.9

I’ve been searching for a way to create a wrapper page within WordPress without having to install a plugin. I browsed the WordPress files and found wp-blog-header.php in the root install directory. It’s really simple.

<?php
require_once(‘wp-blog-header.php’);
get_header();

// this is the content layout based on the current theme you are using

get_sidebar();
get_footer();

?>

I’m not sure when this was implemented. All of the articles I found online mentions plugins that had to be installed or creating a new page within the WordPress admin GUI then include a file, etc. I just need to create a custom PHP file that will display the header, sidebar, and footer.

Depending on the theme you are using will determine additional code between each section (header, sidebar, footer). So check out the page.php or index.php of the theme you are using to see how it is structured.

WordPress [an error occurred while processing this directive]

I’ve been getting the [an error occurred while processing this directive] error every time I go to my website. I googled it and found this http://wordpress.org/support/topic/204631?replies=4. People suggested it was caused by the WP Super Cache plugin. I’m currently running 0.9.7. Well, how could you get to the plugins interface if every page displayed that error?

I ended up using phpMyAdmin that my host has and went in the database to manually disable the plugin. Luckily the tables and data entry values were specific so it wasn’t hard to figure out where to start looking. The table you want to look for is “wpau_active_plugins_info”. This table should have records of plugins that are active – hence the table name. Inside this table, look in “plugin_name” column. This is where I found the WP Super Cache entry. I deleted it and reload the page. It fixed the problem.