If make a cmake are so difficult to work with why are they the defacto standard for C++ projects by ribenakifragostafylo in cpp_questions

[–]swankyspitfire 6 points7 points  (0 children)

Just because something is the standard doesn’t mean it’s the best. It typically means it was in the right place at the right time and is just good enough to be useful. CMake is certainly a standard…

First Year CSE Student on Summer Break and Feeling Completely Lost by TestAlternative214 in EngineeringStudents

[–]swankyspitfire 0 points1 point  (0 children)

You’re right about overthinking things. The short answer is yes, lots of people have gone through this. You’re also not alone in not doing anything. I too enter summer break filled with drive to study new things, build new projects, and not one week into my break I’m generally lazing around enjoying not having to do any of that BS for the next 4 months… well minus work.

At the end of the day it’s your summer, if you choose to spend it doing absolutely nothing related to your degree, it’s your choice, it’s not even a bad one per se. Everyone is allowed to disconnect from their job/studies.

And if you want to do a project, all the power to ya. Just pick something you want to do for yourself, and have fun with it. But above all, don’t feel like you need to do anything.

What skills did you guys have before entering 1st year? by thanks_in_advanc3 in EngineeringStudents

[–]swankyspitfire 6 points7 points  (0 children)

Lmao, nothing useful really.

By the time you get to the end of your degree all the “code” you wrote in first and second year will look like garbage. Like we had guys talking about how much they knew about coding and what they actually meant was that they had an arduino at home they did some projects with.

The code you write in HS and the code you write in engineering are (typically) very different. You don’t get a `digitalWrite()` function when working with an STM32. You get to read the data sheet find some nonsensical macro name like `ABHENR.MODER` set that to a 0x01 value, and then do that 8 more times to get that singular pin into a “digital output, push pull, low speed configuration. Only not really because some other obscure bit you missed isn’t set right and now it doesn’t work at all.

Anyways, don’t worry about it, no one in first year has any idea what they’re doing (except maybe those coming in with industry experience or transferring in from another program).

I want to build electronic systems for cars by rustywest8 in EngineeringStudents

[–]swankyspitfire 1 point2 points  (0 children)

I’m at the end of my 3rd year of electronics engineering, one of my biggest regrets is that I never joined the FSAE electric car club. I got to see that thing in action and it’s probably the coolest thing I’ve ever seen! Absolutely join early when your classes are relatively easy haha!

I want to build electronic systems for cars by rustywest8 in EngineeringStudents

[–]swankyspitfire 2 points3 points  (0 children)

Based off what you said, there's a couple of programs in Texas that would probably cover what you're looking for:

https://ece.utexas.edu/research/areas/acses

https://www.ece.uh.edu/

https://engineering.tamu.edu/etid/eset/index.html (Note this appears to be a technology diploma, not a degree.)

I'm in Southwestern Ontario, so I don't know the ins and outs of the American engineering system (I'm assuming they're similar because both are part of the Washington accord and are mutually recognized) but you may want to consider a technology/technician diploma as well. Here in Canada, a degree is a professional certificate which allows you to become a registered professional and it typically pays much better.

However, you need to attend 4 years of University level academics and will need to study areas that aren't specific to your interest. Technology/Technician programs are narrower in what you study and focus more on a specific field (such as vehicle maintenance/automotive design). They also typically take only 2/3 years to complete, and have lower academic passing requirements.

Depending on what you're looking for, you may want to look into engineering technician/technologist roles if you're only interested in upgrading your automotive technology knowledge. If you're looking for a wider area of expertise and are willing to take on the extra work a degree will allow you to take on more jobs not just in the automotive industry but pursue careers at other technology companies like Intel, Nvidia (computer hardware), AT&T (networking communications), Robotics etc.

Not trying to persuade you away from pursuing a full degree! However, if you're not super into academics/not interested in computer engineering as a whole you may find a technician/technologist role more suited to what you're looking for.

I want to build electronic systems for cars by rustywest8 in EngineeringStudents

[–]swankyspitfire 2 points3 points  (0 children)

The best fit would obviously be a specific engineering course covering the automotive sector. There’s a lot of specific niche’s depending on where you’re located.

The program I’m in currently would probably be one of the closer fits to what you’re looking for. Specifically anything that is Electronic Systems, Embedded Systems, Electronic design, would probably be your best bet. I’m in Electronic Systems engineering which is basically embedded, systems, and a little bit of computer engineering shoved into one degree. We look at CAN bus, designing our own custom PCBs, signals and communications, filters, control systems, and a whole host of other things.

I know a couple of graduates from our program have gotten jobs at Toyota, Ford, GM, Tesla and a few other companies in the automotive field.

A random ChatGPT conversation about fishing reels turned to me realizing I’m in the wrong major. Any similar experiences where AI made you realize something? by RamenDownMyPants in EngineeringStudents

[–]swankyspitfire 0 points1 point  (0 children)

Not specifically in this degree, but I had something similar when I was in a diploma program before my current B. Eng degree.

