Novemberborn, Straight lines circle sometime

Categories

All articles

sIFR 3 without Flash Pro

On sIFR Generator and sIFR Font Maker, two tools to create sIFR 3 movies without the Flash IDE.

link | sifr3 | 7 November 2008, 22:23

Comment

Mark your calendars, BarCamp Copenhagen, Nov 22nd!

BarCamp Copenhagen is going down in three weeks, on November 22nd. Hope to see you there.

http://barcamp.org/BarCampCopenhagen

P.S. There’ll be a great pre-BarCamp game, details of which are kept secret.

P.P.S. The team is on the lookout for sponsors, for food, drinks and T-Shirts. More on the BarCamp page.

link | barcamp | 1 November 2008, 16:15

Comment [1]

sIFR 3 r436, thoughts on font embedding, presentations

Over the past few days I’ve been making some improvements to sIFR 3, resulting in r436. A quick overview of the important changes since r372:

Changes since r419 (which saw close to 12.000 downloads):

There’s still a number of issues left to figure out, although so far I haven’t had any reports of these issues impacting users. For example, I still have questions about how browsers handle Flash movies that are outside of the viewport, I’d like to see if CSS Load detection could be improved, and what’s up with cross-domain Flash movies. These issues all need extensive research and browser testing.

As always, you can get the latest release from the nightlies.

Other useful links:

These past few months have seen some interesting new developments. Most important of course is the support for Font Linking in Safari 3.1, as well as the upcoming Firefox 3.1 and Opera 10. Finally it’s becoming possible to embed existing fonts on websites, without going through hacks like sIFR or image generation. That said, the current problem with Font Linking is the required redistribution of original font files to web browsers, forbidden by many font licenses. This leaves many typefaces unavailable for embedding. Furthermore, Chris Wilson of Microsoft expressed that Microsoft (and, by proxy, Internet Explorer) should not support Font Linking in it’s current form. Microsoft does have its own EOT format, which it has proposed to the W3C for standardization, and would solve these issues. Mozilla, Apple and Opera however seem opposed to it, mostly out of fears for DRM. I believe these fears are unfounded, for if EOT is DRM, it’s DRM applied by the licensee, not the licensor. It’s like getting an MP3 from Apple and putting DRM on it before you pass it to a friend, instead of getting DRM from Apple preventing you from passing it to a friend. If we want cross-browser, legal font embedding in the short term, EOT is the way to go.

While we wait for cross-browser font embedding, we’re stuck with the alternative hacks. Some new ones have come up recently. FaceLift now seems to be the best way to use images rather than Flash for displaying the font. It uses server-side image generation through PHP, and cleverly provides a hosted service. In the past week Typeface.js came out, which is a devilishly smart way of actually rendering a typeface using <canvas> or VML, though given the complexity of that problem, Typeface.js probably isn’t ready yet for prime-time.

I’d like to point out that these solutions shouldn’t be seen as much as alternative to sIFR – no matter how eager they are to market themselves as such – but as alternative solutions for the real problem: reliable cross-browser font embedding. We’re merely trying to provide the best hack-that-shouldn’t-be-necessary.

That said, I do think that sIFR 3 provides a better solution in being completely client-side, providing actual selectable text, and supporting a subset of HTML and CSS rendering.

I’ve done a few sIFR presentations and workshops in the past few months, most recently at the web conference. Slides are on Slideshare, however the footnotes have gotten lost in an JSON encoding mishap on their end. Therefore, I’ve put up a PDF with notes (17.3 MB). I’m speaking at DrupalCamp CPH, which takes place November 15th and 16th here in Copenhagen.

If you’re interested in a sIFR workshop at your company, or are looking for a weathered web hacker, please get in touch via Supercollider, my freelance alter-ego.

Now, go try out r436, and report back your findings!

link | sifr3 | 29 October 2008, 22:25

Comment [9]

Right!

Let’s see, where were we?

I went to Mediamatic Social RFID Hackers Camp at PICNIC in Amsterdam. Blogged about it on Supercollider.

Then I went to Lisbon, for SHiFT 08, and gave a talk on Home Made Ubicomp.

Sunday, I’m speaking at on Web Typography with sIFR 3. It’s an online conference, so I’m presenting at home or perhaps with some friends, through my laptop. They’re using Adobe Acrobat Connect, which for some reason does not support PDF documents, nor does it support Keynote files, so I had a lot of fun converting to PowerPoint, opening in crappy software also known as OpenOffice, and patching the presentation to a reasonable level of sucktitude. We’ll see what happens.

On November 16th, I’m physically giving pretty much the same presentation, but with working slides, at DrupalCamp CPH. Henriette would not be amused.

I’m now also in the Danish systems, and started Twittering after not using my account for over two years. Then I reached 42 followers, so what choice did I have? Public for now, if that keeps working mentally.

That’s it then, short update. I suggest you subscribe to the Supercollider blog for more technical articles, as I’m turning Novemberborn into a more personal website. Which may mean that the posting activity may go down even further, we’ll see what happens.

