PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Influence PC : Mon premier hackaton : le London GameCraft 2013 en 12h !

mercredi 9 octobre 2013 à 01:15

En stage à Londres cet été pour une durée de trois mois, je me suis rendu avec deux amis de promo à un concours de développement organisé par Global GameCraft dans les locaux de Skill Matter. Le premier est connu pour organiser des concours de dev de jeux vidéo un peu partout en Europe, le second pour accueillir ce genre d’évènement dans ses locaux à Londres (ainsi que des conférences sur des sujets très variés tournant toujours autour de la programmation). L’évènement avait été annoncé ici et .

Folle ambiance : près de 70 personnes sont venues d’après mes souvenirs. Dès l’arrivée, blocs notes, stylos, magasines sont posés sur les tables, des cafetières inépuisables et du thé attendent les participants. Pour les repas, des livraisons continues provenant de Pizza Express.

London GameCraft

Douze heures plus tard, après des heures d’acharnement dans le langage de votre choix, la voix du grand barbu roux retenti : c’est fini ! Le networking commence : il s’agit de faire la connaissance des autres participants (à l’aide de bières arrivées discrètement dans des caisses pleines de glaçons).

Because Skill Matter

Les organisateurs ont eu une idée assez fun, ils ont distribué à chaque participant une brique de Lego que nous devions remettre à un autre développeur dans le but de classer les meilleurs projets. C’est un exercice ultra difficile, que privilégier ? Les projets réalisés à la sueur du front, sans framework ? Ou ceux ayant le gameplay le plus fun ? Ou encore ceux ayant suivi le thème du hackaton à la lettre avec une mécanique de jeu ouffissime ?

PRISMatic

J’ai pour ma part découvert Pygame lors de ce hackaton et créé PRISMatic. Un projet un peu trop ambitieux rattrapé par la réalité. Il n’y a pas grand chose à jouer, il faut l’avouer, mais c’est le fruit de cette superbe expérience. Vous pouvez le télécharger ici.

Gravatar de Influence PC
Original post of Influence PC.Votez pour ce billet sur Planet Libre.

Noireaude : Kapow – Embarquez votre pointeuse partout sous GNU/Linux

mardi 8 octobre 2013 à 18:17

kapow

Kapow est une des ces applications dont je dirais (au risque de vous lasser) qu’elle roxxe du poney. Celle-ci va vous permettre d’embarquer partout votre pointeuse personnelle sous GNU/Linux, afin de mémoriser très exactement le temps que vous passez sur un projet et de facturer à votre client la somme exacte à percevoir. C’est super bien pensé et pour ne rien gâcher, très facile à utiliser.

Pour ajouter un projet il suffit de lancer l’application et de cliquer sur session/ajouter, avant de lui donner un nom. Vous pourrez ensuite paramétrer le projet en fonction de vos besoins et choisir entre autres la valeur monétaire, le taux horaire et le taux de TVA que vous souhaitez appliquer.

kapow-usages

Une fois que tout est ok il ne vous restera plus qu’à démarrer et à stopper le chrono à chaque fois que vous travaillez sur le projet en question. Une nouvelle entrée sera alors générée et vous pourrez à touts moments accéder au résumé global du temps écoulé et de la somme à percevoir pour une tâche. Vous pourrez également planifier des tâches récursives démarrant et (ou) s’arrêtant à heures fixes.

En résumé Kapow est un super outil pour les entrepreneurs, mais il peut également s’avérer très utile pour ceux qui veulent noter leur heures de travail quotidiennes, hebdomadaires ou mensuelles. C’est un très bon aide-mémoire. J’ai adoré le principe et l’interface du logiciel qui est minimaliste, mais qui contient tout ce dont vous avez besoin pour bosser.

Si ça vous intéresse Kapow est publié sous licence GPL et l’application est disponible pour les principales distributions GNU/Linux, Windows et Mac OS X, depuis la page téléchargement du projet.

Si vous tournez sur Ubuntu et dérivés vous pouvez également installer Kapow à l’aide du PPA suivant et de ces quelques lignes de commande :

Installer Kapow sur Ubuntu et dérivés :

sudo add-apt-repository ppa:gottcode/gcppa
sudo apt-get update
sudo apt-get install kapow

Désinstaller Kapow :

sudo ppa-purge ppa:gottcode/gcppa

ou

sudo add-apt-repository -r ppa:gottcode/gcppa
sudo apt-get update
sudo apt-get remove kapow