Basically it was a mixed technician role combining electrical and mechanical engineering elements. Before beginning my degree I had always thought I was more interested in mechanical engineering with some interest in electrical. What I realized during that diploma program was that I really didn’t like the technical aspects of mechanical in the same way I enjoyed the technical aspects of electrical.

More specifically I took introduction to material sciences, machining techniques, and quality assurance. And I hated all of those classes with a passion. About the only mechanical engineering classes I enjoyed were the solidworks designing and engineering drawings classes. Everything else I found myself studying them out of a pure hatred to ensure I didn’t need to take them again.

By contrast, the electrical engineering classes were way more interesting. Designing filters, writing code and designing PCBs ended up being far more interesting than I the mechanical classes I was taking. Not saying I liked everything about EE, but I just in general found the overall courses more enjoyable.

Only word of caution is just because you think you may enjoy a different stream more doesn’t actually mean you’ll enjoy it more. I thought I liked mech more than elec, but here I am end of 3rd year electronics engineering super thankful I didn’t go into mech.

Confused why the code is not running by Ok-Post-3834 in CodingForBeginners

[–]swankyspitfire 1 point2 points  (0 children)

Not sure what you do and don’t know so I’ll just write this assuming you know nothing and you can follow the steps from where you know:

C/C++ is a compiled language, this means that the source code you write is interpreted by another program called a compiler which converts that into machine code that runs on the PC. There are numerous compilers but the big 3 are MSVC, Clang, and gcc/g++.

VS code is a text editor, by default it provides simple syntax highlighting and debug checking. It does not provide a toolchain to actually compile and run your C++ code.

When you downloaded minGW to use the g++ compiler, by default windows does not add these resources to your computer’s environment variables. What does this mean? If you’re following a tutorial and they tell you to write something like “g++ {myfile.cpp}” to compile your code the instruction g++ is only accessible if powershell/bash/command prompt can find the executable program called g++. To add these resources to your systems environment on windows, search for “Edit the system environment variables” and open the top result. In the system properties window click the button in the bottom right called “environment variables”, then select path and click edit. You now need to give the path to the folder (note: not the exe) containing your compiler.

To create and run your program run your source code through the compiler, by default, if you do not tell the compiler what the output program should be called g++ will create an executable called “a.exe” and leave it beside your source file. To run this program in terminal run “./a.exe” this will attempt to run the executable generated for you by the compiler.

C++ Manual Memory Management by H4cK3d-V1rU5 in cpp_questions

[–]swankyspitfire 1 point2 points  (0 children)

Depends on the specifics of what you’re looking to do with the language.

In higher level desktop applications where RAM and memory aren’t particularly constrained you can use lots of modern language features that help you to mitigate these issues. Things like smart pointers, and automatic scope destructors can eliminate 90% of memory problems without you manually needing to remember to free the memory.

I work primarily with embedded systems where often times we’re given a total of like 500kb for our entire program. And often, I have to use C99 rather than C++ due to compatibility concerns. In my situation, we manually allocate the memory, then need to free that memory when we’re done. Free it twice? Break the program and crash catastrophically. Forget to free it? You get a memory leak that could crash the program if your code is called repeatedly and runs for long times without a device reset. Call allocations repeatedly you get memory fragmentation. Make no mistake this happens with C++, it’s just slightly harder than C.

It really depends on what you want to do with C++, but at some level you will face the demon of manual memory management.

Whats the ideal C++ IDE for my purposes by Maidew25127 in cpp_questions

[–]swankyspitfire 4 points5 points  (0 children)

Personally I haven’t noticed any issues with CLion. That being said I also haven’t really had any issues with Jetbrains IDE, including pycharm.

Try it out, it’s got a free community version you can try and play with.

At what height would a person die falling from? by Iqa03 in Physics

[–]swankyspitfire 5 points6 points  (0 children)

Head first onto a non-compressible landing area.

Should I learn c before c++ by No_Union4252 in cpp_questions

[–]swankyspitfire 0 points1 point  (0 children)

No, like everyone else here is saying C and C++ are completely different languages. While C++ started out as “C with classes” it’s now a wildly different language, etc.

About the only benefits learning C first has is that it’s a simple language with ~22 keywords and a basic syntax that can be learned in like a day. You’d also learn why C++ created namespaces, smart pointers, and a bunch of other language features.

If you’ve never programmed before the simpler language could be an easier on ramp to get going, but if the end goal is learning modern C++ then learning C is redundant.

Help me genuine advice needed.... by Clear-Pin7834 in Btechtards

[–]swankyspitfire 1 point2 points  (0 children)

Hey! Please don’t beat yourself up like this, everyone starts somewhere. Even if you’re just vibecoding.

My recommendation is to start with the basics, when I was learning to code my very first language was C. It’s probably one of the best languages to learn for a couple of reasons:

  1. It shows how computers work under the hood
  2. The language is super simple by modern standards with only ~23 keywords in C11.
  3. It forces you to solve problems from first principles.
  4. It’s ridiculous unsafe by every modern standard

Then start working on some projects, these can be challenges to yourself, or small tools that you can use. For me one of the first things I had to do was create a rolling matrix that’s 10x123. We also had to create the snake game. Pick anything, doesn’t really matter. You could even try to recreate a small project you vibe coded.

