PCPartPicker

  • Log In
  • Register

Coding Language Choice

Forum Search

Guidelines

  • Be respectful to others
  • No spam
  • No NSFW content
  • No piracy or key resellers
  • No link shorteners
  • Offensive content will be removed

Topic

tragiktimes101 9 months ago

So, I have asked a similar question in the past. But, I have recently been given a reason to get back into, and try to become more proficient at coding. My problem is I'm not sure which route I should take. I have a bit of experience in C++, but don't know if it's enough experience to justify choosing to continue with it over another. If not, it would likely be a decent time to switch to a new language. I have been considering boring old Java and possibly Python (recommended by Philip - IIRC). But, the crux of my dilemma is I don't want to pick a language that doesn't really mesh well with my physics background. Ideally, I will be coding programs to analyze physics-based data in the future. Not right now, but in the future. But, that doesn't mean that's my end all be all. If possible, I would like to become proficient enough in a language (mostly any language) to make some money for the time being while also increasing my knowledge base.

This is the programming position that caught my eye. Doesn't have to be that exact one, but a position like that. But, I have absolutely no experience in searching for a good job based around coding. If any of you feel so inclined to take a look at this listing and tell me what you think (would it be a good entry position job, a good place to increase knowledge, and potentially decent pay?). I don't need to make bank. Really, I'd be pretty happy with 1300+ / month for the time being. And, hopefully, learn a thing or two while there. My whole career isn't centered around coding, but it is affected by it. When I begin to get to more advanced areas in astrophysics I will need to be able to develop programs to analyze large datasets. So, a basic knowledge and experience with this would probably be a good idea.

