Archive for the ‘Software’ Category

Jad Command Line Options

Friday, October 19th, 2007

This is README file for Jad - the fast Java Decompiler.
Jad home page
Copyright 2001 Pavel Kouznetsov (jad@kpdus.com).

0. Please read the disclaimer on the Jad home page.

1. Installation.

Unzip jad.zip file into any appropriate directory on your hard drive.
This will create two files:

- an executable file named ‘jad.exe’ (Windows *)
or ‘jad’ (*n*x)

- this README file

No other setup is required.
(more…)

Processing Files

Monday, September 24th, 2007

Website Portfolio

Sites I designed, implemented and maintain.

Monthly Traffic

Monthly Page Views

Business Processes Inc. http://critical-thinking.com 1000 2000
Software LifeCycle Group http://swlifecycle.com 500 800
London’s West End Pub http://thewestendpub.com 200 500
Mac Meda Destruction Co. http://macmedadestructionco.com 100 200
Fastwiki Media http://fastwiki.com 3000 4500
Total 4800 unique visits 8000 page views

Installing and Deploying JOALMixer

Monday, August 13th, 2007

Installing JOALMixer

To use the JOALMixer with a webstart application simply add the following line to your jnlp file:

<extension href="http://download.java.net/media/java3d/webstart/release/java3d-1.5.1-joal.jnlp"/>

This installs OpenAL, JOAL and the JOALMixer together with Java3D 1.5.1 which is everything needed to use the JOALMixer.

To use the JOALMixer with a desktop application you need to install OpenAL and JOAL (or bundle the jars and native libraries with your application), then put the JOALMixer.jar in the classpath of your application.

Launching Desktop App

To launch a desktop application using the mixer, use:

java -Dj3d.audiodevice="org.jdesktop.j3d.audioengines.joal.JOALMixer" yourApplication

and in your code use viewer.createAudioDevice();

OR

Initialize the JOALMixer directly in your code with:

PhysicalEnvironment pe = new PhysicalEnvironment();
JOALMixer joalMixer = new JOALMixer(pe);
joalMixer.initialize();
pe.setAudioDevice(joalMixer);
viewer.getView().setPhysicalEnvironment(pe);

Source

About Software…

Monday, July 16th, 2007

This is one of my favorite articles about software quality.

Software: So Bad, It Can Only Get Better

by Paul A. Strassmann

Computerworld

December 9, 1996

Software can easily rate among the most poorly constructed, unreliable and least maintainable technological artifacts ever invented by man — with perhaps the exception of Icarus’ wings. 

Nobody would tolerate telephones that crash every other day. Nobody would buy a house if taxes and upkeep were seven times the purchase price. Nobody would acquire a microwave oven if it meant rewiring the entire house every time some other new appliance was plugged in. Absolutely nobody would spend a year’s rent to replace all doors because somebody attached the hinges with only two screws instead of the required four.

(more…)

Regular Expression to Strip All Styling

Tuesday, July 10th, 2007

This is a simple regular expression to find all styling inside an html doc.

style="[a-zA-Z\-: %;/0-9#]+"

Use it to find and replace to nothing.

Google Webmasters Verify and Wordpress

Saturday, June 30th, 2007

Wordpress .htaccess file has a rewrite rule that prevents the verify step of google webmasters from succeeding.

Add this to your .htaccess file, above the #BEGIN WORDPRESS

google rule

Do this and all will be fine.

Posting From Windows Live

Friday, June 29th, 2007

This is a post from windows live. Another editor from microsoft (doesn’t know how to show my site though).

.

Comprehensive .htaccess Example

Sunday, June 24th, 2007

From askapache.com

Askapache website

###############################################################################
#
# This work is licensed under the Creative Commons Attribution 3.0
# United States License. To view a copy of this license, visit
# http://creativecommons.org/licenses/by/3.0/us/ or send a letter to Creative
# Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.
#
###############################################################################
#  Latest: http://z.askapache.com/p/htaccess.txt
#  Online: http://www.askapache.com/htaccess/ultimate-htaccess-file-sample.html
#=============================================================================#
#          MAIN SETTINGS AND OPTIONS
#=============================================================================#
# Options: ALL,FollowSymLinks,Includes,IncludesNOEXEC,SymLinksIfOwnerMatch
###########

