You *bought* your windmill-powered generator? Corporate whore. I built my own and it runs my OS which was built from the computer I built using parts I machined myself (including the machining tools I fabricated myself as well) from materials I mined myself with tools I constructed from scratch. I can't believe you buy shit.
Everything study I've read says obese and smoking people cost LESS in healthcare because of their early termination of life. The healthy people of the country who live forever and end up getting expensive diseases late in life are the real cost.
There's actually a few books that recently came out on that premise. America's second place is the first place loser mentality. It's interesting overall but very much a part of our culture. We love this all or nothing proposition we live in where the winner gets everything and everyone else is a loser.
It's the whole Vince Lombardi thing. We want to achieve greatness over and over I guess.
"More specifically, I would identify the audience being the poor developers that have slaved over JavaScript for endless hours only to find out that there are 'discrepancies' in how their JavaScript functions in one browser versus another (or even across versions of the same browser"
This is why jQuery exists. Honestly I can't imagine using TDD for any kind of Web project. It costs money to use it in the form of time and the margins just aren't there. The problem with a lot of software development methods is that that kind of process costs money and in the low risk fast changing Web world, those dollars are better spent on another developer, or more expensive developers, that can build shit right and get it through a QA session pretty quickly.
The truth is mainly non-Academic methods of build Webware (I made that up, no you can't use it) just aren't viable. Not because they aren't good ideas or work...but because they cost money up-front and so often there isn't another dev cycle on a project that isn't trivial or requires that great planning was made. Especially on the front end.
I sort of agree with what you saya lot. Agility is really the greatest asset a modern developer can have. I work for a company that does a lot of.NET/ASP/SQL development. But in the last year I also had to work on a lot of CSS/js as well as build a site in Drupal/PHP (I had a week to "learn Drupal now" lol) and then figure out a few different API's and a new mobile dev language system/etc. Not to mention do all types of smaller tasks that are sort of out of my domain.
Basically, I don't care what the guy "develops" in. I expect a good dev can pick up new things, apply solid fundamentals across the board and be more or less agile in their ability to learn new things. And it is fun learning new things, especially when being paid to do it and you can then fill your resume with some good projects utilizing different techs.
I think every CS curriculum covers that though. Operating systems courses (which cover interrupts, process scheduling), computer organization and then a systems course you have these things covered. We covered caching as well as the algorithms that caching techniques use in full and even had overlap.
CS degrees cover a lot of ground and I remember at least 3 courses that were core curriculum that covered all that you speak of.
What difference does that make at all? It's all still a Turing Machine obeying the Church-Turing Thesis.
Everything you describe would be covered in an Operating Systems and Computer Organization/Assembly course. I don't know what it has to do with anything discussed here, however.
How about instead of having fewer mathematically literate people we require that every degree has a level of math that should be considered competent. So no matter what you have to know some basic calculus? I hate hearing the shit "I won't ever use it, blah blah blah". 100% of your education isn't a jobs training program. Colleges should still be interested in outputting thinkers but then again that deal went out the window after they raised rates a billion fold, admitting it was a jobs program.
I agree with this 100% and always thought it but couldn't really put it together. That was everything that was hard about math to me. Nothing repetition and lots of thinking about it didn't fix.
Why on Earth should an undergrad degree be so specialized when the student body isn't sophisticated enough to even really do anything with those fields without understanding core CS?
You're basically saying students should be allowed to skip the premise and foundation of CS so they can work in other fields that are derivative of it?
Computer Science undergrads already do what you desire. Any decent CS program is going to have plenty of core classes that all grads must take covering theory and practical applications and then allow the student to fill the rest of their degree with plenty of electives where they can focus on software engineering, testing, security, networks, graphics, databases, etc or more theoretical applications a future grad student may enjoy such as type systems, compilers, natural language processing, etc or a combination of them.
Any student who takes a type systems course and a compilers course I'm going to wager is going to be a better practical programmer. Plus, learning things like programming MFC or.NET or learning jquery and CSS or SQL (no more than a week or 2 on any DB course) is something you shouldn't need a professor to learn and a student should use their college time learning things that interest them outside of class. My college didn't teach Objectice-C and the App Kit but I taught myself it while in school for fun. We didn't teach Python but I used it a lot in college. We didn't teach.Net or ASP.Net but my first job out of school was using those techs.
Yeah there aren't any in or around NYC. My city isn't known to have any qualified candidates in almost any field. It's only the most important city in the world at this time and age.
When hiring people we need to make a lot of assumptions. You're right, there are great and lousy candidates everywhere in terms of degree but with limited information about the candidate I'm going to err on the side of the person who has proven they can handle hard problems and learn complex systems. The MIS (or applied programming or w/e they call it at you community college - MIS is Management of Information Systems and what you describe) candidate is going to have to really nail the interviews if they even get in the door in the first place with us.
Computer Science degrees have courses in all of that too. And they also have testing courses, analysis courses etc. They just also have a lot of math and theoretical courses on top of it and those concepts get applied to those courses as well. I've never seen a CS program that didn't have or even require a Software Engineering, or similar, course. My university had CS courses in that, testing, security and plenty of applied topics. Many of them you could ignore if you wanted to instead take more theoretical courses.
The only thing I see lacking in my CS candidates is business awareness and business concepts. But because these kids are smart (the single most important trait) they tend to pick it up. And if they have business experience already its a non-issue. Not saying the MIS candidate can't or doesn't but it's far more rare in my experience. And they tend to not have the analytic brain we find so valuable.
But then, we have high expectations and performance matters being in NYC and all.
Computers aren't limited to the machines we're familiar with. Computation is a subset of mathematics and a computer is as simple as a set of rules that can be written on paper.
If anything the math weeds out the idiots. Or those that aren't willing to work their ass off at something hard. Math is hard. You need to do it over and over until you get it.
If you can't hack it then become an MIS. You aren't as employable and will make less, especially in the long term. Not every company will hire an MIS but everyone will hire a CS. There's still jobs for you. But please, don't touch anything serious because you've proven you don't have an analytic mind who enjoys solving hard problems and challenging themselves. That's what a CS to MIS quitter tells me.
Almost every MIS we've hired has turned out to be an idiot who you can't rely on to do something they haven't been explicitly trained for. I only hire CS degrees or Math degrees. I care that my workers are smart and can learn hard things quickly. I have to pay them more but they're worth it.
So I disagree with you. We don't need more applied programs because we have plenty. The fact that someone goes to school for 4 years to learn programming hilarious. Programming is supposed to be a 1 or 2 semester course and something you can pick up on your own because syntax and semantics aren't difficult. I want someone who can do some Lisp or ML since those are actually applied now in.Net even with Linq. I want people who understand what their algorithms are actually doing. I want people with analytic minds that can solve problems that are difficult and unfamiliar.
The big drawback many CS degrees have is their lack of general business skills. They don't always understand business concepts. But I'd rather have to teach that then have to explain things to a developer who doesn't know how to figure things out and do them right the first time.
Big and getting larger. Drupal is pretty awesome once you figure it out. I hated it at first and couldn't understand why it was loved by some but definitly understood why other loathed it. But then one day it all made sense and I couldn't believe the amount of power afforded the developer in making insanely cool Websites relatively fast and the few defects you're left with because a lot of the things that would cause problems are taken care of for you.
You *bought* your windmill-powered generator? Corporate whore. I built my own and it runs my OS which was built from the computer I built using parts I machined myself (including the machining tools I fabricated myself as well) from materials I mined myself with tools I constructed from scratch. I can't believe you buy shit.
Everything study I've read says obese and smoking people cost LESS in healthcare because of their early termination of life. The healthy people of the country who live forever and end up getting expensive diseases late in life are the real cost.
Tax healthy people!
Scandalous book is scandalous! (and that actually makes sense finally!)
You don't have a right to possess the hazardous materials they require though.
So it's like making any kind of good armor in World of Warcraft, essentially.
There's actually a few books that recently came out on that premise. America's second place is the first place loser mentality. It's interesting overall but very much a part of our culture. We love this all or nothing proposition we live in where the winner gets everything and everyone else is a loser.
It's the whole Vince Lombardi thing. We want to achieve greatness over and over I guess.
"More specifically, I would identify the audience being the poor developers that have slaved over JavaScript for endless hours only to find out that there are 'discrepancies' in how their JavaScript functions in one browser versus another (or even across versions of the same browser"
This is why jQuery exists. Honestly I can't imagine using TDD for any kind of Web project. It costs money to use it in the form of time and the margins just aren't there. The problem with a lot of software development methods is that that kind of process costs money and in the low risk fast changing Web world, those dollars are better spent on another developer, or more expensive developers, that can build shit right and get it through a QA session pretty quickly.
The truth is mainly non-Academic methods of build Webware (I made that up, no you can't use it) just aren't viable. Not because they aren't good ideas or work...but because they cost money up-front and so often there isn't another dev cycle on a project that isn't trivial or requires that great planning was made. Especially on the front end.
Patterns are more important than practices.
I sort of agree with what you saya lot. Agility is really the greatest asset a modern developer can have. I work for a company that does a lot of .NET/ASP/SQL development. But in the last year I also had to work on a lot of CSS/js as well as build a site in Drupal/PHP (I had a week to "learn Drupal now" lol) and then figure out a few different API's and a new mobile dev language system/etc. Not to mention do all types of smaller tasks that are sort of out of my domain.
Basically, I don't care what the guy "develops" in. I expect a good dev can pick up new things, apply solid fundamentals across the board and be more or less agile in their ability to learn new things. And it is fun learning new things, especially when being paid to do it and you can then fill your resume with some good projects utilizing different techs.
A law degree is possibly the worst choice you could have made the last 3 years.
Where politicians started dictating what is and isn't legit science and ultimately killing scientists that didn't agree?
I'm gonna chug a Mountain Dew at that exact moment.
Only 4 more years until 3/14/15. That's the big one and I expect math departments the world over to go overboard on the candy and soda that day.
I think every CS curriculum covers that though. Operating systems courses (which cover interrupts, process scheduling), computer organization and then a systems course you have these things covered. We covered caching as well as the algorithms that caching techniques use in full and even had overlap.
CS degrees cover a lot of ground and I remember at least 3 courses that were core curriculum that covered all that you speak of.
What difference does that make at all? It's all still a Turing Machine obeying the Church-Turing Thesis.
Everything you describe would be covered in an Operating Systems and Computer Organization/Assembly course. I don't know what it has to do with anything discussed here, however.
How about instead of having fewer mathematically literate people we require that every degree has a level of math that should be considered competent. So no matter what you have to know some basic calculus? I hate hearing the shit "I won't ever use it, blah blah blah". 100% of your education isn't a jobs training program. Colleges should still be interested in outputting thinkers but then again that deal went out the window after they raised rates a billion fold, admitting it was a jobs program.
I agree with this 100% and always thought it but couldn't really put it together. That was everything that was hard about math to me. Nothing repetition and lots of thinking about it didn't fix.
It's called a masters degree.
Why on Earth should an undergrad degree be so specialized when the student body isn't sophisticated enough to even really do anything with those fields without understanding core CS?
You're basically saying students should be allowed to skip the premise and foundation of CS so they can work in other fields that are derivative of it?
Computer Science undergrads already do what you desire. Any decent CS program is going to have plenty of core classes that all grads must take covering theory and practical applications and then allow the student to fill the rest of their degree with plenty of electives where they can focus on software engineering, testing, security, networks, graphics, databases, etc or more theoretical applications a future grad student may enjoy such as type systems, compilers, natural language processing, etc or a combination of them.
Any student who takes a type systems course and a compilers course I'm going to wager is going to be a better practical programmer. Plus, learning things like programming MFC or .NET or learning jquery and CSS or SQL (no more than a week or 2 on any DB course) is something you shouldn't need a professor to learn and a student should use their college time learning things that interest them outside of class. My college didn't teach Objectice-C and the App Kit but I taught myself it while in school for fun. We didn't teach Python but I used it a lot in college. We didn't teach .Net or ASP.Net but my first job out of school was using those techs.
I don't see what the problem is.
Yeah there aren't any in or around NYC. My city isn't known to have any qualified candidates in almost any field. It's only the most important city in the world at this time and age.
When hiring people we need to make a lot of assumptions. You're right, there are great and lousy candidates everywhere in terms of degree but with limited information about the candidate I'm going to err on the side of the person who has proven they can handle hard problems and learn complex systems. The MIS (or applied programming or w/e they call it at you community college - MIS is Management of Information Systems and what you describe) candidate is going to have to really nail the interviews if they even get in the door in the first place with us.
Computer Science degrees have courses in all of that too. And they also have testing courses, analysis courses etc. They just also have a lot of math and theoretical courses on top of it and those concepts get applied to those courses as well. I've never seen a CS program that didn't have or even require a Software Engineering, or similar, course. My university had CS courses in that, testing, security and plenty of applied topics. Many of them you could ignore if you wanted to instead take more theoretical courses.
The only thing I see lacking in my CS candidates is business awareness and business concepts. But because these kids are smart (the single most important trait) they tend to pick it up. And if they have business experience already its a non-issue. Not saying the MIS candidate can't or doesn't but it's far more rare in my experience. And they tend to not have the analytic brain we find so valuable.
But then, we have high expectations and performance matters being in NYC and all.
This really couldn't be put better and should close the book on the discussion as a whole.
I agree, high level concepts are what's important and high level concepts rely on math.
Computers aren't limited to the machines we're familiar with. Computation is a subset of mathematics and a computer is as simple as a set of rules that can be written on paper.
If anything the math weeds out the idiots. Or those that aren't willing to work their ass off at something hard. Math is hard. You need to do it over and over until you get it.
If you can't hack it then become an MIS. You aren't as employable and will make less, especially in the long term. Not every company will hire an MIS but everyone will hire a CS. There's still jobs for you. But please, don't touch anything serious because you've proven you don't have an analytic mind who enjoys solving hard problems and challenging themselves. That's what a CS to MIS quitter tells me.
Almost every MIS we've hired has turned out to be an idiot who you can't rely on to do something they haven't been explicitly trained for. I only hire CS degrees or Math degrees. I care that my workers are smart and can learn hard things quickly. I have to pay them more but they're worth it.
So I disagree with you. We don't need more applied programs because we have plenty. The fact that someone goes to school for 4 years to learn programming hilarious. Programming is supposed to be a 1 or 2 semester course and something you can pick up on your own because syntax and semantics aren't difficult. I want someone who can do some Lisp or ML since those are actually applied now in .Net even with Linq. I want people who understand what their algorithms are actually doing. I want people with analytic minds that can solve problems that are difficult and unfamiliar.
The big drawback many CS degrees have is their lack of general business skills. They don't always understand business concepts. But I'd rather have to teach that then have to explain things to a developer who doesn't know how to figure things out and do them right the first time.
Yeah why would they want to cover a framework that is widely used, insanely great and of interest to a lot of people?
Big and getting larger. Drupal is pretty awesome once you figure it out. I hated it at first and couldn't understand why it was loved by some but definitly understood why other loathed it. But then one day it all made sense and I couldn't believe the amount of power afforded the developer in making insanely cool Websites relatively fast and the few defects you're left with because a lot of the things that would cause problems are taken care of for you.
Except for you end up spending it all on blow.