I also blog at Toothless Tiger these days.

By the way, Supercollider is my freelance alter ego. Yes, I’m for hire.

link | life | 23 October 2008, 21:58

Comment

sIFR 2.0.7: Flash 10 / Safari Compatibility Release

sIFR 2.0.6 fails to recognize transparency support under Safari and Flash 10. This has been resolved in sIFR 2.0.7.

link | sifr | 16 October 2008, 20:59

Comment [37]

In memoriam Mark Hoekstra

Mark Hoekstra, hardwarke hacker and tinkerer extraordinaire, passed away last Friday.

Mark, you will be missed.

link | life | 21 September 2008, 09:24

iPhoneDevCamp Copenhagen

October 3rd and 4th is iPhoneDevCamp Copenhagen, co-organized by yours truly. We’ve got 27 places left, so sign up now!

For more info, see http://iphone.devcamp.dk

link | meetings | 17 September 2008, 20:25

Location Identity

Over the past 13 days I’ve been in five different countries. It started by taking the train down to Enschede, from Denmark, through Germany. After spending some time in The Netherlands, I boarded a flight for Brighton, in the UK. I got back to Copenhagen yesterday, and spent a few hours in Malmö, Sweden this evening.

I don’t have a very clear feeling anymore of being in a foreign country. The sense of wonder is gone…

link | life | 9 September 2008, 22:30

Comment [7]

Autumn’s Coming

Travels, Enschede, The Hague, Brighton, Copenhagen, Amsterdam. dConstruct, PICNIC. Toothless Tiger. Supercollider.

link | life | 3 September 2008, 11:54

Comment

Web Fonts, Licensing and EOT

Over on the IEBlog, Bill Hill recently posted about Font Embedding on the Web. In it, he discusses how Microsoft has submitted it’s Embedded OpenType (EOT) file format to the W3C for standardization. This could be an important development for web typography, and here’s why.

link | sifr3 web | 24 July 2008, 20:35

Comment [16]

(JavaScript) Hackmeetup Oresund, July 22nd

Quick pointer to tomorrow’s hackmeetup in Malmö: http://upcoming.yahoo.com/event/921335/. Yours truly will be doing a very speedy version of my sIFR talk at Singularity, hopefully combined with some weird JavaScript hacks.

link | javascript | 21 July 2008, 10:14

Comment

sIFR 2.0.6: Flash 10 Compatibility Release

sIFR 2 fails to detect the Flash 10 player, and therefore falls back to normal HTML text. This has been resolved in sIFR 2.0.6.

link | sifr | 11 July 2008, 15:31

Comment [22]

Koebenhavn

So, I’m in Copenhagen now. It’s been a long while since my last post here, and people have been asking me to update more frequently – especially now that I’m an expat! Luckily I set the bar quite low, so no problem there ;-)

link | life sifr3 | 29 June 2008, 22:29

Comment [8]

Two LIFT Quotes

A lie is a conscious prevention of reality. A lie is not the opposite of truth; a lie is the opposite of reality.

Quoted from Peter Steignitz, Austrian social-psychologist, in a presentation.

The complexity of the name is part of the story. This is not technology as usual.

Rafi Haladjian about the naming scheme for Nabaztag. Subsequent versions of Nabaztag have /tag added to them, recursively, so the 4th would be Nabaztag/tag/tag/tag.

Unfortunately I didn’t write down any other quotes.

link | LIFT | 26 February 2008, 21:16

Speaking at Internetcreatieven Kennisdag

For the Dutchies reading this, Friday the 29th the Internetcreatieven Kennisdag mini-conference takes place in Delft. Speakers are André Weenink, who’ll be talking about design research in branding, Arjan Westerdiep, who’ll be premiering a pixel-art illustration consisting of no less than 1,664,000 pixels, Gert Hans Berghuis of Fabrique Communicatie & Design, and Bob Corporaal and yours truly. We’ll be speaking about happy marriages between Flash and HTML, with of course sIFR being a prime example.

Registration is only € 23,80, so I hope to see you there!

link | sifr3 | 20 February 2008, 10:29

Web Hacker For Hire

Well hello! Within a few months I’ll be graduating from Twente University with my Bachelors degree in Computer Science. I’ve decided not to take a Masters, but to venture out into the world. More specifically, I’d like to venture out to Copenhagen. And since I’m not keen on moving to Copenhagen while still working for Xopus, I need a new job!

link | life | 18 February 2008, 21:41

Forgetful Interfaces Workshop/Discussion @ LIFT

At last week’s most amazing LIFT conference I organized a workshop / discussion on forgetful interfaces. I’ve posted a report from the workshop on my very own LIFT blog, and it’s reposted here as well.

link | thoughts | 16 February 2008, 16:12

sIFR 3: r372 Zoom Away!

A quick update with regards to the beta. A number of issues have been found concerning page zoom and Firefox. These issues should all be fixed now. Other changes include:

link | sifr3 | 26 January 2008, 22:17

