Why not just compile everything as modules? That's what most modern distributions do. Compile everything as a module and only insert the ones for the devices that the user has. I know that on all my computers I compile several ethernet devices as modules that I don't have in the computer (like ne2k-pci) so that if my ethernet card breaks or something I'll have the module available anyway.
Does the clie have a built-in DSP or does it send data out to that funky headphone thing? Or do they decode mp3s on their dragonball (or do they use another microprocessor)? I don't understand how it works.
If they have an extra DSP on there, if you can program it, it might be possible to support other audio formats (such as ogg vorbis).
Solaris has had packages for a long time, but
nothing compares to Debian or RedHat as far as
package management goes. With Solaris I can
download patch clusters and run them all in a script, but it's not nearly as easy "apt-get update; apt-get upgrade". Similarly, hunting down some package and all the utilities it requires and compiling them all is much more tedious than "apt-get install that_package".
Do you see Solaris incorporating some of the package management features found in Linux systems?
Also, Unix vendors many times have very feature-incomplete versions of utilities compared to their respective GNU versions. For instance, GNU tar (while lacking some of the Solaris tar options) has many features that are extremely handy. Do you see Unix vendors in the future incorporating more free tools over the proprietary ones they have, and if so what do you think the time frame is? Do you think that Unix vendors that move towards GNU tools and make their installations more "Linux"-like will have an edge, or will moving to unfamiliar tools be a hindrance?
Does anyone besides me find this type of thing annoying:
The Duron 1.2GHz requires 1.75 volts of
power.
You would think that someone who wanted to be respected for writing a hardware review would at least try to remember the Voltage, Current, Resistance, and Power relationships that he or she learned in high school.
Your processor may only use a supply voltage of 1-2 V, but if you still need a heatsink and fan it's obviously using tens of watts of power.
Actually, one of the problems with modern processors is that power is going up in processors while supply voltage is going down. That means much more current. Around half of the pins on modern processors are for power and ground. You start to see wierd problems with metal migration on the power supply wires, ground bounce problems from wire inductance, and all sorts of other strange problems.
I think that most of us that use linux on a regular basis know that given a good setup (reliable server with a bunch of diskless netboot clients, all running KDE or Gnome or whatever with SomethingOffice installed, and doing an autoRPM or apt-get upgrade every few days automatically, and a nice fast postscript laser printer) know that a good setup can require basically ZERO administration after setup (and not too hard to set up for someone who knows what she is doing).
The problem is that when someone in the education system goes to CompUSA or their local Mom and Pop computer store, they don't get someone who will set them up with that sort of thing.
So here is what you need to do: volunteer your time. Set up that computer network for your school, especially those of you with children in it.
You can also help the school with find good deals on businesses wanting to get rid of equipment... those old PII 233's that they don't want to use anymore can be a big tax writeoff for them, and would work fine as a diskless workstation.
But the problem is that most school teachers don't have much of a clue in the realm of computers. They don't know how to make a dozen half-broken computers into a lab. So volunteer your time and help them get set up!
$ apropos rename
dpkg-name (1) - rename Debian packages to full package names
mmove (1) - move or rename an MSDOS file or subdirectory TQ
mren (1) - rename an existing MSDOS file TQ
mv (1) - move (rename) files
rename (1) - renames multiple files
rename (2) - change the name or location of a file
XStoreName (3x) - set or read a window's WM_NAME property
XStoreNamedColor (3x) - set colors
"man -k rename" would also have worked.
See, they just don't know how to use the man pages. They should have "man man"ed.:-)
Damn! Are you a microsoft settlement laywer or something?
Ha! I do DSP architecture on primarily Solaris boxen at work, and at home I pretty much use x86 linux.
But I think that having fair pricing for their products limits their ability to leverage their monopoly (as they have been doing).
Actually, I'm suprised that MS didn't fight to get this provision out of their settlement. They would have done better to split themselves in
two or three companies and still be able to use their monopolies of Office and Windows to bully vendors into doing their will than to have to sell licenses fairly.
Imagine this: Dell can (for instance) start selling pre-installed dual-boot RedHat/Windows machines (or Windows-on-VMware machines) to home buyers and companies and there isn't anything MS can do to "punish" them. That's huge.
At least for the abuse of monopoly in the OS realm...
You seem to admit here that the proposed settlement is not complete.
Uh, I was under the impression that this litigation was from MS using their power as an OS monopoly to have unfair business practicies. They might do the same with their Office products, but I think that would fall under different litigation.
This is not just about one tactic for illegally maintaining their monopoly. It is also about illegally leveraging their monopoly to create new monopolies. It is also about protecting the public against harmful bussiness practices.
Being forced to sell to everyone at a fair price severely inhibits MS's ability to continue to leverage their OS monopoly. That limits their ability to force OEMs to do things. The other part comes from MS making non-MS software not work. This will (theoretically) come from MS documenting their OS behaviour.
And I know it's not popular around slashdot, but I'm just not in favor of having the government beat MS into a bloody pulp. Sure, they are about as wicked as a company can get (and, unlike Apple, are in a position to act out their evil ways). I don't like MS, I don't like their software, and I surely don't like their business practices. But, on the other hand, I think that the government should mess with companies as little as possible. I think it's necessary for the government to do something in this case, but I think it's wrong for the govt to determine MS's product roadmap.
And I think that this settlement is a reasonable compromise. Not great, not horrible, but reasonable.
B. Microsoft's provision of Windows Operating System Products to Covered OEMs shall be pursuant to uniform license agreements with uniform terms and conditions. Without limiting the foregoing, Microsoft shall
charge each Covered OEM the applicable royalty for Windows Operating System Products as set forth on a schedule, to be established by Microsoft and published on a web site accessible to the Plaintiffs and all
Covered OEMs, that provides for uniform royalties for Windows Operating System Products, except that:
1.the schedule may specify different royalties for different language versions;
2.the schedule may specify reasonable volume discounts based upon the actual volume of licenses of any Windows Operating System Product or any group of such products; and
3.the schedule may include market development allowances, programs, or other discounts in connection with Windows Operating System Products, provided that:
a.such discounts are offered and available uniformly to all Covered OEMs, except that Microsoft may establish one uniform discount schedule for the ten largest Covered OEMs and a second uniform discount schedule for the eleventh through twentieth largest Covered OEMs, where the size of the OEM is measured by volume of licenses;
b.such discounts are based on objective, verifiable criteria that shall be applied and enforced on a uniform basis for all Covered OEMs; and
c.such discounts or their award shall not be based on or impose any criterion or requirement that is otherwise inconsistent with any portion of this Final Judgment.
This is the most important provision of the entire settlement.
This eliminates Microsoft's ability to use strong-arm tactics in the ways it has been doing -- not giving special pricing to vendors who don't stay in line with what Microsoft and friends wants to do. It says that if you buy (OEM) licenses from Microsoft that (almost) no matter what you do as long as you buy the same number of licenses as someone else you'll get the same price.
The only thing that I would like better is for the Microsoft License Schedule to be applied uniformly to all customers, regardless of OEM status. Without that, Microsoft may find loopholes to force companies out of OEM status and buy retail licenses (or whatever) but this is still a huge step.
There is lots of talk about MS Word for Linux and such, but I think that would only further the monopoly, and I just don't think it's right for the government to mandate a product line. I think that fair pricing, however, is something totally reasonable and that will, in the end, hurt Microsoft more than most unfair measures we could add.
Having uniform licensing to all (not just OEMs) would be the one change I would make if I got one choice, but if I got two changes I would make Microsoft release all the API specs in a public forum and make them freely available, instead of just on MSDN. Say, on their web site and with the clause that they must be freely distributable in an unmodified form.
I think that those two things would make this settlement even better, but as it stands I think that the settlement is a fair solution.
At least for the abuse of monopoly in the OS realm, which is what this is all about.
Jaywalking law is legitamite because it establishes culpability in an accident. If someone walks out from between two cars in the middle of the street and I hit them, it's not my fault; they were the ones breaking the law (and I can sue for damage to my car!). However, if they are in a crosswalk and I hit them then it's my fault.
We expect that transistors keep getting smaller, and faster about the same rate as they get smaller. Gate delays are (looking out 5 to 10 years) not a big worry.
The big worry is wire speed. Wires aren't getting much faster, even though dies are getting larger and clock frequencies are getting faster. It used to be that getting from point A to point B on a chip was no problem to do at the end of a clock cycle. Current processors are getting to be so fast that you can't get from one place to another in a whole clock cycle in some cases. Unlike transistors, wire delay gets worse as size gets smaller, because resistance goes up fast (scales with cross-sectional area), and wire delay is proportional to R*C. You can do some tricks to keep wire speed the same, but relative to switching speed and transistor size it still gets bad quickly.
Routing information around is the problem of the future. You get free computation on the way, but getting from point A to B is the hard part.
That being said, fast-switching, low-power transistors are nice.:-)
And, for all you patent-ballyhooers, Intel will patent this (probably). As they should. Other companies will license this patent from Intel in the same way that Intel licenses patents on other aspects of their processes from other companies. That's the way things work.
One of the reasons you want a high-k layer is for making micro-capacitors to minimize ground bounce.
One of the big problems with current chips is that voltages are getting so low and current is getting so high, and with clock gating to turn off things that don't need power you get the inductance of wires causing a lot of ground bounce, which can be really bad. So you want to add capacitance to offset the inductance, but there isn't really a high-k layer in most processes to make capacitors out of.
Some things don't work so well hugely distributed.
Your example, fluid dynamics, for instance.
Most fluid dynamics simulations (at least the ones that I helped do) involve lots of I/O. Distributed.net-type-things don't work for anything requiring huge amounts of I/O. They might work in a beowulf-type setting (our fluid dynamics stuff split up across nodes fairly well) but there is a really large amount of traffic, which won't work when people are on the end of a 56k modem. For distributed.net, there is very little traffic compared to the amount of computation. Similar for seti@home.
Most things that require large amounts of computation, though, also require large amounts of bandwith to go through large amounts of data.
Philosophical differences, and the Unix Way
on
Apple releases iPod
·
· Score: 3, Insightful
I like it. iTunes, for those that haven't used a Mac, is REALLY slick.
I've used it. It's not insanely great.
It is a great UI and makes things really easy and intuitive. My fiancee recently got an iBook, and she loves how easy it is to rip CDs into her machine and burn CDs. Rather than swapping applications, she does it all within iTunes.
Uh, there are rip/(encode/decode)/burn scripts for UNIX... you see, when you have flexible tools it's trivial to make them work together.
Us geeks, who always acknowledged that Macs had a great UI (but we called them idiot machines) miss out on some of the impressive stuff that Apple does.
I will NEVER claim that the Macintosh is a "great UI". It is easy-to-learn. It is not easy-to-use for people used to a better interface (focus-follows-mouse? Multiple desktops? Remote display? Auto-select-to-clipboard? Give me my nice custom-configured X interface or give me death!)
Sure, it's easy to learn the Mac. I did when I was 5. But I need to be more productive now, and the Mac interface makes it too hard.
Speaking particularly of iTunes, how do I script it into apache? How do I use it from the command line? How do I run it on the machine hooked into my stereo from my desktop with the display that is in the other room? This is trivial and elegant in my UNIX environment.
The Macintosh way is to organize things by things the users do, not the underlying file system. This is a HUGE paradigm shift from the Unix (everything is a file) paradigm, and from the Microsoft (everything is about something).
The Macintosh way (much like the Windows way) is to have applications that do everything you want to do. All your word-processing needs in Word. All your web-browsing needs in Internet Explorer. All your audio needs in iTunes.
The problem with this way is that in the end it is too restrictive. If all you have is internet explorer, what if you want to do an ``internet-explorer -dump http://go-gnome.com | sh''
Or maybe you want to use internet explorer to recursively download a site for mirroring or archival?
Ahhh... you say... but with OS X or Cygwin I can use bash and lynx! True, true. But at the point you're using lynx and the bourne shell and scripts pulling together cdparanoia, lame, and cdrecord, you're not doing things the Mac or Windows way, you're doing things the UNIX way.
I do computer architecture as my job. It would be impossible for us to use Mac or Windows machines. Some of the things would work -- the assembler would be fine to do in Windows (and there's one that works in Windows) and the simulator would work... but there are times when we redirect the trace output of one simulator into another to verify things... piping *that* output into a scrpit that gathers statistics and such. You don't just open up the ``save trace as...'' dialog box when you are about to spit out a 100-gig trace file, you need the flexability of being able to stream it into another application. And you don't want to have to open dialog boxes for 80 different possible configurations and sit there and wait for them to run when you can script together doing all the configurations on all the test files spreading across several machines over the weekend.
The UNIX way is about flexible tools. Tools that work well together. Tools that are elegant and flexable. Tools that work well regardless of where you are, where you're coming from, or where you're going. This provides power for the UNIX user that surpasses that which someone using GUI tools on Windows or a Mac can ever know.
Sure, it takes longer to learn. Most of the best things do. The sharper the learning curve, the bigger the payoff. That's why most UNIX gurus use emacs or vi... they're not easy to learn, but they are powerful.
A UNIX guru can't take working with inferior tools. She can't stand sitting there doing a repetative task when she should be scripting it. She understands that her job is to be the master, and the computer is the tool to do the repetative job.
I've been waiting for a while for a decent case/mobo that will fit reasonably well under the seat of my car. With an inverter plugged into the cigarette lighter, a tape adapter into my car's stereo unit, and a microphone mounted in the roof fabric, a little IBM ViaVoice and some scripting magic my car word-recognition-activated car mp3 player will once again live!
I did this once before with just a computer that sat in the foot well and used festival and a word recognition engine (which interpreted words incorrectly most of the time) called ears. Sitting the box in the footwell was unacceptable, but I think the concept works well. Certainly voice activation is the way to go.
Onboard sound, ethernet, and video... you don't need anything besides some media and some ram!
Because of the lameness filter, I have put my prompt code here
That's Date in red, number of messages in my mail spool file in brighter red, current umask in red, current username and active group name in blue, current path in green, hostname in bright green, current command history number, and exit status of the previous command.
It's pretty sick. But it provides lots of information.
Just be up-front with what you are planning. If you are a closed-source company, don't say that they will be able to GPL all their work and then turn around and say they can't. Make it clear before hand what is supposed to be free software and what is supposed to be company-propriatery.
I know that there are a lot of people who work in various places where there is competition-sensitive and even classified information and still work on free software. You just have to make it known beforehand what the bounds of who owns what and how it is to be licensed is.
You should also make it clear about the bounds of what the employee is allowed to do during work... for instance, Linus is explicitly allowed to work on the Linux kernel at work, but perhaps you want your employees working on your software at work and only working on their free projects on their own time.
All in all, however, I think this is a good thing. If you're up front than those who will only work on free projects for philosophical reasons just won't accept the offer, and it will help you find a good person who doesn't mind working in both realms.
I'd start by restricting guns, which do far more
damage
Don't you understand? Saying that guns do damage is even more stupid than saying that violent video games do damage. Guns are merely a tool; the problem is that there are some people out there that think that they should kill other people for no good reason. Violence in the culture may foster this belief, though personally I think that's a load of crap. Certainly, however, it is not the fault of the guns.
Besides, guns are probably less deadly than bombs... I personally think that if we can keep the crazy students trying to kill everyone with a couple of guns we'll be a lot better than if they figure out that a few bombs can do much more damage.
I think that something that people don't quite grasp is the difference between Easy-to-Use and Easy-to-Learn. They are too often used interchangably. This is a terrible crime.
I find Linux amazingly easy-to-use (And UNIX in general, except for things like CDE, but that is another story). I can get done what I need to get done. I can find out what I need to find out about everything. I know exactly what the programs running on my computer do, how they are run, and how they interact, so I can fix problems when they come up rather than just shrug. I love my command line, and shell scripting, and script languages, and can do amazingly complex tasks fairly easily with them.
My window manager is configured to be fairly fast, so that I can use my keyboard to get around easily and accomplish other tasks easily. Selecting copies to the clipboard, middle-click pastes. All these things make me powerful on my computer.
This all took me a while to learn, however.
MacOS (and also Windows) fall under ``easy-to-learn''. They do not have as many of the flexible, powerful tools available to them. They really don't care about that, they want people to be able to do easy tasks without having to sit down and understand things. Things are hidden from the user as much as possible; many times it is impossible to do tasks that are trivial under a UNIX machine.
``easy-to-learn'' systems are important in a world where people don't want to have to figure out how things work in order to play solitaire or download email viruses^W^W porn^H^H^H^H games and emails from friends. To this end, I think that Linux is fairly easy-to-learn from a user perspective, though adminisration is still rough.
But even administration has become much more ``easy-to-learn.'' And userland is getting better almost weekly.
On the contrary, MacOS (until maybe OSX, I will believe it when I see it) and Windows have not become, for me, any more easy-to-use. They are easier to learn, but still not as easy-to-use.
Please don't stick me in front of a computer that isn't easy-to-use. I just can't take it. I need to be productive in front of a computer, if you take the productivity away from me it is terribly frustrating.
This advantage is badly harmed by the fact that X has a very poor security model.
I'd disagree with this. xhosting is bad, but that's not how we set up remote X sessions nowadays, we use xauth keys, or even better, carry it over an SSH tunnel (which is how I do it).
It seamlessly allows local and remotely-running programs to work together on a display
It is flexible enough to allow programs to fully determine how it is to behave on lots of things -- X does not force you into a specific widget set or window decoration method, window placement behaviour, or anything else
It is flexible enough to have extensions to help with some things. Lately we have seen extensions to add Anti-Aliased fonts and to aid in 3D display and moving picture display.
Many of the old ``problems'' of X, such as no anti-aliased fonts and poor support for moving pictures and 3D, are being addressed within the existing framework of X. This is because X is great, it allows for this sort of advancement while still having compatability.
If you want to make your windowing stuff faster, if it's X's fault you can almost always fix it. But I think that we can do a lot from within the framework of X. I see a future where X actually has most of the stuff running inside the video card, and programs on the local machine sending updates to it, similar to the way in which programs update remote displays over a network. Without the framework of a flexibile windowing architecture this is impossible, but with flexibility it is within reason.
Please don't get rid of the good to go with the new. Don't just sit around and bash X, either. 'Cause X kicks butt. If you have a problem with X, fix it. Don't just whine.
If they have an extra DSP on there, if you can program it, it might be possible to support other audio formats (such as ogg vorbis).
Do you see Solaris incorporating some of the package management features found in Linux systems?
Also, Unix vendors many times have very feature-incomplete versions of utilities compared to their respective GNU versions. For instance, GNU tar (while lacking some of the Solaris tar options) has many features that are extremely handy. Do you see Unix vendors in the future incorporating more free tools over the proprietary ones they have, and if so what do you think the time frame is? Do you think that Unix vendors that move towards GNU tools and make their installations more "Linux"-like will have an edge, or will moving to unfamiliar tools be a hindrance?
You would think that someone who wanted to be respected for writing a hardware review would at least try to remember the Voltage, Current, Resistance, and Power relationships that he or she learned in high school.
Your processor may only use a supply voltage of 1-2 V, but if you still need a heatsink and fan it's obviously using tens of watts of power.
Actually, one of the problems with modern processors is that power is going up in processors while supply voltage is going down. That means much more current. Around half of the pins on modern processors are for power and ground. You start to see wierd problems with metal migration on the power supply wires, ground bounce problems from wire inductance, and all sorts of other strange problems.
The problem is that when someone in the education system goes to CompUSA or their local Mom and Pop computer store, they don't get someone who will set them up with that sort of thing.
So here is what you need to do: volunteer your time. Set up that computer network for your school, especially those of you with children in it.
You can also help the school with find good deals on businesses wanting to get rid of equipment ... those old PII 233's that they don't want to use anymore can be a big tax writeoff for them, and would work fine as a diskless workstation.
But the problem is that most school teachers don't have much of a clue in the realm of computers. They don't know how to make a dozen half-broken computers into a lab. So volunteer your time and help them get set up!
$ apropos rename
:-)
dpkg-name (1) - rename Debian packages to full package names
mmove (1) - move or rename an MSDOS file or subdirectory TQ
mren (1) - rename an existing MSDOS file TQ
mv (1) - move (rename) files
rename (1) - renames multiple files
rename (2) - change the name or location of a file
XStoreName (3x) - set or read a window's WM_NAME property
XStoreNamedColor (3x) - set colors
"man -k rename" would also have worked.
See, they just don't know how to use the man pages. They should have "man man"ed.
Ha! I do DSP architecture on primarily Solaris boxen at work, and at home I pretty much use x86 linux.
But I think that having fair pricing for their products limits their ability to leverage their monopoly (as they have been doing).
Actually, I'm suprised that MS didn't fight to get this provision out of their settlement. They would have done better to split themselves in two or three companies and still be able to use their monopolies of Office and Windows to bully vendors into doing their will than to have to sell licenses fairly.
Imagine this: Dell can (for instance) start selling pre-installed dual-boot RedHat/Windows machines (or Windows-on-VMware machines) to home buyers and companies and there isn't anything MS can do to "punish" them. That's huge.
Uh, I was under the impression that this litigation was from MS using their power as an OS monopoly to have unfair business practicies. They might do the same with their Office products, but I think that would fall under different litigation.
Being forced to sell to everyone at a fair price severely inhibits MS's ability to continue to leverage their OS monopoly. That limits their ability to force OEMs to do things. The other part comes from MS making non-MS software not work. This will (theoretically) come from MS documenting their OS behaviour.
And I know it's not popular around slashdot, but I'm just not in favor of having the government beat MS into a bloody pulp. Sure, they are about as wicked as a company can get (and, unlike Apple, are in a position to act out their evil ways). I don't like MS, I don't like their software, and I surely don't like their business practices. But, on the other hand, I think that the government should mess with companies as little as possible. I think it's necessary for the government to do something in this case, but I think it's wrong for the govt to determine MS's product roadmap.
And I think that this settlement is a reasonable compromise. Not great, not horrible, but reasonable.
Well, theoretically that violates the provisions, I think. At least in spirit.
(from the settlement)
This is the most important provision of the entire settlement.
This eliminates Microsoft's ability to use strong-arm tactics in the ways it has been doing -- not giving special pricing to vendors who don't stay in line with what Microsoft and friends wants to do. It says that if you buy (OEM) licenses from Microsoft that (almost) no matter what you do as long as you buy the same number of licenses as someone else you'll get the same price.
The only thing that I would like better is for the Microsoft License Schedule to be applied uniformly to all customers, regardless of OEM status. Without that, Microsoft may find loopholes to force companies out of OEM status and buy retail licenses (or whatever) but this is still a huge step.
There is lots of talk about MS Word for Linux and such, but I think that would only further the monopoly, and I just don't think it's right for the government to mandate a product line. I think that fair pricing, however, is something totally reasonable and that will, in the end, hurt Microsoft more than most unfair measures we could add.
Having uniform licensing to all (not just OEMs) would be the one change I would make if I got one choice, but if I got two changes I would make Microsoft release all the API specs in a public forum and make them freely available, instead of just on MSDN. Say, on their web site and with the clause that they must be freely distributable in an unmodified form.
I think that those two things would make this settlement even better, but as it stands I think that the settlement is a fair solution.
At least for the abuse of monopoly in the OS realm, which is what this is all about.
Jaywalking law is legitamite because it establishes culpability in an accident. If someone walks out from between two cars in the middle of the street and I hit them, it's not my fault; they were the ones breaking the law (and I can sue for damage to my car!). However, if they are in a crosswalk and I hit them then it's my fault.
D'oh. Subject should read either "so what about gate delay" or "now what about wire delay".
The big worry is wire speed. Wires aren't getting much faster, even though dies are getting larger and clock frequencies are getting faster. It used to be that getting from point A to point B on a chip was no problem to do at the end of a clock cycle. Current processors are getting to be so fast that you can't get from one place to another in a whole clock cycle in some cases. Unlike transistors, wire delay gets worse as size gets smaller, because resistance goes up fast (scales with cross-sectional area), and wire delay is proportional to R*C. You can do some tricks to keep wire speed the same, but relative to switching speed and transistor size it still gets bad quickly.
Routing information around is the problem of the future. You get free computation on the way, but getting from point A to B is the hard part.
That being said, fast-switching, low-power transistors are nice. :-)
And, for all you patent-ballyhooers, Intel will patent this (probably). As they should. Other companies will license this patent from Intel in the same way that Intel licenses patents on other aspects of their processes from other companies. That's the way things work.
One of the big problems with current chips is that voltages are getting so low and current is getting so high, and with clock gating to turn off things that don't need power you get the inductance of wires causing a lot of ground bounce, which can be really bad. So you want to add capacitance to offset the inductance, but there isn't really a high-k layer in most processes to make capacitors out of.
Most fluid dynamics simulations (at least the ones that I helped do) involve lots of I/O. Distributed.net-type-things don't work for anything requiring huge amounts of I/O. They might work in a beowulf-type setting (our fluid dynamics stuff split up across nodes fairly well) but there is a really large amount of traffic, which won't work when people are on the end of a 56k modem. For distributed.net, there is very little traffic compared to the amount of computation. Similar for seti@home.
Most things that require large amounts of computation, though, also require large amounts of bandwith to go through large amounts of data.
Sure, it's easy to learn the Mac. I did when I was 5. But I need to be more productive now, and the Mac interface makes it too hard.
Speaking particularly of iTunes, how do I script it into apache? How do I use it from the command line? How do I run it on the machine hooked into my stereo from my desktop with the display that is in the other room? This is trivial and elegant in my UNIX environment.
The Macintosh way (much like the Windows way) is to have applications that do everything you want to do. All your word-processing needs in Word. All your web-browsing needs in Internet Explorer. All your audio needs in iTunes.The problem with this way is that in the end it is too restrictive. If all you have is internet explorer, what if you want to do an ``internet-explorer -dump http://go-gnome.com | sh'' Or maybe you want to use internet explorer to recursively download a site for mirroring or archival?
Ahhh... you say... but with OS X or Cygwin I can use bash and lynx! True, true. But at the point you're using lynx and the bourne shell and scripts pulling together cdparanoia, lame, and cdrecord, you're not doing things the Mac or Windows way, you're doing things the UNIX way.
I do computer architecture as my job. It would be impossible for us to use Mac or Windows machines. Some of the things would work -- the assembler would be fine to do in Windows (and there's one that works in Windows) and the simulator would work ... but there are times when we redirect the trace output of one simulator into another to verify things... piping *that* output into a scrpit that gathers statistics and such. You don't just open up the ``save trace as...'' dialog box when you are about to spit out a 100-gig trace file, you need the flexability of being able to stream it into another application. And you don't want to have to open dialog boxes for 80 different possible configurations and sit there and wait for them to run when you can script together doing all the configurations on all the test files spreading across several machines over the weekend.
The UNIX way is about flexible tools. Tools that work well together. Tools that are elegant and flexable. Tools that work well regardless of where you are, where you're coming from, or where you're going. This provides power for the UNIX user that surpasses that which someone using GUI tools on Windows or a Mac can ever know.
Sure, it takes longer to learn. Most of the best things do. The sharper the learning curve, the bigger the payoff. That's why most UNIX gurus use emacs or vi... they're not easy to learn, but they are powerful.
A UNIX guru can't take working with inferior tools. She can't stand sitting there doing a repetative task when she should be scripting it. She understands that her job is to be the master, and the computer is the tool to do the repetative job.
I did this once before with just a computer that sat in the foot well and used festival and a word recognition engine (which interpreted words incorrectly most of the time) called ears. Sitting the box in the footwell was unacceptable, but I think the concept works well. Certainly voice activation is the way to go.
Onboard sound, ethernet, and video... you don't need anything besides some media and some ram!
Because of the lameness filter, I have put my prompt code here That's Date in red, number of messages in my mail spool file in brighter red, current umask in red, current username and active group name in blue, current path in green, hostname in bright green, current command history number, and exit status of the previous command. It's pretty sick. But it provides lots of information.
I know that there are a lot of people who work in various places where there is competition-sensitive and even classified information and still work on free software. You just have to make it known beforehand what the bounds of who owns what and how it is to be licensed is.
You should also make it clear about the bounds of what the employee is allowed to do during work... for instance, Linus is explicitly allowed to work on the Linux kernel at work, but perhaps you want your employees working on your software at work and only working on their free projects on their own time.
All in all, however, I think this is a good thing. If you're up front than those who will only work on free projects for philosophical reasons just won't accept the offer, and it will help you find a good person who doesn't mind working in both realms.
Don't you understand? Saying that guns do damage is even more stupid than saying that violent video games do damage. Guns are merely a tool; the problem is that there are some people out there that think that they should kill other people for no good reason. Violence in the culture may foster this belief, though personally I think that's a load of crap. Certainly, however, it is not the fault of the guns.
Besides, guns are probably less deadly than bombs... I personally think that if we can keep the crazy students trying to kill everyone with a couple of guns we'll be a lot better than if they figure out that a few bombs can do much more damage.
The readability and maintainability of perl with the blazing speed of smalltalk! This is even better than Java! Count me in!
I find Linux amazingly easy-to-use (And UNIX in general, except for things like CDE, but that is another story). I can get done what I need to get done. I can find out what I need to find out about everything. I know exactly what the programs running on my computer do, how they are run, and how they interact, so I can fix problems when they come up rather than just shrug. I love my command line, and shell scripting, and script languages, and can do amazingly complex tasks fairly easily with them.
My window manager is configured to be fairly fast, so that I can use my keyboard to get around easily and accomplish other tasks easily. Selecting copies to the clipboard, middle-click pastes. All these things make me powerful on my computer.
This all took me a while to learn, however.
MacOS (and also Windows) fall under ``easy-to-learn''. They do not have as many of the flexible, powerful tools available to them. They really don't care about that, they want people to be able to do easy tasks without having to sit down and understand things. Things are hidden from the user as much as possible; many times it is impossible to do tasks that are trivial under a UNIX machine.
``easy-to-learn'' systems are important in a world where people don't want to have to figure out how things work in order to play solitaire or download email viruses^W^W porn^H^H^H^H games and emails from friends. To this end, I think that Linux is fairly easy-to-learn from a user perspective, though adminisration is still rough. But even administration has become much more ``easy-to-learn.'' And userland is getting better almost weekly.
On the contrary, MacOS (until maybe OSX, I will believe it when I see it) and Windows have not become, for me, any more easy-to-use. They are easier to learn, but still not as easy-to-use.
Please don't stick me in front of a computer that isn't easy-to-use. I just can't take it. I need to be productive in front of a computer, if you take the productivity away from me it is terribly frustrating.
Rant over.
I'd disagree with this. xhosting is bad, but that's not how we set up remote X sessions nowadays, we use xauth keys, or even better, carry it over an SSH tunnel (which is how I do it).
- It seamlessly allows local and remotely-running programs to work together on a display
- It is flexible enough to allow programs to fully determine how it is to behave on lots of things -- X does not force you into a specific widget set or window decoration method, window placement behaviour, or anything else
- It is flexible enough to have extensions to help with some things. Lately we have seen extensions to add Anti-Aliased fonts and to aid in 3D display and moving picture display.
Many of the old ``problems'' of X, such as no anti-aliased fonts and poor support for moving pictures and 3D, are being addressed within the existing framework of X. This is because X is great, it allows for this sort of advancement while still having compatability.If you want to make your windowing stuff faster, if it's X's fault you can almost always fix it. But I think that we can do a lot from within the framework of X. I see a future where X actually has most of the stuff running inside the video card, and programs on the local machine sending updates to it, similar to the way in which programs update remote displays over a network. Without the framework of a flexibile windowing architecture this is impossible, but with flexibility it is within reason.
Please don't get rid of the good to go with the new. Don't just sit around and bash X, either. 'Cause X kicks butt. If you have a problem with X, fix it. Don't just whine.
Complex? You mean like an OS kernel, or a windowing system? How about a database?
TONS of Free Software out there is extremely complex.
Anyone have this ad in a non-sorensen version? Preferably mpeg, but anything playable by aviplay would work...