Archives de catégorie : Non classé
Villeneuvedascq.ovh
J’ai lancé un nouveau site avec un nom de domaine que je m’étais réservé (jadis). Et oui les projets mettent parfois du temps pour éclore:
Réservé le 01/10/2015 pour faire un truc sur ma ville…
Pendant un certains temps je voulais créer un bot/crawler capable de parser automatiquement les événements (quoi, quand, où) mais j’ai vite été calmé par la complexité pour extraire ces données. J’étais parti au début avec NLTK en Python mais j’avais l’impression de partir de loin rien que pour le « quand » qui est à mon avis l’information la plus structurée versus le « où » et le « quoi ». Quand je regarde aujourd’hui certaines API de bot, il y a tout de même de belles choses en reconnaissance de texte, cependant on ne peut pas construire un crawler sur une API ($$$) il faut maitriser l’algo.
Bref, entre temps je suis revenu à une ambition plus lean startup/mvp et j’ai décidé de ne pas crawler le monde entier mais juste le site de la mairie de ma ville, et de faire un bon vieux scrapping des données qui m’interessaient le quand/quoi+où.
En une soirée, j’ai mis au point un scrappy pour collecter mes données.
Puis j’ai pris mon temps pour coder le site en Symfony 3. Découvrir Doctrine, etc; Je me suis bien aidé de Linkedin Learning, hop quelques videos et la glace était brisée.
Le but du site est simple, passer d’un mode pull où on doit aller chercher l’information à un mode push par email. Je scrappe les événements de ma ville pour en faire une newsletter hebdomadaire. Je suis parti du constat qu’à Villeneuve d’Ascq il se passe énormément de choses et que c’est dommage de passer à coté de supers événements par manque de communication. Je me suis donc fait ma newsletter des événements de Villeneuve d’Ascq à la semaine.
Au passage j’ai rajouté une carte de curiosité sur la ville. J’espère y référencer au fil de l’eau les bâtiments, les œuvres d’arts, etc qui me plaisent.
Pour conclure et pour le fun :
- Une semaine apres la mise en ligne je me suis fait pourrir mon formulaire par un bot… hop intégration de Recaptcha de Google
- Je me suis aussi fait pourrir par des utilisateurs cette fois par manque de validation de l’email (j’acceptais tout par générosité). Et hop validation d’email.
- Pour vous abonner, c’est ici : https://www.villeneuvedascq.ovh
Mini fourgon / van
Je suis fan des mini fourgons/van notamment ceux qui allient un volume tout en restant très compacts en largeur.
Quelques photos de modèles retro :
GME Rascal

Toyota Hiace

Toyota Lite Ace

Nissan Vanette

Mistubishi Delica

CSV Starwars names
En tapant sur google filetype:csv starwars names, j’ai quasiment rien trouvé pour avoir rapidement une liste des personnages principaux.
Voici ma liste:
Build un docker avec le Dockerfile
Première personnalisation d’un Docker sur la base Nginx + PHP de Richarvey
Il suffit d’éditer un fichier Dockerfile
admin@serveur-1:~$ cat Dockerfile
FROM richarvey/nginx-php-fpm
COPY ./index.php /usr/share/nginx/html/
Puis de build :
docker build -t mydockername .
prochaine étape, pusher sur un repository.
Voici un guide pour découvrir toutes commandes du Dockerfile
Docker sur Ubuntu 14
Premier lancement d’un conteneur Docker.
1/ installation
/etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-trusty main
sudo apt-get update
$ sudo apt-get install docker-engine
$ sudo docker run hello-world
2/ output
admin@serveur-1:~$ sudo docker run hello-world
Hello from Docker. This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com
For more examples and ideas, visit: https://docs.docker.com/userguide/
admin@serveur-1:~$
Repondre à un probleme
très bon retour en ce début de vidéo : https://www.youtube.com/watch?v=7j7vfl9Zyys
les produits/services répondent à des problèmes mais ce qui importe c’est de présenter les raisons qui font que le produit peut résoudre le probleme :
=> dire comment on a cracké la raison de non-résolution d’un problème.
Cloud9 self hosted
Après un premier essai insatisfaisant, j’ai ressayé de mettre en place Cloud9 sur mon VPS. En le mettant à jour depuis le git, j’ai résolu les problèmes qui m’avaient frustrés.
Les petits soucis à régler :
- remplacer node par nodejs
- je monte un serveur mutu en sftp, il faut activer fuse
- ajouter l’user au groupe fuse
- mettre les droits adéquates sur /dev/fuse
Les vrais plus pour moi :
- l’accès sftp à mon mutu, cette fonctionnalité est payante dans la version SaaS, le ftp lui n’est pas assez performant
- la possibilité d’éditer des scripts et de les tester dans la partie console
Ma commande de lancement:
nodejs server.js -p 8080 -l 0.0.0.0 -a login:pwd -w /home/user/workspace/
plan universel
INTRODUCTION
- Expliquer le probleme
- Preciser les fausses solutions et pourquoi elles sont mauvaises
- Presenter une alternative en insistant sur les 3 motivateurs, aider à …les autres, ressentiment
PRESENTER LA SOLUTION
- Definir le concept
- Expliquer les principes
- Donner la recette, étape par étape
DETAILLEZ LA SOLUTION
- etape 1 :
- etape 2 :
- etc.
MONTREZ L’AVENIR
- Les résultats, où ça marche, ou ça ne marche pas
CONCLUSION
- Rappel de la méthode Complet
- motivation et principes
- perspectives
Test de Profil chez OVH (ADSL)
Je viens de réaliser un script qui change le profil de connexion entre le modem et le DSLAM. Cela impacte notamment la correction des erreurs, le rapport performance/qualité, et la stabilité ou désynchro (voici l’article de réference : https://www.ovh.com/fr/a1649.adsl-vdsl-quel-profil-box )
Le mode opératoire était simple, changer le profil, attendre 5min, lancer le chrono pour télécharger une fichier de 100Mo, fin du chrono.
Dès que j’ai mis au propre le script, je vais le publier ici.
Voici les résultats : le meilleur profil me permet d’atteindre plus de 7,27Mbps en DL alors que le mode par défaut (interleaved) me fait atteindre 6,2Mbps.
| Profil | Secondes |
| G.INP TURBO SNR1 FAST | 110 |
| TURBO SNR1 FAST | 113 |
| G.INP TURBO SNR3 FAST | 120 |
| TURBO SNR3 FAST | 123 |
| AUTO-16M | 128 |
| AUTO-12M | 128 |
| AUTO-8M | 129 |
| Interleaved | 129 |
| G.INP Interleaved | 130 |
| G.INP AUTO-12M | 131 |
| G.INP AUTO-16M | 131 |
| G.INP Fast | 131 |
| G.INP AUTO-8M | 132 |
| Fast | 135 |
| SNR 6-9 | 146 |
| G.INP SNR 6-9 | 150 |
| SNR 9-12 | 169 |
| G.INP SNR 9-12 | 171 |
| SNR 12-15 | 197 |
| G.INP SNR 12-15 | 200 |
| SNR 15-18 | 230 |
| G.INP SNR 15-18 | 233 |
| G.INP AUTO-4M | 242 |
| AUTO-4M | 243 |
| G.INP AUTO-1M | 300 |
| AUTO-1M | 466 |
| AUTO-2M | 490 |
| G.INP AUTO-2M | 490 |