### MAIN DEFAULTS ###
Options +ExecCGI -Indexes
DirectoryIndex index.html index.htm index.php
DefaultLanguage en-US
AddDefaultCharset UTF-8
ServerSignature Off

### ENVIRONMENT VARIABLES ###
#SetEnv PHPRC /webroot/includes
#SetEnv TZ America/Indianapolis
#SetEnv SERVER_ADMIN webmaster@domain.tld

### MIME TYPES ###
AddType video/x-flv .flv
AddType application/x-shockwave-flash .swf
AddType image/x-icon .ico

### FORCE FILE TO DOWNLOAD INSTEAD OF APPEAR IN BROWSER ###
#-> http://www.htaccesselite.com/htaccess/addtype-addhandler-action-vf6.html
#AddType application/octet-stream .mov .mp3 .zip 

### ERRORDOCUMENTS ###
ErrorDocument 404 "404 error"
ErrorDocument 400 "400 error"
ErrorDocument 401 "401 error"
ErrorDocument 403 "403 error"
ErrorDocument 405 "405 error"
ErrorDocument 406 "406 error"
ErrorDocument 409 "409 error"
ErrorDocument 413 "413 error"
ErrorDocument 414 "414 error"
ErrorDocument 500 "500 error"
ErrorDocument 501 "501 error"

#=============================================================================#
#          SCRIPTING, ACTION, ADDHANDLER
#=============================================================================#
# Handlers be builtin, included in a module, or added with Action directive
# default-handler: default, handles static content (core)
#      send-as-is: Send file with HTTP headers (mod_asis)
#      cgi-script: treat file as CGI script (mod_cgi)
#       imap-file: Parse as an imagemap rule file (mod_imap)
#     server-info: Get server config info (mod_info)
#   server-status: Get server status report (mod_status)
#        type-map: type map file for content negotiation (mod_negotiation)
#  fastcgi-script: treat file as fastcgi script (mod_fastcgi)
###########

### PARSE AS CGI ###
#AddHandler cgi-script .cgi .pl .spl

### RUN PHP AS APACHE MODULE ###
#AddHandler application/x-httpd-php .php .htm

### RUN PHP AS CGI ###
#AddHandler php-cgi .php .htm

### CGI PHP WRAPPER FOR CUSTOM PHP.INI ###
#AddHandler phpini-cgi .php .htm
#Action phpini-cgi /cgi-bin/php5-custom-ini.cgi

### FAST-CGI SETUP WITH PHP-CGI WRAPPER FOR CUSTOM PHP.INI ###
#AddHandler fastcgi-script .fcgi
#AddHandler php-cgi .php .htm
#Action php-cgi /cgi-bin/php5-wrapper.fcgi

### CUSTOM PHP CGI BINARY SETUP ###
#AddHandler php-cgi .php .htm
#Action php-cgi /cgi-bin/php.cgi

### PROCESS SPECIFIC FILETYPES WITH CGI-SCRIPT ###
#Action image/gif /cgi-bin/img-create.cgi

### CREATE CUSTOM HANDLER FOR SPECIFIC FILE EXTENSIONS ###
#AddHandler custom-processor .ssp
#Action custom-processor /cgi-bin/myprocessor.cgi

#=============================================================================#
#          HEADERS, CACHING AND OPTIMIZATION
#=============================================================================#
#-> http://www.htaccesselite.com/htaccess/cache-control-http-headers-vt65.html
#      300   5 M
#     2700  45 M
#     3600   1 H
#    54000  15 H
#    86400   1 D
#   518400   6 D
#   604800   1 W
#  1814400   3 W
#  2419200   1 M
# 26611200  11 M
# 29030400   1 Y (never expire)
###########

#### HEADER CACHING ####
#-> http://www.htaccesselite.com/htaccess/caching-using-header-vt2.html
#
#   Header set Cache-Control “max-age=2592000″
#
#
#   Header set Cache-Control “max-age=604800″
#
#
#   Header set Cache-Control “max-age=600″
#
#
#   Header unset Cache-Control
#

