Categories
Technology Writing

Notes from the book part two

Summary:   Wherein author picks up both stick and carrot, paying particular attention to the attached metadata: Me relate stick. Me relate carrot. Me class hitting. Stick class hit. Carrot class eat. Me relate Microsoft. Translation: I am hitting the stick with Microsoft, while eating a carrot.

  • Open source developers, providers of free or inexpensive shareware applications, those working on open standards and specifications, or providing documentation, tutorials, and help for all of the above: you almost make me believe there is a land over the rainbow, and that it has fairies and unicorns and we never have to wear shoes. I don’t thank you, as often enough, and as much as you deserve.
  • Speaking of which: whoever came up with the original idea for CSS, you deserve chocolates
  • Everyone is mad at Apple for iPhone, but I don’t care: Safari 3 is a wonderful browser. Color management, far out. And Opera? Thanks for standing up for standards. Firefox, you’re cool, too, but you need to commit to implementing one spec before you start on others. Oh, and it would be really nice if you didn’t crash so much. No, really that would be cool.
  • The WhatWG and (X)HTML5 efforts are, in my opinion, not the best use of resources. We’ve spent years separating presentation values from page layout, only to turn around and make the same mistake with semantics. Accessibility is in; accessibility is outMachine versus human semanticsIndent versus blockquote. Hey! Poem markupSVG isn’t ‘semantically rich’ . When semantics have to be hard coded into the syntax, satisfaction will never be guaranteed. Open models, not new specs. When will they ever learn? When will they e-v-e-r learn.
  • Regarding microformats: Using “rel”, “class”, and “profile”, as the only available means in which to add semantics to markup is the same as using LOLCats to re-define the Bible: it’s pidgin markup. “Me class sitting. Me relate chair. Chair relate desk. Me class watching. Me relate windows. Window relate Woman. Woman class running. Woman relate street. Woman class feeling. Feeling relate weather. Weather class cool. Weather class fall. Me class wistful. Me class wishing. Me relate woman.”–this is my sad attempt to describe my sitting in a chair at my desk, looking out through my open window at a woman jogging along in the wonderfully cool fall weather, wishing I was her instead me being here at the computer. At some point in time, simplicity breaks down and you want a richer method in which to express your meaning.
  • Chew on this: pictures as data, as well as visual, entities.
  • Canvas is cool, but SVG is better. It’s not just because SVG elements become part of the Document Object Model (DOM) and are easily scriptable. It’s because we can find SVG similar to what we want, copy it, manipulate it, and we don’t have to know any scripting. I wanted images of musical notes and searched on “music notes svg”, which led me to this Wikipedia page and this (as well as this) public domain SVG. I copied the SVG file and deleted the SVG creating the bars–no bitmap tool magic needed to pull the notes separate from the bars. I split the notes into two separate images by coping and pasting the two different elements. I copied the SVG for both into this post, and scaled them into tiny little representations of themselves. Though the browser had to reach to scale them so small, we’re not left with a tiny little bitmap blobsI did think about using the following image, copied from this resource. Oh look, the original SVG contains metadata defined using RDF/XML. Isn’t it marvelous when you can merge rich, well defined XML vocabularies together? Just like that?
  • Silverlight: Why? There’s nothing in Silverlight 1.0 that doesn’t exist as an open standard and can’t be supported for IE applications–if Microsoft would just support them. Silverlight as a 2D graphics system? Both SVG and Canvas are 2D graphics systems. Microsoft supports form controls like buttons? Hey! Guess what we’ve had in HTML for years? Silverlight 1.1 integrates web browser and ASP.NET functionality, which means you can use your Microsoft Visual Studio and Microsoft Web Expression applications to create Rich Internet Applications? Fantastic! It still doesn’t change the fact that Microsoft pushed its browser on the same developers it’s trying to suck into the Silverlight world, and then abandoned it, and us, for five years; effectively holding up advances in internet development for half a decade.
  • Adobe Flex/AIR: Why? It’s true that Flash has done much for us over the years, and we’re grateful, but we’re ready to move into a new era of open standard applications and, frankly, Adobe, you’re rather hit and miss when it come to ‘open’ and ‘standard’. Take your SVG plug-in. It’s cool and we thank you for providing it so that IE users could see what they’re missing using a half-assed browser. Now you’re going to pull the plug-in and your support for it. Why not open source it, and let the open source community decide if it wants to continue to support it? Is it because, as has been noted elsewhere, you want us to consider converting [our] SVG application to an Adobe Flex® application? Golly, I just love these opportunities to get sucked into another bloated, proprietary application environment. It makes me feel so good when you finally, inevitably, stop.