Comment [55]

The Kill Switch

So. The good news is that IE8 will be much, much better than anything before it. The bad news, Microsoft doesn’t dare release it and make it render existing websites, because there’s no way they’re going to render properly. Why? Because of the browser specific hacks put in to make the site render properly in IE6/7.

A “kill switch” is proposed, which will cause websites to render in the new or updated engine, whilst not breaking existing websites relying on IEs quirks.

Fair enough.

link | web | 23 January 2008, 07:50

sIFR 3 Beta 2: Fire Cracker

As years end nears, neighbourhood kids are playing with fireworks around the house. A nice homage to the second beta of sIFR 3 I’d like to imagine. Feature wise sIFR 3 is now complete, and I think it’s gotten pretty awesome. If you’re trying to decide between sIFR 2 and sIFR 3, sIFR 3 is definitely the better choice.

What is sIFR?

sIFR is meant to replace short passages of plain browser text with text rendered in your typeface of choice, regardless of whether or not your users have that font installed on their systems. It accomplishes this by using a combination of JavaScript, CSS, and Flash, which renders the font. It degrades gracefully if Flash is not present. sIFR 3 is open source and licensed under the CC-GNU LGPL.

How Do I Get It?

You can download the most recent version of sIFR 3 from the nightlies. If you want, you can subscribe to a feed for the nigthly releases. Major releases are also announced through the sIFR 3 Announce mailing list.

link | sifr3 | 31 December 2007, 17:28

Comment [72]

Detecting Page Zoom in Firefox 3 (And Others)

Firefox 3, or, technically, Gecko 1.9, comes with support for full page zoom. It works by scaling CSS pixels when the page is rendered – from the perspective of JavaScript or CSS there is no difference between a page zoomed to 200%, 50% or 100%. The article explains two ways of detecting zoom levels.

link | javascript | 29 December 2007, 17:43

Comment [8]

Browser Wars!

  1. Let browser vendors innovate as fast as they can
  2. With the end-goal of interoperability through standardization
  3. Increasing pressure on other vendors to interoperate, since there are actually four major vendors now, which are all important to most developers

And thereby a better world can be had.

Case in point: Incredibly useful features that used to be IE only, but are now being standardized and implemented by other vendors, such as XMLHTTPRequest, getBoundingClientRect, getClientRects, innerHTML, contentEditable and support for XML/XSLT. Uhm, that basically explains why Xopus is still very much IE oriented – despite all it’s grievances.

link | web | 17 December 2007, 12:31

Comment [3]

sIFR 2.0.5 Compatibility Release

sIFR 2’s links do not work with the new Flash Player 9,0,115,0 if a hover color is specified. Additionally, no elements are replaced in Safari 3 if the content type of the XHTML document is application/xhtml+xml. This has been resolved in sIFR 2.0.5.

If you’re using sIFR 2.0.3 or older, and have a hover color specified for links, or are using XHTML documents with the proper content type, you are advised to upgrade immediately. You must upgrade the sifr.js JavaScript code and re-export the Flash movies.

If you’re using sIFR 2.0.4, and are using XHTML documents with the proper content type, you are advised to upgrade immediately. You must upgrade the sifr.js JavaScript code and re-export the Flash movies.

sIFR 3 is not affected by the Flash player issue. Revision 341 is no longer affected by the Safari XHTML issue.

link | sifr | 16 December 2007, 16:01

Comment [21]

Federating Social Networks – An Introduction

Last Saturday I participated in the Federating Social Networks workshop organized by the fine peeps of Mediamatic (Lab), most especially Ralph. Reduced to its essence, the goal of FSN is to enable websites (“social networks”) to stream data to each other. Rather than pulling data in via feeds and API calls, websites can push data out over an XMPP stream.

link | fsn | 10 December 2007, 21:07

Comment [2]

On DOM Load (and CSS, too)

On solutions for DOM load and CSS applied.

link | javascript sifr3 | 6 December 2007, 22:40

Comment [3]

sIFR 3: Updates

Life’s busy as usual, but it’s been too long since I last wrote about sIFR. I’ve been working on sIFR on and off, so it’s moving slowly. That’s not to say nothing is happening, though! Since the last post there have been 40 new revisions. An oft-asked question is which revision should be used. Since sIFR is under constant development, it’s always a good idea to use the most recent nightly. So what’s the plan going forward? I intend to stabilize the current code base and release a second beta. After the beta is out I’ll be improving the speed of the code and writing documentation – this will likely result in some refactoring. Then one or two release candidates and we’re good to go for 3.0. Last Friday I gave two presentations about sIFR. One at Onstuimig in Amersfoort (they’re hiring too!) and one at Info.nl. I had a great time giving these talks and meeting web people here in Holland, so I’d like to do this more often. Let me know if you’re interested!

link | sifr3 | 11 October 2007, 11:33

The Craziest DHTML Hack Ever

Over at the Xopus blog, I’m discussing what I spent my summer on: a DHTML caret! Go read it and see the demo!