Sorry for the host of questions. I have recently had a shocking event that may lead to me needing to find different employment (I'll divulge that in another post if it comes to it), so I need to try and put some contingencies in place. This may be a bit outside the realm of practicality, so if so, please just let me know! :)

I appreciate the help and advice, all.

Comments Sorted by:

gorkti200 3 Builds 2 points 9 months ago

That job looks a little suspect tbh. It's not actually a job/position at all, it's a posting for an agency that does job placement. IDK them or their reputation. I'd do some homework on the company. They seem to have a decent Glassdoor entry and the brief Google I did on them shows they have been having trouble expanding into markets across the nation (articles about them withdrawing from RI, Washington, and Oregon) but nothing nasty.

Physics itself doesn't really matter as to which language you learn, they all support math. Now, astrophysicists working in research positions may have standards that they use that includes a specific language. That would be worth knowing if you can figure it out. That may also vary from person to person / team to team / university to university. Maybe you can fire off some emails and find out. Part of learning coding is learning the logic of it, which tends to work similarly across languages. But if there is some specific place or industry or whatever you want to work for/at, and you can find out "all our tools are in Python", then learning Python could be wise if you are trying to pursue working in the same place or a similar place.

If you already know some C++, that is an advantage. It might just be a good idea to keep going there, if you cannot find any information that directs you to something else.

tragiktimes101 submitter 1 Build 1 point 9 months ago

I appreciate the feedback. It's still pretty early in, but I want to get started a bit more, you know? I find myself with far too much downtime when home sometimes leading me to stare at PCPP / Reddit, reload page, lose train of thought, repeat. That's just not very productive. I feel like if I even spent an hour or two practicing and studying a programming language then in three months, rather than having 14K comments (I might anyway, lol), I'd have a bit of useful knowledge more applicable towards a job, lol.

I definitely see what you mean by logic. Well, at least kind of. I saw the necessity for logic in C++, and I can imagine that would apply to basically all programming. The syntax is what worries me jumping from language to language. Hell, even from my few months in C++ I only understood the syntax so well. I guess it's just something that is reinforced more with time.

I think I'll take your advice and start shooting some emails across the country to some of the research facilities I'm considering, or that look interesting, to try to get a feel for what they use. Perhaps there is some commonality between them. Not really sure.

That job looks a little suspect tbh. It's not actually a job/position at all, it's a posting for an agency that does job placement. IDK them or their reputation. I'd do some homework on the company. They seem to have a decent Glassdoor entry and the brief Google I did on them shows they have been having trouble expanding into markets across the nation (articles about them withdrawing from RI, Washington, and Oregon) but nothing nasty.

It was actually one of the first things I came across, lol. I'm sure there are other entry-level offerings out there. Do you know a good resource for locating such opportunities? If not, that's cool. Probably been a little while since you were "entry-level," lol.

If you already know some C++, that is an advantage. It might just be a good idea to keep going there, if you cannot find any information that directs you to something else.

This is something that I'm actually a bit concerned about. I do know a bit of C++ (took a course last spring), but some of the knowledge has faded, and some of it I'm not sure was learned well in the first place. I just am not sure how to get back into it (whether to refresh on the knowledge I know, locate shortcomings, and then address them - or, if I should just start from the beginning as if I never knew any of it). Tough choice, really.

TheShadowGuy 2 points 9 months ago

When I begin to get to more advanced areas in astrophysics I will need to be able to develop programs to analyze large datasets.

When it comes to large scale parallel processing used to analyze large datasets, especially on the cutting edge of math intensive disciplines involving lots of simulation, Fortran is the top language, followed by C/C++. There are a few languages for other purposes, with Python quickly gaining popularity.

Brush up your resume and check out Indeed. Be wary of recruitment groups and vague, perfect sounding posts like the one you listed; look for actual postings by companies, vet those companies using resources like Glassdoor, and make sure you send in everything asked for on the job posting. Your university or alumni organization may have resources you can take advantage of in your search, and other professional organizations you participated in may be worth checking into and updating as well.

tragiktimes101 submitter 1 Build 1 point 9 months ago

Be wary of recruitment groups and vague, perfect sounding posts like the one you listed;

TBH, I was less likely to actually pursue that listing. I was just trying to get a sense to the legitimacy of them, which I see is....meh.

Chillsabre 2 Builds 2 points 9 months ago

It depends on the company where you will work and what they are doing. To work at a web company (2 of my friends work at a company who maintains Pornhub's website for example) you will need good knowledge of networking and Java or other website programming languages. Both of my friends also had several Microsoft certifications when they got their jobs.

A more business oriented company traditionally use databases usually made in SQL or other languages like COBOL or Oracle. When I finished my Programmer-Analyst diploma, I had a non remunerated internship in such a business and I basically did SQL all day and worked very closely with Excel spreadsheets.

tragiktimes101 submitter 1 Build 1 point 9 months ago

Microsoft certifications

Do you know how they went about receiving those? (save me the googlez).

A more business oriented company traditionally use databases usually made in SQL or other languages like COBOL or Oracle

I use a bit of SQL at my work, but I would say that it is very basic stuff, lol.

Chillsabre 2 Builds 2 points 9 months ago

The Microsoft Certifications are quite simple. Every decent place where they sell reference books will have the books Microsoft publishes every year for different themes and branches and thesae are what you need depending on the type of job you want for, you wont need all of them. Do note that you can technically photocopy the book for multiple users if you pool together. The book comes with a pass for the exam too if I recall correctly at the end of it, or at least they did when I did mine.

elvenson 5 Builds 1 point 9 months ago

Microsoft websites have everything you need... Most of the material is free though classes are available if needed and tests are not free.

If you buy a book, it may only be good for past exams... So best to go online

Chillsabre 2 Builds 1 point 9 months ago

This may have changed since I last did mine almost 20 years and it looks like it did. The book did come with a free test pass which was probably the largest portion of the cost.

elvenson 5 Builds 1 point 9 months ago

Ya, that was the norm for many test back then like the comptia series or even Cisco, but these days it's all more easily done online. I had a few books many years ago with passes in them for old tests that were no longer current or valid lol

elvenson 5 Builds 1 point 9 months ago

I'd stick with c++ as a main language for now. It is a solid foundation and principals learned in it will be able to translate well to almost all the others... It is also what many other languages are based on or interpreted over, so you know it CAN do all you need it to do.

That said, it is a good idea to play around here and there and learn the basics in a few other languages too so you can at least get a grasp on what they do differently and where they may come in handy.once you learn enough c++ and play with a bunch of other languages you'll see it's actually not too hard to move from one to another with a little effort as the core principles are usually the same. If you start with Java though, you may miss out on many different common practices that you'll use in the other languages as it is a very much object oriented language, while c++ CAN be treated the same or done other ways as the task dictates... I would even suggest learning C as well as C++ for that reason... Learn those well and learning others becomes easy.

tragiktimes101 submitter 1 Build 1 point 9 months ago

Appreciate the advice!

elvenson 5 Builds 2 points 9 months ago

Gotta spread the knowledge when you can... More coders means more advancement in the world... Plus it's a great skill that enforces a more logical thought process overall in your life, so I think everyone should learn at least the basics :P

DopeAF123 1 point 9 months ago

I've done HTML, CSS, but after I did a little Java script, I quit. It difficult to grasp the syntax and the way Javascript is used. That was years ago though so I may try soon again soon.

elvenson 5 Builds 1 point 9 months ago

Javascript is a different beast... it is a scripting language that has gone through so many variations over the decades that it can do far more than it was ever intended to do... but as a result, it can drive beginners nuts if they treat it like a regular programming language. It is probably best learned first as a compliment to web page design, like CSS, instead of application development. I really recommend having a bit more experience in general programming before you try learning the more advanced javascript stuff. Definitely use it for basic web form submissions and calculations though since it is so fast and easy in that type of task.

[comment deleted by staff]