Interview with Abdoulaye Wade Cissé: Using a JavaFX application as a virtual chemistry and biology lab

Every week I collect JavaFX-related content for the JFX Central Links Of The Week. Last week I saw a video on LinkedIn, shared by Abdoulaye Wade Cissé, of a JavaFX “virtual laboratorium” and wanted to learn more about this project… Turns out he is a 22-year old student in Senegal, creating an amazing project to provide a virtual laboratory as software where the resources are not available for a physical lab. With his project, he proves that Java and JavaFX is the ideal way to generate fully free software with a lot of functionality.

What is your experience with Java development?

I started using Java last year, during my second year of university. I learned Java in our Object-Oriented Programming (OOP) course because it is part of our academic program. As part of our Advanced Java lab work in the third year, I worked with my colleagues on a desktop virtual laboratory application, developed with JavaFX. I am also working on a Java web e-commerce application, but I have paused it for now.

Why did you choose to use Java and JavaFX?

We chose Java and JavaFX as it’s part of our Advanced Java module. We wanted to follow the project requirements and improve our skills with this technology. Working with JavaFX allowed us to better understand modern graphical user interface (GUI) development in Java and explore its advanced features.

Can you describe the functionalities of the app you created?

This application is a virtual laboratory that allows students to perform chemistry and biology experiments and see the results in real-time. With JavaFX drag and drop features, users can manipulate various lab tools such as:

The main goal of this application is to help students simulate experiments that they usually only learn in theory, so they can better understand and visualize scientific concepts. This application is mainly for 9th-grade students and teachers, based on the implemented experiments.

Are the project sources shared and is it easy to add extra experiments and translations?

For now, the sources are not public, but we are considering the possibility of sharing them in the future if it could benefit other schools interested in a similar virtual laboratory. The system is designed in a modular way, making it easy to add new experiments by following a predefined format. This ensures smooth integration with the existing interface. The project’s architecture separates the interface from the content, making it easy to add new languages without modifying the core system.

How important is the “free” and open-source aspect of Java for you?

The open-source aspect of Java is very important because it allows everyone to use this technology freely, without financial restrictions. It makes learning accessible to all. As a student, this is a big advantage because I don’t have to pay for a license to learn and develop projects. If Java were not free, it would be a problem for me, because I cannot afford a powerful computer or IoT equipment to explore more technologies. Because Java is free and has a strong community, I can continue learning and improving my skills without limits.

What other programming languages do you use or want to learn?

I mainly use PHP (Laravel), a bit of Python, HTML/CSS, and JavaScript. Currently, I am familiarizing myself with React.js, TypeScript, Tailwind CSS, and Angular to strengthen my web development skills. I would like to deepen my knowledge of Python, as I aim to specialize in artificial intelligence (machine learning) and cybersecurity. I also plan to learn Flutter for cross-platform mobile app development. Finally, I want to master React, Angular, and the JavaScript ecosystem, as these technologies are highly sought after by recruiters.

With these skills, combined with my expertise in electricity, electronics (DIY), systems, and networks, I will be able to solve various technical problems and develop solutions suited to current and future challenges.

What is your professional goal after university?

My goal is to develop complete software solutions and create a centralized ecosystem that simplifies business management. Initially, I want to work in a company to gain solid experience and better understand the professional environment. This will then allow me to establish my own company, GorguiTech, where I can design and develop electrical, electronic, and IT products. My ambition is to contribute to the electrification of villages and reduce the digital divide through innovative technological solutions.

Thanks Abdoulaye for sharing your work and I’m looking forward to your next projects…!