[Lamp-user] LAMPsig SCALE4X SVG Nov 23rd Meeting Minutes

Peter Benjamin pete at peterbenjamin.com
Tue Nov 29 17:34:53 EST 2005


Hello Fellow Volunteers,

Hope you all had a happy, fat, satisfying Thanksgiving.
Work away some of that turkey you ate by studying up
on our state of the art project.  

I've cc'ed our SCALE liason, Jeff, who might want to read
items 10, 12, 13 and 14 first. 

Our regular meeting will be Wednesday night during the
LAMPsig Club night that Jim is heading up.  It will be at
CALTek.net's office, our regular monthly meeting room.
It will start at 6 pm, and go until 8:45 pm, with room
lock up at 9 pm, unless someone else has keys to lock the
room.


MINUTES

Here are my notes for our Wednesday, November 23 meeting at
Panera Bread in Santa Monica.  In attendance were: Jim, Pete, 
David, Solomon and Ralf.  Those not there did not get a free
pie, cake, brownie or pastry from Panera as we left.  These
were not "small" but came in a 12 inch square box!  Terrific!

I've put the "work" first, followed by items in decreasing importance, or so.

WORK:

1) Solomon will do the db schema and load the SCALE3X data.

2) Pete will redo a 2x3 with text prototype.
   I've already found simpler stuff at carto.net,
   that excludes the extras that Ted told Inkscape puts in.
   I'll post it this weekend to you.

3) Ralf will set Track on top of Subversion on an UML Gentoo
   that Pete needs to prep.  I need to free an IP number by
   moving my current DNS ns2 server to another IP number.
   Shortly after that is proven to be working, I can make 
   the UML available, perhaps by the end of this coming week.

OTHER ITEMS (read some things you can do in the meantime)

4) Sites for getting yourself familiar with the technology are:
     carto.net    adobe.com/svg    www.openclipart.org/
   in particular
     http://www.carto.net/papers/svg/manipulating_svg_with_dom_ecmascript/
   has several examples very close to what we what to do.

5) Do open the SVG as a text file, and view the XML.  You will
   find that the Carto SVG examples above are easily edited by hand,
   unlike the Inkscape, so I am changing away from Inkscape for now.

6) Also, I found that SVG supports an internal DOM with ECMAScript.
   The DOM is based on generic XML structure of elements and attributes.
   The element is pointed to as an object passed as an argument to the
   script and is set up by default.  You do no coding, cool.  And the
   attributes are called out in the script function argument list as
   a text string, so it is highly customizable, and easily coded by hand.
   Double cool.  

***Much SVG DOM Script will be much easier to learn than Javascript, imo.***

   So, do try your hand at "editing" a Carto example.

7) You will need a SVG plugin.  There are a few.  And like VRML, there is
   a plugin for switching between SVG plugins, on the fly.  More on the
   URL that supplies links to the download later.  I've yet to find it.

   The purpose is to find a plug in with a "Zoom" feature we like.
   We need to learn how to control the Adobe Zoom.  Maybe right clicking
   sets the zoom center?  We need to add "instructions" to our web page.

   David explained in detail his concept of the Zoom feature.
   We agreed to work towards that concept.  The zoom is too hard to describe
   in wording, at least with my limited time I have available to write these
   minutes.

   It's not clear to me that JavaScript outside the SVG will work for us, 
   or even the ECMAScript inside the SVG for "zoom."  We might have to 
   work with plugins.  Thus, trying out each plugin might be needed.

   Perhaps someone can find an example of SVG zoom built into the SVG file?

8) GUI editor for SVG.  I'm not sure we will need one for our prototype.
   Or even for our final product.  However, it might be faster to learn
   SVG feature set by using a GUI and then viewing the XML, reverse
   engineering the SVG XML elements to copy and paste out the features
   we want.  More on this on items below.  Thus, Illustrator 9 likely
   will not be needed.

9) Loading the SVG with the schedule info is up in the air, but David's
   idea of using AJAX to a web server database is the agreed direction.
   I did mention hard coding it into the SVG file.  Dynamically adding
   it and allowing updates would be better.

   David has mentioned the existing XAJAX library, we should all look at,
   and perhaps find a working example we can adopt and modify.

10) The SCALE planning members I have observed before do not set "room"
   assignments until the week before the event.  So, we have various
   levels of "info" that the database might have or get in at one time.
   Thus, the database schema is subject to growing, and our PHP code
   that grabs out row data, I think ought to just return "everything"
   thus, the PHP code never has to change, and edits are only needed
   in the template SVG file in the form of more text strings, and perhaps
   ECMAScript to support it, or zoom features for it.

