Archive for the ‘LAMP’ Category

WordPress Skills (How to hire a WP guy!)

My job just asked me to make a list of what a sister agency should look for in WP ppl. Googling left me with nothing (as all search results seem to have been taken over by SEO ppl lately), so here’s my addition to the mix:

Basic (unquestioned assumptions):
* XHTML syntax, CSS2,
* Browser testing-abilities: IE6-8, FF1-3,Saf3-4, Chrome1-2

WP Basics:
* Upgrading (and fixing when broken!)
* Knowledge of a set of plugins for these common problems:
* “I want a contact form (with these 9 fields)”
* “I want backups”
* “I want a photo gallery (with lightbox)”
* “I want twitter/facebook integration”
* “I want a podcast”
* “I want google maps on my contact page”

WP Intermediate:
* Build/mod a template
* Build/mod a plugin
* jQuery instead of simple, good-ol’-fashioned javascript

Technical/Back-end:
* Can fix ‘broken’ DB’s
* Clean MySQL WP DB from hackers
* phpmyadmin
* MySQL command-line

Users (Teaching skills):
* Guide clients/staff through changing templates, adding special parameters for templates, plugins, upgrades.
* Explain the difference between the 2 editing modes of WP, as well as how a post, page, excerpt are all used.

WP Access controls:
* Should users sign up?
* How to handle editors, admin, readers?
* Public/private posts/pages
* How are comments filtered & what signups required?

SEO:
* What the different HTTP Response numbers mean (#200, 301,302)
* .htaccess mod_rewrite for Apache/Linux servers
* forwarding old sites to WP pages
* forwarding old posts to a archive page
* making ‘pretty urls’ 301 (and why WP default doesn’t do it)
* maing ‘www.’ 301  (and why WP default doesn’t do it)
* The troubles with WP on MS/IIS Servers
* Why XML Sitemaps are good
* Why Google Analytics & Webmaster tools are worth it (and how to interp ‘em to clients)

Anything else out there?

The iPen Review

The iPen, by Finger System, Inc.

First off, sometimes you can judge a book by it’s cover– especially when a marketing department has ahold of the cover. By this I mean the “Ages 5 & up” label. Yes, this IS a kids play toy, and I’m going to try and take it seriously. I hope that doesn’t make me a kid. Likely does.

First Impressions

first 15mins:  holy crap this is fussy! How does this work right at all?

second 15mins:  let’s try to figure some workarounds..

third 15mins:  ok, now with a basic system in place, perhaps there’s a chance.. a very small chance..

last 15mins:  It brings back the good ol’ days of owning a pocket pc.

1 month in: with the right linux-config’d system in place, the iPen has it’s place, and can even replace the need to own a full $1700 tabletPC. For $15, it’s a steal. But the whole repetitive stress thing isn’t any better or worse, but that’s my fault for being tied to this thing for 12hrs /day!

“The System” (My Linux config)

0) You really should use the old-school optical 1mm grid they provide.. graph paper doesn’t cut it. I ended up cutting a 2″x3″ square out & taping it on the corner of my laptop (nearly over the trackpad!) when I’m not at my desk. However, when running in ‘super slow mode’, i need the whole thing. Choose cutting wisely.
1) hold the mouse a bit more upright than a regular pen, especially when not using the grid-pad :(
2) Slow the mouse settings all the way down: xset m 0 0, (or see my ultra-slowed-down xorg.conf)
3) Use xournal to scribble notes & PDF annotate, zoomed in to full-width (150%), unless running ultra-slow, then tis fine zoomed out where the notebook lines are like college-ruled. (yes, i measured). Xournal also supports graph paper, colored paper & custom-paper sizes. Handy for when I rotate the screen. Also, I found having the default right-click to be the ‘hand’ is very handy (like acrobat’s hand/grab-drag-scrolling)
4) Use cellwriter for single character input (aka PocketPC-land!). Takes some config, but it gets pretty good.
5) Firefox plugin: “Grab and drag”!  This is when it hit me: “Don’t try and use a pen like a mouse. Use a pen like a pen!”

The Speed Test

With cell writer config’d & trained (not a hard process at all),
and using the sentence: “The quick brown fox jumps over the lazy dog”:
Typing: “THe quick brown fox jumped over hte lazy dog” is 8-9 seconds, with only 2 errors.
Cellwriter: “the quick brown fox jumped overthe lazy dog.” in 58 seconds, first try, then 44s!, with 2 errors as well.
Handwriting on paper: 13seconds
Xournal: 24seconds.