link | xopus | 28 August 2007, 16:23

On Guilds and Certifications

Last month Peter-Paul Koch wrote about a Dutch Guild of Front-End Programmers he is starting. Its purpose is to further professionalise the front-end programming discipline within the Netherlands and improve web design education. The primary means of doing this is by forming a certification body which will certify individual front-end programmers in the fields of HTML, CSS, JavaScript and possibly Flash. Clients can hire certified developers, which will then improve the quality of their websites.

I believe this is misguided.

link | web | 26 August 2007, 16:25

Comment [13]

Maximum Call Stack Size in Modern Day Browsers

I had to write a depth-first tree iterator recently – at Xopus of course – and I wondered about the call stack size. Here is the test, and the results.

link | javascript | 16 August 2007, 08:42

Comment [25]

San Francisco, Ajax Experience, Vancouver

I’m going to be in San Francisco July 21st - 28th, and Vancouver July 28th - August 4th. While in San Francisco I’m speaking at the Ajax Experience. If you’re based in SF or YVR or are attending the conference let me know, cause I’d love to meet up.

link | life | 12 July 2007, 18:28

Comment [4]

sIFR 3 Revision 278 Security Update

Yesterday, a security vulnerability was found in sIFR 2 and 3. Malicious websites can trick visitors into running JavaScript code on domains hosting sIFR movies. No exploits are known. If you are using sIFR 3, you are advised to update to revision 278 (or any later revision).

Download sIFR 3r278.

link | sifr3 | 4 July 2007, 13:23

sIFR 2.0.3 Security Update

Yesterday, a security vulnerability was found in sIFR 2 and 3. Malicious websites can trick visitors into running JavaScript code on domains hosting sIFR movies. No exploits are known. If you are currently using sIFR 2, you are advised to update to version 2.0.3.

Download sIFR 2.0.3.

link | sifr | 4 July 2007, 13:20

Comment

Memory Leaks: Gone!

At Xopus we develop a pretty big (~50k lines) JavaScript application to edit XML documents through a WYSIWYG interface. With such a large application there’s a large risk of memory leaks. Indeed, this is what we’ve been experiencing in Internet Explorer 6. We’ve also seen a decrease in performance as memory usage increased. These leaks, however, do not occur in Internet Explorer 7. And, as of just 10 days ago, they no longer occur in IE6 on Windows XP.

link | javascript | 22 June 2007, 16:06

Comment [17]

Plazes Survey Results

For a university project we researched location-based services and how they can improve social interaction. As part of the research we conducted a survey under 23 Plazes users, all contacts of mine. The results are from March 12th, 2007.

In short, Plazes is a web service which tracks the location of their users via software applications those users run on their machines, a mobile phone application and SMS “check-ins”. A location is called a Plaze, a location history a Traze. The software application uses the identity of the network router as an identifier for the Plaze.

Here are the questions asked and the results.

link | plazes | 23 April 2007, 20:34

Comment [5]

sIFR 3: Revision 229

sIFR updates!

link | sifr3 | 25 February 2007, 23:17

Conferencing

I’ll be in Geneva Tuesday - Sunday morning for LIFT. I’m hoping to go to FOSDEM as well, although Nadya and Marco still need to book the hotel. April 18th it’s off to London for Future of Web Design (thanks, Malarkey!) for which I’ll be needing a place to crash on the Wednesday night.

link | life | 4 February 2007, 21:42

Comment [1]

sIFR 3: Revision 209

Cool updates for sIFR 3.

link | sifr3 javascript | 19 January 2007, 22:09

Jot’s Alive!

I just received word that all Jot wikis will be upgraded to version 2.9 next week. A change close to my heart is the addition of RSS feeds to the To-Do Lists app. Good stuff!

Release Notes here.

link | jotspot | 11 January 2007, 19:13

Comment

sIFR 3b1: The Mo’ Betta Beta

Just in time for Christmas, I present you a new sIFR release! It’s been a long time coming but with this release I feel sIFR 3 is ready for widespread deployment. There’s great control over how the text is rendered inside the Flash movie: you can easily use bold and italics together, or use different colors. There’s support for leading, kerning and opacity, filters, blend modes and anti-aliasing.

link | sifr3 sifr | 18 December 2006, 09:58

Port Scanning Without JavaScript

For the past few months I’ve been following the ha.ckers weblog, which talks about hacking websites and otherwise internet-connected systems. In the most recent two posts (part 1, part 2) a way to do port scanning without JavaScript is discussed. This all harks back to early August, when SPI Dynamics discussed port scanning using JavaScript. An often heard counter measure to this technique is disabling JavaScript, but it turns out that won’t be enough.

link | javascript | 30 November 2006, 19:26

Jaiku: Online Presence and Automating

Back at Reboot 8.0 Jyri Engeström introduced us to Jaiku. Jaiku is an online presence service: you can post small notes about what you’re doing, either through the website or by texting or using the mobile application. Together with web feeds you can specify this is all combined into a presence stream. I signed up today and quickly found a way to automate setting my presence.

