Spinsels op het web
actions » SearchLogin 382 articles • 19 Apr 2014

Recent articles in 'Web Dev'

Wednesday, 23 Oct 2013

permalink CSS3 dancing Bender

Awesomesauce: dancing Bender in CSS3 http://liveweave.com/GoGhKy

[[image: Bender_Rodriguez.png from upload.wikimedia.org]]

• Wrote irmen at 23:58 | read 40× | 0 Comments

Friday, 11 Jan 2013

permalink Image uploads by drag/drop or clipboard paste, without java and flash

Uploading images on a website by drag/drop or pasting from the clipboard:

http://joelb.me/blog/2011/code-snippet-accessing-clipboard-images-with-javascript/

This doesn't use Java or Flash :) Used on this site: http://pasteboard.co

I've got to replace my image upload applet by this.... %-|

• Wrote irmen at 23:49 | read 183× | 2 Comments

Thursday, 26 Apr 2012

permalink IE's document compatibility modes

IE's document compatibility mode selection. See below. Do NOT want >(

(!) The original can be found here, click this to also see the embeddd images that are not shown below.

[[image: How%20IE9%20Determines%20Document%20Mode.svg from ieblog.members.winisp.net]]

• Wrote irmen at 21:25 (edited 1×, last on 13 May 2012) | read 45× | 0 Comments

Wednesday, 09 Nov 2011

permalink Flash = dood.

[[image: flashcrash.png]]

Adobe ceases development of Flash on mobile devices

.... zit er Flash op mijn telefoon dan????? Kan me niet herinneren dat ik ooit één website bekeken heb op mijn Android telefoon waarbij ik Flash wilde zien. Sterker nog als er toevallig 1 langskwam was het gelijk "traag, weg met die zooi". Misschien gebruikt de Youtube app Flash onder water, maar ik denk van niet, want youtube doet het ook prima op mijn iPod en daar zit zeker geen Flash op.

Flash is alleen om dumpert.nl en Youtube te kijken op je desktop toch ?

En zojuist lees ik dat Silverlight mogelijk hetzelfde lot beschoren is. Ik denk dat ik dat ooit geïnstalleerd heb om 3fm te streamen, of was het uitzending gemist? Ondertussen vergeten. Beide doe ik al lang niet meer.

#goodriddance

• Wrote irmen at 20:10 (edited 1×, last on 09 Nov 2011) | read 46× | 0 Comments

Monday, 20 Jun 2011

permalink Scene demo in je browser (WebGL)

Ok, ik had niet verwacht dat WebGL zo krachtig zou zijn, om er een hele scene demo mee te kunnen maken:

http://traction.untergrund.net/slamdown/ 8-)

Werkt in Firefox 4 (en mogelijk Chrome). (dat is dan het nadeel, WebGL is dan weer niet overal evengoed ondersteund blijkbaar)

Hier nog één: http://azathioprine.digisnap.bplaced.net/

• Wrote irmen at 20:35 (edited 1×, last on 08 Nov 2011) | read 29× | 0 Comments

Tuesday, 15 Mar 2011

permalink javascript 3d canvas

