I agree with most of your post, but since I'm a Java guy, not a Python guy, I have no idea whether your claim about increased productivity is true. Having said that, I'll say this:
I buy the possibility that you can do certain things more easily with Python. I'm not writing it off. However, I'd have to see it to believe it.
As far as Python being "syntactically cleaner" I've got to disagree with you there. I really dig them curly brackets. I think they make it really easy to completely and definitively lay out your code. I'm really, really suspicious of code that uses indent positions to lay out blocks. I'd hate to have to scroll up and down to see where the cursor lines up, to trace my way around a long block. With Java, all I have to do is count braces, as if I was storing them in a stack. You know, "Push, push, push, pop" and so forth...
I basically find the more anal syntax of C/C++/Java more determinate.
Maybe it's a personal phobia, something like agoraphobia, but writing code without any clear boundaries for code blocks would totally freak me out. I'd feel like I was naked, wandering around a hyper-conservative church revival...
I wasn't aware of this because I'm Java, not Python, and it tends to reinforce my pro-Java leaning... This is a shame, if true -- you'd think they'd have worked it out by now. Ah, well...
You have a valid point, but at the same time, most currently popular languages are equipped fairly equally (hence their popularity). It's a sort of darwinism, I think. Weaker languages die off, leaving the strong.
I'm not saying that they're equals because they're Turing-complete; I'm saying they're equals because they've survived in the same environment long enough to evolve the same capabilities.
Yeah, some of those are pretty good. I like how they break things out into a lesson plan you can zip through in a week or so. And, O'Reilly does make some pretty good books, although *some* of their books have been gaining weight lately, and some of their Java stuff is getting so unwieldy it's turning into a bookSHELF rather than a book. But on the whole, I think they're pretty cool. I've got some of their stuff around here somewhere...
And, with K&R, you're getting it right from the source, so that's cool too. 272 pages isn't bad; that's a nice size, comfortable to keep around while you code.
Ah, but I wasn't talking about academic or scientific comp sci. I was talking about the form comp sci takes when you enter the corporate world. REAL, ACTUAL comp sci isn't practiced very often (although almost no one will ever admit this).
I don't know about that; there are a lot of good C++ sites. What does a book really buy you that a good web search won't? If you want a structured approach, you can always take a course, but I dunno; learning it yourself seems a lot faster.
The same thing happened to me. I ended up with like, a hundred pounds of books clogging my shelves, and the pressure to read them to feel like less of a phony was worse than not having them. So I chucked them, and focused on the online docs, and I've felt pretty good ever since.
No offense meant, I just picked that example because the "fat books" types generally count it as a must-have. Many people seem to use it more for its symbolic proof of their brilliance than for its content.
I know religious wars are traditional here on Slashdot, but saying that Python is better than Java, or that Java is better than Python, well, it's like saying Audis are better than BMW's. It's a matter of personal taste, and no more than that.
Name me ONE TASK that Python (or Java) can do that the other can't. There isn't one. Tell me which one is faster! On modern equipment, you won't notice any difference for most tasks. You'd have to find something massively computationally intensive to get any sort of reasonable comparison, and even then it would be tough.
In the end, it comes down to this: what is your personal coding style? What sort of syntax are you most comfortable with? If you come from a scripting background, you'll probably like Python better. If you're coming from a C background and love those curly brackets and semicolons, you'll dig Java (that's my personal preference, by the way, I'm uncomfortable with using indentation to manage blocks, for example). Maybe something in one library or the other is attractive to you. Maybe you just want to use Open Source.
It's all just a matter of taste.
Having said that, the original article was dead wrong about one other thing. The idea that Python attracts "smarter coders" because they're doing it for the love of it is misguided. The reason is, there are smart coders writing for the love of both languages; Java only gets more idiots because there's money in it. So the author SHOULD have said "If you use Python, you'll get far fewer applicants, so it'll be easier to filter out the hacks".
Don't rely on Java books when you're judging it. Most (almost all) Java books are completely worthless. Before you think I'm a nut, let me explain.
There's a mindset in corporate/professional comp sci I like to call "fat book syndrome". It works like this: a developer, usually a consultant, wants to be successful. So he spends time in Borders on a regular basis, buying new books with which he can expand his skills. Does he look at the thin, little books? No. He looks at the fat, weighty books. He reasons, "if I read that whole, big, fat book, I'll know everything and I'll be an alpha geek". Hence the increasing weight/volume of textbooks these days -- authors want their book to be the big, fat book the ambitious developer selects.
Now, you've got two related effects here.
First, the developer is adopting protective camoflage in the office, by building up a huge stockpile of big, fat books to match his fellow developer's stockpile of big, fat books. This is very similar to the United States and Russia building up their nuke stockpiles. Periodically, there's a crisis: "OH MY GOD" our hero will cry, "Dave just bought Design Patterns!" and he'll go to Borders after work and buy the latest boat anchor from the Gang of Four.
The matching effect on the Author's side is, authors want to sell books. Developers are buying fatter and fatter books, so the authors want their latest books to be even fatter than the last set. So, the books are growing, and it's mostly protective camoflage just like the fat book collection on the developer's bookcase. There's a sort of symbiosis going on, if you think about it. Everyone's yelling "FATTER! FATTER!" so that soon, you'll need luggage to bring your newest books to work.
Having said all that, what makes all this extra funny is, to learn any language, all you really need is a little review book (to master the syntax) and AN INTERNET CONNECTION. Wanna learn Java? Go to Barnes and Noble (those bookstores again) and get a lovely little book called "Java: Practical Guide for Programmers" by Zbigniew Sikora (it's 171 pages long, you can finish it in a couple of nights). Then, go online and read the Java tutorial, and any FAQs you can find on the various tools. Then start doing a project and consult the API reference.
There's no need for all those big, dumb books. Most of them are crammed with nonsense filler, and the samples are only as good as the author is skilled as a programmer.
Anyway, sorry to ramble for so long, but don't sell Java short just because all the books suck. The language itself is pretty nice. Get a SMALL book to get up to speed, dig around on the internet, and you'll find things a lot more friendly.
I agree. I'm a software developer, and as a result I spend my entire day typing. A touch-typing course I took in my senior year of high school has proven to be one of the best things that school ever did for me. I can do 80 words per minute without trying hard, and I'm one of the fastest coders in my department because I can prototype stuff on pen and paper, then type it into the editor in no time at all. It really helps.
With an attitude like that, it's no wonder your job was outsourced. I love all of these 'It's management sticking it up our asses!' idiots. Try actually running a company once. Try keeping the company afloat while turning a profit so you can keep your non-performing employees employed. Get over yourself -- business is about profit. Learn to deal with it or stand in an unemployment line.
HA! Boy, that's a laugh. Screw you, suit. First of all, I haven't been outsourced, I work for the government -- I left all you corporate assholes behind a long, long time ago. Second, don't cry to ME about your poor little suit problems. Fuck you. I wonder how many of your exploited employees would agree with your pathetic little rant. I bet they call you dirty names behind your back, you freak. I bet your secretary spits in your coffee.
By the way: your tax dollars pay my salary. Isn't the irony delicious? It's the "revenge of the nerds" -- you assholes who destroyed the market for pros like me end up paying our salaries ANYWAY! God, that's rich. Hey, this coming year, when the Democrats give your republican heroes the knockout punch they deserve, we're going to up your taxes.
Hear me, corporate stiff? WE'RE COMING FOR YOUR LOOPHOLES! You're gonna PAY, boy. Right through the nose. And people like me are going to get RAISES.
On the whole, this trend is a GOOD thing. Consider:
First of all, the ultimate result of this process is going to be a device about the size of a current PDA that is simultaneously a cell phone, music player, camera, and hyper-powerful PDA. It'll do just about everything and it'll run on whiskey (remember those fuel cells?). That's almost as good as magic, folks. And I can thank my phone company for being ruthless and forcing the cell phone suppliers to drop their skirts and spread their legs. It's about TIME the phone company did something for me.;)
Second, the people who are taking it in the shorts are a bunch of suits who don't care one little iota about me. You can't claim this is going to hurt my fellow programmers; the suits already outsourced us. You can't claim it's going to hurt secretaries or clerks, because they'll find plenty of work elsewhere. The ONLY people getting hurt here are the suits -- the managers in charge who can't make their companies profitable under the phone companies' terms. So who cares if they stay rich? Who cares if their profits drop? Who cares if they live or die?
All this means to me is, a bunch of rich, arrogant SOBs who never did anything for me are going to take it right in the shorts while I watch and revel in the action. And, I get a new, fancy cell phone in a couple of years that does everything but get naked for me.
Outsourcing is a pretty rotten practice, sure. A company that got started in the U.S. and depends on U.S. consumers buying their stuff turns around and fires the U.S. developers who made it successful in the first place, replacing them with the cheapest labor the company can find. Happens all the time these days, right? And it's pretty shitty.
But, then, everything corporate America does is shitty. They make you sign nondisclosures, noncompetes, IP agreements... They make you sign an agreement that your job is "at will" meaning they can fire you at a moments notice (but interestingly, they expect two to four weeks notice if you're going to leave as a sort of unwritten rule, with a good recommendation dependent on it, right?). They define you as "exempt", so you can't ask for overtime even if they work you sixty to eighty hours a week. They take ownership of everything you produce and never give you any part of the profit they make from YOUR work (yeah, yeah, "stock options" blah blah, but most of those are underwater so who cares?).
Bottom line: if corporate America wants to outsource, fuck 'em. Stay out of corporate America, and get a REAL comp sci job. Go back to a university setting (comp sci is the new liberal art anyway, because of all this outsourcing). Work in civil service. work for a defense contractor. Do something non-corporate.
The working climate is MUCH better, anyway. You'll be happier. Honest.
BTW: Protectionism can be split into two cases, public and private sector. Private sector protectionism probably won't work because corporations are shifty enough to move their headquarters to a "friendlier" country, like Bermuda. They're already doing that for tax purposes, anyway.
But PUBLIC SECTOR protectionism is a DAMN good idea. State, local, and federal jobs are paid in our tax dollars, and we have every right to demand that they get paid to an American. Furthermore, it's more secure if government related code is done by an American citizen (or green card holder) who is local, licensed, bonded, and insured. Where I work, everyone goes through a whole series of security checks; we KNOW who our people are. Safer, you know?
And, it would be a DAMN good idea to legislate similar requirements on certain private organizations like BANKS and medical businesses, that deal with private or sensitive information. But as I said, I don't know if that would work in practice because of the Bermuda question...
Yes, but they work ON supercomputers, they don't build or design them... Do they?
I was talking about a center whose purpose was the creation of ever-more-powerful supercomputers. The rental section would just be there to make use of the tech, and put it through its paces.
Let's say you provide people with source code, under one of the mainstream open source licenses. You can charge for open source, everyone says so. So you charge, say, fifty bucks for a well done product. So far so good, right?
Six months later, some creep decides you're charging too much, takes moral offense at your "greed" and starts a BitTorrent of your whole software distribution, available for free. Bling. Out of business. So much for that. And almost every open source license explicitly permits this. In fact, I think that to be OSI certified open source, you HAVE to permit unlimited distribution.
Another thing is, spend any time at all on Slashdot and you're going to run into some pretty rabid "information must be free" types. Some of these guys take offense at anyone trying to sell ANYTHING. Even if you don't put out source, sometimes they'll reverse-engineer your stuff and code up a GPL version just for spite. How dare you SELL software??? They'll teach YOU a thing or two... Again, bling, out of business.
I think open source (and more to the point, "free" software) is a reaction to hypergreed on the part of software companies. People are tired of being slammed with vicious, anal-retentive EULAS that don't let them do what they want with the software they paid good money for. I understand where they're coming from, and I agree with Stallman's views on the value of freedom, but I think there's got to be some kind of middle ground.
So, OK, Slashdot, tell me what you think:
What if there was a license that allowed you to:
1. Use the software any way you want, including rewriting it with the provided source code, provided you didn't backstab the author by going into business as a competitor using his work;
2. Copy the software for your individual friends and family, provided you physically handed or mailed them the copy on CD or disk (i.e. you didn't start up a website or other major distribution channel, thus backstabbing the author again);
3. Write your own patches, plugins, and extensions, and distribute them for free or fee, provided you didn't distribute the software itself with them (again, no backstabbing!);
4. Use the software at home or at work, EXCEPT if you use it at work, you can't distribute it there (company employees can buy their own licenses).
What do you think of a license like that? Workable? I've been thinking about it lately...
Ok, on the one hand, "real" supercomputers cost a bunch and go obsolete on you periodically. So you could spend tens to hundreds of millions of dollars, build out a location to receive the supercomputer, hire a staff and security to babysit and control it, hire company consultants to come in and set it up, and then repeat the whole thing in a few years when it becomes obsolete. Or you could use a cluster, which you can upgrade gradually over time with additional units (or faster units), assemble and staff with "mere mortal" graduate students (in CS), and stash pretty much anywhere you've got a spare storeroom (I'm exaggerating, but only slightly). "They" say there are things you can't do with a cluster, but every problem has a solution (provided you're not driven by the profit motive, ha ha).
On the other hand, what if they're right and there are some tasks that can't be easily done by a cluster? Then it might make sense to subsidize at least one or two supercomputer companies to maintain that skill set.
Here's a thought: Let's say it's determined that most tasks work just fine with clusters. Supercomputer companies find that there isn't enough business to support them anymore. They start to fade.
What would stop the Federal government from coming in and hiring their staffs to work in a nationally-owned and operated supercomputer center? Pick a location, set up a prototyping factory, and build a research center whose sole purpose is putting out the fastest computer ever made. Sort of a comp-sci NASA. They could aim at creating a new system every five or ten years. Each current system is maintained and run by one team while another team works on the next one, and the feds lease the systems out to researchers able to pony up a few bucks to help support the setup. Old supercomputers put out to pasture can be rented out for more mundane tasks.
Isn't that kinda interesting? It gainfully employs all the supercomputer related computer scientists so they don't move to some other country out of frustration, it preserves their knowledge for our future use, and it lets everyone get back to working with their clusters, except in those cases where you don't want to use a cluster.
The thing is, there's nothing WRONG with DeVry being a trade school targeting electronics and computer tech, as long as everyone involved understands that that is what is going on. The thing is, come out and say it. Say "this is a computer tech trade school" and be done with it; then everyone can say "Ok, then" and people who want that can get it.
I'm not trying to take a dump on DeVry here. I have a cousin who went to DeVry while I was in University, and he seemed to like it. But I don't think, for instance, anyone is going to come out of DeVry prepared for graduate study. I doubt anyone is going to come out of DeVry and develop a new encryption algorithm, or build their own graphics engine. The training isn't MEANT to enable that sort of activity, is it?
Then there is the subject of research. University professors are researchers. DeVry professors are professional programmers. There's a huge difference, isn't there? Similar to the difference between a physicist and a mechanical engineer, I think.
There are things Universities can do, and things trade schools can do, and people should try and understand which are which.
If you want to max out an iBook, expect to spend about 1,800.00 or so; I bought a 12" 900Mhz iBook, with 640MB of Ram and a 60GB hard disk plus some extras (extra battery, etc) for about that a couple of years ago. It runs extremely well, and I've had a great time using it ever since.
Ok, I know who you are, because I've seen your weird acronyms before. So for crying out loud, would you please expand them out so I know what you said? I've been wondering for MONTHS what the fuck this means.
I agree with most of your post, but since I'm a Java guy, not a Python guy, I have no idea whether your claim about increased productivity is true. Having said that, I'll say this:
I buy the possibility that you can do certain things more easily with Python. I'm not writing it off. However, I'd have to see it to believe it.
As far as Python being "syntactically cleaner" I've got to disagree with you there. I really dig them curly brackets. I think they make it really easy to completely and definitively lay out your code. I'm really, really suspicious of code that uses indent positions to lay out blocks. I'd hate to have to scroll up and down to see where the cursor lines up, to trace my way around a long block. With Java, all I have to do is count braces, as if I was storing them in a stack. You know, "Push, push, push, pop" and so forth...
I basically find the more anal syntax of C/C++/Java more determinate.
Maybe it's a personal phobia, something like agoraphobia, but writing code without any clear boundaries for code blocks would totally freak me out. I'd feel like I was naked, wandering around a hyper-conservative church revival...
I wasn't aware of this because I'm Java, not Python, and it tends to reinforce my pro-Java leaning... This is a shame, if true -- you'd think they'd have worked it out by now. Ah, well...
You have a valid point, but at the same time, most currently popular languages are equipped fairly equally (hence their popularity). It's a sort of darwinism, I think. Weaker languages die off, leaving the strong.
I'm not saying that they're equals because they're Turing-complete; I'm saying they're equals because they've survived in the same environment long enough to evolve the same capabilities.
Yes, but older beemers have those cool red instrumentation lights, kinda like being in a U-Boat (hmm...)
Yeah, some of those are pretty good. I like how they break things out into a lesson plan you can zip through in a week or so. And, O'Reilly does make some pretty good books, although *some* of their books have been gaining weight lately, and some of their Java stuff is getting so unwieldy it's turning into a bookSHELF rather than a book. But on the whole, I think they're pretty cool. I've got some of their stuff around here somewhere...
And, with K&R, you're getting it right from the source, so that's cool too. 272 pages isn't bad; that's a nice size, comfortable to keep around while you code.
Ah, but I wasn't talking about academic or scientific comp sci. I was talking about the form comp sci takes when you enter the corporate world. REAL, ACTUAL comp sci isn't practiced very often (although almost no one will ever admit this).
I don't know about that; there are a lot of good C++ sites. What does a book really buy you that a good web search won't? If you want a structured approach, you can always take a course, but I dunno; learning it yourself seems a lot faster.
The same thing happened to me. I ended up with like, a hundred pounds of books clogging my shelves, and the pressure to read them to feel like less of a phony was worse than not having them. So I chucked them, and focused on the online docs, and I've felt pretty good ever since.
No offense meant, I just picked that example because the "fat books" types generally count it as a must-have. Many people seem to use it more for its symbolic proof of their brilliance than for its content.
I know religious wars are traditional here on Slashdot, but saying that Python is better than Java, or that Java is better than Python, well, it's like saying Audis are better than BMW's. It's a matter of personal taste, and no more than that.
Name me ONE TASK that Python (or Java) can do that the other can't. There isn't one. Tell me which one is faster! On modern equipment, you won't notice any difference for most tasks. You'd have to find something massively computationally intensive to get any sort of reasonable comparison, and even then it would be tough.
In the end, it comes down to this: what is your personal coding style? What sort of syntax are you most comfortable with? If you come from a scripting background, you'll probably like Python better. If you're coming from a C background and love those curly brackets and semicolons, you'll dig Java (that's my personal preference, by the way, I'm uncomfortable with using indentation to manage blocks, for example). Maybe something in one library or the other is attractive to you. Maybe you just want to use Open Source.
It's all just a matter of taste.
Having said that, the original article was dead wrong about one other thing. The idea that Python attracts "smarter coders" because they're doing it for the love of it is misguided. The reason is, there are smart coders writing for the love of both languages; Java only gets more idiots because there's money in it. So the author SHOULD have said "If you use Python, you'll get far fewer applicants, so it'll be easier to filter out the hacks".
Don't rely on Java books when you're judging it. Most (almost all) Java books are completely worthless. Before you think I'm a nut, let me explain.
There's a mindset in corporate/professional comp sci I like to call "fat book syndrome". It works like this: a developer, usually a consultant, wants to be successful. So he spends time in Borders on a regular basis, buying new books with which he can expand his skills. Does he look at the thin, little books? No. He looks at the fat, weighty books. He reasons, "if I read that whole, big, fat book, I'll know everything and I'll be an alpha geek". Hence the increasing weight/volume of textbooks these days -- authors want their book to be the big, fat book the ambitious developer selects.
Now, you've got two related effects here.
First, the developer is adopting protective camoflage in the office, by building up a huge stockpile of big, fat books to match his fellow developer's stockpile of big, fat books. This is very similar to the United States and Russia building up their nuke stockpiles. Periodically, there's a crisis: "OH MY GOD" our hero will cry, "Dave just bought Design Patterns!" and he'll go to Borders after work and buy the latest boat anchor from the Gang of Four.
The matching effect on the Author's side is, authors want to sell books. Developers are buying fatter and fatter books, so the authors want their latest books to be even fatter than the last set. So, the books are growing, and it's mostly protective camoflage just like the fat book collection on the developer's bookcase. There's a sort of symbiosis going on, if you think about it. Everyone's yelling "FATTER! FATTER!" so that soon, you'll need luggage to bring your newest books to work.
Having said all that, what makes all this extra funny is, to learn any language, all you really need is a little review book (to master the syntax) and AN INTERNET CONNECTION. Wanna learn Java? Go to Barnes and Noble (those bookstores again) and get a lovely little book called "Java: Practical Guide for Programmers" by Zbigniew Sikora (it's 171 pages long, you can finish it in a couple of nights). Then, go online and read the Java tutorial, and any FAQs you can find on the various tools. Then start doing a project and consult the API reference.
There's no need for all those big, dumb books. Most of them are crammed with nonsense filler, and the samples are only as good as the author is skilled as a programmer.
Anyway, sorry to ramble for so long, but don't sell Java short just because all the books suck. The language itself is pretty nice. Get a SMALL book to get up to speed, dig around on the internet, and you'll find things a lot more friendly.
I agree. I'm a software developer, and as a result I spend my entire day typing. A touch-typing course I took in my senior year of high school has proven to be one of the best things that school ever did for me. I can do 80 words per minute without trying hard, and I'm one of the fastest coders in my department because I can prototype stuff on pen and paper, then type it into the editor in no time at all. It really helps.
With an attitude like that, it's no wonder your job was outsourced. I love all of these 'It's management sticking it up our asses!' idiots. Try actually running a company once. Try keeping the company afloat while turning a profit so you can keep your non-performing employees employed. Get over yourself -- business is about profit. Learn to deal with it or stand in an unemployment line.
HA! Boy, that's a laugh. Screw you, suit. First of all, I haven't been outsourced, I work for the government -- I left all you corporate assholes behind a long, long time ago. Second, don't cry to ME about your poor little suit problems. Fuck you. I wonder how many of your exploited employees would agree with your pathetic little rant. I bet they call you dirty names behind your back, you freak. I bet your secretary spits in your coffee.
By the way: your tax dollars pay my salary. Isn't the irony delicious? It's the "revenge of the nerds" -- you assholes who destroyed the market for pros like me end up paying our salaries ANYWAY! God, that's rich. Hey, this coming year, when the Democrats give your republican heroes the knockout punch they deserve, we're going to up your taxes.
Hear me, corporate stiff? WE'RE COMING FOR YOUR LOOPHOLES! You're gonna PAY, boy. Right through the nose. And people like me are going to get RAISES.
Choke on it, Choda boy...
On the whole, this trend is a GOOD thing. Consider:
;)
First of all, the ultimate result of this process is going to be a device about the size of a current PDA that is simultaneously a cell phone, music player, camera, and hyper-powerful PDA. It'll do just about everything and it'll run on whiskey (remember those fuel cells?). That's almost as good as magic, folks. And I can thank my phone company for being ruthless and forcing the cell phone suppliers to drop their skirts and spread their legs. It's about TIME the phone company did something for me.
Second, the people who are taking it in the shorts are a bunch of suits who don't care one little iota about me. You can't claim this is going to hurt my fellow programmers; the suits already outsourced us. You can't claim it's going to hurt secretaries or clerks, because they'll find plenty of work elsewhere. The ONLY people getting hurt here are the suits -- the managers in charge who can't make their companies profitable under the phone companies' terms. So who cares if they stay rich? Who cares if their profits drop? Who cares if they live or die?
All this means to me is, a bunch of rich, arrogant SOBs who never did anything for me are going to take it right in the shorts while I watch and revel in the action. And, I get a new, fancy cell phone in a couple of years that does everything but get naked for me.
Sounds like a winner! Hoist a pint, boys!
I think it's more complicated than this.
Outsourcing is a pretty rotten practice, sure. A company that got started in the U.S. and depends on U.S. consumers buying their stuff turns around and fires the U.S. developers who made it successful in the first place, replacing them with the cheapest labor the company can find. Happens all the time these days, right? And it's pretty shitty.
But, then, everything corporate America does is shitty. They make you sign nondisclosures, noncompetes, IP agreements... They make you sign an agreement that your job is "at will" meaning they can fire you at a moments notice (but interestingly, they expect two to four weeks notice if you're going to leave as a sort of unwritten rule, with a good recommendation dependent on it, right?). They define you as "exempt", so you can't ask for overtime even if they work you sixty to eighty hours a week. They take ownership of everything you produce and never give you any part of the profit they make from YOUR work (yeah, yeah, "stock options" blah blah, but most of those are underwater so who cares?).
Bottom line: if corporate America wants to outsource, fuck 'em. Stay out of corporate America, and get a REAL comp sci job. Go back to a university setting (comp sci is the new liberal art anyway, because of all this outsourcing). Work in civil service. work for a defense contractor. Do something non-corporate.
The working climate is MUCH better, anyway. You'll be happier. Honest.
BTW: Protectionism can be split into two cases, public and private sector. Private sector protectionism probably won't work because corporations are shifty enough to move their headquarters to a "friendlier" country, like Bermuda. They're already doing that for tax purposes, anyway.
But PUBLIC SECTOR protectionism is a DAMN good idea. State, local, and federal jobs are paid in our tax dollars, and we have every right to demand that they get paid to an American. Furthermore, it's more secure if government related code is done by an American citizen (or green card holder) who is local, licensed, bonded, and insured. Where I work, everyone goes through a whole series of security checks; we KNOW who our people are. Safer, you know?
And, it would be a DAMN good idea to legislate similar requirements on certain private organizations like BANKS and medical businesses, that deal with private or sensitive information. But as I said, I don't know if that would work in practice because of the Bermuda question...
Just a few thoughts...
Yes, but they work ON supercomputers, they don't build or design them... Do they?
I was talking about a center whose purpose was the creation of ever-more-powerful supercomputers. The rental section would just be there to make use of the tech, and put it through its paces.
I've been thinking about this problem myself.
Let's say you provide people with source code, under one of the mainstream open source licenses. You can charge for open source, everyone says so. So you charge, say, fifty bucks for a well done product. So far so good, right?
Six months later, some creep decides you're charging too much, takes moral offense at your "greed" and starts a BitTorrent of your whole software distribution, available for free. Bling. Out of business. So much for that. And almost every open source license explicitly permits this. In fact, I think that to be OSI certified open source, you HAVE to permit unlimited distribution.
Another thing is, spend any time at all on Slashdot and you're going to run into some pretty rabid "information must be free" types. Some of these guys take offense at anyone trying to sell ANYTHING. Even if you don't put out source, sometimes they'll reverse-engineer your stuff and code up a GPL version just for spite. How dare you SELL software??? They'll teach YOU a thing or two... Again, bling, out of business.
I think open source (and more to the point, "free" software) is a reaction to hypergreed on the part of software companies. People are tired of being slammed with vicious, anal-retentive EULAS that don't let them do what they want with the software they paid good money for. I understand where they're coming from, and I agree with Stallman's views on the value of freedom, but I think there's got to be some kind of middle ground.
So, OK, Slashdot, tell me what you think:
What if there was a license that allowed you to:
1. Use the software any way you want, including rewriting it with the provided source code, provided you didn't backstab the author by going into business as a competitor using his work;
2. Copy the software for your individual friends and family, provided you physically handed or mailed them the copy on CD or disk (i.e. you didn't start up a website or other major distribution channel, thus backstabbing the author again);
3. Write your own patches, plugins, and extensions, and distribute them for free or fee, provided you didn't distribute the software itself with them (again, no backstabbing!);
4. Use the software at home or at work, EXCEPT if you use it at work, you can't distribute it there (company employees can buy their own licenses).
What do you think of a license like that? Workable? I've been thinking about it lately...
Ok, on the one hand, "real" supercomputers cost a bunch and go obsolete on you periodically. So you could spend tens to hundreds of millions of dollars, build out a location to receive the supercomputer, hire a staff and security to babysit and control it, hire company consultants to come in and set it up, and then repeat the whole thing in a few years when it becomes obsolete. Or you could use a cluster, which you can upgrade gradually over time with additional units (or faster units), assemble and staff with "mere mortal" graduate students (in CS), and stash pretty much anywhere you've got a spare storeroom (I'm exaggerating, but only slightly). "They" say there are things you can't do with a cluster, but every problem has a solution (provided you're not driven by the profit motive, ha ha).
On the other hand, what if they're right and there are some tasks that can't be easily done by a cluster? Then it might make sense to subsidize at least one or two supercomputer companies to maintain that skill set.
Here's a thought: Let's say it's determined that most tasks work just fine with clusters. Supercomputer companies find that there isn't enough business to support them anymore. They start to fade.
What would stop the Federal government from coming in and hiring their staffs to work in a nationally-owned and operated supercomputer center? Pick a location, set up a prototyping factory, and build a research center whose sole purpose is putting out the fastest computer ever made. Sort of a comp-sci NASA. They could aim at creating a new system every five or ten years. Each current system is maintained and run by one team while another team works on the next one, and the feds lease the systems out to researchers able to pony up a few bucks to help support the setup. Old supercomputers put out to pasture can be rented out for more mundane tasks.
Isn't that kinda interesting? It gainfully employs all the supercomputer related computer scientists so they don't move to some other country out of frustration, it preserves their knowledge for our future use, and it lets everyone get back to working with their clusters, except in those cases where you don't want to use a cluster.
Spray cans? For a camera twenty feet off the ground? That ain't gonna work... But I've got two words for you:
"Paintball Gun".
I would tend to agree.
The thing is, there's nothing WRONG with DeVry being a trade school targeting electronics and computer tech, as long as everyone involved understands that that is what is going on. The thing is, come out and say it. Say "this is a computer tech trade school" and be done with it; then everyone can say "Ok, then" and people who want that can get it.
I'm not trying to take a dump on DeVry here. I have a cousin who went to DeVry while I was in University, and he seemed to like it. But I don't think, for instance, anyone is going to come out of DeVry prepared for graduate study. I doubt anyone is going to come out of DeVry and develop a new encryption algorithm, or build their own graphics engine. The training isn't MEANT to enable that sort of activity, is it?
Then there is the subject of research. University professors are researchers. DeVry professors are professional programmers. There's a huge difference, isn't there? Similar to the difference between a physicist and a mechanical engineer, I think.
There are things Universities can do, and things trade schools can do, and people should try and understand which are which.
DISCLAIMER: This is all just my opinion.
If you want to max out an iBook, expect to spend about 1,800.00 or so; I bought a 12" 900Mhz iBook, with 640MB of Ram and a 60GB hard disk plus some extras (extra battery, etc) for about that a couple of years ago. It runs extremely well, and I've had a great time using it ever since.
Ok, I know who you are, because I've seen your weird acronyms before. So for crying out loud, would you please expand them out so I know what you said? I've been wondering for MONTHS what the fuck this means.
Throw a dog a bone, for cryin' out loud...
BUT, you can turn off remote administration on D-Link routers. If you do that, any admin password remaining is irrelevant, right?
;)
Just a point in defence of D-Link.