Gagnant du Hackathon : les droits de la solution numérique nous restent

Gagnant du Hackathon : les droits de la solution numérique nous restent

Un hackathon est une compétition entre développeurs pour créer des solutions numériques dans l'intérêt du client. Bien que ces types d’événements soient très populaires dans le milieu informatique, de nombreux professionnels talentueux ont peur d’y participer. L'une des raisons est le stéréotype sur la perte garantie des droits sur la solution développée. L'un des gagnants du hackathon à grande échelle, Evgeniy Mavrin, dissipe ce mythe et évoque également les avantages et les perspectives des concours de programmation.

Evgeniy est un jeune développeur prometteur. Ayant participé au parcours « Megapopis Moscou », organisé par l'Agence d'innovation de la capitale dans le cadre du hackathon en ligne VirusHack, il a, au sein de l'équipe EGD BAG (avec Alexey Airapetov et Anna Kovalenko), mieux accompli la tâche que d'autres. de créer un robot d'information pour le messager ICQ New, qui signalait aux utilisateurs la propagation de l'infection à coronavirus.

Gagnant du Hackathon : les droits de la solution numérique nous restent

— Evgeniy, qu'avez-vous fait, vous et les membres de votre équipe, avant de participer au hackathon ? Où avez-vous étudié, où avez-vous travaillé, dans quels projets avez-vous participé ? Avez-vous été impliqué dans des affaires ?

— Nous sommes une équipe de camarades de classe. Diplômé du programme de maîtrise MSTU du nom de N. E. Bauman dans le programme Systèmes et technologies de l'information en 2019. Nous faisons tous de la programmation, mais dans des directions différentes. Par exemple, ma pile principale est C++/Qt, et celle de Lesha (Alexey Airapetov – note de l'auteur) est Java. En plus de notre travail principal, chacun de nous avait ses propres projets favoris à différents stades d'achèvement (lire abandon). En général, la sortie n’a pas donné grand-chose. Aucun membre de notre équipe n’a été impliqué dans des affaires auparavant. Mais nous avons participé, pour ainsi dire, au « freelancing amical », lorsqu'une personne que vous connaissez a simplement besoin d'une aide informatique.
Grâce à notre formation et à nos intérêts communs dans le domaine informatique, il n'est pas difficile pour nous de proposer et de mettre en œuvre une solution efficace à presque tous les problèmes.

— Était-ce la première fois que vous participiez à un hackathon ? Comment avez-vous connu le morceau « Megapolis Moscou » ?

— Personnellement, j'ai déjà participé au hackathon Aramco Upstream Solutions Technathon 2019 en équipe avec des camarades de l'Université d'État russe du pétrole et du gaz du nom d'I.M. Gubkin, mais cette fois-là, nous n'avons pas eu de chance. Il n'y a eu aucun match entre les participants de l'équipe.

Nous avons entendu parler du morceau « Megapolis Moscou » par des amis : ils ont simplement lancé une publicité dans le chat d'une communauté de pointus (développeurs C#). Nous avons abordé la participation au hackathon VirusHack de manière responsable : nous avons décidé de la tâche à l'avance et réparti grossièrement les responsabilités. Et ça a vraiment aidé.

— Comment évaluez-vous la complexité de la tâche du nouveau client ICQ ? Quel est le niveau des adversaires ?

— La tâche s'inscrit parfaitement, à mon avis, dans le cadre temporel du hackathon. Souvent, dans les quelques jours alloués à un hackathon, de nombreuses équipes présentent un concept ou un prototype comme solution finale. Nous avons présenté le produit fini, que nous et le client avons rapidement mis en production. Le niveau des adversaires était élevé. Et j'étais vraiment inquiet quand j'ai vu les résultats des autres équipes. De nombreux participants se sont permis une interprétation libre de la tâche à accomplir : quelqu'un, par exemple, a créé un robot avec lequel on pouvait jouer à des jeux simples et occasionnels.

— Parlez-nous de la solution qui est finalement sortie ? Quels outils ont été utilisés pour le développer ?

— Le résultat a été un robot d'information qui a informé les utilisateurs de la propagation de l'infection à coronavirus.

Grâce à une géolocalisation, les gens pourraient recevoir des informations sur les nouveaux et anciens cas d'infection des citoyens, connaître les adresses des établissements médicaux et des laboratoires les plus proches pour passer les tests de dépistage du COVID-19, ainsi que les adresses des pharmacies et des magasins les plus proches. Un générateur de messages SMS simplifié pour recevoir un pass électronique a également été intégré au bot.

Pour réguler les flux de calcul lors de l’écriture d’un bot, des outils standards du langage Java ont été utilisés. Pour simplifier considérablement le travail du bot, la bibliothèque API d'ICQ a été choisie. Nous avons également résolu le problème de la simplification du déploiement du bot dans un environnement de production : sachant que Docker est désormais le standard en matière de développement en entreprise, nous avons préparé une image Docker.

En général, le résultat est un produit facile à moderniser et adaptable à l’échelle.

— Quelle a été la chose la plus difficile ?

