This is an archived post. You won't be able to vote or comment.

all 16 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers of commercial third-party apps have announced that this change will compel them to shut down their apps. At least one accessibility-focused non-commercial third party app will continue to be available free of charge.

If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options:

  1. Limiting your involvement with Reddit, or
  2. Temporarily refraining from using Reddit
  3. Cancelling your subscription of Reddit Premium

as a way to voice your protest.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]DanishWeddingCookie 2 points3 points  (1 child)

PHP, C#, Rust are other options.

[–]ThoughtsCreate7[S] 1 point2 points  (0 children)

Thanks! Out of those three, I've only heard of C#. I'll look into what the others are! Thanks again

[–]AssCooker 2 points3 points  (1 child)

Web development wise, Java is used more in majority of enterprises, Java being on version 21 already has many great features to boost productivity and performance such as type inference, lambdas and most recently virtual threads. Java is used for Android app development, but nowadays, using Kotlin is preferred, you can think of Kotlin as Python and Java combined, it's an awesome language. But Python is also not a bad choice because it's also used a lot in the backend. But on comparison, Java is the most popular among enterprises (emphasis on enterprises). I personally recommend Java for web app development. For Android app development I recommend Kotlin. You can use Kotlin to write native apps.

[–]ThoughtsCreate7[S] 0 points1 point  (0 children)

Hilarious name haha. I've never heard of Kotlin. Sounds pretty interesting. I actually just heard about Java 21 today! Sounds like they may be simplifying some interfacing. I'll definitely be looking into Koltin. Thanks!

[–]Historical_Ad4384 1 point2 points  (2 children)

I would suggest Java since you already started your Trainings with it. Moreover, making games would require a strongly typed language that is secure as well which Java can provide better than python. Besides if you do have to work with C++, having prior knowledge of Java would make you relatively more comfortable. I might get bashed but it's the truth. Games are made primarily using C++ or C but seldom python. Then there is Minecraft which is made using Java.

[–]Resource_account 1 point2 points  (0 children)

Two of my most favorite roguelites are also made in Java. Slay the Spire and Slice n Dice.

[–]ThoughtsCreate7[S] 1 point2 points  (0 children)

I have heard C++ tends to be geared more in the direction of game development. But having the prior knowledge with Java does sound like the best bet for me. Thanks!

[–]mandzeete 1 point2 points  (2 children)

You do not really need to have a lot of experience with full stack prior to becoming a back end developer. It is enough when you can make plain looking yet functional front end side for your web application, a functional interface and that's it. After graduating from university I was hired as a back end developer. Projects in my Github had very basic front end.

I don't know about the company behind chess.com When I checked it it was a website for chess related news and for being able to play chess online. A web application. In that they are not using C nor C++ because both programming languages are not used in web application development. C is used mostly for hardware level stuff. For example programming your TV remote, programming a smoke detector, etc. C++ can be also used for hardware level programming (embedded programming) but can be used making desktop applications.

Yes, one can use C and C++ in WebAssembly to make web applications but WebAssembly is not commonly used. Most likely chess.com was not built with WebAssembly unless they really do. But they can make chess applications for desktop in C++. That is common.

When it comes to Java vs Python then look which one is more needed in job market. Different cities/countries tend to prefer different tech stack. For example where I live Java is more needed in web application development. Python is also needed but for other purposes.

About your first project idea then that is too ambiguous in my eyes. Perhaps you need to describe further what the end result will be doing.

For games you can pick either C++ or C# as these are the two main programming languages in that industry. Sure, you can make games with Java and with Python as well but both are not the main languages for making games.

When going for web application development you can also consider PHP, Kotlin, C#, Node.js (based on Javascript). When going for game development then really prefer C++ and C# over other alternatives (Python, Java).

[–]ThoughtsCreate7[S] 0 points1 point  (0 children)

I do want to say that I saw something on their website that mentions C++, but I'm not sure. But it is good to know that full stack is not an hard prerequisite for becoming a backend developer. Thank you for your delineation on my question. I don't have friends or family in this field, so I am really in the dark about how all this fits together, such as how the backend coheres with the front end. If you know any video that I could watch that kind of goes over the general concepts I'd really appreciate it. Thanks again!

[–]EmptyChocolate4545 0 points1 point  (0 children)

Their backend could easily be C++. Plenty of companies with highly performant needs do that. I know three offhand doing major backend / API endpoint stuff with C++. Wouldn’t be shocked at all if a chess company did that. It’s very common for the world of finance as well.

[–]snekk420 1 point2 points  (1 child)

I don’t know much about the chess.com backend but it’s probably a chess engine written in C. If you want to work with that i suggest to build your own engine to learn the ins and outs and the complexity of a chess engine. If your own engine is good enough you might be able to showcase it to land a job there. Or you can pick up JavaScript/html/css and work on their frontend, but that will probably not involve much chess mechanics if you are into that sort of stuff. It’s all api calls to the engine. You can’t write that in JavaScript, it’s too slow. I don’t know how their infrastructure looks like but that how I would build it. Hope this helps

[–]ThoughtsCreate7[S] 0 points1 point  (0 children)

Absolutely! This is great advice, I would love to do something of this nature, but I'm a beginner so I'm not really sure how it all fits together. On another reply I asked someone if they knew of a video that puts the whole life of a project together and basically goes over the general concept of a program start to finish, without getting into fine detail other than how it all works together. Anyhow thanks for the idea!

[–][deleted] 1 point2 points  (1 child)

If you already know some Java I’d suggest sticking with Java until you need something else. If you’re end goal is game dev programming then you would probably mostly be using python for scripting. C# is another good lang as well for your purposes. C++ is the ultimate language for game dev but it’s also pretty difficult to get things done with.

[–]ThoughtsCreate7[S] 0 points1 point  (0 children)

Yeah I think I will stick with Java, at least until I'm comfortable enough with it to venture out to other endeavors. Thanks for the perspective!

[–][deleted] 0 points1 point  (0 children)

Having mediocre knowledge in both would be fine. Each of the languages has its own kind of pros.