Thoughts From Eric Archive

S5 1.2a1

Published 19 years, 7 months past

It’s back: S5 1.2 alpha 1 is now available (177 KB Zip archive), and you can play with either the OSF or XOXO versions of the latest development version if you just want to preview it online.  In addition, I’ve set up a contact address specifically for S5 questions and feedback.  You can find a link to this new address on the main S5 page.

New to S5 1.2:

  • The progress indicator (e.g., 6/10) is now a permalink to the currently-displayed slide.  This will require an update to any S5 1.1-era themes, but it’s a minimal thing.  Granted, the current alpha doesn’t have updated styles to handle the presence of a link.  I’ll get to it.

  • Bug fixes intended to make it more Konqueror-friendly.  I do not know if Konqueror will run S5 1.2.  I do not have access to Konqueror.  The fixes I included were sent to me by helpful S5 users, and may or may not have resolved all problems.  If there are still bugs in S5 when displayed in Konqueror, you are invited to submit bug fixes in the comments, or via the contact address I mentioned before.  Bug reports should be done in the comments, where other Konqueror users can see them, and not via the contact address.

  • Vastly improved integration with Opera.  As chronicled in “Opera and S5 1.1“, S5 was originally intended to be a cross-browser emulation of OperaShow.  As time went on and features were added, the two diverged.  Thanks to efforts by Hallvord Steen, Opera should now be shut out of a lot less of S5 than it was.  In fact, it may well be feature-complete as compared to S5 1.1, and will get most of S5 1.2’s features.  With one possible exception…

  • A “notes” window capability.  The notes view is largely the work of Shaun Inman, who wrote me last week to say, “Hey, I did this.  Interested?”  Was I ever!  I’d been meaning to do it ever since I saw the notes view in Keynote, but Shaun got there first, clever wolf that he is.

    To see this in action, in either the OSF or XOXO versions, hit “n”, or call up the controls and click on the three-line icon on the left.  A new “notes” window will open, looking very much like the “notes” view in Keynote.  This window displays whatever notes the author has created for the current and next slides; these are done by placing content in an element with a class of notes, pretty much exactly like the handout feature from earlier versions of S5.  The notes window also includes timers showing the time elapsed since the presentation was opened and the time elapsed since the current slide was loaded.  There’s also a pauseable countdown timer for those who prefer to keep track of time that way.  (I added the countdown timer.  Yay me!)

    The general idea is that you load up your presentation, open the notes window, and put the presentation up on the projector while keep the notes window on your presentation machine.  (Which is of course only possible if you turn off video mirroring.)  As you move through the slide show, you can see notes to yourself and keep track of time so you don’t run over.  Keen.  I don’t know how much I personally will use the notes, but I’m all over the timers like they were a stack of pancakes and I were Mrs. Butterworth.

    At the moment, the JavaScript that opens the notes window is minimal, so the notes window is fairly chromeless and not resizeable in IE/Win.  It’s also a bit rough in terms of some of its layout, as befits the alpha status.  I’m also considering adding a keyboard command for “fullscreen”, which would maximize all open S5 windows to fill the screen they’re currently occupying, and possibly also strip away the browser chrome.  I did a few experiments along those lines, but wasn’t satisfied with the results, so it didn’t get into this release.

    On a related note, I’m not sure that notes can be made to use with Opera so long as S5 relies on OperaShow, because OperaShow by its very nature makes all browser windows fullscreen.  If there’s a way to get OperaShow to put one window on one monitor, and a second on a second monitor, then that would be the answer.  If not, I’m not sure what to do short of abandoning OperaShow usage entirely, which seems strange and wrong.  But we’ll see.  If nothing else, we can verify that everything in S5 besides the notes feature works in Opera, and push those changes into an S5 1.1.1 release.

One known problem is that when Firefox displays an S5 show using the text/xml or text/xhtml+xml MIME types, which is necessary for slide shows that incorporate things like MathML and SVG, things break because innerHTML ceases to be supported.  I have a proposed fix submitted by an S5 user, but did not get it into 1.2a1.  I plan to correct this before reaching the first beta release.

