Archives pour la catégorie "Développement"

Tutoriel: Gestion de projet informatique avec Subversion et Trac

Icon for post #70

Le concept de “gestionnaire de versions” m’a toujours attiré, mais en dépit de ma bonne volonté, je n’ai jamais été capable de mettre en place (et surtout de configurer) mon propre serveur svn couplé avec l’outil Trac. Depuis quelques temps, je cherchais donc une plateforme d’hébergement de projets gratuite, afin de me familiariser avec ces outils. Hé bien j’ai finalement découvert Assembla hier soir, service qui vous propose d’héberger pour vous tous les outils nécessaires à la gestion d’un projet informatique : Subversion, Trac, Wiki, Teams, Chat… Bref c’est exactement ce qu’il me fallait. Et en plus c’est gratuit :P

Assembla provides tools and services for accelerating software development

Inscription et création d’un projet

Pour l’inscription, c’est par ici. Une fois enregistré, vous pouvez créer un “espace de développement” (space en anglais) sur cette page. Entrez le nom de votre projet, un identifiant pour les différentes URLs qui seront générées par la suite, et surtout prenez soin de cocher la case “Software developers (trac) - Subversion with TRAC ticketing” dans “Setup this space for”. Autant rester indépendant de la plateforme utilisée, aussi bonne soit-elle :)

Utiliser Subversion

Si vous ne savez pas ce qu’est Subversion, cet article ne vous était pas destiné. Cependant, maintenant que vous êtes là, je ne vais pas m’en plaindre, hein :P Subversion est donc un gestionnaire de versions qui fonctionne sur le mode suivant : vous créez sur un serveur distant un dépôt contenant tous les fichiers de votre projet. Ensuite, vous et vos co-développeurs pouvez ajouter, modifier ou supprimer des fichiers sur le dépôt en créant de nouvelles révisions. Tout étant centralisé, la gestion est grandement simplifiée, et les risques de corruption des fichiers sont minimisés (le serveur arrive entre autres à détecter et gérer les conflits de versions). Read more »

13 commandements qui régissent tout projet informatique

Icon for post #57

Trouvé à l’instant sur le blog Marketing & Technologies, de Julien Bonnel (allez-y pour consulter la liste complète des “lois” qui s’appliquent à tout projet informatique)
En ce qui me concerne, je suis particulièrement fan des principes suivants:

Loi de Brooks
“Ajouter des développeurs à un projet qui est déjà en retard, le retarde encore plus”

Loi de Conway
“Tout logiciel reflète l’organisation qui l’a créé”

Loi de Golub
“Un projet mal planifié prend trois fois plus de temps que prévu, alors que le même projet, bien planifié, n’aurait pris que deux fois le temps prévu”

Loi de Hofstadter
“Une tâche prend toujours plus de temps que prévu, même si vous prenez en compte cette loi”

Loi de Pareto
“les premiers 80% d’une tâche prennent 20% du temps. Les 20% restants prennent 80% du temps”

Principe de Peter
“Dans toute hiérarchie, toute personne a tendance à s’élever jusqu’à son niveau d’incompétence”

Tellement simple

Tellement vrai :D

[Project Euler] Problème 21, vive le BruteForcing :p

Icon for post #54

…parce que c’est quand même particulièrement bon de voir son ordinateur bosser à plein temps pour une fois! Pour rappel, Project Euler (en anglais) est un site qui propose des dizaines de problèmes mathématiques à résoudre grâce à une logique implacable, des algorithmes de programmation très poussés… ou tout simplement avec la très connue méthode dite de Brute Force ! (en gros on tente de créer un algorithme pas trop lent et on laisse l’ordi exécuter des calculs monstrueux en priant pour que ça ne prenne pas trop de temps et que l’ordi ne plante pas à 99% de la recherche) ^^

Je suis tombé tout à l’heure sur le Problème 21 dont voici l’énoncé :

Let d(n) be defined as the sum of proper divisors of n (numbers less than n which divide evenly into n).
If d(a) = b and d(b) = a, where a ≠ b, then a and b are an amicable pair and each of a and b are called amicable numbers.

For example, the proper divisors of 220 are 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 and 110; therefore d(220) = 284. The proper divisors of 284 are 1, 2, 4, 71 and 142; so d(284) = 220.

Evaluate the sum of all the amicable numbers under 10000.

Peut-être est-il possible de trouver la solution de tête (tous mes voeux de no-lifitude à ceux qui en sont capables), mais pourquoi faire simple quand on peut faire compliqué, hein ? Voici donc mon petit programme en PHP :
Read more »

Tutoriel: lister les opcodes générés par vos scripts PHP

Icon for post #45

PHP est un langage interprété : les fichiers qui contiennent le code que vous tapez sont parsés par le moteur du langage (le fameux “Zend Engine”), et les instructions qu’ils contiennent sont compilées en des instructions de plus bas niveau, instructions qui seront à leur tour exécutées pour produire le résultat attendu (ou des bugs :P ). Ce processus (code initial => compilation en opcodes => exécution) a lieu à chaque fois que le script est appelé, à moins que vous n’utilisiez un cache d’opcodes qui accélérera l’exécution de vos scripts en faisant sauter des étapes au moteur de PHP…
Maintenant, si vous êtes un maniaque de l’optimisation, ou bien si comme moi vous vous intéressez à tout donc à ce qui se passe “sous le capot de PHP”, vous vous demandez sans doute comment accéder à ces instructions de bas niveau ;)
Read more »

Sortie de la très attendue nouvelle version de WampServer

Icon for post #33

Enfin !

La nouvelle version du très populaire WampServer (anciennement WAMP 5) est maintenant disponible sur le site officiel, qui a pris un coup de jeune pour l’occasion. :P

WampServer est un logiciel qui permet d’installer en quelques secondes un environnement de développement web complet, composé d’un serveur web (Apache), du moteur du langage de programmation web par excellence (PHP), d’un SGBDR (MySQL) et d’un outil de gestion de ce système (PhpMyAdmin).

Cette nouvelle version apporte son lot de nouveautés : nouveau logo, nouvelle page d’accueil, nouvelles icones… On retiendra surtout la possibilité d’installer plusieurs versions d’Apache, PHP et MySQL, ce qui permet de développer dans les conditions contraintes exactes d’un serveur de production. ;)

Par ailleurs, le système d’add-ons semble avoir été amélioré, même si aucun véritable add-on n’est encore disponible… J’attends notamment des optimiseurs, caches d’opcodes et autres joyeusetés ayant pour but de diminuer la vitesse de chargement des pages :)

Voici les numéros de version exacts des logiciels installés par WampServer 2.0 :

  • Apache
    version 2.2.6
  • PHP
    version 5.2.5
  • MySQL
    version 5.0.45
  • PhpMyAdmin
    version 2.10.1

Et enfin quelques liens autour de ce projet :

Page Suivante »