jump to navigation
Le Petit
Support EFF

Freedom of Speech

Human Rights

petikr Badge
A petikr badge showing public photos from Clas le Petit. Make your own badge here .
« newer | older »

WordPress Widget tutorial Friday 2006-04-14

If you use WordPress, and follow what happens at the WordPress dot Com blogger site or in the WordPress community, you haven’t missed the new web 2.0 Ajaxian way to treat Widgets. If you have, here’s a short resume to get you in touch.

A WordPress Widget is some facility you place on the sidebar, like a calender or a list of, say recent posts. We all have something like that in our blogs, so that’s nothing new per se. The news is that you can do all kinds of fancy things with a WP Widget widget from an admin interface, like switching them on and off, moving them around or change their behavior.

Now you know. But do you know you how to craft your own widget?

The always alert and helpful Kaf at guff szub.Net has written a short and readable tutorial “My Widget - Example WordPress Widget

Google Calendar is Up Thursday 2006-04-13

Today Google Calendar is up and running, and you may centralize your events handling system. Over the years, many different solutions have been presented, to solve the problem of group and personal calendars, that you can reach from anywhere. The first networked calendars were for company internal use, so that work groups could note meetings and other important dates. Later calendars, from among others Microsoft and Netscape, used Internet based HTML calendars. More ore less sophisticated, they allowed for private calendars, that could be used also by groups. The private calendar is naturally used for private events, as visiting aunt Molly or the dentist, while group calendars knits together project groups.

Google’s new web based calendar takes the technique of earlier calendars a step further, by using an web 2.0 Ajax approach, which makes the user interface fast and easy to use. You can customize the calendar in a lot of ways. There are setting for the presentation, such as what days to show, on which day the week starts and what time format you want use. You can also choose what i kind of notifications you want from the calendar, and how long time before the event it should be sent to you. You can get notifications by email or by SMS. The latter can only be done via certain mobile service providers, that Google has an agreement with. Living in Sweden, I seem to be unable to get the SMS notifications.

You can invite your work group members, friends or family to view your calendar and/or send invitations to it.
If you let anyone see your calendar, you’re at risk for receiving unwanted spam invitations. So you better setup the calender for moderated invitations, which means you have to accept the invitation before it reaches the calendar.

To use the calendar, you will need a Google account, which is free.

Patents of Software Destruction Tuesday 2006-04-11

blood was rushing to my head, as I came about an article in ZDNet news entitled “Eolas work-around puts the brakes on Rich Internet Applications“.
Provocative title, no doubt, but what’s it about?
Eolas Technologies Inc. and the University of California has raised a lawsuit against Microsoft over a patent on interactive software embedded in net documents. Says ZDNets Ed Burnette:

“Eolas basically patented the idea of embedding interactive content (like a Flash control or a Java applet) in a web page and won’t let anyone else use this idea without paying them millions of dollars.”To no surprise, Microsoft is not willing to pay, but reacts by crafting a work-around for embedding Active-X controls. In effect they regard them non-interactive until the user “activates” the applet by clicking on it. For the user, this means the applet must be clicked on to focus it before it is usable. An inconvenience, and in my opinion completely unnecessary. There should be a world wide ban on software patents. They only work to hinder development and use of good software and user experience.

In this case a federal judge has ruled that Microsoft pay Eolas and the University of California $520 in damage for the alleged patent violation. I usually think that Microsoft, while doing a lot for the computer and Internet users, are also doing too much to lock them into an all Microsoft environment. In this case though, I think their place on the barricades is beneficial to all, users and programmers alike.
Look at this excerpt from US Patent 5,838,906 filed October 1994, and let me know what you think!

“What is claimed is:
providing at least one client workstation and one network server coupled to said network environment, wherein said network environment is a distributed hypermedia environment;
executing, at said client workstation, a browser application, that parses a first distributed hypermedia document to identify text formats included in said distributed hypermedia document and for responding to predetermined text formats to initiate processing specified by said text formats; utilizing said browser to display, on said client workstation, at least a portion of a first hypermedia document received over said network from said server, wherein the portion of said first hypermedia document is displayed within a first browser-controlled window on said client workstation, wherein said first distributed hypermedia document includes an embed text format, located at a first location in said first distributed hypermedia document, that specifies the location of at least a portion of an object external to the first distributed hypermedia document, wherein said object has type information associated with it utilized by said browser to identify and locate an executable application external to the first distributed hypermedia document, and wherein said embed text format is parsed by said browser to automatically invoke said executable application to execute on said client workstation in order to display said object and enable interactive processing of said object within a display area created at said first location within the portion of said first distributed hypermedia document being displayed in said first browser-controlled window.”