### ALTERNATE EXPIRES CACHING ###
#-> htaccesselite.com/d/use-htaccess-to-speed-up-your-site-discussion-vt67.html
#ExpiresActive On
#ExpiresDefault A604800
#ExpiresByType image/x-icon A2592000
#ExpiresByType application/x-javascript A2592000
#ExpiresByType text/css A2592000
#ExpiresByType text/html A300
#
#   ExpiresActive Off
#

### META HTTP-EQUIV REPLACEMENTS ###
#
#   Header set imagetoolbar “no”
#

#=============================================================================#
#          REWRITES AND REDIRECTS
#=============================================================================#
# REQUEST METHODS: GET,POST,PUT,DELETE,CONNECT,OPTIONS,PATCH,PROPFIND,
#                  PROPPATCH,MKCOL,COPY,MOVE,LOCK,UNLOCK
###########

### REWRITE DEFAULTS ###
#RewriteEngine On
#RewriteBase /

### REQUIRE SUBDOMAIN ###
#RewriteCond %{HTTP_HOST} !^$
#RewriteCond %{HTTP_HOST} !^subdomain.domain.tld$ [NC]
#RewriteRule ^/(.*)$ http://subdomain.domain.tld/$1 [L,R=301]

### SEO REWRITES ###
#RewriteRule ^(.*)/ve/(.*)$    $1/voluntary-employee/$2 [L,R=301]
#RewriteRule ^(.*)/hsa/(.*)$     $1/health-saving-account/$2 [L,R=301]

### WORDPRESS ###
#RewriteCond %{REQUEST_FILENAME} !-f    # Existing File
#RewriteCond %{REQUEST_FILENAME} !-d    # Existing Directory
#RewriteRule . /index.php [L]

### ALTERNATIVE ANTI-HOTLINKING ###
#RewriteCond %{HTTP_REFERER} !^$
#RewriteCond %{HTTP_REFERER} !^http://(subdomain.)?domain.tld/.*$ [NC]
#RewriteRule ^.*.(bmp|tif|gif|jpg|jpeg|jpe|png)$ - [F] 

### REDIRECT HOTLINKERS ###
#RewriteCond %{HTTP_REFERER} !^$
#RewriteCond %{HTTP_REFERER} !^http://(subdomain.)?domain.tld/.*$ [NC]
#RewriteRule ^.*.(bmp|tif|gif|jpg|jpeg|jpe|png)$ http://google.com [R] 

### DENY REQUEST BASED ON REQUEST METHOD ###
#RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK|OPTIONS|HEAD)$ [NC]
#RewriteRule ^.*$ - [F] 

### REDIRECT UPLOADS ###
#RewriteCond %{REQUEST_METHOD} ^(PUT|POST)$ [NC]
#RewriteRule ^(.*)$ /cgi-bin/form-upload-processor.cgi?p=$1 [L,QSA] 

### REQUIRE SSL EVEN WHEN MOD_SSL IS NOT LOADED ###
#RewriteCond %{HTTPS} !=on [NC]
#RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

#### ALTERNATATIVE TO USING ERRORDOCUMENT ###
#-> http://www.htaccesselite.com/d/htaccess-errordocument-examples-vt11.html
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^.*$ /error.php [L]

### SEO REDIRECTS ###
#Redirect 301 /2006/oldfile.html http://subdomain.domain.tld/newfile.html
#RedirectMatch 301 /o/(.*)$ http://subdomain.domain.tld/s/dl/$1

#=============================================================================#
#          AUTHENTICATION AND SECURITY
#=============================================================================#
# http://www.htaccesselite.com/htaccess/basic-authentication-example-vt17.html
#
# Require (user|group|valid-user) (username|groupname)
###########

### BASIC PASSWORD PROTECTION ###
#AuthType basic
#AuthName “prompt”
#AuthUserFile /.htpasswd
#AuthGroupFile /dev/null
#Require valid-user

### ALLOW FROM IP OR VALID PASSWORD ###
#Require valid-user
#Allow from 192.168.1.23
#Satisfy Any

### PROTECT FILES ###
#
#  Order Allow,Deny
#  Deny from all
#