A 5-6 times increase in time is wretched. Especially if I in-line corrected about 4-6 characters thanks to a shaky nervous hand! No doubt I’ve cellwritten faster since this early test, but I seriously doubt it will ever come close to touch typing. The other variable is that when typing, I type faster than I think, so I’m always stopping to think about what I’m saying. But with cellwriter, I’m writing so slow, I can think about what I’m saying. Trouble is, if it’s too slow, I’m thinking about writing the characters & forgetting about what I’m saying.

Improvements

It’s amazing just how sensitive the nature of handwriting is. There’s 2 very strong components to pencil writing that is lacking with this digital pen.
1) Pencils are pressure sensitive across a gradient, not a binary on/off. You can swipe a pencil and get a line. When you lift a pencil while handwriting, it’s more a light drag across the paper than it is a full 1mm lift. Hopefully I’m explaining this right: the ipen requires a 1mm lifting or dropping of the pen to register a swipe. This is not natural, however oddly enough, when the mouse is super-slow, this problem dissipates, as well as with getting used to it.

2) Tracking. When we lift a pen and move it, it now resides to write in the new location. On the slowest mouse motion, the ‘mousing area’ is still 2″ wide x 1.5″ high. This is hardly a one-to-one (like true tabletPC’s have) with a 13.3″ diagonal screen! Second, this pen is very sensitive and you have to lift the pen a good centimeter off the surface to stop it from moving the mouse cursor (to get the mouse cursor where you want it, relative to the hand-on-paper position). This is also shown when setting down & picking up the pen.. a mouse or trackpad will leave the cursor & mouse, the pen must be set & picked up again.
One last comment, I’d prefer to have a scrollwheel where the right click button is. But some of that is solved by FF’s grab-and-drag plugin. If only that plugin was across all X/GNOME/KDE applications!

Multiple mouse config in Ubuntu

Since I’ve bought an ipen, I need different settings for the pen and trackpad. The trackpad should have all the fun little bits that it came with, 2-finger scrolling & a decent speed, while the ipen, to be useful for writing notes in PDFs needs to be soo much slower (a 3/4 ratio of pen-to-screen).  This setup will of course apply to any multiple input device setup..

  1. backup xorg.conf (in terminal: sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf-original)
  2. with the mouse plugged in, lets find which device is which:
    1. sudo cat /dev/input/pxaux   ..now touch the trackpad: see funny letters for each motion? Good. (control-c to exit)
    2. sudo gedit /etc/X11/xorg.conf, add these lines:
      Section "InputDevice"
      Identifier "Synaptics Touchpad"
      Driver "synaptics"
      Option "SendCoreEvents" "true"
      Option "Device" "/dev/psaux"
      Option "Protocol" "auto"
      Option "HorizScrollDelta" "0"
      Option "SHMConfig" "on"
      EndSection
  3. Now, config the mouse by the same method, but trying /dev/input/mouse0 .. through mouse4.
  4. Add these lines accordingly:
    Section "InputDevice"
           Identifier "Configured Mouse"
            Driver      "mouse"
            Option      "Protocol" "auto"
            Option      "Device" "/dev/input/mouse4"
            Option      "Emulate3Buttons" "no"
           #Option      "Resolution" "50"
           #Option      "Sensitivity"       "0.24"
           #Option      "ConstantDeceleration" "4"
    EndSection
  5. You’ll notice the last 3 lines are commented out.. I used the ‘constant deceleration’ to slow down my 800dpi mouse-pen. I enver played with the other 2, though they might work as well.
  6. Further, I had to add these lines as well for everything to work:
    Section "ServerFlags"
    Option "AutoAddDevices" "0"
    Option "DontZap" "off" #ctl-alt-back restart-X
    EndSection
    
    Section "ServerLayout"
            Identifier "Default Layout"
            Screen "Default Screen"
            InputDevice "Synaptics Touchpad"
    EndSection

When all is said & done, I also found gsynaptics (sudo apt-get install gsynaptics) which allowed fun things like ‘ipod-scrolling’ and corner/edge events.

Final note: I needed my pen to be slower than even xset m 0 0 could give me, though that was close.

2009-10-22 UPDATE: Instead of EVERYTHING above, I finally got this to work in HAL (which means keep the original /etc/X11/xorg.conf file clean), thanks to removing mouseemu which was always making the usb pen-mouse be reconfig’d to normal acceleration! In ubuntu 9.04, I simply created this file: /etc/hal/fdi/policy/10-x11-input.fdi:

<?xml version=”1.0″ encoding=”ISO-8859-1″?>
<deviceinfo version=”0.2″>
<device>
<match key=”info.capabilities” contains=”input.mouse”>
<match key=”info.product” string=”Finger System Inc. i-Pen Mouse FM-100BN”>
<merge key=”input.x11_options.ConstantDeceleration” type=”string”>3</merge>
</match>
</match>
</device>
</deviceinfo>
While debugging, I confirmed the settings were in lshal & /var/log/Xorg.0.log.