You know, I don't understand why everyone keeps insisting that Linux is so difficult. I use Linux, OS/X, and windows, and the truth is, KDE doesn't seem to be any harder than Windows or Mac OS/X.
Take burning CDs for example. With KDE, I ran an app to burn CDs (like with Windows); with OS/X, I had to drag items onto the CD icon, then right click it, then select "burn disk"... Which is mystifying to someone used to using a third-party app. It took me a while to figure that out, simple as it is. I spent at least an hour looking for a third-party app, wondering whether Apple even supplied one. Some things can be made so simple that they baffle people.
So, which is easier? Kind of depends on how you're used to working, doesn't it? Some aspects of OS/X take some getting used to. KDE is more like windows in that it has a start menu, with easily-labelled apps, so it's more accessible in some ways to users migrating from Windows.
That's not addiction. It's compusive behavior, but it's not addiction.
Consider the difference between the alcoholic and the compulsive gambler.
The alcoholic is actually experiencing a change in brain chemistry. If he doesn't drink, he suffers actual physical symptoms: he gets the shakes, DT's, gets sick, etc.
The gambler just gets pissed off when he can't gamble. He suffers PSYCHOLOGICAL symptoms. He gets antsy, annoyed, tries to get to the track. He's unhappy. NOT PHYSICALLY ILL.
Hence the difference. One is a physical phenomenon. One is a psychological phenomenon.
Addiction is not the same as a compulsive behavior.
Now, to games: What you're describing is a little bit obsessive-compulsive, but it's certainly not an addiction. And, sure, you can get yourself in a whole lot of trouble being obsessive about something. Maybe if you find out that you literally can't stop playing a game, you've got a bit of a problem and you should back off (or maybe talk to a good therapist).
BUT, it's not addiction. No matter how often people try to frame it as such.
An addiction is generally a physical dependency on some chemical. Alcoholism, cocaine use, heroin use, cigarette smoking, morphine injection, and crack smoking all represent addictions. They are addictions because you can't just stop using the substance involved without (sometimes serious, even fatal) physical side effects. Also, it usually requires an impressive amount of personal will and effort to escape the addiction. And, untreated, the addiction will usually cause you grave harm.
Playing videogames is simply not an addiction. For one thing, it doesn't cause you grave physical harm (NO, carpal tunnel doesn't count -- smoking causes cancer and cocaine dissolves the soft tissues of your sinuses, causing lots of bleeding and other nasty effects). For another, it doesn't wreck your brain chemistry. For another, if you're trapped on a desert island (or visiting in-laws) and can't play your games, you won't go into convulsions and die.
Let's stop equating relatively harmless compulsive behavior with addiction, shall we? It's not helpful.
FIRST, there is an activity enjoyed by a relatively small segment of the population. This activity is mysterious to the mainstream, perhaps it's a little beyond their ability to adapt to.
THEN, the activity becomes more popular. What was once a relatively minor thing becomes a phenomenon. The people currently In Power (tm), being old farts who have a hard time adapting to change, notice the phenomenon and are threatened by it. It is mysterious and strange, and like The Thing, it must be destroyed.
THEN, despite their best efforts, they fail to destroy it. People really like it, and tell them to get stuffed. They assume that people just don't understand the terrible thing they're doing to themselves, and they try to figure out a way to frame it so that they can bring social pressure down on the phenomenon.
THEN, usually, they invent some imagined syndrome, some terrible ailment caused by the new phenomenon. Recently, thanks to Hollywood's fascination with Heroin, "Addiction" is the popular ailment. The mainstream applies the ailment to the social phenomenon in an attempt to stigmatize it.
THEN, the stigma makes the phenomenon more popular. Inevitably, the phenomenon becomes mainstream, and the mainstream gives up trying to kill it off.
Examples: Rock and Roll, television, education, marriage (really! back in the years of the early church, it was considered bad for the soul), bathing, reading, printing books in the vernacular instead of latin, Science Fiction, video games, disco, folk music, and new age thinking.
Extreme example that hasn't gone mainstream yet: porno. Porno may never go mainstream in this country because of the puritan curse (the mindset passed down from puritans for the past several hundred years that sees sex as dirty and dangerous and sinful).
Interesting side phenomenon: goody-two-shoes types who were never really into the phenomenon (whatever the phenomenon might be) who deal with their guilt by buying into the ailment theory, and who try to claim social status by telling everyone within earshot that they've "overcome" their ailment.
Amazing irony: television, which is now mainstream, is considered "okay" to spend six hours or more a day with, remote in hand, brain in neutral. But when a person plays a video game (which engages their mind and imagination) for six hours, they are immediately pounced on by the "gaming as addiction" idiots.
Interesting side result: kids raised in gaming-friendly households will end up happier, smarter, and more alert than their television-addled counterparts.
People who have lived comfortable lives, accepted by others and popular in school, usually have your attitude: "People love me, why would anyone pick on me, everything's okay and people who aren't like me are different and wrong".
People like ME, on the other hand, who have been picked on by others all their lives, think that people like you are sad and deluded.
We know from experience that people are nasty and brutish by nature, and that the only reason they aren't killing each other in the streets is because of the rule of law, and the social pressure religion and society puts on people. We also know that when people can think of a way of doing something nasty to someone they don't like, they DO IT. Especially when they figure they can get away with it. Because, you naive man, people are EVIL. Deep down in their black little hearts, they're nasty and crooked and no, they can't be trusted.
Do some people overcome their inner natures and become good? Sure. Do most people fake it, occasionally stepping out of line when they think they can get away with it? Yes.
When people think they have an excuse to pick on someone else, they do it. Hang around Slashdot for a while and you'll see it in action: human nature, red in tooth and claw. Whenever they can label someone else, call them "that fag" or "that goth freak" or "that idiot geek" they feel as though they have carte blanche to do whatever they want to that person, up to and including red murder.
So, don't tell me how sorry for me you feel because I don't trust my neighbors, or you. I feel sorry for YOU, you noob. Because you're in for some nasty surprises in this life.
That's cool... Interesting side note: if Bill Gates himself isn't using wireless, but rather cat5 in concrete channels (!!!), and he knows as much as anyone about the two technologies, well... Maybe he agrees with me about their relative merits.
I bet he put the wires in concrete channels to prevent anyone from trying to sneak in a sniffer...
During a thunderstorm, the interference affects you indoors as well as outdoors. Because it's the electric field produced by the charged clouds (and locally, by lightning strikes -- a huge current causes a huge EMF) that's causing the problem, NOT the rain.
Actually, that's kind of a cool point. Although, nowadays most computers use LCDs, which don't put out as much of a signal, hence (I hope) they'd be harder to try and monitor.
Here's a link to the Van Eck writeup (although you've probably read it, maybe the others haven't); it's one of the coolest things I've ever seen:
http://www.shmoo.com/tempest/emr.pdf
BTW: I bet Bill Gates' house IS shielded, although not deliberately. Poured concrete is generally reinforced with rebar, which might mess with the signal a little. I don't think it'd be a good faraday cage, because it's probably not all completely connected, but sections might be...;)
1. Hackers already play around with wireless networks. They do it all the time. Why don't you google for "Warchalking" or "Wardriving" sometime? It's a leisure activity for them, they do it because they can. It's fun and interesting. THAT is their motivation.
2. It is only "not easy" to do these things until one motivated hacker produces a tool. Then everyone does it after a two minute download. Remember the concept of the "script kiddie"? Who do you think writes the scripts themselves? Do you think every script kiddie out there is building his own stuff? Or that he even understands how the stuff works at the system level? Of course not. All he knows is that he downloads a script and he runs the magic incantation to mess with someone he doesn't like. Don't make the mistake of thinking that just because something is nontrivial, it won't be done.
It only has to be done ONCE for everyone to be able to do it trivially and easily. By the way, a quick google got me a list of several wireless packet loggers that already exist. Finding specific tools is left as an exercise for the reader (have fun, it's interesting).
3. I've just GOT to respond to the jammer issue. I googled for this, too. All the frequencies involved in 802.11 radio comms are well known. so are their power limitations. It is trivial for someone with even rudimentary electronics knowledge (which you can pick up from a library book or a correspondence course) to build a simple radio transmitter and tune the frequency, is it not? And it is equally trivial to arrange for a power output of, say, a few watts, which would drown out any node within range.
So, how hard do you think it would be for an interested party to build one? All it takes is a trip to Radio Shack and some reading.
It isn't that it's likely this will be widespread. It's that it is possible. Why would I rely on a technology that can be interfered with so easily? You can't mess with MY LAN unless you break into my apartment. But someone could mess with a wireless setup from their car, out in the street.
THIS is my point.
4. Strength of signal: yes, this does matter. It determines range, and how well your signal is going to get through the walls of your house. AND, although you've already pooh-poohed this point, how easy it is for someone to jam you.
5. You mentioned cordless phones. Excellent! Because although YOU don't, and "most people" don't, SOME people DO. Case in point: my ex girlfriend took a plane into Long Island to visit me a while back. She had a cell phone which was capable of analog mode. I warned her, don't use her cell in Penn Station because it'll get cloned and she'll get screwed. Do you think she listened?
'Course not. So she called me from the lower level of the station. And her phone got cloned. Within three weeks, her cell phone bill came back in the several-thousand dollar range. As best we can figure, someone cloned her phone on day one of her visit, then made a shitload of copies and handed them out on the cheap. It took her weeks to straighten it out with the phone company. She was really pissed off about it, too.
Just because YOU don't do it, doesn't mean that all sorts of nasty people out there won't.
There are a lot of different types of outsourcing. Government agencies outsource in two major ways: they hire consultants to come in and do a set chunk of work, and they hire outside companies to create entire projects.
Some of this outsourcing is good. When an American company wins a bid, AND the American company is staffed by actual Americans, it's good for us and for our economy. Private companies that handle government contracting generally pay very well, and the work can be interesting.
Similarly, when the outsourcing involves bringing an American contractor in to do a little work here and there, that's good too. Again, good for us and good for our economy.
But there IS a problem with outsourcing. The problem is that since about 1999, companies hired to produce entire projects have sometimes outsourced THEIR entire operation to Indian firms, without even mentioning this to the government agency they're supposed to be working for. Other companies which supply staff have been using H1-Bs. Then they lowball all their bids and push other companies out of their niche. You see this a lot more than you'd like; there are departments where three quarters of the staff are noncitizens -- at agencies funded with taxpayer dollars!
Outsourcing itself is not necessarily bad. If it is done in a way that keeps the jobs here in the U.S. it's fine. It's when non-immigrant foreigners are used that the whole thing turns ugly.
ESPECIALLY when our tax dollars are being sent overseas. That's unforgiveable.
The popularity of wireless mystifies me. Although it is riddled with problems, from poor security to unreliability, people love it. Even when they're in their own homes, and all they have to do is run an ethernet cable to have a completely reliable, secure LAN, they STILL go with a wireless solution -- usually at a much higher price (paying for a base station, wireless card, etc).
Before anyone responds to tell me how wonderful wireless is, until you can convincingly make the following issues go away, you won't get anywhere with me:
1. Security: Anyone with a net stumbler can see your network's parameters and possibly use them to play with you. Even if you're using WEP, it'll only be as secure as your implementation. And don't forget, someone can just log all the packets you're sending and try to decrypt them later.
2. Reliability: weather conditions can screw up your wireless signal, as can anything else that causes interference, from electrical equipment to thick walls. Furthermore, someone who doesn't like you can jam your signal fairly easily. Which, by the way, would be a lot of fun if you didn't like your neighbor. Wait for him to look really busy at his computer, and turn on your jammer. Hilarity ensues. Great fun for the jammer, not so fun for the poor sap who loses his net connection right in the middle of a download.
Some will say that with improving encryption, squirt transmissions, better equipment, etc, wireless will improve to the point where the two issues I mentioned will go away. Fine. But this requires more processing to handle the connection, which slows the connection down. And the FCC limits how strong your signal can be.
I just don't see how wireless is ever going to be a good solution. People will continue to use it -- of course. But people still use Windows 98, too.
Yeah, you're probably right. Who wouldn't want to be able to take summers off and work only a few hours a week... Who wouldn't get into the prospect of being able to crush the dreams of the young with one mighty sweep of the grading pen, to be able to blather on and on about his ideas for hours at a time, while young people are forced to listen respectfully? Who wouldn't want to spend the rest of his life on a college campus, with his own cozy little office tucked away in an ivy covered building, able to hobknob and go to cocktail parties and conferences, be addressed as "professor" or "doctor" and whatnot? Not having to worry about building software that actually WORKS, able to fart around with little academic proof-of-concept work, writing an occasional paper almost no-one will read...
Now that you mention it, hell yeah, I want to be a professor too. Sounds easier than MY job...
Hey, you can get a Sentry Fire Safe large enough to store a laptop, all your media, and your class notes and assignments for 175.00. It'll protect your laptop from everything up to a near nuclear strike, and because it's got a steel shell it'll even give you some shielding from EMP. More importantly, it'll keep your roommate's grubby little mitts off your stuff.
I highly recommend one. They rock! As a side benefit, if your R.A. decides to snoop around for "haxors" he won't be able to get HIS nosy mitts on your stuff, either.
I think it's one of those things where a teacher learns that a little bit of something, say flowcharting, is a good thing. So the teacher (using adolescent logic for some reason) reasons that if a little is good, a lot must be GREAT. And it becomes their new religion.
I think it's a good idea to do SOME design up front of your functions, although I think flowcharting is a bit old-hat (most people use pseudocode these days, don't they?). I think use cases and UML are useful because they let you tinker around with a problem without having to code it up. They're a nice way of playing with ideas, in other words, sort of like a mental lego set. Also, they help you keep track of what you want to build, sort of like an architect's notes.
But I DON'T think it's a good idea to listen to college professors about any of this. Remember what Woody Allen said:
"Those who can, do.
Those who can't, teach.
Those who can't teach, teach gym..."
If college professors were really any good at any of this stuff, wouldn't they have started companies and made their bones? Why aren't they building software?
I think if you approach UML diagrams as a bureaucratic annoyance that's been forced on you, then using them is going to suck and they're not going to do you any good. Departments that force UML on people end up just pissing them all off, which ruins its usefulness.
I think if you use UML as a "sketching on a napkin" tool to think your classes out, it'll be much more useful to you. I use use cases and UML to think about problems, and play with ideas. Sometimes I'll see something I hadn't noticed before, a piece of a class I'll need but which I hadn't anticipated. Sketching with UML lets you fool around with your design, and tinker with it.
Basically, it's like working an engineering or physics problem, sketching out your diagrams and fiddling with them, letting things occur to you, etc.
You should give it a chance. Ignore all the "Big Design Up Front" sticks in the mud and use UML as a lego set. You'll like it more that way, I think.
The vast majority of people, who hold jobs that are purely local in nature (thus cannot be outsourced) won't notice anything at all. Plumbers, mechanics, construction, retail, and so forth won't be affected one iota.
People whose jobs are able to be done via a network connection are pretty much screwed. That's a big category, with a whole lot of middle-class jobs in it, not all of which are IT oriented. So, people being smarter than companies are willing to admit, people will lean away from jobs that don't contain a large, non-outsourcable component. With any luck, this'll bite the pro-outsourcing companies in the ass because they'll find it impossible to recruit for jobs they haven't outsourced yet.
Comp Sci types like me will stick to the following types of jobs (which can't be outsourced):
* Positions in academia, especially college IT support
* Positions in government (state, local, federal)
* Positions with government contractors (bonus points for security clearance)
* Positions in local organizations that need IT staff, like hospitals, police departments, libraries, etc. And small contracting companies that serve them.
* (last but not least) Positions with companies doing types of IT work that can't be outsourced, like on-site system administration and such. But these jobs are far less trustworthy than the others.
Overall, outsourcing is a nasty, brutish trend demonstrating the complete lack of loyalty or trustworthiness of Corporate America. But it isn't the end of the world. The trick is to get away from sectors that are affected, and carve yourself a place within a more local, trustworthy sector.
People will get fed up with working for private industry and they'll stick to local jobs, skilled trades, government jobs (like contracting, or doing IT for their county, etc), academia...
People that can't find the kinds of careers they want here will get out of the country, just like people did in Europe after each world war. Lack of opportunity has always driven immigration. It will be the same in the future. People who CAN leave, WILL.
I find strict object-orientation very comforting. It makes building a very large project from very small pieces much, much easier. Also, there's the reusability, the ease of maintenance... It's kinda neat in my view. I don't think it really limits you all that much. Although, there is an art to it. I've seen object designs by good and bad programmers, and the bad ones reeeeeeeeallly know how to hang themselves...;)
On the contrary; I think they ARE very similar, but perhaps I mean it in a more philosophical sense than you do. I don't mean they look and feel the same, I mean they can do the same things. Similarity, for me, is all about capability.
Don't get me wrong, I fully agree that certain languages are more suited to certain tasks, and that's fine. And I totally agree that an ecosystem is great, and there's plenty of room for all languages, with their differences.
But when you consider general-purpose languages like Java or C# (which are practically twins), or C/C++, you have to admit they have most of the same facilities, and therefore are similar.
Having said all that, you have to admit there IS some convergence going on, syntax-wise. Already similar languages are getting more similar every day. Whether you think that's a good thing or not, well, that's up to you...
Holy crap, am I reading her webpage correctly or has she actually managed to build a Commodore 128 into a Hewlett-Packard tower case???
That's extremely odd -- and therefore, very cool. But I think it needs some lighting mods, you know? Set the case to glow from inside, through all those air-movement slats. It's just BEGGING for a couple of neon tubes.
C/C++/Java like syntax with curly braces, semicolons and etc (I like the rigid nature of it, I feel it's more unambiguous than more open syntaxes);
Java style OOP, where everything is a class;
A rich library with all of the tools I might need to do my work;
A single, well thought out library to handle GUI development which works in approximately the same way on all systems (this means using a virtual machine, of course, but many languages already do this so it isn't much of a leap);
Reasonable speed on older equipment (a good minimum baseline for me is a 500Mhz Pentium II with 128MB of Ram).
There are a few languages already which are partway there. I think Java is pretty close, except for their multifarious GUI libraries, although I don't find that TOO much of a hurdle because Swing seems okay. I just wish they'd streamline it a little, it's such a bear to work with.
If "it's possible somehow" is your measure, then there's no reason to choose Java over assembly
That's not really what I meant. I think that languages evolve the same way creatures do, i.e. that languages which are more effective survive while less effective languages die off. I think that the current popular set of languages all share the same set of capabilities because these capabilities are the set that have evolved as the "necessary" set. In other words, there are a certain set of abilities that are demanded by most users; the languages that support them are more successful; and consequently, most of the "big" languages currently are very similar.
It's not really about being "Turing complete" although that facilitates the process. It's about the market acting as a darwinian laboratory which is spawning useful languages.
Anyway, that's what I meant.;)
Having said all that, I prefer static typing, myself. Again, there's that personal preference rearing its head...
You know, I don't understand why everyone keeps insisting that Linux is so difficult. I use Linux, OS/X, and windows, and the truth is, KDE doesn't seem to be any harder than Windows or Mac OS/X.
Take burning CDs for example. With KDE, I ran an app to burn CDs (like with Windows); with OS/X, I had to drag items onto the CD icon, then right click it, then select "burn disk"... Which is mystifying to someone used to using a third-party app. It took me a while to figure that out, simple as it is. I spent at least an hour looking for a third-party app, wondering whether Apple even supplied one. Some things can be made so simple that they baffle people.
So, which is easier? Kind of depends on how you're used to working, doesn't it? Some aspects of OS/X take some getting used to. KDE is more like windows in that it has a start menu, with easily-labelled apps, so it's more accessible in some ways to users migrating from Windows.
It's all in the eye of the beholder.
addiction (-dkshn)
n.
Habitual psychological and physiological dependence on a substance or practice beyond one's voluntary control.
Source: The American Heritage® Stedman's Medical Dictionary
Copyright © 2002, 2001, 1995 by Houghton Mifflin Company. Published by Houghton Mifflin Company.
That's not addiction. It's compusive behavior, but it's not addiction.
Consider the difference between the alcoholic and the compulsive gambler.
The alcoholic is actually experiencing a change in brain chemistry. If he doesn't drink, he suffers actual physical symptoms: he gets the shakes, DT's, gets sick, etc.
The gambler just gets pissed off when he can't gamble. He suffers PSYCHOLOGICAL symptoms. He gets antsy, annoyed, tries to get to the track. He's unhappy. NOT PHYSICALLY ILL.
Hence the difference. One is a physical phenomenon. One is a psychological phenomenon.
Addiction is not the same as a compulsive behavior.
Now, to games: What you're describing is a little bit obsessive-compulsive, but it's certainly not an addiction. And, sure, you can get yourself in a whole lot of trouble being obsessive about something. Maybe if you find out that you literally can't stop playing a game, you've got a bit of a problem and you should back off (or maybe talk to a good therapist).
BUT, it's not addiction. No matter how often people try to frame it as such.
Umm... NO.
An addiction is generally a physical dependency on some chemical. Alcoholism, cocaine use, heroin use, cigarette smoking, morphine injection, and crack smoking all represent addictions. They are addictions because you can't just stop using the substance involved without (sometimes serious, even fatal) physical side effects. Also, it usually requires an impressive amount of personal will and effort to escape the addiction. And, untreated, the addiction will usually cause you grave harm.
Playing videogames is simply not an addiction. For one thing, it doesn't cause you grave physical harm (NO, carpal tunnel doesn't count -- smoking causes cancer and cocaine dissolves the soft tissues of your sinuses, causing lots of bleeding and other nasty effects). For another, it doesn't wreck your brain chemistry. For another, if you're trapped on a desert island (or visiting in-laws) and can't play your games, you won't go into convulsions and die.
Let's stop equating relatively harmless compulsive behavior with addiction, shall we? It's not helpful.
FIRST, there is an activity enjoyed by a relatively small segment of the population. This activity is mysterious to the mainstream, perhaps it's a little beyond their ability to adapt to.
THEN, the activity becomes more popular. What was once a relatively minor thing becomes a phenomenon. The people currently In Power (tm), being old farts who have a hard time adapting to change, notice the phenomenon and are threatened by it. It is mysterious and strange, and like The Thing, it must be destroyed.
THEN, despite their best efforts, they fail to destroy it. People really like it, and tell them to get stuffed. They assume that people just don't understand the terrible thing they're doing to themselves, and they try to figure out a way to frame it so that they can bring social pressure down on the phenomenon.
THEN, usually, they invent some imagined syndrome, some terrible ailment caused by the new phenomenon. Recently, thanks to Hollywood's fascination with Heroin, "Addiction" is the popular ailment. The mainstream applies the ailment to the social phenomenon in an attempt to stigmatize it.
THEN, the stigma makes the phenomenon more popular. Inevitably, the phenomenon becomes mainstream, and the mainstream gives up trying to kill it off.
Examples: Rock and Roll, television, education, marriage (really! back in the years of the early church, it was considered bad for the soul), bathing, reading, printing books in the vernacular instead of latin, Science Fiction, video games, disco, folk music, and new age thinking.
Extreme example that hasn't gone mainstream yet: porno. Porno may never go mainstream in this country because of the puritan curse (the mindset passed down from puritans for the past several hundred years that sees sex as dirty and dangerous and sinful).
Interesting side phenomenon: goody-two-shoes types who were never really into the phenomenon (whatever the phenomenon might be) who deal with their guilt by buying into the ailment theory, and who try to claim social status by telling everyone within earshot that they've "overcome" their ailment.
Amazing irony: television, which is now mainstream, is considered "okay" to spend six hours or more a day with, remote in hand, brain in neutral. But when a person plays a video game (which engages their mind and imagination) for six hours, they are immediately pounced on by the "gaming as addiction" idiots.
Interesting side result: kids raised in gaming-friendly households will end up happier, smarter, and more alert than their television-addled counterparts.
Sigh... How typical.
People who have lived comfortable lives, accepted by others and popular in school, usually have your attitude: "People love me, why would anyone pick on me, everything's okay and people who aren't like me are different and wrong".
People like ME, on the other hand, who have been picked on by others all their lives, think that people like you are sad and deluded.
We know from experience that people are nasty and brutish by nature, and that the only reason they aren't killing each other in the streets is because of the rule of law, and the social pressure religion and society puts on people. We also know that when people can think of a way of doing something nasty to someone they don't like, they DO IT. Especially when they figure they can get away with it. Because, you naive man, people are EVIL. Deep down in their black little hearts, they're nasty and crooked and no, they can't be trusted.
Do some people overcome their inner natures and become good? Sure. Do most people fake it, occasionally stepping out of line when they think they can get away with it? Yes.
When people think they have an excuse to pick on someone else, they do it. Hang around Slashdot for a while and you'll see it in action: human nature, red in tooth and claw. Whenever they can label someone else, call them "that fag" or "that goth freak" or "that idiot geek" they feel as though they have carte blanche to do whatever they want to that person, up to and including red murder.
So, don't tell me how sorry for me you feel because I don't trust my neighbors, or you. I feel sorry for YOU, you noob. Because you're in for some nasty surprises in this life.
That's cool... Interesting side note: if Bill Gates himself isn't using wireless, but rather cat5 in concrete channels (!!!), and he knows as much as anyone about the two technologies, well... Maybe he agrees with me about their relative merits.
I bet he put the wires in concrete channels to prevent anyone from trying to sneak in a sniffer...
Oh, and I forgot:
During a thunderstorm, the interference affects you indoors as well as outdoors. Because it's the electric field produced by the charged clouds (and locally, by lightning strikes -- a huge current causes a huge EMF) that's causing the problem, NOT the rain.
Actually, that's kind of a cool point. Although, nowadays most computers use LCDs, which don't put out as much of a signal, hence (I hope) they'd be harder to try and monitor.
;)
Here's a link to the Van Eck writeup (although you've probably read it, maybe the others haven't); it's one of the coolest things I've ever seen:
http://www.shmoo.com/tempest/emr.pdf
BTW: I bet Bill Gates' house IS shielded, although not deliberately. Poured concrete is generally reinforced with rebar, which might mess with the signal a little. I don't think it'd be a good faraday cage, because it's probably not all completely connected, but sections might be...
Well, let me address some of this:
1. Hackers already play around with wireless networks. They do it all the time. Why don't you google for "Warchalking" or "Wardriving" sometime? It's a leisure activity for them, they do it because they can. It's fun and interesting. THAT is their motivation.
2. It is only "not easy" to do these things until one motivated hacker produces a tool. Then everyone does it after a two minute download. Remember the concept of the "script kiddie"? Who do you think writes the scripts themselves? Do you think every script kiddie out there is building his own stuff? Or that he even understands how the stuff works at the system level? Of course not. All he knows is that he downloads a script and he runs the magic incantation to mess with someone he doesn't like. Don't make the mistake of thinking that just because something is nontrivial, it won't be done.
It only has to be done ONCE for everyone to be able to do it trivially and easily. By the way, a quick google got me a list of several wireless packet loggers that already exist. Finding specific tools is left as an exercise for the reader (have fun, it's interesting).
3. I've just GOT to respond to the jammer issue. I googled for this, too. All the frequencies involved in 802.11 radio comms are well known. so are their power limitations. It is trivial for someone with even rudimentary electronics knowledge (which you can pick up from a library book or a correspondence course) to build a simple radio transmitter and tune the frequency, is it not? And it is equally trivial to arrange for a power output of, say, a few watts, which would drown out any node within range.
So, how hard do you think it would be for an interested party to build one? All it takes is a trip to Radio Shack and some reading.
It isn't that it's likely this will be widespread. It's that it is possible. Why would I rely on a technology that can be interfered with so easily? You can't mess with MY LAN unless you break into my apartment. But someone could mess with a wireless setup from their car, out in the street.
THIS is my point.
4. Strength of signal: yes, this does matter. It determines range, and how well your signal is going to get through the walls of your house. AND, although you've already pooh-poohed this point, how easy it is for someone to jam you.
5. You mentioned cordless phones. Excellent! Because although YOU don't, and "most people" don't, SOME people DO. Case in point: my ex girlfriend took a plane into Long Island to visit me a while back. She had a cell phone which was capable of analog mode. I warned her, don't use her cell in Penn Station because it'll get cloned and she'll get screwed. Do you think she listened?
'Course not. So she called me from the lower level of the station. And her phone got cloned. Within three weeks, her cell phone bill came back in the several-thousand dollar range. As best we can figure, someone cloned her phone on day one of her visit, then made a shitload of copies and handed them out on the cheap. It took her weeks to straighten it out with the phone company. She was really pissed off about it, too.
Just because YOU don't do it, doesn't mean that all sorts of nasty people out there won't.
Just thinking aloud.
There are a lot of different types of outsourcing. Government agencies outsource in two major ways: they hire consultants to come in and do a set chunk of work, and they hire outside companies to create entire projects.
Some of this outsourcing is good. When an American company wins a bid, AND the American company is staffed by actual Americans, it's good for us and for our economy. Private companies that handle government contracting generally pay very well, and the work can be interesting.
Similarly, when the outsourcing involves bringing an American contractor in to do a little work here and there, that's good too. Again, good for us and good for our economy.
But there IS a problem with outsourcing. The problem is that since about 1999, companies hired to produce entire projects have sometimes outsourced THEIR entire operation to Indian firms, without even mentioning this to the government agency they're supposed to be working for. Other companies which supply staff have been using H1-Bs. Then they lowball all their bids and push other companies out of their niche. You see this a lot more than you'd like; there are departments where three quarters of the staff are noncitizens -- at agencies funded with taxpayer dollars!
Outsourcing itself is not necessarily bad. If it is done in a way that keeps the jobs here in the U.S. it's fine. It's when non-immigrant foreigners are used that the whole thing turns ugly.
ESPECIALLY when our tax dollars are being sent overseas. That's unforgiveable.
The popularity of wireless mystifies me. Although it is riddled with problems, from poor security to unreliability, people love it. Even when they're in their own homes, and all they have to do is run an ethernet cable to have a completely reliable, secure LAN, they STILL go with a wireless solution -- usually at a much higher price (paying for a base station, wireless card, etc).
Before anyone responds to tell me how wonderful wireless is, until you can convincingly make the following issues go away, you won't get anywhere with me:
1. Security: Anyone with a net stumbler can see your network's parameters and possibly use them to play with you. Even if you're using WEP, it'll only be as secure as your implementation. And don't forget, someone can just log all the packets you're sending and try to decrypt them later.
2. Reliability: weather conditions can screw up your wireless signal, as can anything else that causes interference, from electrical equipment to thick walls. Furthermore, someone who doesn't like you can jam your signal fairly easily. Which, by the way, would be a lot of fun if you didn't like your neighbor. Wait for him to look really busy at his computer, and turn on your jammer. Hilarity ensues. Great fun for the jammer, not so fun for the poor sap who loses his net connection right in the middle of a download.
Some will say that with improving encryption, squirt transmissions, better equipment, etc, wireless will improve to the point where the two issues I mentioned will go away. Fine. But this requires more processing to handle the connection, which slows the connection down. And the FCC limits how strong your signal can be.
I just don't see how wireless is ever going to be a good solution. People will continue to use it -- of course. But people still use Windows 98, too.
Yes, yes, yes... It was a troll. Chill.
Well! Looks like I touched a nerve.
Touche for me!
Booga booga booga!
Yeah, you're probably right. Who wouldn't want to be able to take summers off and work only a few hours a week... Who wouldn't get into the prospect of being able to crush the dreams of the young with one mighty sweep of the grading pen, to be able to blather on and on about his ideas for hours at a time, while young people are forced to listen respectfully? Who wouldn't want to spend the rest of his life on a college campus, with his own cozy little office tucked away in an ivy covered building, able to hobknob and go to cocktail parties and conferences, be addressed as "professor" or "doctor" and whatnot? Not having to worry about building software that actually WORKS, able to fart around with little academic proof-of-concept work, writing an occasional paper almost no-one will read...
Now that you mention it, hell yeah, I want to be a professor too. Sounds easier than MY job...
Hey, you can get a Sentry Fire Safe large enough to store a laptop, all your media, and your class notes and assignments for 175.00. It'll protect your laptop from everything up to a near nuclear strike, and because it's got a steel shell it'll even give you some shielding from EMP. More importantly, it'll keep your roommate's grubby little mitts off your stuff.
I highly recommend one. They rock! As a side benefit, if your R.A. decides to snoop around for "haxors" he won't be able to get HIS nosy mitts on your stuff, either.
I think it's one of those things where a teacher learns that a little bit of something, say flowcharting, is a good thing. So the teacher (using adolescent logic for some reason) reasons that if a little is good, a lot must be GREAT. And it becomes their new religion.
;)
I think it's a good idea to do SOME design up front of your functions, although I think flowcharting is a bit old-hat (most people use pseudocode these days, don't they?). I think use cases and UML are useful because they let you tinker around with a problem without having to code it up. They're a nice way of playing with ideas, in other words, sort of like a mental lego set. Also, they help you keep track of what you want to build, sort of like an architect's notes.
But I DON'T think it's a good idea to listen to college professors about any of this. Remember what Woody Allen said:
"Those who can, do.
Those who can't, teach.
Those who can't teach, teach gym..."
If college professors were really any good at any of this stuff, wouldn't they have started companies and made their bones? Why aren't they building software?
It's a valid question.
I think if you approach UML diagrams as a bureaucratic annoyance that's been forced on you, then using them is going to suck and they're not going to do you any good. Departments that force UML on people end up just pissing them all off, which ruins its usefulness.
I think if you use UML as a "sketching on a napkin" tool to think your classes out, it'll be much more useful to you. I use use cases and UML to think about problems, and play with ideas. Sometimes I'll see something I hadn't noticed before, a piece of a class I'll need but which I hadn't anticipated. Sketching with UML lets you fool around with your design, and tinker with it.
Basically, it's like working an engineering or physics problem, sketching out your diagrams and fiddling with them, letting things occur to you, etc.
You should give it a chance. Ignore all the "Big Design Up Front" sticks in the mud and use UML as a lego set. You'll like it more that way, I think.
The vast majority of people, who hold jobs that are purely local in nature (thus cannot be outsourced) won't notice anything at all. Plumbers, mechanics, construction, retail, and so forth won't be affected one iota.
People whose jobs are able to be done via a network connection are pretty much screwed. That's a big category, with a whole lot of middle-class jobs in it, not all of which are IT oriented. So, people being smarter than companies are willing to admit, people will lean away from jobs that don't contain a large, non-outsourcable component. With any luck, this'll bite the pro-outsourcing companies in the ass because they'll find it impossible to recruit for jobs they haven't outsourced yet.
Comp Sci types like me will stick to the following types of jobs (which can't be outsourced):
* Positions in academia, especially college IT support
* Positions in government (state, local, federal)
* Positions with government contractors (bonus points for security clearance)
* Positions in local organizations that need IT staff, like hospitals, police departments, libraries, etc. And small contracting companies that serve them.
* (last but not least) Positions with companies doing types of IT work that can't be outsourced, like on-site system administration and such. But these jobs are far less trustworthy than the others.
Overall, outsourcing is a nasty, brutish trend demonstrating the complete lack of loyalty or trustworthiness of Corporate America. But it isn't the end of the world. The trick is to get away from sectors that are affected, and carve yourself a place within a more local, trustworthy sector.
Just my two cents...
People will get fed up with working for private industry and they'll stick to local jobs, skilled trades, government jobs (like contracting, or doing IT for their county, etc), academia...
People that can't find the kinds of careers they want here will get out of the country, just like people did in Europe after each world war. Lack of opportunity has always driven immigration. It will be the same in the future. People who CAN leave, WILL.
Brain drain; it's a classic.
I find strict object-orientation very comforting. It makes building a very large project from very small pieces much, much easier. Also, there's the reusability, the ease of maintenance... It's kinda neat in my view. I don't think it really limits you all that much. Although, there is an art to it. I've seen object designs by good and bad programmers, and the bad ones reeeeeeeeallly know how to hang themselves... ;)
On the contrary; I think they ARE very similar, but perhaps I mean it in a more philosophical sense than you do. I don't mean they look and feel the same, I mean they can do the same things. Similarity, for me, is all about capability.
Don't get me wrong, I fully agree that certain languages are more suited to certain tasks, and that's fine. And I totally agree that an ecosystem is great, and there's plenty of room for all languages, with their differences.
But when you consider general-purpose languages like Java or C# (which are practically twins), or C/C++, you have to admit they have most of the same facilities, and therefore are similar.
Having said all that, you have to admit there IS some convergence going on, syntax-wise. Already similar languages are getting more similar every day. Whether you think that's a good thing or not, well, that's up to you...
Holy crap, am I reading her webpage correctly or has she actually managed to build a Commodore 128 into a Hewlett-Packard tower case???
That's extremely odd -- and therefore, very cool. But I think it needs some lighting mods, you know? Set the case to glow from inside, through all those air-movement slats. It's just BEGGING for a couple of neon tubes.
I'm thinking "radioactive green".
Here's the language I'm waiting for:
C/C++/Java like syntax with curly braces, semicolons and etc (I like the rigid nature of it, I feel it's more unambiguous than more open syntaxes);
Java style OOP, where everything is a class;
A rich library with all of the tools I might need to do my work;
A single, well thought out library to handle GUI development which works in approximately the same way on all systems (this means using a virtual machine, of course, but many languages already do this so it isn't much of a leap);
Reasonable speed on older equipment (a good minimum baseline for me is a 500Mhz Pentium II with 128MB of Ram).
There are a few languages already which are partway there. I think Java is pretty close, except for their multifarious GUI libraries, although I don't find that TOO much of a hurdle because Swing seems okay. I just wish they'd streamline it a little, it's such a bear to work with.
If "it's possible somehow" is your measure, then there's no reason to choose Java over assembly
;)
That's not really what I meant. I think that languages evolve the same way creatures do, i.e. that languages which are more effective survive while less effective languages die off. I think that the current popular set of languages all share the same set of capabilities because these capabilities are the set that have evolved as the "necessary" set. In other words, there are a certain set of abilities that are demanded by most users; the languages that support them are more successful; and consequently, most of the "big" languages currently are very similar.
It's not really about being "Turing complete" although that facilitates the process. It's about the market acting as a darwinian laboratory which is spawning useful languages.
Anyway, that's what I meant.
Having said all that, I prefer static typing, myself. Again, there's that personal preference rearing its head...