### PREVENT HOTLINKING ###
#SetEnvIfNoCase Referer “^http://subdomain.domain.tld/” good
#SetEnvIfNoCase Referer “^$” good
#
#   Order Deny,Allow
#   Deny from all
#   Allow from env=good
#   ErrorDocument 403 http://www.google.com/intl/en_ALL/images/logo.gif
#   ErrorDocument 403 /images/you_bad_hotlinker.gif
#

### LIMIT UPLOAD FILE SIZE TO PROTECT AGAINST DOS ATTACK ###
#LimitRequestBody 10240000 #bytes, 0-2147483647(2GB) 

#=============================================================================#
#          SSL SECURITY
#=============================================================================#
#-> http://htaccesselite.com/d/redirecting-all-or-part-of-a-server-to-ssl-vt61
###########

### MOST SECURE WAY TO REQUIRE SSL ###
#-> http://www.askapache.com/htaccess/apache-ssl-in-htaccess-examples.html
#SSLOptions +StrictRequire
#SSLRequireSSL
#SSLRequire %{HTTP_HOST} eq “domain.tld”
#ErrorDocument 403 https://domain.tld 

#=============================================================================#
#          SITE UNDER CONSTRUCTION
#=============================================================================#
# Heres some awesome htaccess to use when you are developing a site
###########

### COMBINED DEVELOPER HTACCESS CODE-USE THIS ###
#
#   Header set Cache-Control “max-age=5″
#
#AuthType basic
#AuthName “Ooops! Temporarily Under Construction…”
#AuthUserFile /.htpasswd
#AuthGroupFile /dev/null
#Require valid-user           # password prompt for everyone else
#Order Deny,Allow
#Deny from all
#Allow from 192.168.64.5      # Your, the developers IP address
#Allow from w3.org            # css/xhtml check jigsaw.w3.org/css-validator/
#Allow from googlebot.com     # Allows google to crawl your pages
#Satisfy Any                  # no password required if host/ip is Allowed

### DONT HAVE TO EMPTY CACHE OR RELOAD TO SEE CHANGES ###
#ExpiresDefault A5 #If using mod_expires
#
#   Header set Cache-Control “max-age=5″
#

### ALLOW ACCESS WITH PASSWORD OR NO PASSWORD FOR SPECIFIC IP/HOSTS ###
#AuthType basic
#AuthName “Ooops! Temporarily Under Construction…”
#AuthUserFile /.htpasswd
#AuthGroupFile /dev/null
#Require valid-user           # password prompt for everyone else
#Order Deny,Allow
#Deny from all
#Allow from 192.168.64.5      # Your, the developers IP address
#Allow from w3.org            # css/xhtml check jigsaw.w3.org/css-validator/
#Allow from googlebot.com     # Allows google to crawl your pages
#Satisfy Any                  # no password required if host/ip is Allowed

################################################################################
#  Latest: http://z.askapache.com/p/htaccess.txt
#  Online: http://www.askapache.com/htaccess/ultimate-htaccess-file-sample.html
###############################################################################

Importing Mysql Database

Saturday, June 23rd, 2007

Now import the dump file into MySQL by typing all the following on 1 single line at the shell prompt:

mysql -p -h DBSERVER dbname < dbname.sql

The above assumes that your database name on our system is “dbname” and the dumpfile that you uploaded was named “dbname.sql“. Replace those with your correct database name and dumpfile filename. Also replace DBSERVER with your correct database server name.

Scheduling Graphviz and Visitors

Saturday, June 23rd, 2007

How to use crontab to schedule statistics updates

Relating to my previous post on Visitors and Graphviz, I setup a cron at Dreamhost so that it is running and updating the analysis on an interval.

The docs at Visitors website was quite confusing so I just did it the way I thought it made sense.

So, here it is. This is the cron task. Put together with the makefile in the previous post and you’ll have an up to the minute analysis of the traffic at your site.

5 * * * * cd ~/graph; make >& /dev/null

Service Plans

Friday, June 22nd, 2007

Plan

Incidents/month

Price/month*

2 Week Free Trial

5+ computers Unlimited! Contact us YES
4 computers Unlimited! f(plan) YES
3 computers

Most Popular!
Unlimited! f(plan) YES
2 computers Unlimited! f(plan) YES
1 computer Unlimited! f(plan) YES
1 computer Limit 2 per month f(plan) YES

