clojure-france

2020-09-11T01:46:32.001100Z

Salut

2020-09-11T08:02:03.003800Z

Salut @papachan @vincent.cantin, ça va les clojuriens FR ? Ca bosse sur quoi en ce moment ? Il y en a qui écrivent du Clojure quotidiennement et sont facturés/payés pour ?

baptiste-from-paris 2020-09-11T08:02:27.004Z

Yes

1🙌
2020-09-11T08:04:09.005Z

Cool @baptiste-from-paris, en freelance, en remote ? Un société FR ?

baptiste-from-paris 2020-09-11T08:04:56.005500Z

Les deux et en indépendant

2020-09-11T08:05:38.006Z

Yes, je viens de voir sur ton profil Linkedin. 👍

cgrand 2020-09-11T08:08:36.009Z

@baptiste-from-paris qui roule des mécaniques 😉

1🙂
baptiste-from-paris 2020-09-11T08:08:40.009200Z

loool

1👍
baptiste-from-paris 2020-09-11T08:08:45.009500Z

du tout je réponds !

baptiste-from-paris 2020-09-11T08:08:53.009800Z

@cgrand et moi bossons ensemble

2020-09-11T08:13:59.012600Z

Pour ma part, initialement je suis dev PHP spécialisé dans le ecommerce (Prestashop) et depuis que j'ai découvert Clojure (fin 2018), je l'utilise pour le compte de mes clients dès que possible! J'ai souvent vu/lu le terme "Clojure enthusiast" et c'est très vrai ! Un langage m'a rarement aussi rendu accro , le temps dédié à ma veille techno a grandement augmenté ! 😉

2020-09-11T08:15:06.013500Z

> @cgrand et moi bossons ensemble Super ça. Clojure ? ClojureScript ? Les 2 ?

cgrand 2020-09-11T08:17:05.014600Z

Immédiatement là tout de suite c’est du clj pur sur nos contrats en cours.

baptiste-from-paris 2020-09-11T08:18:54.015800Z

il exagère, Christophe a découvert TailwindCSS et depuis aime faire du design

1🙂
cgrand 2020-09-11T08:20:40.018100Z

(censuré)

2😁
2020-09-11T08:21:11.018900Z

Chez Electre, on est quelques un sur Paris à écrire du Clojure/Clojurescript pour un gros projet de refonte d’une app centrée sur un moteur de recherche avec beaucoup de data processing. Et on est assez heureux 🙂

2020-09-11T08:22:03.019700Z

Ha j’adore Tailwind CSS aussi 👍 ils ont fait un super boulot, j’ai même acheté une license Tailwind UI

2020-09-11T08:25:12.020900Z

> il exagère, Christophe a découvert TailwindCSS et depuis aime faire du design Haha, je comprends Tailwind CSS + Cljs, le pied !

2020-09-11T08:27:16.022700Z

@jeremie > refonte d’une app centrée sur un moteur de recherche avec beaucoup de data processing. Excellent, le projet doit être super intéressant. C'était quoi les technos avant Clj/Cljs ? > Et on est assez heureux Comme je vous comprends !

2020-09-11T08:31:05.023400Z

Pour info sur notre projet, tous le CSS est en CLJS avec https://github.com/clj-commons/cljss et ça marche plutôt bien, mais on a designer/UX full time qui sait écrire du clj…

1👍
2020-09-11T08:31:53.023600Z

Les technos étaient du C#/C++…

2020-09-11T08:32:51.023800Z

Ah oui, un belle refonte. 🙂

baptiste-from-paris 2020-09-11T08:38:12.027300Z

je l’ai utilisé c’est pas mal, surtout que ça diminue la taille de ton css

2020-09-11T08:38:32.027500Z

> https://slack-redir.net/link?url=https%3A%2F%2Fgithub.com%2Fclj-commons%2Fcljss&v=3 Top cette bibliothèque. C'est bon ça pour le designer/UX. Il a sans doute été formé sur place ? Ca était la syntaxe au début pour lui ?

2020-09-11T08:40:56.029200Z

