I don't know... I kind of prefer it having at least some consequences other than having to hold your breath, like in 2001. That always bothered me more as a nerd than the explosive decompression.
Now, from what others have suggested, there may be other effects, such as frostbite (maybe, maybe not), a full-body bruise, very rapid de-oxygenation (your lungs working in reverse), and maybe your blood wouldn't boil, but your sweat and your tears would, and you might go blind...
And so on.
I'd rather have them explode, at least, than have absolutely no ill effects and go on to save the day without even a shortness of breath.
Watching John with the machine, it was suddenly so clear. The Government would never stop, it would never leave him. And it would never hurt him, never shout at him or get drunk and hit him or say it was too busy to spend time with him. It would always be there and it would die to protect him. Of all the would-be fathers who came and went over the years, this thing, this machine was the only one who measured up. In an insane world, it was the sanest choice.
If you are trapping a condition that's truly exceptional and might not be recoverable, an unchecked exception makes sense (and saves you from a lot of try/catch blocks in your code).
Shouldn't that be my decision to make, not the library author's? Why do checked exceptions exist?
Actually, I've worked with a number of horrible and mediocre programmers (some of them ex-Motorola people), and I can tell you definitively that Java does not save them from themselves.
No language can. But it comes a lot closer than other languages do.
not a set of complaints written by someone who's ever had to write a nontrivial piece of code in Java.
True enough. It's difficult to get around the fact that even the simplest things take 2-3x the code that they would in almost any other language. Including C++/C#, and that's sad.
Totally unsubstantiated posturing.
No less substantiated than the GP's post, which has a +5 insightful, for some reason. Mine is 50% insightful, 50% troll.
Java enforces standards and conventions which improve productivity and maintainability.
I'd debate that about some of them, at least. Maintainability, maybe. Productivity, probably not.
In any case, I don't see why the language itself should enforce those standards. Perl has a few I can choose to enable -- use strict, for example -- and I can definitely say they improve maintainability. But I can turn them off.
I still wouldn't want to use either for any kind of substantial enterprise application development.
Even if you could enforce similar restrictions on them? I'd say I'd much rather have some of Python's more interesting features, along with its cleaner syntax, even if I had some of the stricter Java things along with it.
Point is, I can develop a substantial enterprise application in Perl or Ruby. I really can't easily develop a quick prototype in Java.
On a less snarky note, let's just say that some people (the people who believe in programming by contract, for example) like a visual summary of what things a method consumes and what it produces -- and exceptions are something that can be produced.
Again, something you could do with a development suite. You could have it insert comments for you, or provide some sort of simple way of finding that information out even if nothing is actually stored in the code.
The difference is, Java forces a methodology on you. Perl (and Ruby, etc) let you do whatever you want -- including force a methodology on yourself.
But considering the deficiencies of the language, including a lack of real threading support (and the ugly kludges this entails for Rails web apps), I don't see how it wins as a panacea.
I agree, actually. I'm kind of disappointed that none of the really good languages do real threading. Python comes closest, but the GIL kills it.
I also agree that we shouldn't be so lazy, and that sometimes it's better to just go ahead and use Java, or even C. But now we're back in the sane realm of "best tool for the job", instead of talking about "Perl zealots", and I'm OK with that.
Although I do believe a dynamic language can, ultimately, be made to perform at least as well as Java, it hasn't been done yet.
Besides, shouting down someone isn't necessarily screaming at the top your lungs. It can be someone simply talking over
Good, let's use that word instead. Talking over you.
I admit I don't actually have that happen to me, or see that happen. I still don't think the right thing to do is come to Slashdot (of all places) and complain.
Imagine you were told you a weak pathetic little man at least several times a week by clients or co-workers? It'd get annoying wouldn't it? Secretary is a keyword for pathetic little woman.
No, secretary just means secretary.
I've actually developed quite a lot of respect for people in this kind of position. For example, one company I contract for has a woman who had a severe case of amnesia doing secretarial work -- filing and such. She's recovered her abilities of memory somewhat, but she still has to organize her life in written notes to herself -- she might forget to take a shower, for instance, if it wasn't written in her morning schedule.
And despite all of that, she's managed to make herself useful by organizing files in an office. Perhaps because of it -- filing is essentially putting something away and having to remember where it went, and she's a master of writing notes to herself to help her remember things.
This isn't about social acceptance. This is about a job and doing work for an employer.
If it's really only about doing the job, then shut up and do the job.
You see, it IS about social acceptance. I don't mean to belittle it -- certainly you need some social acceptance in order to do your job -- but let's be accurate here.
Bullshit. You respect new hires because they have certain qualifications.
I'm not the boss, so actually, no I don't. I respect new hires if they show those qualifications.
So a woman is expected to go against her nature and pretend to be a man?
I'm sorry, did I say that? Did I even use the word man here?
Your comment is utterly repugnant.
You seem so determined to turn everything I say into something sexist or repugnant. I certainly wouldn't want to work with you, with that attitude.
I can imagine it -- first day on the job, I mention how this pointer represents... and you'd go on a rant about how pointers are so phallic and why can't they be called something neutral, like indicators? Or why can't we use iterators instead?
(You could point out that I'm doing the same thing you did -- I took something you said much farther than you intended, put words in your mouth, etc. That's actually deliberate. It's an object lesson for you.)
But you said later on you have to change? There you said you don't have to change ("act like one of the boys").
You really, really need to work on your reading comprehension.
There's all kinds of change in the world. It is now 2:48 PM, and in less than a minute, it will change to 2:49. When I turned on my air conditioner, my hot room changed to be cold.
So where does this assumption come from that the only way a woman can change is to "act like one of the boys"?
There's no contradiction here. I do not expect you to act like a man. I do expect you to act like a decent and fair human being, and your comment shows neither. It's called "prejudice" -- you'd decided before you started writing that I was a misogynistic bastard, and nothing I can say will change your mind.
Would you enjoy hearing small dick comments every day?
I don't know, hasn't happened. Here's a thought though: Maybe you should try it?
You're like one of those single people who give parenting advice to parents.
I'll admit that.
At the same time, sometimes it does help to get a different perspective, a
I'm curious... Do those terms also apply to their DRM-free stuff? If so, what's the point (legally) of buying something DRM-free, instead of DRM'd?
However, all of my legitimate media either comes directly from a CD (or DVD) or was a free download (Star Trek New Voyages, for example).
Anyway, are hard drives special or not? If they're not, then the iPod (and the Rio) are illegal, because that's a copy of a copy -- you copied it to your hard drive first, and then to the device. If they are special, then why can't I copy it to as many hard drives as I want?
Point is, if you do have a successful career, you aren't going to be coming to Slashdot to complain about that career. In fact, you could then go to your job to complain about Slashdot.
You could certainly complain about Slashdot, although if you really took those two comments personally, you really need thicker skin. If I reacted to everylittlething, I may as well just unplug my Internet connection and go hide in a cave.
I'm not saying these things are OK, but unless you have a plan to eliminate morons (even unusual ones), that's how it's going to be.
If you want the same security, stability, and lack of choice in software you had on your Mac, you can run Linux!
But here's the best part...
We don't have to beg for anything! In fact, they beg us to buy their products, because PC manufacturers actually have something called "competition"! What a novel concept!
Actually, wmv9 works fine; it uses ffmpeg's "wmv3/wmv9" decoder. I don't know if I had to go to any great lengths to get all of libavcodec, but I definitely no longer need a 32-bit mplayer.
What I don't have working is wma9. Works with 32-bit mplayer, not with 64-bit. However, I have exactly one file that needs that...
What makes my stomach turn is the underlying mechanisms used for it. For example, a typical object in Perl is a hash tied to a namespace, which is kind of a bizarre way of doing it. But once you get past the syntactic ugliness of it, there are quite a lot of programs that look good. Even the syntactic ugliness itself starts to look good, once you understand the rationale behind it -- which requires actually getting familiar with the language.
I find perl to actually be quite beautiful in how it works, not in how the code looks. And I find Java to be the opposite -- no matter how good it looks, it still bothers me how much work I have to do, and every now and then, the very concepts are just disturbing. (Typecasting to Object and back because we don't have templates, for example -- and the template system isn't great, either.)
If we want to talk about superficial ugliness, though, Java loses:
class Hello {
public static void main(String [] args) {
System.out.println("Hello, world!");
} }
Oh, forgot to mention -- it won't work unless the file is called Hello.java, and the resulting class file must be Hello.class, unless you want to mess around with the java/javac commandline.
Now, the following works about the same in Perl, Python, or Ruby:
#!/usr/bin/perl print "Hello, world!\n";
The only difference is, it can actually get simpler:
#!/usr/bin/ruby puts 'Hello, world!'
Now, you know more about Java than I do, so I challenge you to come up with a Java equivalent of this, and tell me your version isn't uglier:
#!/usr/bin/perl use strict; use warnings;
while (my $line = ) {
chomp $line;
last if $line =~/^q(uit)?$/i;
$line = reverse $line;
print "$line\n"; }
But I can't even read that, and the only reason to write that way is if you're trying to win an Obfuscated Perl contest. (Yes, there is such a thing, but the above example isn't even close to what you see in those.)
The reason I made an exception for PHP is, it's actually a case of, anything PHP can do, Perl can do better. Almost all of the features that originally made PHP so great have been found to be very, very bad practices if you're doing more than, say, a webcomic page. About the only sort of unique one left is the <?php insert code here ?> syntax, and that's a bad idea in the middle of a webpage (though in response, there's now an engine to embed Perl in HTML), but maybe OK in reverse (by doing "?> <p>insert HTML content here</p> <?php" in the middle of a program), but Perl has multi-line MIME-like literals which make that easy enough, for the very rare instances where it's even close to a good idea.
The ONLY reason PHP is good is that there is so much written for it, and that so many people just getting into web development have the mistaken assumption that web backend == PHP, or that PHP is somehow easier than other backend languages. As wrong as that assumption is, it means that there's an army of people who know PHP -- which may or may not be a good thing. I like to think of it as Linux/Apache's Visual Basic, and I know I never learned Visual Basic.
Either 32-bit Firefox or nspluginwrapper will work, and I believe there is a repository that has nspluginwrapper.
32-bit xine, mplayer, and win32codecs are nearly obsolete by now, as the vast, vast majority of the win32codecs have been reverse-engineered and re-implemented in 64-bit mplayer. I believe media is one of those applications where 64-bit actually is much faster, too, so if you're watching high-def, it does help.
That still leaves a 32-bit flashplayer, which you must download from the Adobe website. But that's only the one package, which is a lot easier to manage than ALL of Automatix. And I've found that it's almost inevitable that you'll run into one or two packages that aren't in the repositories, and I even have a plan for how to deal with that, but every time I want to pull my hair out because of problems with Ubuntu, I think back to my old Powerbook and how much of a bitch it was trying to keep everything updated on OS X.
So if I understand you correctly, the key thrust of your argument is, "Your problems are trivial, and you should just suck it up."
You didn't understand, then.
If so, I find I must disagree. Everyone deserves basic human respect.
I'm not disputing what anyone deserves or not.
This is the kind of stuff no one wants to hear, so it's very tricky to communicate properly. It's tricky enough that a bunch of psychologist/philosopher/self-help types have banded together and formed an organization called "Landmark Education", whose primary purpose is to teach distinctions like this one.
Specifically: I'm not saying anything about what anyone deserves; you made that up. I deliberately avoided talking about what people deserve, because it won't help you. All I'm doing is telling you what will help, if what you want is to be a woman who is respected in IT.
And even if what I said was "Your problems are trivial, and you should just suck it up," that still says absolutely nothing about what you deserve.
A professional should get the same respect any other professional should get, until they've proven themselves incompetent.
Or maybe no one should get respect until they've proven themselves competent?
But it doesn't matter, because what I was talking about has absolutely nothing to do with competence.
people who are willing to say, "This is what it is, but it's also wrong."
This is what it is, but it's also wrong. This is what it is, but it's also wrong. This is what it is, but it's also wrong. Oh god, baby, I feel so sorry for you...
Do you feel better yet?
Because that's all that will do. Not that there's anything wrong with wanting to feel better, and I have no problem with some allies telling her that. I'm even willing to do it, honestly, sincerely, without a hint of sarcasm.
It's just that it won't actually help deal with the problem.
I learned this the hard way in grade school. I was bullied every day... (So don't you DARE tell me I don't know what it's like. Hitting on you can't be worse than HITTING you.)
I didn't do anything about it. I just let the rage build up, and my mother was completely confused as to why I was so angry when she picked me up, why I'd lash out at her over nothing.
When I finally told her about the bullying, she might have called the school -- I honestly don't remember. I do know that I talked to teachers, and tried to get someone to intervene.
And sure, the bullies got in trouble when the teachers were there to see it. When they even knew what was going on -- I remember being held down and tickled as torture, and no one did anything, because they just saw a kid rolling on the floor, laughing and laughing...
Well, eventually, it got to the point where the physical bullying stopped, and they simply teased me -- at which point, it still took awhile, but I eventually learned not to react. When I stopped reacting, they stopped teasing.
But nothing I did made the problem go away until late grade school, when I did talk to some of the kids, who admitted to not having a problem with me, and just going with the flow. And when they realized how much it bothered me, they stopped.
Then early middle school, when I hit puberty, and I got big. I was bigger than everyone else -- slightly overweight, but I knew how to throw it around. I got into a few fights, and the bullying and teasing stopped.
By the time we graduated high school, the same class had completely eliminated cliques. We were all one big family. It was actually kind of bizarre -- the few kids who were still antagonistic by then had left, either to other high schools, or to become stoners -- so maybe my talks with the people who "just went along" had some impact.
I'm not advocating violence as a solution. What I'm saying is, running home to your mother doe
Also, Sun (and IBM, etc) has defined such a wide range of standard classes that it seems like the art of being a Java programmer is find and superficially learning all the APIs you need for a given project as quickly as possible, instead of developing infrastructure code of your own
This is actually a good thing, and quite true of Perl also -- see CPAN.
In other words, let's say my project is to read an Excel document and produce a chart for the Web -- or something similarly simple. The actual logic of the program is close to nil, it's just a conversion -- but there are so many similar problems to be solved.
If I can go on CPAN and find a module to read Excel (or even just CSV), and another module that can generate charts, and maybe a third module that handles image formats, I can stick them together like legos and my program is done. Why would I want to waste my time duplicating all the effort that went into those modules?
That's why I use Perl, actually -- the #1 reason is CPAN.
But it's nice to have a decently powerful language ready, too, for when you actually have to write a significant amount of logic. I think Perl can hold up well, but it's ugly. It's fucking hideous.
Unfortunately, I haven't really found anything better, yet. Ruby and JavaScript are my two favorites right now, and I hate both of them almost as much.
Perl is a very loose language by comparison, not at all suitable for mission-critical code
I'll just say this:
In Perl, I can: use strict; use warnings;
It may not be enough, but it's there, at least. One can certainly imagine writing filters that make the language more restrictive. Basically, if you use a restrictive enough subset of Perl, you may as well be writing Java, so all you need is a tool to force that restriction on you.
It's much more difficult and kludgy, though, to make a loose language out of a tight, anally-retentive one like Java. That's why, if I was going to write a language (and I keep meaning to), I'd start with something extremely loose and simple, and let people extend it and restrict it to make whatever language they want out of it.
The question is whether there is anything useful you can do in a particular language that you can't do much better, simpler, cleaner, faster in another language.
Cobol, in particular, is obsolete for a good reason -- just about anything you can do in Cobol, you can do better in -- well -- anything else, even C. The only advantage of learning Cobol is people will now pay you large sums of money to deal with their ridiculously huge libraries of legacy code, which just keep getting bigger because they keep hiring more people like you to make it do that one little thing they need.
I believe you're right about a significant number of other languages, because most languages suck in some way or another. But I don't think I would ever start a new project in logo, fortran, or cobol, ever.
Making you actually handle the exceptions your code is declared to produce is "retarded"?
No, making you actually declare every single exception that might possibly happen, even if you don't intend to catch all of them, is retarded.
Let's say I've extended "Hello, World" to ask you for your name, so it can then say "Hello, <name>!"
class Hello {
public static void main(String [] args) throws IOException...
Obviously, "Hello, World" is a simple enough program that IOException doesn't need to be caught. I'd much rather just leave that off, and let the program crash with an exception error. And I can do that, but I still have to declare it, for no good reason.
For that matter, there are plenty of cases where you might want to handle the exception, but at a lower level. Why should the intermediate levels all have to know about IOException?
For example, I might be five calls in before I hit the exception. Could be five separate methods that now need to have "throws IOException", even though all I really intend to do is catch it somewhere out in the main program loop and throw up an error dialog, then either quit or try to restart the program. (Re-initializing all data structures might be faster than starting the program from scratch -- remember, this is Java, and Java can take a LONG time to start.) But that means there's maybe one method doing IO, and one method which catches the exception, and three methods in between that have to know about the exception for no good reason.
Sure, there are runtime exceptions. But I have no control over what libraries use them or don't, and I distinctly remember that there were disadvantages, though I can't remember what they are. (I haven't used Java for years, on purpose.)
From a technical point of view, I can sort of see why it might make sense for the generated code to contain information about what exceptions to expect. It might even be a best practice to provide some comment stating what exceptions might be thrown, maybe even to have some system which watches for this kind of comment, the way Eclipse can automatically generate your documentation for you, and warn you if you don't have properly formatted comments for every method.
But it shouldn't be required any more than documentation is required. You can always write a third-party tool to audit your code, you don't have to throw up a compiler error if not everyone wants to conform to your precise coding style.
"So, what practices, procedures, and habits have you developed in your years of coding that are intended to prevent the introduction of bugs?"
Unit testing. Tight development cycle. Avoid global variables, and use namespaces where possible. Comment more than you think you'll need to. Turn on warnings in the language during development. Use stubs and prototypes so you can get something that sort-of works, so that you can keep it sort-of working as you fill in the details (see Unit testing and Tight development cycle).
Also, modularity is good. A chunk of code shouldn't have to know about more than what it absolutely needs to. And my Hello World program has no need to even know that an exception exists.
We will still stare at your boobs. Maybe less overtly, maybe just a sly glance time and again. But will won't ever really stop.
That's not staring, then, is it?
And who's Will?
Seriously, probably the best social skill I've ever learned is peripheral vision. Not because I want to be a pervert, but because I'm trying not to be -- it gives me the ability to treat women with the respect I'd like to, even if my libido disagrees.
Also, I'm a true geek, which means if I've got something interesting enough to say or to work on, I'll actually forget about your body for awhile, even if I have to talk to you. Apparently, I'm not alone.
You blast Perl, and then go on to suggest Java, of all things?
The reason there is bad code in Perl is, it doesn't actually "force" you to do anything. There are so many ways to do it that it's very easy to write crap -- but it's also very easy to write good stuff.
It makes great programmers produce merely adequate code, makes good programmers produce bad code, and makes bad programmers think they're great.
That works even better if you apply it to Java.
Java has things like static type checking -- to the point where you must explicitly declare what exceptions you might run into. Before templates, I was actually forced to typecast to and from Object...
This is flatly retarded, by the way -- if Java can give me a compile-time error that my method didn't declare a particular exception, why can't I simply omit all such declarations and let the compiler add them back in?
But then, managers like to see Java as a good thing precisely because it's so limiting. It forces everything to some level of mediocrity and sameness, meaning horrible programmers are just slightly bad because Java keeps them from shooting themselves in the foot. It also means you can hire a team of horrible programmers, and replace any one of them with another at any time, and the project will continue moving forward. And it's great for programmers, because they can look busy all day writing interfaces, typing ridiculously long method declarations, and dealing with the complexities and limitations of things like single inheritance, without having to get much actual work done (or do much thinking).
But what people are finding out is, flexibility like Perl's is really useful. Look at Ruby. The syntax looks OK on the surface, but get into even marginally complex programs and it can look as ugly as Perl. But it's also amazingly flexible, quick to code in, and makes a bright programmer into a brilliant programmer -- whereas Java will take your bright programmers and beat them down into codemonkeys.
You can point to all the Java in the world, but when Ruby runs probably 10 or 100 times as slow as Java, and people STILL use it to run websites, and simply buy more hardware? I'd say that proves we have some damned good languages. Obviously better than Java -- pick any site that's written in Perl or Ruby (even Python), and not Java, and ask yourself why.
And yes - there is a non-trivial disadvantage to doing things the nspluginwrapper way rather than using a simple package from the repositories: upgrades.
I agree. In fact, I really wish Ubuntu made this easier...
That's one thing I could always say for Gentoo -- their packages might explode in your face, but at least you could usually get a package for odd things, including packages for a 32-bit Firefox, for nspluginwrapper, and for a 32-bit flash. In that respect, Ubuntu 64-bit is a bit behind.
There are still a number of packages in the universe repository that haven't been properly ported to amd64 yet and either behave strangely or crash all over the place.
Here, at least, 64-bit Linux does have an advantage of upgrades.
That is, in five or ten years, when everyone's using 64-bit and all those lazy programmers have finally gotten around to properly porting things, I'll just update simply and correctly (for everything but Flash), but if I were on 32-bit, I'd have to reinstall.
Neuromancer was damned fun to read, even if large parts of it seem completely unrealistic now or in the future.
For that matter, "Journy to the center of the earth" (Jules Verne) was actually an interesting book, even if we're all pretty confident now that it's completely impossible.
So I can understand giving up on actually trying to predict the future. But go ahead and speculate. Have fun!
RIAA v. Diamond Multimedia was listed as exempt from the audio home recording act because it copied from hard drives - an exempted media
By "exempted media", do you mean that hard drives are allowed? Looks like it...
It would seem to me that this implies that copying from one hard drive to another should also be allowed.
RIAA v Diamond only talked about space shifting media (in theory moving the media- which we all know is never done)
But then, assuming it's my computer and my Rio player (or iPod, today), I'm only going to be listening to one at a time. I could reasonably claim that the other is merely a backup copy.
The question is this: Does your non-technical friend who you're foisting Linux on want to figure out nspluginwrapper or how to run a 32-bit version of Firefox just to get flash working?
Flash doesn't come with Ubuntu, and my non-technical friend wants Flash to work when he gets Linux at all.
Which means that I'm going to be the one dealing with Flash, whether it's nspluginwrapper or just a simple package from the repositories in the 32-bit version.
The question is: Is there any significant disadvantage once I'm done setting up their box?
I just don't think it should be IT's job to cover for them.
I have no faith in chainsaw users, either.
But if they cut off a finger, they get to go find a doctor and PAY to have it reattached. It doesn't suddenly become the chainsaw company's liability.
Although in this society, it might well be; after all, there is a chainsaw with a warning label of "Keep away from hands and genitals." Or something to that effect. You have to seriously wonder -- did some moron cut off his balls, and then attempt to sue the chainsaw company?
I'd much rather waste my time on Slashdot talking sense in the threads where others are at least trying to talk sense.
Besides, I actually did think this bit was enough:
This is not a "GPL fiasco" any more than pirating a movie is a "DVD fiasco".
Which is pretty much exactly true. The only difference is, it's actually conceivable that id is violating the GPL by accident, whereas it's much harder to say that you copied that DVD by accident.
But in either case, it's pretty clearly a violation of copyright.
It's not a huge fiasco that proves anything about the GPL, any more than my ripping a DVD proves anything about how evil DVDs are.
And it's likely not even that big a screw-up -- let's see how quickly they fix it. (If they're smart, they'll start distributing one of the open source native Windows/GL ports of Doom.)
I programed on some open source projects under a male pseudonym so I wouldn't have to be treated like "whoa! a cool geek chick" but as a person.
With the skills you listed, I'm not sure how you can escape that "geek chick" stereotype. So why wouldn't you want to have recognition for what you've done?
Even through my degree I felt like 24/7 I had to prove I had a right to be there.
Yeah, welcome to the world. Life's a bitch, ain't it?
I'm a guy, and I feel like 24/7 I have to prove I have a right to be here, in my job. It's called "working". The only way out is to be in some sort of managerial position where you can easily take credit for everyone else's success and blame your own failures on everyone under you -- but I doubt any geek, female or otherwise, would want that position.
You can say all the biological determinism (yeah right, men are biologically programmed to be in IT... ugh) stuff you want, the reality is there is a major social bias.
This is true, but it goes both ways.
What do you expect when you walk into the office? Are you anticipating being treated like an equal? Or are you sighing inwardly as you brace yourself for another day as a sex object?
There is a major social bias which says that women are the sex objects, the attractive ones, the ones who get to have potential mates come up and proposition them, so they can pick and choose. And you play your part -- you play it to the hilt.
So when you go in to work with an office full of men, you're already expecting them to mistreat you in some way. So then the slightest casual comment becomes offensive, and you act accordingly -- maybe even subconsciously. Other women you talk to are supportive, telling you things like "Don't let it get to you," or "Don't let them get away with treating you differently," just adding to this attitude that you don't even know you have.
Let's say someone tells a dirty joke. You instantly take offense, you assume it's about you. Or you take offense to it being a joke that's even slightly degrading to women (though the next one might be degrading to men).
So now they can't tell dirty jokes around you, because you'll get upset, angry, and maybe even cry "sexual harassment". And they realize they have to be extra careful around you -- they can't just treat you as one of the guys, because who knows when you'll take offense at something?
And then you wonder why they don't like to socialize with you. You wonder why, even if it's a work problem, they'd prefer to take it to each other than bring it up with you.
And it goes on and on and on. To them, you're a feminist nazi bitch. To you, they're a bunch of perverted, misogynistic pigs.
It's pointless to try to look at who's right, or who wins. Everyone loses. Maybe the guys could have handled it better, I don't know.
But it was just a dirty joke. Or it was just something like that, something that, even if it was offensive, you might have taken more lightly. I'm not trying to blame you for anything, I'm just trying to point out how in most environments, you actually can cope pretty well, without fighting all your life, without even making much of an effort.
It certainly takes more effort to be offended than to ignore it.
Like, even if you are "a nice guy" or you "support women in IT", maybe you have certain behaviours and ways of organizing/managing/participating that alienate women and you need to address them personally.
Point those behaviors out to me, personally, and I'll address them, personally.
There are lots of men who are completely incompetent in IT but manage to have full financially rewarding careers in it, is that true for women?
I don't know, do you think it should be?
Actually, I imagine it is somewhat true, the way it is everywhere -- the hot gir
I don't know... I kind of prefer it having at least some consequences other than having to hold your breath, like in 2001. That always bothered me more as a nerd than the explosive decompression.
Now, from what others have suggested, there may be other effects, such as frostbite (maybe, maybe not), a full-body bruise, very rapid de-oxygenation (your lungs working in reverse), and maybe your blood wouldn't boil, but your sweat and your tears would, and you might go blind...
And so on.
I'd rather have them explode, at least, than have absolutely no ill effects and go on to save the day without even a shortness of breath.
Not that I agree, of course...
Shouldn't that be my decision to make, not the library author's? Why do checked exceptions exist?
No language can. But it comes a lot closer than other languages do.
True enough. It's difficult to get around the fact that even the simplest things take 2-3x the code that they would in almost any other language. Including C++/C#, and that's sad.
No less substantiated than the GP's post, which has a +5 insightful, for some reason. Mine is 50% insightful, 50% troll.
I'd debate that about some of them, at least. Maintainability, maybe. Productivity, probably not.
In any case, I don't see why the language itself should enforce those standards. Perl has a few I can choose to enable -- use strict, for example -- and I can definitely say they improve maintainability. But I can turn them off.
Even if you could enforce similar restrictions on them? I'd say I'd much rather have some of Python's more interesting features, along with its cleaner syntax, even if I had some of the stricter Java things along with it.
Point is, I can develop a substantial enterprise application in Perl or Ruby. I really can't easily develop a quick prototype in Java.
Again, something you could do with a development suite. You could have it insert comments for you, or provide some sort of simple way of finding that information out even if nothing is actually stored in the code.
The difference is, Java forces a methodology on you. Perl (and Ruby, etc) let you do whatever you want -- including force a methodology on yourself.
I agree, actually. I'm kind of disappointed that none of the really good languages do real threading. Python comes closest, but the GIL kills it.
I also agree that we shouldn't be so lazy, and that sometimes it's better to just go ahead and use Java, or even C. But now we're back in the sane realm of "best tool for the job", instead of talking about "Perl zealots", and I'm OK with that.
Although I do believe a dynamic language can, ultimately, be made to perform at least as well as Java, it hasn't been done yet.
Good, let's use that word instead. Talking over you.
I admit I don't actually have that happen to me, or see that happen. I still don't think the right thing to do is come to Slashdot (of all places) and complain.
No, secretary just means secretary.
I've actually developed quite a lot of respect for people in this kind of position. For example, one company I contract for has a woman who had a severe case of amnesia doing secretarial work -- filing and such. She's recovered her abilities of memory somewhat, but she still has to organize her life in written notes to herself -- she might forget to take a shower, for instance, if it wasn't written in her morning schedule.
And despite all of that, she's managed to make herself useful by organizing files in an office. Perhaps because of it -- filing is essentially putting something away and having to remember where it went, and she's a master of writing notes to herself to help her remember things.
If it's really only about doing the job, then shut up and do the job.
You see, it IS about social acceptance. I don't mean to belittle it -- certainly you need some social acceptance in order to do your job -- but let's be accurate here.
I'm not the boss, so actually, no I don't. I respect new hires if they show those qualifications.
I'm sorry, did I say that? Did I even use the word man here?
You seem so determined to turn everything I say into something sexist or repugnant. I certainly wouldn't want to work with you, with that attitude.
I can imagine it -- first day on the job, I mention how this pointer represents... and you'd go on a rant about how pointers are so phallic and why can't they be called something neutral, like indicators? Or why can't we use iterators instead?
(You could point out that I'm doing the same thing you did -- I took something you said much farther than you intended, put words in your mouth, etc. That's actually deliberate. It's an object lesson for you.)
You really, really need to work on your reading comprehension.
There's all kinds of change in the world. It is now 2:48 PM, and in less than a minute, it will change to 2:49. When I turned on my air conditioner, my hot room changed to be cold.
So where does this assumption come from that the only way a woman can change is to "act like one of the boys"?
There's no contradiction here. I do not expect you to act like a man. I do expect you to act like a decent and fair human being, and your comment shows neither. It's called "prejudice" -- you'd decided before you started writing that I was a misogynistic bastard, and nothing I can say will change your mind.
I don't know, hasn't happened. Here's a thought though: Maybe you should try it?
I'll admit that.
At the same time, sometimes it does help to get a different perspective, a
I'm curious... Do those terms also apply to their DRM-free stuff? If so, what's the point (legally) of buying something DRM-free, instead of DRM'd?
However, all of my legitimate media either comes directly from a CD (or DVD) or was a free download (Star Trek New Voyages, for example).
Anyway, are hard drives special or not? If they're not, then the iPod (and the Rio) are illegal, because that's a copy of a copy -- you copied it to your hard drive first, and then to the device. If they are special, then why can't I copy it to as many hard drives as I want?
No, that just makes it less readable. <> is equivalent to in that program.
If you want to talk about a file, a list of files, a pipe, etc, most of that can be accomplished with shell redirections outside of Perl itself.
Missing the point.
Point is, if you do have a successful career, you aren't going to be coming to Slashdot to complain about that career. In fact, you could then go to your job to complain about Slashdot.
You could certainly complain about Slashdot, although if you really took those two comments personally, you really need thicker skin. If I reacted to every little thing, I may as well just unplug my Internet connection and go hide in a cave.
I'm not saying these things are OK, but unless you have a plan to eliminate morons (even unusual ones), that's how it's going to be.
If you want the same security, stability, and lack of choice in software you had on your Mac, you can run Linux!
But here's the best part...
We don't have to beg for anything! In fact, they beg us to buy their products, because PC manufacturers actually have something called "competition"! What a novel concept!
Actually, wmv9 works fine; it uses ffmpeg's "wmv3/wmv9" decoder. I don't know if I had to go to any great lengths to get all of libavcodec, but I definitely no longer need a 32-bit mplayer.
What I don't have working is wma9. Works with 32-bit mplayer, not with 64-bit. However, I have exactly one file that needs that...
Oops, got clipped by Slashdot assuming it was HTML. That should be:
...
while (my $line = <STDIN>) {
I have.
/^q(uit)?$/i;
/^q(uit)?$/i;$_=reverse;print;print "\n"}
What makes my stomach turn is the underlying mechanisms used for it. For example, a typical object in Perl is a hash tied to a namespace, which is kind of a bizarre way of doing it. But once you get past the syntactic ugliness of it, there are quite a lot of programs that look good. Even the syntactic ugliness itself starts to look good, once you understand the rationale behind it -- which requires actually getting familiar with the language.
I find perl to actually be quite beautiful in how it works, not in how the code looks. And I find Java to be the opposite -- no matter how good it looks, it still bothers me how much work I have to do, and every now and then, the very concepts are just disturbing. (Typecasting to Object and back because we don't have templates, for example -- and the template system isn't great, either.)
If we want to talk about superficial ugliness, though, Java loses:
class Hello {
public static void main(String [] args) {
System.out.println("Hello, world!");
}
}
Oh, forgot to mention -- it won't work unless the file is called Hello.java, and the resulting class file must be Hello.class, unless you want to mess around with the java/javac commandline.
Now, the following works about the same in Perl, Python, or Ruby:
#!/usr/bin/perl
print "Hello, world!\n";
The only difference is, it can actually get simpler:
#!/usr/bin/ruby
puts 'Hello, world!'
Now, you know more about Java than I do, so I challenge you to come up with a Java equivalent of this, and tell me your version isn't uglier:
#!/usr/bin/perl
use strict; use warnings;
while (my $line = ) {
chomp $line;
last if $line =~
$line = reverse $line;
print "$line\n";
}
Now, I admit, I could have done this:
while(<>){chomp;last if
But I can't even read that, and the only reason to write that way is if you're trying to win an Obfuscated Perl contest. (Yes, there is such a thing, but the above example isn't even close to what you see in those.)
The reason I made an exception for PHP is, it's actually a case of, anything PHP can do, Perl can do better. Almost all of the features that originally made PHP so great have been found to be very, very bad practices if you're doing more than, say, a webcomic page. About the only sort of unique one left is the <?php insert code here ?> syntax, and that's a bad idea in the middle of a webpage (though in response, there's now an engine to embed Perl in HTML), but maybe OK in reverse (by doing "?> <p>insert HTML content here</p> <?php" in the middle of a program), but Perl has multi-line MIME-like literals which make that easy enough, for the very rare instances where it's even close to a good idea.
The ONLY reason PHP is good is that there is so much written for it, and that so many people just getting into web development have the mistaken assumption that web backend == PHP, or that PHP is somehow easier than other backend languages. As wrong as that assumption is, it means that there's an army of people who know PHP -- which may or may not be a good thing. I like to think of it as Linux/Apache's Visual Basic, and I know I never learned Visual Basic.
You can scratch a couple of those off the list.
Either 32-bit Firefox or nspluginwrapper will work, and I believe there is a repository that has nspluginwrapper.
32-bit xine, mplayer, and win32codecs are nearly obsolete by now, as the vast, vast majority of the win32codecs have been reverse-engineered and re-implemented in 64-bit mplayer. I believe media is one of those applications where 64-bit actually is much faster, too, so if you're watching high-def, it does help.
That still leaves a 32-bit flashplayer, which you must download from the Adobe website. But that's only the one package, which is a lot easier to manage than ALL of Automatix. And I've found that it's almost inevitable that you'll run into one or two packages that aren't in the repositories, and I even have a plan for how to deal with that, but every time I want to pull my hair out because of problems with Ubuntu, I think back to my old Powerbook and how much of a bitch it was trying to keep everything updated on OS X.
You didn't understand, then.
I'm not disputing what anyone deserves or not.
This is the kind of stuff no one wants to hear, so it's very tricky to communicate properly. It's tricky enough that a bunch of psychologist/philosopher/self-help types have banded together and formed an organization called "Landmark Education", whose primary purpose is to teach distinctions like this one.
Specifically: I'm not saying anything about what anyone deserves; you made that up. I deliberately avoided talking about what people deserve, because it won't help you. All I'm doing is telling you what will help, if what you want is to be a woman who is respected in IT.
And even if what I said was "Your problems are trivial, and you should just suck it up," that still says absolutely nothing about what you deserve.
Or maybe no one should get respect until they've proven themselves competent?
But it doesn't matter, because what I was talking about has absolutely nothing to do with competence.
This is what it is, but it's also wrong.
This is what it is, but it's also wrong.
This is what it is, but it's also wrong.
Oh god, baby, I feel so sorry for you...
Do you feel better yet?
Because that's all that will do. Not that there's anything wrong with wanting to feel better, and I have no problem with some allies telling her that. I'm even willing to do it, honestly, sincerely, without a hint of sarcasm.
It's just that it won't actually help deal with the problem.
I learned this the hard way in grade school. I was bullied every day... (So don't you DARE tell me I don't know what it's like. Hitting on you can't be worse than HITTING you.)
I didn't do anything about it. I just let the rage build up, and my mother was completely confused as to why I was so angry when she picked me up, why I'd lash out at her over nothing.
When I finally told her about the bullying, she might have called the school -- I honestly don't remember. I do know that I talked to teachers, and tried to get someone to intervene.
And sure, the bullies got in trouble when the teachers were there to see it. When they even knew what was going on -- I remember being held down and tickled as torture, and no one did anything, because they just saw a kid rolling on the floor, laughing and laughing...
Well, eventually, it got to the point where the physical bullying stopped, and they simply teased me -- at which point, it still took awhile, but I eventually learned not to react. When I stopped reacting, they stopped teasing.
But nothing I did made the problem go away until late grade school, when I did talk to some of the kids, who admitted to not having a problem with me, and just going with the flow. And when they realized how much it bothered me, they stopped.
Then early middle school, when I hit puberty, and I got big. I was bigger than everyone else -- slightly overweight, but I knew how to throw it around. I got into a few fights, and the bullying and teasing stopped.
By the time we graduated high school, the same class had completely eliminated cliques. We were all one big family. It was actually kind of bizarre -- the few kids who were still antagonistic by then had left, either to other high schools, or to become stoners -- so maybe my talks with the people who "just went along" had some impact.
I'm not advocating violence as a solution. What I'm saying is, running home to your mother doe
This is actually a good thing, and quite true of Perl also -- see CPAN.
In other words, let's say my project is to read an Excel document and produce a chart for the Web -- or something similarly simple. The actual logic of the program is close to nil, it's just a conversion -- but there are so many similar problems to be solved.
If I can go on CPAN and find a module to read Excel (or even just CSV), and another module that can generate charts, and maybe a third module that handles image formats, I can stick them together like legos and my program is done. Why would I want to waste my time duplicating all the effort that went into those modules?
That's why I use Perl, actually -- the #1 reason is CPAN.
But it's nice to have a decently powerful language ready, too, for when you actually have to write a significant amount of logic. I think Perl can hold up well, but it's ugly. It's fucking hideous.
Unfortunately, I haven't really found anything better, yet. Ruby and JavaScript are my two favorites right now, and I hate both of them almost as much.
I'll just say this:
In Perl, I can: use strict; use warnings;
It may not be enough, but it's there, at least. One can certainly imagine writing filters that make the language more restrictive. Basically, if you use a restrictive enough subset of Perl, you may as well be writing Java, so all you need is a tool to force that restriction on you.
It's much more difficult and kludgy, though, to make a loose language out of a tight, anally-retentive one like Java. That's why, if I was going to write a language (and I keep meaning to), I'd start with something extremely loose and simple, and let people extend it and restrict it to make whatever language they want out of it.
The question is whether there is anything useful you can do in a particular language that you can't do much better, simpler, cleaner, faster in another language.
Cobol, in particular, is obsolete for a good reason -- just about anything you can do in Cobol, you can do better in -- well -- anything else, even C. The only advantage of learning Cobol is people will now pay you large sums of money to deal with their ridiculously huge libraries of legacy code, which just keep getting bigger because they keep hiring more people like you to make it do that one little thing they need.
I believe you're right about a significant number of other languages, because most languages suck in some way or another. But I don't think I would ever start a new project in logo, fortran, or cobol, ever.
No, making you actually declare every single exception that might possibly happen, even if you don't intend to catch all of them, is retarded.
Let's say I've extended "Hello, World" to ask you for your name, so it can then say "Hello, <name>!"
class Hello {
public static void main(String [] args) throws IOException...
Obviously, "Hello, World" is a simple enough program that IOException doesn't need to be caught. I'd much rather just leave that off, and let the program crash with an exception error. And I can do that, but I still have to declare it, for no good reason.
For that matter, there are plenty of cases where you might want to handle the exception, but at a lower level. Why should the intermediate levels all have to know about IOException?
For example, I might be five calls in before I hit the exception. Could be five separate methods that now need to have "throws IOException", even though all I really intend to do is catch it somewhere out in the main program loop and throw up an error dialog, then either quit or try to restart the program. (Re-initializing all data structures might be faster than starting the program from scratch -- remember, this is Java, and Java can take a LONG time to start.) But that means there's maybe one method doing IO, and one method which catches the exception, and three methods in between that have to know about the exception for no good reason.
Sure, there are runtime exceptions. But I have no control over what libraries use them or don't, and I distinctly remember that there were disadvantages, though I can't remember what they are. (I haven't used Java for years, on purpose.)
From a technical point of view, I can sort of see why it might make sense for the generated code to contain information about what exceptions to expect. It might even be a best practice to provide some comment stating what exceptions might be thrown, maybe even to have some system which watches for this kind of comment, the way Eclipse can automatically generate your documentation for you, and warn you if you don't have properly formatted comments for every method.
But it shouldn't be required any more than documentation is required. You can always write a third-party tool to audit your code, you don't have to throw up a compiler error if not everyone wants to conform to your precise coding style.
Unit testing. Tight development cycle. Avoid global variables, and use namespaces where possible. Comment more than you think you'll need to. Turn on warnings in the language during development. Use stubs and prototypes so you can get something that sort-of works, so that you can keep it sort-of working as you fill in the details (see Unit testing and Tight development cycle).
Also, modularity is good. A chunk of code shouldn't have to know about more than what it absolutely needs to. And my Hello World program has no need to even know that an exception exists.
That's not staring, then, is it?
And who's Will?
Seriously, probably the best social skill I've ever learned is peripheral vision. Not because I want to be a pervert, but because I'm trying not to be -- it gives me the ability to treat women with the respect I'd like to, even if my libido disagrees.
Also, I'm a true geek, which means if I've got something interesting enough to say or to work on, I'll actually forget about your body for awhile, even if I have to talk to you. Apparently, I'm not alone.
You blast Perl, and then go on to suggest Java, of all things?
The reason there is bad code in Perl is, it doesn't actually "force" you to do anything. There are so many ways to do it that it's very easy to write crap -- but it's also very easy to write good stuff.
That works even better if you apply it to Java.
Java has things like static type checking -- to the point where you must explicitly declare what exceptions you might run into. Before templates, I was actually forced to typecast to and from Object...
This is flatly retarded, by the way -- if Java can give me a compile-time error that my method didn't declare a particular exception, why can't I simply omit all such declarations and let the compiler add them back in?
But then, managers like to see Java as a good thing precisely because it's so limiting. It forces everything to some level of mediocrity and sameness, meaning horrible programmers are just slightly bad because Java keeps them from shooting themselves in the foot. It also means you can hire a team of horrible programmers, and replace any one of them with another at any time, and the project will continue moving forward. And it's great for programmers, because they can look busy all day writing interfaces, typing ridiculously long method declarations, and dealing with the complexities and limitations of things like single inheritance, without having to get much actual work done (or do much thinking).
But what people are finding out is, flexibility like Perl's is really useful. Look at Ruby. The syntax looks OK on the surface, but get into even marginally complex programs and it can look as ugly as Perl. But it's also amazingly flexible, quick to code in, and makes a bright programmer into a brilliant programmer -- whereas Java will take your bright programmers and beat them down into codemonkeys.
You can point to all the Java in the world, but when Ruby runs probably 10 or 100 times as slow as Java, and people STILL use it to run websites, and simply buy more hardware? I'd say that proves we have some damned good languages. Obviously better than Java -- pick any site that's written in Perl or Ruby (even Python), and not Java, and ask yourself why.
Now, PHP is an horrifically bad language...
I agree. In fact, I really wish Ubuntu made this easier...
That's one thing I could always say for Gentoo -- their packages might explode in your face, but at least you could usually get a package for odd things, including packages for a 32-bit Firefox, for nspluginwrapper, and for a 32-bit flash. In that respect, Ubuntu 64-bit is a bit behind.
Here, at least, 64-bit Linux does have an advantage of upgrades.
That is, in five or ten years, when everyone's using 64-bit and all those lazy programmers have finally gotten around to properly porting things, I'll just update simply and correctly (for everything but Flash), but if I were on 32-bit, I'd have to reinstall.
Neuromancer was damned fun to read, even if large parts of it seem completely unrealistic now or in the future.
For that matter, "Journy to the center of the earth" (Jules Verne) was actually an interesting book, even if we're all pretty confident now that it's completely impossible.
So I can understand giving up on actually trying to predict the future. But go ahead and speculate. Have fun!
By "exempted media", do you mean that hard drives are allowed? Looks like it...
It would seem to me that this implies that copying from one hard drive to another should also be allowed.
But then, assuming it's my computer and my Rio player (or iPod, today), I'm only going to be listening to one at a time. I could reasonably claim that the other is merely a backup copy.
Flash doesn't come with Ubuntu, and my non-technical friend wants Flash to work when he gets Linux at all.
Which means that I'm going to be the one dealing with Flash, whether it's nspluginwrapper or just a simple package from the repositories in the 32-bit version.
The question is: Is there any significant disadvantage once I'm done setting up their box?
Actually, I have no faith in computer users.
I just don't think it should be IT's job to cover for them.
I have no faith in chainsaw users, either.
But if they cut off a finger, they get to go find a doctor and PAY to have it reattached. It doesn't suddenly become the chainsaw company's liability.
Although in this society, it might well be; after all, there is a chainsaw with a warning label of "Keep away from hands and genitals." Or something to that effect. You have to seriously wonder -- did some moron cut off his balls, and then attempt to sue the chainsaw company?
I'd much rather waste my time on Slashdot talking sense in the threads where others are at least trying to talk sense.
Besides, I actually did think this bit was enough:
Which is pretty much exactly true. The only difference is, it's actually conceivable that id is violating the GPL by accident, whereas it's much harder to say that you copied that DVD by accident.
But in either case, it's pretty clearly a violation of copyright.
It's not a huge fiasco that proves anything about the GPL, any more than my ripping a DVD proves anything about how evil DVDs are.
And it's likely not even that big a screw-up -- let's see how quickly they fix it. (If they're smart, they'll start distributing one of the open source native Windows/GL ports of Doom.)
With the skills you listed, I'm not sure how you can escape that "geek chick" stereotype. So why wouldn't you want to have recognition for what you've done?
Yeah, welcome to the world. Life's a bitch, ain't it?
I'm a guy, and I feel like 24/7 I have to prove I have a right to be here, in my job. It's called "working". The only way out is to be in some sort of managerial position where you can easily take credit for everyone else's success and blame your own failures on everyone under you -- but I doubt any geek, female or otherwise, would want that position.
This is true, but it goes both ways.
What do you expect when you walk into the office? Are you anticipating being treated like an equal? Or are you sighing inwardly as you brace yourself for another day as a sex object?
There is a major social bias which says that women are the sex objects, the attractive ones, the ones who get to have potential mates come up and proposition them, so they can pick and choose. And you play your part -- you play it to the hilt.
So when you go in to work with an office full of men, you're already expecting them to mistreat you in some way. So then the slightest casual comment becomes offensive, and you act accordingly -- maybe even subconsciously. Other women you talk to are supportive, telling you things like "Don't let it get to you," or "Don't let them get away with treating you differently," just adding to this attitude that you don't even know you have.
Let's say someone tells a dirty joke. You instantly take offense, you assume it's about you. Or you take offense to it being a joke that's even slightly degrading to women (though the next one might be degrading to men).
So now they can't tell dirty jokes around you, because you'll get upset, angry, and maybe even cry "sexual harassment". And they realize they have to be extra careful around you -- they can't just treat you as one of the guys, because who knows when you'll take offense at something?
And then you wonder why they don't like to socialize with you. You wonder why, even if it's a work problem, they'd prefer to take it to each other than bring it up with you.
And it goes on and on and on. To them, you're a feminist nazi bitch. To you, they're a bunch of perverted, misogynistic pigs.
It's pointless to try to look at who's right, or who wins. Everyone loses. Maybe the guys could have handled it better, I don't know.
But it was just a dirty joke. Or it was just something like that, something that, even if it was offensive, you might have taken more lightly. I'm not trying to blame you for anything, I'm just trying to point out how in most environments, you actually can cope pretty well, without fighting all your life, without even making much of an effort.
It certainly takes more effort to be offended than to ignore it.
Point those behaviors out to me, personally, and I'll address them, personally.
I don't know, do you think it should be?
Actually, I imagine it is somewhat true, the way it is everywhere -- the hot gir