DEV Community

Bret
Bret

Posted on • Updated on

(POSSIBILITIES) what languages are good to learn?

Right now, I’m focusing on Python + Django.
I like it, it seems better than JavaScript at times, but it seems like it’s a little bit “categorized” in a way that it’s, limited to what you do.
JavaScript can do allot, and that’s were it’s get annoying with how much code you have to think of in a way.
I like the “concept” of how swift looks like, it seems like objects are right there to style and define?
Java or Kotlin.... kinda seem that way. Are they good?

I like python better than JavaScript, but I’m kinda liking React better than Python.

React adds a “structure” to JavaScript. I don’t like plain JS in a .js page.

I’m leaning towards using Vue again after better knowing JS with React. But,
Idk what to really focus on with the “stable” type of needs with code.
Is Kotlin good, or Java? Is Python really on a rise to what people want?

Again..... if you can see what I mean by.... how swift looks like how it works, where you can style/define at the same time your “programming”? I like that, but I like a better “narrowed down” plate of code.

Top comments (28)

Collapse
 
pentacular profile image
pentacular • Edited

Languages and frameworks are easy; programming is hard.

So, it doesn't really matter which languages or frameworks you practice with.

Focus on the hard bit - programming - in whatever form is convenient.

Collapse
 
yobretyo profile image
Bret

Ok. Well the look of Swift, I like, and it seems like Java is like it?
I like the OOP of React, it adds a structure to JavaScript in a way.

Which language has a strong base? I just looked into JetBrains Kotlin, and it seems good.

Collapse
 
yobretyo profile image
Bret

Do you program/ define objects & style.... in swift?

Collapse
 
pentacular profile image
pentacular

I'm not quite sure I understand the question, and I haven't had reason to use swift so far, but it seems like it has fairly traditional objects, with support for generic methods, which is nice.

If it looks interesting and helps you do something interesting, then I'd give it a try.

Most concepts in programming are very transferrable.

Thread Thread
 
yobretyo profile image
Bret

Ok 👍, but I don’t want to be limited to Apple with swift. So, what would be universal? Is “Java” needed?

Thread Thread
 
pentacular profile image
pentacular

The point is that you're not limited to the first language you learn.

Personally, I suggest starting with the language that's easiest to get anything done with.

Once you've figured out how to do something easy in language X, it's much easier to figure out how to do something easy in language Y.

Languages aren't football teams -- you don't need to stick to one. :)

That said, Java is a fine language, although I'd hesitate to recommend it as a starting language because there's a fairly high set up cost before you can get it to print out something like 'hello' or draw a button on a screen.

Thread Thread
 
yobretyo profile image
Bret

Cost, like what?
With languages, first it’s JS, but using it more with React vs itself. Then Python is what I’ve been focusing on because I’ve heard it’s more narrowed down of what you do. But, it seems like it’s very categorized in a way. There fine lines between web, DS and ML ect...

Thread Thread
 
pentacular profile image
pentacular

A cost like needing to write a bunch of stuff just right before anything happens other than error messages. :)

Thread Thread
 
yobretyo profile image
Bret

So, is Java or Kotlin good?
I keep hearing “look for what’s in your area”, but again, it’s people who are looking for 3+ years. I’ve applied but no response from business that like.

Thread Thread
 
pentacular profile image
pentacular

If you don't know how to program, the job opportunities don't matter.

If you do, just pick up the languages which provide the most opportunities, as the need arises.

Thread Thread
 
yobretyo profile image
Bret

Ok. I’ve been seeing Angular as a request..... but isn’t that fading out?

Collapse
 
jamesroyston profile image
James

Echoing what others have said -- just pick something. It doesn't matter what. JavaScript is a great first language and you'll be productive with it quick. Python is, too. At this stage, I'd try to ignore the allure of prioritizing job opportunities and requirements and just learn the basics (being consistent and whatnot).

If you HAD to pick based on job market (idk why you would right now, but let's humor the thought), either pick based on what's in demand in your area + what you are interested in or (better) pick based on what you are interested in, with small consideration for ease of learning.

Languages that typically get referred to as easy to learn:

  • Ruby
  • Python
  • JavaScript

Why? Because they require less setup to get your first programs built.

Languages that typically get referred to as harder to learn (but still fine, especially if you are interested in specific platforms/types of products):

  • C#
  • Java or Kotlin
  • Swift

Why? Because these languages have more rules to follow, that (in my opinion) aren't necessary for learning the basics of programming.

I chose JavaScript back in the day because it is one of those "easier to learn" languages AND it had job opportunities for me in my area and around the country.

Collapse
 
yobretyo profile image
Bret

Thank you! Ive had a tough time with JavaScript. Untill I started using React, JS didn’t make sense on how to truly use it, but React adds a “structure” to the vanilla JS.

I’ve been concentrating on python, because I want to narrow down the “need”, so it’s not as up in the air, like how html/css is. JavaScript is a bit more directed to what your going to do, but there’s still allot of syntax to think of, and different ways to do one thing.

Java and Kotlin interests me,
do you basically style at the same time? It seems like swift does that.
I like making objects in React, and the props to dynamically change it.

Collapse
 
jamesroyston profile image
James • Edited

do you basically style at the same time?

In what context? In React, you could style your components at the same time via CSS-in-JS or you could use traditional css files and class names.

While I definitely believe that "liking the language you work with" brings joy as a developer, it's less about that and more about what you like to build.

React is a library used primarily for making user interfaces in the browser. Does that interest you? Building things like Netflix, or eBay, or even internal tools that companies may use to manage assets and employee benefits, etc.

Java is primarily used for backend development, but that doesn't mean you won't run into HTML and CSS while using Java.

Kotlin is used for building Android apps. Java can do this too.

Swift is used for building iOS/macOS/tvOS/watchOS apps. It has it's own way of styling components (but this implementation shouldn't be at the forefront of your mind, tbh).

