SMART — 3D Globe

  • Link: https://smart-steel.vercel.app/
  • Dates: September 2022 - Current
  • Technologies: Typescript, NextJS, TailwindCSS, HeadlessUI, TailwindUI, tRPC, Next-Auth, Prisma, Planetscale

As an entrepreneur, I have learned to think in terms of opportunities, and I think that there is a great opportunity in the education market for people who want to remember what they learn more easily.

Among the many hypotheses I could test, the idea of an interactive 3D globe mainly got my attention. It actually didn’t seem too hard because there are APIs that facilitate the creation of such an interface. But after exploring this idea for a few days, I quickly realized that the 3D globe would be slow on low-end devices. So I spent a few more days to see if I could fix this, but 3D is hard, and it would either have required months of work or a non-viable expensive solution. Therefore about a week in total, I decided to pivot toward another hypothesis.

Thanks to this small project, I’ve reinforced my skills in building a Proof Of Concept, next time I will be able to reduce the amount of time required to see if a project is technically viable or not, considering the available resources.

Data Asso website

Data-Asso — insights on non‑profits

  • Link: data-asso.fr
  • Date: September 2022 - Current
  • Technologies: Vue2/Nuxt2; Bulma/Buefy; SASS; Docker; Kubernetes; MongoDB; Elastic-Search Vue3/Nuxt3; TailwindCSS/HeadlessUI/TailwindUI/StoryBook; PostgreSQL/Supabase; GrowthBook;

Co-financed by the French government and Synaltic since 2015, Data-Asso still had no paying customers when I joined the team in September 2022, even though a lot of work had already been done. Employed as an intrapreneur, my mission was to help them implement the lean startup methodology to achieve product-market fit by refactoring the architecture for better flexibility, iteration speed, and learning.

With an architecture set up for robustness and scalability, the former stack was also hard to work with and monitor, leading to many issues such as slower development speed, unreliable performance, and occasional shutdowns. It probably was a good stack back in 2015, but new solutions geared toward entrepreneurship emerged and it was time when I arrived to move from micro-services to serverless. Migrating a whole stack is no easy task, but it took us less than 2 months to go from a saturated codebase on Vue2/Nuxt2/Vuex to a clean codebase on Vue3/Nuxt3/Pinia, from an old design with Bulma/Buefy/SASS to a whole new modern design with TailwindCSS/HeadlessUI/TailwindUI/StoryBook, and from a poorly managed analytics solution to a modern solution with GrowthBook for A/B testing.

Today, the project is still going through numerous iterations, but thanks to my work, testing new hypotheses is incredibly fast and we know we are getting closer to a great product every day.

Data Asso website
Data Asso website

Community — A social network for communities

  • Date: June 2019 - October 2022
  • Technologies: HTML, CSS, Javascript; React; Tachyons; MUI; SwiperJS; Fullpage.js; React-router; Apollo-GraphQL; nodeJS; GraphQL; Express; Neo4j; MongoDB; Redis; Firebase Auth; AWS EC2, S3, Lambda, Elastic Beanstalk, Elasticache; GCP Compute Engine, Cloud Storage, Cloud functions, App Engine, Memorystore;

I spent about 3 years on this project, so this is a long story. The idea was to build a social network for community members to come together and take action on what matters most to them. But long story short, I had been trying to start too big all along and because of this made some big mistakes along the way that eventually cost me a lot of time but taught me so much that I definitely don’t regret in thing. I got incredibly better not only in web development but also in design, project management, marketing, entrepreneurship in general, finance, accounting, and law, and also learned a lot about the social media market.

Thanks to this project, I’ve had the chance to cut my teeth on web development with React for state management, MUI for the UX/UI, Apollo-client and Apollo-server to query the graphQL API, Neo4j as a primary database, Redis for caching and rate limiting, Firebase for authentication, MongoDB as a user store, and even AWS EC2 servers, S3 buckets, Lambda functions, and Elastic beanstalk auto-scalers and their GCP equivalents for deployment.

