Idée de concours : Optimisation de code

Notre cahier des charges n'est guère épais, pourtant...

Je comprends ce que tu veux dire. Mais il faut bien expliquer le contenu du challenge et faire en sorte que tous le comprennent de la même façon. Et il faut aussi trouver un sujet qui permette de se creuser un peu les méninges : si c'est pour faire clignoter une led, je ne vois pas l'intérêt.

Tout est ouvert, on peut penser à d'autre sujets, pour l'instant ce n'est qu'une phase de préparation.

Sinon pour faire du fun on peut proproser de faire un jeu avec les leds de bricofoy

Il faudrait que Bricofoy documente son montage hardware (qui doit être assez simple à faire sur breadboard)

La mesure de succès = vote des participants (application qui ne plante pas, facile à lire, sans bugs visible par les membres du forum, et s’installe sur la spec hardware, et jeu addictif)

Le prix => Bricofoy envoie une copie de la boîte gravée et prête à monter (merci bricofoy :slight_smile: ), en échange il peut utiliser tous les jeux (On peut prévoir une cagnotte pour financer le Matos et expédition au gagnant :slight_smile: )

@lesept

Ca me foutrait les boules de savoir que tout ceux qui ne connaissent pas les pointeurs vont se tirer après avoir lu le premier paragraphe du cahier des charges.

Un concept simple admet le plus grand nombre de participants. Ca n'oblige pas à faire simple, ça le permet.

Whow, J-M-L ça c'est une idée qu'elle est bonne :slight_smile:

Pour le hard du machin... bah pour le moment y'a 10 leds intégrées dans les poussoirs, avec leur résistance de limitation de courant intégrée (qui limite à 18mA avec alim en 12V), bufferisées par des 2n2222 montés en émetteur commun avec des R de 10K entre l'E/S de l'arduino et la base, et les 10 poussoirs entre E/S et la masse (avec les entrées du micro en input_pullup).
J'ai rajouté des 100nF sur les poussoirs, mais ça change rien pour l'anti-rebond, du coup il est logiciel.

En gros en l'état actuel, il faut 10 poussoirs, 10 leds, 10 résistances pour les leds, 10 transistors (2N2222 ou autre), et 10 résistances pour la base des transistors, ou décharger la gate si c'est des mos.
Les poussoirs peuvent être NO ou NF, et reliés à la masse ou au +, le lociciel actuel est capable de s'adapter.

Le tout relié à une mega, car je n'avais pas assez d'E/S sur la uno.

Possibilité de rajouter un buzzer, pour faire un mode "Simon" ou autre.
Possibilité aussi de rajouter un affichage par matrice de leds et/ou afficheurs 7 segments, mais ça c'est quand même plus compliqué et il faut redessiner la face avant.

