Andrew Que Sites list Photos
Projects Contact
Main
   For some reason I was on a cloth kick today.  I watched and read a bunch on how thread is woven into cloth.  I was mainly curious the techniques used today vs those of the early industrial revolution.  After getting my fill of history I cut a small piece of rag (one of my old shirts) and examined it under my microscope (pictured).
   I have decided to switch the entire site to HTML 5 over XHTML 1.1.  The reason is simple: XHTML 1.1 is old, HTML 5 is not.  With cleanup and porting mostly complete, it was time to focus on the comment section.  I finished that this evening, including porting the comments from the old table to new tables, and a JQuery interface for adding new comments.  I am pleased with the results.
   JQuery has thought of everything. I was using the text function to fill in an area with text. But then I needed the text formatted as html. No problem, they have an html function. But then I needed to replace the entire tag with the html. No problem, they have a replaceWith function. Makes life easy.
   There are only a couple of things left before I can begin using the new system.  Right now searches, categories and series do not work on the viewing side.  I also want to do some more testing with jumping to articles, and maybe consider adding an AJAX interface for browsing articles.
  Pictured are several empty and clean wine bottles.  These bottles of wine have come from various local wineries, and all since August.  Wine consumption is slow, usually taking place at dinner parties.  However I have a collection again.  I have some colored LEDs I plan to place into these bottles, and they make cute decorative lighting when complete.
Bandelier National Monument

Bandelier National Monument

   With the contact page now complete and running, I have begun cleaning up the core of DrQue.net.  The site is a mess of old, older, and even older still.  The CSS classes that drives the main pages are poorly named and many are no longer used for most pages.  DrQue.net has parts of the site that date back to 2002 when the domain first was first registered.  While I have kept all the sites ever hosted, I don't need many of the files for things that have long since changed.  Housekeeping begins.
   Rosa works on decorating the baby blocks.  We bought several kinds of stickers and some printed patterns.  She will assign these to to the blocks, and glue them down.  Afterward I will put several coats of shellac that should keep them from moving and finish the wood.
Iggzilla Topple!

Iggzilla Topple!

   The one main area that needs to be address before I can switch to the new news feed are comments.  The current system for adding comments is an awful mess of strange Javascript and PHP that somehow still functions in modern browsers.  The comment system uses a Captcha to keep sketchy capitalists away.  The Captcha I use, freeCap, was last updated in 2005 but it still works.  I want to update the comment system so it can use a Captcha, but not care what the Captcha is.  This is a job for abstract classes.  However, the comment system for the news articles requires a table change as well.  So I decided to start with something easier.  The contact page of DrQue.net also uses a Captcha, and is far simpler.  Much like the comment system the contact page is a scripting mess.
   My first order of business was to create a better looking page, and for that I wanted some modern CSS.  Paging around the web to see how others have done CSS, I decided to use some CSS 3 attributes.  Do I care if they won't work in order browsers?  Not really.  In addition, I found that inputs have a field called placeholder in HTML 5.  This looks really nice and I wanted to use it.  Until now, all the pages on DrQue.net have been XHTML 1.1 strict.  But I switched the contract page to HTML 5 to see if I liked it.  And I do.
   Rewriting the contract page script was fairly easy.  Most of the work was getting things to look and feel the way I wanted them.
   Pictured is Iggzilla toppling a tower of blocks.  He seems to enjoy trying to grab the blocks and manipulate them.  Generally there are three things he has figured out how to do.  Put the block into mouth, throw block to right or left, and bang block on table.  I'm not sure he means to throw the blocks to the side.  I think after the block moves off the table he losses his grip and the block falls to the floor.  The other two motions are clearly intentional.  Interesting to see his brain working to control his hands and interpret his world.
A Real Tommy Gun

A Real Tommy Gun

   Completed the series editor today.  The only real new part of the editor is the the system for rearranging the article order.  For this I used a JQuery plugin called tablednd.  This allows the date and article titles for a series to be displayed in a table.  The user can drag the table around to reorder the articles with ease.  So the editor is now fully functional.
   Time to work on the rest of the site.
Bede BD-5

Bede BD-5

   Good deal of work done on the article editor.  Category editing and assigning is fully functional.  I had been doing all the PHP, CSS, HTML and Javascript in one file, but the file had grown so large it was no longer beneficial to have this setup.  So I broke the system into it's parts before starting on the last part of the editor: series.  While categories allow articles to be assigned to reoccuring topics, series allow a set of articles to be grouped together.  An easy example is a multi-part article.  I've written a few of these where the article is split over several days such the write up about my road trip.  Series will actually use the same tables as categories.  The only difference is that articles in a series are ordered, and this order is variable.
   Pictured is the Bede DB-5, the world's smallest flying jet capable of carrying a passenger.  It could fly over 300 mph.
Uncut oak

Uncut oak

   I don't like to "watch T.V." and if there is a show I want to see I try and find something to do when I view it.  Having all the rough sanding completed it was time for the finishing hand sanding on all my blocks.  I spend maybe 10 minutes a pass on each block, and use three grits of sand paper.  This creates my "something to do" and allowed me to watch a many episodes of a science show.  The show is slow paced, full of needless steps, and often not terribly scientific.  But it's interesting and I it passes the time during sanding.
Sander Surgery

Sander Surgery

   Started a project for Iggy.  He needs some blocks.  So I found a nice 2x2" piece of oak and cut it into 27 individual 2x2x2" blocks.  To cut each block the same, I first used the miter saw and clamped a piece of wood as a stop so each block would be the same size.  The problem was that after the cut, the saw generally grabbed the block and threw it across the room.  In hind site it should have been an obvious consequence of my setup.  You do not produce a setup were wood is wedged against the saw blade without risking flying wood.  So I switched to the table saw.  I used the fence with a spacer clamped on it.  The spacer sets up the miter gauge such that the cut is lined up to the thickness desired.  But the spacer no longer touches the wood once the wood touches the blade.  This keep the cut piece of wood from getting pinched between the fence and the blade, and prevents the wood from being thrown after the cut is complete. 
   After cutting all the blocks, it was time for sanding.  Lots and lots of sanding.  Before cutting I sanded the overall board and rounded the corners.  Now I needed to sand and round the end-grain side of the wood.  About an hour into sanding my sander suddenly just stopped.  After opening it up I found the motor was fairly ceased.  A little penetrating oil and it was back in action.  It was just strange how quickly it went from working to not.  But then, I have a lot of hours on this little sander.  So if it needs a bit of oil, it has earned that oil.
Que

Que

   An news article can belong to one or more categories.  To make this work, I need a method to create/remove/edit categories.  Then I need a list of categories to choose from for the article being edited.  The natural option for this is to use a select box with the multiple attribute set.  I decided to send this information back to the control script to simply coma seperate them.  The list contain the IDs of the categories.  So the coma separated list is just a list of numbers.  On the database side I added a function to set the categories for a given article.  It starts by deleting any links that currently exist, followed by looping through an array of categories to assign and creating those rows.  Not as efficient as it could be, but simple.