First off, what is wrong with, "System is the system library, Out is a function in that library, and it prints to the console."??
Secondly, even in a garbage collected language, you can't just go around doing whatever you want, if you want to have an application that performs well. Algorithms are still quite important, and remain the primary form of optimization.
I know I will catch some flak for saying this, but non-garbage collected languages will soon be relegated to a COBOL-like existence. The fact is that languages like Java and the.Net languages are becoming "fast enough," now. Try out XNA sometime, if you don't believe me. So you're trying to convince me that I should like taking the garbage to the dump myself every day. What I want to do is work out a reasonable relationship with the garbage man.
based on Electrical Science, or Mechanical Science, are there?
So, why, then, are we forcing kids to take Computer Science, when what most of them really want is Software Engineering?
The only answer that I can come up with is that the people who come up with curricula are failed software engineers, and are trying to bring everyone else down with them. I interview kids with degrees that can't tell me what a heap is, or why I'd want to use a hashtable rather than a binary search tree, or vice-versa. Now, I know they had to learn that stuff, first year, but they haven't had to use any of it, since.
The ones who retained their first-year stuff often don't have the other engineering basics down, patterns like IOC, class factories, singletons, etc., are just vague ideas to them. Ask them to explain why you would use a class factory, instead of just calling new, sometime. That will bring an entertaining answer, 90% of the time.
Computer science doesn't concentrate on engineering skills, or it didn't when I was in school (UTexas in the 90's). I had to learn how to optimize various languages on my own. I had to learn various languages on my own. I have no need of calculus.
Now, I suppose there are jobs I could get, if I'd finished my degree, that require a lot of calculus. Physics engine designer, etc. There are plenty that don't, and don't require me to be able to design an operating system, either. Those things are niche specialties. What I know for sure is that 90% of the valuable information in my head was learned on my own time, or on the job, and that when I went to school, no classes covered much of this information.
Kids with degrees are notoriously goofy with multithreading (from our experience interviewing them), no longer a niche discipline, with multiple core machines commonplace today.
Ultimately, I find that a degree in CS is little to no positive indication of aptitude in Software Engineering. That's truly sad, and just plain dumb, besides. We're in trillions of dollars of debt. It's affecting our bottom line!
You're not going to land a senior level position making a ton of money without a college degree, but if you apply yourself, you'll find someone willing to hire you. You need to know a lot about what it is that you want to do, and you need to be willing to get paid dirt, and maybe get treated like it, for a while, too.
While you're at your dirt job, you'll meet people. Make sure to keep in touch with at least some of the good ones. They'll be future references for you, and are worth about 10x a college degree, give or take a few multiples.
Some places are snobby and will never hire you without a degree, period, end of story. I'd tend to avoid those kinds of places, anyway, though, because so many of the brightest engineers I know are degree-less. I've also interviewed candidates with degrees, for what was advertised as a senior-level software engineering role, who were unable to define basic computer science terms, such as binary tree, heap, hashing algorithm, class factory, etc.
I'm not the only person in the field who has made these observations, every time it's brought up, my colleagues agree with me. There's no substitute for a good interview process, and a degree doesn't even come close.
So I guess what I'm saying is that you need to study hard, be ready to answer tough questions, and persevere. You will find a job eventually. If you're smart, have initiative, and don't make mistakes, you'll rise fast.
Are you tied down to the city you're in? If not, consider moving to where the jobs are.
Seek and ye shall find. Those words are as true today as when they were first written. Good luck!
Nice. It's still a gamble, but it's one that could work. I'm a fan of trying to figure out how to get things done, instead of how things can fail.
Everything is a gamble. If you guys can do better than your old company, I say, incorporate, first, hire a lawyer, on staff, and then go for it. It's key to incorporate, that way only the business assets can be seized in a lawsuit. But, IANAL.
It isn't right to steal, it's true. However, our rights to the public commons have been stolen by Disney and Congress. Irving Berlin's estate still gets royalties for Blue Skies, for crissakes.
Therefore, perhaps a bit of civil disobedience is in order. It depends on your calculations.
Erm...
Where do I start?
First off, what is wrong with, "System is the system library, Out is a function in that library, and it prints to the console."??
Secondly, even in a garbage collected language, you can't just go around doing whatever you want, if you want to have an application that performs well. Algorithms are still quite important, and remain the primary form of optimization.
I know I will catch some flak for saying this, but non-garbage collected languages will soon be relegated to a COBOL-like existence. The fact is that languages like Java and the .Net languages are becoming "fast enough," now. Try out XNA sometime, if you don't believe me. So you're trying to convince me that I should like taking the garbage to the dump myself every day. What I want to do is work out a reasonable relationship with the garbage man.
based on Electrical Science, or Mechanical Science, are there?
So, why, then, are we forcing kids to take Computer Science, when what most of them really want is Software Engineering?
The only answer that I can come up with is that the people who come up with curricula are failed software engineers, and are trying to bring everyone else down with them. I interview kids with degrees that can't tell me what a heap is, or why I'd want to use a hashtable rather than a binary search tree, or vice-versa. Now, I know they had to learn that stuff, first year, but they haven't had to use any of it, since.
The ones who retained their first-year stuff often don't have the other engineering basics down, patterns like IOC, class factories, singletons, etc., are just vague ideas to them. Ask them to explain why you would use a class factory, instead of just calling new, sometime. That will bring an entertaining answer, 90% of the time.
Computer science doesn't concentrate on engineering skills, or it didn't when I was in school (UTexas in the 90's). I had to learn how to optimize various languages on my own. I had to learn various languages on my own. I have no need of calculus.
Now, I suppose there are jobs I could get, if I'd finished my degree, that require a lot of calculus. Physics engine designer, etc. There are plenty that don't, and don't require me to be able to design an operating system, either. Those things are niche specialties. What I know for sure is that 90% of the valuable information in my head was learned on my own time, or on the job, and that when I went to school, no classes covered much of this information.
Kids with degrees are notoriously goofy with multithreading (from our experience interviewing them), no longer a niche discipline, with multiple core machines commonplace today.
Ultimately, I find that a degree in CS is little to no positive indication of aptitude in Software Engineering. That's truly sad, and just plain dumb, besides. We're in trillions of dollars of debt. It's affecting our bottom line!
You're not going to land a senior level position making a ton of money without a college degree, but if you apply yourself, you'll find someone willing to hire you. You need to know a lot about what it is that you want to do, and you need to be willing to get paid dirt, and maybe get treated like it, for a while, too.
While you're at your dirt job, you'll meet people. Make sure to keep in touch with at least some of the good ones. They'll be future references for you, and are worth about 10x a college degree, give or take a few multiples.
Some places are snobby and will never hire you without a degree, period, end of story. I'd tend to avoid those kinds of places, anyway, though, because so many of the brightest engineers I know are degree-less. I've also interviewed candidates with degrees, for what was advertised as a senior-level software engineering role, who were unable to define basic computer science terms, such as binary tree, heap, hashing algorithm, class factory, etc.
I'm not the only person in the field who has made these observations, every time it's brought up, my colleagues agree with me. There's no substitute for a good interview process, and a degree doesn't even come close.
So I guess what I'm saying is that you need to study hard, be ready to answer tough questions, and persevere. You will find a job eventually. If you're smart, have initiative, and don't make mistakes, you'll rise fast.
Are you tied down to the city you're in? If not, consider moving to where the jobs are.
Seek and ye shall find. Those words are as true today as when they were first written. Good luck!
Nice. It's still a gamble, but it's one that could work. I'm a fan of trying to figure out how to get things done, instead of how things can fail.
Everything is a gamble. If you guys can do better than your old company, I say, incorporate, first, hire a lawyer, on staff, and then go for it. It's key to incorporate, that way only the business assets can be seized in a lawsuit. But, IANAL.
It isn't right to steal, it's true. However, our rights to the public commons have been stolen by Disney and Congress. Irving Berlin's estate still gets royalties for Blue Skies, for crissakes. Therefore, perhaps a bit of civil disobedience is in order. It depends on your calculations.