Il n'est pas toujours facile de maintenir la documentation d'un projet de développement, voici donc quelques outils en Python pour publier des documentations au format HTML :
Helpify, un script Python de The Omni Group qui permet de convertir un fichier au format OmniOutliner vers le format d'aide d'Apple (qui est en HTML).
Sphinx, une projet qui prend de plus en plus d'ampleur dans le monde Python (Python, Django, etc.) et qui permet de convertir des fichiers reStructuredText (une syntaxe proche de celle de Trac) vers de l'HTML et du LaTex (et donc du PS/PDF).
Jusqu'à maintenant, quant l'on voulait mettre en place un système de mise à jour de son application, il existait Sparkle. Google vient de publier un logiciel similaire nommé Update Engine (Plus d'infos sur le blog Google).
La question que l'on se pose alors est pourquoi utiliser Update Engine si Sparkle fonctionne très bien. Sur le groupe de discussion Update Engine, Greg Miller nous répond :
Update Engine est de plus bas niveau que Sparkle, et il permet de mettre à jour des applications appartenant à root ou des modules kernel.
Update Engine permet de gérer plusieurs applications (un peu comme le système de mise à jour de Mac OS X).
Par contre, il semple plus complexe à mettre en place que Sparkle dans les cas simples.
Si quelqu'un à l'occasion de tester, ses remarques sont les bienvenues. Et pour en savoir plus sur l'integration dans une application, voici un petit screencast.
Lorsque l'on commence un projet, il n'est pas toujours facile de faire comprendre aux autres intervenants comment l'on imagine l'interface. La solution est donc de créer un prototype de l'interface utilisateur (mockup en anglais). Pour créer ces prototypes, il existe plusieurs solutions :
Voici quelques liens pour comprendre l'évolution du système de fichiers de Mac OS X, de comprendre les FSEvent (évenements du système de fichier) et de les suivre :
Mac OS X 10.5 Leopard: FSEvents, une partie de l'article sur Leopard de Ars Technica. Il revient en particulier sur l'évolution du système de fichier de Mac OS X, l'inspiration venant de BeOS et pour finir les FSEvents.
fseventer, un utilitaire pour suivre les événements de type FSEvents. Il permet donc de suivre les fichiers modifiés, supprimés, etc.
Si vous avez envie d'améliorer grandement votre TextMate, courrez installer ProjectPlus. Il s'agit d'une compilation de plugins de Ciarán Walsh qui permet d'ajouter pleins de bonnes choses dont :
Des badges sur les fichiers pour savoir si les fichiers ont été modifé, etc. (Support de Subversion et Git)
Le gestionnaire de fichier est inclus dans la fenêtre de TexteMate.
Possibilité d'assigner des labels de couleur à des fichiers.
L'état de l'arbre des fichiers du projet est sauvegardé entre deux sessions
Possibilité de changer l'ordre d'affichage des fichiers et dossiers avec surtout la possibilité d'afficher les dossiers en premier.
La spécification OpenGL 3 vient d'être mise en ligne par le groupe Khronos (le groupe responsable de OpenGL, OpenCL, etc...). Il définit un certain nombre de nouveautés pour les développeurs d'applications 3D. Et même si ne ne comprends pas la plupart des évolutions, un point important de ce communiqué est le rapprochement des groupes de travail de OpenGL et OpenCL, un des points importants du futur Snow Leopard. Tout cela promet des optimisations vraiment sympathique.
Dans l'article iPhone Apps I'd Totally Buy, Merlin Mann de 43 Folders propose quelques idées d'applications qu'il voudrait bien trouver sur l'AppStore.
Personnellement, je suis vraiment fan de l'idée d'application permettant de scanner un code barre et de permettre d'acheter le produit scanné sur Amazon. En ce qui me concerne, j'aime bien connaitre le prix d'un produit chez Amazon, vu qu'il est souvent moins chère et que je finis par acheter chez eux. Mais ce qui me semble complexe dans cette application c'est le scanner de code barre en lui même. Le reste c'est de la manipulation de l'API Amazon et un peu de présentation et d'ergonomie. Si seulement j'avais plus de temps, ça serait vraiment une application que j'aimerais bien développé.
Il faut bien commencer quelque part, ça va donc être avec Mercurial que je
vais commencer cette série de billet sur les gestionnaires de version et
comment les utiliser sur Mac.
Mercurial, est donc un gestionnaire de
version distribué écrit en Python, et avec d'après le site du projet beaucoup
d'avantages (comme tous les projets d'ailleurs) :
Rapide
Tenant la charge (aussi bien en terme de nombre de fichiers que du nombre de modifications de ceux-ci)
Robuste (transactions, backup, etc..)
Simple à utiliser, avec divers outils disponibles
Simplicité à adopter (fonction sur Mac, Unix et Windows. Propose des outils de conversion depuis d'autres gestionnaires)
Gratuit et sous licence GPL
Installation
Si vous utilisez Python et que vous avez déjà l'utilitaire easy_install, le plus simple est de l'utiliser :
Pour conclure, Mercurial ne pose pas de problème pour l'installation ou
l'utilisation sous Mac. Les diverses ressources que l'on trouve sur Internet
s'applique très bien sans avoir besoin de chercher des solutions spécifiques.