Il y a environ 3 ans, j’ai décidé de démarrer CocoaHeads sur Paris.

L’idée : partager, communiquer et donner aux développeurs fans des technos Apple une occasion de se rencontrer, et de refaire le monde à la sauce Apple. Environ 35 sessions plus tard, on peut dire que le pari est réussi.

Le mode opératoire : des présentations techniques, pour se retrouver ensuite autour d’un verre ou d’un bon repas. On aurait pu croire qu’il aurait fallu offrir à boire et à manger pour avoir du monde à des sessions techniques de 2 heures, mais en fait non, c’est bien dans ce sens que cela fonctionne.

Après les premières sessions, quasi-confidentielles, l’audience a vite grandie, aidé par la popularité de l’iPhone et de la ruée sur l’AppStore.

Mathieu Vaidis m’a rapidement rejoint. C’est lui entre autre qui a créé et gère le site web sur lequel vous lisez ce billet.

Puis nous avons eu la joie de voir d’autres villes accueillir des groupes CocoaHeads (7 aujourd’hui).

J’ai déménagé sur Toulouse cet été. Je ne peux plus donc passer autant de temps qu’avant sur l’organisation de Paris.

Je suis très heureux de pouvoir vous annoncer que Mathieu continue à s’impliquer fortement, rejoint par Nicolas Lauquin et Mathieu Godart. Je suis confiant sur leur capacité à faire perdurer et ré-inventer CocoaHeads, pour que vous ayez toujours autant de plaisir à venir y assister.

CocoaHeads m’a pris beaucoup de temps, mais m’a apporté tout autant. Je suis ravi de m’être lancé dans cette aventure avec vous.

N’oubliez pas que la valeur de cette communauté provient exclusivement de ce que chacun d’entre nous y apporte. N’hésitez pas à proposer votre contribution, même modeste aux organisateurs actuels. Ils vous en seront reconnaissants.

Merci à vous tous qui avez donné du temps pour préparer une présentation.

Merci d’être venus chaque mois, de bonne humeur et avec un esprit ouvert et critique sur les différents points de vus exposés.

J’en profite pour remercier l’IESA Multimedia, l’école qui nous accueille chaque mois dans des locaux de grande qualité. Merci Pierre-Edouard.

A bientôt. En attendant, n’oubliez pas : “Stay Hungry, Stay Foolish”.

 

Joyeux Noël !

Après de nombreuses heures de travail (et 2 refus de l’App Store tout de même), j’ai le plaisir de vous présenter … l’application iPhone CocoaHeads France. \o/

Elle ne casse pas trois pattes à un canard mais je pense que vous la trouverez très pratique pour lire les news du site. J’ai surtout prévu de pouvoir la personnaliser afin de ne lire les news que de sa ville (pour ceux qui n’en ont que faire des news de Paris, par exemple).

Il y a une partie info avec la possibilité d’écrire directement à l’organisateur pour lui proposer de présenter un sujet (je suis sûr que tout le monde ne l’utilisera que pour cela d’ailleurs). Enfin, allez y mollo, il n’y a que 12 sessions par an tout de même !

Ma fonction favorite servira aux nouveaux et à ceux qui se seraient perdus : pour chaque ville, il y a l’adresse et le pin dans Maps.

Voilà, enjoy et merry christmas to everybody!

Lien iTunes : http://bit.ly/cocoaheadsfr

P.-S. : N’hésitez pas à faire part de vos remarques et suggestions dans les commentaires pour la version 2.0.

P.-P.-S. : J’anticipe – pour ceux qui auront remarqué que la partie info n’est pas en Objective-C - : oui, c’est du html/JavaScript. Je fais à la hauteur de mes compétences hein ! ;) Pour celui qui souhaiterait la réécrire en Objective-C, on va peut-être monter un groupe de travail, alors faites-vous connaître.

 

CocoaHeads bourgeonne !

Avec le printemps, les réunions CocoaHeads en France fleurissent ! Deux villes se sont déjà lancées : Bordeaux et Toulouse.

D’autres sont dans les starting blocks : Lyon, Lille, Strasbourg et Rennes.

Certain ont besoin de salles, d’autres de présentateurs et bien sûr d’une audience :)

Donc, si vous souhaitez contribuer, présenter un sujet ou tout simplement participer, n’hésitez pas à leur faire savoir en allant sur leur page respective et à leur écrire !

P.-S. : Merci à Philippe Laparre, du futur CocoaHeads Lille pour la photo et l’idée du post ;)

 

Parce que l’émulation booste la créativité et que la compétition créé le challenge, BeMyApp s’ouvre au reste du monde… Bon ok,  je m’enflamme un peu là, juste Lyon et Marseille.

Le prochain BeMyApp va donc se dérouler sur 3 villes en simultané – me demandez pas comment cela sera géré techniquement parce que juste en parler me donne des boutons….

L’événement se déroulera le Week-End du 4 au 6 février chez Incube Inside (Incubateur de l’ESCP, Paris 11ème).