Si vous tournez sous Archlinux et Manjaro, Kapow est disponible via AUR à l’aide de la commande suivante :

yaourt -S kapow

Amusez-vous bien et ne bossez pas trop.

source

Gravatar de Noireaude
Original post of Noireaude.Votez pour ce billet sur Planet Libre.

cpc6128 : Création d’un atelier pédagogique pour apprendre à programmer avec le langage Linotte

mardi 8 octobre 2013 à 18:03

Cet article décrit différentes étapes à suivre pour réaliser un atelier d’initiation à la programmation. Cet atelier peut être destiné à des enfants dans les écoles.

Pour apprendre à programmer d’une façon amusante, nous partons du principe que l’enfant doit pouvoir interagir avec l’ordinateur avec des mots simples, courts et surtout que le résultat doit être visible graphiquement.

L’avantage de cet atelier est qu’il est réalisé en langage Python : le professeur peut ainsi le modifier et l’améliorer facilement s’il connait le langage Python (Jython en fait) et les mécanismes des greffons proposés par le langage Linotte.

Linotte est un langage de programmation simple, mais nous allons le simplifier en peu plus !

Ainsi, nous allons créer un greffon graphique qui affiche une horloge sur l’écran.

Afficher une horloge est assez complexe, car il faut dessiner un cercle, afficher les chiffres autour du cadran et bien positionner les aiguilles.
Nous allons cacher cette complexité en le réalisant directement en langage Python.

Nous laisserons à l’enfant seulement la possibilité d’afficher l’horloge, puis de modifier les aiguilles de l’horloge directement en langage Linotte.

Etape 1 : l’écriture du greffon minimal en Python

La structure d’un greffon graphique en langage Python est la suivante :

from org.linotte.greffons.externe import Graphique
from java.awt import Color
class Simple(Graphique):
#### Methodes liees a l aspect graphique
def projette(self, dessin):
dessin.setPaint(Color.BLUE)
dessin.drawString("Hello !", 100, 100)
return None
def getShape(self):
return None
#### Methodes liees au greffon Simple
def slot_message(self):
return "Coucou !"

Ce petit bout de code permet d’afficher le texte Hello sur la toile et propose la fonction message().

Pour utiliser ce greffon, il va falloir l’enregistrer dans un fichier Simple.py (attention à bien respecter la casse) dans le répertoire greffons de votre Atelier Linotte.
Ensuite, il faut signaler ce greffon avec ces caractéristiques auprès de l’Atelier, pour cela, créez le fichier simple.greffon.xml contenant ce xml :



Exemple simple
R.M
0.1

Vous enregistrez ce fichier dans le répertoire greffons de votre Atelier.

Suite à ces deux actions, relancez l’Atelier : votre greffon est prêt à être utilisé !

Testons-le avec cet exemple dans l’Atelier :

principale :
démo est un simple
début
projette démo
affiche démo.message()

Voici le résultat sur la toile :

Et sur le tableau :
Coucou !

Nous avons toutes les bases pour créer notre Atelier de programmation !

Etape 2 : l’écriture du greffon Horloge en Python

Nous allons maintenant créer un greffon en Python qui affiche une horloge.

Voici le code Python que vous allez sauvegarder dans un fichier Horloge.py dans le répertoire greffons :

from java.awt import Color, BasicStroke, Graphics2D
from org.linotte.greffons.externe import Graphique
import math
import time

class Horloge(Graphique):

#### Attributs de l'objet Horloge
heure = 0
minute = 0
seconde = 0

#### Methodes liees a l aspect graphique

def projette(self, dessin):
x = self.getAttributeAsBigDecimal("x").intValue()
y = self.getAttributeAsBigDecimal("y").intValue()
rayon = self.getAttributeAsBigDecimal("rayon").intValue()
dessin.setPaint(Color.DARK_GRAY)
dessin.setStroke(BasicStroke(3))
dessin.drawOval(x, y, rayon * 2, rayon * 2)
x2 = x + rayon
y2 = y + rayon
# Affichage de l'heure
dessin.setPaint(Color.BLUE)
dessin.setStroke(BasicStroke(5, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))
dessin.drawLine(x2, y2, int(x2 + rayon * 0.6 * math.cos((self.heure - 3) * 2 * math.pi / 12)), int(y2 + rayon * 0.6 * math.sin((self.heure - 3) * 2 * math.pi / 12)))
# Affichage des minutes
dessin.setPaint(Color.BLACK)
dessin.setStroke(BasicStroke(3, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))
dessin.drawLine(x2, y2, int(x2 + rayon * 0.85 * math.cos((self.minute - 15) * 2 * math.pi / 60)), int(y2 + rayon * 0.85 * math.sin((self.minute - 15) * 2 * math.pi / 60)))
# Affichage de la trotteuse
dessin.setPaint(Color.RED)
dessin.setStroke(BasicStroke(1, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))
dessin.drawLine(x2, y2, int(x2 + rayon * 0.9 * math.cos((self.seconde - 15) * 2 * math.pi / 60)), int(y2 + rayon * 0.9 * math.sin((self.seconde - 15) * 2 * math.pi / 60)))