Alimentation en 10,8V par une batterie de visseuse constituée de 3 piles 18650 (ce que j'avais sous la main le soir du 24, en fait...).
Il n'y a pas encore le circuit de charge pour le moment, je n'ai pas encore reçu le BMS 3 cellules chinois que j'ai commandé. Mais vu la capacité des piles (2Ah), je ne crois pas avoir besoin de recharger le bazar avant un bon moment.

Le Vin de la carte arduino est alimenté par le + batterie, du coup même si l'inter général est coupé ou la batterie vide, il est possible d'alimenter le jeu via le câble USB. Les boutons sont juste moins lumineux, mais ça fonctionne parfaitement.

Coté logiciel, il y a une base réutilisable qui comprends la lecture des boutons avec anti-rebond, une mise en veille si pas d'actions sur les boutons pendant plusieurs minutes, un menu de départ pour le choix du jeu, et des fonctions d'affichage. Le tout basé sur la librairie YASM (dispo dans le gestionnaire de l'IDE arduino) qui facilite grandement la mise en place de chronos et autres.
La librairie est prévue au départ pour faire des machines à états, mais ici je m'en sert surtout pour les fonctions de chronométrage qu'elle propose, pour faire une sorte de multitâche.
Autant que possible, ce serait bien de garder ce système. Il est bien entendu envisageable de repartir de zéro, mais ça serait un peu réinventer la roue...

Dans ce contexte un nouveau jeu serait lancé par un état de plus de la machine "programme". Pour le moment, mes différents jeux tiennent chacun dans un seul état de la machine "programme", mais rien n'interdit depuis cet état d’exécuter une autre machine à état plus complexe si nécessaire (plus clair pour la lecture du code que de rajouter des états à "programme" à mon avis)

Voili voilou...

Bon ça déchaine pas les passions...

tant pis, c'était une idée comme ça

Mon problème sur ce dernier challenge, c'est qu'il nécessite pas mal de matériel.
Mais pour celui ci ou l'autre, c'est vrai qu'on n'a pas un succès fou.
Autant abandonner...

lesept:
Mais pour celui ci ou l'autre, c'est vrai qu'on n'a pas un succès fou.

Il faut être lucide:

  • Le bar est relativement peu fréquenté. Des post y stagnent pendant des semaines sans réponses. Donc, déjà peu de personnes ont dû voir ce fil de discussion.
  • (là je vais essayer d'être factuel sans d'être désagréables n'y avec les uns, ni avec les autres) si vous regardez le niveau des questions sur le forum, vous conviendrez que la majorité des personnes ici ne sont pas des cadors en programmation. La plus grande part programme directement dans l'IDE sans même avoir écrit un semblant de cahier des charges. Beaucoup de personnes copient des morceaux de code sur le net et viennent ici pour se faire aider à coller les morceaux ensemble. Ce que vous proposez vole très haut.
    Là par exemple:

On pourrait se restreindre à parser des long

vous avez déjà perdu 30% des participants potentiels.

  • Concernant le problème du matériel levé dans le post précédent, beaucoup de participants sur le forum n'ont pas (ou très peu) de composants à la maison.

si on ne peut plus avoir un peu d'utopie et d'idéal d'un monde meilleur...

:slight_smile:

mais oui, je pense que vous avez raison @fdufnews

Pour le dernier point cependant, il aurait suffit de quelques boutons, leds et résistances pour simuler le projet... Normalement les bricoleurs ont ça dans les tiroirs

Pour la remarque 1 : on pourrait poster l'annonce du challenge (je bosse plus parler de concours) dans la section principale.

Je pense qu'un bon tuto est bien plus formateur qu'un concours. Mais il y a là aussi des difficultés:
Le 1er problème, c'est que les tutos sont noyés dans la masse (bien qu'ayant une section à part sur le forum) parce que l'outil de recherche sur le forum est piteux.
Le 2nd problème, c'est que cela demande beaucoup de travail de réaliser quelque chose qui soit didactique et qui soit quand même assez ouvert pour inciter les lecteurs à réfléchir dessus.

En fait, pour être honnête je n'ai pas vraiment de solution à la problématique de départ qui était de faire progresser les participants du forum. Peut-être des tutos qui se termineraient par des sortes d'exercices pour lesquels la solution ne serait donnée que quelques semaines plus tard. Comme ça tout le monde partirait avec une base et un vocabulaire commun qui auraient été expliqué au départ ce qui permettrait aux débutants d'acquérir du savoir et de le mettre en pratique rapidement. Mais là, on retombe sur le deuxième problème que j'ai cité ci-dessus c'est le travail pour mettre la chose en place.

fdufnews:
Concernant le problème du matériel levé dans le post précédent, beaucoup de participants sur le forum n'ont pas (ou très peu) de composants à la maison.

J-M-L:
Pour le dernier point cependant, il aurait suffit de quelques boutons, leds et résistances pour simuler le projet... Normalement les bricoleurs ont ça dans les tiroirs

Pourtant, 10 poussoirs et 10 leds, c'est pas non plus un matériel phénoménal, je suis d'accord avec JML...

Comme pour @lesept, il me semble qu'il faudrait poster l'annonce en section principale

Faite une annonce dans le forum principal et je l'épinglerai :wink:

Avec un petit MP pour me prévenir :grin:

faut qu'on trouve une idée plus simple sans doute...

fdufnews:
Je pense qu'un bon tuto est bien plus formateur qu'un concours.

Mon idée de base était de pouvoir confronter sa façon de coder à celles des autres .
Et donc de montrer à tous qu'il y a plusieurs façons de faire :wink:

Les tutos sont tous les mêmes en général car repris et copié/collé sur d'autres blogs/sites etc etc ...

Désolé, j'ai un peu laissé tomber ce sujet, ne voyant pas de concensus apparaître...

oui faut trouver autre chose je pense...

Entrée inacceptable pour le défi du parcours en 8:

https://peertube.fr/videos/watch/bdb1ccf8-8e5d-4bfa-be8b-624366f2f39e

Mais depuis que j'ai appris à faire le "grain de riz" je me sent plus.

:slight_smile:

Entrée acceptable pour le défi du parcours en 8:

https://peertube.fr/videos/watch/d520187e-811d-4a9c-a5bd-a9eac7462ef5

Mais on voit pas mon tricot.

:frowning:

Accepté.

https://peertube.fr/videos/watch/fb9bf6a8-78cf-4520-b67d-2a4a9b1c58dd

Toc toc..
Bonsoir à tous.
J'ai peut être une idée:
Et si vous organisez une chasse au trésor ou le trésor est un erreur dans un code mis exprès pour après aborder une notion plus ou moins basique?
C