aepdev.org

web application development

Web development too?

InfoNow Corp.

Yes. Since 1998 Tony has been an active web developer. After joining InfoNow in 1998, implementing location based web apps for most of the countries major banks and technology companies.

These locator apps brought practical usefulness to what was otherwise largely static information or product catalogs. The InfoNow locator was one of the most useful applications on the interweb for many years. Highly targeted search with marketing capabilities still adding value fifteen years later.

Lead generation and customer mining.

The natural extension of capturing an individual's token of interest, gathering sufficient contact information and routing that interest to a branch or partner was an epiphany for the engineering team at InfoNow. Shortly after providing Compaq a partner locator, the referral logic was coupled with a contact form to push prospect information to the branch or partner best suited to the customer's interest.

updated by Tony September 3, 2002
Tags: about, webdev, inow, leadgen

Sweep MySQL Under the Rug, Try Again

not so zen these days

When you don't just want to install over

Sure new machines are a challenge sometimes (if you want to do more than open the box and browse the web). And often times bleeding edge hardware and software find themselves incompatible because they haven't been tuned to play together. So you want to throw away the software, try again (because throwing away the hardware would be much more expensive). OS X doesn't provide a top level unistall tool, and in many cases tossing the application in the trash will suffice - not so server software like mysql.

To uninstall MySQL and completely remove it (including all databases) from your Mac do the following:

  • Use mysqldump to backup your databases to text files!
  • Stop the database server
  • sudo rm /usr/local/mysql
  • sudo rm -rf /usr/local/mysql*
  • sudo rm -rf /Library/StartupItems/MySQLCOM
  • sudo rm -rf /Library/PreferencePanes/My*
  • edit /etc/hostconfig and remove the line MYSQLCOM=-YES-
  • rm -rf ~/Library/PreferencePanes/My*
  • sudo rm -rf /Library/Receipts/mysql*
  • sudo rm -rf /Library/Receipts/MySQL*
  • sudo rm -rf /private/var/db/receipts/mysql*

The last three lines are critical if your back peddaling to an older version (likely), because you can't install a preceding version of MySQL otherwise - tip to Silver for that final private reference apparently new in OS X 10.6. All prior steps courtesy akrabat.

updated by Tony April 25, 2010
Tags: webdev,monitor banging

Blah, blah, blah...

This is not me

Estimated value of the following == two cents

Have been thinking about the synergies between BI and web development. So many (even smallish companies) have long been utilizing intranets for information delivery. Coupled with the biggest players in BI developing rich web delivery for dynamic graphical and tabular data - the history of these technology implementations has long been one of mutual dependence... Why? So much of today's customer inputs are accumulated from web applications. The purpose of interaction, who is interacting with an organization's website, was the experience successful? Understanding these traits is key to customer facing businesses.

Many times, questionable data can be linked back to poor behavior of the source web application. The mechanics of interacting with a corp site on the web define the sort of data the host makes available...

updated by Tony April 17, 2010
Tags: bi, webdev

The Thirty Minute Task

the clock is ticking

There's lot's of thought around efficiency in coding. The actual writing of code, as well as its structure and content.

"extreme" programming, pair programming, lean, agile, "scrum" for efficency and close control of developers... C, java, ruby. Python, struts, rails - these attempt to force structure and frame content by limiting syntax, promoting "convention", rudimentary functionality is generally provided for along an mvc line; sill you write the rest to serve whatever business need.

Enter the Task

All of these particular methodologies and programming languages have more similarities than differences when viewed from orbit. They are all shiny marbles that may be shot in any direction. So how to take the shot? We build diagrams, define individual actions and state transitions, map how things are to be hooked together. Lot's of stuff to do. So we break the project down into tasks and start writing.

Lately, friends have been talking about limiting individual tasks to 30 minutes. Only take on what can be completed in 30 minutes. Seems a bit idealistic to put everything we're ever going to build into a string of sitcoms with commercials.

Ahh; the TV metaphor - perfect. How about "drama" tasks (60 minutes), sitcoms (30), news bulletins (15), commercial break (3) and for the rare headphone on code cranking session, a movie of the week (120 minutes)? By definition, movies of the week would be rare for the team...

I'm an adherent to the 20 minute task, but most problems require three or four of 'em to resolve. Will think on this some more and get back...

updated by Tony April 3, 2010
Tags: development, questions, comments

Helpful apache/linux environment set-up snip

Thanks to MSU for the following:

...In this case, the file "file.name" must be world-readable, and both the login area /home/username and its /home/username/www subdirectory must be at least world-executable (i.e., world-read+execute will work, too).  To check permissions if a file is not being displayed by a web browser, use ssh (preferably) or telnet to log into www.pa.msu.edu, and do the following:

  • check home directory permissions:
    ls -ld .
    drwxr-xr-x  68 username users      14336 Dec 18 17:43 .
           ^^^

    if this is not "r-x" or "--x", issue the command "chmod o+x ." to fix the permissions.
     
  • check www subdirectory permissions:
    ls -ld www
    drwxr-xr-x   2 username users        512 Oct  1  1998 www
           ^^^
    if this is not "r-x" or "--x", issue the command "chmod o+x www" to fix the permissions.
     
  • check file permissions:
    ls -l www/file.name
    -rw-r--r--   1 username users        295 Oct 31  1999 www/file.name
           ^^^
    if this is not "r-x" or "r--", issue the command "chmod o+r www/file.name" to fix the permissions. (You may also "cd www" to change your current directory level to the www subdirectory, and then the commands would refer to "file.name" instead of "www/file.name" in this example.)
     

If you have a lot of files in your www subdirectory which need to be set "world-readable," log in and issue the commands:
cd www
chmod -R o+r .
and all files in your www directory and sub-directories below it will have the "world-readable" permission set. For each sub-directory (if any), issue the command:
chmod o+x  sub-directory-name
to allow access to files in it. If you have a lot of sub-directories or a tree of nested sub-directories, there is a command which automates this process:
find . -type d -exec chmod o+x {} \; 
(type this exactly as in the example; note that a backslash is paired with the semicolon, not a forward slash).
 

If you need assistance, send E-mail to helpdesk@pa.msu.edu with a request to get help in making sure your web-accessible files really are still web-accessible.

Squeat tells you where to eat...

Squeat tells you where to eat

What is that?

Something for the fun of it. Honestly; everything under the squeat umbrella is the work of others. Being allowed to tweak Squeat apps is a fantastic way of staying current on open source technologies (squeat is built on rails, runs on linux and reads and writes with MySQL. It's controlled by git, published with Capistrano, occasionally tested with rake.

Squeat itself also provides a bit of crossover between past occupations and can hopefully facilitate spreading word about good places to eat.

updated by Tony November 20, 2009
Tags: about, webdev, squeat inc., apps