In terms of project management and entrepreneurship, I’ve learned to really understand and embrace the lean startup methodology. I’ve learned the hard way that designing an MVP is not an easy task and that you still need to make some research and a POC beforehand. I’ve learned that writing a business plan is by no means a better approach. I’ve learned to market myself and attract early adopters on social media. And I’ve learned to concretely implement the AARR (Acquisition, Activation, Retention, Referral) innovation accounting metrics and split-testing in my codebase.

In three years of working on this project, I’ve also learned a lot about the social media market. You can ask me any question about social networks such as Facebook, Reddit, Tiktok, LinkedIn, Twitter, Snapchat, etc., or even crowdfunding apps such as Kickstarter, Indiegogo, Gofundme, etc., or even online petition apps such as Change.org, Avaaz, etc., or event platforms such as Meetup, Eventbrite, etc., chances are I know the answer. The reason is, I spent many weekends, so many weekends in fact it makes me blush, trying to design a better ranking algorithm that could represent the communities better, and also trying to design a better filter for everyone to be able to get rid of the noise.

In all truth, I was a broke student when I first started out. And when you’re broke you often have no choice but to do it yourself. Before I knew it, I had created my own legal entity myself, filed a trademark myself, wrote copyright myself, kept the books myself, and dealt with taxes myself. It was definitely not easy, and you’re right if you regard this as a huge waste of time in itself, but it gave me the chance to wrap my head around the corporate world and I know it will help me in my future enterprises.

Today, I like to think of this adventure as the beginning of a long journey. It may not be a success regarding entrepreneurship, but it is nonetheless the most enriching experience of my life by far. I’ve learned a lot and I’m thankful for it. Every successful entrepreneur has had his share of failures before success and I know I will do better in my next adventure and even better in the one after. I keep on learning from my mistakes and this makes me better every day.

need for good app demo
need for good app demo
need for good app demo

Need for good — game to learn javascript

A one-week challenge I successfully passed, even though I didn’t really know Vue and neither Nuxt. I was asked to make a game where the user would race against an AI to finish writing a program. There had to be a history of the current games stored in a Vuex store and past games stored in a MongoDB cluster.

I had a lot of fun doing this little challenge and it reminded me about all the fun I had for my first coding challenge (coding challenge 14). It wasn’t much, but I think it reinforced my belief that coding and entrepreneurship is a really fun and interesting path to pursue.

need for good app demo

Smart-brain — AI Face detector

My first full-stack project — it involved building a front-end client with React and a backend server with nodeJS and REST deployed on Heroku and images on AWS S3 buckets.

The goal was to build a face detector that can identify each face in a picture, such as the kind of face detectors that are used in social networks to identify people. This project has taught me a lot on a technical level about the technologies I used, but also more generally about full-stack architectures, the power of APIs, and data structures.

If you’d like to try it out yourself, just copy & paste the link below right on the input, click on “detect” and see what happens: https://assets.ey.com/content/dam/ey-sites/ey-com/en_gl/topics/global-review/2019/ey-staff-at-event.jpg

Memory — Game

My first project built on my own - no solutions provided.

This was actually a coding challenge where I had to build, in less than one month, a memory game with HTML, CSS, and javascript only.

Even though it’s terrible code, this is one of my most exciting memory as a web developer. I saw this as a real challenge at the time since I had never worked on my own with technical challenges to solve and without a provided solution. I thought it would be hard to meet the one-month deadline but it eventually worked out pretty well and I managed to make it in about one week. I was so proud that I showed it to everyone around me.

My biggest takeaway from this experience is by far that coding can be A LOT of fun, especially when you challenge yourself to the next level. Today, even though I tend to work on projects a little bit more complex than this one, I try to keep the same Pareto 80/20 spirit of setting a clear and achievable, one to two weeks goal, sprinting towards it, seeing concrete results, and learning from them.