Search Engine Optimization

Wednesday, June 20th, 2007

Search engine optimization (SEO) is the process of improving the volume and quality of traffic to a web site from search engines via “natural” (”organic” or “algorithmic”) search results. Usually, the earlier a site is presented in the search results, or the higher it “ranks,” the more searchers will visit that site. SEO can also target different kinds of search, including image search, local search, and industry-specific vertical search engines.

Technical Support

Wednesday, June 20th, 2007

Technical Support

User Support

We provide a single point of contact for your users to report their technical issues. Our friendly and competent technicians resolve most issues by remotely accessing the user PC using the latest technology for quick resolution. Support is always one phone call away to our 24/7 support hot-line.

Remote Access

Offering employees the option to work from alternate office sites or from home will help you attract and maintain a quality workforce and improve productivity as well as employee satisfaction. We can setup secure access to your network from anywhere in the world. Remote access gives you the ability to do everything you can do at the office but be anywhere.

Antivirus and Spam

Computer viruses, Spyware, Adware and spam are a nuisance, dangerous and can also slow your system speed down to a crawl. Contact us to clean your system and to setup 24/7 protection against all threatening software.

Correct use of Headings

Wednesday, June 20th, 2007

Correct use of headings

I was a closet h3 abuser, and I bet if you’d admit it a lot of you are too. What’s a h3 abuser? Well I’m gonna come out of the closet and tell you all about it. There are those little boxes On websites, especially blogs, there are those little boxes, often in column 1 or 3, full of links and stuff and they all have little headings. When making these little boxes you think “Well I should use a heading tag, because that’s more semantic. But those heading tags look too big and those ones look too small, but that one is just about the right size. I’ll make it h3.”

Hands up! Who defaults to h3when they know they need a heading but don’t know what size it should be?

I hope I’m not the only sucker with his or her hand up right now. Speaking in my defense though, I was considering the way it looked unstyled, which is good to do right? Who knew changing your ways and thinking semantically would be so hard? In a previous blog entry I ranted about how WYSIWYG had no place on the web and yet the way I dealt with heading tags was doing just that. OK, so, h1, h2, h3 etc. represent a hierarchy and despite best intentions I was still using them in relation to the size of heading they provide.

Continue reading: Correct use of headings

Web Site Maintenance Plans

Monday, June 18th, 2007

Pay as you go or monthly plans. Personal, friendly service, 10 years experience. I take care of the details so you and your staff can get back to doing what you do best–running your business! I’ve been doing website design and maintenance for over ten years. Call me for a free consultation. I also do copy writing and copy editing informed by standards for online presentation and accessibility.Call me today at (858) 488 1676 or email me to get started!

Site Maintenance Plans

  1. Pay-as-you go: $75/hr

    I do the work.

  2. Training: $100/hr

    I help and train you to do the work.

  3. Monthly

    2 hours

    2 Hours

    • Up to two hours a month for $140/month
    • 72 hour turnaround for
    • Training at $90/hour
    • Additional work at $70/hour
    5 hours

    5 Hours

    • Up to five hours a month for $360/month
    • 48 hour turnaround
    • Training at $70/hour
    • Additional work at $65/hour
    10 hours

    10 Hours

    • Up to ten hours a month for $600/month
    • 24 hour turnaround
    • Training at $60/hour
    • Additional work at $60/hour

    3 months prepaid to begin, then invoiced monthly.

All site maintenance plans include

  • Testing after every edit
  • Full Backup copy of your website
  • Monthly, detailed invoicing
  • Communication by email or phone, 5 days a week.
  • Page Changes and additions
  • Updates to calendar or events
  • Add breaking news or upcoming events
  • Add photos, graphics, graphs and charts
  • Text re-writes and improvements
  • Site facelifts and makeovers
  • Keeping the homepage fresh for return customers

Why my site maintenance service?

  • Have a web expert at your fingertips whenever you need one–no need to train your staff.
  • Fast Turnaround. Most requests completed the same day.
  • Cost-Effective. Fresh websites make more money.
  • Detail oriented. You already have enough to think about.

Benefits of my site maintenance program

  • Complete backup of your website
  • Professional edits–your web site maintains its quality
  • Economical and convenient