link | Jaiku | 23 November 2006, 20:28

Comment [2]

DOMContentLoaded: Test Cases and Musings

Discusses how to properly do DOMContentLoaded in Internet Explorer and tackles issues with Safari and Opera.

link | javascript sifr3 | 14 November 2006, 22:04

Comment [2]

The German Spam Ring

Over the past few months I’ve been getting comments on this blog from Germans. Now, that’s great, especially since a lot of them are regarding sIFR. Something smells fishy, however. The sites behind these comments aren’t the typical sites you would expect from web developers, they are quite ugly and don’t seem to serve a real purpose. After seeing yet another weird comment today, I decided to dive into this a bit further.

link | seo | 11 November 2006, 16:57

Comment [9]

The Summer I Almost Worked at Google

Congrats to my friends at Jot for being acquired by Google. Wish I could be there to celebrate :)

link | jotspot | 31 October 2006, 16:15

iTunes 6 Icons

If you dislike the new iTunes 7 icon set, you can replace the icons with the iTunes 6 versions. Download the set, unarchive, and copy to /Applications/iTunes.app/Content/Resources/.

These icons are copyrighted by Apple Computer. Enjoy!

link | itunes | 12 September 2006, 20:43

Plazes: Freed from the Network

About a month ago I gave a presentation at Web Monday about Plazes. I proposed that there should be a Plazes client which uses RFID tags to identify the Plaze, and connect automatically.

link | plazes | 11 September 2006, 21:32

Comment [4]

Crashing Firefox 1.0.0 in One Line of Code

I was looking at a bug report for sIFR today. It discussed how sIFR 3 crashed Firefox 1.0.0 on Windows. After the better part of the evening, here’s what I found: if you create a non-anonymous method, declare a variable inside it and set a property on the function object with the same name as the variable (and whatever value, I used null), Firefox 1.0.0 will crash after about ten seconds after loading the page.

link | javascript sifr3 | 8 September 2006, 22:00

Comment [4]

Back in .nl

I’m back in the Netherlands. Thank you Jot for this amazing summer!

link | jotspot | 2 September 2006, 13:45

Introducing To-Do Lists

About the launch of my internship project at JotSpot.

link | jotspot | 16 August 2006, 22:50

Comment [1]

JavaScript Threading: Quick Tip

How to run JavaScript code after the current thread has finished executing.

link | javascript | 2 August 2006, 06:30

Comment [9]

Leaky Abstractions in DOM Programming

In which a close look is taken at how platform characteristics influence DOM programming.

link | javascript | 12 July 2006, 06:45

Comment [5]

And So It Begins

Tomorrow morning, 9am, final exam of the year. Immediately thereafter I’m off to the parents, carrying a suitcase full of clothes and a backpack filled with tech. I’ve only got a few hours to be with my family, because Friday morning the flight to San Francisco awaits me!

link | jotspot life | 28 June 2006, 20:20

Comment [7]

Reboot 8.0

Reboot was a blast. Meeting with people from last year, meeting new people. Talking to the Plazes guys, hanging out in wonderful Copenhagen with Marten and Anne and everyone else we had the luck to run into or meet with. Joyent folks, Opera folks. Copenhagen folks. Like last year, this has been the best couple days of I ever took off.

link | reboot8 | 6 June 2006, 20:15

Comment [9]

Flash? Pure Evil

On Flash, filters and Reboot.

link | sifr3 | 29 May 2006, 21:41

Comment [7]

sIFR 3: Using SVN and About the Beta

Over the past few days I’ve fixed a number of bugs in the code and added some more Flash 8 related features. Here’s a quick post on how to stay up to date and some information about the beta.

link | sifr3 | 26 May 2006, 23:00

sIFR 2.0.2 Final Release

I’ve just released sIFR 2.0.2, which is a maintenance release for the problems caused by the “Eolas patch”. There is still no insight into what is causing these problems, so please deploy this patch to ensure everyone can see the headlines.

link | sifr | 25 May 2006, 10:50

Comment [27]

sIFR 3 Alpha: Tasting the 3.0

It’s high time for a release of the new sIFR version, 3.0. With Inman’s Flash Replacement as the original, sIFR 1.0 making it scalabale and sIFR 2.0 bringing it to the masses, this version will really make things rock. Flash 8 has brought a lot of new, cool stuff. Now you can use these features, starting with way better font anti-aliasing and auto-kerning. You’ll also be able to use filters to do shadow effects.

link | sifr3 | 22 May 2006, 22:31

A Jot Summer

Barring any suprises from the American Consulate, I’ll be doing a summer internship at JotSpot this July and August. California, here I come!

link | jotspot | 17 May 2006, 20:33

Comment [7]

Beers with the Dojo Guru

Alex Russell is coming to Amsterdam for XTech, so here’s your chance to drink a beer with the guy!

link | xtech dojo | 13 May 2006, 16:24

Comment [15]

sIFR and Eolas, Testing the Patching

