Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
Valeyard
Mar 30, 2012


Grimey Drawer
if you work for a silicon valley startup then yeah, otherwise its enterprise software and web dev all the way

right?

Adbot
ADBOT LOVES YOU

Marzzle
Dec 1, 2004

Bursting with flavor

Dessert Rose posted:

the thing is, at this point you can get by in most programming jobs without ever solving a novel problem

sure, if you work for an actual Software Company then maybe you'll be solving some novel problems but that isn't where like 80% of the work is

Well until you get a programmer union cs degrees are the only thing keeping peeps in they six figgies

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

programming is a trade, best learned through experience and apprenticeship. computer science is a discipline of mathematics, relying on manipulation of higher-order abstractions and theoretical consequences. trying to teach them together is a pretty bad impedance mismatch in a lot of cases, and takes more care to reconcile than I've ever seen a school manage really well.

Dessert Rose
May 17, 2004

awoken in control of a lucid deep dream...

carry on then posted:

sometimes not even then lol

i said "maybe"


Marzzle posted:

Well until you get a programmer union cs degrees are the only thing keeping peeps in they six figgies

the band-aid is going to have to come off eventually

i'm fine if it waits a few more years for my own personal benefit, obviously

(though i managed to land a pretty good job without a cs degree. it takes about as long as getting the degree does, but you don't end up with student loans)

Hed
Mar 31, 2004

Fun Shoe

Bloody posted:

i once did cool algorithm lovely matlab -> lovely c++ -> kinda not so bad c++ once

it took two years

i called it my master's thesis

lol same. and I wrote a lovely paper about it!

oh yeah and it never got out of "lovely code" stage

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

Dessert Rose posted:

(though i managed to land a pretty good job without a cs degree. it takes about as long as getting the degree does, but you don't end up with student loans)

after 12 years of painfully documented experience, you can even convince the INS that you should be treated like someone who has a 4-year degree.

hobbesmaster
Jan 28, 2008

and the traditional middle ground between theory and trade in this case is having a lot of trouble finding its footing.

if a physics program required you to learn how to weld and a weed was taught a bunch of physics how would civil engineering grow as a distinct field?

hmmmm that's actually not a good analogy at all. physicists, electricians and EEs?

hobbesmaster
Jan 28, 2008

Subjunctive posted:

after 12 years of painfully documented experience, you can even convince the INS that you should be treated like someone who has a 4-year degree.

let me guess: it all boils down to "is making a ton of money"

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

hobbesmaster posted:

let me guess: it all boils down to "is making a ton of money"

no, they don't care about salary at all as it happens. they want letters from employers describing what skills you had to use and what you learned in the job, and then they pay some CS professor to squint at it and say "yeah, close enough" or "no haha gently caress your life plans no immigration for you".

hobbesmaster
Jan 28, 2008

that must be the one thing in the us that isn't money related

Necc0
Jun 30, 2005

by exmarx
Broken Cake

Valeyard posted:

that is definetely an issue here. there is a total lack of CS highschool teachers because of how much money you can make not teaching

this is what i plan to do when i retire and i'm kind of surprised there's no social pressure for all professionals across the board to teach once they get ~50+

Necc0
Jun 30, 2005

by exmarx
Broken Cake

Valeyard posted:

as I near the end of my degree, the most useful things ive learned over the past 4 years are:

• how to code in python and java along with the important java workflow stuff
:siren:• how to pick up new languages in a reasonable time
• knowing how to find the info i need to solve something
:siren:
• lots of agile team projects

this is the point of a Good Education and while you'll realize just how much you don't know once you land your first real job you'll have the mental tools to take it on

a good sweng/cs program doesn't teach you how to solve specific problems, it teaches you how to solve problems in general

Necc0
Jun 30, 2005

by exmarx
Broken Cake
you'll also work with older people who had no formal education and learned exactly how a lot of 'programming should be a vocational' proponents said they should and guess what they're loving idiots who are fish out of water as soon as anything new rolls around. which is all the time

Shaggar
Apr 26, 2006
most new cs grads are utterly worthless unless they've done java or c# side projects and even then they're probably still useless. if they were taught a plang they'll have shitloads of bad habits you'll have to break them of before you can even start teaching them how to program

FamDav
Mar 29, 2008

Necc0 posted:

this is what i plan to do when i retire and i'm kind of surprised there's no social pressure for all professionals across the board to teach once they get ~50+

being a teacher is hard and requires skills separate from what made you a good software developer

Marzzle
Dec 1, 2004

Bursting with flavor

Shaggar posted:

most new cs grads are utterly worthless unless they've done java or c# side projects and even then they're probably still useless. if they were taught a plang they'll have shitloads of bad habits you'll have to break them of before you can even start teaching them how to program

I dunno if any cs grad is going to expect to get a job without doing SOMETHING outside of the bog standard curriculum. Most programs would probably force you to do something to stick in a portfolio as well in case you are extra clueless. Though I guess it would be the students fault if they didn't spend 15 minutes figuring out what the mspst marketable language is

~Coxy
Dec 9, 2003

R.I.P. Inter-OS Sass - b.2000AD d.2003AD

Dessert Rose posted:

the thing is, at this point you can get by in most programming jobs without ever solving a novel problem

sure, if you work for an actual Software Company then maybe you'll be solving some novel problems but that isn't where like 80% of the work is

one in my professional life thus far (10 years) i have constructed a directed acyclic graph and done a depth first search to produce a 1 dimensional ordering

another time I decided to write a recursive algorithm to determine whether two railway stations are connected but even on a small regional railway line it smashed the stack so I rewrote it as a loop

leftist heap
Feb 28, 2013

Fun Shoe
if you're terrible enough most problems are novel though.

PokeJoe
Aug 24, 2004

hail cgatan


hobbesmaster posted:

that must be the one thing in the us that isn't money related

lol

Jabor
Jul 16, 2010

#1 Loser at SpaceChem
i recently replaced a loop-over-everything-in-a-sorted-list hot loop with a log-time thingy instead, which is about the only cs-ey thing I've done in years. Everything else has been "plug Component A into Component B" or "Make Component C by combining Components D, E, F..."

i could even have done this particular problem by plugging the Sorted List component into the Binary Search component, but it turns out that in this particular case just writing the specialized version was much more straightforward than introducing a bunch of wrappers and comparators and stuff to make it work with the generic pre-written component.

kitten emergency
Jan 13, 2008

get meow this wack-ass crystal prison
the most novel solution required in an actual Software Company is how to make new features work in the morass of undocumented features and libraries that were added seven years ago and are absolutely critical in their current implementation to the continued function of the product

also gently caress off shaggar. i'd teach a thousand college kids Python before I let one suffer through Java because let's face it, most of them aren't going to be serious programmers and I'd rather they learn some foundational stuff about computation and how programs work at a high level rather than have them spit out FuckoffFactoryFactories

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

FamDav posted:

being a teacher is hard and requires skills separate from what made you a good software developer

yeah, this sounds like a worse version of "eventually you become a manager".

I would like to teach, though

kitten emergency
Jan 13, 2008

get meow this wack-ass crystal prison

Subjunctive posted:

yeah, this sounds like a worse version of "eventually you become a manager".

I would like to teach, though

it's very rewarding in an entirely non-financial sense

oh no blimp issue
Feb 23, 2011

im going to graduate from uni with a cs degree in 2 months and i dont know anything

Bhodi
Dec 9, 2007

Oh, it's just a cat.
Pillbug
this thread is here for you :justpost:

Blinkz0rz
May 27, 2001

MY CONTEMPT FOR MY OWN EMPLOYEES IS ONLY MATCHED BY MY LOVE FOR TOM BRADY'S SWEATY MAGA BALLS
this thread has been a real esteem boost for me because i didn't realize how many bad programmers there were out there at my level

before this thread all though bad programmers were a junior thing and i was one gently caress up away from being discovered

Shaggar
Apr 26, 2006

uncurable mlady posted:

the most novel solution required in an actual Software Company is how to make new features work in the morass of undocumented features and libraries that were added seven years ago and are absolutely critical in their current implementation to the continued function of the product

also gently caress off shaggar. i'd teach a thousand college kids Python before I let one suffer through Java because let's face it, most of them aren't going to be serious programmers and I'd rather they learn some foundational stuff about computation and how programs work at a high level rather than have them spit out FuckoffFactoryFactories

yeah if you don't know java you shouldn't teach it nor should you teach python if you think its foundational

Hed
Mar 31, 2004

Fun Shoe
you often have to "suffer" (because it feels like that at the time) through C/Java before you can appreciate the abstraction and magic that Python/$plang is doing under the hood. I mean you can also furiously research poo poo when your in place sort of a hash array starts causing major memory paging and holy poo poo what is going on then you teach yourself what is going on under the hood. but a lot of people won't do that.

In reality all of the abstraction that happens between me pressing a key down and having it register in this text box is a loving miracle when you think about it and you don't have to worry about it until it becomes a problem. knowing what to simplify / abstract away until you have to worry about accounting for it is pretty much the definition of engineering. Try to do better at knowing the difference and you will go far

Notorious b.s.d.
Jan 25, 2003

by Reene

Dessert Rose posted:

the band-aid is going to have to come off eventually

i'm fine if it waits a few more years for my own personal benefit, obviously

wages have been in a slump since the first tech bubble. it's not a bandaid coming off, it's a chronic wasting disease.

i don't think we'll ever see developer salaries hit 2001 levels again

hobbesmaster
Jan 28, 2008

Shaggar posted:

yeah if you don't know java you shouldn't teach it nor should you teach python if you think its foundational

python isn't foundational, he's just saying he's teaching foundational stuff ie data structures and algorithms using Python

perfectly reasonable imho. more so than teaching that stuff in c++ like my school did (they now do it in, shockingly enough, Python)

Shaggar
Apr 26, 2006
java is probably the best language to use to teach data structures cause collections is easy to understand and extend/implement.

Valeyard
Mar 30, 2012


Grimey Drawer
our first year CS classes were taught using Python. in 2nd year they moved on to using Java which is when we actually had classes dedicated to algorithms and data structures. Too many people do the subject in 1st year with no intention of continuing so they can't/won't make it too hard and/or useful

kitten emergency
Jan 13, 2008

get meow this wack-ass crystal prison

hobbesmaster posted:

python isn't foundational, he's just saying he's teaching foundational stuff ie data structures and algorithms using Python

perfectly reasonable imho. more so than teaching that stuff in c++ like my school did (they now do it in, shockingly enough, Python)

yes. also things like functions, loops, etc. trying to teach that poo poo in Java or C++ is futile because people spend too much time trying to work through the language

once you understand foundational algorithms, data structures, and control/organization it's much easier to go into Java or c# or something because you have a much better idea about the questions you should be asking and if you want to go into C you have an appreciation for the easy way

Notorious b.s.d.
Jan 25, 2003

by Reene
c combines two really hard concepts at the same time. worse, in the c context, you have to understand both in detail to understand either:

1. pointers
2. malloc/free

python elides memory management entirely, and almost entirely erases pointers from day to day use. it's easy to see why programs don't use C as a first language anymore

Necc0
Jun 30, 2005

by exmarx
Broken Cake

Shaggar posted:

most new cs grads are utterly worthless unless they've done java or c# side projects and even then they're probably still useless. if they were taught a plang they'll have shitloads of bad habits you'll have to break them of before you can even start teaching them how to program

this is why we had a language theory class where we learned all the design decisions that go into making one so all the smart students should have been able to come to this conclusion on their own

Malcolm XML
Aug 8, 2009

I always knew it would end like this.

Subjunctive posted:

programming is a trade, best learned through experience and apprenticeship. computer science is a discipline of mathematics, relying on manipulation of higher-order abstractions and theoretical consequences. trying to teach them together is a pretty bad impedance mismatch in a lot of cases, and takes more care to reconcile than I've ever seen a school manage really well.

and software engineering is different yet

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

I think it's easier to teach pointers without malloc than with. for one thing, you can give distinct names to the pointer and its referent.

Garbd
Dec 29, 2008

segmentation fault

Dessert Rose
May 17, 2004

awoken in control of a lucid deep dream...

Notorious b.s.d. posted:

wages have been in a slump since the first tech bubble. it's not a bandaid coming off, it's a chronic wasting disease.

i don't think we'll ever see developer salaries hit 2001 levels again

yes, but before we unionize the salaries are going to have to drop way way more, then they'll go back up some

Adbot
ADBOT LOVES YOU

Dessert Rose
May 17, 2004

awoken in control of a lucid deep dream...
as long as we still routinely make six figures no one will think they belong in a union

  • Locked thread