Categories
Programming Languages SVG

Color sampling and SVG gradients

More fun with SVG.

I’m rather surprised there isn’t more general ‘design’ work using SVG. True, you really should have your pages as XHTML and not many people are ready to jump on that bandwagon. Still, once you’ve bit the bullet, you can have a lot of fun with your pages and incorporating SVG.

My newest experiment is actually combining PHP image functions with dynamically generated CSS entries, which also control the random photo header. All the SVG elements are dynamically created based on colors sampled in whatever is the current header image. I used the photographer’s ‘rule of thirds’ to pick four outer points and then sampled the middle. I use the sampled colors to generate CSS values used to style 4 small circles in the top of my sidebar and rounded-corner gradient-filled ‘caps’ to my individual comment entries.

I had to make some tweaks to make the gradient comments work. First, the SVG element had to have the display setting set to ‘block’ in CSS; otherwise, the browsers generated space following the object. I’m assuming that the SVG element is treated like the IMG element is in strict XHTML mode: treated as an inline element, and given a ‘text descender’ space. Second, just as with images, fixed widths work best for gradients, and the viewport for each SVG element has to be fixed to work with Safari 3.

The gradients don’t work with Firefox 2.x if you access the page using a page fragment, such as clicking on a specific comment. This is a bug that has been fixed in Firefox 3.x. It does work with the latest Opera and Safari 3. The page degrades nicely for non-SVG browsers.

I’m not sure if I’ll keep the SVG effects, or even take it further with creating entire page color schemes based on color sampling of the image. I may look at embedding additional data directly in the images to control both the CSS and the SVG.

I do want to implement ‘caching’ for the ‘blog pulse’ I created earlier. The best time to cache the pulse would be each time a new comment is saved, probably to a database table I’ll create for other uses. The color sampling, though, may not need caching. The gradient effect can be a little slow, but most of the ‘slowness’ is from the fact that the header image is quite large. Then there’s the random selector for the image–I imagine this can be improved through the use of caching.

Frankly, I don’t load my sidebar with dozens of widgets, hook into that abysmal google syndication service, nor do I embed dozens of YouTube videos in my posts. My little use of SVG is nothing compared to all of this, and, unlike the other services, doesn’t impact on the loading of the page contents.

Still playing. I’ll worry about performance when I’m finished playing.

For your own playing: SVG is in page, PHP dynamic modification code, import into your CSS file using: @import “photographs.php”;

The only drawback to all of these changes is Internet Explorer. None of this is going to work with IE. None of what I’m doing, though, impacts on the page layout, or the text or even the generated CSS style settings. The IE users won’t get some of the effects, but they’ll get the weblog content. I’m not going to try and use Silverlight or VML or a plug-in to work around these issues, either. I figured if the Microsoft people don’t care that their users are missing out on the fun pieces of the web that’s Microsoft’s problem, not mine. That browser has killed too much of my fun over the years–enough is enough.

Categories
SVG Writing

Blog pulse

Summary:   beep…beep…svg…beep…beep…

