DEV Community

Joe Hobot
Joe Hobot

Posted on

Why did you chose Programing Language XYZ?

Just like the title says, I wonder why people chose Python or Java or GoLang etc.. And also if you say learned Python and you transitioned to xyz language, how easy/hard was it for you?

Top comments (17)

Collapse
 
johannesvollmer profile image
Johannes Vollmer

I love Rust because it enables me to really express my thoughts. For example, real immutability enables simple designs by allowing you to provide read-only access to fields. Enumerations ("Tagged Unions") are a great alternative to Inheritance. Option types instead of 'everything could be null' really help avoiding mistakes at compile time. Plus, Rust has performance similar to C++. Before learning Rust, I didn't know how important an ergonomic dependency management system is. <3

Collapse
 
lyfolos profile image
Muhammed H. Alkan • Edited

I love two languages: Python, OCaml (also F#)
I chose Python for simplicity, ecosystem, and popularity. Popularity makes it easier to find a job. Simplicity is awesome. It's so similar to PSEUDO Code so it's easy to learn. The ecosystem is really big, but there are a little bit bad libraries so.
I chose OCaml for because it's functional, advanced, compiled (directly into native code), ML (Metalanguage, not machine learning), functors, generating lexers & parsers & compilers easily (First rust compiler was written in OCaml), and so on. It's perfect, but there are no so many people using it. There is F#, which is really similar. Even I can help F# dev as OCaml dev with 0 F# knowledge!

Collapse
 
lewiscowles1986 profile image
Lewis Cowles

I've learned many C-style langs, also some lisp style and some esoteric ones. I've only seen a few I don't like, for example haskell, brain-f***.

For professional projects I now try to work within C, C++, Java, Golang, Python or PHP with a handful of DSL's and declaratives. I do like C# (so similar to Java on surface), but don't have time for it in my life, and will probably drop it like I did PERL, various BASIC dialects and the Pascal's.

I Use languages generally because clients are using them, or there is a significant body of work.

Language I'm interested in but cannot get enough time for is Rust. I'm not good enough with rust nor do I have heaps of systems-programming experience so work isn't an option. I've also been updating my C++ so it's not just C with classes and I can use newer language features. It's a journey, but also not something I feel competent in as a full-time programmer.

Whatever people pick, I hope they know that as long as they don't hate the language or it's concepts, they've made a good enough choice for right now.

Collapse
 
jsn1nj4 profile image
Elliot Derhay

Liked especially for that last statement. People should choose X language because it makes sense to them, they enjoy using it, they see an opportunity to do something cool with it, or because it solves a problem -- not because it's the most popular or other people won't pick on you for using it.

Collapse
 
buphmin profile image
buphmin

My languages kind of chose me in the beginning. My first job my coworker had used some php to accomplish some tasks so I picked it up to continue automating some things. This eventually led us to build a marketing feed ingestion website which we wrote with Symfony/PHP/Python and gearman for async scaling. The web requires javascript so that came along for the ride.

Eventually I moved jobs and out of the silicon valley area (I mean who can afford that rent!?) and eventually discovered typescript. This was a glorious new way to write javascript. Very recently I had a chance to do something for a one of project and decided to use Go, which is very easy to learn. Then very recently I decided to take a modern C++ udemy class, though I have not yet done anything with C++.

Overall I would say transitioning languages is not that hard. They mostly share the same characteristics and you just need to figure out the exact syntax. I suspect the biggest thing that will make using C++ difficult is the fact that there is just so much syntax to remember.

Collapse
 
fushnisoft profile image
Brahn Partridge

Bah. A pragramming language chooses you!

Collapse
 
kvie profile image
Karyme Virginia

I'm learning Ruby for the exclusive reason that Flatiron School teaches Ruby. (Later I'll also learn JavaScript for the front end)! Prior to this, I was learning C++ because my college taught C++. So in many ways, my choices were made simply by what resources were available to me.

If I were to choose any language and be able to have great resources for it, that language would be Python. However, I've fallen in love with learning Ruby, and I can't wait to start making applications in Rails!

Collapse
 
adrianodennanni_2 profile image
Adriano Dennanni

During a normal week, it is very common for me to code in at least 4 different languages, depending on the project.
However, my favorite language is Ruby. I learned it only for using Rails, but it ended up to be my "main" language.
I can transform my toughts into code faster with Ruby.

Collapse
 
rapidnerd profile image
George

I learnt:

  1. Visual basic: Got bored when I was a kid and this at the time was recommended to learn. I've never liked it.

  2. Python: I wanted something more than Visual basic, my brother had been writing Python since 2009 and suggested it to me.

  3. Java & C#: I originally went into games development and found out that these two were the most popular for game development.

  4. C & C++: Its currently on my university course but back then I wanted to learn something that is involved in almost everything, you'll find them in operating systems, languages, networks etc

  5. Rust: I love the feel of Rust and the C/C++ aspects of it, the cargo package I have found to be very good also.

At university we're being taught web dev (HTML, CSS, JS, TypeScript) in the next year. While I know the first three to a good extent TypeScript is next on my list.

Collapse
 
hawkinjs profile image
Josh Hawkins

Each language has pros and cons!

  • I <3 JavaScript for full stack web work, often with universal rendering
  • Python and R I like for tasks I pair with Scientists on, data science work, etc. They seem to know the languages, and the ecosystems are fantastic for scientific calculation.
  • I choose C++ when it comes to cross-platform high-performance work, and drag Qt in to play if I need a GUI
  • I choose C when I'm feeling feisty and want low level work with utmost control and no framework "magic". I.e., protocol level work
  • I choose Elixir when I need extreme levels of concurrency

That sort of thing! It's fun to learn new languages imo, and I enjoy finding how I can best leverage them for different problems

Collapse
 
jsn1nj4 profile image
Elliot Derhay • Edited

I learned Java while in college, though only the beginner's courses. Next was JavaScript for web, and also VB and ASP.NET with C#. Lastly, I learned PHP during a senior project because my teammates used it.

Regarding .NET, I do tend to shy away from MS technologies when I can get away with it, but these 2 classes were easy-A; I barely learned anything in them. Nothing against them in particular though. I've heard some good things about ASP.NET with C#.

Anyway, I ended up sticking with JS and PHP. With JS, I eventually ended up learning MeteorJS, and recently I started learning Laravel and Vue for my newest project -- all fun stuff.

Edit: I'll add BASH to this list. I use this at work occasionally for a few things, and it definitely does come in handy.