1

I'm working on a school project which I would like to showcase in a web browser or application.

I would like the user to control the work with a mouse or keyboard. I want to show a unique image based on where the curser is over a visible grid. An additional feature is the ability to switch to a different "stack" of images upon user input from the scroll wheel or in a dialog.

I have a beginner-intermediate understanding of Python.

Theoretically, I could write this using Sage, but I would like the feedback to be instant - a change shouldn't require a new calculation, just show a new image.

Additionally, I would like to create a feature which takes the user on a "tour" based on information attached to an image.

My first thought was to use an online website builder (Webflow), though an opportunity to learn a new language or expand upon my knowledge of Python is my first choice.

What language is best suited for this?

defarm
  • 81
  • 1
  • 12
  • What do you mean by *application* ? 'App' as in a mobile app ? – A P Jo Aug 20 '20 at 06:18
  • No, not on mobile. It also doesn't have to be on a website. I have a copy of Java: How to Program by Deitel. I'll give it shot! Thanks! – defarm Aug 20 '20 at 06:25
  • defarm , hold up ! why Java ? I wouldn't recommend learning such a complex language for such a heavily GUI based project . Python would be *way better* than java. – A P Jo Aug 20 '20 at 06:26
  • However, Java, like C/C++ is an excellent language to firm up programming basics. So if thats what your after, learn it. If the results is all you want, use JS / Python – A P Jo Aug 20 '20 at 06:34
  • 1
    It all depends on how much time you have, defarm. Its always better to learn the base laguages first if time isnt a constraint . Otherwise, languages like Python and JS are to be learnt. – A P Jo Aug 20 '20 at 07:37
  • 1
    In that case, it makes sense to wait to learn it. I took a look into the Deitel text to see if I could more accurately describe the program I would like to write. It looks like image maps may be a good subject to pursue. Though the first result returned links to a tutorial using HTML. When it comes to user experience, it doesn't _have_ to be instantaneous - this is for research. – defarm Aug 20 '20 at 07:41

1 Answers1

2

This is possible in Python, as nearly everything is (Python is a Genral Purpose Language), so you could certainly implement this in Python.

The best language for this, however,IMO, would be JavaScript.

Python will almost certainly get in your way or at least hinder you slightly in comparison.

An 'online website builder' is not likely to provide you with the required amount to control needed to implement you project - most of these are painfully simplistic drag-and-drog tools where any real control only comes from adding your own CSS/HTML/JS anyways.

JS is an incredibly useful language and also very well suited for nearly all web/browser projects, so use this opportunity to learn it !

Further, React Native can let you use JS for mobile apps too, if that's what you meant by 'applications' or you could simply keep it a web app.

PS. This may also be possible with HTML5, which is perhaps simpler and easier to learn, but I'm no a web dev so that will have to be confirmed by someone else.

I am sure, though, that this is very efficiently doable in JS.

A P Jo
  • 446
  • 1
  • 4
  • 15