A number of people have asked for a merging of effects libraries like Script.aculo.us and FACE, and there have even been scattered implementations of same.  It’s definitely tempting.  I’m not at all confident that this will happen for 1.2, though, mostly because I don’t understand enough programming to make the connections.  I’m also not sure how many of these I could pile into the code before the whole thing came crashing down.  I have hopes that we’ll be able to work out a “best practices” way to add such capabilities to any S5 presentation file, and let each author add them or not as they see fit.

So there you go.  Have at it!


Japanese Color Blending

Published 19 years, 7 months past

What is it about the Japanese that they loooove to blend colors?

Lest you think I’m indulging in some sort of bizarre racial stereotyping, I submit for your consideration the Technorati search results for blogs and other sites pointing to my Color Blender.  The Blender been moderately popular ever since its release, but so far as I can tell, the Asian market is just eating it up.  If I see a new Japanese site appear in my egorati feed, the odds are 49 out of 50 that it’ll be linking to the Blender.

So what’s the deal there?  Anyone have insights, specuation, or even translations that might shed some light on this little enigma?

(Note: it turns out that these are Chinese blogs using Japanese fonts, and not Japanese sites as I originally thought.  I’m leaving the original entry intact rather than update it.  Still, this means that the essence of the original question remains, even if the geography was off by a bit.)


Catching Up

Published 19 years, 7 months past

Yes, two posts just showed up that are dated in the past week.  Just correcting a little holiday glitch—one of several, as it happens.  Anyway, move along, there’s nothing to see here!  Well, besides those two old-yet-new posts.  And this one.

I’m sorry, let me start over.

Look for posts in the next few days regarding Japanese color blending, my 2006 speaking schedule (as it currently stands, anyway), and the alpha release of a new version of S5.  Now with The Wolf!  (…cue salivating sounds from Mike Davidson.)


DropSend

Published 19 years, 7 months past

In my work with Happy Cog Studios, which is a strategic partner with Complex Spiral Consulting, we’ve had occasion to send each other really big files, like Photoshop design comps and so forth.  As just about everyone knows, this is hard to do via e-mail, since SMTP servers usually cap attachment sizes at 10MB.  Even if a file size is below that limit, it’s kind of a pain to send large attachments.  Your e-mail client sits there slowly uploading the attachment, and then on the other end, someone else’s e-mail client gets to sit there slowly downloading it.

This is why we started uploading our files to our personal web sites via FTP, and sending around the URLs in email.  That’s great for macho geeks like us, even if it is a bit tedious, but not so great for most people.

You know what would be great for most people?  DropSend.  You can upload files via your browser, or grab a desktop application (for both Mac OS X and Windows!) to handle that part.  Then you just send a link to the file to people who need it, and you’re done.  There’s a basic free account which ought to satisfy any occasional user, and some fairly cheap paid account levels to add more storage and sending capabilities.  If you’re in search of a better way to send really large files, it’s worth a look.

Nice site design, too.

Disclaimer: the creator of DropSend, Ryan Carson, is also the founder of Carson Workshops, for whom I’ve done a couple of seminars.  For that matter, he’s a co-founder of BD4D.


Bread, Soup, and Love

Published 19 years, 7 months past

A couple of weeks before Christmas, Kat and I held our annual Bread and Soup Party.  We started it the year we moved into our house, and it’s still going strong.  We’re to the point now of luring attendees from other states: in the past, we’ve had people from New York, Illinois, and Oregon fly in to spend a long weekend and be at the party.  Had you been there this year, you’d have gotten to meet Molly, as well as have a chance to video chat with Andy.  We also got blogged here and there by attendees, all of whom seemed to have a great time.  Our guess is that in the course of the party, close to 90 people passed through our doors.  This is a good turnout, though well below our high of 150 from last year.

Why am I bringing this up?  Because several people, upon hearing about this party from the bloggers and other guests, have expressed interest in holding their own version of the party.  To which I say: hey, you slackers, come up with your own damn party idea!

