[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Any Computer Science bros? How hard was it to major in it in
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.
The stories and information posted here are artistic works of fiction and falsehood.
Only a fool would take anything posted here as fact.
You are currently reading a thread in /b/ - Random

Thread replies: 131
Thread images: 7
File: big-data.jpg (306 KB, 1024x768) Image search: [Google]
big-data.jpg
306 KB, 1024x768
Any Computer Science bros? How hard was it to major in it in college? What job do you have right now? Is it true you have to know a lot of math? What programming languages do you know?
>>
Hey CS here. The math sucks dick. Im about 75% of the way through. Got an internship a few months ago, making 12/hr. Its hard but so worth it, lots of fun. Currently pretty good at java, php, c#, JS, and pea thon.

Word of warning though, major is full of mouth breathing weeb aspie neckbeards, you'll need to meet peoplr outside of your classes to go to parties/have sex
>>
I received my BS in CS in 2003 where I meaning did work in C++ and Java, then promptly got a job doing web development in PHP.

Probably 90% of what I use on a daily basis I learned after college.

Regarding math, you'll probably be required to learn some Calculus as part of your degree, but will never need anything beyond the simplest algebra unless you're programming something that actually involves math. In my case, I had to take 3 Calculus classes and hated it. Calculus was the worst part of my CS degree because it was something I totally did not need.

As far as programming languages, it doesn't matter what languages you know. What matters is your knowledge of general programming best-practices. Once you learn one language, you can learn other easily.

In my job, I primarily use PHP, with some JavaScript, MySQL (not a programming language but important) and a tiny bit of HTML/CSS (if you consider those programming languages). Specifically, I use a framework/CMS called Drupal which takes care of typical stuff most websites need so you can focus on stuff specific to the website in question.

No matter what aspect of CS you get into, there's a good chance you will benefit from a familiarity with Linux.

Some general advice:
- Always test your code
- Always save and backup your work
- Always keep security in mind
- Always ask for help when you don't understand something
- Never make assumptions
>>
>>691290011
One more thing--

Make your code as easy to understand as possible. Just because you can reduce 5 lines of code down to 1 doesn't mean you should.

What's important is that when somebody's troubleshooting a problem, they can easily understand what your code does. Part of this is by providing clear, helpful comments.
>>
>>691289936
>>691290011
>>691291082

Thanks, anons.
Is there anything I need to do before going into CS? Like learning a programming language? Strengthening my math skills?
>>
Nursefag here, what's the money like with a CS degree? I'm pulling in 60k a year but I need a bigger check, what are my options?
>>
>>691291082
funny tho first thing I do is remove all annotations whenever I work with someone else's code

just doesnt look clean, and the gibberish he wrote isnt explaining shit either 95% of the time
>>
>>691291448
Typically you will take classes that teach programming.
>>
Went to college with no prior knowledge of programming and got a BS in Comp Sci. If you are good at critical thinking and logic you will be fine. Also, you won't learn shit until you get out of college and get a real job. So just try and impress all the people you need to get a basic programming job and you'll learn what you like and don't like
>>
File: 1465059149153.jpg (88 KB, 750x747) Image search: [Google]
1465059149153.jpg
88 KB, 750x747
>>691291448
Lol what a fucking moron...
>>
>>691291718
>>691291795

How difficult is college Calculus?
>>
>>691291795
Also,

I mainly work in Java, Javascript, AngularJS, HTML, CSS. I do mostly front end development but when needed I have to switch to the mid tier too. My math has always been decent but you won't be crunching numbers like you do in school while programming. I work for a financial company.
>>
>>691291448

Become a hobby programmer. Doesn't even have to be too hard core. Just a mess around learning Python/Java (quite common in first year classes) and making your own random shit. There's a lot of free tools online to help you, such as https://www.codecademy.com/

Definitely was incredibly helpful to be experienced with general programming basics before I got into University.
>>
>>691291960
It's not fun. I had the choice between calc 2 and stat 2 and took stat haha. I failed calc the first time and had to retake it. Made it by by the skin of my teeth but my other grades brought my gpa back up
>>
>>691291504
I make 73K/year working from home. I could pretty easily make over 100K if I was willing to move to a big city or, probably in general, work harder.

It's cushy as hell. The challenge for me was finding a company run by non-douchebags
>>
>>691291082
lol "make it easier to read because i'm too lazy to take 20 seconds and properly read your code" fuck off
>>
>>691291514
It might be better to correct inaccurate comments rather than remove them all.
>>
>>691291948
I'm pretty young and new to all this, anon. Starting college soon.
>>
>>691291960
We had timed tests and were not allowed to use calculators. So basically, all of my grades were lower due to rushed arithmetic errors.

To be fair, I never did any homework because I hated Calculus and thought (correctly) that I'd never need it.

I passed my final Calculus class with a D-, and I'm pretty sure the professor was just being nice.
>>
I'm graduating with my associates degree in computer systems and network technology in 3 weeks, and we haven't gone over any programming languages. Am I fucked for the real world?
>>
>>691288973
What you should be asking is Is getting a CS better than a SE degree
>>
>>691291504
I was a nurse for 20+ years making your money. I got a job is a software qa engineer and increased my pay immediately by 7k. I am in my final year of BS in IT and from what my employer pays, I'll be getting a 20k raise from there. Needless to say, I'm firmly of the opinion that nursing can fuck off for how little it pays.
>>
>>691291948
Haters gonna hate.
>>
>>691292316
What kind of work do you do? Do you get paid through contracts or are you salaried? I need a good stay at home job.
>>
>>691292416
Not sure what alternate reality you're coming from, but well-commented code is standard practice everywhere.

Either you're a troll or you think you're better than you are.

Comments are guidelines. You're meant to read them to know what the previous programmer was trying to do.

Obviously, both comments and code should be well-written.

In my job, there are coding standards that *require* me to use comments.

Good luck telling your boss you refuse to comment your code.

Have you ever actually held a programming job or are you just full of shit due to lack of experience?
>>
One advice is that don't let the failed neckbeards doscourage you, give it a shot. Yes, math can be hard but it isn't as hard and impossible as many people say. If you're interested and go to classes you should be okay
>>
>>691290011
>- Always test your code
This is worth it's time in gold.
>- Always save and backup your work
Even better:
Version Control System every fucking text file you ever edit (via git, svn, whatever).
It's irreplacable if you need it, and almost no effort if you end up not to do so.
>- Always keep security in mind
But don't do your own crypto shit. Use what's available, and:
>- Always ask for help when you don't understand something
StackOverflow, etc are there for you. IRC with the devs, and mailing lists, too. Nobody benefits if no questions are asked. Expect to be asked yourself.
>- Never make assumptions
And don't let others make assumptions, more than one system failed because of lacking documentation and wrong mental models.
>>
>>691292999
It's a salary job. I tried contracting but didn't like it due to the instability.

I'm a Drupal (PHP framework/cms) developer supporting a Drupal-based product.
>>
>>691293207
lol, sorry you have a shitty dead end job that REQUIRES you to write comments on your code than actually have an articulate group of programmers who are constantly talking instead of stuttering "J-j-j-just write it in the comments" fuck off weeb
>>
>>691293207
Indeed. There are many things that can be done for reasons that are not obvious in code, and for that commenting is crucial lest that knowledge get lost, especially in a cleanup later.
>>
>>691293539
Yeah, fair point. I completely forgot to mention version control. We use git.
>>
CS is applied mathematics. If you suck at math you're gonna suck at CS. Don't need a CS degree to code though. I mean, you'll probably suck, but that's ok too. Still can make ok coin and I make big bucks fixing shit done by idiots. Plenty of people with degrees that can't code. I've met people with advance degrees that can't code worth shit (masters, phd). Not uncommon. There is a class of people that end up taking advance degrees because they can't hack it in the real world. They just hang out in the lala land of academia.

There are a few unicorns out there that are god tier coders that don't have a degree. The couple I know are god damn geniuses. One dropped out of uni at 16 to make crazy money in the dotcom era. Never ended up finishing a degree but gets tons of contract work based off his skills. People seek him out.

I code whatever the job requires. If you know your shit, you should be able to pick up any language quick. Currently I do stuff in gambling. It pays six figures, so that works. It's also slack as fuck.
>>
>>691291082
readability > performance
Ensure that the guy that maintains your shit after you're done dosn't foam with rage at Chances are you're maintaining someone else's old shit anyways.
>>691291448
Programming is a requirement (so you should know at least one language really well), but that's not really what (non-academic) CS is about. It's more of a documentation/organization/solution/architecture development and implementation discipline. Management and communication skills may even be more important than programming ability.
>>691292784
CS/nettech? You'll most likely do 90% server/network maintainance. Learn any scripting language well; it'll save you hundreds of hours.
>>
>>691288973

>How hard was it to major in it in college?

Not really. It helps if you get study groups together - I had a real fun time hanging out with others and getting the concepts. Also helps if you do extracurricular things like ACM.

>What job do you have right now?

software engineer, making $100,000

>Is it true you have to know a lot of math?

Not a whole lot. I actually liked the computer science-specific math courses like computability theory and discrete math. Embrace it. Again, you have lots of friends to help you. There probably is more math now than when I studied 20 years ago.

>What programming languages do you know?

By end of college I knew C (most everything was C back then), C++, Java, Perl, Visual Basic, Pascal. Again those are ancient skills. Now you might add Python and C# to that list and a functional language like Haskell, while maybe dropping C++ and more likely dropping Perl and Visual Basic.
>>
>>691294376

Oh, and you'd definately drop Pascal, which was kind-of a stupid thing to learn even back then.
>>
>>691293694


I'm like 90% sure you're trolling.

For anybody else reading:

There's nothing wrong with including comments within one's code.

Nothing's stopping you from reading the associate code to make sure the comment is accurate.

Nothing's stopping you from changing an inaccurate comment.

And, "programmers who are constantly talking"? How do you expect that to scale?

Dialogue associated with code should take place within a ticketing system to so it's documented and backed up.

Comments are nothing more than inline documentation.

When you have a programming job, your will likely be assigned tasks via a ticketing system. After you commit a change, you have to explain what you did.

What do you think happens if that explanation is incorrect? It's no different than an incorrect comment.

Your seemingly trollish logic is very flawed.
>>
>>691293679
Is this all with a AS in CS? Or did you get a BS or higher?
>>
>>691294283
Kind of guy I was talking about. No. Unless you plan to graduate from a world-class University, CS and programming degrees are far from applied math.
There is math, but not as deep, not as much. This guy was bad at math, but this does not mean that you have to be a genius or talented to get a CS degree.
>>
>>691294283
What languages did you study? And do you work from home or commute?
>>
Any anons like distributed programming?
>>
>>691294769
BS in CS. But in my line of work, you don't actually need a degree at all, you just need the right skills.

I have an old boss who ended up working on whitehouse.gov. Guy never went to college, yet helped build a site such as that.

College helps, but knowing somebody who already works somewhere so you can get a good recommendation is probably as good as a college degree, if not more so.

In fact, I got every single job I've had, except the first one, based on knowing somebody at the new job.

Nobody has asked me what my college GPA was except during my first job, when I had almost no work experience.

In the end, people care about what you can do and if you can be trusted.
>>
What's the different between programming and scripting? I keep seeing stuff about compiling codes and such. Explain please?
>>
>>691288973
The math is actually sort of fun if you don't go in looking at it as a chore.

My advice is put your pride behind you for a bit and start with the basics (even if that means going back to the very beginning). Use Khan academy and Paul's online math notes, or get a text book
>>
>>691288973
Started as a SE major, switched to pure mathematics because it was cooler. An engineering curriculum will have way less math. A CS curriculum _is math_. But if you want to work as a programmer the vast majority of your work will be simple arithmetic.

Currently a senior cloud architect, 145k. A few tips:

- if you're going to be a developer learn something in the operational space. DevOps is hot shit right now and you'll make way more there. You don't need to be an expert, just some basic networking and Linux admin will go a long way to get you hired
- stay way the fuck out of major tech spaces - you'll get eaten alive in San Fran or NYC. Find a large city with low cost of living, you will be a huge fish in the small pond.
- don't be afraid of big companies. Lots of programmers turn their noses up but they pay well
>>
>>691295372
Oh yeah - currently use Go and Ruby mostly, with some Clojure where we already run JVM stuff.
>>
>>691294376
>How hard was it to major in it in college?
US work load was a joke, germany had large theoretical foudnations
>What job do you have right now?
Library architecture and API design.
>Is it true you have to know a lot of math?
Algebra will be most of what you do, but you absolutely must understand the concepts in the higher stuff to understand otherwise opaque processes and journal papers, even if you never use any of that math yourself.
>What programming languages do you know?
Scheme, Clojure, Haskell, Perl, C, FORTRAN, Java, Python and bits of some others. It gets to the point where picking them up is almost trivial. You'll get projects in the weirdest languages that you're expected to integrate with.
>>
>>691294496
>COBOL
once. for a banking backend thing. please never again.
>>
File: 1461271923365.gif (2 MB, 500x293) Image search: [Google]
1461271923365.gif
2 MB, 500x293
>>691293694
This is either bait, you've never worked with anyone else's code, or your documentation sucks ass.
>>
>>691288973
I'm British so I dunno how much this'd help you, but I did a Comp Sci degree, currently earning £30k been in industry just under 2 years. Professionally I deal with Java, but at Uni I learnt C++ and C#, with little bits of other languages.

The degree wasn't too bad, as most of the maths in applied so it's interesting stuff like programming fastest routes and stuff.

Anyway go for it, I enjoyed it and it lead to a frankly easy career that earns you plenty of cash.
>>
>>691288973
Anon there is something you must not forget.
Computer science is not only programming.
There are numerous branches you can choose such as network,hardware,software and even more sub-branches such as subneting,software developer,studying algorithms,artificial inteligence,distributed programming,web developer,game developer and it goes on forever.
College is not going to make you a master.
You have to find what you like mostly and go on with that.
>>
>>691294987
What kind of shit tier uni is CS not applied mathematics? Nearly all my courses were thinly veiled math courses. My DB course was mainly lambda calculus.

With the people I work with, a software engineering degree seems to be a better base for coding. CS is good if you want to do research. Seng is better if you want to actually make software.

End of the day you just have to be smart. Anyone I know that can code worth anything is smart. It's problem solving and acquiring new skills quickly.
>>
>>691295102
Currently reading after doing Erlang shit for a while:
>Copy of Distributed Systems: Principles and Paradigms.
It's kinda neat.
>>
>>691294701
So obvious you don't know the real world
>>
>>691295263
Someone's gonna give a technically correct answer that talks about compiled machine instructions vs a VM interpreting instructions, blah blah blah

Here's the real meaning, if you hear it in the world:

"Scripting" is what you pay stinky Indians $20 a week to do.
"Programming" is what you call it when it's way above Rajit and Krishaswarmathy's level.
>>
>>691296227
Do you work on linux or windows?
>>
>>691288973
https://www.google.com/about/careers/students/guide-to-technical-development.html

It was quite challenging. But if it is for you, you will enjoy the hell out of it. The amount of math you need, depends on what you plan on doing. More like applied mathematics. A lot of the programming languages are the same, only difference is some style or syntax.
>>
>>691295968
Not the same person but I think having a good descriptive naming convention when it comes to variables and methods is more useful then having blocks of comments describing what the code is doing.

Comments are useful when you need document a decision made but you shouldn't be commenting every API call.
>>
>>691295263
Massively simplified:
Programming is telling the system or anything in it what to do automatically.
Scripting is telling a program on the system what to do automatically.
You've got text files that must be translated before the computer can read them. If you do this before the program is run its compiling, if you're handing them to a program that runs it directly its scripting.
>>
>>691296194
this anon is absolutely correct

A real CS degree is math. It will help you with solid fundamentals of algorithms that most self-taught programmers and many software engineer students don't have.

That can be an advantage but only if you have a solid understanding of programming already.
>>
>>691295603
Clojure's the shit, man.
Try out Rust if you ever feel golang lacking. It may be an alternative
>>
>>691290011
agreed with most of these points except

>you'll probably be required to learn some Calculus as part of your degree

where the fuck did you go to school? For my CS degree half the classes were discrete math, linear algebra and in the last year or two a fuck ton of finite automata and mathematical proofs. On top of the standard 3 years of calculus etc
>>
>>691291448
dude I was a physics major until like halfway through junior year, never programmed a single line until then. You'll be fine. Besides, most people on this planet who work as coders are absolutely shitty at it, so if you can even do basic algorithms and write decent code you'll have a job forever
>>
>>691296495
691295968 here
>good descriptive naming convention [...] is more useful then having blocks of comments
Yes. Ideally, code should be self documenting, and language constructs should support that code. I'm not arguing for javadoc-like comments on every single thing, but that comments have a place and a time to be used and should be required at those times.
It's more of a less-is-more kind of thing imo.
I think the anon was implying to do all documentation verbally with coworkers instead of keeping in-code docs as needed and detailed external {design,architecture,requirements} documents on the side.
>>
>>691295000
In school? Fuck, that was a while ago. My school was heavy on Java. Did some C and some C++, did some assembly, scheme, OCaml, matlab/octave.. I didn't really study any language. Just used what was needed for the coursework. Matlab/octave is incredibly useful though. Glad I got to know that a bit. Quite useful in an R&D group.

The one thing I'd recommend to anyone in school is wrap your head around functional languages. Procedural is easy. Functional has a learning curve that I've rarely seen anyone get over in the working world.

Currently work from home mainly, though I do have to travel for work (in my current job). Guys who work for me work from home too. Used to do the whole 9-5 office shit. Fuck that. One guy working for me was most productive 11pm on. Good luck getting him to show up to a physical office by 11am. Meet up for coffee every few weeks and just delegate shit via email or im. That's the perk of being reliable and fucking good at what you do.
>>
>>691296400
linux 95% of the time privately and at work
win7 and below otherwise, on rare occasions
>>
>>691292654
>>691292147
>>691291960

how the fuck is this college level math? Didnt you guys take calc through 2 in hs, and stats? College level math should be far more fucking advanced than hs level stats and calc 2 if you plan on programming for a living
>>
>>691297914
I took AP Calculus. Is that good enough?
>>
File: a57.jpg (21 KB, 600x398) Image search: [Google]
a57.jpg
21 KB, 600x398
>>691292999
Not leaving these unchecked
>>
>>691296683
>>691294987
>thinly veiled math courses
perfectly on point

CS is pure theory, which is necessarily all math-derived.
SE is mostly management, code integration and maintainance, and lots of writing docs, sepecifications, etc.
Both require the problem-analysis-design-solution cycle and just happen to use the same tools. It's like equating carpentry and plumbers' work because they both need hammers.
>>
>>691294701
yeah hes trolling, just ignore him
>>
>>691297655
Sorry for assuming that you were taking a javadoc-like stance but I've had a lot co-workers like that and I've had issues in the past working on projects that were poorly written and had plenty of comments that were misleading.

There definitely shouldn't be a reliance on verbal communication since often you'll come back to a project that no one has worked on for a few months.

My typical usage I guess with comments is to document why it works a certain way and not how since the code already describes that.
>>
>>691296317
very true

also to add to that - don't get into super low-level so-called "programming". This includes:

>basic level web designer
>image to html developer
>basic wordpress stuff

These are good skills to have, but much of the billable work is being done by slaveshops in india and thailand and poland for people working for 1$ and hour, pumping out fuck tons of projects. They can do anything simple cheaper and faster. But if there is even a hint of complexity or nuance to the project, they will fuck it up. The sort of thing where you get a finished project with "Translated string goes here" on the actual output because their brainless workerbees, not thinking humans.

Instead, try to specialise or focus on a field that requires some thinking. Things involving high-level design, complex architecture decisions, artistry and creativity, complex algorithms, tough bug finding and fixing. These jobs are super well paid and actually will continue to exist in first world countries for a while
>>
I make 120k/year working with Clojure and Scala. I majored in CS and had shit grades/no internship, but did really cool shit on the side and put it on my github, and contributed to oss.

CS degree was fucking hard, fuck what everyone else says. I'm glad to be done with school and would never ever go back.
>>
>>691296683
That's the big difference. It doesn't matter in all jobs (e.g web monkey), but it makes a huge difference in doing things right and knowing the difference between premature optimization and doing something right. Self taught coders are often going to write the equivalent to bubble sort for most of their algorithms. There are educated people that should know better that just don't understand complexity theory.

>That can be an advantage but only if you have a solid understanding of programming already.

Not sure I agree there. Depends on what you mean. To me there are two classes of people: those who understand writing software and those that don't. There are people who just seem to get it and the majority that bumble along (many who think they get it). People who see the details and the overall picture at the same time (forest and the trees).

I use math every day. Sometimes indirectly, but I lean on my understanding of discrete and combinatorial math, linear algebra etc every god damn day.
>>
>>691288973
First, you learn boolean logic operations
then, you learn transistor logic
then, you learn how to build functional units from logic gates
then, you learn CPU design
then, and only then, you learn assembly language
then, after you have mastered assembly language (not dabbled, but mastered it), you learn C
then, after you have mastered C, you may learn the higher-level languages of your choice, but you will always use C and assembly as your primary languages because everything else is unnecessary bloat.

To truly understand what's going on and to make you a more competitive applicant when looking for jobs, you should also make it a goal to learn linear algebra, number theory, and at least the equivalent to a first course in abstract algebra. Good luck op.
>>
>>691297453
>if you can even do basic algorithms and write decent code you'll have a job forever

THIS

Plenty of jobs. Most employers have no clue. If it works, you are awesome. You do magic.
>>
File: 1465509812254.jpg (82 KB, 1280x720) Image search: [Google]
1465509812254.jpg
82 KB, 1280x720
>>691296683
Agreed - but counterpoint:

I got a degree in CS from a top-25 school, learned all sorts of theoretical shit but our professors couldnt actually code for shit. So, when I actually started working, I had to learn all the programming pieces

However, all those years of methodical algorithms and data structures and math meant that once I figured out version control and best practices and workplace stuff (which took like a couple weeks) I was immediately better than many people who had been coding for years, because they were pros at the details but never really had great fundamentals

when you're used to struggling with fucking theoretical computation proofs, figuring out how git works is trivial
>>
>>691298708
I feel you, anon.

Verbal comm is nice when the original devs are still around, but I do mostly maintainance of old code, and it's almost never the case.

>why it works a certain way and not how since [...]
I wish more prople would do this.

Most of my comments reference other resources, or describe why a certain ugly/unintuitive/strange/hacky bit of code or implementation was chosen, usually with with W3 links or bugtracker references. It's like an Implementation commentary for me.

Also: Outdated docs are often worse than no docs.
>>
>>691299596
lol ok gramps
>>
>>691299249
Another argument from set-theory:
If you can do 'hard' programming it's trivial effort to 'get' the 'soft' programming. On the other hand, when you're fixed on the special case of 'soft' programming, it's infinitely harder to accept and internalize the general 'hard' programming.
>>
>>691300051
> CS degree from a top-25 school

See that's the thing - op clearly isn't in a position for that. Or else he clearly wouldn't be asking about how hard the math is.

So for him, the choice is a CS degree from bumblefuck state, or a SE from bumblefuck state. and if his resume came across my desk (lol as if I'd work at a shit company but anyways) I'd almost certainly take the shit-tier programmer over the no-tier programmer
>>
>>691299323
Is scala worth the runtime performance over clojure? Or are you too tied to the JVM to use haskell-likes? What makes scala attractive to you?
>>
>>691299946
I've interviewed a few dozen people at this point for various programming jobs... this in one of the major tech hubs in the USA, for a decent software company, for well paying jobs.

YOU WOULDNT BELIEVE HOW SHIT MOST PEOPLE REALLY ARE

Ive interviewed people who had 10 years of senior developer experience, yet when I asked them to write a simple string parsing program, just said "No, I cant do that"

I just found an issue from a guy we fired years ago, where to determine whether an object was either a mobile phone or home phone, he was SCRAPING THE HTML PAGE AND PARSING THE INPUTS, LOOKING FOR A STRING. If he didnt find it, he just defaulted to home... instead of just asking for home/mobile

About 50% of the people I've hired I end up letting go within a year, because they're both incompetent and overconfident and argumentative

I may love building things with code but I fucking hate most coders. the only place I've ever been where I thought hey these people know what theyre doing was Palantir and that's like the top 0.1%
>>
>>691288973
>IT
>dl Adobe Reader
>>
>>691288973
Just finished my first year and so far it's pretty easy, really digging it
>>
>>691298176
programming is mostly discrete math (Think placing objects into bins, not sliding scales of numbers) but at least you won't be wasting time taking calc 1 and 2 in college
>>
>>691300051
>However, all those years of methodical algorithms and data structures and math meant that once I figured out version control and best practices and workplace stuff (which took like a couple weeks) I was immediately better than many people who had been coding for years, because they were pros at the details but never really had great fundamentals

Coding is easy when you know your fundamentals. You are just implementing the solution in a particular language using particular tools. How do you implement a particular data structure in language X? It's a google search away. The tough part is knowing what you need to implement, not syntax and tool commands.
>>
>>691299596
Not sure I agree. I didn't to it this way, and thus cannot quantify the merits, but is it not also reasonable to start in the middle and work both ways?
In addition, choosing only C and assembly seems almost like bait. Is it not your duty to use the "best" tool for the job as a developer? Do you see no improvements in the work of academics and businesses over the last few decades?
>>
>>691299323
what city
>>
>>691299553
One point to add - I may enjoy the more complex problems where I have to come up with something clever and elegant... but 90% of problems are more easily solved just using a standard library and getting it quickly, because what algorithm you use to find a word in a rarely used textbox in the settings window of some enterprise program isnt worth optimizing, and I have a million deadlines to hit
>>
>>691299596
lol

he's trying to get a job making intranet HR applications, not building an OS from the ground up
>>
>>691300812
> it's pretty easy
Nice that you think so. Use that spare time to get ahead; read papers, attend the research work being done, etc. Really, I recommend it.
>>
>>691300475

definitely - sorry if that came off as pretentious or reducing - what I meant was, even at a place that is generally considered to be producing great CS graduates, we didn't learn a whole lot of "programming". Most of the best students and professors there would make terrible developers actually

So wherever this guy goes, he should focus on the fundamentals and math just enough to have a solid foundation on which to add the programming pieces, because those pieces are easy
>>
Anyone here cybersecuirty?
>>
>>691300932
yeah I feel like every time I tell some stranger at a wedding or dinner or something that I'm a programmer their response is

>Oh cool - so what language do you use?

I'm always like... uhhh whatever I need to at that moment?

Its like asking someone who drives what roads they use

Nigga im gonna drive wherever i have to to get to where I have to be, roads are mostly the same and if I come across something really different like a river or mountain or something I'll figure it out
>>
>>691300775
best greentext
>>
>>691301669
or, even better, work on your own side projects. The most successful coders have things they build in their freetime and are passionate about
>>
>>691302139
cybersquirty
>>
>>691302272
>"Oh, you're one of those computer people."
>>
>>691300727
>YOU WOULDNT BELIEVE HOW SHIT MOST PEOPLE REALLY ARE

Oh I believe. I know first hand.

Was interviewing candidates for a position senior to me. One candidate with "20 years" refused to write code or even pseudo code for grabbing matching ints from two arrays.

Good candidates would be all like, "Normal intersection or bag intersection? Are there memory constraints or is pure speed the goal?"

This guy refuses to do it. It's below him or whatever. Also refused to participate in our stress test technical questions (really hard one we make you sweat out and drop better hints every 5 minutes.. fastest solution was 30 minutes and the test is how you do under stress).

Anyhow.. guy is a dud. His resume has some spottiness (I later get the truth on), poor hygiene.. lots of red flags.

Management insists we hire him due to "20 years". Yeah 20 years of fapping.

The guy breaks the code base. Commits shit that doesn't compile, deletes working code (accidentally) and commits. Doesn't understand merging, shows up late, leaves early.. The last straw was an easy project that was his. He had 2 weeks to do 2 days work. Didn't do it. Leaves for long weekend. Buddy catches it, we rush in (I cut vacation short), write the shit in half a day to meet the deadline.

This guy had pulled similar shit before. A friend that owns a company knew him, "Oh fuck, him?" Unfortunately he was out of town when I was verifying the resume. That means either he had pulled the wool over most employers' eyes or they were too afraid of lawsuits to say shit (defamation).

But.. he wasn't the exception. Exceptionally bad, but most people couldn't pass the simple "grab the like ints from these two arrays". A first year student should be able to do that. Fucking masters students couldn't. We passed on all those candidates though.. the "20 years" was too good fuck management to pass up though.
>>
What would you guys recommend as a first language for someone who has had a fair amount of math but knows next to nothing about tech or how a computer even works?
>>
>>691302538
Huh, I completely agree, but I thought everyone does this, so I didn't mention it.
It's like if you build tables for a living and want a better table, so you make one.
>>
I went to one of the top 6 schools. The prereq math/physics/etc was much harder than the actual coding for me. The difficulty will entirely depend on how you stack up to your classmates - for me coding was my strong point.

Since graduation I worked at one of the "big 4" tech companies for a long time. When I left I was making 200k/yr but very unhappy with life, so I left to travel around the world for a year. Currently on month 8.
>>
>>691302006

OP here.
Gotcha.
>>
>>691294283
This is false.

There are aspects of Computer Science that are more math-related, such as Theory or logical operations, but much of it has nothing to do with math other than very basic stuff.

Unless the subject matter of your program is math-related, your program will not have much, if any math involved.

If programming in general did involve a lot of math, I would not be a programmer.
>>
>>691296295
Lol, I've been a full-time programmer for the past 13 years. Pretty sure I didn't stay employed all that time by not following best-practices.

I'm fine with feeding the trolls if it helps non-trolls learn something.
>>
File: 1450211521970.jpg (47 KB, 483x611) Image search: [Google]
1450211521970.jpg
47 KB, 483x611
So this is what STEM edge lords are all about.

I think I'll stick to saving the world, thank you.

Or perhaps I should say, you're welcome.
>>
>>691301452
>but 90% of problems are more easily solved just using a standard library

Right tool for the job. I'm not building anything from scratch if I don't have to. Waste of time.

The trick is knowing what is premature optimization and what isn't. And that's a tricky trick. Know you have a limited data set? Then searching/filtering in the most readable way is probably best unless down the road you find it's too slow. Whatever is quick to write and easy to modify. If you know it's going to be huge, a little more thought is required.

It depends on the platform too. I worked in embedded. Every bit and byte counts as does every processor cycle. Minimizing your data structures as well as keeping alignment in mind (for the particular proc arch) is necessary. Doing some corporate CRUD application? None of that matters.

Game scripting is a good example. Be efficient in your physics and frame updates, but the rest.. do it in the quickest way with the least amount of bugs. Just don't delay frames.

Clear readable code. Profile the problem areas and fix as required.
>>
>>691302865
I have a similar rediculous story from the opposite side of the spectrum (but similarly on the spectrum, if you know what i mean).

>Hired a senior guy, maybe 10 years or so of experience, as a senior java developer. Had some architect experience. Carnegie Mellon CS grad, so should know his stuff.

>Our system is pretty complex, so we gave him about a month to work on little things with us and generally learn the system. One day, we assign him a moderate project on his own - build an admin console that allowed users to visit and add/remove permissions, request new ones, etc.

>Didnt hear from him about it for like a week.

>Then, like 3 days before the deadline, one of us asked him how it was going. He didn't even stall or make up bullshit - instead, he wrote a 3-page email about the philosophy of the method by which he would build it. Even ignoring that it was some basic admin page, he wasn't even making valid points - arguing things like JSTL vs scriptlets and POST vs GET and all sorts of bullshit that could have been solved in like 5mins.

>So this goes on for 3 days - literally dozens of pages of dense, long-winded emails about why X is a bad practice or theories on why we should switch our version control or use a different language or concepts on how to re-architect our whole system. MongoDB is web-scale level of accuracy, though.

>Management took him seriously because they didn't know better, and started getting sucked into these debates. Our meetings were now long uninformed and unrelated debates on SQL vs NoSQL, instead of actually building things.
>>
Cont from
>>691305868

>I got particularly fed up, and that final night before the deadline, I just built it. Didn't tell anyone, didn't talk about it at all, just sat down and spent 4 or 5 hours building the fucking page and services.

>The next morning, in our stand-up meeting, I asked him if he had finished it in time. He went into a 10-minute rant about how that wasn't even possible and it needed weeks more time and how he needed to research different scaling advantages of NoSQL platforms blah blah

>I was just like uhhh okay well I built it

>the room was like what?

>I pulled up the URL, showed everyone the page, and they were like yeah thats what we wanted, it's done. Next task

>He just sat there like oh fuck

>He later pulled me aside and was like sorry i didnt know any of you guys could code lets work together (didnt work). He continued to do this for months, we just stopped assigning him work. He literally just wrote emails nobody read for a living

Unfortunately, it took my company 6 months to fire him, because, quoting my manager, "He's black. It's super hard to fire black people". Literally had to tell him he no longer had any work at the company, and let him mope around for a month before he quit
>>
>>691305114
?
>>
>>691302964
something easy, forgiving, and with widespread tutorials

like java or python or javascript

ignore all the people that try to convince you to go with X language because it's super good at Y - you can do that later, what you need to start is just a good learning tool, for what you'll be doing the first month performance and advantages will literally not matter
>>
>>691302987
I'd bet 90% of the developers I've met in my career have never built a side project.

Those developers were generally shitty though - arrive at 930am, vaguely half ass the project per requirements (even if those requirements had glaring mistakes), leave at 4pm and generally never give a shit
>>
>>691305729
well said. wanna work for me? haha
>>
>>691304476
>This is false.
Found the shit coder.

Let's take a boring corporate CRUD application. It has a database right? Gotta store the crap somewhere. The database has a model right? Is it normalized? Are you maintaining referential integrity?

Understanding the how and why (and when to break the rules of normalization) is math. You can write the application completely ignoring it and with a poor background, but if you know your fundamentals chances are it'll be less buggy and easier to maintain.

I've seen people with poor backgrounds completely fuck up db models (and have no clue about logical models vs physical). They just write shit "so it works". Only it doesn't work right when you mix up many to one and one to many.
>>
>>691307329
it's "math"

It's not calculus or differential equations

you know what they meant, stop being pedantic
>>
>>691288973
>Was a former CS major
These are the classes I took before I switched out
>Programming I (easy, better keep up with it and practice)
>Programming II (easy if you kept up with your first programming course)
>linear algebra (weird class, hard and easy at the same time)
>calc I (easy)
>calc II (little harder)
>calc III (roughly the same difficulty as calc II)
>discrete math (for me, it was a mind fuck nightmare)
>data structures (eh)

I'm sure you've gathered what else you'd take from the posts above, I thought it was a semi-difficult major and those were just the 'starting' courses for your freshmen and sophomore classes, just requires a lot of attention and focus on your code, 1 tiny little fuck up like adding 2 = signs instead of 1 = sign, and it doesn't work and has you asking yourself wtf, trying to check every block of code and path for the error.
>>
>>691306294
>Unfortunately, it took my company 6 months to fire him, because, quoting my manager, "He's black. It's super hard to fire black people". Literally had to tell him he no longer had any work at the company, and let him mope around for a month before he quit

Ha. Just excuses. Black guys get fired every day. What's skin color matter when you're useless? I mean, if he were a gay native indian in a wheelchair.. don't fire him. But black? Come on.

For us it was.. "well he's still on probation." Which makes 0 sense. Yeah, awesome, super easy to fire with no repercussions. I even offered to fire him. I think my offer was too eager. I did make the guy cry. Nailing him on every one of his excuses one after another until he broke down, cried and said "I fucked up" (*feels good man*). I know you know the feeling. Building the code while the guy pulled delay tactics was a major dick slap in the face for that guy.

Did the guy only have a BSc? Normally the debate/email delay tactic is PhD level bullshit.
>>
Statistician/deep learning here

Lots of maths, lots of theoric informatics.
Love my job, 45k€ per year in france (first year) college was pretty easy to me
>>
>>691308276
No offiense, but discrete math and data structures should be year 1 CS stuff, done alongside Programming 1

Also, the way you described 1= vs 2= is dead on - yep, that's a lot of what we spend our time doing. Over time, though, you stop making those little mistakes and get really good at knowing where to look in thousands of lines of code when something goes wrong
>>
>>691291960
You wont need Calc for CS, usually just for CE or any engineering/physics. CS at state U here only requires College Algebra (you should have learned in HS) and some Stat.

CS is pretty much a programming degree. Focus on something useful like PHP, Python, Java, C++, you can learn the rest.
>>
>>691307329
Wow, I was just talking about practical, day-to-day stuff from my personal experience.

Nothing *I* do is more complex that the most basic algebra. That's just the nature of my job.

Is there a mathematical basis for everything that I do, from the construction of the software I'm using, to the hardware, to the physics from which it is based? Yes.

I'm not even going to read your whole answer.

You're talking about something totally different and I don't give a shit what your point is.

If I wanted to do math, I'd go become a Professor and do math all day long.

Math is very important but not everybody's job involves much more than what you learn in high school.

You're a rude piece of shit, and I'd go to the trouble of explaining why your way of answering is much worse than your interpretation of my response, but this is /b/ so I'll just say to go fuck yourself with your limited view of the world.

All you know is what your qualia say right now. You're nothing but an arrogant monkey gone wrong. The world would be better with none of us alive, starting with you.

In short, go fuck yourself.
>>
>>691308836
Yea, when I went back to college I had to take a re-up math class so I had to take discrete math my sophomore year. but you're right, it's usually
freshmen 1st semester
>programming I
>calc I
freshmen 2nd semester
>programming II
>calc II
>discrete math
>some digital logic or logic math/EE course

but mine got pushed up a semester to make room for the re-up math and calc I
>>
>>691309161
but to answer your question if you can get through Calc 2, calc 3 is easy. Calc 1 is just derivatives/integrals, Calc 2 is the begining of understanding 3d volume, vectors. Calc 3 is a little more 3D, and then practical things like regression and solving multivariable systems of equations.

Diffy Q is where you will hurt.
>>
>>691308583
Honestly I don't remember, but I really really doubt it was more than a BS.

I've actually come across the firing minorities thing a couple times - my current manager is a pussy so she takes months to fire anyone regardless, but is always super super slow with minorities and legally gives them 10 second changes and warnings etc etc. It's funny, because she's actually pretty openly racist when it comes to how each race works (not that her stereotypes are often wrong, haha)

and I was the same - I would go into her office every day, and be like what the fuck fire this guy he sucks. Me and him clashed a lot at first when I called him out on stuff, but by the end he just sort of took it, I think he realized he had lost

Funny side note - this guy rapped in his free time, and when I brought it up in his interview, he was MORTIFIED. he was like HOW THE FUCK DID YOU FIGURE THAT OUT

I was like uhhh the email address @domain.tld you used to schedule the interview is your rap website? lol how did he not think that would happen... and how was I the first interviewer in 10 years to go to someones website when they had a private email domain???
>>
>>691308021
>It's not calculus or differential equations
So only calculus is math? Don't be obtuse.

Linear algebra, finite and discrete, counting theory, combinatronics.. all math.

Database schema? Lambda calculus. Math.

Differential equations are a very small part of math.
>>
>>691309606
>calc II
>vectors
Really? We stopped with parabolic equations and polar coordinate problems, and then started calc III with vector calculus. And we barely got through that, did your calc class move pretty quick?
>>
too lazy to read it all, but I find codingbat a great website to start. it doesn't teach u anything, but it becomes challenging for beginners and really will make you think
>>
>>691309817
Dunno I went to community college on an AtoB to state U because I dropped out of HS. Only maths i took for CE at State was Linear Algebra and Discrete Analysis.

If I hadnt learned multivariable by Diffy Q I wouldve been fucked.
>>
>>691309657
>Funny side note - this guy rapped in his free time, and when I brought it up in his interview, he was MORTIFIED. he was like HOW THE FUCK DID YOU FIGURE THAT OUT
>I was like uhhh the email address @domain.tld you used to schedule the interview is your rap website? lol how did he not think that would happen... and how was I the first interviewer in 10 years to go to someones website when they had a private email domain???

Fucking gold.

I do my best to dox all candidates. Oh, you used an email address with some random handle instead of a name? Hmm.. let's see what forums this is used on. Oh, there's a reddit user with that name? Hmm.. posts in r/hometown, posts in r/programming.. what other subs does.. oh my...
>>
>>691309732

You sound like the dick in this greentext story
>>691305868
>>691306294

you love arguing semantics instead of actually helping to solve people's problems, dont you? Newsflash, youre the 90% then
Thread replies: 131
Thread images: 7

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.