<div dir="ltr"><div dir="ltr"><p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br></p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">John,</p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br></p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">I am new to the list as well, but it’s not entirely clear to me from the thread, what specifically is going to be developed?  Are these one-off support/automation kinda scripts that are for development purposes?  Is it something maybe a bit more heavy like a native / cross-platform UI?  I feel that some of your requirements for a language would derive from the use-case itself.</p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br></p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">UI development in Python is ugly.  And by that, I mean the UIs themselves are ugly.  If you want something native you’re likely better off using C++/QT and then if you want, exposing some kind of Python API that people could use to interface with whatever you wish to expose.  It’s super easy to create ‘scriptable’ interfaces for c/c++ apps using lua, python, etc these days.  Another alternative is having the program you deploy, just host a web service and then use Electron for the frontend.  That way, the entire UI is all regular html/js/css.</p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br></p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">There’s also something to be said about the community surrounding it and the set of libraries available for various purposes.  Python has both a rich standard library and very large set of additional libraries available, across domains (mathematics, compgeo, telemetry, geospatial, etc…), all useful items.  You name it, you can quite likely find it for Python.</p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br></p>
<p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">Joseph Armbruster</p><p style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">KJ4JIO</p></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 20, 2021 at 9:39 PM John R. Frank via Ground-Station <ground-station@lists.openresearch.institute> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">Hi.   I'm new to this list and want to offer three comments on languages, in case these perspectives are helpful:</div><div dir="ltr"><br></div><div dir="ltr">(1) It's easier to build larger projects on widely adopted languages, like python [1] [2], because: (a) easier to recruit, and (b) more libraries.  Python comes with "batteries included."[3]</div><div dir="ltr"><br></div><div>(2) I love python because it's so easy to write good medium-sized programs.  However, many python developers have been converting to Golang [4].  My most recent startup did a groundup rewrite from python over to golang at about halfway through its seven-year journey.  We did this for two reasons:  (a) Python fundamentally cannot do concurrent programming inside the language [5] while concurrency is so central to Golang that its almost in the Hello World [6], and (b) Golang's strong-typing helps structures stay clean even when you have many people working in the code base.</div><div dir="ltr"><br></div><div>(3) That said, when writing high performance code, all the kool kids that previously did C/C++ are now jumping on Rust, because Rust let's the programmer manually control memory in a more powerful way than previous languages [7]. </div><div dir="ltr"><br></div><div dir="ltr">Regards,</div><div dir="ltr">John</div><div dir="ltr"><br clear="all"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr">[1] data animation of <a href="https://youtu.be/Og847HVwRSI" target="_blank">Most Popular Programming Languages 1965 - 2019</a></div><div dir="ltr"><br></div><div dir="ltr"></div><div dir="ltr">[2] <a href="https://octoverse.github.com/" target="_blank">https://octoverse.github.com/</a> see plot of most widely used languages over recent years</div><div dir="ltr"><br></div><div dir="ltr">[3] <a href="https://docs.python.org/3/tutorial/stdlib.html#batteries-included" target="_blank">https://docs.python.org/3/tutorial/stdlib.html#batteries-included</a></div><div dir="ltr"><br></div><div dir="ltr">[4] <a href="https://www.google.com/search?q=switching+from+python+to+golang" target="_blank">https://www.google.com/search?q=switching+from+python+to+golang</a></div><div dir="ltr"><br></div><div dir="ltr">[5] <a href="https://stackoverflow.com/questions/2150144/is-python-a-serious-option-for-concurrent-programming" target="_blank">https://stackoverflow.com/questions/2150144/is-python-a-serious-option-for-concurrent-programming</a></div><div dir="ltr"><br></div><div dir="ltr">[6] <a href="https://tour.golang.org/concurrency/1" target="_blank">https://tour.golang.org/concurrency/1</a></div><div dir="ltr"><br></div><div dir="ltr">[7] <a href="https://pcwalton.github.io/2013/03/18/an-overview-of-memory-management-in-rust.html" target="_blank">https://pcwalton.github.io/2013/03/18/an-overview-of-memory-management-in-rust.html</a><br><div><br></div><div><br></div><div>--</div><div>John R. Frank</div><div>N9WLY<br></div><div><a href="https://www.mit.edu/~jrf/" target="_blank">https://www.mit.edu/~jrf/</a><br></div></div></div></div></div></div></div></div><div class="gmail_quote"><div><br></div><div> </div></div></div>
</blockquote></div>