I need to refocus on the book, but you’ll be seeing the tangible aspects of writing a book on web graphics throughout my web sites in the weeks to come. For instance, if you’re using an SVG capable browser, you might notice the ‘squiggle’ line across my header. That’s my ‘blog pulse’. It reflects my updated comment count for the last 80 posts. Of course, you know what this means: if my blog pulse straight lines flatlines, my weblog is dead. You hold the life of my blog in your hands.

Currently the ‘pulse’ isn’t viewable to IE or other non-SVG enabled browsers. The Adobe SVG Viewer won’t pick up the SVG, as I’m embedding the SVG directly into the page’s XHTML. That’s the whole reason I bit the bullet and converted to XHTML in the first place.

I could convert the example to using the Canvas object and Google’s ExplorerCanvas library, or perhaps use Sam’s SVG to Silverlight Workbench. Frankly, even though I have a lot of visitors using IE, as long as the information represented in the graphics is either available in other formats or non-essential, I may just blow off IE.

Categories
Diversity People Technology

Being nice: To those intimidated and silenced

Recovered from the Wayback Machine.

I’ve been told in comments associated with a post in the O’Reilly Women in Tech series that I’ve ‘intimidated and silenced’ others, presumably because of my wicked, evil communication skills and general, overall not niceness.

Well, huh.

Do let me know if you’ve felt ‘intimidated or silenced’ by me in the past, and I’ll be sure to send you a warm glass of milk and a cookie.

Here, here’s a fluffy kitten to hold.

I am kitten hear me squeek

(image derived from photo by fieldsbh. Creative Commons)

Categories
Diversity Technology

Being Nice

Recovered from the Wayback Machine.

O’Reilly has been running a series this month titled, Women in Technology. I contributed one of the earlier essays, titled So, What?.

I had ambivalent feelings about participating, not the least of which I wasn’t sure that grouping essays by a bunch of women together for publication during the same month was necessarily a ‘good thing’ for women. It becomes a little too much, “Powderpuff O’Reilly”, a little too easy to tune out. By lack of response from most of the regular O’Reilly writers, and readers, too, this concern has been born out, but it’s been interesting to see who has participated, and what they’ve written.

I don’t agree with all that’s written, and I have more than a suspicion that most of the other participants don’t agree with me, which is good because it just confirms my own decision not to write on this topic again–at least not in this environment or these pages. Especially when I read a post about one of the essays I disagreed with most strongly.

Flock of gulls

Carmelyne wrote:

Why does everyone argue negatively? The people who made comments argued negatively with the author. I can understand then why Amy didn’t like Articles about Women in Tech…Who needs that negativity? As Naruto would put it: “I like my positive chakra”. I don’t dwell any more on the negative side of being one of the few females in a male dominated environment/career.

This is not to pick on Carmelyne, who has a nicely designed site with a fun sense of color and pattern, in addition to a valid viewpoint: why dwell on the negative? Wanting to focus on the positive is understandable. What surprised me, though, is how much Carmelyne’s writing sounded like something else I had read, this time a comment by Tantek Celik in a post by Robert Scoble.

…thanks to all the social web technologies at our disposal, perhaps for the first time in history, people that are capable, humble, and nice can find each other in such numbers as to prioritize and focus their energies on each other rather than the emotional vampires that would otherwise sap them and drag them and their projects, companies etc. down with them.

Dave Rogers also made a small note on this general movement to niceness, but then moves on to discussions of Heroes (opinions of which, I agree with) and music because, really, what more is there to say?

Birds flying

Which leads me back to not writing on “women in technology”. I always felt I had to write on this topic: to point out the conferences where women were missing, the all male publications, the exclusively male panels–not to mention the lack of opportunities for women, as well as acknowledgment of what we’ve accomplished.

It’s not with disappointment but relief that I realized that such writings in this environment don’t work, haven’t worked, and are unlikely to work in the future. There are a hundred other things I’d rather write on, and now I no longer feel like I’m betraying womankind, and my own sense of responsibility, by doing so.

This series has been remarkably freeing for me.

Birds not