Category: "Web Business"

Quantifying Professional Titles

It can be difficult to determine the title assignments within a company. However, there are two definite indicators that can be used to assign titles - time spent on production work (as opposed to time spent leading/managing), and the number of employees the person is responsible for.

With this in mind, the following are recommended guidelines:

  • President - Responsible for entire company. 95% of time spent on management.
  • Vice President - Responsible for portion of company. 90% of time spent on management.
  • Director - Responsible for 25 or more people. 85% of time spent on management.
  • Manager - Responsible for 10 or more people. 75% of time spent on management.
  • Supervisor / Team Leader - Responsible for 5 or more people. 50% of time spent on management.

Every company is different, and there are times when people must assume different roles. Although the numbers may be adjusted, permanently or temporarily, they should be identified and used. Small companies do not need all these positions.

Title inflation is silly.

Work isn't necessarily Profit

Never forget that even if you are working hard, if it costs more to deliver the goods or services than you receive, you are still losing money.

If you don’t know what it costs, you are probably losing money.

If you don’t know how much you have been paid, you are probably losing money.

If you don’t know the basic operating costs and overhead for your company, you are probably losing money.

Partnerships

  • A partnership doesn’t imply direct revenue generation or sales support
  • A partnership should help all parties reach their goals
  • A partnership should raise the level of service for the end user
  • A partnership should be respected by all parties
  • Partnership participation costs should be clearly defined and understood by all parties
  • Levels of participation should be allowed, and partners should be able to ‘opt-out’ of opportunities

Drupal RPM spec file generator module

A Drupal RPM generator module could scan the modules installed and extract the following information:

  • Source file (full URL)
  • Requires - the modules required to support each module
  • Provides - the name of the service/capability/feature provided by each module
  • Conflicts with - modules which cannot be installed with each module

The standard BUILD, SPECS, SOURCE, RPM, SRPM directories can be used for the build process. The Drupal RPM generator would write .spec files to the SPECS directory for each module. .rpmmacros would indicate the target directory, and other common constants.

This allows a development environment to be quickly converted from a .tgz installation to an RPM managed production server.

OOP Web

In virtually every web application - performance should take precedence over everything.

PHP (and many other languages) are interpretive. The code is read over and over.

  • Organize the files such that the most commonly used code is first.
  • Keep files small.
  • Use a good architecture.
  • Don’t read data or access information that won’t be used. If it won’t go to the client, on every request, don’t read it.
  • Validate on the client side first, and don’t send the data to the server if it isn’t valid.
  • Perform quick validation and escaping to protect the server on the server side.
  • Cache files on the client whenever possible.
  • Cache information on the server, use session variables for anything that will be used on every request. Consider storing ACL data in a session variable, but be aware of security risks.
  • Be aware of PHP best practices, and the impacts of double-quoted strings.