One way to think about it is this: do you want to SEE what your changes look like as you work? If yes, maybe JavaScript, Kotlin, or Swift is for you. Does the sound of making the rectangles that a user will see on their screen not interest you? Maybe choose Java, JavaScript (Node, specifically), or stick with Python.

There will be "tough times" with every language. Consistency and effort over time is what gets you passed them, not language features.

Thread Thread
 
yobretyo profile image
Bret

Thank you, I like to see what I’m doing yes. I like python, but maybe more data because it goes into allot of typical css/HTML. I like making interactions more, some styling to define what I’m doing.
I saw swift code can define objects and colors as you go?
It looked like Java was similar, I like to see some visuals.... but also I want to do something that is more narrowed down to what I’m going to do.
So between Python and Java,
Which is better for what?

THANK YOU

Thread Thread
 
jamesroyston profile image
James

These languages aren't my wheelhouse. Keeping that in mind, I generally see that python is great for ML and data science, while Java is chosen for enterprise applications. That said, they both apply to "backend" applications, and they both allow you to build HTML templates that you can serve to your users from the backend.

Again, Java can also be used to build Android apps- python cannot.

I saw swift code can define objects and colors as you go?

I don't know, honestly. Could you elaborate more on why this is concerning/important to you?

Thread Thread
 
yobretyo profile image
Bret

This is a picture of some of the Swift I’ve seen

Thread Thread
 
yobretyo profile image
Bret

I tried to upload a picture but it didn’t work. I guess it might be Xcodes Visual way. If you search for “Xcode swift” it seems like there’s a better visual of when your writing code.... I like that. It seems like things are better displayed or defined. Is Java like that?

Thread Thread
 
jamesroyston profile image
James

Sounds like you’re referring to the text editor/IDE’s syntax highlighting?

so like this?

const hey = hey;

function sayHey(){
  console.log(hey);
}

If that’s the case, it’s not a language thing. Swift and Xcode are two peas in a pod, but there are great IDEs and editors out there for all of the other languages (Jetbrains has one for nearly all the popular languages, VS Code is good too). The IDEs have options to change your theme to your liking.

Thread Thread
 
yobretyo profile image
Bret

If you search for Xcode Swift:, a example is:

Struct FeatureCard: View{
var Landmark.FearureImage

then there’s other code like

.resizable
.overlay

is Java like that?

Again, I don’t want to learn swift and be limited to Apple

Thread Thread
 
jamesroyston profile image
James • Edited

Those look like either methods on the object or some naming convention specific to Swift. I have no idea if Java is exactly like that, no. But I know that Java (and lots of other languages) uses dot notation to access methods on objects, like in your example.

Again, may I ask why this specific language feature is important or concerning for you?

In all honesty, it’s a very small detail that shouldn’t have much weight in your decision to learn something. I’m not sure I can help you much further than the advice I’ve already given, unfortunately.

Just pick something and stick with it long enough to be able to build stuff without needing to always follow a tutorial (reading examples and asking questions in google is fine and normal). Good luck!

Thread Thread
 
yobretyo profile image
Bret

Thank you! I’ve watched swift videos and it seemed like allot of object making and then directing what you want to do with it. That’s what i like (as far as I’ve seen) with swift. I’ve watched some samples of Java, and it seems to be like that, but more of the info that you don’t “see”, then there’s Kolin, that looks like that as well.

Collapse
 
didacsf profile image
Dídac Sementé Fernández

A language is just a means to an end, so unless you have a specific end in mind, just simply pick one that you fancy for the sake of learning.

Collapse
 
yobretyo profile image
Bret

End, like what?. I like how to be able to make things interact, communicate, work. ML and DS catch my eye, but I’m not sure yet.

Collapse
 
misobelica profile image
Mišo • Edited

It does not matter what you choose if it will be simple enough for the begginer. And Python is definitely one of the best fist languages and if you like it you don't need to reach for anything else.

But from the text I feel you would like try something else just to know if something is better maybe. This is hard because everybody has different preferences but I hope my short overview could help you a little dev.to/misobelica/my-language-scor....

Collapse
 
yobretyo profile image
Bret

thank you. well, I'm starting with python/Django.... it kinda seems like compared to Vue, React, its kinda unorganized at times. it gets weird with what you import and there no auto import?
but... if i wanted to do DS or ML, wouldn't i need college?

Collapse
 
misobelica profile image
Mišo • Edited

It seems that you say it how it comes and mix one thing over another 😀 But I will try to react.

  1. I don't know what you mean by "unorganized" but maybe if you don't need something big you can take a look at FastAPI instead of Django. It's simpler and does not carry so much legacy what could seem unorganized sometimes.
  2. I don't know what do you mean by "auto- import" but if you use some more advanced IDE like PyCharm then you basically don't need to care about imports.
  3. This is programming. The college helps sometimes but you can do anything without it if you are good at it. At least here in Europe almost nobody cares about the education but the actual soft/hard skills are important.
Collapse
 
yobretyo profile image
Bret

I guess it won’t let me upload the image.... what I’m referring to is I guess the Xcode, you can define objects as you go and use them, and there’s a visual to it. Is Java like that?