2 Year Curriculums for Internet Professionals

Logic / Engineering

Year 1
Javascript 1 (Logic)
Javascript 2 (DOM)

Year 2
Data structures
Client/server architecture considerations
Applications engineering
Template languages

Design / Development

Year 1
PhotoShop 1 - Fundamentals of design
User Interface Design

Year 2
Multimedia 1 - Visual design and construction
Application engineering - integrating designs with applications
Multimedia 2 - Flash/Shockwave, animation and audio
Page optimization
Server tuning
Browser compatibility

It is assumed these would offered in a Community or Junior college. Additional general education electives are assumed.

Web 3.0 Predictions


  • Social networking - The use of technology to connect people.
  • Web 3.0 - The next generation of the Internet.


  • Ads - Advertising (like the Google ads on this site), will continue to get more and more engaging. Tools to create these ads, particularly interactive ones will become very powerful and popular. The objective will be to draw site visitors into the ad, and to a different site. Bland text ads will be the equivalent of generic product packaging.
  • Content sharing - This will remain strong, allowing people to post material for others to access. The difference will be in the reduction of comments. Ratings are a good way to allow a site to self-police content, but comments are often of little to no value.
  • Kids - Kids will follow the latest site with games and entertainment, as long as it stays fresh. Their loyalty will be very difficult to maintain as they age out of material and as new sites come on line. For that reason, youth oriented sites should consider the member life cycle, identifying where to attract new visitors from and where to spawn them to. Companies will begin to adopt a cradle to grave approach, probably through partnerships.
  • Marketing sites - Sites used for public relations/marketing will remain strong, because they offer information of value.
  • Partnerships - Web partnerships will become active, allowing people to move within a sphere of content, seamlessly.
  • Social networking - Will be replaced by more resource oriented sites as people realize that connecting over the internet is actually very isolating. Much of the intent of social networking is to share information, however there is a wealth of information already available. Success will be sites that transition gracefully from open, ad hoc media into the organization of user-contributed content that better supports the site visitors. Improvements in search, content organization, automation of content management, and information professionals will be key. Point systems that don’t translate into tangible benefits will not be successful.
  • Web 3.0 - Just a buzzword, means alot of different things to alot of people. The web is too diverse to categorize or assign version numbers.
  • Web applications - Applications will rely increasingly on frameworks like Zend. The demand for more sophisticated sites will necessitate the use of frameworks for better quality in a timely manner.
  • Web sites - Web sites will continue to become more polished. Site visitors will expect seamless application integration and advanced features. Simple HTML sites will be replaced by applications that are easy to manage.


I am using Smarty Templates extensively in a custom application. The application relies heavily on both PHP .ini and Smarty .conf files.

The .conf files had boolean settings, meaning values set to the literal strings of “true” and “false”, and when I read them in, with $smarty->config_load(’file.conf’);, my booleans were converted into either nothing (false) or 1 (true). I am using them as literals - so the conversion was not good.

I just started looking into changing my code to compensate, when I decided to review the Smarty documentation again. The booleanize setting allows you to disable the conversion from false to nothing and true to 1.

An enthusiastic thank you to the Smarty team!


WordPress 2.5 Image File Upload Errors

In addition to b2evolution, I have WordPress 2.5 blogs, which were extremely easy to upgrade through Fantastico.

There were two issues that were causing image uploads to fail.

Here are links to the two solutions that worked for me, with thanks to the authors.



Tracking professional service project costs

Based on the assumption that the project has an adequate budget established by careful estimation and communication with the client, the following tracking can be used to determine the cost.

Track everything.

First, all the indirect fixed costs - rent, power, phone, water, taxes. For any given day, a certain amount of money is spent regardless of activity. Know this number.

Next, the direct fixed costs - server, Internet access.

Management should be tracked at the project level. Any meeting held to discuss a project should be billed, by all parties, to that project. That does not mean the client will be billed. It ensures that the cost of the project is accurate.

Direct labor costs must be carefully tracked. If it is related to the project, it must be tracked. Reporting must be specific enough to allow management to determine where the money was spent and why. Unauthorized charges must not be allowed.

Indirect labor cost must also be identified. For example, an email problem for the client. This must be billed as support. The same is true for training. These are hours spent assisting the customer that do not help complete the project.

Marketing should be identified as such, and reported - either with the project or the client.