ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Seems that I have not kept up with evolution. I get the impression that Python may be the programming language of preference today. Basic seems to have "died-out". What are your thoughts?
My programming has been limited to incidental projects. Most of it VBA with MS Access, so I didn't pay much attention to programming evolution. Now that I am doing Linux (Ubuntu) I have noticed a dearth of references to Basic with Python being the Soup-du-jour, as you point out. Looks like I will be investing in a Python (hardbound) book. I do have the PDF manual, which I recently downloaded.
PS: Irony, after posting, I ran across this article "A Tiny Python Panadapter" in the April 2014 edition of QST magazine! So Python is being used for custom Linux based uses in Amateur Radio.
Given the rate at which Python has been changing, a hardbound book might prove to be painfully out of date. There are up-to-date instructional books available online, though personally, every time I try to Dive Into Python I end up as a lump in the middle of a snake.
PS: Irony, after posting, I ran across this article "A Tiny Python Panadapter" in the April 2014 edition of QST magazine! So Python is being used for custom Linux based uses in Amateur Radio.
Python is heavily used in film production (animation and VFX) and in scientific computing, it has excellent support for the rasberry pi, and it's an equally excellent choice for web development. On Linux, it's also IMHO the best way to write desktop applications.
... and it's an equally excellent choice for web development.
In following your links, I had an epiphany of sorts. PHP or Python to connect to MySQL with a browser (Firefox)? I've already set-up MySQl as the back-end database and I am currently using MS Access as the front-end, which I am planning to dump. My idea was to learn PHP and use it as the new front-end. Would Python be an alternative?
Quote:
Originally Posted by dugan
... it has excellent support for the rasberry pi, ...
The author of "A Tiny Python Panadapter" referenced the Raspberry Pi and BeagleBone Black. Even had a picture of the Rasberry Pi. A whole new world awaits. Thanks.
In following your links, I had an epiphany of sorts. PHP or Python to connect to MySQL with a browser (Firefox)? I've already set-up MySQl as the back-end database and I am currently using MS Access as the front-end, which I am planning to dump. My idea was to learn PHP and use it as the new front-end. Would Python be an alternative?
The tutorial (there's a link on the front page) takes less than an hour to go through.
You get the benefit of the Python language, which is much more consistent and easier to work with than PHP, and you get Python's standard library, which is second to none.
Keep this in mind ... programming languages donot "die out."
Always, IMHO, the best thing that you can do for your ongoing career is to familiarize yourself with another one. (Another language that is, not another career ... ... well, maybe.)
I recently worked on a COBOL project, in which COBOL was driving a very large IBM mainframe computer to do the very thing that IBM mainframes and COBOL [still ...] does best. Astonishing quantities of transactional information were being processed every millisecond, with absolute control as to the handling of fractional dollars-and-cents. Priceless.™ It was, and still is, the right combination for this job ... can you apply for the gig?
Every language, including non-procedural ones like "R" and "Prolog," tells the computer to solve problems ... yet, does so in a different way. These make them suitable (as they are expressly intened to be suitable) for different kinds of problems. You will learn a lot about those problems by learning a language's approach to solving them. Furthermore, and I can flatly tell you this from [decades of ...] experience, you will encounter legacy systems which were built in a combination of languages, and the fact that you can truthfully say (don't even try to bluff!) that you're familiar with them might just be the ticket that opens a door for you.
This is an indication of depthof experience, and I can also tell you that most programmers whose resumes I see, simply do not have "depth" (yet). You don't have to have created some major system in it ... such opportunities are not strictly under your control ... but you can rummage systematically through "the programmer's great tool-box" and get to know the many things that are inside. Don't expect someone to pay you to do it, either. Don't ask someone to give you an "attaboy" (a certificate). This is self-improvement. Professional development in your chosen field.
Last edited by sundialsvcs; 03-17-2014 at 06:59 AM.
Before starting with Python I was very optimistic, but it failed my first impressions (if you know Polish you can read about them on my blog). Now I'm programming quite a bit in Python and my opinion about it did not improve. I think it's a terrible language, yet it's still one of the best scripting languages, which makes the whole situation sad.
So if you are looking for a scripting language to learn sure go ahead with Python or Perl (despite the fact that hating Perl seems to be what cool kids are doing now, I don't think it's any worse than Python), but once you reach dozen hundreds of lines or so switch to C++.
Unless you're writing for the web in which case you're screwed as far as I can tell.
Quote:
Originally Posted by Steve R.
My idea was to learn PHP and use it as the new front-end. Would Python be an alternative?
Yes it would! And Python would be a much better alternative!
I just want to add that if you plan to do web development, I suggest learning Javascript. It's not because it's a good scripting language, but it's the only thing that's available in browsers. For advanced web pages, there simply is no alternative.
Not long ago, we had to use a different language for the server side stuff. Now we have node.js so we can use it on the server too.
Very often it's quite different things being done on the server compared to the browser. But a project usually have lots of functions and things you do on both. So a lot of code can be put in include files included by both.
It's easier to learn one language. And I think better to know one language well, than to know many languages half-way.
Keep this in mind ... programming languages donot "die out."
Bad choice of words on my part. Still do any programming in CP/M?
Quote:
Originally Posted by sundialsvcs
I recently worked on a COBOL project, in which COBOL was driving a very large IBM mainframe computer to do the very thing that IBM mainframes and COBOL [still ...] does best. Astonishing quantities of transactional information were being processed every millisecond, with absolute control as to the handling of fractional dollars-and-cents. Priceless.™ It was, and still is, the right combination for this job ... can you apply for the gig?
I understand that those familiar with COBOL can now get paid a premium since there are so few left who know it. I don't know if it is still true or not, its been a few years since I heard that.
To make a very long convoluted story extremely short. A consulting firm was hired (circa 1990) to develop a mainframe database application. They developed a flat database that utilized batch processing. At the time, personal computers with dBase were being introduced. As staff got access to personal computers they (secretly) minimized their use of the mainframe database in favor of PC based solutions. Unbelievable, that a consulting firm essentially dumped on us an obsolete difficult to use design for what should have been an easy to use relational database.
(Shrug ...) "Yeah, they're still out there." I'm sure it must be true. But, I'm sure that the exact story(!!) could be told in the context of the present day, with nothing more than a simple substitution of dates and programming-language names.
Face it, within our most-curious business, we are all simply "trying to make computing-machines do useful things for real people." (And to somehow get paid for our time. Heh.)
Sometimes, what we are attempting to do is "altogether new." And sometimes, it most-decidedly is not. Sometimes, COBOL (still ...!) is "the tool of choice!"
If you want to do dollars-and-cents calculations with arbitary precision such that "float-decimal data types simply won't do ..." lend an ear, my good friend, towards what this "oldy moldy" (sic!!) tool can still do! And is still doing!! ("Bah! These kids today!!") Rear Admiral Grace Murray Hopper was not wrong, "way back then."(And yes, I have one of her eleven-inch long "nanoseconds" as one of my most prized possessions.)
Right now, I'm bidding on a major project that, if I land it, will be (and should(!) be) "COBOL [almost] all the way!"
The more times you do it, and the more "different" times you do it ... (yes, and I am not afraid to say it, 'over however-many decades' ...) ... the more you realize that whatever you are doing now isn't, actually, "remarkably different than before." <<PHP | Perl | Python | Ruby | VB >> simply aren't "remarkably different." (Yet, say, Prolog, is.)
That, to me, is one of the remarkable aspects of this business: "first, you get to choose," and your choices never are limited by history. Yes, indeed: the technical choices that were made forty(!) years ago are not necessarily wrong today: they're just surrounded by more and more context. As you self-expand your knowledge to incorporate more and more programming-language tools, and thereby regard them in ever-greater context, you will see for yourself first-hand just what I mean.
"Hang on! All of us are [Still!!] part of a one-of-a-kind profession, the likes of which have never before existed!" Enjoy!
Last edited by sundialsvcs; 03-17-2014 at 08:51 PM.
I think you need to be a bit more specific about what you want from a language.
My thoughts on Python ... it's a fad. It's not backwards compatible, it's not well designed, it's not efficient, and it's not good for anything in particular (you can't write anything in python that couldn't be written better and more efficiently in another language). Ruby is part of the group of such languages.
Not intending to start a flame war, you just asked for my thoughts.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.