No, no, no! We need to deregulate the living hell out of everything! That will keep the costs of running a business low, and the businesspeople will pass all that money straight back to their workers who they love so much! Every CEO I've talked to say they are overregulated, so it must be true!
Don't sweat the tax rate. If you're making $29,000 a year (the max you can make at the 25% tax bracket as a single person), you pay about $3300 in taxes. Figure that, living frugally, you can sock away about $15,000/year.
Now go with the "two job" plan. You've doubled your income to $58,000. While this means you're now paying $10,500 in taxes, look at what happens to your marginal savings rate. Assuming your expenses haven't gone up, you can take every cent of the after-tax money and put it into savings (about $22,000). You're saving more from the second job than you are from the first job, even though the money saved from the first job is the one that required that you eat all those Ramen Noodles.
If your expenses are higher, the differences become more stark: If you're only saving $5,000/year from your first job, the second job lets you save over four times as much as the first job does.
I'm not saying that the second job is the way to go. But all these posts about how America's tax structure punishes working harder just seem silly. Hopping from one bracket to another doesn't make that big a difference (though it seems absurd and regressive to place the biggest jump (15% to 25%) at the $30,000 range, placing most of the disincentives of the tax structure on the middle class).
"And there is a certain arrogance to the notion that consumers can't be trusted to vote in politicians who do these very things as well...
I disagree. I think it's just a statement of fact. In the 2000 House races, 98% of incumbents were re-elected. That was before the controversial redistricting of Texas.
In a system where incumbents have every advantage, voters cannot vote their interests. Our government won't let them.
Yes, choice is freedom. Guess what? Soon, your ISP will have a lot of choices, and therefore a lot of freedom, to control how the sites you visit will perform.
Both of the choices you currently have (the local cable monopoly vs. the local telephone monopoly) are fully in favor of tiered service. The municipal wifi you tout as an alternative is supposedly The Scourge of Free Markets (as explained to me by your free market-touting compatriots). IP over power lines? Name me a single person who is actually using such a service.
For the vast majority of Americans, there are very few choices for non-dialup service. My parents live in a city which has precisely ONE choice for service (neither monopoly sees their area as worth developing).
Finally, every one of your arguments against "ham-handed" regulations could be used against food and drug safety, worker safety, anti-pollution and environmental regulations, the SEC, and everything else the government regulates for public benefit. Do you believe that regulation is ever called for?
It sounds like your picture of the corporate world is that of a few rugged individuals with bold visions crafting brilliant and effective strategies, and the effects of that bold, rugged brilliance trickle down to us proles.
Neh.
Worker-owned corporations are by-and-large every bit as economically successful as normal businesses. The author lists dozens of them, aligned according to various profit-sharing and ownership strategies. These companies make the same sorts of profits that other companies do, but because a substantial fraction of those profits benefit the workers directly, employees earn much higher wages.
But the benefits keep rolling in. Workers who earn higher wages don't need to rely so much on government services like welfare, Medicaid, and housing subsidies. Workers who have a vote in how and when they work are not only happier, but also have an incentive to come up with ideas about how to do their work more efficiently. They also have incentives to voluntarily offer up the sort of "view from the trenches" that standard companies spend millions trying to monitor. Knowing that the guy surfing porn all day (cubicle to your right) is taking money directly out of your paycheck is far more motivating than knowing he's just bleeding some faceless monstercorp. Therefore, it fosters a culture of--get this--personal responsibility.
Finally, and most importantly, people cannot spend their entire working days immersed in an authoritarian culture where their view do not matter, then leave work and suddenly transform into powerful, liberated participants in the democratic process. The habits learned at work get taken home, and people who are taught to "shut up and take it" at work cannot help but feel the same sort of helplessness in the face of our great national problems.
Every big business is run by committee. At least this way, the committee making the decisions also has the job of implementing them. That's a pretty important reality check.
I'm not sure this analogy is helpful. It makes it sound like the dating service is lying about being a dating service.
I like the other respondent's analogy better: You pay the $30 entry fee, and then find out that the girl you met in the coffee shop this morning--the one who seemed so totally into you and said she'd see you there--was actually an employee of the dance club, and had done the same schtick for twenty other guys that day.
You are so right. If someone gets bilked out of a ton of money because some scammer preyed on his hopes and dreams, what kind of crybaby is he to ask the government to prosecute the scammers? This is exactly the sort of situation our founding fathers were thinking of when they wrote vigilante justice into the Constitution. If these guys are too lazy to hunt the scammers down and torch their apartments, then what sort of weak-willed, spineless excuse for a society have we become? George Washington must be spinning in his grave.
People have forgotten that our society was founded on personal responsibility, rugged individualism, and Texas. The government exists to give condoms to your kids and money to our corporations, not to solve your problems for you. Now grab some kerosene, get out there, and reclaim your country!
Here you go. Lots of concrete proposals. All of them are being implemented in one form or another by highly successful companies today. They empower the individual and the community, and represent a vast improvement over the current, "the rich get tax breaks and the poor get fed into the mulching machine" system.
I'm inclined to give him the benefit of the doubt. It's more likely that he was referring to genericization only as it affects this particular trademark, as opposed to him saying that trademarks shouldn't be lost due to their use as generic terms. I disagree, but given the limited claims they're making to the term (lots of highly successful conferences have been put on without actually using the term Web 2.0 in the title), he probably doesn't feel he's doing significant harm.
How about if instead of "an animal on the cover," he said "a white book with a black-and-white woodcarved print of an animal, with the title printed in white inside a colored square?" Would you ever, in a million years, consider the claim that they were not trying to copy the look and feel of the O'Reilly books? No. Nor would you seriously consider the possibility that they weren't doing it so that some of O'Reilly's success would rub off on them.
Of course, without seeing the books in question, it's hard to judge whether a consumer would easily mistake them for O'Reilly books, or mistakenly purchase one in the hopes of getting an O'Reilly book. It's also unknown what specific actions the C&D demanded. Without those details, we can't judge whether the C&D was reasonable or not. But I do think that some forms of trade dress should be protectable, simply because some brands really are better than others, and when something irrelevant to the quality of the product helps me identify it as coming from a source I've grown to trust, another brand shouldn't be able to hijack that reputation.
Another reason to support some forms of trade dress: Because it's non-functional, it can easily be changed without seriously altering the quality of its contents. Not so for things like patent and copyright infringement. If you're convicted of patent infringement, you might have to reengineer your product from the ground up. The guy who received the C&D from O'Reilly didn't have to do anything beyond changing the cover.
I pretty much agree. The cameras are coming. They're going to be very small, very cheap, and very easily broadcasted to anywhere else in the world. The only question that remains is, who will be in charge of them? Will the government have full control over them, or will citizens be able to use them to bring accountability to the government as well as vice versa? In the latter case, we still lose our privacy, but we can still salvage our freedom.
The downside is, privacy is important. It takes a lot of guts to do something that most people disapprove of, and a lot of people will let themselves be pressured into absolute conformity. It's much easier to do what you want when you know you're safe from discovery. The principle works for thing I consider mostly harmless (sex, recreational drug use) as well as for things I despise (child molestation, robbery, police brutality, political and business corruption).
See David Brin's "The Transparent Society." It's very enjoyable, and a little scary. Ultimately, I'm hopeful in the belief that transparency will be liberating.
So, if one half of one percent of Texans decide that they hate illegal immigration enough to sit and watch a camera, that tells us what America "truly thinks about this?"
I thought you made it clear, earlier in your post, that you came down firmly in the pro-thinking camp.
The fact is, the "average Joe"--whatever side of the issue--will not donate one minute of their time to this after the novelty wears off. All you've really created is a forum where extreme anti-immigration fanatics use the cameras, and extreme pro-immigration fanatics deface and disable them. You can't gauge the desires of America using something like that.
I think the main reason is that the "cutting edge" stuff is continuously being pushed further and further up the stack.
There was a time when everyone who wanted to make a computer do tricks had to know assembly. The era of punchcards. In an earlier era, if you were doing "IT", you were doing hardware design. As in, "We finally got our eight-bit adder working! w00t!"
These days, how many people are writing newer, better instruction sets? Or compilers, or operating systems? How many of us are working on writing a new programming language? Of those who said yes, how many of you expect it to become widely used? Most programmers don't interact with anything lower down the stack than system calls, and many projects are OS-agnostic with little effort on the programmer's part.
Even in the application domain, a lot of things can be considered "done enough". Web servers, DNS servers, text editors. Not that there isn't work being done, but it's being done by a small part of the overall industry. Even where there is lots of buzz in the industry, people are more interested in developing with them than developing them. Sad? Maybe. But some level of specialization is critical.
Your comments are mostly good. Your STFU is completely unwarranted.
I've spent the last seven years doing basically what you describe: learning on my own. CS studies helped a lot, and a few people have provided invaluable help. But it's taken seven years for me to get to the point where I feel like I can master new technologies fairly easily, and step into some coding positions without getting blown completely out of the water.
While a lot of that time was absolutely necessary, I can look back and see a lot of dreadfully wasted time. Do you know how much more quickly I would have been able to progress if somebody had taken me aside twice a week to hammer home a couple of new concepts?
Here's a list of concepts I should have been taught in the first two years of the game, rather than the last:
* Iterators * Generators * Version control * Unit testing * Functional testing * Refactoring * Design Patterns
Another example I learned way later than I should have: Exceptions and debuggers. How long should an aspiring programmer be allowed to debug his code using nothing but print statements? I'd say two months, tops. But I practiced in solitude, seldom if ever asking anyone for new techniques or new ways of thinking about my craft. To this day, when some bug is vexing me, I have to actively resist the urge to start writing print statements.
I therefore reject your advice. Yes, the curiosity must be there. Yes, you have to be willing to put in the long, caffeinated hours, often with no wits but your own to rely on. But individualized, free-form instruction can be invaluable in keeping the young'uns on the path of righteousness. I'm not talking about "drag the grad student over to help you hunt down this one bug"; rather, I mean coding sessions of perhaps an hour or two, focused on a specific technology or a few key concepts. Pair programming sessions can also be useful.
If you're feeling generous, find a few of the up-and-coming, take them under your wing, and give them the best information you can. If you're less generous, at least freely loan out the books you've found most helpful, with a short explanation of their importance. If you're feeling lost, find someone who looks less lost than you and ply them with beer and pizza until they tell you their secrets.
I don't think it's treat all that wasted, undirected time as some sort of hazing ritual. If you're stuck in an abusive relationship with your compiler, you have to speak out and find help.
Most people just listen to "shuffle", so I think your evaluation overrates the importance of the "Y follows X" factor. In fact, I would say that most of the other things in your "I like iPods" spiel were bigger factors: Huge volumes of music (without lugging huge boxes of CDs), portability, simpler song management, and instant gratification thanks to BitTorrent^H^H^H^H^H^H^H^H^H^H^H^H iTMS.
Whitespaciness isn't a big issue with Python, so long as you're writing with an editor that understands that you're writing Python. If you use the same amount of indentation for each block, you'll be fine. Use Notepad, and mix tabs and spaces literally, and you'll soon find yourself hunting down some very confusing bugs.
All of that having been said, there is some truth in the statement, "The rich are getting richer because they are doing those things that made them rich, while the poor are getting poorer because they continue to do those things that made them poor."
I fully agree. The problem is, "what the rich are doing" == "buying lobbyists, senators, and think tanks to rig the game in their favor" and "what the poor are doing" == "being too poor to buy lobbyists, senators, or think tanks to rig the game in their favor".
We have deep, deep problems in this country. One of the biggest is the slow, steady corruption of the political process by corporate interests. Corporations and wealthy individuals make the overwhelming majority of campaign contributions. They do this entirely out of self-interest: the people they want elected are the people who will shape the country in the way they would like. This leads to the other biggest problem: the increasing inequality between the wealthy and the poor in this country.
I'm fully in favor of personal responsibility. But I'm in favor of it for myself as well as for "the poor," and I fully believe that my responsibilities include a responsibility to my fellow man, responsibility for the world I live in, and responsibility for the future. I have no right to ignore those responsibilities out of greed or laziness.
I'm sure you agree in principle, if not on my specific interpretation of those responsibilities.
You've told me an inspiring story of personal responsibility. I applaud you for your hard work and dedication.
But let me tell you two stories. One of personal responsibility, the other of personal irresponsibility. One is hypothetical. The other is shamefully real.
Meet Bob. Bob is a trucker. Bob has two kids, high credit card debts (blame his psycho ex), and a desperate desire to get ahead. Bob is hypothetical. He's been saving, paying extra in his monthly check to Visa, because he wants to be out of debt as soon as possible. One day, Bob gets in an accident. Six months and $90,000 in medical bills later, Bob is in financial ruins, the creditors are making his life a living hell, and they're about to foreclose on his home.
Bob files for bankruptcy.
This is how most bankruptcies happen. Not carefree, irresponsible spending, but a simple lack of resources in the face of a sudden, overwhelming crisis.
Now the other story. Despite the preceding fact, which the credit companies know full well, they went to Congress and rewrote the rules last year. They whittled away all sorts of important bankruptcy protections. Why? So their kids could eat? Hardly. Credit card companies had been posting record profits. But they wanted to inflict those who collapse under their financial burdens with less protection and more paperwork.
In other words, they wanted to avoid personal responsibility for making risky loans. And because they have the dollars, and can buy political clout in all its forms, Congress gave them a do-over.
The truly wealthy* can buy their way out of all sorts of responsibilities, especially in our current administration. They don't like the responsibility of protecting the environment (which is as good an example of our common wealth as anything), so they buy less restrictive legislation. They don't like the responsibility of funding a school system that would allow anyone to succeed regardless of their station, so they buy tax loopholes and hide income from the government. They don't like the responsibilities imposed by society, so they buy new ones.
* This doesn't include you. About 20% of all Americans believe they are in the top 1% of all income earners.
Nice story. Sounds utterly plausible. But I doubt you can back it up with one example of a company that laid off at least 5% of its workforce and being back to full economic strength within a couple of years. Most of these huge layoffs, the company simply ends up doing significantly less than it did before. But the stock prices jump, because investors get positively orgasmic when they see a CEO being a heartless bastard, because they believe that heartlessness makes for good, sound business decisions.
Show me a CEO who, rather than killing jobs, cuts his salary and gives back most of the bonuses he earned over the last decade, and I'll show you a company that is going to bounce back. Of course, this never actually happens, so it'll be tough to prove me wrong.
I'd love to see the kid take this to court. Imagine the shame of his English teachers when he wins on account of "it can't be a threat if it doesn't rise to the level of intelligible communication."
Back up a bit. I don't think putting together a computer is either strictly necessary or strictly helpful. Once the person has put it together, and installed the OS, they've got this screen staring at them, asking them what they want to do. And they'll have no idea.
I can suggest several branches of computer literacy:
1): the ability to interact with common GUIs. Know what a mouse is, be able to click it and make things happen. As a bonus, add right-click (or whatever the hell you Mac people do). Learn to read dialog boxes and respond to them.
2): Learn to open common applications, and interact with common applications such as a web browser and a word processor. Know what a file is and how to save one. Know what the directory structure is and at least one way to navigate it.
3): Absolute basic hardware! Be able to take your computer apart, move it to a different room, stick all the things in the back in, and have it work as it did before. Knowing the various jacks by sight might get bonus points, but isn't strictly necessary.
4): Regular maintenance. Know what a virus is, and why you have to keep your virus definitions up to date. Know what a patch is, and why you're supposed to install one.
5): More theory. Learn basic technical concepts, like what an operating system is, what an application is, the difference between memory, hard drive, processor, networking.
6): Internet basics. Understand that when your computer loads up a web page, it's actually talking to another computer. Understand the concept of "bandwidth" (using a hose analogy if needed). Understand the difference between the Web and the Internet. Know that computers identify each other by numbers known as "addresses", and that the domain names are simply a way of mapping from memorable names to those numbers.
7): Security. Know what a firewall is and what it does. Understand why you don't run attachments sent by random people. Have some idea of what constitutes a good password.
I think if you know all this, it would be a rather stingy society that wouldn't call you "computer literate". Your approach would probably go a long way towards getting some of the concepts down, but it's only a starting point.
You should be able to do the entire course in open source tools. Apache Tomcat for the web server, Eclipse for the dev environment, SubClipse to get everyone on the source control bandwagon. The only thing missing is Open Source Java.
Having said that, I wonder what the target audience is for this class. EJB strikes me as massive overkill for all but a tiny handful of projects. 90% of the time (at least), I would guess that all the conceptual complexities it brings don't really provide any long-term benefits. Same goes for JSP: while it's interesting to have created a programming language that validates as XML, it feels clunky and I don't see the real benefit.
I recently started with a new employer, primarily on the strength of a Rails project I did for them for my senior project. I'm still convinced that Rails is highly suited for the stuff they're doing right now, whereas the EJB tech they're using seems highly suited for deploying to the enormous server farms that they hope to need in the future.
I'm not looking to start a flame war here. Everyone has some emotional investment in the technology they've already learned, me included. I'm just looking for feedback on the relative strengths and weaknesses of the two approaches to creating web sites and services.
I've been running Ubuntu on a laptop as my primary system (a Toshiba Satellite hand-me-down). It's not without its hassles, but it works very well. This last month, I had to totally retool my setup for a new job (installing a bunch of things like Eclipse, Ant, JBoss, etc.), and after a mammoth RAM upgrade to handle it all, it's working very nicely.
Battery life is sucktastic, and I'm not sure if that's a hardware or a software problem. It's a fairly old computer, and it's been through a lot. It also refuses to hibernate properly, so I have to power down when I'm moving it from place to place.
There are certainly a lot fewer rough edges than there were back when I was first trying out the whole "Linux thing".
My impression is that you think "Web 2.0" is just a warmed-over version of Sun's "The Network is the Computer". I would disagree. It's not just about having applications available while roaming. It's about having applications that take advantage of all these huge, useful caches of data all over the world. Google's map data is one such source of data. Amazon's ginormous repository of information on books (including user reviews, sales figures, etc.) is another. MusicBrainz, Flickr, MySpace, government data sources, blog feeds, webcams... it's all out there, waiting for people to do interesting things with it, mining it for even more data and presenting it to the people who can make use of it.
Technically, a Web 2.0 app doesn't need to be hosted on a web server (though that solves a lot of problems when it comes to distributing and upgrading applications). What it does need to do is take advantage of data services to provide an experience that no self-contained app with a static data store could ever hope to accomplish.
No, no, no! We need to deregulate the living hell out of everything! That will keep the costs of running a business low, and the businesspeople will pass all that money straight back to their workers who they love so much! Every CEO I've talked to say they are overregulated, so it must be true!
Don't sweat the tax rate. If you're making $29,000 a year (the max you can make at the 25% tax bracket as a single person), you pay about $3300 in taxes. Figure that, living frugally, you can sock away about $15,000/year.
Now go with the "two job" plan. You've doubled your income to $58,000. While this means you're now paying $10,500 in taxes, look at what happens to your marginal savings rate. Assuming your expenses haven't gone up, you can take every cent of the after-tax money and put it into savings (about $22,000). You're saving more from the second job than you are from the first job, even though the money saved from the first job is the one that required that you eat all those Ramen Noodles.
If your expenses are higher, the differences become more stark: If you're only saving $5,000/year from your first job, the second job lets you save over four times as much as the first job does.
I'm not saying that the second job is the way to go. But all these posts about how America's tax structure punishes working harder just seem silly. Hopping from one bracket to another doesn't make that big a difference (though it seems absurd and regressive to place the biggest jump (15% to 25%) at the $30,000 range, placing most of the disincentives of the tax structure on the middle class).
In a system where incumbents have every advantage, voters cannot vote their interests. Our government won't let them.
Yes, choice is freedom. Guess what? Soon, your ISP will have a lot of choices, and therefore a lot of freedom, to control how the sites you visit will perform.
Both of the choices you currently have (the local cable monopoly vs. the local telephone monopoly) are fully in favor of tiered service. The municipal wifi you tout as an alternative is supposedly The Scourge of Free Markets (as explained to me by your free market-touting compatriots). IP over power lines? Name me a single person who is actually using such a service.
For the vast majority of Americans, there are very few choices for non-dialup service. My parents live in a city which has precisely ONE choice for service (neither monopoly sees their area as worth developing).
Finally, every one of your arguments against "ham-handed" regulations could be used against food and drug safety, worker safety, anti-pollution and environmental regulations, the SEC, and everything else the government regulates for public benefit. Do you believe that regulation is ever called for?
It sounds like your picture of the corporate world is that of a few rugged individuals with bold visions crafting brilliant and effective strategies, and the effects of that bold, rugged brilliance trickle down to us proles.
Neh.
Worker-owned corporations are by-and-large every bit as economically successful as normal businesses. The author lists dozens of them, aligned according to various profit-sharing and ownership strategies. These companies make the same sorts of profits that other companies do, but because a substantial fraction of those profits benefit the workers directly, employees earn much higher wages.
But the benefits keep rolling in. Workers who earn higher wages don't need to rely so much on government services like welfare, Medicaid, and housing subsidies. Workers who have a vote in how and when they work are not only happier, but also have an incentive to come up with ideas about how to do their work more efficiently. They also have incentives to voluntarily offer up the sort of "view from the trenches" that standard companies spend millions trying to monitor. Knowing that the guy surfing porn all day (cubicle to your right) is taking money directly out of your paycheck is far more motivating than knowing he's just bleeding some faceless monstercorp. Therefore, it fosters a culture of--get this--personal responsibility.
Finally, and most importantly, people cannot spend their entire working days immersed in an authoritarian culture where their view do not matter, then leave work and suddenly transform into powerful, liberated participants in the democratic process. The habits learned at work get taken home, and people who are taught to "shut up and take it" at work cannot help but feel the same sort of helplessness in the face of our great national problems.
Every big business is run by committee. At least this way, the committee making the decisions also has the job of implementing them. That's a pretty important reality check.
I'm not sure this analogy is helpful. It makes it sound like the dating service is lying about being a dating service.
I like the other respondent's analogy better: You pay the $30 entry fee, and then find out that the girl you met in the coffee shop this morning--the one who seemed so totally into you and said she'd see you there--was actually an employee of the dance club, and had done the same schtick for twenty other guys that day.
You are so right. If someone gets bilked out of a ton of money because some scammer preyed on his hopes and dreams, what kind of crybaby is he to ask the government to prosecute the scammers? This is exactly the sort of situation our founding fathers were thinking of when they wrote vigilante justice into the Constitution. If these guys are too lazy to hunt the scammers down and torch their apartments, then what sort of weak-willed, spineless excuse for a society have we become? George Washington must be spinning in his grave.
People have forgotten that our society was founded on personal responsibility, rugged individualism, and Texas. The government exists to give condoms to your kids and money to our corporations, not to solve your problems for you. Now grab some kerosene, get out there, and reclaim your country!
Here you go. Lots of concrete proposals. All of them are being implemented in one form or another by highly successful companies today. They empower the individual and the community, and represent a vast improvement over the current, "the rich get tax breaks and the poor get fed into the mulching machine" system.
Happy reading.
I'm inclined to give him the benefit of the doubt. It's more likely that he was referring to genericization only as it affects this particular trademark, as opposed to him saying that trademarks shouldn't be lost due to their use as generic terms. I disagree, but given the limited claims they're making to the term (lots of highly successful conferences have been put on without actually using the term Web 2.0 in the title), he probably doesn't feel he's doing significant harm.
How about if instead of "an animal on the cover," he said "a white book with a black-and-white woodcarved print of an animal, with the title printed in white inside a colored square?" Would you ever, in a million years, consider the claim that they were not trying to copy the look and feel of the O'Reilly books? No. Nor would you seriously consider the possibility that they weren't doing it so that some of O'Reilly's success would rub off on them.
Of course, without seeing the books in question, it's hard to judge whether a consumer would easily mistake them for O'Reilly books, or mistakenly purchase one in the hopes of getting an O'Reilly book. It's also unknown what specific actions the C&D demanded. Without those details, we can't judge whether the C&D was reasonable or not. But I do think that some forms of trade dress should be protectable, simply because some brands really are better than others, and when something irrelevant to the quality of the product helps me identify it as coming from a source I've grown to trust, another brand shouldn't be able to hijack that reputation.
Another reason to support some forms of trade dress: Because it's non-functional, it can easily be changed without seriously altering the quality of its contents. Not so for things like patent and copyright infringement. If you're convicted of patent infringement, you might have to reengineer your product from the ground up. The guy who received the C&D from O'Reilly didn't have to do anything beyond changing the cover.
I pretty much agree. The cameras are coming. They're going to be very small, very cheap, and very easily broadcasted to anywhere else in the world. The only question that remains is, who will be in charge of them? Will the government have full control over them, or will citizens be able to use them to bring accountability to the government as well as vice versa? In the latter case, we still lose our privacy, but we can still salvage our freedom.
The downside is, privacy is important. It takes a lot of guts to do something that most people disapprove of, and a lot of people will let themselves be pressured into absolute conformity. It's much easier to do what you want when you know you're safe from discovery. The principle works for thing I consider mostly harmless (sex, recreational drug use) as well as for things I despise (child molestation, robbery, police brutality, political and business corruption).
See David Brin's "The Transparent Society." It's very enjoyable, and a little scary. Ultimately, I'm hopeful in the belief that transparency will be liberating.
So, if one half of one percent of Texans decide that they hate illegal immigration enough to sit and watch a camera, that tells us what America "truly thinks about this?"
I thought you made it clear, earlier in your post, that you came down firmly in the pro-thinking camp.
The fact is, the "average Joe"--whatever side of the issue--will not donate one minute of their time to this after the novelty wears off. All you've really created is a forum where extreme anti-immigration fanatics use the cameras, and extreme pro-immigration fanatics deface and disable them. You can't gauge the desires of America using something like that.
I think the main reason is that the "cutting edge" stuff is continuously being pushed further and further up the stack.
There was a time when everyone who wanted to make a computer do tricks had to know assembly. The era of punchcards. In an earlier era, if you were doing "IT", you were doing hardware design. As in, "We finally got our eight-bit adder working! w00t!"
These days, how many people are writing newer, better instruction sets? Or compilers, or operating systems? How many of us are working on writing a new programming language? Of those who said yes, how many of you expect it to become widely used? Most programmers don't interact with anything lower down the stack than system calls, and many projects are OS-agnostic with little effort on the programmer's part.
Even in the application domain, a lot of things can be considered "done enough". Web servers, DNS servers, text editors. Not that there isn't work being done, but it's being done by a small part of the overall industry. Even where there is lots of buzz in the industry, people are more interested in developing with them than developing them. Sad? Maybe. But some level of specialization is critical.
Your comments are mostly good. Your STFU is completely unwarranted.
I've spent the last seven years doing basically what you describe: learning on my own. CS studies helped a lot, and a few people have provided invaluable help. But it's taken seven years for me to get to the point where I feel like I can master new technologies fairly easily, and step into some coding positions without getting blown completely out of the water.
While a lot of that time was absolutely necessary, I can look back and see a lot of dreadfully wasted time. Do you know how much more quickly I would have been able to progress if somebody had taken me aside twice a week to hammer home a couple of new concepts?
Here's a list of concepts I should have been taught in the first two years of the game, rather than the last:
* Iterators
* Generators
* Version control
* Unit testing
* Functional testing
* Refactoring
* Design Patterns
Another example I learned way later than I should have: Exceptions and debuggers. How long should an aspiring programmer be allowed to debug his code using nothing but print statements? I'd say two months, tops. But I practiced in solitude, seldom if ever asking anyone for new techniques or new ways of thinking about my craft. To this day, when some bug is vexing me, I have to actively resist the urge to start writing print statements.
I therefore reject your advice. Yes, the curiosity must be there. Yes, you have to be willing to put in the long, caffeinated hours, often with no wits but your own to rely on. But individualized, free-form instruction can be invaluable in keeping the young'uns on the path of righteousness. I'm not talking about "drag the grad student over to help you hunt down this one bug"; rather, I mean coding sessions of perhaps an hour or two, focused on a specific technology or a few key concepts. Pair programming sessions can also be useful.
If you're feeling generous, find a few of the up-and-coming, take them under your wing, and give them the best information you can. If you're less generous, at least freely loan out the books you've found most helpful, with a short explanation of their importance. If you're feeling lost, find someone who looks less lost than you and ply them with beer and pizza until they tell you their secrets.
I don't think it's treat all that wasted, undirected time as some sort of hazing ritual. If you're stuck in an abusive relationship with your compiler, you have to speak out and find help.
Most people just listen to "shuffle", so I think your evaluation overrates the importance of the "Y follows X" factor. In fact, I would say that most of the other things in your "I like iPods" spiel were bigger factors: Huge volumes of music (without lugging huge boxes of CDs), portability, simpler song management, and instant gratification thanks to BitTorrent^H^H^H^H^H^H^H^H^H^H^H^H iTMS.
Whitespaciness isn't a big issue with Python, so long as you're writing with an editor that understands that you're writing Python. If you use the same amount of indentation for each block, you'll be fine. Use Notepad, and mix tabs and spaces literally, and you'll soon find yourself hunting down some very confusing bugs.
We have deep, deep problems in this country. One of the biggest is the slow, steady corruption of the political process by corporate interests. Corporations and wealthy individuals make the overwhelming majority of campaign contributions. They do this entirely out of self-interest: the people they want elected are the people who will shape the country in the way they would like. This leads to the other biggest problem: the increasing inequality between the wealthy and the poor in this country.
I'm fully in favor of personal responsibility. But I'm in favor of it for myself as well as for "the poor," and I fully believe that my responsibilities include a responsibility to my fellow man, responsibility for the world I live in, and responsibility for the future. I have no right to ignore those responsibilities out of greed or laziness.
I'm sure you agree in principle, if not on my specific interpretation of those responsibilities.
You've told me an inspiring story of personal responsibility. I applaud you for your hard work and dedication.
But let me tell you two stories. One of personal responsibility, the other of personal irresponsibility. One is hypothetical. The other is shamefully real.
Meet Bob. Bob is a trucker. Bob has two kids, high credit card debts (blame his psycho ex), and a desperate desire to get ahead. Bob is hypothetical. He's been saving, paying extra in his monthly check to Visa, because he wants to be out of debt as soon as possible. One day, Bob gets in an accident. Six months and $90,000 in medical bills later, Bob is in financial ruins, the creditors are making his life a living hell, and they're about to foreclose on his home.
Bob files for bankruptcy.
This is how most bankruptcies happen. Not carefree, irresponsible spending, but a simple lack of resources in the face of a sudden, overwhelming crisis.
Now the other story. Despite the preceding fact, which the credit companies know full well, they went to Congress and rewrote the rules last year. They whittled away all sorts of important bankruptcy protections. Why? So their kids could eat? Hardly. Credit card companies had been posting record profits. But they wanted to inflict those who collapse under their financial burdens with less protection and more paperwork.
In other words, they wanted to avoid personal responsibility for making risky loans. And because they have the dollars, and can buy political clout in all its forms, Congress gave them a do-over.
The truly wealthy* can buy their way out of all sorts of responsibilities, especially in our current administration. They don't like the responsibility of protecting the environment (which is as good an example of our common wealth as anything), so they buy less restrictive legislation. They don't like the responsibility of funding a school system that would allow anyone to succeed regardless of their station, so they buy tax loopholes and hide income from the government. They don't like the responsibilities imposed by society, so they buy new ones.
* This doesn't include you. About 20% of all Americans believe they are in the top 1% of all income earners.
Nice story. Sounds utterly plausible. But I doubt you can back it up with one example of a company that laid off at least 5% of its workforce and being back to full economic strength within a couple of years. Most of these huge layoffs, the company simply ends up doing significantly less than it did before. But the stock prices jump, because investors get positively orgasmic when they see a CEO being a heartless bastard, because they believe that heartlessness makes for good, sound business decisions.
Show me a CEO who, rather than killing jobs, cuts his salary and gives back most of the bonuses he earned over the last decade, and I'll show you a company that is going to bounce back. Of course, this never actually happens, so it'll be tough to prove me wrong.
I'd love to see the kid take this to court. Imagine the shame of his English teachers when he wins on account of "it can't be a threat if it doesn't rise to the level of intelligible communication."
Back up a bit. I don't think putting together a computer is either strictly necessary or strictly helpful. Once the person has put it together, and installed the OS, they've got this screen staring at them, asking them what they want to do. And they'll have no idea.
I can suggest several branches of computer literacy:
1): the ability to interact with common GUIs. Know what a mouse is, be able to click it and make things happen. As a bonus, add right-click (or whatever the hell you Mac people do). Learn to read dialog boxes and respond to them.
2): Learn to open common applications, and interact with common applications such as a web browser and a word processor. Know what a file is and how to save one. Know what the directory structure is and at least one way to navigate it.
3): Absolute basic hardware! Be able to take your computer apart, move it to a different room, stick all the things in the back in, and have it work as it did before. Knowing the various jacks by sight might get bonus points, but isn't strictly necessary.
4): Regular maintenance. Know what a virus is, and why you have to keep your virus definitions up to date. Know what a patch is, and why you're supposed to install one.
5): More theory. Learn basic technical concepts, like what an operating system is, what an application is, the difference between memory, hard drive, processor, networking.
6): Internet basics. Understand that when your computer loads up a web page, it's actually talking to another computer. Understand the concept of "bandwidth" (using a hose analogy if needed). Understand the difference between the Web and the Internet. Know that computers identify each other by numbers known as "addresses", and that the domain names are simply a way of mapping from memorable names to those numbers.
7): Security. Know what a firewall is and what it does. Understand why you don't run attachments sent by random people. Have some idea of what constitutes a good password.
I think if you know all this, it would be a rather stingy society that wouldn't call you "computer literate". Your approach would probably go a long way towards getting some of the concepts down, but it's only a starting point.
I started on your tutorial, but two steps in Emacs closed on me.
You should be able to do the entire course in open source tools. Apache Tomcat for the web server, Eclipse for the dev environment, SubClipse to get everyone on the source control bandwagon. The only thing missing is Open Source Java.
Having said that, I wonder what the target audience is for this class. EJB strikes me as massive overkill for all but a tiny handful of projects. 90% of the time (at least), I would guess that all the conceptual complexities it brings don't really provide any long-term benefits. Same goes for JSP: while it's interesting to have created a programming language that validates as XML, it feels clunky and I don't see the real benefit.
I recently started with a new employer, primarily on the strength of a Rails project I did for them for my senior project. I'm still convinced that Rails is highly suited for the stuff they're doing right now, whereas the EJB tech they're using seems highly suited for deploying to the enormous server farms that they hope to need in the future.
I'm not looking to start a flame war here. Everyone has some emotional investment in the technology they've already learned, me included. I'm just looking for feedback on the relative strengths and weaknesses of the two approaches to creating web sites and services.
I've been running Ubuntu on a laptop as my primary system (a Toshiba Satellite hand-me-down). It's not without its hassles, but it works very well. This last month, I had to totally retool my setup for a new job (installing a bunch of things like Eclipse, Ant, JBoss, etc.), and after a mammoth RAM upgrade to handle it all, it's working very nicely.
Battery life is sucktastic, and I'm not sure if that's a hardware or a software problem. It's a fairly old computer, and it's been through a lot. It also refuses to hibernate properly, so I have to power down when I'm moving it from place to place.
There are certainly a lot fewer rough edges than there were back when I was first trying out the whole "Linux thing".
You're only digging yourself deeper, in my mind.
My impression is that you think "Web 2.0" is just a warmed-over version of Sun's "The Network is the Computer". I would disagree. It's not just about having applications available while roaming. It's about having applications that take advantage of all these huge, useful caches of data all over the world. Google's map data is one such source of data. Amazon's ginormous repository of information on books (including user reviews, sales figures, etc.) is another. MusicBrainz, Flickr, MySpace, government data sources, blog feeds, webcams... it's all out there, waiting for people to do interesting things with it, mining it for even more data and presenting it to the people who can make use of it.
Technically, a Web 2.0 app doesn't need to be hosted on a web server (though that solves a lot of problems when it comes to distributing and upgrading applications). What it does need to do is take advantage of data services to provide an experience that no self-contained app with a static data store could ever hope to accomplish.