Programming language

Hello,

Please suggest, which programming language should I learn which have the scope and you think it can be the most demanding language in the world in future. Now I have the full grip on PHP

This is a forum specifically for the Arduino platform, which is programmed only in C++.

abdulamex:
Hello,

Please suggest, which programming language should I learn which have the scope and you think it can be the most demanding language in the world in future.

The genetic code. :slight_smile:

C's been around for four decades. That should tell you something.

econjack:
C's been around for four decades. That should tell you something.

A bit of a dinosaur ........

...R

Robin2:
A bit of a dinosaur ........

...R

Delta_G:
The genetic code. :slight_smile:

With mine you could make a dinosaur.

Only problem with biological beings compared to in silico AI is transferring the programming from one generation to the next. That's a LOT easier with microchips than biological neuron brains. Once you have one Watson, creating 100 of them becomes a trivial manner of gathering components.

But the biological are WAY better at replicating themselves from the local environment which is an important skill. Such self replication hasn't been seen in silico yet. You don't have to interact with them nearly as much once you create them.

To ensure that your skills remain "in demand" over time, you should expose yourself to several Computer Languages, and develop expertise/knowledge in a field that is independent of the actual language used.
For example, "Embedded Programming", "Databases", "Networking", "Mobile applications", "Web Design", or "Scientific Programming." Languages used in more than one field are preferred.

I think I'd consider PHP almost exclusively a "Web Design" Language (I actually know nothing at all about PBP!). I'd say that the next language you should learn should have some roots in Web Design, but also be something that is used elsewhere - Javascript is slightly more broad, and adds more client-side knowledge. Java too, although it's future is somewhat uncertain. Java is well-designed enough to be a useful learning language. Python is also used in web design, as well as local programs and even embedded systems, these days.

If you are interested in embedded systems, you will probably need to learn C some day (even if it's in the "C is a subset of C++" sense.)

westfw:
To ensure that your skills remain "in demand" over time, you should expose yourself to several Computer Languages, and develop expertise/knowledge in a field that is independent of the actual language used.
For example, "Embedded Programming", "Databases", "Networking", "Mobile applications", "Web Design", or "Scientific Programming."

+1

IMHO if you are reasonably competent in any of the common languages you will be able to program in any other language without too much difficulty. Lisp might be a struggle:)

IMHO the valuable skill is being able to envisage how to implement a solution to a problem. It requires a broad knowledge of techniques and tools. For example knowing that an array is the appropriate tool for a particular task. But if you don't remember the details of (say) how to implement an array in Python it just takes a few minutes on the web to find out. Likewise for the difference (if any) between a particular query in PostgreSQL and SQLite.

Some light reading on PHP by one of my favourite bloggers.

My favourite language is Ruby which, with Ruby on Rails is widely used for web programming. However Ruby is a fully Object Oriented general purpose language. JRuby has the advantage that is sits on the Java JVM.

I have given up Ruby in favour of Python simply because Python is more common among Arduino users.

...R

For some Arduino compatible, higher powered microcontrollers, such as the SAMD series, you can also run a couple variations of Python. And Forth runs on ... well, everything.

But if you have the Arduino IDE, you will want to use C/C++. All example code is written in C/C++.