While working with Microsoft to fix the mentioned problems with sIFR and the Eolas patch (the security updates for Internet Explorer released on April 11th) I’ve also been working on a patch for sIFR itself.

link | sifr | 11 May 2006, 21:02

Comment [4]

On sIFR and the Eolas Patch

After Microsoft rolled out their Eolas patch I got a few reports about sIFR not working correctly. As sIFR is a script which creates the Flash movies there shouldn’t be any issues, but unfortunately that is not the case.

There are two problems, one is easy to fix and is the result of extra steps taken in the deployement of sIFR. The other seems to be a system issue, and as such is harder to fix.

link | sifr | 2 May 2006, 09:23

Comment [9]

Reviewing the Plazes APIs

Plazes is an extremely cool location awareness service. Recently the first version of the Plazes API was released. Together with the Launcher and WhereAmI APIs there now are three public APIs for the service. As a hobby project I’ve updated the RubyForPlazes project, run by Peter Rukavina, to work with the new API. The new version hasn’t officially been announced yet, as there is still some work to do with regards to testing and examples, but it is already in the repository at Peter’s site. During the development of the new Ruby implementation I’ve run across a number of issues with the API design, which are documented in this article.

link | plazes | 1 May 2006, 12:22

Comment [1]

Pre-fetching Flash

One of the advantages of sIFR is that the Flash files are cached on the client, saving bandwith. Except, of course, when they aren’t cached, as was pointed out on the sIFR forum. Luckily a solution was hinted at by Marc van den Dobbelsteen from Webbforce. Requesting the Flash file using a document.write() call fixes the problem. Thus, I set out on a journey through seemingly endless browser reloads and cache emptying…

link | sifr flash | 29 April 2006, 16:17

Comment [10]

Externally Declared Global Variable Leak

It is possible to create a memory leak in Internet Explorer… by not referencing an object more than once. This article explains how and gives tips on avoiding the problem.

link | javascript | 20 April 2006, 22:12

Comment [14]

Reboot 8.0 & BarCamp AMS II

Anne, Marten and I are going to be at Reboot 8.0 this year. See you there!

In related news, BarCamp Amsterdam II has been announced. See you there as well!

link | barcampamsterdam reboot8 | 5 April 2006, 13:35

Comment [5]

DHTML as a Straw-man

DHTML is, like HTML before it, painted in a bad light, whereas XHTML and DOM Scripting are purportedly the best (and therefore only) way ahead. When you look more closely at the practices so easily associated with XHTML and DOM Scripting you see a different picture.

link | javascript | 29 March 2006, 19:48

Comment [11]

sIFR 3 Feature List

As I’ll have to focus on course-work and money-making-work in the next few weeks here is a feature list for sIFR 3. Of course, when something turns out to be too hard to implement, it’ll be removed from the list. Don’t take it for granted!

link | sifr3 sifr | 12 March 2006, 16:31

Comment [17]

Font Sizing with sIFR

Font sizing is the most difficult part of using sIFR. In this post, I’ll discuss how the algorithm in sIFR 2 works, or rather, why it doesn’t work as well as originally intended. Coincidentally, this makes this post an excellent tutorial for font tuning in sIFR 2. We’ll also look at how things will be improved with sIFR 3.

link | sifr sifr3 | 7 March 2006, 01:23

Evolution

sIFR now does multiple colors, configured by CSS, and with better links. And it’s still missing a lot of features, and is probably incredibly buggy, but hey.

http://dev.novemberborn.net/sifr3/svn/test/demo.html

Next step: making it scalable.

link | sifr3 | 20 February 2006, 01:54

Caught Redhanded: QuickTime Stealing Flash

Sometimes QuickTime may take over handling Flash content. As QuickTime is only compatible with Flash 5, this can pose major problems.

link | javascript | 8 February 2006, 18:18

Comment

Getting Funky With Scopes and Closures

The most powerful thing about the JavaScript programming language are it’s scoping rules. In this article I’ll talk about scope and how it relates to functions and closures. There’s some kick-ass stuff you can do with it!

link | javascript | 22 January 2006, 23:47

Sources Are Telling Me…

I’ve made a development subdomain here at Novemberborn to host SVN exports of the sIFR 3 codetree and other development projects.

link | site sifr3 | 18 January 2006, 00:24

Comment [1]

TextMeet February 4th, Utrecht

If you’re in Holland in early February, Utrecht is going to be the place to be. Marten and me are setting up a TextMeet: the event of the year where you can meet your fellow TextDrivers. And, shocker, the Dean is coming! Jason Hoffman might fly over as well. As I said, the place to be!

link | textdrive textmeet | 16 January 2006, 22:06

Comment [2]

Quick: A Wiki!

I’ve updated the wiki software running wiki.novemberborn.net to a customized version of i2, the app behind the Ruby on Rails wiki. At first glance it’s a lot more responsive, and I hope it won’t go down as much as the previous incarnation.

link | sifr3 wiki | 14 January 2006, 01:45

Comment [8]