Oui on l’a formé 🙂 la syntaxe est vraiment un non-sujet en fait, on lui a juste configuré son env de dév et du devcards pour qu’il soit autonome sans avoir besoin de toute l’infra…

2020-09-11T08:41:25.030100Z

Tiens j’avais fait ça il y a qqs temps, ça a un peu bougé mais pas tant que ça.. https://speakerdeck.com/jgrodziski/clojure-project-in-the-field

1👏
cgrand 2020-09-11T08:42:02.030800Z

sur un précédent projet l’intégrateur n’avait aucun mal à aller modifier du clj (la “formation” s’étant résumée à lui montrer comment démarrer l’app avec autoreload)

2020-09-11T08:47:12.031100Z

@jeremie Impeccable, merci pour ton slide.

2020-09-11T10:47:34.033400Z

Je travaille en Clojure dans une boite qui n'utilise pas Clojure, dans l'equipe data. On m'a dit, tant que 2+2=4, je choisis la techno.

2020-09-11T10:48:04.034100Z

Mais bon .. je passe beaucoup de mon temps sur du sql

2020-09-11T10:49:38.036700Z

En ce moment, je developpe ma lib Vrac un peu chaque matin, et il s'avere tres prometteur et utile pour les utilisateurs. Je m'attend a une petite revolution dans le monde Clojure front end.

2020-09-11T10:53:28.040200Z

Je vais faire du no-React, puis faire un pont pour inclure des composants React.

2020-09-11T11:00:54.042200Z

Le systeme de souscription marche a base de diff, c'est l'utilisateur qui dit ce qui change, plutot que ca soit le systeme qui doivent le trouver.

2020-09-11T11:02:01.044Z

Vrac inclue un graph de compited nodes qui marche aussi a base de diff. C'est ce sur quoi je bosse en ce moment.

2020-09-11T11:02:53.045500Z

La partie rendue est elle aussi assez space, c'est du pur declaratif a base de "smart template".

2020-09-11T11:03:48.046900Z

Le design est faite, tout est dans les brainstormings dans le channel #vrac, il reste plus qu'a implementer.

papachan 2020-09-11T12:34:46.047600Z

Oui du clojure au boulot.

2020-09-11T12:58:12.047800Z

OK, sympa. Toi @papachan, tu n'es pas en France si j'ai bien suivi, c'est ça ?

2020-09-11T13:00:07.048200Z

Très Intéressant tout ça @vincent.cantin 👍

2020-09-11T13:02:57.049100Z

> Je vais faire du no-React, puis faire un pont pour inclure des composants React. Bien ambitieux, ça serait top en effet.

papachan 2020-09-11T13:04:04.049900Z

Non. en amerique du sud depuis vingt ans !

2020-09-11T13:05:13.050800Z

@admin055 au fait, je suis bien intéressé par ce que tu as pu faire avec Clojure en e-commerce ou ce que tu aimerais pouvoir faire, et aussi ton retour d’expérience sur l’aspect productivité du développeur entre le monde PHP et Clojure 🙂

val_waeselynck 2020-09-11T13:17:36.051600Z

@admin055 Clojure en freelance aussi, en remote pour une start-up parisienne (je travaille depuis les Caraïbes)

1🏝️
baptiste-from-paris 2020-09-11T13:19:08.052100Z

comment il s’la pète

val_waeselynck 2020-09-11T13:19:19.052500Z

@jeremie vous bossez avec des gens en remote d'ailleurs par les temps qui courent ?

val_waeselynck 2020-09-11T13:19:44.053200Z

(pas pour moi, en tout cas pas à court terme, juste curieux)

2020-09-11T13:22:41.054Z

@val_waeselynck ha le remote…vaste sujet…on y travaille mais c’est pas gagné. Stay tuned 😉

val_waeselynck 2020-09-11T13:22:57.054200Z

Dac

val_waeselynck 2020-09-11T13:23:10.054400Z

Je respecte

2020-09-11T15:16:07.054600Z

Wow sympa ! Et c'est ta boîte qui a migré vers Clojure pendant ton parcours ?

2020-09-11T15:25:01.056Z