Bah, javascript in een browser is sneller dan hardcore 68000 assembler met een custom coprocessor destijds op mijn Amiga in 1994 >(

http://www.smashcat.org/av/canvas_test/

• Wrote irmen at 19:48 | read 51× | 1 Comments

Tuesday, 23 Mar 2010

permalink peppercorn: stream and record gebaseerde form parsing (in python)

Zonet Peppercorn gelezen. Verfrissende kijk op die stomme platte html form submit data en hoe je dat handig kan parsen (in Python). In plaats van een platte 1-op-1 mapping van keys naar values wordt er door een paar slimme trucs een soort van stream gebaseerde hierarchische structuur van gemaakt die meestal veel beter aansluit bij het datamodel van je applicatie.

Ook best aardig dat er een parse techniek gebruikt wordt die op zichzelf staand ook de moeite waard is om te bekijken. Het is iterator parsing van de Effbot. Ik denk dat het tegenwoordig nog handiger kan met generators of zelfs generator expressions, maar het basis idee is hetzelfde.

• Wrote irmen at 00:01 | read 36× | 0 Comments

Saturday, 30 Jan 2010

permalink Kill IE6! Kill it with fire!

yes Yes YES!!! Google about to end support for IE6.

Eindelijk een major bedrijf dat gewoon keihard zegt F.U. tegen de stakkers die nog IE6 gebruiken. (Ok, ok, Youtube heeft al een paar maanden een waarschuwingsbanner voor mensen die IE6 gebruiken).

IE6: Kill it with fire!

update: ook maar eens een ie6-warning popup ingebouwd op mijn eigen site. Als je een voorbeeld wilt zien klik dan deze testpagina.

• Wrote irmen at 22:19 (edited 2×, last on 04 Feb 2010) | read 624× | 0 Comments

permalink XML Billion Laughs attack, huidige stand van zaken

Ik was jaren geleden al eens aan het kijken naar de zogenaamde billion laughs xml attack, waarbij een doodsimpel xml bestandje van een paar honderd bytes zo'n beetje alle XML parsers (en web browsers!) op hun knieen bracht (enorm geheugengebruik en 100% cpu usage). Dit vanwege een exponentiele entity reference expansie. Meer info op Wikipedia: Billion Laughs.

Ik was nieuwsgierig of er tegenwoordig al wat vangnetten zijn geplaatst voor dit soort attacks, dus ik ging mijn million laughs testbestandje eens openen in een aantal web browsers. De resultaten zijn hoopvol! Waar een paar jaar geleden alle web browsers finaal onderuit gingen, zijn de resultaten nu ongeveer als volgt:

  • Firefox 3.6: geeft foutboodschap 'XML Parsing Error: recursive entity reference'.
  • Safari 4: geeft foutboodschap 'error on line 29 at column 18: Detected an entity reference loop'.
  • Chrome: zelfde foutmelding als Safari (logisch, want gebruikt ook Webkit engine).
  • Internet Exporer 8: gaat vrolijk het xml bestand proberen te parsen, maar dat duurt even :-P . Gelukkig is mijn testbestand slechts 'million laughs' en niet 'billion laughs' want anders had ik geen resultaat gehad na 30 seconden en 500 Mb geheugen gebruik.
  • Oxygen XML Editor 10: leest het probleemloos in maar zodra ik op validate klik gaat het mis ;-) Even geduld hebben en dan geeft hij wel netjes antwoord maar het kost 30 seconden en 1Gb geheugen.
  • Java6: score 2/4 (DOM en SAX ok, XMLReader crash, STAX StreamReader faalt)
  • Python2.6: score 1/4 (alleen lxml is ok)
  • .NET 3.5: score 1/1 (te beschermen met XmlReaderSettings, zie update comment)

Voor meer info, zie de read more.

    • Read more »
• Wrote irmen at 16:07 (edited 8×, last on 11 Feb 2011) | read 169× | 1 Comments

Saturday, 22 Aug 2009

permalink SVG en Canvas in IE: als Microsoft het niet voor je doet, dan zelf maar

Ik geef niet zo heel veel om wat voor dingen Internet Explorer allemaal niet ondersteunt (HTML5, SVG, Canvas, proper CSS, fast Javascript, enz).

Maar ik zie het nog wel gebeuren dat ik een keer gebruik ga maken van SVG en Canvas dingen. Dan is het wel grappig om te weten dat er javascript libraries zijn, gemaakt door derden, die in meer of mindere mate die dingen ook laten werken in IE:

De SVG library rendert in Flash in IE, en gebruikt native browser SVG in browsers die wel bij de tijd zijn (Firefox, Safari, Chrome). Flot gebruikt onder water Excanvas geloof ik, om de plots in te tekeken.

Edit: Ok het kan nog extremer. In het kader van "If they won't fix it, we will!"...: vervang gewoon de hele IE render engine door die van Google Chrome! ^_^

• Wrote irmen at 18:35 (edited 1×, last on 23 Sep 2009) | read 76× | 0 Comments

Wednesday, 08 Jul 2009

permalink HTTP header madness: diverse problemen met Yahoo YUI, Safari en Firefox

Afgelopen week een aantal vreemde problemen tegen het lijf gelopen rondom HTTP headers:

  1. Apple's Safari normaliseert de HTTP headers die hij van de server krijgt.
  2. Het Connection object uit Yahoo's YUI library voldoet niet aan de standaard bij het opvragen van HTTP headers.
  3. Mozilla's Firefox doet raar met caching van HTTP headers.

Achtereenvolgens is dat dan 1) raar; 2) API bug; 3) bug. Hieronder zal ik uitleggen wat deze problemen precies inhouden.

    • Read more »
• Wrote irmen at 22:56 (edited 3×, last on 12 Jul 2009) | read 236× | 1 Comments

