• 0 Posts
  • 23 Comments
Joined 1 year ago
cake
Cake day: July 16th, 2023

help-circle
  • It absolutely should not have been named zeroth() because the reasoning for that is purely pedantic and ignores WHY arrays are 0 indexed. It’s not like the people in the early days of writing programming languages were saying “the zeroth item in the array” - they would refer to it using human language because they are humans, not machines. Arrays are 0 indexed because it’s more efficient for address location. To get the location in memory of an array item, it’s startingAddress + (objectSize * index). If they were 1 indexed, the machine would have to reverse the offset.
    Function/Method names, on the other hand, should be written so as to make the most sense to the humans reading and writing the code, because the humans are the only ones that care what the name is. When you have an array or list, it’s intuitive to think “I want the first thing in the array” or “I want the last thing in the array),” so it makes sense to use first and last. That also makes them intuitive counterparts (what would be the intuitive counterpart to “zeroth”?).







  • So I don’t think it’s the only solution, or that anyone that doesn’t care for C# is wrong or anything like that, but it is a suitable language for large segments of development and is both a good career and, in my opinion, rather pleasant to work with. Looking at the languages listed in that list you shared, I see a lot of C, C++, and Java, which I have no interest in working in again unless i have a good reason for it. The other languages there are fine but I never had a big interest in Go (Google’s language) - it seems fine, but in my area I don’t think there’s much of a community around it.
    The .NET community is pretty active where I live which is a plus, there are lots of jobs in the language and lots of professionals that are proficient in it. I’m going to try to avoid sharing too specific of information, but I’ve used C# in industries from healthcare, to automotive, to HR, to fitness. There are absolutely no shortage of companies using the technology - according to Statista, it’s the 8th most popular language, and they are including SQL and bash in that listing. I’m not sure I believe that data, but it was the first result I clicked in a very quick Google search.
    I agree that popular != good, but if we are going to use “what companies are doing,” there are clearly plenty of people that have found it to be the right choice for their projects.
    I will say that if your last exposure to .NET was like 5-10 years ago, it’s worth taking a look at what it offers now - not necessarily to use it yourself but to at least understand that it does bring a lot to the table. I tend to see a lot of people that make references to C# as it related to .NET Framework (e.g. “you have to use Windows”) that haven’t been the case since .NET Core came out in 2016. I will absolutely agree that it’s not always the right choice and there are aspects to the .NET world (Microsoft has the most obnoxious versioning - .NET Framework up to 4.x -> .NET Core up to 3.1 -> .NET 5 up to 8). And I fully get not wanting to work on it because it’s Microsoft because everyone has their brands that want as little to do with as possible, but it is a good object oriented language.


  • It very much depends on what you’re trying to do. C# is pretty great for developing APIs, especially in an enterprise environment involving a lot of business logic. I don’t have much of an opinion on Django as I haven’t spent enough time looking into it, but I have looked at enough Node.js code to know I don’t prefer it for most of the projects I’ve been involved in.
    My Python experience is largely based in working with things like Raspberry Pis, and relatively simple jobs where Python made the job pretty easy. I don’t know enough experience with larger Python projects to have a feel for what good architecture in a complex application looks like.
    With C#, I can go into a large application using good practices and quickly navigate the code and be productive.










  • I did say if you have a specific thing to get it in writing. If you sign a letter of intent, that is getting it in writing. Plenty of guys in my boot camp got told they could go do X job in the Navy but ended up getting a different designation during boot. This was back in the mid 2000’s so it may be more standard to have the LoI but at the time plenty of us did and plenty of us didn’t. And for my job, I only got to join “the nuke program” - we got to give a wishlist for which rating but it didn’t mean much. I got the rating I wanted, but several guys wanted Electronics Technician and ended up as their last choice - Machinist’s Mates. And I’ve met some decently smart infantry, but I’ve also met plenty of infantry that were (affectionately) window lickers. More seriously though, the ones we joked around with about being window lickers aren’t actually stupid, they were just average guys, just not as quick as some of the other vets in the group (the Marine vet embraced the crayon eating jokes). I’m sure they were fine at their job though, and they followed orders well which is probably the most important thing in a soldier or sailor.


  • The score matters as far as what jobs you qualify for, and it also tests different aptitudes. For example, two people could have the same overall score (say a 70), but one person could show mechanical aptitude and be pushed toward a Machinist position, while the other could do poorly on mechanical but do well in electrical stuff and become an electrician.
    They also don’t want to waste their smarter people as basic grunts or cooks, so a higher ASVAB score can mean you’re less likely to get the job you want if, say, you score 90+, but always wanted to be a chef. If you have a specific job you want to go in for, you basically have to get it in writing that you’re joining for that job, otherwise you’re at the mercy of the “needs of the {branch name}” - you will be what they need most that you’re very good at.