2005 Randoms

We’re nearing the end of the year (less than twelve hours in my time zone) and it has become time to write down some final random notes…

link | life | 31 December 2005, 11:56

Back It Up Back It Up

As you are hopefully aware, backups are the only way to make sure you don’t lose your data in case of a crash or theft or an other disaster. There are several ways to back up your data, such as writing it to a tape-recorder stuck away in a fireproof vault.

Luckily there are easier methods as well.

link | backup | 22 December 2005, 13:08

Comment [9]

sIFR 3: A Look into the Future

Some time ago Mike and I asked you what features you wanted to see in sIFR 3. While we haven’t defined the exact list of features for the new version it has become time to look into the future to see where sIFR is heading.

link | sifr sifr3 | 16 December 2005, 22:42

Comment [60]

Optimizations

When optimizing, you have to make sure it actually helps.

link | javascript optimizing | 13 December 2005, 01:14

Comment [10]

They Searched, Came, and Left in Utter Confusion

Or: how good markup and interesting content can lead to absurd search engine rankings.

link | seo odd | 7 December 2005, 23:59

Comment

Nine down, one to go

On my way to being a twenty-something.

link | life | 24 November 2005, 14:05

Comment [11]

Paul Graham on “Ajax”

Paul Graham on “Ajax”.

link | javascript ajax | 21 November 2005, 00:20

TextPattern and HTML 4.01

How to make TextPattern output HTML 4.01 code.

link | textpattern | 13 November 2005, 21:55

Travelogue Slash Crash

About the past few days.

link | thoughts | 13 November 2005, 14:56

Million Dollar Question

What are the two ways HTTP can request an image from a server?

link | university | 10 November 2005, 01:01

Comment [3]

War and UDP

UDP packets are like soldiers, running across the battle field, trying to reach their destination.

link | thoughts internet | 6 November 2005, 13:59

sIFR 3: A Request for Requests

What do you wanna see in sIFR 3?

link | sifr | 28 October 2005, 16:05

Astronaut Suits on the BBC

Flock/BarCamp on the Beeb!

link | barcampamsterdam barcamp | 28 October 2005, 10:18

Comment

No-Tech

No-tech is important, don’t let all the shiny tech blind you from that.

link | thoughts no-tech | 25 October 2005, 23:41

Unconference Thougths

BarCamp rocked. Thirty-two hours (and then some) of hanging out with cool people talking and learning and hacking.

link | barcamp barcampamsterdam | 23 October 2005, 15:31

Comment [4]

BarCamp Amsterdam…

BarCamp Amsterdam is really cool.

link | barcamp barcampamsterdam | 21 October 2005, 00:02

Comment

Experiment: Function.$case

(Partially) implementing Ruby’s case/when/else in JavaScript, as inspired by Java’s signature-identified methods.

link | javascript experiments | 19 October 2005, 20:18

Comment [1]

More Site Updates

More updates!

link | site | 14 October 2005, 23:23

Comment [7]

Rip

Ripping CDs with a Mac? No problem!

link | osx music | 14 October 2005, 19:45

Comment [1]

BarCamp Amsterdam

Next week I’ll be in Amsterdam for BarCampAmsterdam. Two days of hanging out, hacking, and other cool, interesting stuff. Rock.

link | barcamp barcampamsterdam | 12 October 2005, 22:11

Comment [2]

Shiny

Look! All new, all shiny! Running on a somewhat hacked version of TextPattern, valid HTML 4.0.1 Strict and Atom 1.0. Now with comments. And article-level feeds. Yay!

link | site | 11 October 2005, 23:48

Comment [10]

Entmoot

We had Entmoot in Utrecht.

link | happyclog meetings | 26 September 2005, 02:17

Adding Events, Recoded

My entry for the addEvent() recoding contest.

link | javascript | 11 September 2005, 04:30

Upcoming Happy Clog Meeting

There’s a new Happy Clog meeting coming up!

link | happyclog meetings | 11 September 2005, 02:13

Netscape is a Network App, and without…

My Telematics professor has a thing for Netscape…

link | life university | 7 September 2005, 12:04

One Hundred Rabbits and an Elephant

I moved house!

link | life | 17 August 2005, 22:21

Song

One of the many great songs by The Weakerthans.

link | music weakerthans | 10 August 2005, 14:53

Happy Clog

Giving ourselves new names.

link | happyclog | 8 August 2005, 10:30

Hacking Linux

Linux hacks.

link | linux woes | 6 August 2005, 21:10

iPod Giveaway #4: Entry #2

Here’s another submission for Mike Davidson’s iPod Giveaway #4.

link | stories | 31 July 2005, 23:00

Open Letter to the DOM Scripting Task Force

A couple days ago the DOM Scripting Task Force emerged into the public. But I’m wondering if their focus is correct.

link | javascript | 21 July 2005, 22:00

iPod Giveaway #4: Entry #1

Here’s a submission for Mike Davidson’s iPod Giveaway #4.

link | stories | 17 July 2005, 20:30