> Clojure en freelance aussi, en remote pour une start-up parisienne (je travaille depuis les Caraïbes) @val_waeselynck Sympa, ça donne envi présenté comme ça ! 🙂

2020-09-11T15:26:13.057Z

> comment il s’la pète Je crois définitivement que c'est une qualité pour être un bon Clojuriens haha.

val_waeselynck 2020-09-11T15:27:51.057200Z

Ah bon ? J'aurais dit plutôt l'inverse

val_waeselynck 2020-09-11T15:28:51.057400Z

Ouais c'est cool qu'ils aient été ouverts d'esprit là dessus !

2020-09-11T15:29:16.057600Z

Juste une boutade haha

val_waeselynck 2020-09-11T15:29:30.057800Z

Il y a 6h de décalage horaire, ce qui force à beaucoup travailler en asynchrone. Dans notre cas ça a été plutôt un avantage en fait, forçant une communication ciblée et expéditive.

2➕
val_waeselynck 2020-09-11T15:29:43.058Z

🙂

2020-09-11T15:31:52.058200Z

Oui le décalage horaire étant important, c'est aussi ce que je me suis dit, que c'était cool qu'il était open là dessus.

2020-09-11T15:33:14.058400Z

Récemment avec un client FR, on a travaillé avec une société indienne pour un développement spécifique et on a pu bosser en asynchrone sans souci...bonne expérience.

1👍
2020-09-11T16:01:37.062300Z

Je suis aussi en decallage avec la France pour mon daily job, 6 heures mais dans l’autre sens, depuis Taiwan.

2020-09-11T16:04:51.062600Z

Et vous travailler avec la France dans ta boîte taïwanaise ?

2020-09-11T16:05:22.062900Z

C’est une boite Francaise qui a une branche a Taiwan, mais mon equipe est en France.

2020-09-11T16:16:32.070Z

> au fait, je suis bien intéressé par ce que tu as pu faire avec Clojure en e-commerce ou ce que tu aimerais pouvoir faire, et aussi ton retour d'expérience sur l'aspect productivité du développeur entre le monde PHP > et Clojure 🙂 @jeremie Merci pour tes questions. Alors j'ai un premier cas de figure qui s'est présenté en étant parfait niveau timing. J'avais suffisamment étudier Clojure/Script pour me sentir de le faire. Un client très fidèle (je bosse pour lui depuis 5-6 ans), qui a eu besoin d'un développement sur-mesure pour sa logistique lors d'un déménagement. Il est passé d'un entrepôt de 300m2 à 2000m2 et avait besoin de réorganiser ces références produits. Réorganisation faite par ses employées + interim avec lecteur de code barre et qui avait besoin d'avoir les infos en temps réel. Donc je lui ai fait une SPA avec (Reagent + Firebase realtime db) synchronisée via un middleware (ring/next.jdbc) pour la syncro avec la DB MySQL de Prestashop. Conclusion j'ai été épaté par le workflow, le peu de ligne de code et surtout j'ai poussé en prod et ça a fonctionné direct ! Aucun bug remonté par les employées !

2020-09-11T16:18:34.071Z

Tout ça avec un langage que j'avais découvert 8 mois auparavant...what else ?! 🙂

2020-09-11T16:19:02.071100Z

OK, tu confirmes que ça marche très bien comme ça, top.

val_waeselynck 2020-09-11T16:22:41.072400Z

Ça me rappelle ce que je m'étais dit après mon premier projet en Clojure. "Hein !? C'est déjà fini ?"

2😅
2020-09-11T16:22:53.072500Z

Ca marche bien si la compagnie se donne les moyens d’etre organisee. La, c’est pas encore ca. Il y a trop de transmission de savoir a l’orale dans certaines equipes.

2020-09-11T16:23:13.072700Z

L’oral sans software

baptiste-from-paris 2020-09-11T16:24:39.074100Z

Je pense qu’il faut aussi relativiser, si tu prends Django en python, RoR pour Ruby ou Laravel en PHP, les types arrivent à te “chier” des sites CRUD très rapidement

1👌
baptiste-from-paris 2020-09-11T16:25:24.075Z

