I’m working my way to a CS degree and am currently slogging my way through an 8-week Trig course. I barely passed College Algebra and have another Algebra and two Calculus classes ahead of me.

How much of this will I need in a programming job? And, more importantly, if I suck at Math, should I just find another career path?

  • inline_caching@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    13 days ago

    I agree with the other answers that it depends on the type of programming you end up doing…the nature of the program being developed, but having a background in discrete math is great to have just in case.

    From my experience, there can be unexpected problems where you will advantage from having grasp at discrete math. I worked on a project for a telecom company where they wanted a simulation to predict the impact on network coverage if a specific cell tower (BTS) was uninstalled. I ended up relying heavily on the cross-product formula and some ray-casting algorithms to model how coverage would shift in the area.

  • jjjalljs@ttrpg.network
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    I failed calc2 and am gainfully employed as a mid/upper level software engineer.

    One guy at work really saved the day because he’s good at math, and made a very slow process much faster because he knows … uh… vector math? He did magic with numpy

  • bad_news@lemmy.billiam.net
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    I’d argue it’s a bad career path overall. You will get laid off working as a dev, it’s just how it works, and if you haven’t managed a 10+ headcount by your mid 30’s you will find yourself facing ever escalating ageism 35 on as an old man dev. It’s not a field that generally professionally rewards experience beyond 5-ish years.

  • magic_lobster_party@fedia.io
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    Math skills can occasionally be useful, but I don’t see it as a dealbreaker.

    The good thing about being good with math is that it usually means you’re a good problem solver, and problem solving is an important skill for programming. But the reverse isn’t necessarily true. You can be good at problem solving but still be bad at math.

    I would say if you’re struggling with the programming courses, then maybe look somewhere else. Otherwise, go ahead.

  • GissaMittJobb@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    I don’t think you necessarily need to have studied a lot of math to be successful in programming, but you will need it if you want to get a CS degree, which in turn can be a good lever to a fruitful programming career.

    My advice when it comes to math - math skills build upon the concepts you’re expected to have learned before, meaning that if you didn’t fully get everything in the past, then your foundation is not in great shape and you will struggle at higher levels. Going back and repeating the fundamentals just so that you fully understand everything is very helpful in my experience.

    I also think that understanding math is rewarding in itself, for what it’s worth!

  • realitista@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    There’s a lot of programming you can do with zero or very basic math skills. But some stuff can require a lot. But I’m quite sure you could manage a career very nicely without ever touching those areas. People who do that are probably seeking those things out.

  • FizzyOrange@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    Totally depends what you end up working on as a programmer. If it’s web apps, you’ll be totally fine. All you need is basic arithmetic. Writing a game engine? You’ll need to know some basic to moderate matrix maths…

    If you’re doing formal verification using unbounded model checking… good fucking luck.

    On average I would say most programming tasks need very little maths. If you can add and multiply you’ll be fine. Definitely sounds like you’ll be ok.

  • CoCo_Goldstein@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    14 days ago

    As others have said, It depends on what kind of programming you do. Some areas requite a lot. Others not so much. It’s logic, not math, that is needed the most.

    You may want to check if your college has a different kind of programming degree. As I understand things, there are basically two kinds of programming degrees. “Computer Science” has much steeper math requirements and focuses on applications that deal with Science or engineering issues. “MIS (Management Information Systems)” degrees focus on actual programming that businesses need, not programs that are science or engineering focused.

  • AwkwardLookMonkeyPuppet@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    14 days ago

    If you’re doing really complicated stuff then you at least need to understand algebraic logic and concepts. You’ll also need to understand stuff like logarithmic scales for optimization. But it’s entirely possible to go years without using any math, especially as a website developer. I’m about as senior as you can get in the field, and I’ve only had one job for around 4 years where I used advanced mathematics on a regular basis. That’s 4 years out of a 25 year long career.

    That said, a CS degree is going to require all of the math classes as part of the curriculum. My degree program involved fun classes such as finite mathematics, statistics, trig, etc… If you’re doing a program that requires advanced mathematics courses, for goodness sake do them all in a row!

    TLDR: it depends entirely on the job. Jobs that are data intensive, with data manipulation, hardware interfacing, and automation type jobs will require more math than jobs like making cool-ass interactive websites.

    Edit: PS, I suck at math. I’ve always sucked at math. Yet I’m what most people consider an amazing engineer. Weeee!

  • entith@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    14 days ago

    As many have already said, the math needed will depend on what type of work you’re looking to do. Writing business software, for example, rarely requires more than basic arithmetic.

    However, I think that the logical thinking skills that are needed for math are also necessary to be a good software engineer.

  • Ben Matthews@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    14 days ago

    As a kid, I learned to write i = i +1, before school maths taught me it can’t. The point is, computers do iteration well, especially to model dynamics of real non-linear systems, while classical maths is good at finding algebraic solutions to equilibria - typically more theoretical than real. Calculus is great for understanding repeatable dynamics - such as waves in physics, also integrating over some distributions. But even without knowing that well you could still approximate stuff numerically with simple loops, test it, and if an inner-loop turns out to be time-critical or accuracy-critical (most are not), ask a mathematical colleague to rethink it - believe in iteration rather than perfect solutions.

  • LovableSidekick@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    14 days ago

    If you really mean mathematics as in algebra and trigonometry, not much really. But arithmetic is a handy skill. A programmer should be able to at least add and subtract - especially doing UI stuff, which involves dealing with dimensions and positioning of elements on a page. You should be comfortable with numbers and not need a calculator to add up the widths of a few display columns, for example.

  • vrighter@discuss.tchncs.de
    link
    fedilink
    arrow-up
    0
    ·
    13 days ago

    unless programming something math intensive like 3d graphics, then basic arithmetic and just a general intuition of numbers is more than enough.

  • Jayjader@jlai.lu
    link
    fedilink
    arrow-up
    0
    ·
    13 days ago

    Math underlies programming in a similar fashion to how physics underlies automobile driving. You don’t ever need to know about newton’s laws of motion to pass your driver’s license and never get a ticket until you die. At the same time, I will readily claim that any driver that doesn’t improve after learning about newton’s laws of motion had already internalized those laws through experience.

    Math will help your intuition with how to tackle problems in programming. From finding a solution to anticipating how different constraints (notably time and memory) will affect which solutions are available to you, experience working on math problems - especially across different domains in math - will grease the wheels of your programmer mind.

    Math on its own will probably not be enough (many great mathematicians are quite unskilled at programming). Just as driving a car is about much more than just the physics involved, there is a lot more to programming than just the math.

  • masinko@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    13 days ago

    Depends on what kind of programmer.

    If you’re doing data engineering/science (more of an adjacent field), you need to know linear and probability pretty well to build models, or have data harvested in ways that can be put into vectors.

    If you’re doing relational DB stuff (like SQL) set theory helps a lot.

    Basic boolean operations in general is also good to know. You don’t need to go too deep in the weeds of boolean math unless you’re also doing a lot of hardware-level stuff.

    Any field you go into (not just programming), I would say just basic math for regular financial competency is good to know. Also to analyze your budgeting, your costs, time spent, effort needed, etc.

    • oldfart@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      13 days ago

      If you’re a frontend programmer, you only need to understand rectangle width and height lol