And it goes on like this of course in ten paragraphs. Yes I know, legal gibberish looks like this, and for a reason. The patent is not so much for a technical solution, as for the mere idea of embedding software in a web page and have it execute (at least partly) on the client computer.

When it comes to real usable software, copyright laws are absolutely sufficient, and patents only serves to make development difficult and users suffer.

Please tell me otherwise, if you like!

Global Tag Clouds on WordPress Dot Com Sunday 2006-03-26

In the web 2.0 era tag clouds have become popular as a means of providing a semi semantic web. I say semi semantic, as we have humans rather than machines, making the relevant bridges between islands of information. The tag cloud or tag list is supposed to find connections between articles or posts, witin the same or neighboring domain of interest. Quite a few tagging services gather tags from blogs and web sites, to fasciltate this type of connections, and by visiting or subscribing to a service like Technorati or FeedBurner, you get freshly published information on your pet subjects.

There are some problems with this kind of syndication though. Do you really get relevant information links?

Well, as long as machines dont understand meaning, the only possible way to connect information in a meaningul way, is to use humans. The problem is that all connections that end up in a tag cloud are made blindly. That is, when you tag your article, you don’t know what other articles in cyberspace will get the same tag. Every contributing author adds tags, that he or she thinks are significant for the article or blog post. These tags are then automatically added to one or more centralized tag clouds. Not everyone will have the same idea on how to tag a certain piece of information.

I know this from my own experience. I’m farly good at creating categories for my own projects, but I often stumble when I add information to them. For a long time I had the distinct project types “Java” for Java programming and “XML” for my XML/XSL experiments. They resided in different directories on my hard disk. Then came the “Java and XML, a marriage made in heaven”, and I wrote every tiny XML handling software in Java. Where to place a new project? Is it about Java or about XML? Here tags comes to resque.
Tags are not categories, but have the advantage of connecting information over category boundaries.

That works for me, but how about sharing my tags with the world. First of all I have to specify by adding more tags to my projects, such as “java”, “xml”, “xsl”, “soap”, “web service”, “http”. If this covers my story, anyone searching for a “web service” will get a link from the tag cloud to my story, together with articles on certain wheater services, stock services, mapping services and so forth.
As there is no human supervision of the relevance of the interlinking, I’m sure the signal to noise ration will be very low on this centalized tag clouds. Contributing to this low ratio is the fact that the ranking of tags is based on popularity. Probably the most prominent tags are meaningless and yields the the longest lists of results.

So what’s the alternative?

A Google search does’nt give you the latest and hottest articles at the top, but the relevance of the results are normally high, because the ranking depends on popularity of the sites rather than the search terms ( comparable to tags ).

A search or a tag cloud within a domain/sub domain or directory/category would be more effective than a world popular tags cloud. If you are like Lorelle, read “The Problems With Tags and Tagging“, you don’t want to encourage people to leave your site, by presenting a Technorati or FeedBurner link to a central cloud of which you are part, but rather drill your own site local cloud. If you do this in a clever way, the relevance is inherent, as you have now added the missing survaillanse of interlinking.

Yesterday Doncha in “More WordPress Feeds” at WordPress Planet plugs for the new WordPress Dot Com new global tag cloud.

“When you write a post on WordPress.com it’s categorised in the usual way but it’s also added to a site-wide pool of posts and identified by a global category. Matt’s announcement this morning means that I can track what people are talking about photography, photos, gimp and even wordpress all from the comfort of my aggregator!”

The new cloud in the WordPress.COM sky, was annonced by the “Unlucky in cards” chief developer of WordPress, aka PhotoMatt in “Tag Feeds and Paging” at the companies blog.
( My spell checker died, sorry about that! )

Don’t Get Lost in the Tag Cloud! Wednesday 2006-03-01

Word, words, words. We are spreading single words around us on the Internet as never before. It’s a new kind of poetry, where long lists or big clouds of words pop up where ever you go. It resembles the very long lists of uncommented links, so common in the early days of the web. There are tags for finding related posts on a certain blog you visit, or on other blogs. There are syndicated bookmarks, tags on your every blog post and tags on your photos at flickr.

With two hundred words in different font sizes, what do you do? Should you tag? How would you let others make good use of your tags?

I’ll leave the answer to these and other crucial questions to the more experienced bloggers and taggers, and give you some links.