Time To Get

A meeting will be coming up at July 24, 2005 at 14:00 in Leiden.

link | happyclog meetings | 14 July 2005, 20:36

Spamming Reboot

Robert Scoble found an “innovative” way to promote Channel 9.

link | reboot7 stories | 10 July 2005, 15:06

For A While, I Had Two Reboot T-Shirts

How I lost my second Reboot t-shirt.

link | reboot7 stories | 9 July 2005, 16:25

But One Year Ago

One year ago exactly I was in London. Now today happened.

link | life | 7 July 2005, 20:19

Books

I’m in a book, and I closed a book, and the opening of another has to wait for a few days.

link | javascript | 1 July 2005, 21:00

Saturday

I walked into a store today.

link | life | 27 June 2005, 19:43

Odeo - Pronounced Like Rodeo

An overview of the first beta offering by Odeo.

link | odeo | 19 June 2005, 20:28

Later

Some more about my graduation from highschool, MyBlogLog, Odeo, Enschede and an upcoming Javascript meetup in Amsterdam.

link | life | 18 June 2005, 11:42

Bye bye

I graduated from highschool :)

link | life | 16 June 2005, 19:36

Mindboggling

I returned from Reboot7.

link | reboot7 | 13 June 2005, 20:33

Hi from Admiral Gjeddes Gaard, Copenhagen!

A short message from the Thursday Meetup in Copenhagen…

link | reboot7 | 10 June 2005, 00:45

Event Cache Follow-up

link | javascript | 3 June 2005, 20:27

Kryptonite

Recap of the past two weeks.

link | life | 3 June 2005, 20:07

Somebody Shoot Me

I’ve been passed the musical baton.

link | life | 18 May 2005, 16:42

An Observation About Ajax

Why DHTML hackers hate Ajax, and everybody else loves it.

link | javascript ajax | 15 May 2005, 16:00

Photos

Photos of the trip to France are online!

link | life | 8 May 2005, 21:33

Holidays

From May 1 to May 7 I’ll be on holiday in the Vesges, France. I also want to go to Reboot7 in Copenhagen.

link | life | 29 April 2005, 16:04

sIFR 2.0

A post celebrating the release of sIFR 2.0.

link | sifr | 28 April 2005, 16:03

Implementing :target in IE

A way to implement :target in IE.

link | javascript | 28 April 2005, 15:08

More Seriously: Why CSS Doesn’t Define Behaviour

Why CSS doesn’t define behaviour. The more serious follow-up on How to use the DOM for :hover.

link | javascript | 25 April 2005, 16:44

How to use the DOM for :hover

How to use the DOM in order to do :hover.

You’ll also want to read the more serious follow-up.

link | javascript | 22 April 2005, 15:00

The Myth of Object Detection

Why object detection doesn’t always work.

link | javascript | 22 April 2005, 15:00

JavaScript Terminology

This is an introductory tutorial to the sIFR Explained series. It’ll be updated from time to time when more information is necessary.

link | javascript sifr | 20 April 2005, 17:00

sIFR Explained

This is a series about how the JavaScript code in sIFR works.

link | javascript sifr | 17 April 2005, 18:54

Event Cache

Provides a way for automagically removing events from nodes and thus preventing memory leakage. Licensed under [CC-GNU LGPL][license]. Download the [source][].

link | javascript | 13 April 2005, 18:24

Secure Gmail

A GreaseMonkey extension which ensures Gmail uses the secure connection. Written and published on Tuesday, March 8, 2005. Licensed under CC-GNU LGPL. Download the source.

link | javascript greasemonkey | 8 March 2005, 17:33

MyBlogLog Dissected

In this article I dissect the MyBlogLog JavaScript code, suggest improvements and quickly discuss some of the privacy concerns scripts like these create.

link | javascript | 4 March 2005, 13:00

Named Arguments

Implementation of named arguments in JavaScript. Written in December 2004 for sIFR. Licensed under CC-GNU LGPL. Download the source.

link | sifr javascript | 30 December 2004, 18:00

Named Arguments

Implementation of named arguments in JavaScript. Written in December 2004 for sIFR. Licensed under CC-GNU LGPL. Download the source.

link | javascript sifr | 30 December 2004, 18:00

Where to Replace

Explanation of where to place the replacement code of sIFR.

link | sifr | 30 December 2004, 18:00

2005

Happy holidays!

link | life | 23 December 2004, 13:00

The One Man Company With Three Employees

I wrote this story on Sunday, November 21st, 2004 at about 1am. The idea for the story came to me while driving to a birthday party earlier that evening, listening to Good News For People Who Love Bad News by Modest Mouse.

link | stories | 17 December 2004, 17:09


Novemberborn: Extra

About the author

Mark Wubben is a European Dutchman and web hacker, based in Copenhagen, Denmark. Supercollider is Mark's freelance alter-ego.

Read more about Mark...

Go to

Jobs (NL)

Xopus zoekt programmeurs! Verbeter de code en win!

Subscribe