I’m kidding.  I kid!  You should absolutely feel free to copy the idea, or come up with your own variant.  Here’s the not-quite-a-recipe we follow for this event.

  • We invite just about everyone we know, regardless of how close or far away they live.  In fact, we put an invitation in the mailbox of every house on our block, and it’s a semi-lengthy block, so in many cases we’re inviting people we don’t know.  That’s okay.  The people we know are always welcome to bring people they know, but we don’t.
  • The party has a start time, but no end time.  The format is open house: people come when they can, and leave when they like.  We start at 3:00pm on a weekend day, and usually the last guests are out the door by 9:00pm.  The first year it went a bit later, and people still speak in hushed and shuddering tones of the “Truth or Dare Jenga” game that was played that night.
  • The time of year is important.  Bread and soup in the middle of summer doesn’t work nearly as well as it does in winter.  Being in the Northern Hemisphere, which puts the holidays in winter, is a bonus, but not crucial.
  • We state right on the invitation, and as many times as we can think to do so, that guests should bring nothing but themselves and some good cheer.  No gifts, no bottle of wine, no food.  We haven’t yet started a policy of turning away gift-bearers, but we’re considering it.
  • Children are welcome.  They were even before we had our own, but this is key if you want to draw families.  Which we do.
  • We get help from our friends.  We have cooks beforehand, and a cleanup crew after.  This is essential, because otherwise we’d never be able to manage it.
  • We use paper plates—nice heavy laminated paper, but paper nonetheless—and styrofoam cups with plastic spoons for the soups.  This makes cleanup a whole lot easier, plus it means we don’t have to buy place settings for 128, or worry about dropped bowls shattering.  We’re seriously thinking about going to small styrofoam bowls next year, but the principles basically the same.

Okay, so those are the parameters.  The content, though, is what brings ’em in:  we provide five pots of soup and from five to seven loaves of bread, each one cooked entirely from scratch.  Here’s this year’s lineup.

  • Soups:
  • Breads:
    • Cornbread
    • Challah
    • Eggnog bread
    • Oatmeal bread
    • Gingerbread (the real stuff, not the thin house-building kind)

To make things extra-tasty, we try to coordinate soups and breads.  For example, this year we made gingerbread because it seemed like a good match for the pumpkin soup.  (And wow, was it ever.)  Similarly, the cornbread was an excellent partner to the black bean soup.

Remember: these are all cooked from scratch.  The closest we’ve gotten to pre-made soup was the year we had clam chowder, when we bought the clams in cans.  The  breads are all done from first principles, even the cornbread, which is made with real cornmeal and not a bunch of boxes of Jiffy corn mix.  Nothing wrong with Jiffy, which I love, but it just doesn’t yield the kind of hearty, rustic cornbread we were after.

This sounds like a lot of work, and it is, but that’s why I made the point about having friends help.  In the past few years, we’ve set things up so that each pot of soup has its own sous chef.  (This year, the soups were actually chefs’ choice, so that made them rather less sous-y, I admit.)  Cooking starts around 10:00am, with all of us gathered in the kitchen chatting, laughing, tasting, and adjusting as we cook.  It’s noisy and cozy and smells amazing, and honestly is more fun than the party itself, at least for us.  It’s a shame that the cooking experience doesn’t scale up to a full party, or else we’d just do that.

In addition to the soups and breads, we also set up a cheese board with several different varities, crackers, summer sausages, and grape clusters.  For drinks, we provide eggnog (both spiked and unspiked) and hot mulled apple cider; and for dessert, a selection of petit fours and candies.  But those are reflections of our profound yuppiehood, and not really integral to the core party experience.

Once everyone’s left besides the cleanup crew, we start washing and storing any leftovers (this year, there were hardly any) and doing a post-mortem of which offerings were popular, and why.  This stage is a lot quieter and more reflective than the cooking part, but it’s no less enjoyable.

I’ll throw open the comments to observations from guests from this and previous years, and questions from anyone who’s curious to know more. 


Tables to Bar Graphs

Published 19 years, 7 months past

In “Bar Graphs With Style“, I took a set of nested lists and some divs and turned them into a vertical bar graph using CSS.  Jan Brašna pointed out that the actual information I was presenting would probably be better represented as a table instead of nested lists.  I don’t think there’s anything wrong with using the lists, but I do agree with him that a table might be a better base represention of the data.  Maybe you agree.  If so, then here you go: CSS Vertical Bar Graphs using a table as the markup basis.

