Which language for multi user calendar-like app?

Hi everyone,

This second lockdown is the perfect time to learn something new, so at least I won’t waste the whole year with sitting around…

I would like to make a quite simple app to book things (e.g. rooms). There will be a list of rooms and a calendar view, in which you can see if your desired room is still free or not.

Requirements:

  • multi platform (Windows 7 upwards, I will simply ignore the XP computers at work, Mac, eventually Android and other mobile systems)
  • accessible by several people at once (if they try to book the same room at the same time, they will get informed about that)
  • program should be just executable, no need to install something (no admin rights at work)

My question now: Which language is the best? How do I connect this to a server, or, where do I store the data? Is this then web-based?
I’m pretty confused after several hours of reading about the different languages. I carefully suggest python or Java…?

Many years ago I did some programming courses for fun but never knew what to actually do with it. Now I would have the goal to solve our messy booking system at work, need some help with the start though :slight_smile:

Thank you in advance!

Are you looking to build a native app on the computer or something in the web browser?

I would also ask if you’ve done the FCC curriculum. If you’ve done that, then you should have the basic tools to do something like this.

Welcome, node.

This sounds like a fun project.

Many answers to this end up being “All languages are equal. No one is ‘best’”. However, I will add this:

  1. For web development, JavaScript makes the most sense.
  2. For an executable, there are many options - C, Rust, ElectronJS…

Again, this is your choice, but, depending on which platform/language you go with, some will make more sense than others.

For this project, why not? Being web-based will help alleviate any platform anti-agnostics. But, again, if you choose C or Rust, web development will be more involved than starting with JS.

I am not sure if this will reduce or increase your confusion:

  • JS was made for the web, and is inherently a frontend language. NodeJS is a backend language almost identical to JS. The two work very well, and will take you a lot of the way to your development goals
  • Python is inherently a backend language. It is often used in web development, but I often ask myself ‘why?’
  • Java is something I have very limited knowledge on. So, will not comment.

Finally, I will leave you with this:
Welcome to the freeCodeCamp community. freeCodeCamp strives to be a friendly and helpful community for all. Currently, the /learn platform offers a curriculum covering:

  • HTML and CSS (Responsive Web Design)
  • JavaScript and Data Structures (Useful, regardless of what language you want to focus on)
  • Visualisation (Course on D3.js - a bit niche, but fun)
  • Frontend Libraries (essential for popular web dev jobs, and extremely useful)
  • APIs and Microservices (Backend communication with NodeJS, Express, and MongoDB - recommended for learning how to interact with databases)
  • Quality Assurance (Backend principles with NodeJS, Express, Chai - testing library)
  • And a few courses focusing on Data Science, Machine Learning, and Information Security (mostly with Python)

In the end, it is up to you, and exactly how you want this application to be realised. Many start with the freeCodeCamp curriculum and take the transferable skills elsewhere - on different paths.

Personally, I have learnt a tonne from the fCC curriculum, and this has enabled me to build Fullstack web apps, as well as Windows and mobile apps with Electron and React Native. Now, I learn Rust, which I would probably not recommend for this application of yours, due to the youngness of its GUI libraries.

Hope this has helped

hey,
this is also something I’m not sure about. I think a native app might be better in the long run.
And I haven’t done the FCC curriculum yet, I had a look at the content and some things look familiar. But before I invest several 300 hours I thought I might ask on which one I can focus the most.

Hi Sky020,

thank you as well for your answer. I see, I will have to go through the FCC then and decide myself. When I tried a bit of programming 20 years ago (wow, how old am I?) I already had the same problem, and the answer was about the same; it depends :wink:

Now I’m really motivated and almost hope for a lockdown extension, then I will have enough time to learn everything.

Great source of information and community here :+1:
cheers,
node

I think something browser based would make more sense - that’s how most hotel scheduling apps work. Plus it will work on any computer or device that has access to the internet.

But yeah, this is not necessarily a simple project. You’re going to need a database, a server, and a front end. These are the things that the FCC curriculum teaches you.

1 Like