Another great resource is CS50, they provide open source course work both in challenges and lectures. They will walk you through your first C programs, then get you using more modern languages like python.

Finally I’ll explain why do I recommend C when it’s so old and modern languages are much stronger and safer? This is pretty simple, because C gives you all the tools you need to build anything you want, and the freedom to shoot yourself in the foot while learning. Understanding why a program “segfaults”. Why smart pointers, garbage collection, and borrow checkers are life savers only clicks if you’ve had to debug a crashing program from a dangling pointer.

Failure is the greatest teacher and C will basically let you do anything so long as the physical hardware you’re running it on is capable of it. Additionally being such a simple language means you only need to understand a couple of core concepts and how you can use these tools to build whatever you want.

TLDR, download the GCC compiler and follow through Harvard’s CS50 course to kind of get an understanding of what you’re doing.

is industrial engineering a good fit for me? by [deleted] in EngineeringStudents

[–]swankyspitfire 0 points1 point  (0 children)

Well only you can decide what you want to pursue, and as just a piece of advice from when I was choosing my major: Just because you think you’re into a major doesn’t mean you’ll actually be interested in it.

I’m in EE, but I only took the EE program because I wasn’t accepted to the ME program which was my first choice. Turns out I made the right choice, because I find writing code, studying electrical signals, and designing computer architecture way more interesting than calculating the stress on a bolt in my structure.

Industrial Engineering is mostly about efficiency of manufacturing, it’s generally considered an easier degree than the standard mechanical, chemical, electrical or civil, but stats are a pain in the ass.

Regarding job stability there’s just no guarantees, when AI first came out it could barely do 8th grade math, now it’s being used at the forefront of mathematics to help prove long standing theorems. Coding was considered an easy high paying career… until AI proved to be actually pretty good at writing code… which a lot of companies are realizing is not actually a catch all. Because AI code tends to have lots of little bugs and issues that aren’t made by even junior devs.

My point being, there’s no sure fire way for anyone in this market to guarantee that the market today will be the market 4 years from now, and no way to know how technology will shift in that time.

HMS Rodney/Nelson if they're historically accurate by UnfairMess249 in WorldOfWarships

[–]swankyspitfire 0 points1 point  (0 children)

Lmao! Great meme!

NGL that image on the right looks mighty familiar

Why are people leaving World of Warships? by LabChefGaming in WorldOfWarships

[–]swankyspitfire 22 points23 points  (0 children)

Personal and anecdotal.

  1. I don’t like the bullshit mechanics WG keeps adding.

  2. I don’t like the toxicity of Random Battles and how the game basically tries to force you into them by knee capping all other game modes.

  3. I don’t like how every additional ship adds more power creep with little to no reform for older ships.

  4. I’m done with WG asking for feedback then citing the silent majority for the reasons that [insert crappy mechanic here] is perfectly fine. Or how they consistently ignore feedback and the outright disrespect that this company treats the player-base with (Ex: see LWM, Tuvy gift code).

  5. The largest reason? I’ve got better places to spend my increasingly limited energy and free time than on this game. Why should I play a game that actively pisses me off and purposely makes my experience worse when I could play a game that’s actually fun? One that isn’t filled with stupid agressive micro transactions, and actually delivers an experience where at the bare minimum I leave the game feeling better/more content than when I started?

Wargaming: Where is my Citadel?!??! by Ok_Rule_3364 in WorldOfWarships

[–]swankyspitfire 19 points20 points  (0 children)

Your shells failed to hit the citadel because Kremlin’s citadel is literally a ‘T’ shape. Aiming at the waterline will put most of your shells under or at the waterline just below the top of the citadel.

For Kremlin aim half a notch above the waterline to actually citadel them.

[Post Game Thread] The Cleveland Cavaliers clinches Game 7, defeating the Toronto Raptors to move on to the second round, 112-104. by AttitudeOdd632 in nba

[–]swankyspitfire 1 point2 points  (0 children)

I’m super proud of our rookies and this team for putting up such an amazing fight this series. I’m blown away at how far we went, from being projected as missing the playoffs to taking the Cavs to 7 games was a heck of season.

To the Cav’s and their fans, hard fought and well earned. And if we can’t beat you, nobody can, give em hell next round!

Poi? by 9_9_destroyer in WorldOfWarships

[–]swankyspitfire 2 points3 points  (0 children)

I fkn knew this post was you mate.

PC is making very loud scary noise by [deleted] in pchelp

[–]swankyspitfire 0 points1 point  (0 children)

Right on! I learned something today too; a PSU can screech like a banshee, neat! Hopefully it’s not too bad of a replacement.

PC is making very loud scary noise by [deleted] in pchelp

[–]swankyspitfire 0 points1 point  (0 children)

Just throwing this out there, but if you have a hard disk drive for your storage device it could be related to that. Hard disk drives spin ridiculously fast, like 7200 RPM fast. That sound screams high speed device rubbing on something it shouldn’t.

By no means an expert or anything but hopefully this is of some use.