The demo works fine in Safari, and in Firefox I got it to work by explicitly setting the table element to display: block (when I left it as display: table, the bars were badly misplaced).  In IE/Win, everything’s fine except for the actual placement of the bars; they’re fine as a group but way out of place.  I think the IE/Win problem is a simple refusal to give a table element dimensions when all of its descendants have been positioned, no matter what display value it’s given.  Perhaps some intrepid soul can figure out a way to defeat this. [Update: some intrepid soul did, and the demo has been updated; it now works in IE/Win as well as most other browsers.]

(I considered the idea of positioning all the bars with top instead of bottom, thus sidestepping the table-sizing problem, but that would mean a different way to place the ‘ticks’ and in the end it was different enough from what I’d done that I just couldn’t be bothered.  Feel free to run with the idea, though, or come up with a better one.)

I must admit that when I first assembled this table-based chart demo, it was with some trepidation.  From a CSS point of view, of course, it doesn’t matter what elements you position, nor how: a td is no different than a div or any other element.  Historical browser behavior, though, has been to put table markup into its own special category and treat it as being extra-special—as witness IE/Win’s handling of the original demo.  I was honestly afraid that, in overriding the display values for table elements (by positioning them), I’d crash a browser.  So far, no crashes, but proceed at your own risk!


Bar Graphs With Style

Published 19 years, 7 months past

A lot of the time, when I’m sharing a technique or effect I’ve devised, I’ll say something like “I doubt I’m the first to think of this…” or “it may not be original, but it’s original to me…”.  This might strike some as an annoying quirk, some sort of pseudo-modesty that I should either embrace fully or just drop already.

However, I do it because I know it’s true.  Even some of the most radical experiments I’ve published, like those on css/edge, were prefigured or anticipated by others.  I didn’t steal anyone’s ideas, of course.  Every one of those demos was an original creation born of my knowledge and thinking.  They just weren’t necessarily the very first instance of those techniques ever published anywhere.  Other ideas, like Universal Child Replacement, were devised before I hit upon them but were never documented.

I bring this up because the door swings both ways: from time to time, I see someone else publish a technique or idea that I’d had but never documented.  A recent case in point was the appearance of “CSS for Bar Graphs” at Apples to Oranges, which showed a vertical bar graph created out of CSS and a list.  I’d done something very, very similar almost three months before the AtO article’s publication date while creating an invoice-tracking system for myself, and never gotten around to publishing an example.

This almost certainly means that they and I were creating basically the same thing at the same time.  Who got the idea first?  Who cares?  It’s a nifty idea no matter who thought it up.  Plus it’s a near-certainty that somebody else did it long before three months ago, and never got around to documenting it.

I often wonder how many really cool techniques and ideas are lost simply because the inventors don’t have the time or energy to publish them.

Since my approach varies a bit from AtO’s, I’ve put up a css/edge demonstration for people to poke.  The major difference is, I think, my use of empty divs to create the horizontal strata instead of a background image.  This let me have strata that were scaled to the figures being output.  For example, if the strata are increments of $10,000 and the highest bar is $55,055, then I can write out enough “bar divs” to make the top of the chart $60,000.  If the tallest bar only goes to $38,522, then I can stop at $40,000.

This also meant calculating and writing out the bars’ heights as inline styles.  What you see in the markup of my demo is the end result of all that back-end calculation.  There are doubtless better ways to go about creating the strata and setting the bar heights, most obviously using DOM scripting to write in said bar divs instead of dirtying up the XHTML with them.  The same would be true for the inline heights of the bars themselves, which could be dropped in favor of dynamic setting.  Heck, you could even make it so the chart could be zoomed in or out.

Someone else can do the necessary scripting if they like; I’m content to get the example out there, however late to the party I may be.  The more such examples there are, the better.

Followup: Tables to Bar Graphs, in which the same chart is created out of a table instead of nested lists.


Full Freight

Published 19 years, 7 months past

I recently wrote that the font Freight Micro had broken Unicode references.  It turns out that I was basing my comments on a beta version of the font without realizing it.  The designer of the Freight family was good enough to provide me with a copy of the final version of the font, which I tested, and I’m delighted to report that it does not suffer from the same problem.

So my deepest apologies for any misinformation I may have spread. If you see anyone referencing my previous post on this topic, please point them to this one.  Thank you.

  • Full Freight was published on .
  • It was assigned to the Mac category.
  • There have been no replies.

Browse the Archive

Earlier Entries

Later Entries