Si ton client veut du “rapide/pas-cher”, c’est difficile commercialement de s’aligner je pense

val_waeselynck 2020-09-11T16:25:39.075300Z

Hum, c'était du data-mining sur des jeux de données de partitions, je doute que même RoR ait une gem pour ça 🙂

baptiste-from-paris 2020-09-11T16:26:20.076Z

absolument, je parle spécifiquement du “site CRUD”, le fameux

val_waeselynck 2020-09-11T16:26:50.076900Z

Mais oui, l'écosystème Clojure n'est pas optimisé pour faire rapidement ce que tout le monde fait déjà

baptiste-from-paris 2020-09-11T16:26:57.077100Z

exactement 🙂

val_waeselynck 2020-09-11T16:32:01.081Z

D'ailleurs, parlons en, de ce fameux "site CRUD".

val_waeselynck 2020-09-11T16:32:09.081300Z

(ou n'en parlons pas si ça vous saoule)

baptiste-from-paris 2020-09-11T16:32:13.081600Z

héhé

val_waeselynck 2020-09-11T16:32:19.081800Z

J'en arrive à me demander si c'est pas un peu un mythe ce truc.

val_waeselynck 2020-09-11T16:33:07.082800Z

J'entends des tonnes de gens dire "la plupart des apps sont naturellement CRUD". Mon expérience personnelle ne confirme pas ça du tout.

val_waeselynck 2020-09-11T16:35:08.084600Z

À chaque fois, lectures comme écritures étaient naturellement beaucoup plus sophistiquées que "CRUD", en terme de besoins produit.

val_waeselynck 2020-09-11T16:35:13.084800Z

Les lectures impliquaient plein de champs et de relations dérivées.

val_waeselynck 2020-09-11T16:35:54.086200Z

Les écritures étaient règles incrémentales et impliquaient souvent des règles qui impliquaient plein d'autres entités, de recalculer certains champs dans les transactions, etc.

val_waeselynck 2020-09-11T16:36:15.087Z

Les suppressions voulaient bien plus souvent dire "archiver" / "désactiver" que "supprimer".

baptiste-from-paris 2020-09-11T16:36:35.087300Z

Le “CRUD” n’existe que dans les tutos mais pour en faire un avec @cgrand en ce moment, je me demande parfois si le gros de “la valeur” est dans l’XP-utilisateur et design versus la technique

1➕
val_waeselynck 2020-09-11T16:37:54.088600Z

Bref, le coup du "le CRUD c'est naturel", je crois que c'est des histoires que les programmeurs se racontent pour justifier l'utilisation d'outils familiers, un peu comme le coup de "les classes c'est naturel, c'est comme ça que marche le monde"

2👌
val_waeselynck 2020-09-11T16:41:25.089300Z

(Après je suis peut-être aussi biaisé par Datomic)

2020-09-11T19:11:43.091600Z

Hello, ceci dit pour le CRUD, il y a fulcro RAD maintenant non ?

cgrand 2020-09-11T19:27:06.093600Z

C’étaient des contraintes bien compliquées ou la matérialisation d’un calcul dérivé ?

2020-09-11T19:56:48.093800Z

Pour le 2ème projet à l"étude, c'est indirectement lié au e-commerce mais au plutôt au business d'un de mes clients e-commerce. Ce client a une boutique en ligne de vente de musique libre de droit et radio ciblant les B2B. Son activité évoluant en réponse à la demande des clients, il souhaite une application mobile de stream audio. Je pars donc sur une application React Native en ClojureScript pour laquelle dans un premier temps le back end sera géré via les services Google Firebase (BDD, Authentification, Storage) afin de permettre un délai de mise en prod plus court pour ensuite migrer vers un back que je vais développé en Clojure. Le client a besoin d'un dashboard, d'exporter des données et stats de lecture des musiques et radio pour ses déclarations SACEM donc cela va être très enrichissant comme expérience je pense. 🙂

val_waeselynck 2020-09-11T21:05:19.094Z

plutôt le 2ème je dirais

papachan 2020-09-11T23:26:38.094300Z

@admin055 non pas vraiment.