# Les chiffres
dessin.setPaint(Color.BLACK)
for c in range(1, 13):
dessin.drawString(str(c), int(x2 + rayon * 1.2 * math.cos((c - 15) * 2 * math.pi / 12)), int(y2 + rayon * 1.2 * math.sin((c - 15) * 2 * math.pi / 12)))

return None

def getShape(self):
return None

#### Methodes liees au greffon Horloge

def slot_heure(self, h):
self.heure = int(h)
# Force le rafraichissement de la toile :
self.getRessourceManager().setChangement()
return True

def slot_minute(self, m):
self.minute = int(m)
# Force le rafraichissement de la toile :
self.getRessourceManager().setChangement()
return True

def slot_seconde(self, s):
self.seconde = int(s)
# Force le rafraichissement de la toile :
self.getRessourceManager().setChangement()
return True

Le descripteur du greffon nommé horloge.greffon.xml contient :



Atelier Horloge
R.M
0.1
50
50
100

Après avoir créé ces deux fichiers, vous relancez l’Atelier.
Maintenant, nous pouvons créer notre Atelier de programmation !

Etape 3 : Création d’un Atelier de programmation niveau 1

Ce premier niveau permet d’afficher l’horloge avec l’heure souhaitée.

L’enfant doit être accompagné pour réaliser le programme suivant :

principale :
comtoise est une horloge
début
projette comtoise
évoque comtoise.heure(15)
évoque comtoise.minute(35)
évoque comtoise.seconde(50)

Le résultat est directement visible après l’exécution du livre :

Compliquons un peu plus les choses …

Etape 4 : Création d’un Atelier de programmation niveau 2 avec une boucle

Pour ce deuxième exemple, nous allons ajouter une boucle permettant d’afficher l’heure en temps réel :

principale :
mon horloge est une horloge
début
projette mon horloge
tant que vrai, lis
évoque mon horloge.heure(heure)
évoque mon horloge.minute(minute)
évoque mon horloge.seconde(seconde)
attends 1 seconde
ferme

Il ne manque que le son du tictac !

Etape 5 : Création d’un Atelier de programmation niveau 3 avec des conditions, des boucles

Et pour les enfants motivés, nous allons réaliser un vrai programme.
Le programme suivant affiche une comtoise, une vraie.. si si ! Avec le balancier qui se balance !

Voici le programme qui doit être réalisé :

principale :
pièce est une toile, couleur vaut "vert bouteille"
comtoise est une horloge, x vaut 200, y vaut 50, rayon vaut 80, position vaut 1
coffre est un rectangle, couleur vaut "puce", plein vaut "oui", position vaut 0,
x vaut 180, y vaut 15, hauteur vaut 500, largeur vaut 205
balancier est un cercle, plein vaut "oui", x vaut 280, y vaut 400, position vaut 1,
couleur vaut "platine", rayon vaut 20
tige est une ligne, x1 vaut 280, y1 vaut 250, x2 vaut 280, y2 vaut 400, position vaut 1,
couleur vaut "platine", taille vaut 5
i est un nombre
sens est un drapeau valant vrai
début
projette comtoise
projette coffre
projette balancier
projette tige
tant que vrai, lis
évoque comtoise.heure(heure)
évoque comtoise.minute(minute)
évoque comtoise.seconde(seconde)
// Evolution du balancier
pour i de 0 à 40 suivant i + 5, lis
si sens est vrai, lis
x de balancier vaut 260 + i
x2 de tige vaut 260 + i
ferme
sinon lis
x de balancier vaut 300 - i
x2 de tige vaut 300 - i
ferme
attends 1/8 seconde
ferme
sens vaut non (sens)
ferme

