Look, I earned my spending money through college as an NT Admin. I run a small shop developing web applications on UNIX, but my desktop in W2K. My fiancee and I have 4 computers in our apartments, 3 are Windows PCs, 1 is a Mac. I'm not a Mac person, yet I can still respect what they have done right.
You are correct, WMP has successfully copied iTunes to the point of being similar, but it isn't as clean. Personally, I still use WinAMP on my Windows machines for MP3 playing, as does everybody I know. Then again, we all ran Netscape for a while too.
I have always used Audio Grabber/WinAMP for rip play. I used to use l3dec/Nero for burning. I haven't really messed with MP3s in a while, but I've never seen anything like iTunes.
The "playlist" is amazingly useful compared to WinAMP. The computer ships with a bunch of MP3s (which was nice since the computer arrived the day of a trip, and I barely had time to toss Mac:Office on there.
No question, MS has improved TREMENDOUSLY with each release. Win95 was the key release, but 98 and ME were similar evolutions in UI. 98's browser functionality was a marketing move, but it has resulted in some simplification of our lives. ME's media integration was useful. XP seems to be an attempt to match OS X. We shall see, MS seems to be able to be consistently 90%-95% of MacOS, which keeps them in the dominant position because they can undersell.
Look, I love scripting. I'm sitting here on my Compaq Armada running W2K with Outlook connected to my Exchange Server and SSH connections to our OpenBSD and Linux servers. The right tool in the right place.
When I ran DOS, I used batch scripts for various things.
As an NT Admin (boo, hiss, MCSE, boo, hiss) I used the resource kit and batch scripting to automate many administrative tasks. I also used other Windows scripting languages.
Scripting rocks, in its place. The reason why NT does well in small businesses is because of its interface. Sure, they probably need a pro to set up the box, but the day-to-day tasks can be handled my anyone with any intelligence.
Adding a new user, home directory, etc., is much more straightfoward on NT 4 (not a use 2K server fan) than under a Unix OS.
NT w/ resource kit (full of command line tools, many inspired by Unix), or OS X with the developers tools and a couple of useful GNU or BSD tools, give you the best of both worlds.
When you need to do something fancy, you have the command line to aid you. When you need to just get things done, the UI helps you out.
MS's problem is that the NT 3.51 had a great kernel, but NT4 and NT5 kept adding to the kernel trading stability for speed. They also throw things together for marketing reasons.
X Windows (really, the classic X Windows UI) is a powerful engineering tool. It was designed at MIT (an engineering school...) for engineering students and researchers. It was designed primarily to run xterms, lots of xterms.
Its great for coding, but it doesn't make a great general purpose UI. KDE/GNOME are a step in the right direction, but they aren't quite there. The real trick to GUI design is building the tools based around what the USER does, not how they are represented on the file system.
NT is too hampered by its DOS roots. (I don't mean codewise, NT's userspace, Win32, evolved API wise from Win16, which was bolted onto DOS).
Linux/Desktop developers should REALLY look at how OS X was built. The UNIX system is there, providing a stable kernel and API for running daemons. The GUI has its own system, complete with APIs, spaces in the filesystem, etc. They built a full GUI OS that sits on top of a UNIX system. The UNIX core is there, available, but they built a system for users.
Now, so much of the UNIX functionality is hidden that you can't do everything from within the GUI. Expose more of the system, and you have a more powerful system.
Don't shun it because its Apple, their second attempt at a UNIX GUI is a third system, evolved (conceptually) from A/UX and (directly) from NeXTSTEP (however it was spelt on Tuesdays...)...
Could Aqua be more powerful, sure. Could KDE/GNOME be more intuitive, sure?
CDE, MWM, etc, (Classic UNIX environments) are great engineering platforms...
I like it. iTunes, for those that haven't used a Mac, is REALLY slick. 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.
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.
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).
On a Windows box, you run a program to rip your CDs into MP3s. If you want to burn a CD, you use a program to convert them to WAVs, then you burn the WAVs to CDs.
On a Mac, you pop an audio CD in to your computer and add the songs to your library. If you burn a CD, you pop a blank in and hit burn CD. Now with iTunes 2, you'll have the option to make MP3 CDs (which previously would be done as burning a data CD).
In UNIX, you focus on the files. In a Mac, you focus on the activity. My fiancee doesn't have to think about file formats, she thinks about music. She barely touches her Windows PC or MIT's UNIX network anymore.
This device extends the Mac functionality. Instead of firing up Creative Lab's software and pick and choose which songs you want on it. Want to listen on the computer? Fire up WinAmp. Want to rip CDs, fire up that application.
With the iPod, it integrates into your system. You plug it in, it keeps your songs available. No need to mess with a clunky interface, the thumb-rolling thingy-ma-bopper looks like a clean way to use the device.
The Nomad Jukebox 20G with the batteries is about a pound. My brother loves his, but it mostly sits in the car now. He used to take it to the gym, but it wastoo big and bulky.
I realize that most Slashdotters are looking at the specs, but realize what this actually does. Its tiny, it'll fit in a jacket pocket (or pant pocket), its convenient.
Take it jogging, to the gym, etc. Sit in the park, walk around.
The Nomad Jukebox is too damned heavy.
This device rocks, I expect them to sell plenty.
I think that they should sell a Windows version of it with a Windows version of iTunes and a Firewire card, but that's just me.
Look, transistions suck. There is no question. Different industries get axed in different ways. We certainly need to be on the ball better to protect people during transitions. If someone loses a job because of incompetant, etc., then there is no problem with them being in trouble. However, those that lose their jobs because of structural changes in the economy probably should have a better safety net.
However, you understate the problem with busy work.
The United States has the world's largest economy. There are fewer than 300m of us, even with undocumented aliens, etc. We have a young (relative to our history considering life expectancy) retirement age, and a long childhood (mandatory schooling until 16, free schooling until 18, with over half the country going on to further education, 20 or 22), which leaves us with a small work force to push the economy.
During economic crisis, or feared crisis, we shrink the work force (great depression => social security, fear of post-war recession => GI Bill, other pushes for higher education).
During this last boom, wages were spiraling out of control for certain worker groups, which prevented companies from hiring, which likely cut off the boom earlier. Realize that we were PAST full employment... unemployment was lower than economists THOUGHT was possible with normal job switching.
If we can't rotate people into other sectors, our economy is going to peter out.
We need a system to HELP transition people. People replaced by technology need a system for:
A) training
B) maintaining their lifestyle during the transition
I normally don't like government programs, but I can see good reasons for federalizing this. If the company has to pay for the transitioning, the equation gets pushed AWAY from automation because of the added costs of paying former employees. If the employees pay for it, you screw people over. Spreading the costs across all Americans (taxes) prevents structual economic changes from falling upon the individuals hit or the regions that they are locating.
The other problem is what to do with older employees. Someone who is 45 or 50, that has held a job since they were 15-20, is in a difficult position to change functions. Perhaps we need a more useful early retirement system.
Ideally, we don't WANT companies or people to fear changes or avoid changes. We want to embrace changes.
It would be nice to live in a world where people (workers, entreprenuers always take risks) focus on doing their job and living their life. If there are changes, they figure out a way to adapt afterwards, instead of worrying or fearing change.
Just a thought, it might ADD efficiency to our economy...
I'm not trolling, I just want my god-damn free country back.
Then take it back. You're welcome to leave and find a new free country, or do something to keep this one free. What branch of the armed services are you in? What's your rank? Assignment?
Oh wait, that's right, this is Slashdot. You are entitled to everything. Newsflash, the Declaration of Independance and the Constitution are wonder implementations of enlighted philosophies. Their ability to exist was won with blood of patriots.
You and I, as civilians, sit here in the lap of luxury. We enjoy the freedom protects and provided by the men that gave their lives for the cause of freedom.
You then log on, and demand something?
If you believe that your free country is being taken from you, then go help the men and women that are defending it from foreign invaders. If you think that the government is enacting martial law through a fake war? Where is your gun? Where is your militia? Why aren't you fighting a revolution.
Freedom doesn't come easily or cheap. I cherish the priviliges of being a free American. To keep our "infidel" government in power, I'm willing to sacrifice the rights and liberties of EVERY SINGLE non-American, whether they live in the United States or abroad. If you hate this country, then leave. If you hate this government, then either leave or topple it. Why doesn't everyone that hates this government and seems to think that there would be some poetic justice in it falling do what they promised to do before the last election and leave the country.
A civilian appreciative of those sacrifices their lives so that I may enjoy the freedom that they provide,
Alex
Free Software is a set of principles. There is a concept of rights of the user. You release it open because its the "right thing" to do.
You can't "start and open source project" because there isn't really an open source project.
There are projects. Open Source is a type of licensing.
One of the effects of the licensing is that you may get help. This is terrific. We use open source projects, if we modify the system, we submit patches. That's the benefit of it.
However, all open source projects are run as normal projects. Many of the top (quality of code) projects started as University projects (PostgreSQL, BSD, etc.). Some of them are run by corporations, but if the anti-corporate garbage from Slashdot is an indication of the programmers (I don't believe it is, however), you won't get support because nobody wants to make anybody rich.
The trick is to build a solid foundation. If you get help, terrific. However, you'll have to focus on project management. It's like being a "real" project manager, but since you don't pay your programmers, they aren't going to take orders as well.
If this project is of use to a corporation, see if they will "sponser" the project. Maybe you can make a proposition (show them that this could make them or save them X dollars if completed, so if they can supply Y dollars or programming hours (YX) then you can get the unpleasant part done).
Be creative. However, there is no magic bullet.
Building software is building software. Whatever license you stick on the final product is separate from the process of GETTING the product.
If I had to predict a reason, it is probably because Trolltech's paying customers want integrated database access. If you are building a corporate app to deploy across Win32 AND Linux desktops to access the corporate database, you likely want it to be able to. In fact, you probably want the app to function without calling an external Java system and therefore need a Java programmer/QA person.
Java is a cross platform toolkit/language/vm, Qt is a cross platform toolkit for C++.
This lets you build database applications (the VAST majority of application, in fact just about every application is really a database application, think about what computers do...) that will compile for Linux, Win32, Mac OS X, and Qt Embedded platforms...
KDE is an impressive desktop, it works nicely, and has really grown. I always play with new releases on a Linux box, though my daily desktop in a Win2K laptop. It's fun to watch Linux's desktop grow, but I need too many Win32 only programs. My G4 Cube is fun as well, but I still have the Win32 problems, so the laptop stays.
However, looking at two "market" outcomes: Win32 vs. Cocoa|Carbon vs. Qt/KDE vs. Gtk, OR Win32 vs. Qt, and you clearly see which API system is more likely to allow competition on the desktop.
Java held great promise, but MS has succeeded in killing desktop Java. Without WORA, there is no real advantage to Java (the platform), but Qt has an interesting perspective.
As Qt Designer grows, it can become competitive to Visual Studio. Potentially, Qt becomes the glue that binds everything together.
If you can build a Qt application for Linux/MacOSX/Win32, or a Win32 app for Win32, there is an advantage to make the former. You still need to QA all the platforms that you support, but Qt lets you produce a product for multiple markets.
For a small company, Linux/MacOS provide a niche to target, but adding Win32 really makes this compelling. The windows market is MUCH more competitive, so being apple to primarily target niche markets but still selling to the dominate market is tempting.
I presume that everyone in politics, with a few exceptions, is primarily interested in bettering society through public service. However, the desire to do good requires reelection, which can override their best judgement and make them do what is politically desirable.
Some of these tech issues are clearly headline grabbers, not well thought out policy. Additionally, our "capitalist" society (I use quotes because of the growing amount of government intervention, on behalf of companies and on behalf of consumers) places a tremendous value of the creation of wealth.
Given the slogan, "it's the economy, stupid," it clearly is hard to argue to our politicians that we should hurt the economy (reducing trade = reducing wealth) on the basis of strange fair-use arguements.
Yet at the same time, many of the proposals and passed legislation borders on absurd. As people sworn to uphold the Constitution, it is also disturbing to see unconstitutional legislation passed and the buck passed to the judiciary.
How many issues facing technology that we care about here even matter to those in Congress? The major technology bills aren't things we hear about, because they mostly involve research and tax policies, and industries tend to lobby exclusively for hand-outs.
Some of the draconian laws are beneficial headline grabbers, but some are just draconian. How many of the laws are every things that the politicians care about? How many of them CAN the politicians care about? How do we appeal to the desire for reelection? How do we appeal to their civic goals for improving society?
They mention in the end that they are working with Microsoft to support this approach. They also suggest using spare cycles. Unlike SETI@home, where you download some stuff, work on it, send it back, this appears to be a system where the power scales linearly with nodes.
Windows support makes a difference. Take a large company (10,000+ in a single location) that has some intensive projects. In this case, they could just drop the $210,000 (call it $750,000 with installation, support, etc.) and put it in a room.
However, a smaller shop, say, 50-250 employees, being able to install this software on the staff's machines. They rarely use their computers to capcacity, and can probably contribute 90% of the CPU 90% of the time. This approach could let people doing giant calculations do so cheaply.
The real question, however, is who needs that kind of horse-power. For those that need the horse power, is the savings with off-the-shelf components meaningful.
Its a tremendous accomplishment, and I wonder how much of the changes were new (vs. Beowulf clusters that we always hear about). However, if this fills a need, congratulations, its an impressive accomplishment regardless.
Forget the do-it-yourself Tivo, and this still could have a role in a geek's home theater. I'm looking for a solution to use my home theater for gaming. I don't necessarily need earth-shattering Quake scores, but I need something that will look good on my high definition-ready monitor and sound good on my surround-sound system.
My fiance wouldn't like the TV becoming a gaming console for 1st person shooters, but for more communal games, it would be nice. I'd love to play group games like Heroes 3 on a TV with a wireless RF or IR mouse/trackball and keyboard. While playing audio CDs, running visualizations, etc.
The support for Digital Output without the connection is kinda silly. I haven't been able to find what video-out (if any) is supported because of slashdotting. Component Video out supporting 480p is a minimum, and 720p and 1080i would be useful as well.
This could make it possible to make PC-based stereo components, supporting gaming, integration with your home LAN (wired or wireless), etc., but it needs to support all the desired options.
Alex
World Trade Center is a Military Target
on
A New Kind of War
·
· Score: 2
The World Trade Center specifically, and lower Manhatten in general, is the center of United States economic power. He didn't strike at Capitalism symbolically, he aimmed a plane at its center.
Crippling the economy of your enemy is part of a military act. The FBI supposedly intercepted bombs aimed at the George Washington Bridge (connects New Jersey to NYC) and other bridges. He aimmed to take out New York City.
This was an atteck on the US.
Some of his training manuals, when translated, stated that attacking economic targets are part of a military campaign.
When the US hits a city, realize what we hit.
Step 1: take out the power plants
Step 2: take out the bridges
Well, because of the US power grid, you can't take out the power plants, we'll redirect the power.
I had a USB 1.0 Mobo in 97
on
USB 2.0 For Linux
·
· Score: 5, Informative
I bought in January of '97 a Tyan Tomcat motherboard with a P75 chip, it had a USB port. The spec changed and USB was busted, so they relabeled the parts (and replaced the motherboards if you complained enought).
The problem wasn't motherboards. By mid-97 all machines had the ports. Every machine my high school picked up that year (first half of 97) were P133s-P166s and had USB ports. These were Dell computers with vanilla mobos.
The problem was originally software support, MS didn't support USB until Win98, the Win95 support was busted. Additionally, the market for mice and keyboards died around then. The computers shipped with them AND the market was only supporting $20 replacements, not the highend ones that were popular through 96 and early 97.
Without software support, there was no interest in the hardware. People were pushing parallel port solutions instead. The parallel port scanners, zip drives, etc., dominated the low-end, and SCSI still ruled the high end.
Apple made USB a reality. They used it to replace ADP when they needed something to replace the external SCSI-1 port they used for expansion forever. With their move to IDE hard drives, the SCSI port was rediculous.
Anyone selling addons for Apple built them as USB devices, including mice and keyboards. As the standard was the same, there was no reason to not write Win98 drivers and open up the PC market.
Apple's ability to make something a standard on a segment of the industry is powerful. While Dell and Compaq (soon to be HP) ship lots of machines, nobody is interested in a Dell-only or Compaq-only option on the consumer level. The PC world is commodity only now, so only MS/Intel can add things to the standard. There is no room for vendors to improve the experience, since we scream and yell that it is propriatary.
USB 2.0 is a bad hack. If you don't use a USB 2.0 hub, then any USB 1 device (which keyboards, mice, scanners, etc., should always remain) drops the whole thing to USB 1. In addition, the bus is split up, so the 480 MB theoretical is a real joke. The bus uses time slices, not bandwidth slices. So when the keyboard and mouse grab their fractions of a second, they take bandwidth that could go to the video camera.
Furthermore, Firewire 2.0 brings Firewire up to 800 MB, and its reality is much closer to the theory.
OTOH, I agree that it is good for Linux to support it. As Linux distributions/kernels in the wild don't get upgraded as often, having the support now means that in 2 years, everyone will have it. Better to have the software beat the hardware.
Adding support in Windows is more user-painless (insert CD, press setup, watch this application you got from a no-name vendor to save $3 overrights basic operating system files...) then Linux, so it is good to see Linux beat the curve.
MIT's IP scheme has allowed them to build a by-the-books network. They use their IP scheme to make it really easy to figure out where a machine is by IP. For added fun, they don't use firewalls. In fact, MIT discourages firewalling. They recommend using real security, and recommend that you use Kerberos for everything... while not supporting Kerberos (in a useful manner) except on their UNIX machines.
For added fun, MIT gave an entire B-class (well, 1/256th of their A-class, not technically a B, but you understand) to each dormitory and each fraternity. MIT groups aren't starving for IPs, which is nice, but the rest of the Internet is.
If you want to start planting stem cells into live people, you're going to get a patent on the process that helps you fight the disease. Once you are at that stage in the process, you should be privately funded.
Federal research dollars are supposed to go to basic science. This "compromise" allows the scientists to do ALL the basic research that they want on the tax payer's nickel.
If they want to start destroying embryos and doing human clinical testing, well, let the private sector pick up the tab.
There is no reason that these researchers are entitled to tax payer dollars.
Under copyright law, it is my understanding that you own your creative works and all derivatives. That means, if you made a change in their system, you haven't created a work. VA automatically owns the copyright on your derivative work.
If you were to write a module that incorporated the code, the custom code would be yours, but it would fall under the GPL as a derivative as well.
However, patches/tweaks aren't creative works and therefore shouldn't grant the author any protection.
I said some foolish things on USENET, but fortunately it seems to be just before the Google archives. I'm really hoping that none of my postings will be discovered...
You forgot reason #3, converting between analog and digital adds a process and the risk off loss. While it is theoretically possible with perfect waves to do these conversions loss free, realty results in loss. Additionally, analog signals are more likely to degrade. As long as the bits (1s and 0s) are still detectable, digital signals are "perfect" (as in, they remain identical to the original, which is an imperfect representation of the analog world, of course). Run analog wires by electric fields and you get distortion!
Have you set up a modern AV system? You need component video for digital clarity and HDTV, you run digital outputs for DTS or Dolby Digital discrete codings. You need an intelligent receiver to decode these signals, otherwise each of your devices needs to run 6-8 (5.1 - 7.1) analog outputs into the receiver.
It's a nightmare.
Then for more fun, hook in devices that don't support the latest standards and you run RCA cables or S-Video. Conversion between standards is messy, so either you pick one for your entire system of you have your Television swap around.
Philips has a line of programmable remotes that tops out at $1000 to deal with this situation!
Firewire would eliminate this all. In addition to a digital signal (which we have with digital audio and component video), you have its networking ability. That means no more confusing wiring!
Want to record from the Tivo/Replay to the VCR? Make sure you set up the VCR as an input AND output to the receiver, then set the input to the Replay and the output to the VCR. Receiver can't handle two separate input/output combos? No watching TV while you record.
Contrast this to the potential for a Firewire System. Run a long series of Daisy chains (or connections to the receiver, irrelevant) together and hook it into a MUCH simpler receiver.
Want to record from the Tivo to the VCR? No problem, hit a button, and the Tivo sends the signal straight to the VCR, without involving the receiver.
Want to record a CD mix onto the CD-Recorder while watching a DVD? No problem, the CD-jukebox and CD-R deal with each other without involving the receiver.
An all digital signal produces a better sound and video experience. Hell, some of the speakers do their own amplification so you can keep it digital to the speakers.
Firewire takes this to the next level and empowers the devices to do more.
Will this happen immediately? Of course not.
Will the RIAA and MPAA like it, maybe not.
Will someone produce this tech and take the A/V world by storm? Absolutely.
Firewire makes it possible to do things people don't realize are possible in the A/V world.
Get out of your Slashdot paranoia. Realize that improvements in technology can actually be GOOD for consumers.
I'm talking about a modern UNIX, meeting the resent specifications (I believe UNIX 98 is the most recent).
The ORIGINAL UNIX was designed well for its time. I would suggest that there is little in common (code wise) between the original UNIX and modern UNIXes. The BSDs and Linux share NO code with the original. While the commericial UNIXes may share some code, overall the have been rewritten.
Now, each vendor makes their own UNIX. The "Linux" distributers make their own system, though the kernel and the C-library appear to be standardized.
The point that I am getting at, a modern UNIX is a well engineered machine. However, when you write portable code, you write either to the specification for all UNIXes (the designed by committee standard that hasn't been updated in 3 years, and most of the standard is MUCH older), or you write to a particular UNIX. Yes you can write a fall-back to the standard and optimize for your platform, but you really haven't helped then, have you? Your platform is optimized, the rest just run.
Take a current issue in the BSD community. The BSD rc system is beautifully simple, and less of a mess to manage than a SVR4 system. However, it does have some problems in that there is no easy way to bring down/up services, etc. We wrote our own service script (inspired by Redhat's, but custom to us) that we edit the configuration for as we add services. This gave us some control of the system.
NetBSD wrote a new rc system that uses shared scripts and small configuration files for each daemon. It seems to be an intelligent system, without the mess I have seen in Linux systems.
FreeBSD appears interested, and will likely adopt it.
For reasons that AREN'T clear if they are technical or political, OpenBSD will not. This means that people writing to the BSDs can choose to support two systems (the NetBSD/FreeBSD AND OpenBSD), or target one platform (either NetBSD/FreeBSD OR OpenBSD).
Now in this case, the rc system, it is less of a concern. Targetting both is trivial. However, as most people use FreeBSD or NetBSD, those of us in the OpenBSD community are part of a smaller niche.
However, we see the potential for a problem. Targetting the BSDs requires targetting BSD 4.4. Any extensions made by the BSDs may or not be ported to the rest. Playing nicely with Darwin/MacOSX is another problem, but Apple seems to be willing to follow FreeBSD's lead on the BSD side, focusing their creative/decision process on the Aqua/Quartz side.
To get the BSDs to move foward, you need a committee that shares improvements (unlikely for political reasons) and gets them standardized when everyone moves foward.
IDEALLY, you can target your platform of choice, but the features you want will be in the other platforms within 1-2 years. That way, you can even have a fallback for lagging systems. However, there should be a process by which useful extensions become part of the base, so the base is slowly evolving.
I understand your preference for a less-is-more approach, which I think makes sense for the system/kernel. That design philosophy encourages better systems. However, when there is a way to do something, there should be an attempt to develop the best way, then everyone should use it instead of reinventing the wheel.
The core UNIX system has two standards, POSIX and X11. Both of those systems were designed separately, and you can target them and it will work everywhere.
If you want a GUI app, targetting X11 is a pain. Targetting Motif is slightly more pleasant. Targetting Qt is easier. However, you can't target ANYTHING but raw X11 until you know that the standard requires something.
That is what I'm getting at. Motif was adopted as the UNIX standard long ago, but it's non-free status has kept it out of Free systems.
Java promised to be that universal platform that we could all target. In an ideal world, there would be no more native code for applications, all new applications would target the JVM or something similar. Java offered the idea that MFC did for Windows programmers, a real environment to build applications in. Unfortunately politics and other limitations got in the way, and we still don't have a universal platform. Targetting all UNIXes is okay with an LCD approach, targetting all UNIXes and WinNT requires a different approach. But nothing out there presents a good way to move the common base foward so I can build an app that is optimized for everything, or at least will be when everyone catches up.
The point is that you like to see the type as a name next to the file. This is a question of interface, not of metadata. The SAME information for the extension could be shown there.
You could sort by Type instead of "By Type - a hack off the extension".
The point of this was that there is no advantage to storing it in a limited extension as opposed to meta data.
Even more important (that the article went into) is that you can change the extension without changing the file. Think about that, you've changed what the type of the file is without altering the data? That is the point of keeping it as Meta-data, the type should never change without changing the data inside it to another type.
If I had a file that was a text file: Grocery List, which is the easiest way to display it (including a command line)...
groclist.txt
Grocery List.txt
Grocery List Text File Notepad
In the first case (old DOS 8.3 convention) you need to remember what you called it or set up a naming convention. For a grocery list, this may not matter, but for files you want to access in 8-10 years, it does.
The second is sort of clear, it is a Grocery List text file. However, you only know that it stores text.
The third provides more information. You know what it was created in, as well as the type. If you honestly think that extensions are clear to users, I think that you are mistaken. Users see icons and click, looking like a text file is a good indication.
Furthermore, nothing prevents YOU, the user, from using extensions, or dots, etc., to name you files.
For example:
Grocery List.txt Text File Notepad
OR
Grocery List.text Text File Notepad
In either case, the computer ignores the extension, using the fact that it is a Text File created in Notepad. You however, have included that with the filename for your convenience.
Caldera bought SCO, got the old UNIX code with it. Caldera, a Linux company, is building combination systems that will take advantage of Linux's offerings AND SCO's tech. The stuff from SCO's tech that isn't going to help them have a competitive advantage is being openned to all. Given that they paid for it, it is nice of them to let the rest of the Linux world play.
The UNIX file-system is brilliant compared to DOS, but ONLY compared to DOS. It is still designed for command-line users convenience. I am NOT criticizing the command line, I use it daily under OpenBSD, Linux, WinNT4, Win2K, and Mac OS X. It is nice to have the control of a CLI, as well as the ability to run scripts.
HOWEVER, the system of making things conveniently obvious for the CLI results in engineering decisions that give the OS less flexibilities. GUIs can provide TREMENDOUS ammounts of information BECAUSE the user decides when to get that information.
For example, the filename and type need easy access for the user. For a GUI user, they need the filename and the type deciding the application binding. For a CLI user, including the type with the filename makes it easier to manipulate.
While you could setup ls (or dir) with many flags to pick and choose the information, you create a minor mess. Additionally, things like changing the type to a list from a database is one thing for a GUI with a dropdown box, it's a nightmare to implement in a CLI. If you designed for the CLI, you made a tradeoff.
Additionally, UNIX was developed in a hardware environment more restricted than the DOS world. Early machines used in development are nothing compared to modern machines.
Take the NTFS file system. If you are on an NT4 machine, or a Win2K machine, (running NTFS of course, not braindead FAT/FAT32) you see filenames as normal. Inside the properties, there are MANY more options. Do it on a Win2K machine, and you see more information than on an NT4 machine if you look closely.
The UNIX approach is old and dated. Microsoft has moved on, it's important for the UNIX community to do so as well. ACLs (implemented on NT) are FAR more flexible than users/groups. Private user groups are an ugly hack to handle the user/group system. The whole UNIX model needs to be modernized. There are ACL UNIX systems, but they aren't the mainstream.
I love the power of UNIX-based server, they give me tremendous capabilities. A proper CLI is awesome. But let's not kid ourselves. Beating Win95/Win98/WinME at ANYTHING was never impressive, they were ugly hacks onto DOS that has its roots in the 8086 processor. Everytime people toute the advantages of Linux, they compare it to Win9x. Beating a legacy desktop OS in terms of uptime, etc., is NOT impressive. Compared to Win2K, Linux's technical advantages are pretty minor. There are some, but not many. Compared to the BSDs or commercial UNIXes... well, Linux doesn't look that impressive. It has advantages and drawbacks, different engineering decisions.
The problem with UNIX is an LCD (lowest common denominator) and designed by committee problem. Having a common API that programmers can target is tremendous, it helps with portability. However, failing to keep moving that API foward is a mistake.
As it stands there are many applications that only work on one variant. Extending the UNIX common API once or twice a year to encompass vendor extensions would be a tremendous boost, and allow UNIX to escape this trap. If Sun has a great idea and incorporates it into Solaris, their ISVs should take advantage of it. The rest of the UNIX world should have it within a year (or two at most) so ISVs can port to other UNIXes. As it stands, you either write to an old standard OR to a particular UNIX. Neither is a good choice.
Very interesting. I never really thought about metadata before, but it brings up a lot of points about the mistake of using file extensions.
File extensions do serve a convenient purpose with a command line, as you can manipulate them easier without using multiple tools. However, if the metadata was stored outside the filename, we could have (and had) UNIX, GNU, BSD, and DOS/Windows utilities to manage them in the past. If all systems were designed to keep track of the metadata, it would have been a better world.
It is unfortunate that the technical lowest common denominator (DOS and DOS-based OSes) dictate so much of our system. While Windows NT based systems (including Win2K, WinXP, etc.) have made tremendous strides, there is a constant need to maintain compatibility that holds us back.
I think that it makes sense for Apple to adopt the file extensions, as unpleasant as they are, to support a networked world. The author's suggestion of adding them on transport makes sense, but definitely leaves something to be desired. It would be confusing to transfer Word documents around and have the extensions pop on and off depending on the environment. If the Mac leaves them alone, it still leaves something to be desired because the file name changed when it left the Mac it was created on for the file server, and when it comes back it has a different name.
It's a shame that a standard for storing the metadata wasn't created long ago. While the PCs wouldn't use the data, it is a shame to lose it. It is also a shame that we have to work towards the lowest common denominator. It's one thing to support it, it is another to adopt the conventions.
Look, I earned my spending money through college as an NT Admin. I run a small shop developing web applications on UNIX, but my desktop in W2K. My fiancee and I have 4 computers in our apartments, 3 are Windows PCs, 1 is a Mac. I'm not a Mac person, yet I can still respect what they have done right.
You are correct, WMP has successfully copied iTunes to the point of being similar, but it isn't as clean. Personally, I still use WinAMP on my Windows machines for MP3 playing, as does everybody I know. Then again, we all ran Netscape for a while too.
I have always used Audio Grabber/WinAMP for rip play. I used to use l3dec/Nero for burning. I haven't really messed with MP3s in a while, but I've never seen anything like iTunes.
The "playlist" is amazingly useful compared to WinAMP. The computer ships with a bunch of MP3s (which was nice since the computer arrived the day of a trip, and I barely had time to toss Mac:Office on there.
No question, MS has improved TREMENDOUSLY with each release. Win95 was the key release, but 98 and ME were similar evolutions in UI. 98's browser functionality was a marketing move, but it has resulted in some simplification of our lives. ME's media integration was useful. XP seems to be an attempt to match OS X. We shall see, MS seems to be able to be consistently 90%-95% of MacOS, which keeps them in the dominant position because they can undersell.
Alex
Look, I love scripting. I'm sitting here on my Compaq Armada running W2K with Outlook connected to my Exchange Server and SSH connections to our OpenBSD and Linux servers. The right tool in the right place.
When I ran DOS, I used batch scripts for various things.
As an NT Admin (boo, hiss, MCSE, boo, hiss) I used the resource kit and batch scripting to automate many administrative tasks. I also used other Windows scripting languages.
Scripting rocks, in its place. The reason why NT does well in small businesses is because of its interface. Sure, they probably need a pro to set up the box, but the day-to-day tasks can be handled my anyone with any intelligence.
Adding a new user, home directory, etc., is much more straightfoward on NT 4 (not a use 2K server fan) than under a Unix OS.
NT w/ resource kit (full of command line tools, many inspired by Unix), or OS X with the developers tools and a couple of useful GNU or BSD tools, give you the best of both worlds.
When you need to do something fancy, you have the command line to aid you. When you need to just get things done, the UI helps you out.
MS's problem is that the NT 3.51 had a great kernel, but NT4 and NT5 kept adding to the kernel trading stability for speed. They also throw things together for marketing reasons.
X Windows (really, the classic X Windows UI) is a powerful engineering tool. It was designed at MIT (an engineering school...) for engineering students and researchers. It was designed primarily to run xterms, lots of xterms.
Its great for coding, but it doesn't make a great general purpose UI. KDE/GNOME are a step in the right direction, but they aren't quite there. The real trick to GUI design is building the tools based around what the USER does, not how they are represented on the file system.
NT is too hampered by its DOS roots. (I don't mean codewise, NT's userspace, Win32, evolved API wise from Win16, which was bolted onto DOS).
Linux/Desktop developers should REALLY look at how OS X was built. The UNIX system is there, providing a stable kernel and API for running daemons. The GUI has its own system, complete with APIs, spaces in the filesystem, etc. They built a full GUI OS that sits on top of a UNIX system. The UNIX core is there, available, but they built a system for users.
Now, so much of the UNIX functionality is hidden that you can't do everything from within the GUI. Expose more of the system, and you have a more powerful system.
Don't shun it because its Apple, their second attempt at a UNIX GUI is a third system, evolved (conceptually) from A/UX and (directly) from NeXTSTEP (however it was spelt on Tuesdays...)...
Could Aqua be more powerful, sure. Could KDE/GNOME be more intuitive, sure?
CDE, MWM, etc, (Classic UNIX environments) are great engineering platforms...
Right tool for the right job...
Alex
I like it. iTunes, for those that haven't used a Mac, is REALLY slick. 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.
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.
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).
On a Windows box, you run a program to rip your CDs into MP3s. If you want to burn a CD, you use a program to convert them to WAVs, then you burn the WAVs to CDs.
On a Mac, you pop an audio CD in to your computer and add the songs to your library. If you burn a CD, you pop a blank in and hit burn CD. Now with iTunes 2, you'll have the option to make MP3 CDs (which previously would be done as burning a data CD).
In UNIX, you focus on the files. In a Mac, you focus on the activity. My fiancee doesn't have to think about file formats, she thinks about music. She barely touches her Windows PC or MIT's UNIX network anymore.
This device extends the Mac functionality. Instead of firing up Creative Lab's software and pick and choose which songs you want on it. Want to listen on the computer? Fire up WinAmp. Want to rip CDs, fire up that application.
With the iPod, it integrates into your system. You plug it in, it keeps your songs available. No need to mess with a clunky interface, the thumb-rolling thingy-ma-bopper looks like a clean way to use the device.
The Nomad Jukebox 20G with the batteries is about a pound. My brother loves his, but it mostly sits in the car now. He used to take it to the gym, but it wastoo big and bulky.
I realize that most Slashdotters are looking at the specs, but realize what this actually does. Its tiny, it'll fit in a jacket pocket (or pant pocket), its convenient.
Take it jogging, to the gym, etc. Sit in the park, walk around.
The Nomad Jukebox is too damned heavy.
This device rocks, I expect them to sell plenty.
I think that they should sell a Windows version of it with a Windows version of iTunes and a Firewire card, but that's just me.
Look, transistions suck. There is no question. Different industries get axed in different ways. We certainly need to be on the ball better to protect people during transitions. If someone loses a job because of incompetant, etc., then there is no problem with them being in trouble. However, those that lose their jobs because of structural changes in the economy probably should have a better safety net.
However, you understate the problem with busy work.
The United States has the world's largest economy. There are fewer than 300m of us, even with undocumented aliens, etc. We have a young (relative to our history considering life expectancy) retirement age, and a long childhood (mandatory schooling until 16, free schooling until 18, with over half the country going on to further education, 20 or 22), which leaves us with a small work force to push the economy.
During economic crisis, or feared crisis, we shrink the work force (great depression => social security, fear of post-war recession => GI Bill, other pushes for higher education).
During this last boom, wages were spiraling out of control for certain worker groups, which prevented companies from hiring, which likely cut off the boom earlier. Realize that we were PAST full employment... unemployment was lower than economists THOUGHT was possible with normal job switching.
If we can't rotate people into other sectors, our economy is going to peter out.
We need a system to HELP transition people. People replaced by technology need a system for:
A) training
B) maintaining their lifestyle during the transition
I normally don't like government programs, but I can see good reasons for federalizing this. If the company has to pay for the transitioning, the equation gets pushed AWAY from automation because of the added costs of paying former employees. If the employees pay for it, you screw people over. Spreading the costs across all Americans (taxes) prevents structual economic changes from falling upon the individuals hit or the regions that they are locating.
The other problem is what to do with older employees. Someone who is 45 or 50, that has held a job since they were 15-20, is in a difficult position to change functions. Perhaps we need a more useful early retirement system.
Ideally, we don't WANT companies or people to fear changes or avoid changes. We want to embrace changes.
It would be nice to live in a world where people (workers, entreprenuers always take risks) focus on doing their job and living their life. If there are changes, they figure out a way to adapt afterwards, instead of worrying or fearing change.
Just a thought, it might ADD efficiency to our economy...
Alex
I'm not trolling, I just want my god-damn free country back.
Then take it back. You're welcome to leave and find a new free country, or do something to keep this one free. What branch of the armed services are you in? What's your rank? Assignment?
Oh wait, that's right, this is Slashdot. You are entitled to everything. Newsflash, the Declaration of Independance and the Constitution are wonder implementations of enlighted philosophies. Their ability to exist was won with blood of patriots.
You and I, as civilians, sit here in the lap of luxury. We enjoy the freedom protects and provided by the men that gave their lives for the cause of freedom.
You then log on, and demand something?
If you believe that your free country is being taken from you, then go help the men and women that are defending it from foreign invaders. If you think that the government is enacting martial law through a fake war? Where is your gun? Where is your militia? Why aren't you fighting a revolution.
Freedom doesn't come easily or cheap. I cherish the priviliges of being a free American. To keep our "infidel" government in power, I'm willing to sacrifice the rights and liberties of EVERY SINGLE non-American, whether they live in the United States or abroad. If you hate this country, then leave. If you hate this government, then either leave or topple it. Why doesn't everyone that hates this government and seems to think that there would be some poetic justice in it falling do what they promised to do before the last election and leave the country.
A civilian appreciative of those sacrifices their lives so that I may enjoy the freedom that they provide,
Alex
Free Software is a set of principles. There is a concept of rights of the user. You release it open because its the "right thing" to do.
You can't "start and open source project" because there isn't really an open source project.
There are projects. Open Source is a type of licensing.
One of the effects of the licensing is that you may get help. This is terrific. We use open source projects, if we modify the system, we submit patches. That's the benefit of it.
However, all open source projects are run as normal projects. Many of the top (quality of code) projects started as University projects (PostgreSQL, BSD, etc.). Some of them are run by corporations, but if the anti-corporate garbage from Slashdot is an indication of the programmers (I don't believe it is, however), you won't get support because nobody wants to make anybody rich.
The trick is to build a solid foundation. If you get help, terrific. However, you'll have to focus on project management. It's like being a "real" project manager, but since you don't pay your programmers, they aren't going to take orders as well.
If this project is of use to a corporation, see if they will "sponser" the project. Maybe you can make a proposition (show them that this could make them or save them X dollars if completed, so if they can supply Y dollars or programming hours (YX) then you can get the unpleasant part done).
Be creative. However, there is no magic bullet.
Building software is building software. Whatever license you stick on the final product is separate from the process of GETTING the product.
Alex
If I had to predict a reason, it is probably because Trolltech's paying customers want integrated database access. If you are building a corporate app to deploy across Win32 AND Linux desktops to access the corporate database, you likely want it to be able to. In fact, you probably want the app to function without calling an external Java system and therefore need a Java programmer/QA person.
Java is a cross platform toolkit/language/vm, Qt is a cross platform toolkit for C++.
This lets you build database applications (the VAST majority of application, in fact just about every application is really a database application, think about what computers do...) that will compile for Linux, Win32, Mac OS X, and Qt Embedded platforms...
Pretty slick...
Alex
KDE is an impressive desktop, it works nicely, and has really grown. I always play with new releases on a Linux box, though my daily desktop in a Win2K laptop. It's fun to watch Linux's desktop grow, but I need too many Win32 only programs. My G4 Cube is fun as well, but I still have the Win32 problems, so the laptop stays.
However, looking at two "market" outcomes: Win32 vs. Cocoa|Carbon vs. Qt/KDE vs. Gtk, OR Win32 vs. Qt, and you clearly see which API system is more likely to allow competition on the desktop.
Java held great promise, but MS has succeeded in killing desktop Java. Without WORA, there is no real advantage to Java (the platform), but Qt has an interesting perspective.
As Qt Designer grows, it can become competitive to Visual Studio. Potentially, Qt becomes the glue that binds everything together.
If you can build a Qt application for Linux/MacOSX/Win32, or a Win32 app for Win32, there is an advantage to make the former. You still need to QA all the platforms that you support, but Qt lets you produce a product for multiple markets.
For a small company, Linux/MacOS provide a niche to target, but adding Win32 really makes this compelling. The windows market is MUCH more competitive, so being apple to primarily target niche markets but still selling to the dominate market is tempting.
Go Trolls go!
Alex
I presume that everyone in politics, with a few exceptions, is primarily interested in bettering society through public service. However, the desire to do good requires reelection, which can override their best judgement and make them do what is politically desirable.
Some of these tech issues are clearly headline grabbers, not well thought out policy. Additionally, our "capitalist" society (I use quotes because of the growing amount of government intervention, on behalf of companies and on behalf of consumers) places a tremendous value of the creation of wealth.
Given the slogan, "it's the economy, stupid," it clearly is hard to argue to our politicians that we should hurt the economy (reducing trade = reducing wealth) on the basis of strange fair-use arguements.
Yet at the same time, many of the proposals and passed legislation borders on absurd. As people sworn to uphold the Constitution, it is also disturbing to see unconstitutional legislation passed and the buck passed to the judiciary.
How many issues facing technology that we care about here even matter to those in Congress? The major technology bills aren't things we hear about, because they mostly involve research and tax policies, and industries tend to lobby exclusively for hand-outs.
Some of the draconian laws are beneficial headline grabbers, but some are just draconian. How many of the laws are every things that the politicians care about? How many of them CAN the politicians care about? How do we appeal to the desire for reelection? How do we appeal to their civic goals for improving society?
Alex
They mention in the end that they are working with Microsoft to support this approach. They also suggest using spare cycles. Unlike SETI@home, where you download some stuff, work on it, send it back, this appears to be a system where the power scales linearly with nodes.
Windows support makes a difference. Take a large company (10,000+ in a single location) that has some intensive projects. In this case, they could just drop the $210,000 (call it $750,000 with installation, support, etc.) and put it in a room.
However, a smaller shop, say, 50-250 employees, being able to install this software on the staff's machines. They rarely use their computers to capcacity, and can probably contribute 90% of the CPU 90% of the time. This approach could let people doing giant calculations do so cheaply.
The real question, however, is who needs that kind of horse-power. For those that need the horse power, is the savings with off-the-shelf components meaningful.
Its a tremendous accomplishment, and I wonder how much of the changes were new (vs. Beowulf clusters that we always hear about). However, if this fills a need, congratulations, its an impressive accomplishment regardless.
Alex
Laugh...
My biggest concern with hooking up a computer is my fiancee taking it over to play The Sims...
Good bye movies, hello "Blah, blah, blah, blah..."
Alex
Forget the do-it-yourself Tivo, and this still could have a role in a geek's home theater. I'm looking for a solution to use my home theater for gaming. I don't necessarily need earth-shattering Quake scores, but I need something that will look good on my high definition-ready monitor and sound good on my surround-sound system.
My fiance wouldn't like the TV becoming a gaming console for 1st person shooters, but for more communal games, it would be nice. I'd love to play group games like Heroes 3 on a TV with a wireless RF or IR mouse/trackball and keyboard. While playing audio CDs, running visualizations, etc.
The support for Digital Output without the connection is kinda silly. I haven't been able to find what video-out (if any) is supported because of slashdotting. Component Video out supporting 480p is a minimum, and 720p and 1080i would be useful as well.
This could make it possible to make PC-based stereo components, supporting gaming, integration with your home LAN (wired or wireless), etc., but it needs to support all the desired options.
Alex
The World Trade Center specifically, and lower Manhatten in general, is the center of United States economic power. He didn't strike at Capitalism symbolically, he aimmed a plane at its center.
Crippling the economy of your enemy is part of a military act. The FBI supposedly intercepted bombs aimed at the George Washington Bridge (connects New Jersey to NYC) and other bridges. He aimmed to take out New York City.
This was an atteck on the US.
Some of his training manuals, when translated, stated that attacking economic targets are part of a military campaign.
When the US hits a city, realize what we hit.
Step 1: take out the power plants
Step 2: take out the bridges
Well, because of the US power grid, you can't take out the power plants, we'll redirect the power.
I bought in January of '97 a Tyan Tomcat motherboard with a P75 chip, it had a USB port. The spec changed and USB was busted, so they relabeled the parts (and replaced the motherboards if you complained enought).
The problem wasn't motherboards. By mid-97 all machines had the ports. Every machine my high school picked up that year (first half of 97) were P133s-P166s and had USB ports. These were Dell computers with vanilla mobos.
The problem was originally software support, MS didn't support USB until Win98, the Win95 support was busted. Additionally, the market for mice and keyboards died around then. The computers shipped with them AND the market was only supporting $20 replacements, not the highend ones that were popular through 96 and early 97.
Without software support, there was no interest in the hardware. People were pushing parallel port solutions instead. The parallel port scanners, zip drives, etc., dominated the low-end, and SCSI still ruled the high end.
Apple made USB a reality. They used it to replace ADP when they needed something to replace the external SCSI-1 port they used for expansion forever. With their move to IDE hard drives, the SCSI port was rediculous.
Anyone selling addons for Apple built them as USB devices, including mice and keyboards. As the standard was the same, there was no reason to not write Win98 drivers and open up the PC market.
Apple's ability to make something a standard on a segment of the industry is powerful. While Dell and Compaq (soon to be HP) ship lots of machines, nobody is interested in a Dell-only or Compaq-only option on the consumer level. The PC world is commodity only now, so only MS/Intel can add things to the standard. There is no room for vendors to improve the experience, since we scream and yell that it is propriatary.
USB 2.0 is a bad hack. If you don't use a USB 2.0 hub, then any USB 1 device (which keyboards, mice, scanners, etc., should always remain) drops the whole thing to USB 1. In addition, the bus is split up, so the 480 MB theoretical is a real joke. The bus uses time slices, not bandwidth slices. So when the keyboard and mouse grab their fractions of a second, they take bandwidth that could go to the video camera.
Furthermore, Firewire 2.0 brings Firewire up to 800 MB, and its reality is much closer to the theory.
OTOH, I agree that it is good for Linux to support it. As Linux distributions/kernels in the wild don't get upgraded as often, having the support now means that in 2 years, everyone will have it. Better to have the software beat the hardware.
Adding support in Windows is more user-painless (insert CD, press setup, watch this application you got from a no-name vendor to save $3 overrights basic operating system files...) then Linux, so it is good to see Linux beat the curve.
Alex
MIT's IP scheme has allowed them to build a by-the-books network. They use their IP scheme to make it really easy to figure out where a machine is by IP. For added fun, they don't use firewalls. In fact, MIT discourages firewalling. They recommend using real security, and recommend that you use Kerberos for everything... while not supporting Kerberos (in a useful manner) except on their UNIX machines.
For added fun, MIT gave an entire B-class (well, 1/256th of their A-class, not technically a B, but you understand) to each dormitory and each fraternity. MIT groups aren't starving for IPs, which is nice, but the rest of the Internet is.
If you want to start planting stem cells into live people, you're going to get a patent on the process that helps you fight the disease. Once you are at that stage in the process, you should be privately funded.
Federal research dollars are supposed to go to basic science. This "compromise" allows the scientists to do ALL the basic research that they want on the tax payer's nickel.
If they want to start destroying embryos and doing human clinical testing, well, let the private sector pick up the tab.
There is no reason that these researchers are entitled to tax payer dollars.
Under copyright law, it is my understanding that you own your creative works and all derivatives. That means, if you made a change in their system, you haven't created a work. VA automatically owns the copyright on your derivative work.
If you were to write a module that incorporated the code, the custom code would be yours, but it would fall under the GPL as a derivative as well.
However, patches/tweaks aren't creative works and therefore shouldn't grant the author any protection.
I said some foolish things on USENET, but fortunately it seems to be just before the Google archives. I'm really hoping that none of my postings will be discovered...
I guess I can be accountable for my youth.
You forgot reason #3, converting between analog and digital adds a process and the risk off loss. While it is theoretically possible with perfect waves to do these conversions loss free, realty results in loss. Additionally, analog signals are more likely to degrade. As long as the bits (1s and 0s) are still detectable, digital signals are "perfect" (as in, they remain identical to the original, which is an imperfect representation of the analog world, of course). Run analog wires by electric fields and you get distortion!
Have you set up a modern AV system? You need component video for digital clarity and HDTV, you run digital outputs for DTS or Dolby Digital discrete codings. You need an intelligent receiver to decode these signals, otherwise each of your devices needs to run 6-8 (5.1 - 7.1) analog outputs into the receiver.
It's a nightmare.
Then for more fun, hook in devices that don't support the latest standards and you run RCA cables or S-Video. Conversion between standards is messy, so either you pick one for your entire system of you have your Television swap around.
Philips has a line of programmable remotes that tops out at $1000 to deal with this situation!
Firewire would eliminate this all. In addition to a digital signal (which we have with digital audio and component video), you have its networking ability. That means no more confusing wiring!
Want to record from the Tivo/Replay to the VCR? Make sure you set up the VCR as an input AND output to the receiver, then set the input to the Replay and the output to the VCR. Receiver can't handle two separate input/output combos? No watching TV while you record.
Contrast this to the potential for a Firewire System. Run a long series of Daisy chains (or connections to the receiver, irrelevant) together and hook it into a MUCH simpler receiver.
Want to record from the Tivo to the VCR? No problem, hit a button, and the Tivo sends the signal straight to the VCR, without involving the receiver.
Want to record a CD mix onto the CD-Recorder while watching a DVD? No problem, the CD-jukebox and CD-R deal with each other without involving the receiver.
An all digital signal produces a better sound and video experience. Hell, some of the speakers do their own amplification so you can keep it digital to the speakers.
Firewire takes this to the next level and empowers the devices to do more.
Will this happen immediately? Of course not.
Will the RIAA and MPAA like it, maybe not.
Will someone produce this tech and take the A/V world by storm? Absolutely.
Firewire makes it possible to do things people don't realize are possible in the A/V world.
Get out of your Slashdot paranoia. Realize that improvements in technology can actually be GOOD for consumers.
I'm talking about a modern UNIX, meeting the resent specifications (I believe UNIX 98 is the most recent).
The ORIGINAL UNIX was designed well for its time. I would suggest that there is little in common (code wise) between the original UNIX and modern UNIXes. The BSDs and Linux share NO code with the original. While the commericial UNIXes may share some code, overall the have been rewritten.
Now, each vendor makes their own UNIX. The "Linux" distributers make their own system, though the kernel and the C-library appear to be standardized.
The point that I am getting at, a modern UNIX is a well engineered machine. However, when you write portable code, you write either to the specification for all UNIXes (the designed by committee standard that hasn't been updated in 3 years, and most of the standard is MUCH older), or you write to a particular UNIX. Yes you can write a fall-back to the standard and optimize for your platform, but you really haven't helped then, have you? Your platform is optimized, the rest just run.
Take a current issue in the BSD community. The BSD rc system is beautifully simple, and less of a mess to manage than a SVR4 system. However, it does have some problems in that there is no easy way to bring down/up services, etc. We wrote our own service script (inspired by Redhat's, but custom to us) that we edit the configuration for as we add services. This gave us some control of the system.
NetBSD wrote a new rc system that uses shared scripts and small configuration files for each daemon. It seems to be an intelligent system, without the mess I have seen in Linux systems.
FreeBSD appears interested, and will likely adopt it.
For reasons that AREN'T clear if they are technical or political, OpenBSD will not. This means that people writing to the BSDs can choose to support two systems (the NetBSD/FreeBSD AND OpenBSD), or target one platform (either NetBSD/FreeBSD OR OpenBSD).
Now in this case, the rc system, it is less of a concern. Targetting both is trivial. However, as most people use FreeBSD or NetBSD, those of us in the OpenBSD community are part of a smaller niche.
However, we see the potential for a problem. Targetting the BSDs requires targetting BSD 4.4. Any extensions made by the BSDs may or not be ported to the rest. Playing nicely with Darwin/MacOSX is another problem, but Apple seems to be willing to follow FreeBSD's lead on the BSD side, focusing their creative/decision process on the Aqua/Quartz side.
To get the BSDs to move foward, you need a committee that shares improvements (unlikely for political reasons) and gets them standardized when everyone moves foward.
IDEALLY, you can target your platform of choice, but the features you want will be in the other platforms within 1-2 years. That way, you can even have a fallback for lagging systems. However, there should be a process by which useful extensions become part of the base, so the base is slowly evolving.
I understand your preference for a less-is-more approach, which I think makes sense for the system/kernel. That design philosophy encourages better systems. However, when there is a way to do something, there should be an attempt to develop the best way, then everyone should use it instead of reinventing the wheel.
The core UNIX system has two standards, POSIX and X11. Both of those systems were designed separately, and you can target them and it will work everywhere.
If you want a GUI app, targetting X11 is a pain. Targetting Motif is slightly more pleasant. Targetting Qt is easier. However, you can't target ANYTHING but raw X11 until you know that the standard requires something.
That is what I'm getting at. Motif was adopted as the UNIX standard long ago, but it's non-free status has kept it out of Free systems.
Java promised to be that universal platform that we could all target. In an ideal world, there would be no more native code for applications, all new applications would target the JVM or something similar. Java offered the idea that MFC did for Windows programmers, a real environment to build applications in. Unfortunately politics and other limitations got in the way, and we still don't have a universal platform. Targetting all UNIXes is okay with an LCD approach, targetting all UNIXes and WinNT requires a different approach. But nothing out there presents a good way to move the common base foward so I can build an app that is optimized for everything, or at least will be when everyone catches up.
Alex
The point is that you like to see the type as a name next to the file. This is a question of interface, not of metadata. The SAME information for the extension could be shown there.
You could sort by Type instead of "By Type - a hack off the extension".
The point of this was that there is no advantage to storing it in a limited extension as opposed to meta data.
Even more important (that the article went into) is that you can change the extension without changing the file. Think about that, you've changed what the type of the file is without altering the data? That is the point of keeping it as Meta-data, the type should never change without changing the data inside it to another type.
Alex
If I had a file that was a text file: Grocery List, which is the easiest way to display it (including a command line)...
groclist.txt
Grocery List.txt
Grocery List Text File Notepad
In the first case (old DOS 8.3 convention) you need to remember what you called it or set up a naming convention. For a grocery list, this may not matter, but for files you want to access in 8-10 years, it does.
The second is sort of clear, it is a Grocery List text file. However, you only know that it stores text.
The third provides more information. You know what it was created in, as well as the type. If you honestly think that extensions are clear to users, I think that you are mistaken. Users see icons and click, looking like a text file is a good indication.
Furthermore, nothing prevents YOU, the user, from using extensions, or dots, etc., to name you files.
For example:
Grocery List.txt Text File Notepad
OR
Grocery List.text Text File Notepad
In either case, the computer ignores the extension, using the fact that it is a Text File created in Notepad. You however, have included that with the filename for your convenience.
Alex
Caldera bought SCO, got the old UNIX code with it. Caldera, a Linux company, is building combination systems that will take advantage of Linux's offerings AND SCO's tech. The stuff from SCO's tech that isn't going to help them have a competitive advantage is being openned to all. Given that they paid for it, it is nice of them to let the rest of the Linux world play.
The UNIX file-system is brilliant compared to DOS, but ONLY compared to DOS. It is still designed for command-line users convenience. I am NOT criticizing the command line, I use it daily under OpenBSD, Linux, WinNT4, Win2K, and Mac OS X. It is nice to have the control of a CLI, as well as the ability to run scripts.
HOWEVER, the system of making things conveniently obvious for the CLI results in engineering decisions that give the OS less flexibilities. GUIs can provide TREMENDOUS ammounts of information BECAUSE the user decides when to get that information.
For example, the filename and type need easy access for the user. For a GUI user, they need the filename and the type deciding the application binding. For a CLI user, including the type with the filename makes it easier to manipulate.
While you could setup ls (or dir) with many flags to pick and choose the information, you create a minor mess. Additionally, things like changing the type to a list from a database is one thing for a GUI with a dropdown box, it's a nightmare to implement in a CLI. If you designed for the CLI, you made a tradeoff.
Additionally, UNIX was developed in a hardware environment more restricted than the DOS world. Early machines used in development are nothing compared to modern machines.
Take the NTFS file system. If you are on an NT4 machine, or a Win2K machine, (running NTFS of course, not braindead FAT/FAT32) you see filenames as normal. Inside the properties, there are MANY more options. Do it on a Win2K machine, and you see more information than on an NT4 machine if you look closely.
The UNIX approach is old and dated. Microsoft has moved on, it's important for the UNIX community to do so as well. ACLs (implemented on NT) are FAR more flexible than users/groups. Private user groups are an ugly hack to handle the user/group system. The whole UNIX model needs to be modernized. There are ACL UNIX systems, but they aren't the mainstream.
I love the power of UNIX-based server, they give me tremendous capabilities. A proper CLI is awesome. But let's not kid ourselves. Beating Win95/Win98/WinME at ANYTHING was never impressive, they were ugly hacks onto DOS that has its roots in the 8086 processor. Everytime people toute the advantages of Linux, they compare it to Win9x. Beating a legacy desktop OS in terms of uptime, etc., is NOT impressive. Compared to Win2K, Linux's technical advantages are pretty minor. There are some, but not many. Compared to the BSDs or commercial UNIXes... well, Linux doesn't look that impressive. It has advantages and drawbacks, different engineering decisions.
The problem with UNIX is an LCD (lowest common denominator) and designed by committee problem. Having a common API that programmers can target is tremendous, it helps with portability. However, failing to keep moving that API foward is a mistake.
As it stands there are many applications that only work on one variant. Extending the UNIX common API once or twice a year to encompass vendor extensions would be a tremendous boost, and allow UNIX to escape this trap. If Sun has a great idea and incorporates it into Solaris, their ISVs should take advantage of it. The rest of the UNIX world should have it within a year (or two at most) so ISVs can port to other UNIXes. As it stands, you either write to an old standard OR to a particular UNIX. Neither is a good choice.
Alex
Very interesting. I never really thought about metadata before, but it brings up a lot of points about the mistake of using file extensions.
File extensions do serve a convenient purpose with a command line, as you can manipulate them easier without using multiple tools. However, if the metadata was stored outside the filename, we could have (and had) UNIX, GNU, BSD, and DOS/Windows utilities to manage them in the past. If all systems were designed to keep track of the metadata, it would have been a better world.
It is unfortunate that the technical lowest common denominator (DOS and DOS-based OSes) dictate so much of our system. While Windows NT based systems (including Win2K, WinXP, etc.) have made tremendous strides, there is a constant need to maintain compatibility that holds us back.
I think that it makes sense for Apple to adopt the file extensions, as unpleasant as they are, to support a networked world. The author's suggestion of adding them on transport makes sense, but definitely leaves something to be desired. It would be confusing to transfer Word documents around and have the extensions pop on and off depending on the environment. If the Mac leaves them alone, it still leaves something to be desired because the file name changed when it left the Mac it was created on for the file server, and when it comes back it has a different name.
It's a shame that a standard for storing the metadata wasn't created long ago. While the PCs wouldn't use the data, it is a shame to lose it. It is also a shame that we have to work towards the lowest common denominator. It's one thing to support it, it is another to adopt the conventions.
Alex