Pas mal de Cocoaheads sont venus aux précédents Week-Ends (certains viennent même à chaque fois, n’est-ce pas Ceroce ? :) ). Le principe reste le même : réunir apporteurs d’idées, développeurs et designers afin de créer des applications iPhone et iPad en 48 heures. Voici une petite vidéo explicative pour ceux qui connaissent pas :

Autre nouveauté : 300 beta-testeurs seront sélectionnés pour tester à distance les applications développées et élire “l’application du public”. Là, je suis plus rassuré, c’est M. Guillaume Cerquant qui va mettre ça en place… en plus de son rôle de “professeur”.

Bon c’est le moment ou je fais mon marketing !
L’appli du Jury et l’appli du public gagnent mieux que de l’argent : la quasi-assurance que leur appli sera dans le top 10 de l’apstore.
En effet, on a bien bossé côté sponsors pour offrir aux 2 gagnants une campagne sur AppVip, une campagne appgratuites et une levée de fonds communautaire sur kisskissbankbank. De plus, nous sommes toujours partenaires avec iPhon.fr qui garantit une bonne exposition.
Cerise sur le gâteau, BuzzeBizz va offrir des coques iPhone à tous les participants.

Si vous voulez vous inscrire, c’est sur le site de BeMyApp

A bientôt !

John Karp (un des organisateurs de BeMyApp)

 

Prochain Cocoaheads à Bordeaux

Après le succès de notre premier rendez-vous, nous avons le plaisir de vous annoncer le renouvellement de cet événement jeudi 9 décembre 2010 pour une seconde session.

Niveau lieu pas de changement, toujours à Ingésup, même si cette fois nous essayerons d’avoir une salle plus grande !

Le programme des présentations sera annoncé prochainement dès que celui-ci sera fixé !

Rejoindre l’événement Facebook

 

Comme annoncé dans notre précédent post, la première session des Cocoaheads à Bordeaux aura lieu Jeudi 4 novembre 2010 à 18h dans les locaux de l’école Ingésup à Bordeaux, 88 Quai des Chartrons, 33000 Bordeaux.

Voici les sujets de cette première session :

-Présentation des Cocoaheads, du fonctionnement et discussion sur l’organisation des prochaines sessions.

-Déploiement add-hoc et beta-test d’applications iOS, par Ludovic Ollagnier.

-UITableView : utilisation et customisation, par Boris Charpentier.

Pour vous tenir au courant, n’hésitez pas à nous suivre sur Twitter ou à rejoindre l’événement Facebook.

 

Prochain BeMyApp WeekEnd du 15 au 17 octobre

Lors de la dernière session de CocoaHeads, Cyril, Renaud, Laurent et Pierre ont présenté leur feedback sur le dernier BeMyApp WeekEnd et annoncé que les inscriptions pour cette competition de dev intensif étaient ouvertes. Pour vous inscrire, cliquez ici.

La première présentation était celle de Cyril qui a fait le bilan sur le dernier weekend organisé : une petite centaine de participants, 7 applications développées en 48 heures. Sur les 7 équipes nées pendant le weekend, 5 continuent de travailler ensemble pour terminer ou améliorer leur application. Voici une vidéo qui retranscrit l’ambiance du weekend :

La deuxième présentation était celle de Renaud qui a participé au développement d’une application iPhone pour apprendre l’hiragana, un alphabet japonais. Vous pouvez lire son témoignage directement sur son blog.

Ensuite, Laurent, consultant en accessibilité dans les transports publics, et Pierre, développeur, ont présenté l’application iDact qui propose des plans de métro, gares ou aéroports avec un design et une ergonomie dédiée aux malvoyants.

Pour avoir plus d’information au sujet du week-end et des participants, vous pouvez consulter le site de BeMyApple blog ou directement la page d’inscription.


 

Depuis quelques temps, l’organisation des CocoaHeads en région semble devenir une réelle nécessité.

C’est pourquoi j’ai le plaisir de vous annoncer la création d’un second groupe de CocoaHeads français, dans la ville de Bordeaux.

Pour notre première réunion, l’événement aura lieu Jeudi 4 Novembre 2010, à 18h, dans la salle 1 de l’école d’informatique Ingésup au 89 Quai des Chartrons, 33 000 Bordeaux.

Ce premier événement sera également l’occasion de définir le jour et la semaine du mois pour nous réunir de manière régulière.

Suivre l’événement sur Facebook

Edit: Attention, l’évenement initialement prévu Jeudi 28 Octobre est repoussé au Jeudi 4 Novembre pour des raisons d’organisation. Merci de prendre en compte ce changement!

 

Il fait trop chaud pour… se répéter

Pour ceux qui continuent de coder pour iOS dans la torpeur estivale qui a saisi le pays, une petite astuce, permise par le SDK 4, qui pourrait vous économiser quelques gouttes de sueur.

On adore tous le mot-clé @synthesize qui nous évite déjà d’avoir à tartiner des accesseurs sans intérêt. Malheureusement, pour créer une propriété simple, jusqu’à présent il fallait encore définir séparément le stockage (variable d’instance ou ivar pour les intimes et les Scandinaves) et la propriété elle-même, avec le mot-clé @property :

