This is a weak argument, and it's informal. It doesn't have to be exact. Still, I qualified my argument by calling it a theory and using non-absolutes for every portion of my argument.
My reasoning included an argument with a single support. I did not make this particularly long because this is not actually meant to be an argument chain; it's a post on a website - it's only supposed to be an insight. If you want an argument, you can go google for it. I didn't make this up.
Don't you see a flaw in assuming that a simple post on a website determines one's abilities? I certainly wouldn't want anyone to think I was incapable of using punctuation properly because I used it wrong three times in a row in a post.
I think that bash is a very good example of my point.
I want my shell language to do an auto-nohup every time I open a new job.
Bash doesn't do it, and it can't, so I'm not using bash. I'm using a very feature-rich shell - zsh.
On the other hand, you do have a point to a certain degree. Either having the features or making it possible to add them easily is good enough for some people.
Yeah, it's a buzzword. Get over it. There is a theory that while people use only 10% of the features of applications such as Word, they each use a different 10%. This seems to be true because there aren't really a lot of examples of applications that lose features because they aren't used.
So in order to reach everybody - to give everybody what they want, you've got to have a very feature-rich application. When you don't have that what you'll get is people who are willing to make the switch because the missing features are either peripheral for them (I think I used the grammer checker twice - I'm much better at checking my own grammar than Word is), or that they never use (I never use the VBScript in Word, for instance), or they're willing to give it up because they're both honest and unwilling to pay $500 for a text editor.
A good compromise, I think, is to do those features that are easy to program after you build an initial editor - things like word counts, reading level checks (there are canned algorithms for this), spell checking, output writers, etc.
I would not include a syntax checker on this list. That means classifying every word in our language based upon part of speech and doing some context-based searches to figure out ambiguous words.
If you actually stick with basic functions (meaning functions that are less than 500 lines of code long), I think you'll be quite happy with OO.org. I am.
Maybe so (but can 1000 hamsters actually power google?)
They're going to redirect all search results to "http://thebrainisyourmaster.com," thereby making it the most popular site on the internet, and therefore one of the most trusted, making everyone want to elect the Brain as the leader of the world.
Then, to really clinch it, they'll use the money to buy everyone free t-shirts. It's foolproof.
You can't? I just tried that on my ps/2 keyboard under XFree4.2 using an old keyboard I pulled from a friend's broken e-machine (which means it's roughly the cheapest ps/2 keyboard you could buy). I used xev to monitor keyboard events.
Then I pressed (on the keypad) 4,5,6,and + all at the same time. I repeated this three times. Then I tried it on j,k,l and ; and got the same result.
xev registered every event - four separate key presses, and four key releases. Of course, it didn't consider them as one event, but that hardly matters, does it? All you have to do is check for events that are within the same tenth of a millisecond or so.
The key is that in a pure democracy, a rule by the people that ISN'T a republic in any form, the rights of the individual are not protected. In a republic there are certain matters where everyone's voice doesn't actually count.
No, it's a republic. Go look up the difference if you don't know it.
I believe that there are cases where the principal that governs a republic - that the welfare of the individual should be upheld by society despite the view of the masses - should basically hold sway over all public goods and services. Further, I would say that sticking that line in a EULA somewhere violates that protection.
You're basically saying, "sorry, it doesn't work that way, their conduct is dependant soley on our monetary votes." Why? I believe it is in the spirit of the law that this should be the case, even if not in the letter yet. This is exactly the kind of thing that should be protected by legislation in a republic.
I wouldn't be surprised if there isn't a law within the next ten years to the effect of "a goods or services provider can't disclose personal information used to track the purchase or usage of their goods or services without a court order."
It's been done. It's even been done with a UAV helicopter, which is a great deal harder to do (though the gains in usability are exceptional).
Specifically, there is a UAV competition held by AUVS every year, and people do a lot of amazing stuff there.
What's interesting about this particular vehicle is that it uses XP-embedded over another operating system. Otherwise, it's like all the rest.
Re:and a horse is a horse, of course, of course...
on
We the Media
·
· Score: 1
Did you even read what I wrote? I don't trust either. I gave good reasons not to trust either.
You gotta find people to trust, though, at least on some facts. There's just too much world out there to independently verify all the facts yourself, and if you've got nothing to go on you can't do very much.
and a horse is a horse, of course, of course...
on
We the Media
·
· Score: 3, Insightful
Is professional training all it takes to get your respect?
I find that most professional news organizations (in my country, the USA) are trying to do whatever they can to push their agendas while also insinuating that they are impartial. It's downright duplicitous, and whats worse is that there are people who believe that their facts are totally true.
Most of the time you don't see this kind of thing in blogs, and I think the fact that the writers aren't professional journalists, and therefore aren't trained in the subtle art of fact-misdirection is one reason why. But you're right about the unverified stuff. There's no telling what you're getting with a blog.
I'd trust the average blog about as much as the average professional news agency, but for different reasons. In either case, a particular instance would have to earn my respect before I'd believe them above other sources.
Yeah...let me further your line of reasoning and say that there is no reason that we should have switched away from using base 1 for everything, since it's the first way, and every other approach is merely a redundant way to write it, and therefore part of the plot to lead to the eventual heat-death of the universe.
Computers use powers of two for every kind of calculation. The most important reason of all to do the measurements this way is because it's easier. It wasn't random, wasn't folly, wasn't totally rediculous.
The redefinition allows us to use the units in a calculable way. It also makes a kind of sense to redefine mega, giga, and tera in terms of base 2 because a byte is a base 2 unit. Why not just go all out when you're using them and make everything else base 2 as well? You may not that bits, which come out to a nice, round number in every number base, are measured in base 10. A terabit is 10^12 bits.
It's too much to ask that a microcontroller that reports usage have half of it's hardware devoted to base conversion, especially when the result may come out to some terrible fraction. To use your statement, I find that just because people are using mega, giga, and tera with the original meanings just because they're entrenched is folly at best and is better regarded as arrogant.
No, there's thirty years of soft research on the topic. When you're asking questions of preference and efficiency, and you're talking about humans you get a large measure of subjectivity. It's a soft science.
Don't you think designers would immediately use interface design ideas if they were sure that there was One True Interface? That, like you said, there is hard research?
Anyway, think of it more like this: 1) There are people with the ability to write a user interface. 2) There are people who can design an effective user interface. 3) There are people who can add a little to an effective interface design. 4) There are people who will use the design without any contribution to it.
The Gnome and KDE projects are all in group #1. Some may also fall into the other groups. Optimally, we would have groups #2 and #3 not simply be a subset of group #1, because there just aren't a lot of Cog Sci people in group #1.
Sure, don't bother designing, just make it possible for the users to do the design themselves and your job is done! You seem to assume that group #1-#3 must all be the same persons. I see no reason for this conclusion.
That's exactly what got them into this mess in the first place. I would beg to differ. I'm assuming by "this mess" you're referring to the story above. If Gnome was flexible enough, this group would probably just release a theme or something that would do exactly what they're looking for rather than having to make changes to Gnome itself. So essentially, it's the "not making it flexible" that got them into this mess, not the converse.
Well...nobody's really certain how to make the thing the most usable, so what I think we need is a way to customize it a lot.
That way, the interface can evolve into a set of interfaces which are generally as good as they can be for what they're used for.
Unfortunately, most of the parts of Gnome and KDE's UI are very difficult to customize. Gnome even took a giant leap backwards in this area by switching to Metacity as it's primary window manager.
Regex is logically equivalent (i.e. there is a polynomial time mapping between the regular expression language and the BNF) to a LR grammar, though it is more compact. I don't think the authors intended it as a substitute until LR got faster. I believe they intended it to be an LR-equivalent language.
It is a bit inefficient, actually, but I think it's worth it.
You may also notice if you look at my code that occasionally I use a regex in there every now and then when I know it won't be too expensive.
Regex isn't (always) fast, it isn't pretty, but it works, it's compact, and it has already been heavily tested.
One last thought: the concept of LR grammars where invented as a mathematical way to express regular expressions as a series of states, because states are a lot easier to deal with mathematically than regular expressions.
That's the only real reason. Regular expression came first, though. They're easier for people to come up with - more natural.
I'd rather debug perl that most other stuff. There's a lot of different ways of doing stuff, but the end result is generally quite compact.
If the person codes in a generally sane manner (i.e. not using gotos, or using for loops to do everything, or something strange like that), it's easier, I think, to debug perl than many languages simply because you have less lines you have to look at to figure out whats going on.
This is especially true when you're talking about parsing text, since you get to look at regex patterns to figure out what's going on (looks to hard to manage? get over it. Regex is a small, orthogonal set of commands).
That said, it's still hard if they don't name the variables very well or comment the complicated parts, or if they do either of these in a language you don't understand.
This isn't a collection of fables that many different people hear different places and are therefore prone to variation. Aesop's Fables is a book. You can got to Gutenberg and get them.
If you heard a version that was different than the fables, it's not one of Aesop's Fables.
Maybe I'm just blessed. Google is all over my site. Searching for my name on Google returns my site as the number one hit, and sites about me are 1,2,3 and 8.
All the other sites return stuff that hasn't changed in 5 years or more. A few are smart enough to get the perl module I put on CPAN, which is at least something. Here's the bot's listing from my site.
I've not submitted anything to any search engine. Google is the only one that has found me after two years. Microsoft doesn't even know I exist.:)
The thing about all of those is that they've got the "simplicity" part down without actually providing extensibility.
This isn't entirely true, but it is mostly true (and I'm speaking of blackbox, fluxbox, and openbox, because I've never played with Ion). They let you write applets, but not Window behaviors. If you want to write a Window behaviour, you have to mess with the internals of them.
Actually, there are a few actually fully extensible things - there's a Java desktop and a
They lend themselves to monolithic development.
FVWM and Sawfish do not. Not that these are alone - there is a Java desktop, and a python one that are extremely configurable and extensible. The ones you mentioned don't fall into that category in my book, though.
To me, the perfect Window manager has functions for tiling vertically and horizontally, for minimizing all windows (like Meta-M in Windows), and for minimizing and saving the minimization and then unminimizing (like Meta-D in Windows), and must have a titlebar theme that looks good though has a pixelwidth of five or less (like MicroGUI/ NanoGUI) Oh, and it has a shortcut for opening an rxvt terminal mapped to "alt-X."
To date, the only Window managers I could get all of these things to happen in are Sawfish and TVWM.
Knowing that one man's feature is another man's bloat, Window managers should put everything into modules and make it easy to add/remove features.
The best way to go is to make the core contain an event manager, a titlebar manager, and an API. Everything else should be components that add in later, since anything could be bloat, though it should be capable of adding anything else.
The only Window manager that I know that is that tiny but also extensible is TVWM, though extension is a real pain.
If the window managers are extremely difficult to extend, then bloat goes in and stays in. Much better to live without it and "stifle innovation" by making it a separate program or part of an extensible manager.
I keep waiting for them to change the name to something that makes some reference to Mozilla or Gecko, or to browsing. "Lesszilla" seems appropriate. Or how about Salamander? That's a creature of fire AND a lizard, and the plus side is that there's already a browser called that, giving yet another reason to change names again.
Since they already stepped on toes of OSS developers, why not step on other toes, too?
Call it "Web Explorer" or Explorer for short, or just "Better than Internet Explorer."
Or...maybe they could just absorb the Mozilla name?
Get something with stateful packet inspection, ability to recognize port scans and cut off access (i.e. an intrusion detection system), response time in under half a second, and a logger that shows everything that has happened for the last four weeks, just in case. Oh, and just in case it gets hacked, make sure you have a way of showing it's process listings.
What can do all of these things? Certainly not the cheap Linksys router you suggested. Those don't even come with an IDS. I know because I have one of the latest models.
For that you're going to have to buy something that costs over a grand...or a $40 133Mhz machine.
How about instead of suggesting a hardware firewall, we say a dedicated firewall, since a grand is a bit much to pay for the good features.
As far as fruit goes, I don't think the analogy fits too well. It suggests that it is only slightly more difficult to make a virus for a well-firewalled system with user process levels. It's more like the difference between getting a leaf off the top of a shrub and getting one off the top of a giant redwood.
Yes...I could use COM, but since I very much dislike Windows and it's programming, that's out of the question. Plus, it's not portable. I actually have used jscript under wsh before, but COM objects aren't free. Effectively, they can't do as much unless I buy the associated programs.
Who cares when you don't like the language? Who cares about the language! It takes like a week to switch to a new one given a sufficiently large set of previously known ones; languages are a dime a dozen.
I'd much prefer to use a language I don't find clean and awesome and save myself hours of coding time than use one that's beautiful but takes forever. To me, beauty in the extreme means fast and neat, which means coding slowly in C or Fortran and using nobody else's code. What takes minutes in perl can take days that way.
Ironic choice of metaphor you picked. For my purposes, perl is usually the fastest way to get from point A (a plan) to point B (a finished prototype), though I'm not doing it in luxury - in style - like I would be in some more elegantly written languages. I would consider that to be the opposite of elitist, but that's just me.
Another thing along those lines is what you get to use from other people. If you can use other peoples code, you don't have to worry about your own.
This is where perl is a big winner over everything else. Nothing else even comes close as far as number of available packages.
I think one of my old professors said it best: "Nobody likes to write in perl, but it gets the job done."
I'm all geared up to make python and ruby my top picks just as soon as they have something like CPAN I can take code from, or until I start doing stuff that doesn't benefit from other people's code.
This is a weak argument, and it's informal. It doesn't have to be exact. Still, I qualified my argument by calling it a theory and using non-absolutes for every portion of my argument.
My reasoning included an argument with a single support. I did not make this particularly long because this is not actually meant to be an argument chain; it's a post on a website - it's only supposed to be an insight. If you want an argument, you can go google for it. I didn't make this up.
Don't you see a flaw in assuming that a simple post on a website determines one's abilities? I certainly wouldn't want anyone to think I was incapable of using punctuation properly because I used it wrong three times in a row in a post.
I think that bash is a very good example of my point.
I want my shell language to do an auto-nohup every time I open a new job.
Bash doesn't do it, and it can't, so I'm not using bash. I'm using a very feature-rich shell - zsh.
On the other hand, you do have a point to a certain degree. Either having the features or making it possible to add them easily is good enough for some people.
Yeah, it's a buzzword. Get over it. There is a theory that while people use only 10% of the features of applications such as Word, they each use a different 10%. This seems to be true because there aren't really a lot of examples of applications that lose features because they aren't used.
So in order to reach everybody - to give everybody what they want, you've got to have a very feature-rich application. When you don't have that what you'll get is people who are willing to make the switch because the missing features are either peripheral for them (I think I used the grammer checker twice - I'm much better at checking my own grammar than Word is), or that they never use (I never use the VBScript in Word, for instance), or they're willing to give it up because they're both honest and unwilling to pay $500 for a text editor.
A good compromise, I think, is to do those features that are easy to program after you build an initial editor - things like word counts, reading level checks (there are canned algorithms for this), spell checking, output writers, etc.
I would not include a syntax checker on this list. That means classifying every word in our language based upon part of speech and doing some context-based searches to figure out ambiguous words.
If you actually stick with basic functions (meaning functions that are less than 500 lines of code long), I think you'll be quite happy with OO.org. I am.
Maybe so (but can 1000 hamsters actually power google?)
They're going to redirect all search results to "http://thebrainisyourmaster.com," thereby making it the most popular site on the internet, and therefore one of the most trusted, making everyone want to elect the Brain as the leader of the world.
Then, to really clinch it, they'll use the money to buy everyone free t-shirts. It's foolproof.
You can't? I just tried that on my ps/2 keyboard under XFree4.2 using an old keyboard I pulled from a friend's broken e-machine (which means it's roughly the cheapest ps/2 keyboard you could buy). I used xev to monitor keyboard events.
Then I pressed (on the keypad) 4,5,6,and + all at the same time. I repeated this three times. Then I tried it on j,k,l and ; and got the same result.
xev registered every event - four separate key presses, and four key releases. Of course, it didn't consider them as one event, but that hardly matters, does it? All you have to do is check for events that are within the same tenth of a millisecond or so.
Eh...principal, principle. There are worse mistakes to be made.
It's not exactly written in stone, is it?
The key is that in a pure democracy, a rule by the people that ISN'T a republic in any form, the rights of the individual are not protected. In a republic there are certain matters where everyone's voice doesn't actually count.
No, it's a republic. Go look up the difference if you don't know it.
I believe that there are cases where the principal that governs a republic - that the welfare of the individual should be upheld by society despite the view of the masses - should basically hold sway over all public goods and services. Further, I would say that sticking that line in a EULA somewhere violates that protection.
You're basically saying, "sorry, it doesn't work that way, their conduct is dependant soley on our monetary votes." Why? I believe it is in the spirit of the law that this should be the case, even if not in the letter yet. This is exactly the kind of thing that should be protected by legislation in a republic.
I wouldn't be surprised if there isn't a law within the next ten years to the effect of "a goods or services provider can't disclose personal information used to track the purchase or usage of their goods or services without a court order."
It's been done. It's even been done with a UAV helicopter, which is a great deal harder to do (though the gains in usability are exceptional).
Specifically, there is a UAV competition held by AUVS every year, and people do a lot of amazing stuff there.
What's interesting about this particular vehicle is that it uses XP-embedded over another operating system. Otherwise, it's like all the rest.
Did you even read what I wrote? I don't trust either. I gave good reasons not to trust either.
You gotta find people to trust, though, at least on some facts. There's just too much world out there to independently verify all the facts yourself, and if you've got nothing to go on you can't do very much.
Is professional training all it takes to get your respect?
I find that most professional news organizations (in my country, the USA) are trying to do whatever they can to push their agendas while also insinuating that they are impartial. It's downright duplicitous, and whats worse is that there are people who believe that their facts are totally true.
Most of the time you don't see this kind of thing in blogs, and I think the fact that the writers aren't professional journalists, and therefore aren't trained in the subtle art of fact-misdirection is one reason why. But you're right about the unverified stuff. There's no telling what you're getting with a blog.
I'd trust the average blog about as much as the average professional news agency, but for different reasons. In either case, a particular instance would have to earn my respect before I'd believe them above other sources.
Yeah...let me further your line of reasoning and say that there is no reason that we should have switched away from using base 1 for everything, since it's the first way, and every other approach is merely a redundant way to write it, and therefore part of the plot to lead to the eventual heat-death of the universe.
Computers use powers of two for every kind of calculation. The most important reason of all to do the measurements this way is because it's easier. It wasn't random, wasn't folly, wasn't totally rediculous.
The redefinition allows us to use the units in a calculable way. It also makes a kind of sense to redefine mega, giga, and tera in terms of base 2 because a byte is a base 2 unit. Why not just go all out when you're using them and make everything else base 2 as well? You may not that bits, which come out to a nice, round number in every number base, are measured in base 10. A terabit is 10^12 bits.
It's too much to ask that a microcontroller that reports usage have half of it's hardware devoted to base conversion, especially when the result may come out to some terrible fraction. To use your statement, I find that just because people are using mega, giga, and tera with the original meanings just because they're entrenched is folly at best and is better regarded as arrogant.
No, there's thirty years of soft research on the topic. When you're asking questions of preference and efficiency, and you're talking about humans you get a large measure of subjectivity. It's a soft science.
Don't you think designers would immediately use interface design ideas if they were sure that there was One True Interface? That, like you said, there is hard research?
Anyway, think of it more like this:
1) There are people with the ability to write a user interface.
2) There are people who can design an effective user interface.
3) There are people who can add a little to an effective interface design.
4) There are people who will use the design without any contribution to it.
The Gnome and KDE projects are all in group #1. Some may also fall into the other groups. Optimally, we would have groups #2 and #3 not simply be a subset of group #1, because there just aren't a lot of Cog Sci people in group #1.
Sure, don't bother designing, just make it possible for the users to do the design themselves and your job is done!
You seem to assume that group #1-#3 must all be the same persons. I see no reason for this conclusion.
That's exactly what got them into this mess in the first place.
I would beg to differ. I'm assuming by "this mess" you're referring to the story above. If Gnome was flexible enough, this group would probably just release a theme or something that would do exactly what they're looking for rather than having to make changes to Gnome itself. So essentially, it's the "not making it flexible" that got them into this mess, not the converse.
Well...nobody's really certain how to make the thing the most usable, so what I think we need is a way to customize it a lot.
That way, the interface can evolve into a set of interfaces which are generally as good as they can be for what they're used for.
Unfortunately, most of the parts of Gnome and KDE's UI are very difficult to customize. Gnome even took a giant leap backwards in this area by switching to Metacity as it's primary window manager.
I saw that Star Trek: Voyager episode.
The pinnical of man's evolution is:
frogs.
I also saw a Animaniacs episode about it.
The pinnical of man's evolution is:
a giant thumb.
I saw it on television, so it must be true.
Regex is logically equivalent (i.e. there is a polynomial time mapping between the regular expression language and the BNF) to a LR grammar, though it is more compact. I don't think the authors intended it as a substitute until LR got faster. I believe they intended it to be an LR-equivalent language.
I will admit, though, that sometimes I need the full thing, so I used a LR parser to make this.
It is a bit inefficient, actually, but I think it's worth it.
You may also notice if you look at my code that occasionally I use a regex in there every now and then when I know it won't be too expensive.
Regex isn't (always) fast, it isn't pretty, but it works, it's compact, and it has already been heavily tested.
One last thought: the concept of LR grammars where invented as a mathematical way to express regular expressions as a series of states, because states are a lot easier to deal with mathematically than regular expressions.
That's the only real reason. Regular expression came first, though. They're easier for people to come up with - more natural.
I'd rather debug perl that most other stuff.
There's a lot of different ways of doing stuff, but the end result is generally quite compact.
If the person codes in a generally sane manner (i.e. not using gotos, or using for loops to do everything, or something strange like that), it's easier, I think, to debug perl than many languages simply because you have less lines you have to look at to figure out whats going on.
This is especially true when you're talking about parsing text, since you get to look at regex patterns to figure out what's going on (looks to hard to manage? get over it. Regex is a small, orthogonal set of commands).
That said, it's still hard if they don't name the variables very well or comment the complicated parts, or if they do either of these in a language you don't understand.
This isn't a collection of fables that many different people hear different places and are therefore prone to variation. Aesop's Fables is a book. You can got to Gutenberg and get them.
If you heard a version that was different than the fables, it's not one of Aesop's Fables.
Maybe I'm just blessed. Google is all over my site. Searching for my name on Google returns my site as the number one hit, and sites about me are 1,2,3 and 8.
:)
All the other sites return stuff that hasn't changed in 5 years or more. A few are smart enough to get the perl module I put on CPAN, which is at least something.
Here's the bot's listing from my site.
I've not submitted anything to any search engine. Google is the only one that has found me after two years. Microsoft doesn't even know I exist.
The thing about all of those is that they've got the "simplicity" part down without actually providing extensibility.
This isn't entirely true, but it is mostly true (and I'm speaking of blackbox, fluxbox, and openbox, because I've never played with Ion). They let you write applets, but not Window behaviors. If you want to write a Window behaviour, you have to mess with the internals of them.
Actually, there are a few actually fully extensible things - there's a Java desktop and a
They lend themselves to monolithic development.
FVWM and Sawfish do not. Not that these are alone - there is a Java desktop, and a python one that are extremely configurable and extensible. The ones you mentioned don't fall into that category in my book, though.
Also I might add that this actually was made with TVWM, so...if you don't like part of it, you can simply not include it.
Therefore, no bloat with this.
To me, the perfect Window manager has functions for tiling vertically and horizontally, for minimizing all windows (like Meta-M in Windows), and for minimizing and saving the minimization and then unminimizing (like Meta-D in Windows), and must have a titlebar theme that looks good though has a pixelwidth of five or less (like MicroGUI/ NanoGUI) Oh, and it has a shortcut for opening an rxvt terminal mapped to "alt-X."
To date, the only Window managers I could get all of these things to happen in are Sawfish and TVWM.
Knowing that one man's feature is another man's bloat, Window managers should put everything into modules and make it easy to add/remove features.
The best way to go is to make the core contain an event manager, a titlebar manager, and an API.
Everything else should be components that add in later, since anything could be bloat, though it should be capable of adding anything else.
The only Window manager that I know that is that tiny but also extensible is TVWM, though extension is a real pain.
If the window managers are extremely difficult to extend, then bloat goes in and stays in. Much better to live without it and "stifle innovation" by making it a separate program or part of an extensible manager.
I keep waiting for them to change the name to something that makes some reference to Mozilla or Gecko, or to browsing. "Lesszilla" seems appropriate. Or how about Salamander? That's a creature of fire AND a lizard, and the plus side is that there's already a browser called that, giving yet another reason to change names again.
Since they already stepped on toes of OSS developers, why not step on other toes, too?
Call it "Web Explorer" or Explorer for short, or just "Better than Internet Explorer."
Or...maybe they could just absorb the Mozilla name?
I'm with you on the REAL firewall thing.
Get something with stateful packet inspection, ability to recognize port scans and cut off access (i.e. an intrusion detection system), response time in under half a second, and a logger that shows everything that has happened for the last four weeks, just in case. Oh, and just in case it gets hacked, make sure you have a way of showing it's process listings.
What can do all of these things? Certainly not the cheap Linksys router you suggested. Those don't even come with an IDS. I know because I have one of the latest models.
For that you're going to have to buy something that costs over a grand...or a $40 133Mhz machine.
How about instead of suggesting a hardware firewall, we say a dedicated firewall, since a grand is a bit much to pay for the good features.
As far as fruit goes, I don't think the analogy fits too well. It suggests that it is only slightly more difficult to make a virus for a well-firewalled system with user process levels. It's more like the difference between getting a leaf off the top of a shrub and getting one off the top of a giant redwood.
Yes...I could use COM, but since I very much dislike Windows and it's programming, that's out of the question. Plus, it's not portable. I actually have used jscript under wsh before, but COM objects aren't free. Effectively, they can't do as much unless I buy the associated programs.
Who cares when you don't like the language? Who cares about the language! It takes like a week to switch to a new one given a sufficiently large set of previously known ones; languages are a dime a dozen.
I'd much prefer to use a language I don't find clean and awesome and save myself hours of coding time than use one that's beautiful but takes forever. To me, beauty in the extreme means fast and neat, which means coding slowly in C or Fortran and using nobody else's code. What takes minutes in perl can take days that way.
Ironic choice of metaphor you picked. For my purposes, perl is usually the fastest way to get from point A (a plan) to point B (a finished prototype), though I'm not doing it in luxury - in style - like I would be in some more elegantly written languages.
I would consider that to be the opposite of elitist, but that's just me.
Another thing along those lines is what you get to use from other people. If you can use other peoples code, you don't have to worry about your own.
This is where perl is a big winner over everything else. Nothing else even comes close as far as number of available packages.
I think one of my old professors said it best:
"Nobody likes to write in perl, but it gets the job done."
I'm all geared up to make python and ruby my top picks just as soon as they have something like CPAN I can take code from, or until I start doing stuff that doesn't benefit from other people's code.