Sunday, 20 Jan 2008

permalink Upgraden moinmoin wiki

UPDATEN VAN MOINMOIN WIKI

Omdat ik elke keer vergeet hoe MoinMoin geupgrade moet worden die ik hier als wiki software gebruik, heb ik het maar eens uitgetypt:

  1. download nieuwe moinmoin versie van de download site De meest recente versie op dit moment: moin-1.6.0.tar.gz
  2. uitpakken en cd naar de installatie directory
  3. moinmoin installeren in standaard Python framework locatie, en de default moinmoin data files in ~irmen/moininstalldata plaatsen (eerst inloggen als root!) :
    $ python setup.py install --install-data='/Users/irmen/moininstalldata'
  4. kopieer de static htdocs files uit de moininstalldata naar de web server in snakelets, en zet de file ownerships op www:www:
    $ cp -r ~irmen/moininstalldata/share/moin/htdocs ~irmen/Projects/www_snakelets/webapps/wiki/
    $ chown -R www:www ~irmen/Projects/www_snakelets/webapps/wiki/htdocs
  5. kopieer de static system en help files naar de juiste plaats, en zet de file ownerships op www:www:
    $ cp -r ~irmen/moininstalldata/share/moin/underlay ~irmen/Projects/www_snakelets/moinmoin/python/
    $ chown -R www:www ~irmen/Projects/www_snakelets/moinmoin/python/underlay
  6. check of er iets is gewijzigd in de wikiconfig.py. meestal kun je deze file gewoon ongewijzigd laten. Bestaande file: ~irmen/Projects/www_snakelets/webapps/python/wikiconfig.py Vergelijk met: ~irmen/moininstalldata/share/moin/config/wikiconfig.py
  7. controleer even of de file permissie van de wikiconfig file goed staat (chmod a+r) anders krijg je een error bij het opstarten dat hij wikiconfig.py niet kan importeren
  8. bij opstarten van Snakelets webserver logt hij de moinmoin versie en naam. als er bij het tonen van een pagina nog iets mis gaat, is er misschien iets gewijzigd in de Request.py, dan moet je wikisnakelets/wiki.py editen.
• Wrote irmen at 15:57 (edited 2×, last on 18 Feb 2009) | read 424× | 8 Comments

Wednesday, 07 Jun 2006

permalink Snakelets+Frog survives Slashdotting... but with slight hiccups

Cliff Wells' blog entry titled "Why the Light Has Gone Out on LAMP" was featured on Slashdot. Cliff uses Frog as his blog tool... So this is the first time -that I know of- that Snakelets+Frog had to withstand a Slashdot effect :-D

Cliff mailed me about it, to tell me two things:

  1. the server survived (only one or two timeouts) :-)
  2. there were some problems with users placing comments :-(

While it is good to know that Snakelets can withstand a moderate slashdotting, the following problems sometimes occured in the commenting system of Frog:

  • Frog was using the same comment id for multiple comments (ouch!)
  • User got exception traceback in Frog code, it was no longer able to fetch an id from the request scope

It seems Frog has concurrency and/or timeout issues with placing comments. These are bugs that have to be fixed. So expect a new Frog version sometime soon ;-)

update: I have found and fixed a problem in Frog related to the double-id issue. The traceback crash is still there.

• Wrote irmen at 11:46 (edited 2×, last on 13 Jun 2006) | read 103× | 2 Comments

Monday, 15 May 2006

permalink Tooltips (mouseovers) in non obtrusive javascript+CSS

BoxOver

Deze tooltip 'engine' is als blackbox aan te roepen zonder enige custom javascript te hoeven gebruiken.

Gebruik: 1. Onderaan de pagina moet je de .js file includen <script src="boxover.js"></script>

2. Voor ieder html element op de pagina dat je van een mooie custom tooltip wil voorzien (zoals een popup helptekst) zorg je dat in de "Title"-property de tooltip-parameters van een waarde voorziet.

voorbeeld: <img src="helpicoon.gif" title="header=[Help voor bruto jaarinkomen] body=[help tekst over het bruto jaarinkomen] hideselect=[on] fade=[on]" /> Dit is ook echt alles!

Wat je hier ziet is dat a) de header en body van de tooltip worden gevuld, b) alle selectboxen op de pagina even verdwijnen om te voorkomen dat ze door je help tekst heen komen en c) dat de tooltip met een fade-in wordt weergeven.

Er zijn nog meer veel parameters en voorbeelden beschikbaar op de website! En het ding is gratis (GNU licence).