11) Likely we will need to know about how the plugin "zoom" center and
   scaling factor are available to the internal SVG ECMAScript via the
   DOM, if it is at all.  It would be nice to be able to have some 
   dynamic control over text font size when zooming.  Otherwise, we
   will have to make our best guess, and suffer some quirks in zooming.

   The zooming font size issue has many aspects.  As I have dealt with it
   for over 12 years in the aerospace CAD/CAM/CAE/CIM world I might be
   over designing it.  Thus, there is no detailed description in these
   minutes, as my time is limited.  However, here is the nut that must be 
   cracked:

    a) At unzoom setting, the speaker name and talk title must be visible
       and easily read.  Perhaps the other information might be represented
       by a line, or lines, or as zooming occurs as rectangles, until the
       text would become readable, at which time it does.

    b) The talk description can be quite long, and it's zoom representation
       might have several stages of visibility, from lines, rectangles to
       just the first line in characters, while the rest is lines/rectangles,
       until the "window" is large enough to display more lines at a readable
       font size.  Perhaps SVG plugins already do this?  That is a reasonable
       assumption, and we need to know the "rules" for each plugin.

    c) Preventing the speaker name and talk title from becoming unreasonably
       big might be something we do in ECMAScript using the DOM to control the
       font size, but we still need to know the zoom scale factor, and window
       size.  Otherwise, these two strings might "push down" the description
       below the clipping window, and we would need a scroll bar.

    d) Scroll bar issue will be pending more input based on plugin zoom behavior
       and just what our prototypes show us is doable or not.

12) Data entry - Jim found one example at adobe.com/svg/demos/chart.html
   The SVG ECMAScript code was straight forward.  We would only need to 
   add the ability to send the addition to the web server database, likely
   by merely invoking an URL with form GET data appended to the URL.

   We do need to further define the data entry aspect.  I do think we
   need to delay this design, until after we have SCALE contact, and
   we have heard how they have done it in the past.  I would not want
   to step on any toes, that is any SCALE volunteer doing similar work
   might be getting course credit for it.  I will find out as I am our
   SCALE liason.  Jeff Carlson is my contact, who is also the SCALE
   User Group Coordinator, who I am talking to about our booth space.

13) Adding database fields, like room number, link to presenter's bio,
   links to the video or audio files, or links to other pages, will have
   to wait until we have found out from our SCALE counter parts what they
   plan to do, and what we might support for them.  

14) David found that some SCALE 4X speaker bio and talk titles and descriptions
   are currently online.  The database schema I did needs to have a
   bio and description field added.  They will likely be a text blob, as one
   description was quite long (more than 255).  There is also a speaker picture
   we might need to include.

    http://socallinuxexpo.org/speakers.php
    http://socallinuxexpo.org/speakers/speakers_mandelstam.php

15) David pointed out the PHP core "DOM" is the library functions we
   want, not the older "DOM-XML".  DOM replaces DOMXML.

16) Hotel Info - Here is the URL and the room numbers show on the map.
This URL leads to the first page of three, and lists all the rooms and
their features (I have a tabbed file of this now - easy copy and paste).
There are three pages, and the only differences are the maps, so I have
put those URLs below this one.

http://www.starwoodhotels.com/westin/search/floor_capacity.html?city=&stateProvince=&country=&postalCode=&hotelLocationType=&pOI=&arrivalDate=&departureDate=&lengthOfStay=&numberOfRooms=&numberOfAdults=&amenityType1=&amenityType2=&amenityType3=&nState1=&nState2=&nCity1=&nCity2=&requestedChainCode=&requestedAffiliationCode=&propertyID=1005&returnURL=&promotionCode=&corporateAccountNumber=&rcdi=&iATANumber=&groupBlockID=&ratePlanName=&starwoodPreferredGuest=&fromSearch=&floorVal=&H=250&W=491


MAPS with Room Names and divider letters.

LOBBY LEVEL:
http://www.starwoodhotels.com/Media/Graphics/Brands/Westin/Properties/1005/images/WI_1005_flr_1.gif

SECOND FLOOR:
http://www.starwoodhotels.com/Media/Graphics/Brands/Westin/Properties/1005/images/WI_1005_flr_2.gif

THIRD FLOOR:
http://www.starwoodhotels.com/Media/Graphics/Brands/Westin/Properties/1005/images/WI_1005_flr_3.gif


ROOM NAMES:

Concourse Ballroom 	
Concourse Ballroom A or B 	
Concourse Ballroom Foyer 	
Dulles 	
Grand Ballroom 	
Grand Ballroom A 	
Grand Ballroom A & B 	
Grand Ballroom B & C 	
Grand Ballroom B or C 	
Grand Ballroom C & D 	
Grand Ballroom D 	
Grand Ballroom Foyer 	
Heathrow 	
Kennedy 	
La Guardia 	
Lindebergh Ballroom 	
Lindebergh Ballroom A or B 	
Logan 	
Midway 	
National 	
O'Hare 	
Orly 	
Sea-Tac 	
Stapleton 	
Templehoff 	
The Theater 	
302 	
306 	
308 	
310 	
315/Dorval 	
320/Hartsfield 	
321 Gatwick 	
328/Kai-Tak 	
329/Hopkins 	
336/McCarran 	
337/Lambert 	
340 	
344/DaVinci 	
380 	
381 	
384 	
385 	


I hope you will join me in learning this new, exciting SVG
technology.

Sincerely,

Pete

Pete







More information about the Lamp-user mailing list