@interface MaClasse: NSObject {
    NSString *truc;
}
@property(retain) NSString *truc;
@end

@implementation MaClasse
@synthesize truc;
@end

Or, dans la documentation des Declared Properties, on trouve la phrase suivante :

For the modern runtimes (see Runtime Versions and Platforms in Objective-C Runtime Programming Guide), instance variables are synthesized as needed.

Et si on suit la référence indiquée on arrive à :

iPhone applications and 64-bit programs on Mac OS X v10.5 and later use the modern version of the runtime.

Tout est donc OK, on devrait pouvoir profiter de cette fonctionnalité dans les projets iPhone !

Toujours à l’affut de l’économie de lignes de code, quand j’avais lu cette documentation je m’étais précipité sur le projet iPhone le plus proche, avais enlevé une définition d’ivar théoriquement inutile et tenté de compiler le code ainsi allégé :

@interface MaClasse: NSObject {
}
@property(retain) NSString *truc;
@end

@implementation MaClasse
@synthesize truc;
@end

Hélas, quelle déception ! Le compilateur ne semblait pas avoir lu le texte sus-cité et s’entêtait à exiger la définition redondante.
Comme d’habitude Google détenait la clé du mystère : si le code incriminé était rejeté, c’est parce que je compilais pour le simulateur ! Quel rapport me direz-vous ? Eh bien comme vous le savez sans doute, le simulateur iPhone est une application OS X 32 bits… qui ne bénéficie donc pas du fameux modern runtime. Effectivement, le code sans ivar se compilait sans problème dès que je choisissais “Device” comme cible.

Je n’étais bien entendu pas le premier à découvrir ce déplorable état de fait (difficile d’abandonner le simulateur pour économiser quelques lignes par classe !), et la conclusion généralement admise était qu’il perdurerait longtemps, Apple ayant choisi de ne pas rendre le modern runtime accessible aux applications OS X 32 bits, et compiler le simulateur en 64 bits étant exclu pour des raisons évidentes.

C’était sans compter… je ne sais quoi au juste, l’ingéniosité d’un développeur Apple ? Un caprice de Steve ? Toujours est-il que, sans tambour ni trompette (ce n’est même pas mentionné dans les release notes, et le bug radar n’est pas fermé !), le simulateur fourni avec le SDK 4, tout en restant une application 32 bits, utilise le modern runtime – et le compilateur associé est naturellement au courant.

Tout ça (oui, ça fait beaucoup de texte pour parler d’économies de lignes de code !) pour dire que dès aujourd’hui, si vous développez pour iOS (quelle que soit la deployment target, du moment que vous compilez avec le SDK 4), vous pouvez tirer parti de l’instance variable synthesis et omettre ces définitions décidément pas DRY.

Pour finir, à ceux qui n’auront de cesse que la dernière source de duplication stérile de code soit éliminée, et continuent de déplorer qu’il faille encore enfoncer le clou de chaque @property par un @synthesize, sachez qu’il existe un espoir : le compilateur LLVM serait capable d’inférer ces déclarations @synthesize, en l’absence bien sûr d’accesseurs explicites (plus de détails ici). Il semble qu’une petite limitation ternisse encore ce tableau presque idyllique, mais le nirvanā de la propriété en une ligne est plus que jamais à portée de main !

 

Carte de visite

Chaque mois, vous êtes un peu plus nombreux à venir à CocoaHeads. Et chaque mois, vous repartez de CocoaHeads avec des nouvelles idées d’appli plein la tête, aussi heureux et déchainés qu’après une keynote présentant un nouveau iDevice.

Alors, nous nous sommes dit : une telle armée de VRP, on ne peut pas la laisser comme ça, sans outil.

Certains d’entre vous les ont déjà vues lors des précédentes sessions de CocoaHeads ou ont eu la chance d’en recevoir quelques unes lors de la WWDC.

Pour les autres, voici en non-avant première exclusive les fameuses cartes de visite CocoaHeads.

CocoaHeads-Paris_carte_de_visite.png

Voici donc votre outil le plus efficace pour aller prêcher la bonne parole et ramener les brebis égarées dans les pâturages du code propre qui compile sans warning. Vous n’avez plus aucune excuse de ne pas parler de CocoaHeads à vos collègues et amis.

Spécifications techniques :

  • 54 mm par 90mm
  • Revêtement plastique avec traitement spécial pour diminuer les tâches de doigts
  • Autonomie de la batterie en hausse de +30% – Maintenant jusqu’à 1 an
  • Retina Display
  • Calcul automatique de la date de la prochaine session CocoaHeads

N’hésitez pas à emporter quelques cartes lors de la prochaine session CocoaHeads pour les partager autour de vous.

Au fait, j’allais oublier : Oui, je sais, ce code a un warning à la compilation : “NDA” redefined. Mais pour une fois, c’est justifié de laisser un warning !

 

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!