• Wrote irmen at 17:01 | read 873× | 2 Comments

permalink (staaf)grafieken in CSS

Een van de meest gebruikte grafieken is toch wel de staafgrafiek denk ik. Staafgrafiekjes in een website kun je met een of ander server-side component ingewikkeld gaan zitten maken en dan een korrelig gifje gaan ophoesten. Waarom zou je het zo omslachtig, traag en lelijk doen, als je met een beetje CSS ook perfecte staafdiagrammen kan maken op basis van normale HTML tables/lijsten?

Een aantal voorbeelden:

• Wrote irmen at 16:57 | read 809× | 0 Comments

Friday, 14 Apr 2006

permalink Some slight server changes

I've updated the Snakelets server software on this site.

The changes:

  • Slight URL change for my Blog pages. The /snake/ prefix is gone. (If you access the "old" page, you will be automatically redirected)
  • No more Apache reverse-proxy. Snakelets itself is now running on port 80 directly. Easier maintenance, more flexibility and hopefully also a tad faster than the old setup.
  • New Snakelets CVS version has the option to run as a different user. This is, like with Apache, required from a security point of view.
  • My Python WIKI is again available in the latest MoinMoin version running as a Snakelets webapp (it was running as CGI under Apache).

The new Snakelets code is only in the current CVS version, there's no new official release yet.

• Wrote irmen at 23:59 (edited 3×, last on 01 May 2006) | read 118× | 0 Comments

Friday, 03 Mar 2006

permalink Better web app development frameworks - a screencast

Others have linked and blogged about it already but I just put this up here too because I too think its rather interesting and amusing. I'm talking about the screencast movie from Sean Kelly in which he compares several web application frameworks: Java J2EE, Rails, Zope(+Plone), Django and TurboGears.

The movie is here: remotedownloadbetter-web-app.mov (its 380 megabyte and is around 30 minutes playtime).

Like Joel Spolsky writes on his blog, "Warning to J2EE programmers: After seeing this presentation, you will never want to touch J2EE again for web development."

    • Read more »
• Wrote irmen at 16:30 (edited 1×, last on 08 Mar 2006) | read 2061× | 3 Comments

Sunday, 18 Dec 2005

permalink opeens verticale spacing tussen images in xhtml/html4 strict

Ik heb een paar images die zowel horizontaal als verticaal precies tegen elkaar aan moeten vallen. Als ik mijn pagina in HTML4 transitional maak, dan zag het er uit zoals ik wil hebben: 4 plaatjes, 2x2, zonder ruimte ertussen.

Toen ik er een HTML4 strict, of een XHTML strict pagina van maakte, verscheen er opeens een paar pixels verticale ruimte tussen de plaatjes zodat ze niet meer op elkaar aansloten :-|

Wat blijkt het heeft iets te maken met de verticale alignment van de images, dus als je een stukje css toevoegt die de alignment op bottom zet, dan verdwijnt de tussenruimte weer. Je kunt ook van img weer een block-element maken, in strict mode is het namelijk een inline-element (en dit maakt ruimte voor letters die onder de baseline uitsteken).

img {
   vertical-align: bottom;
}
/* of: */
img { 
   display: block; 
}

Op de Mozilla developer site is een uitgebreid artikel te vinden over dit probleem.

• Wrote irmen at 16:29 (edited 3×, last on 21 Dec 2005) | read 124× | 0 Comments

Tuesday, 06 Dec 2005

permalink Waarom websites maken die voldoen aan web standaards (management-spraak versie)

"Waarom zou ik extra geld besteden om deze website om te bouwen zodat hij ook goed werkt in een andere browser dan IE?"

Een veel te vaak gehoorde opmerking helaas. Hieronder dan een en ander aan informatie, gericht voor management in plaats van de hard core technici. Wellicht nuttig omdat aan argumenten zoals "W3C DOM functies werken in alle moderne render engines" managers en projectleiders meestal een broertje dood hebben.

Meer informatie voeg ik hier toe zodra ik wat vind.

• Wrote irmen at 22:10 | read 482× | 0 Comments

Wednesday, 30 Nov 2005

permalink Firefox 1.5 has been released

[[image: firefox-15-headline.png]] Get it!

• Wrote irmen at 09:34 | read 144× | 0 Comments

20 shown; more articles may be found in the archives. The permalink icon is the article's permalink.
Process times: page=0.242 request=0.250 cpu=0.226