mardi, décembre 5 2006
Par Stéphane Bebrone le mardi, décembre 5 2006, 22:44
Voilà que se termine tout doucement ma seconde journée à Brighton. Je rentre tout juste de la main party après avoir été faire quelques photos de nuit dans la ville (je suis toujours autant émerveillé par les différents types d'architecture rencontrés ici). Je dois dire qu'entre le mal du pays et le faible décalage horaire, j'ai du mal à me mettre dans l'ambiance.
Lors de mon dernier poste, je partais pour assister à la session de Joey Lott sur les patterns en ActionScript 3.0. Sujet très prometteur à la base mais malheureusement bien trop vaste pour être traité dans une conférence grand public. Parmi plusieurs approches, Joey a choisi d'aborder le thème d'une façon la plus généraliste possible. Le résultat est une conférence sur un ton (trop) lent dans laquelle j'ai beaucoup de mal à entrer. Même les quelques exemples techniques (MVC, Memento, Singleton, Iterator) en fin de présentation ne me feront pas changer mon jugement. Je me suis ennuyé et je regrette que des gens aussi talentueux ne soient pas mieux exploités. J'en ressors avec la même amertume que pour Branden Hall.
L'après midi débute sur, selon moi, une des meilleures conférences du festival. C'est en effet avec beaucoup de talent et d'intelligence que Jeremy Keith nous parle d'un sujet sensible face à telle une audience: Ajax Flash Killer? J'ai tout particulièrement aimé son objectivité et ouverture d'esprit. Il ne s'agissait pas de faire de l'intégrisme Javascript ou assimiler Flash à de l'hérésie mais simplement de faire passer un message clair: "faites les choses avec les moyens les plus appropriés". De là s'en est suivi une discussion réellement enrichissante (avec bien entendu une part de subjectivité) sur les critères de sélection d'une technologie ou d'une autre. Un vrai régal distillé avec un sens de la communication inouï.
Dans mon optique d'en apprendre un maximum sur haXe (histoire de faire autre chose que les paroles d'une chanson), je suis resté dans la salle pour entendre Edwin van Rijkom nous parler de son projet phare Screenweaver HX. Edwin est une personne réellement sympathique, qui derrière une apparente simplicité (pas au sens péjoratif du terme, au contraire) cache un véritable génie du code. On ne peut être qu'emballé par autant de motivation et d'envie de partage. Nicolas Cannasse et lui forment un duo de choc dont le travail se doit d'être reconnu. Même si vous ne comptez pas utiliser haXe dans vos projets professionnels, il est impératif d'y jeter un oeil tellement ce langage regorge de bonnes idées.
Est-il utile de préciser mon dernier choix? C'est bien évidemment le moment tant attendu de l'entrée en scène de Francis Bourre. L'auteur de PixLib s'offre même le luxe de faire salle comble.
Il faut avouer que le sujet à traiter est non des moindres. C'est d'ailleurs avec toute la modestie qui le caractérise que Francis ouvre le bal en clarifiant le contenu de sa présentation.
La suite vous la connaissez et on ne s'en lasse pas, tel un messie prêchant la bonne parole, petepx nous ouvre la voie vers un code meilleur (je reste dans l'euphorie des métaphores). Sans démagogie aucune, les qualificatifs me manquent pour exprimer tout le respect que je témoigne à ce retour d'expérience.
Dans la continuité même de cette présentation, je conseil à tous ceux qui veulent aller plus loin de lire ce livre (que je suis prêt à échanger contre un sac -- private joke).
Sur ce, je vais préserver le peu de batterie qu'il me reste afin de pouvoir couvrir le déjà dernier jour.
++ :)
aucun rétrolien
lundi, décembre 4 2006
Par Stéphane Bebrone le lundi, décembre 4 2006, 14:27
Après un voyage horrible (Eurostar en panne, correspondances inexistantes et bus de remplacement), j'ai enfin pu assister aux premières conférences du Flash on the Beach.
Juste un mot sur le festival en lui même. L'organisation semble irréprochable, les moyens mis en place sont nettement supérieurs à ceux déployés pour le Spark Europe l'année passée par exemple. Cela se traduit par des salles mieux aménagées, quelques goodies dès le checkin (sac, teeshirt, stickers...) et une salle avec tous les stands des sponsors (dont Microsoft qui présente sa suite Expression -- toujours aussi impressionnant par leur pouvoir marketing).
Au niveau des conférences, j'ai pu assister hier à la keynote d'ouverture faites par Adobe. Comme on pouvait s'y attendre, rien de bien neuf sous le soleil (enfin plutôt la tempête typiquement anglaise ici). Nous avons eu droit à la traditionnelle démo FlickR en Flex (juste le speaker change), une note sur leur intérêt pour la plateforme mobile, quelques slides sur Appolo et enfin une démo de la future version de Flash. Seul point intéressant de la session en fait. On y apprend par exemple, que le support des importations pour les fichiers Photoshop et Illustrator est totale (un des bénéfices de la fusion).
Un gros changement apparait également dans les composants V2 qui ont complètement été revus. Il ne s'agit pas d'une révision en AS3, ni d'un import des composants Flex (ces derniers comportant trop de features inutiles à Flash) mais bien d'une réécriture totale. Celle-ci s'articulait sur deux points capitaux: la facilité pour le designer de skinner ses composants et le poids ajouté par ceux-ci. J'ai envie de dire pari réussi! L'édition d'un composant n'a jamais été aussi simple puisqu'elle se fait directement en place depuis un clic droit.
La dernière nouveauté se situe au niveau des animations via interpolations qui s'équipent maintenant d'un menu "Exporter en code ActionScript3" (un XML est généré et géré dans une classe Animation). Très utile pour le designer qui veut communiquer son code au developer.
Ensuite, nous avons eu droit à une conférence quelques peu décevante sur ActionScript 3. Je trouve malheureux qu'un après son lancement nous ayons encore des introductions.
Cette première journée s'est terminée sur la session de Nicolas Cannasse et sa présentation de haXe. Une session très agréable où on sent toute la motivation de Nicolas pour faire connaitre et partager son bébé. Mais également, il arrive à communiquer tout le potentiel de sa technologie. Je dois définitivement jeter un regard plus attentif sur haXe.
Je n'ai plus de batterie et ça tombe bien car la conférence sur les designs patterns en ActionScript 3 va débuter.
See you later ;)
aucun rétrolien
samedi, août 5 2006
Par Stéphane Bebrone le samedi, août 5 2006, 17:25
Pour l'anecdote, je répondais à un poste sur le forum Flash de Media-box sur la manière façon de procéder pour atteindre un noeud particulier d'un fichier XML depuis son attribut id.
C'était l'occasion de tester la propriété idMap de l'objet XML apparue sous Flash 8 (remplaçant la fonction caché de Flash MX 2K4). Je tenta donc de compiler cet exemple tout simple:
actionscript
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = function()
{
trace(xml.idMap["2"].attributes.nom);
}
xml.load("data.xml");
Qui me donna pourtant un message d'erreur:
There is no property with the name 'idMap'.
Chose étrange, puisque l'exemple de la documentation fonctionne parfaitement. Sauf qu'à y regarder du plus près, les développeurs ont pris soin de ne pas typer fort leur objet XML.
Je ne vois que deux workarounds au problème:
- Ne pas typer son objet XML. Ca fonctionnera mais bon c'est quand même un peu dommage de devoir se passer du typage fort.
- Editer le fichier intrinsic de la classe XML ([login]\Local Settings\Application Data\Macromedia\Flash 8\en\Configuration\Classes\FP8) et y ajouter var idMap:Array. Ce qui reste dangereux si votre code source doit pouvoir être compilé sur une autre machine.
aucun rétrolien
mardi, août 1 2006
Par Stéphane Bebrone le mardi, août 1 2006, 22:20
Si vous suivez un tant soit peu la blogosphère internationale, vous aurez très certainement remarqué (et lu attentivement) que Grant Skinner a commencé la rédaction de plusieurs articles ayant pour toile de fond le sujet plus que jamais critique qu'est la gestion des ressources sous l'AVM 2. Pour les moins anglophones d'entre vous, je vous propose une adaptation libre du thème afin que vous puissiez plus aisément l'assimiler et le mettre en pratique.
Lire la suite...
aucun rétrolien
mercredi, juin 21 2006
Par Stéphane Bebrone le mercredi, juin 21 2006, 09:17
Lee Brimelow, l'homme derrière l'excellent site GotoAndLearn.com, a démarré un nouveau blog très pertinent puisqu'il a comme sujet Windows Presentation Foundation from a Flash perspective.
Il y parle notamment du résultat de ses premières comparaisons entre WPF et Flash 8. Attention tout de même à nuancer ses propos car il s'agit de comparer une version finale à une beta. Ne manquez pas non plus de lire et d'explorer le code de ses portages d'applications Flash en WPF (même les équations de Robert Penner).
Il est agréable de lire des premiers feedbacks concrets de la part d'un Flasheur de ce qu'est réellement celui qui était annoncé comme un Flash Killer bien avant sa sortie. Un blog de plus à syndiquer.
aucun rétrolien
jeudi, mai 11 2006
Par Stéphane Bebrone le jeudi, mai 11 2006, 08:51
Une fois n'est pas coutume, je vais faire la pub d'une... pub. Opel vient de lancer, en Belgique, une nouvelle campagne qui est, c'est le moins que l'on puisse en dire, interactive.
Hormis la qualité de la vidéo avec incrustation de votre nom au passage, vous aurez droit à une belle surprise si vous entrez votre numéro de téléphone correct (ne fonctionne qu'en Belgique) [1].
Prepare your hair!
aucun rétrolien
lundi, avril 24 2006
Par Stéphane Bebrone le lundi, avril 24 2006, 22:56
Traduit de la documentation ''officielle'' de Adobe Flex Builder Beta 2, ce titre introduit un court article sur une des nouvelles fonctionnalités phares (bien loin d'être la seule) de ActionScript 3.
Lire la suite...
vendredi, avril 21 2006
Par Stéphane Bebrone le vendredi, avril 21 2006, 08:33
Suite à une discussion entre les gens du département affaires légales d'Adobe et Geoff Stearns, FlashObject se voit dans l'obligation de changer de nom. Il semblerait en effet qu'Adobe n'apprécie pas les projets (même OpenSource) comportant le mot "flash" dans leur dénomination.
Je dois avouer que je suis assez étonné de cette prise de position de la part d'Adobe, les derniers événements (prix des licences Flex, ouverture du labs...) m'avaient habitué à une plus grande ouverture d'esprit de leur part.
Soit, on dit adieu à FlashObject et bonjour à SWFObject.
[Source de l'info]
aucun rétrolien
mercredi, avril 12 2006
Par Stéphane Bebrone le mercredi, avril 12 2006, 11:01
Après Fluorine, une nouvelle solution permettant de faire du Flash Remoting en collaboration avec la technologie .NET coté server vient de voir le jour: AMF.NET.
AMF.NET est une solution libre (opensource) de remoting .NET pour Flash. Il introduit une couche simple et légère pour accéder de façon aisée et direct aux méthodes et classes .NET. Le but d'AMF.NET est d'assurer que votre couche de business logique reste totalement indépendante de la présentation et de garantir sa réutilisabilité.
Je ne peux que me réjouir de la pluralité de ces nouvelles solutions gratuites pour .NET, qui j'espère arriveront vite à l'échelle du célèbre AMFPHP.
aucun rétrolien
mardi, mars 21 2006
Par Stéphane Bebrone le mardi, mars 21 2006, 08:43
Juste une note rapide pour signaler que la beta 2 de Flex est disponible au téléchargement depuis hier.
Sont au menu de cette nouvelle version:
- DataBinding: vous pouvez implémenter le mécanisme de DataBinding (l’art de connecter les contrôles visuels aux sources de données) sans écrire manuellement la logique événementielle grâce aux attributs [Bindable] directement sur les accesseurs.
- Initilialization des propriétés héritées en utilisant l'attribut ID: cette option qui existait déjà dans Flex 1.0 et 1.5 avait été brisée en 2.0. La voilà rétablie. Ne connaissant pas d'avantage Flex 1.5, je suis désolé de ne pas trop m'avancer sur le sujet.
- Changements dans l'Event Flow: la beta 2 introduit des changements au niveau des événements appelés lors de l'instanciation d'un composant.
- Disposition Constraint-Based: la syntaxe nécessaire à la création d'un layout basé sur des contraintes à évolué pour utiliser les styles au lieu de constantes.
- Flash Player 8.5 Security Changes: beaucoup de changements relatifs à la sécurité du Flash Player 8.5.
Pensez également à jeter un coup d'oeil sur la liste des changements depuis la beta 1.
Enjoy!
[UPDATE]: Toutes mes excuses pour la faute de frappe énorme sur MXNA. :(
lundi, mars 13 2006
Par Stéphane Bebrone le lundi, mars 13 2006, 23:33
Rostislav Hristov a délivré une première version de Enlarge. Cet outil opensource de preprocessing n'est plus ni moins qu'une extension spécialisée pour ActionScript (ajouts des nouvelles fonctionnalités orientées AS) du très célèbre Jappo dont la réputation dépasse les frontières du monde des développeurs Java.
Lire la suite...
mercredi, février 15 2006
Par Stéphane Bebrone le mercredi, février 15 2006, 22:55
Dernièrement, je me suis inspiré du célèbre moteur de Google Suggest (d'un point de vue fonctionnel) pour délivrer un composant Flash (basé sur le MM V2) permettant de facilement mettre en place ce mécanisme d'autocomplete dynamique au sein de vos applications.
Lire la suite...
jeudi, février 2 2006
Par Stéphane Bebrone le jeudi, février 2 2006, 20:52
Aujourd'hui je me suis vu confronté à un de ces bugs qui vous font regretter amèrement d'utiliser les composants MM Adobe dans vos applications. Je veux parler d'un de ceux qui vous font perdre une masse de temps au lieu d'en gagner. Enfin, cela aura tout de même eu le mérite de me faire penser qu'il était plus que temps que je me plonge définitivement dans l'utilisation de AsWing ou ActionStep.
Lire la suite...
mercredi, février 1 2006
Par Stéphane Bebrone le mercredi, février 1 2006, 10:11
La version BETA 1 (qui comprendra Flex Builder, le Flex Framework et Flex Enterprise Services) est disponible depuis le site Labs de Adobe.
Comme une bonne nouvelle ne vient jamais seul, il faut savoir qu'il y eu des changements importants au niveau des licences Flex. Notammement, le Flex Framework sera disponible gratuitement (or il contient tout ce qu'il faut pour écrire des applications Flex: le compilateur en ligne de commande et le framework).
Le but avoué d'Adobe dans cette manoeuvre est bien entendu de toucher le maximum de développeurs potentiels et les intéresser à Flex sans que le prix soit une barrière. Politique bien judicieuse et je suis satisfait de voir qu'Adobe n'a pas hésiter à reprendre les bonnes idées de feu Macromedia.
[UPDATE]La version est déjà disponible, faute de décallage horaire.[/UPDATE]
[UPDATE]Liste des changements de l'Alpha 1 à la Beta 1[/UPDATE]
samedi, janvier 21 2006
Par Stéphane Bebrone le samedi, janvier 21 2006, 14:46
Vu depuis le blog de Patrick Mineault.
Une nouvelle solution de Flash Remoting avec background ASP.NET, délivrée par les membres du TheSilentGroup.com, vient de voir le jour dans la communauté OpenSource. On ne peut que s'en réjouir au vu des spécificités annoncées:
- Class mapping
- Service browser (directement inspiré de celui de AMFPHP)
- Appel direct d'assembly .NET
- ...
A tester d'urgence :)
Rappelons qu'il existait déjà une alternative gratuite (mais limitée) à la version payante de Macromedia: WerbOrb
vendredi, janvier 20 2006
Par Stéphane Bebrone le vendredi, janvier 20 2006, 16:58
Un utilisateur du forum Flash Media-Box m'a récemment informé que ma classe de Localization semblait ne plus fonctionner depuis la dernière révision du XML2 de Grant Skinner.
L'incompatibilité était simplement due au changement du nom de l'événement de chargement (load qui devient complete). Pour éviter ce genre de désagrément de mon coté, j'ai décidé de déclarer les types d'événements en variable statique. Ainsi, je suis libre de modifier leur valeur concrète par la suite sans que vous n'ayez à modifier votre code.
Tant que j'étais à retoucher cette classe, j'en ai profité pour rajouter quelques fonctionnalités qu'ils manquaient dans mon emballage (wrapper) de la classe XML2. Vous avez maintenant accès aux propriétés suivantes: timeout et connectionTimeout. Ainsi qu'au nouvel événement httpStatus (uniquement appelé lorsque votre SWF est en ligne).
Consultez les sources et notices d'utilisations sur le wiki, et l'exemple mis à jour.
Enjoy!
jeudi, janvier 5 2006
Par Stéphane Bebrone le jeudi, janvier 5 2006, 21:00
J'ai enfin pris le temps de parcourir la première partie de l'interview de Erich Gamma par Bill Venners. Le co-auteur de la référence Design Paterns et fondateur de JUnit (avec Kent Beck), en tentant de répondre à la question Quelle est la meilleure façon de penser pattern?, nous dévoile une vision très pertinente de l'emploi de ces derniers à l'heure où beaucoup (trop?) de développeurs en font le gage d'une architecture applicative professionnelle. Dans cette traduction libre de l'article, je tente avant tout d'insister sur une mentalité qu'il me semble indispensable d'adopter quant à l'utilisation des motifs de conception.
Lire la suite...
un rétrolien
mardi, décembre 20 2005
Par Stéphane Bebrone le mardi, décembre 20 2005, 12:28
Par défaut, le composant Alert de MM ne supporte pas le texte formaté en HTML. Cela ne serait pas très gênant s'il existait une propriété permettant de remédier facilement à ce manque.
Et bien non! Chose d'autant plus étrange que le texte est affiché à l'aide d'un composant TextArea qui possède cette propriété, un simple wrapper aurait donc suffit.
Le composant héritant de la classe Windows, il est néanmoins chose aisée d'accéder à son contenu (content) et après avoir jeté un rapide coup d'oeil sur la source nous connaissons le nom d'occurence du textArea. Il n'y a plus qu'à :)
actionscript
import mx.controls.Alert;
var ca:Alert = Alert.show("<b>Hello World</b>");
ca.content.text_mc.html = true;
dimanche, décembre 11 2005
Par Stéphane Bebrone le dimanche, décembre 11 2005, 15:36
Depuis sa dernière version (1.11), le compilateur libre MTASC propose une nouvelle vérification de compilation assez intéressante: la possibilité d'ajouter un typage fort à ses tableaux (Array).
En pratique, cette option vous est utile lorsque vous désirez vous assurer au moment de la compilation (au runtime rien ne se passera bien entendu) que votre tableau ne contient qu'un type bien spécifique. Garantir un tableau de chiffres par exemple. Comme toutes les bonnes pratiques, ce n'est pas indispensable mais cela permet:
- Une meilleure lecture du code.
- Un debug plus aisé.
- D'avoir une raison de plus pour ne pas compiler sous l'IDE ;)
- ...
D'un point de vue syntaxique, Nicolas a trouvé en plus une façon élégante de l'implémenter qui offre l'avantage de conserver la compatibilité avec une compilation traditionnelle (l'instruction sera simplement ignorée). Attention, il ne doit y avoir aucun espace entre le type et les balises d'ouverture et de fermeture.
actionscript
var a: /*typevoulu*/ Array;
Comme vous pourrez le constater en testant cet exemple, la seconde méthode échouera au moment de la compilation (type error Number should be String):
actionscript
class ArrayTyping
{
var a: /*String*/ Array;
function ArrayTyping()
{
a = new Array();
addString("aaa");
addNumber(2);
}
public function addString(s:String):Void
{
a.push(s);
}
public function addNumber(n:Number):Void
{
a.push(n);
}
public static function main():Void
{
var instance:ArrayTyping = new ArrayTyping();
}
}
2 rétroliens
dimanche, novembre 20 2005
Par Stéphane Bebrone le dimanche, novembre 20 2005, 17:53
Comme je l'avais prévu, je n'ai pas eu le temps de blogger jeudi ma seconde journée au Spark Europe tellement cette dernière fut longue et surtout bien occupée. A vrai dire, je me suis effondré dans mon lit quand j'ai enfin pu retrouver ma chambre d'hôtel... pour une trop courte nuit.
Je profite donc de mon trajet retour pour ressasser tous les souvenirs (avec nostalgie déjà) de ces deux dernières journées et vous livrer mes impressions sur cette deuxième journée, la suite arrivera dans les prochains jours.
Lire la suite...