L’Atelier de programmation est terminé.

Conclusion :
Le professeur peut adapter son cours en modifiant le greffon et les enfants ont découverts les bases de la programmation simplement et en s’amusant.

Vous trouverez tous les fichiers de l’exemple Horloge sur forum.

Un autre atelier pédagogique pour apprendre à programmer est proposé : Le robot.

Gravatar de cpc6128
Original post of cpc6128.Votez pour ce billet sur Planet Libre.

Articles similaires

Noireaude : Qtractor – Un soft sympa pour ceux qui veulent se mettre à la MAO sous GNU/Linux

mardi 8 octobre 2013 à 16:18

qtractor

Si vous avez envie de vous mettre à la MAO (musique assistée sur odrinateur) sous GNU/Linux Qtractor est un soft qui peut éventuellement vous plaire. Qtractor permet de disposer d’un séquenceur multipiste audio / MIDI, utilisant entre autres ALSA et JACK pour fonctionner. Il est écrit en C + + et embarque une interface basée à l’heure actuelle sur Qt4 (4.8.5). Ses fonctions sont très nombreuses mais si nous devions en citer quelques unes, on notera que Qtractor permet l’enregistrement et le séquençage audio en MIDI, qu’il permet de piloter plusieurs claviers (synthétiseurs) virtuels, qu’il permet une édition linéaire non destructive de vos fichiers, que vous disposez d’un nombre de pistes illimitées par projet, de pas mal de raccourcis clavier et d’une foule d’autres choses bien sympathiques. Le seul point négatif est que bien qu’il soit Libre et publié sous licence GPL, Qtractor peut nécessiter (selon la méthode d’installation) le téléchargement de paquets non Libres. Si cela vous tente quand même, nous allons nous arrêter brièvement sur la publication de Qtractor en version 0.5.11 et voir comment nous pouvons procéder à son installation.

Cette version 0.5.11 de Qtractor embarque quelques nouveautés, à commencer par des options d’éditions dont les actions ont été considérablement étendues. On notera également l’amélioration des divers modes de redimensionnement et pour le reste, cette nouvelle version contient surtout un grand nombre de corrections de bugs. Si ça vous branche vous pouvez vous rendre sur le site officiel du projet pour consulter le changelog complet et vous procurer les sources ou les binaires d’installation pour Ubuntu et openSUSE.

Si vous voulez installer Qtractor sur Archlinux ou Manjaro, il faudra pour le moment vous contenter de la version 0.5.10, les dépôts ne sont pas encore à jour.

Vous pouvez en attendant passer par pacman, à l’aide de la commande suivante :

sudo pacman -S qtractor

Amusez-vous bien et bonne MAO!

source

Gravatar de Noireaude
Original post of Noireaude.Votez pour ce billet sur Planet Libre.

Noireaude : Activer le Touchpad sous Manjaro

mardi 8 octobre 2013 à 15:05
Crédit image

Bon ce n’est plus un secret je suis en mode découverte sur Manjaro et un des premiers soucis que j’ai eu à résoudre résidait dans le fait que le touchpad de mon vieux pc n’était pas fonctionnel. Si vous êtes dans ce cas et que vous n’êtes pas encore tombé la page dédiée du wiki Manjaro, voici vite fait la procédure à suivre afin de le réanimer et de pouvoir à nouveau en profiter.

Il va falloir dans un premier temps éditer le fichier /etc/X11/xorg.conf.d/10-synaptics.conf, ce que vous pouvez faire à l’aide de l’éditeur de fichier de votre choix. Pour moi ça sera donc mon préféré, à savoir Gedit. Entrez la commande suivante en changeant simplement le nom qui correspond à votre éditeur de texte :

sudo gedit /etc/X11/xorg.conf.d/10-synaptics.conf

Une fois que c’est fait ajoutez-y les lignes suivantes et enregistrez les changements avant de le refermer.

Section "InputClass"
	Identifier "touchpad catchall"
	Driver "synaptics"
	MatchIsTouchpad "on"
	Option "TapButton1" "1"
	Option "VertEdgeScroll" "1"
	Option "HorizEdgeScroll" "1"
EndSection

Si tout s’est bien passé votre touchpad devrait à nouveau fonctionner et ce, sans avoir à redémarrer votre machine.

Amusez-vous bien.

Gravatar de Noireaude
Original post of Noireaude.Votez pour ce billet sur Planet Libre.