Thanks all for your responses! But I havent been convinced Perl is still popular.. If I can go back in time I would probably learn Python instead, but I already bought an Oreilly Perl Llama book and spent like 3 months reading it, so ill stick with Perl for now. Its not feasable I dont think for me to learn both as I have already alot to learn (AWS, Docker, ELK stack, Golang, Openstack, Nagios, and the list goes on). The last thing I want to do is learn two seperate techonologies that do more or less the same thing.. My concern is that as a sysadmin, my teamates are all using Python and so I wont be able to effectivly collaberate with them unless they know Perl.. I hoping I can get around that through Ansible modules which abstract the programming language through YAML.. I guess I should probably learn how to atleast read Python... What started me on this was I heard alot of core Amazon stuff is built on Perl (as Python was still in its infancy back then), but now their having a hard time maintaining it cause not alot of people know Perl anymore. And so now their trying to rewrite it all over to Python..
|
Learning to read Python will not be difficult. Within a few days you could have the basics down, along with some of the advanced stuff. For a truly beginner-friendly intro (probably not what you need) there is Think Python, free download from Green Tea Press.
For beginner-to-advanced, there's Let's Learn Python on Youtube. There are several other books, which will probably take longer to read. But if all you want to do to start is be able to understand it, you can start with practically anything. |
Quote:
Pick one and learn. When you feel you are getting VERY good, pick another and learn. Nothing goes to waste. Well, except perhaps the time you waste trying to figure out what NOT to learn. |
Quote:
Any programming language do 'more or less the same thing'...they make the computer do what you ask. If you're looking to learn one language, then you're not in the right field. The other things you listed above are NOT languages, but programs, and yes the list does go on. You will never STOP learning. As said, if you want to be effective, you learn BOTH perl and python, along with bash scripting, and any other language you encounter. |
Relevant, yes. Mega-popular, not so much. Perl has a reputation as a write-only language, and though that's really more the fault of the coder I can see it putting off admins and devs from using it for new projects.
|
Quote:
You'll find that most applications (and i.e. the Linux kernel) are still mostly C code. |
I learned Perl along with Java and a few other languages at university, but Perl was never used in any job or technology company I came across. Python landed on my desk as a language at work about 6+ years ago and seems to be more heavily used each year. It seems to be #1 for AI and it is even used to do AI for video games in some cases. It's not a bad language and is pretty easy to learn - plenty of tutorials. I had turned my nose up at Python when I graduated (partly as I had never heard of it at the time), but funny how things work out. It certainly has helped my career to know it.
Although there is advice here to the contrary, I would learn both at the same time, but that is easy enough when you have already learned about 20 languages - point being that once you get the knack for a few languages, you can learn new ones much more quickly. |
Quote:
|
Food for thought: It's still possible to be gainfully employed coding and supporting COBOL.
A +1 to Samsonite2010's thought about different languages. I have been hired more than once as a developer to work with languages I'd never seen or even knew about. The hiring managers knew I'd have to learn the language before I could be productive, but I had demonstrated that I know how to think logically about software development and was familiar with SDLC (Software Development Life Cycles) I once had a Jr. developer ask me how I seemed to see how to develop solutions so easily. I (perhaps flippantly) replied that I had learned computer logic wiring punch boards on IBM Punched Card Accounting Machines (PCAM). Languages only differ in their syntax...what they do is subject to the same rules. |
Quote:
To the OP, it is not throwing away Perl experience if you learn another language, you are using that experience and in fact expanding your skill set. If I was in your situation, I would learn Python because it seems your colleagues use it and would show a bit of initiative - as a manager I would commend that in your situation. Trying to work around the situation because you are more comfortable with Perl is not necessarily the wisest move. |
Quote:
It's like building a house; you don't say "I need ONE TOOL to do this, what should I buy?" You need lots, along with power and hand tools. Maybe some heavy equipment, but you don't just go get a hammer with a screwdriver in the handle and go "Well, THIS ought to do it!" |
Quote:
or maybe easier: see what depends on perl on your machine. on my machine: Code:
archlinux-xdg-menu asciiquarium automake avfs cairo-perl colorgcc dillo and i don't even code in perl. |
@freemedia2018 Awesome thanks for suggestions I'll check them out
@wpeckham I disagree, if that were true everyone would be using Perl cause of how much better it is than Python.. I agree with using the appropriate languages, e.g. C/C++ for low-level stuff, Perl/Python for userland stuff, Javascript/PHP/Go/Ruby for website stuff @TBOne Thing is I know there are also some very experienced sysadmins who say its all about Go/Ruby/Python these days, and that Perl is god awefull (I know its not, its the bad coding practices of many Perl coders). It was one of the authors of the Linux Administration Handbook (watch the interview on YouTube if you want: https://youtu.be/3pwD3BgKm1s).. But they have a point: Python is being used to develope AI and Configuration Management tools (CM tools, e.g. Ansible), and Ruby is also being used to develope CM tools (e.g. Puppet and Chef).. Go is being to develope containers.. Perl is not being used to develope anything anymore... And one of the things that I listed is a language (its Golang = Go).. Bash, Go, and I thought Perl would be all I need to learn, but its probably rather Bash/Go/Python... Dont want to sound like im complaining, im just saying it kinda sucks i may have wasted some time @ehartman well its too late to rewrite the kernel in another language like Rust/Go.. But I have nothing against C, I actually wanna learn it someday to write drivers... @ondoho I use Alpine Linux, but know what you're saying but im not going to maintain those Perl programs.. |
Quote:
|
Quote:
learning a bunch of random things.. You go to be smart and look at where things are going, so that you can make educated decisions.. |
All times are GMT -5. The time now is 05:06 PM. |