I recommend you first to read Carthik Sharma’s article “Tags are not Categories“, where he makes it chrystal clear, why you should not confuse one for the other. It’s good reading and will set you firmly on track.

Then I suggest that you read two articles by Lorelle. The first one elaborates on “The Problems With Tags and Tagging“. She writes:

“As the blog administrator and writer, tags make sense. In addition to the high concentrated use of keywords in posts, as well as the good use of categories as tags, and inclusion of tags in my posts, I’m doing my best to make sure search engines and tag services can crawl my site and store my information in their database for others to find. But then what?”

Se goes on to answer that last question, providing the pros and cons of using tags.
The other article I want to bring to your attention, is her excellent post on efficient techniques you can use to insert tags into your posts. To know how you go about, you should read “A Tagging Bookmarklet for WordPress and wordpress.com Users“.

Categories are for structure, and tells us what domain a certain class of posts or images belong. Tags are for cross reference between more loosely related posts and may very well span different categories. Let’s keep that in mind as we tag along!

The Blue Ribbon Campaign Sunday 2006-02-26

The Blue Ribbon CampaignToday I have decided to join The Blue Ribbon Campaign for free speech online and the EFF. The Electronic Frontier Foundation was founded in July of 1990 in response to emerging threats to the freedom of speech on the Internet and later became an organisation for defending freedom of speech and human rights.

I remember the strong impression The Blue Ribbon Campaign had on the “Black Thursday” in February 1996, when thousands of web pages went black for at least a day, in protest against legislation signed by the American president Clinton, aimed at limiting freedom of expression on the Internet. The campaign was supported by EEF and such leading Internet companies as Netscape.

It may be hard to understand today, the impact of black pages with this blue ribbon made at the time, if you weren’t there. Today there are many black web pages, but only as a matter of design. Back in those early days of the Internet era, most pages were grey with black text, blue links and simple GIF images - nothing fancy. When suddenly lots of pages all over the web turned black, it was a chock, and for many an eye opener for the fact, that freedom of speech could be threatened by governments, but also that efficient campaigns could be launched very fast on this new medium.

Today, more than ever in the history of the web, threats against freedom of speech are raised. In the fear of terrorism, governments are making plans for control of all kinds of electronic communication. Laws are proposed on the right to collect email traffic, tap into mobile phone calls and do all kinds of communication surveillance. Such violation of individual integrity is planned in democratic countries, in the United States and in Europe. In many less democratic countries in the world, the situation is worse, and freedom of speech is just a dream. We have to defend ourselves against crime and terror, but we cannot give in to fear but we have to stand up for human rights and the democratic freedom we have gained.

Here are the simple rules of “The Universal Declaration of Human Rights” set out by the General Assembly of the UN in 1948. They are most relevant today.

Google’s Image Search Under Attack

It’s stormy weather at the top, and the “good guy” Google has reached high enough. Jason Lee Miller of webpronews brings to our attention that …

“Google suffered a setback in court last Friday as US District Judge Howard Matz ruled that thumbnail displays retrieved by the company’s image search feature were a likely violation of copyright law. Links to third party sites and the practice of “framing” the image above those sites, however, were not considered to be in violation.”

This is the result so far of a law suit against Google, brought by Skinmag Perfect Inc, claiming that thumbnails from their images presented by Google image search, be an infringement on their copyright.

I’m not a jurist, but the whole matter seems ridiculous from my common sense view. The company has published its images on the web in such a manner, that they can be viewed by anyone. If some of the pictures are intended to be viewed only after payment, it is the responsibility of the company to hide them from harvesting and indexing by search engines. As any well behaved search robot, the Google bot respects a robots.txt file. There could be no copyright violation by just presenting what’s already in the public eye, and the publication is to no disadvantage to the company

On the contrary, if someone finds one of their images by an image search, it will boast their traffic, as Google presents the thumbnail in a frame above the original page containing the image. If the image itself is of interest, it is likely that you go to their site for more of the same.

It is significant, that the company bringing the suit, has a semi pornographic site, and most probably they have made this move to get out in the lime light. I have the feeling ( again, I’m no jurist ), that many law suits on big companies and rich individuals in the US, are aimed at fame or fortune, and built on fragile ground, but that’s just me.

I don’t care to give you a link to the site, as you will easily fin it by a Google search ;)

XHTML Aware AdSense Saturday 2006-02-25

