Recherchons développeur PHP expérimenté (H/F) - CDI

Voilà voilà, on recrute à nouveau:

Développeur PHP MySQL (LAMP) expérimenté (H/F)

Vous avez 2 ans d'expérience minimum en PHP orienté objet et vous maîtrisez parfaitement SQL (MySQL).
Vous avez une bonne connaissance de XHTML + CSS et des standards web.
Vous êtes capable de lire et écrire des documentations techniques en anglais.
Une expérience significative de JavaScript (Mozilla + IE) ou mieux: AJAX, sera un plus.
Lieu de travail: 92240 Malakoff (Métro Etienne Dolet).
Salaire: de 35 à 45 K€ selon expérience.
Contrat: CDI (Freelance et SSII s'abstenir)

Si ça vous intéresse de venir bosser avec moi, n'hésitez pas à me contacter.

C'est une petite boite, une start-up version 2.0 en fait (les "cash burning" en moins). C'est le début, pour l'instant on est 4. Nous développons une application louée à nos clients en mode ASP. Nous participons également activement à différents projets open-source, notamment evocore/b2evolution qui constitue le framework de notre application.

A ce stade du projet nous recherchons exclusivement des développeurs expérimentés, capables de lire et de comprendre du code existant dans une base source de plus de 400 fichiers imbriqués, une hierarchie de classes complexe et une base de données relationnelle de plus d'une centaine de tables liées.

Vous améliorerez des modules existants, en développerez de nouveaux. Vous serez également amenés à intégrer l'application avec les systèmes existants de nos clients.

Cette offre est postée en exclusivité ici pour commencer. Tous commentaires bienvenus.

Crypter les fichiers sur un serveur XP

Attributs avancés

Crypter les fichiers sur le disque dur, ça a pour unique but que si on vous vole la machine on ne puisse pas lire vos données (mots de passe ou autre) en analysant le disque dur. Windows XP intègre un système pour celà: propriétés du fichier > attributs > avancé... > cochez la case "crypter". C'est gratuit et ça marche. Pensez-y avant de partir en vacances! :P (Pensez aussi à faire un backup! ;D)

Le problème c'est que ça ralentit aussi l'accès aux fichiers puisque Windows doit en permamence crypter/décrypter à la volée. Un peu le même problème qu'avec les antivirus qui scannent tout en permanence...

Alors pourquoi faire ça sur un serveur plutôt que de mettre le serveur sous clef... et pui surtout déjà: pourquoi avoir un serveur sous Windows XP!? :!::?:

C'est simple: ici (au bureau) on a des serveurs web (Apache/PHP/MySQL) sur les machines de développement, et on s'en sert pour tester les modifications en temps réel. Mais évidemment, ces machines de développement sont plus exposées au vol que les serveurs. (Et je vous parle pas des portables...)

Et on ne voudrait pas donner nos codes sources à n'importe qui, n'est-ce pas? :roll:

A partir de là, crypter les bases de données et les fichiers PHP pose deux problèmes...

Tout d'abord, une fois les fichiers cryptés, les services Apache et MySQL ne peuvent plus y accéder! Solution: changer la configuration des services en question pour les faire tourner sous le nom de l'utilisateur qui à crypté les fichiers. Moi, ou vous, en l'occurrence! :P [ Service > Propriétés > Connexion ].

Ensuite, il y a un problème de performances assez ahurissant. Crypter le fichier InnoDB de MySQL semble avoir un impact limité. En revanche, crypter l'ensemble des fichiers PHP peut (par le jeu des include) multiplier le temps de génération des pages web par 6 ! :(

La seule solution que j'ai trouvée à ce problème pour l'instant, c'est de ne crypter que des fichiers choisis. Les fichiers de config en particulier (ceux qui contiennent des mots de passe en premier lieu) ainsi que d'autres fichiers stratégiquement choisis pour qu'on ne puisse pas faire grand chose sans eux.

Une solution qui serait peut être plus intéressante serait d'avoir un script qui crypte l'ensemble des codes sources le soir en partant et les redécrypte le matin en arrivant... en partant du principe que les PCs ont moins de risques de vol aux heures de bureau qu'en dehors. Je me demande s'il existe des solutions élégantes pour ça... :?:

Pour finir, une petite astuce pour avoir l'option Crypter/Décrypter directement dans le menu contextuel du fichier: avec RegEdit, il faut aller dans HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion \Explorer\ Advanced puis créer une Valeur DWORD nommée EncryptionContextMenu et lui assigner la valeur 1.

Quelques ressources supplémentaires:

Un grand écran, ça compte énormément!

Configuration 2 écrans sous Windows XP

J'ai passé presque deux ans à développer b2evolution sur un écran plat de 15" en 1024*768. Et j'ai passé presque deux ans à croire que j'étais bien équipé! (Juste parce que je n'avais plus à subir la fatigue visuelle des tubes cathodiques du XXème siècle!) Arf' :roll:

Je me suis retrouvé comme un con ce week-end à essayer de débugguer ledit b2evolution depuis chez moi avec ledit petit écran que je croyais grand! Il faut dire qu'entre temps j'étais passé au double écran 18/19" 2 fois 1280*1024 au bureau. C'est à dire un bureau de 2560 * 1024 pixels, c'est à dire 2,6 millions de pixels, c'est à dire 3,32 fois plus que chez moi. Et ça fait une vraie différence!

Vous vous demandez pourquoi je parle en pixels et pas en pouces ou en centimètres? Parce que seuls les pixels déterminent la quantité d'informations que vous pouvez afficher simultanément!

Vous vous demandez pourquoi mon 19" ne fait que 1208*1024 et pas 1600*1200 ? Parce que j'aime bien que lesdits pixels soient d'une taille respectable. Trop de pixels sur une trop petite surface et vous pouvez effectivement afficher beaucoup d'informations, mais tout est écrit tellement petit, que ça fait mal aux yeux!

Concernant le deuxième écran, au début je ne l'ai branché que par curiosité, pour m'amuser un peu, pour essayer les possibilités de la carte graphique de mon PC, et surtout parce que personne ne se servait de cet écran ce jour là...

Aujourd'hui je serais prêt à mordre quiconque voudrait me le reprendre! :P

Bien sûr on travaille difficilement avec un oeil sur chaque écran! Je pense qu'on finit irrémédiablement avec un écran principal en face de soi et un écran annexe à côté. Mais cet écran annexe est incroyablement utile! Et pas seulement pour y laisser trainer une horloge et un player mp3!

Personnellement j'utilise cet écran avec 2 fenêtres principales: la console Javascript de Firefox et les résultats de recherche de PhpED. Lorsque l'on fait du développement Web, il est tout simplement indispensable de garder un oeil sur la console Javascript, faute de quoi on se retrouve avec des sites ou des applis pourris de bugs "qu'on avait pas vus"... et justement... J'hallucine en voyant le nombre d'erreurs qui viennent se logguer dans cette fenêtre en visitant des sites grand public... même développés par des SSII a priori respectables. (pas de noms, c'est pas le sujet! :P)

De même, les résultats de recherche dans une fenêtre sur le côté, ça permet de garder l'écran principal pour scroller dans le code, et l'écran annexe pour scroller dans la recherche. Avec des gros codes source, c'est pas superflu!

Idem avec Photoshop ou Dreamweaver: à chaque fois, le simple fait de pouvoir déplacer certaines palettes d'outils ou de résultats sur l'écran d'à côté, ça permet de libérer de place extrêment utile pour voir le document principal.

Pour finir, j'ambitionne également de garder un oeil sur la santé de mes serveurs avec quelques petites fenêtes de monitoring sur le deuxième écran... mais je n'ai pas encore trouvé l'appli adaptée...

Le côté obscur de tout ça: quand on ouvre un grand nombre de fenêtres simultanément, on est vite perdu dans la multitude de boutons dans la barre de tâches en bas de l'écran... idem avec Alt+Tab! Va aussi falloir se pencher sur ce problème là...

Dating a geek

"The nice thing about most computer boys is that they don’t typically check out other women. The downside of this is that they don’t notice the other women because they are too busy checking out people’s cell phones and iPods."

Ever wondered how your girlfriend feels about your overall geekiness? This post on "Dating an Apple Developer" is a gem. Nice template design too. B)