The challenge to choose which additional technology to learn

I won't disagree with the power of Python but I will disagree on the general usefulness vs. JS in the context of FM. JS lets you use it's raw computing power AND a vast library of UI widgets, data visualizations, etc. All tightly and natively integrated inside FM.
You don't get that with Python. Plugins and micro-services have their place but they are outside dependencies that don't work on all FM clients in all circumstances.

I use Python a lot (just like I use C# a lot) but mostly for IoT devices and some big data analysis.
I'll still guide general-purpose FM developers towards JS and not Python.

4 Likes

I won't disagree with your not disagreeing....:wink:

However, for learning a language and how to program, and not for the narrow purpose for usefulness in FileMaker, I would say Python is the best choice.

Context...FileMaker -centric forum. lol The member base here starts with FileMaker. So for most developers here they are looking for UI benefits of JS. And over time I think more people will also see the computing power of JavaScript in comparison to the things FileMaker is a less performant in handling.

Python is a good one. And can be helpful for many integrations. It is definitely not as easy for the majority of users or developers that have only used FileMaker.

Look at the videos and posts on geistinteractive.com. @jeremyb basically recreated his JavaScript training session through a series of videos. Look at the posts on Soliant’s website.

The biggest JavaScript library I’ve used so far is DataTables, and a financial calculator library. Both are easy to integrate, and the learning curve is relatively small.

2 Likes

Thanks a lot!

1 Like

In aeronautics (and aerospace I guess) , assembler is still used to program some critical routines for controls (otherwise its C). CPUs employed in these units are pretty old stuff, compared to the main server or personal computing market.

Please please please do not muddle up Java and JavaScript. They are absolutely nothing to do with each other, except they start with the same four letters.

Historically, FileMaker Server has had quite a bit of Java in it, but this wasn't something which was exposed to FileMaker developers, it was just something FMI used to make it work. They are now (rightly) removing as much of it as possible.

JavaScript was invented by Netscape Inc (unlike Java, which was invented by Sun MicroSystems, and eventually bought by Oracle). JavaScript was originally going to be called LiveScript, but the name was adopted from Sun at the last minute, for reasons passing understanding (save for jumping on the OOP bandwagon, which was emerging at the time). JavaScript is really better known as ECMAScript, but the name isn't as catchy.

When I hired programmers on a regular basis, wed always ask the question "What's the difference between Java and JavaScript", but it was really a trick question. It was also useful to see if a potential recruit was someone who was willing to bullshit beyond their actual level of expertise.

1 Like

Python is very popular, and used for many different things.
It's popular for SysAdmin, and for writing network daemons. Also sometimes used for API programming, good as a teaching language, and getting a new sphere of activity in A.I.

My original language of choice was PERL, out of which PHP later grew. PHP was the "designed for the web" replacement for PERL (which was more of a general purpose language, although it was widely used for web site development in the early years). Python takes the "general purpose" crown from PERL.

Both PHP and Python are interpreted languages, meaning that they're not as fast in execution as some other languages, but they're very good for beginners, and any programming scenarios without much advance planning, or frequent changes of mind / spec. PERL has the feel of an interpreted language, but is actually flash compiled on execution, (the difference is not normally important)

JavaScript is rather more "type" oriented than PERL and PHP (which are very loosely typed). It has the feel of an object-oriented language, (eg in terms of code syntax) but is actually based on associative arrays in terms of data. When it was launched, it was much better for graphic user interfaces, as it was optimised for event-queue / interrupt processing, rather than old-style procedural programming such as PERL/PHP.

Another key factor is the availability and currency of pre-written libraries for each language. This is why I've used Python in the past (eg if a PERL or PHP library isn't available to do what I need). JavaScript was originally known for having one of the worst floating point maths libraries in the history of computer science. I don't know if it got any better in recent years; I've been so appalled in the past that I never tried to use it again.

3 Likes

Jeez, I certainly know the difference being a Java developer for 18 years...

I know the history. I'm Java certified.

In my postings, the now hundreds of them, I've posted micro-service examples in Java using FileMaker. Recently, (see my video I just posted), I also show how to run JavaScript using a micro-service. That micro-service is "Java", but uses the Nashorn library to execute the JavaScript. You can read more about it if you like.

Sorry my posts were not clear.

No confusion here. :slight_smile:

Thanks,

Yup. Good explanations. At this point, it's really about what is best suited for the task. I don't have to try and run an Amazon-type service, so they all pretty much serve my needs.