— La chose la plus difficile, probablement, était de « peigner » toutes les fonctionnalités du bot afin qu'il soit pratique à utiliser. Nous avons implémenté l'interface de manière à ce que l'utilisateur ne saisisse des données sous forme de texte que dans des cas extrêmes, comme, par exemple, pour indiquer le motif de l'émission d'un laissez-passer unique (oui, c'était pertinent jusqu'à récemment). Toute interaction avec le bot se résumait à l'utilisation compétente des outils du messager lui-même. Nous avons complètement désactivé la possibilité de saisir manuellement des commandes. Au fait, voici une vidéo de démonstration du bot : https://youtu.be/1xMXEq_Svj8

— Vous êtes devenu le gagnant du hackathon. Comment les événements se sont-ils développés ensuite ?

— Nous avons appris une chose très utile : il s'est avéré que nous sommes nous-mêmes restés détenteurs des droits d'auteur du bot, ce qui m'a même quelque peu surpris. Je pensais que tout hackathon est, en gros, un échange d'une idée née d'un brainstorming en équipe contre un prix précieux. Mais j'ai relu l'accord et les règles de participation et je n'ai rien trouvé de tel. Alors aux autres participants du hackathon qui s'inquiètent de devoir céder les droits sur leurs développements, je tiens à dire que non, il est loin d'être un fait que vous serez obligé de le faire. Lors du hackathon VirusHack, il était même possible de stocker le code dans des référentiels privés et de simplement donner un accès temporaire à l'un des membres du jury pour prendre une décision. Dans tous les cas, avant le hackathon, lisez toujours les documents de participation afin qu'il n'y ait pas de surprises à l'avenir.

D’ailleurs, nous avons décidé de laisser notre code ouvert : https://github.com/airaketa/egdbag-bot. « Fourchette » pour votre santé.
Après le hackathon, nous avons préparé de notre propre initiative un portage de bot pour l'API Telegram en cas de deuxième vague de la pandémie de coronavirus. Mais il vaut mieux laisser ce projet rester pour toujours dans des dépôts privés.

Nous réfléchissons désormais à adapter les fonctionnalités du bot à la situation actuelle, lorsque le régime d’auto-isolement aura été levé. Par exemple, pour rechercher des centres de remise en forme, des restaurants et d'autres équipements urbains. Les membres de l’équipe ICQ New ne sont pas contre « l’hébergement » d’une version mise à jour du bot sur leurs installations.

— Les programmeurs devraient-ils participer à des hackathons ? Que pensez-vous qu’ils peuvent offrir aux participants et aux gagnants ?

- Ça vaut vraiment le coup. C'est une expérience sympa de terminer une tâche appliquée à partir de zéro en quelques jours, dont vous pouvez ensuite discuter avec des experts. De plus, c'est l'occasion d'évaluer vos compétences et les « compétences » des membres de l'équipe lors d'un véritable marathon de deux ou trois jours. C'est aussi du réseautage. Dans n'importe quel domaine, notamment informatique, c'est un aspect très important du développement, me semble-t-il. Vous pouvez trouver de nouvelles personnes qui vous sont utiles, communiquer avec elles et voir leurs projets. De plus, tout en effectuant uniquement du développement sur votre lieu de travail principal, vous pouvez vous essayer à un hackathon dans un nouveau rôle, par exemple « propriétaire de produit », « chef d'équipe » ou un autre rôle. Mais pour le gagnant, c'est l'opportunité d'une coopération fructueuse avec de grandes entreprises et d'une aide à la promotion de son idée. Il existe de nombreux cas où des projets à grande échelle sont nés de hackathons.

— Les candidatures pour un nouveau hackathon visant à résoudre les problèmes de la ville débuteront en août "Leaders de la transformation numérique". Ses gagnants recevront une récompense substantielle. Votre équipe y participera-t-elle ? Comment allez-vous vous préparer ? Si vous gagnez, à quoi dépenserez-vous le prix en argent ?

— Pour moi, ainsi que pour le reste de l'équipe, l'objectif principal de la participation au hackathon est l'opportunité de développer un prototype de produit dans un domaine qui nous intéresse.
Nous acquérons de l'expérience dans le développement collectif et un bon projet dans notre portefeuille, et nous sommes confrontés à des tâches intéressantes et complexes. Bien sûr, nous voulons gagner. Cependant, notre objectif n'est pas spécifiquement de recevoir un prix en espèces. Si le projet apporte des bénéfices, ce sera notre victoire.

Pour préparer le concours "Leaders de la transformation numérique" nous allons essayer d'agrandir l'équipe : lors du hackathon précédent, nous étions trois et, franchement, il n'y avait tout simplement pas assez de mains. De plus, nous résoudrons le problème des logiciels installés afin que tous les membres de l'équipe disposent de l'ensemble de programmes requis avant le début de la compétition (comme l'expérience l'a montré, une quantité énorme de temps est consacrée à résoudre les problèmes de synchronisation des logiciels).

Si nous parvenons quand même à obtenir un prix, nous dépenserons l’argent pour une PS5 et resterons à la maison pendant quelques semaines. Blague! Bien entendu, nous comprenons qu'un prix en espèces est avant tout une aide financière pour le développement ultérieur du projet. L'hébergement, les machines virtuelles, etc. font partie de la répartition des fonds.

Source: habr.com

Ajouter un commentaire