Computer programming thread
- EggMcMuffin
- Registered User
- Posts: 574
- Joined: Mon Apr 20, 2020 9:32 pm
- Age: 28
Re: Computer programming thread
Mathematics is absolutely kicking my ass. Do you even stand a chance at being anything than a low skilled code monkey (at best) if you aren't a "math" person? I've invested so much time into this degree it feels like I have nothing left lol
- hsilman
- ✓ Registered User
- Posts: 2842
- Joined: Fri Sep 15, 2017 8:31 am
- Age: 39
Re: Computer programming thread
Yes, it doesn't matter. You won't be getting a job at Jane Street or in signal processing if you're bad at math, but You can still get hired at FAANG or anywhere else. No one is going to ask you trig derivatives or anything.
-
- Registered User
- Posts: 1282
- Joined: Sat Sep 23, 2017 11:51 am
- Location: <x(t), y(t), z(t), t>
- Age: 69
Re: Computer programming thread
It's important to be able to think rigorously and figure out complicated stuff, but yeah, specific math knowledge very rarely comes up. In the 25 years that I spent developing software, I used math that I'd learned after ninth grade on exactly one occasion. (The context was determining whether some encryption code we'd inherited could ever encrypt two different strings in the same way - in other words, whether the encryption algorithm was a one-to-one function. It wasn't.)
I think the math requirements for a CS degree exist primarily because the ability to pass those classes correlates pretty well with the two attributes I mentioned above: rigorous thinking and figuring out complicating stuff. On one of those diagrams where sets are represented by circles, the set of people who've passed CS math requirements and the set of people who succeed at software engineering would overlap, but they certainly wouldn't coincide, nor would one lie inside the other.
- Hanley
- Strength Nerd
- Posts: 8752
- Joined: Fri Sep 15, 2017 6:35 pm
- Age: 46
-
- Registered User
- Posts: 2138
- Joined: Fri Sep 29, 2017 7:00 am
- Age: 48
Re: Computer programming thread
That really is the most awesome venn diagram I've ever seen.JimRiley wrote: ↑Wed Mar 16, 2022 8:42 pm On one of those diagrams where sets are represented by circles
- Root
- Grillmaster
- Posts: 1997
- Joined: Fri Sep 15, 2017 8:28 am
- Location: Western Upper Lower
- Age: 44
Re: Computer programming thread
Good education for dealing with future coworkers
- EggMcMuffin
- Registered User
- Posts: 574
- Joined: Mon Apr 20, 2020 9:32 pm
- Age: 28
Re: Computer programming thread
Multivariate calculus/calculus 3. I'm probably going to get absolutely fucking bodied by the last courses I need to transfer as well: mechanics and electricity/magnetism respectively
- hsilman
- ✓ Registered User
- Posts: 2842
- Joined: Fri Sep 15, 2017 8:31 am
- Age: 39
Re: Computer programming thread
I found Khan Academy helpful for all my calc courses. Interesting that you didn't have any issue with calc 2, usually that's where people get stuck.
- mgil
- Shitpostmaster General
- Posts: 8483
- Joined: Wed Sep 13, 2017 5:46 pm
- Location: FlabLab©®
- Age: 49
Re: Computer programming thread
Yeah, calculus 2 is all of the integration tricks I can’t remember and integration tables. Calculus 3 was way easier, like linear systems, line integrals, and high school math tricks.
- Culican
- Registered User
- Posts: 1411
- Joined: Tue Sep 19, 2017 7:39 pm
- Location: It's a dry heat
- Age: 69
Re: Computer programming thread
I remember the final at my calculus 2 class. The tests were passed out and about 5min later one guy gets up and starts to leave. The professor asks, "What's wrong." The person leaving stops and turns around with a look like a ghost on his face and says, "I can't do any of them." He turns back towards the door and walks out.
- hsilman
- ✓ Registered User
- Posts: 2842
- Joined: Fri Sep 15, 2017 8:31 am
- Age: 39
Re: Computer programming thread
Damn bro.Culican wrote: ↑Fri Mar 18, 2022 9:29 pm I remember the final at my calculus 2 class. The tests were passed out and about 5min later one guy gets up and starts to leave. The professor asks, "What's wrong." The person leaving stops and turns around with a look like a ghost on his face and says, "I can't do any of them." He turns back towards the door and walks out.
IIRC, calc 2 is the last class I actually used notecards to study for. I wrote down all the different formulas and trig function thingies and memorized them. I could be wrong and did that for calc 3 too, but as I recall there weren't really things you could write down on notecards for calc 3. It was more conceptual.
I do remember being blown away by vector visualization. Calc 3 really tied everything together nicely.
Anyways, I think my interview with Optum went well, fingers crossed I get an offer. If the money is good enough, it would work out really well timing wise. It doesn't start until July, so that gives me a lot of time to finish class, find a replacement for myself at work, and take a trip I already have planned in June.
- RedFinn
- Registered User
- Posts: 155
- Joined: Thu Oct 12, 2017 4:41 pm
Re: Computer programming thread
I've decided to get more serious about learning to write software. Specifically I have some smartphone app ideas I want to explore.
I only know the basics of writing software. like loops, conditionals, basic functions and such. I've been doing some research and there is so much stuff to figure out about writing apps. You need to learn about the front end, the back end, the middleman (APIs), databases, IDEs, which programming languages and frameworks to use, version control, how to host and deploy the app... the list goes on.
A couple people have advised me to to do something simpler, like trying to write a website or follow an online course first, but I'm reluctant to take that advice because I am motivated to try to implement my ideas, not to do those things.
---
Also, I see you guys are discussing calculus, so here's a calculus theorem I'm working my way towards: [equation]\int_{\partial \Omega} \omega = \int_{\Omega}d\omega.[/equation] You can read more about it at https://en.wikipedia.org/wiki/Generaliz ... es_theorem.
I only know the basics of writing software. like loops, conditionals, basic functions and such. I've been doing some research and there is so much stuff to figure out about writing apps. You need to learn about the front end, the back end, the middleman (APIs), databases, IDEs, which programming languages and frameworks to use, version control, how to host and deploy the app... the list goes on.
A couple people have advised me to to do something simpler, like trying to write a website or follow an online course first, but I'm reluctant to take that advice because I am motivated to try to implement my ideas, not to do those things.
---
Also, I see you guys are discussing calculus, so here's a calculus theorem I'm working my way towards: [equation]\int_{\partial \Omega} \omega = \int_{\Omega}d\omega.[/equation] You can read more about it at https://en.wikipedia.org/wiki/Generaliz ... es_theorem.
- hsilman
- ✓ Registered User
- Posts: 2842
- Joined: Fri Sep 15, 2017 8:31 am
- Age: 39
Re: Computer programming thread
Everybody wants to be a bodybuilder, but nobody wants to lift no heavy-ass weights.
-
- Registered User
- Posts: 826
- Joined: Thu Mar 01, 2018 3:44 am
- Age: 43
Re: Computer programming thread
Yeah. If you dont want to follow any tutorials, at least reduce one component of one of your ideas to a super simple component that you can deploy and test. But honestly, you'll end up throwing it away and doing it again better anyway, so you may as well have done a tutorial.
- RedFinn
- Registered User
- Posts: 155
- Joined: Thu Oct 12, 2017 4:41 pm
Re: Computer programming thread
Well, I guess it depends on what you mean by tutorials. I watch YouTube videos about how to use this tool or that tool, like a Django or PostgreSQL. I am doing a lot of research before writing any code because one of my biggest concerns is selecting the wrong tools for the job and having to start over.
The main thing I don't want to do is work on some project that seems completely orthogonal to the things I'm actually interested in. I understand the notion of beginning with simpler things - it's not necessarily wrong. But if I have a large amount of motivation to work on X, then ignoring that in order to work on Y is at least a little bit questionable.
The main thing I don't want to do is work on some project that seems completely orthogonal to the things I'm actually interested in. I understand the notion of beginning with simpler things - it's not necessarily wrong. But if I have a large amount of motivation to work on X, then ignoring that in order to work on Y is at least a little bit questionable.
- Hanley
- Strength Nerd
- Posts: 8752
- Joined: Fri Sep 15, 2017 6:35 pm
- Age: 46
Re: Computer programming thread
Have you already sketched-out the ideas? You can do quite a bit of design work while you build your "implementation tool set".
If you're more interested in the manifestation of the ideas (and less about building a comprehensive skill set) it might actually make sense to contract out the implementation work.
- RedFinn
- Registered User
- Posts: 155
- Joined: Thu Oct 12, 2017 4:41 pm
Re: Computer programming thread
I guess it depends what you mean by design. I have only thought a little bit about what I want the front end to look like (i.e. how it looks to the user). The main things I've been thinking about are
1) trying to flesh out my ideas, e.g. trying to understand more clearly what kind of functionality I want, and sketching out a rough plan for how the database should be implemented, and
2) Investigating the most appropriate tools for the job. This interacts with 1) above, because I want tools to implement the desired functionality, but I also have to consider my meager skills. I am interested in tools that are free, can lead to increased efficiency in certain ways, and are relatively well-supported. I'm trying to avoid biting off more than I can chew by choosing tools that are too difficult for me to work with.
For example, the main two candidates I am looking at for writing the front end are React Native and Flutter, because the idea is that you can write the code once and it runs on both Android and iOS. That's very attractive to me, as someone with limited skills.
Another example is choosing database software. I was initially looking into a document-style database like MongoDB but then I got some advice to try to work with a relational database if possible. So I started looking into SQL and PostgreSQL. Then when I was looking into the middleman (API) software, which connects the database with the front end, I saw that a popular choice (Django) works much more naturally with a relational database than a document-style database. Because I'm not an expert it seems simpler to try to use tools that are already known to work well with each other, so my current plan is to use PostgreSQL and Django because they're known to work well together.
I've definitely thought about this, but I'm deciding against it for now. I probably have enough money to pay someone to implement my ideas (though I haven't looked into exact costs), but I don't think it's a good idea. The most likely outcome is that I don't make any money from my ideas, in which case the only thing of value I can gain is some skill at writing software. I would like to succeed entrepreneurially, but worst case I'm hoping that being able to write software at least helps me command a higher salary.If you're more interested in the manifestation of the ideas (and less about building a comprehensive skill set) it might actually make sense to contract out the implementation work.
So basically I want to realize my ideas but I think the skills gained are quite important as well. For example they could help prepare me to implement some idea I have in the future. And if you pay someone to write software for you and it somehow does explode in popularity, and you have no idea how to manage it, that could be a problem.
- Hanley
- Strength Nerd
- Posts: 8752
- Joined: Fri Sep 15, 2017 6:35 pm
- Age: 46
- RedFinn
- Registered User
- Posts: 155
- Joined: Thu Oct 12, 2017 4:41 pm
Re: Computer programming thread
Well, I can't say I've thought a lot about that yet. But I am trying to think about things somewhat carefully before beginning to write code. I'm hoping to begin writing code before summer is over.
- Skander
- Registered User
- Posts: 1419
- Joined: Sun Mar 04, 2018 4:02 pm
Re: Computer programming thread
I wrote a Django based website and it did take a solid year or so from idea to fully working. I liked Django because Python is very pleasant to write in, and the documentation is some of the best I've encountered in that kind of thing- I'm not finding the Flask stuff quite as good. That said, the stuff that "comes for free" with Django is not relevant to every project, and it can be complex if you're doing something simple. I'm also not sure how good it would be for single page apps.
I have an app idea and I finally realized I needed a partner in crime - I was able to find one who can do all the front end stuff, so we're using Flask and I do a lot of the back end stuff and he does the JavaScript stuff.
Finally, you may want to try to stick to MySQL if you can. For python anywhere for example, MySQL is free to use, but postgres requires a paid account.
I have an app idea and I finally realized I needed a partner in crime - I was able to find one who can do all the front end stuff, so we're using Flask and I do a lot of the back end stuff and he does the JavaScript stuff.
Finally, you may want to try to stick to MySQL if you can. For python anywhere for example, MySQL is free to use, but postgres requires a paid account.