I have been pretty preoccupied with the redesign of my WordPress theme lately, but today I decided it was time to check my blog for XHTML compliance. As expected I got a lot of errors, but knowing that error multiply when the W3C service parses a page, I wasn’t that worried. I should have been though, as I came to learn.

The first bunch of errors came from my Google AdSense text links in the header an my skyscraper ads in my left sidebar.
Google delivers these ads using a JavaScript that, you cut and paste into your template. The script contains an array of parameters for size and colors and a function that requests the ads from Google. When called the function delivers an iframe that’s inserted in the page. Nice and simple, but the W3C XHTML evaluator doesn’t like it one bit, but spits out a bunch of complaints. Knowing something about XML, I felt sure that encapsulating the meat of the script in a CDATA section would be a quick and easy solution. CDATA is supposed to tell an XML parser to leave the content alone, and make no interpretations but just move it from the indata stream to the outdata stream, stripping the CDATA envelope.
<script language="JavaScript">
  <![CDATA[
   <!-- Adsense here -->
  }
  ]]>
</script>
With this markup, whatever goes between the <![CDATA[ here ]]> should be sent to the resulting document untouched, and the document should validate. No it did not! In my eager search for an explanation I came across this article by Stu Nicholls at CSS Play. He gives a workaround using the object inclusion tag to embed an external non XML document of type text/html. This plain HTML document contains the AdSense script and data. With the ads incorporated in this rather dirty way, the document should validate.
Stu also refers to an article “Making AdSense Work with XHTML” at Keystone Websites, where the author also discusses content negotiation and delivery of different markup depending on the target browser.

AS a background the have an article by Ian Hickson, who gives an explanation of why the AdSense code doesn’t work well with XHTML. It turns out that the Javascript function document.write(), responsible for writing the ads to the page, once it is executed on the client side, is not allowed in XHTML. To make thing worse, the JavaScript writes out an iframe containing the ads, and iframes are not allowed in the XHTML. In short, we have to externalize this ads. we could write the external old fashioned HTML file and add the object inclusion tag to our template, or use a ready made plugin.

In my search for explanations and solutions, I found a plugin called “Google AdSense Injector” at lambcutlet.org, that uses the technique discussed above. It uses content negotiation to insert the object tag if the produced document is application/xhtml+xml and just copies the code as is if the type is text/html.
I installed the plugin, and it seems to work. At least I got rid of all validation error for the AdSense inclusion.
I also realised that other widget I have on my blog, are delivered without any thought of standards compliance. My little button plugging for Firefox, has a query string in its callback to Mozilla.org containing parameters. As is usual in queries, the parameters are delimited by an &-character or ampersand. This has special meaning to XML parsers and are interpreted. My attempt to hide the ampersands from the prying eyes of the validator, by encapsulating the whole callback url in a CDATA section was in vain. the only solution was to use the entity &amp; in the url.

Another really hard problem is the Flickr badge in my left sidebar. It is also included using JavaScript, but the same approach as for AdSense didn’t seem to work. The code is fairly involved with a mix of JavaScript code and CSS in-line styling. I tried to take the badge apart and move the style rules to my stylesheet, but that broke the badge.
Integration of services from near and far shows that there is a long way to go before we can easily be standards compliant. As for the Flickr badge it seems impossible, but luckily Flickr has an API, and it should be possible to write  code to integrate Flickr objects in a standards compliant way. But that’s another story.
Over and out.

Google Page Creator Friday 2006-02-24

Google continues to launch new services at a roaring pace. Today the company that taught us to “google” rather than to search, presents Google Page Creator, a refinement of the idea many web hosting companies have used for building web sites. Google Page Creator is hopefully more sophisticated and aimed at creating good looking web documents. You log in to your G-mail account and start writing pages. There are some different templates to use - sorry to say, I haven’t been able to test the creation process, as this beta service immediately went overly loaded with requests. They promised to contact me by email, as soon as they get a some bandwidth slot for me.
Says SearchEngineWatch: “Google Stops Page Creator Enrollment“. This happened a few hours after it was opened to eager writers.
Sign up and take test drive if you can.

Copyrights, CC, GNU GPL - Infringements

Copyright and intellectual property are sensitive matters, and so are the interpretations of the different licences used when giving out software for free. You can find a serious and interesting discussion of these matters in this tread on WordPress Support Forum.
The tread was started by Richard Dows in search for advice on how to protect his rights under the CC/GNU GPL terms. He has developed a theme called News Print Theme and felt that his copyright was violated. The thread may disappear, so read it now.
If you find something to add, please do!

« newer posts | older posts »