Well, the original Elite on the BBC Model B was pretty good for its time. Bear in mind it was running on a 2MHz 6502 with just 32KB of RAM, of which 10KB was swallowed for the frame buffer and another 2.5KB for housekeeping (3.5KB on a disk-based system, but you can swap in from disk in a way you can't with a cassette).
The point is, these games were first developed on the Amiga. If they got ported to other machines afterward, that doesn't make them less influential. If anything, it makes them more influential (since the presence of the game on the Amiga had an influence on other systems).
The Amiga was one hell of a machine for its time. Unfortunately -- and this is a problem which occurs with any single-source product, not just the Amiga; Macs and Palms were always (in)famous for it -- it was just too expensive. Eventually, all the technologies that made it special were bolted onto the 80486 platform, churned out by manufacturers in the far East.
It's the same thing with all technology. Being the first (which they can't take away from you) doesn't count for anything like as much as being the only one (which they will take away from you). If you were the first in your street to own a (car|stereo record player|colour telly|VCR|microwave oven|satellite dish|DVD player|DVD recorder), the kudos won't last; and by the time everyone else has one, theirs will be better than your ancient one.
Oh, no -- "utm.edu" is a URL. I'm talking about cookies. A lot of sites try to set one with a name of "__utma". If you accept that one, then they will try "__utmb", "__utmc" and "__utmz"; but if you reject the __utma one then they don't usually offer any more.
The domain "2o7.net" seems to be used by some privacy-invader.
TTBOMK, "un-camcordable" cinema screens work by saturating the camera with infra-red -- which is invisible to human eyes, but very visible to the camera's image sensor. I'm not sure that it wouldn't cause (at the very least) some discomfort to certain sensitive individuals over the course of a 2-hour film. Projectionists would be even worse affected. Is it legitimate to blind someone for fear that others might be making copies of your movies? And if the cinemas cover their backsides by issuing protective IR-blocking goggles on request, what's to stop someone using them over a camcorder lens?
There is going to come a point, somewhere along the way, where consumers are going to get seriously annoyed by all this, and the question will be asked: What proportion of the price of an entertainment product (cinema ticket, DVD, music CD) is being spent on flawed copy-prevention schemes?
That's because your application is writing directly to the graphics card's (hardware) frame buffer, not going via the Xorg (software) frame buffer. Ironically, closed-source players (which can't access the hardware frame buffer) are entirely visible to XScreenshot and co.
Re:Why do this?
on
AMD's New DRM
·
· Score: 2, Insightful
I think you mis-spelled "antitrust lawsuit" in your last line.
Sub-pixel rendering on a tube TV would only work if it was a Trinitron, which have parallel bands of phosphor. Conventional CRTs have dots of phosphor arranged in triangles.
(1) Even though RAM is cheap, Squid is still a bit overkill just to use as an ad-blocker. And whilst I'm fully aware that a sledgehammer-cracked nut can -- depending upon operator skill -- taste absolutely exquisite, sometimes you just want to pop it in your mouth and swallow it almost before you've had time properly to appreciate the flavour. (2) I don't think Squid can filter cookies, which is another useful feature I have thought about having: no need to be prompted for every cookie just to keep out __utma and friends. (3) Squid isn't designed to download adverts without displaying them (which you need to do for some sites as they develop more sophisticated advert-blocker-blockers) or generate false click-throughs (just out of sheer petty-minded spite) -- both of which might be useful features for an advert-blocker. (4) I want to be recognised for some piece of software I wrote, goddammit!
I have a Squid proxy server set up to block all advertisements. If a site sends me an advertisement, I add it to an ACL which blocks it. The full Squid is a bit overkill for the purpose, though, and I do plan to write my own "mini" proxy server just for advert-blocking (and I'll even add options to have it download the advert and just not display it, so blocking advert-blocker-blockers; and maybe even falsify clicks to distort their figures -- though I'm not sure if this is kikely to make them show me more adverts).
When watching TV, I make sure to change the channel on my Sky Plus box when the programme starts; then go and do something else for ten minutes or so (basically just enough time to account for all the advert breaks in the show, minus a little bit to account for any pausing and rewinding I'm likely to do). Then I rewind it to the beginning, watch the first part (pausing and rewinding wherever appropriate) and fast-forward through the advert breaks. By the end of the programme, I've caught up with the live transmission and can flick to another channel (for obvious reasons, you can only rewind as far as the point where you changed the channel).
[I]s it possible to take out a patent that presumes illegal behaviour? Such as a method of extracting money from a bank using a shotgun?
Actually, it would be more fun and profitable to patent methods for being robbed (such as protecting your throat from the deleterious effects of a sharp knife blade by revealing your debit card PIN). Think about it: you don't always catch the perpertrator (and they're a criminal, ergo unlikely to have much respect for the niceties of Intellectual Property law); but you do always have the victim -- right there in the nick, reporting the crime. As a Brucie Bonus, anyone who isn't insured for third-party liability is unlikely to report a crime on which they will owe what might turn out to be substantial backdated royalties -- therefore lowering the reported crime figures at a srtoke.
One of these days, I swear I'll write that cookie-blocker I've been meaning to write since forever. The one that silently swallows all those __utm.*, RMID, h2 and anything that originates from 2o7.net.
The iPod should publish it's (sic) interfaces so that people can make competing iPod software.
There are already moves afoot to force Apple to open up their Digital Restrictions Management schemes in order that other vendors can sell music compatible with the iPod. TTBOMK the protocols for transferring songs and creating playlists are already understood, and the DRM is the last stumbling block remaining. Anyone already can shunt unprotected songs to an iPod.
Sony should be forced to reveal all of the hardware interfaces in the PS/3 so that people can make their own add-on devices.
Soon, they will be. DVD region locking is already illegal in the EU -- if you buy a DVD player on the Continent, it will play DVDs bought anywhere in the world. TTBOMK it's even OK to bring one into the UK if you cut off the mains plug (so it's not in a working condition and therefore is considered spare parts, as opposed to an electrical appliance). Region locking is considered anti-competitive behaviour. Vendor-locking of video games systems is likely to be addressed, and by my reckoning about 15-20 years in future. It isn't happening now because the influential politicians are mainly of a generation that predate video gaming as a mainstream activity. But those people will be replaced -- all it takes is the ticking of the clock. Some of us remember the Atari 2600 and how towards the end, the only decent games available for it were being made by third parties..... and some of those people are already junior ministers working their way up through the machinery.
Google should be forced to publish their search engine core to prevent vendor lock-in to Google search.
Google already do publish enough information to enable a third party to:
Write an alternative user interface front-end which would work seamlessly with the Google search back-end
Write an alternative search back-end which would work seamlessly with the Google user interface front-end.
What Microsoft are being ordered to open up isn't their intellectual property, but part of the usage instructions. Admittedly it's a part that only means anything to rather advanced users, but nonetheless it's information to which users of Microsoft products are entitled. If I buy a guitar amplifier, I expect to be able to plug any guitar into it -- not just that manufacturer's guitars. And in the back of the handbook, it will give me the all information someone skilled in electronics would need to know in order to present a suitable signal to this amplifier -- the input impedance and expected voltage level. And in all probability, the connector will be a 6.3 mono jack. Now all I have to do is design my guitar pickup to have that voltage output into that impedance input and present it on that connector. More to the point, according to the law of the land, the amplifier manufacturer cannot stop me. If they tried to use some bizarre proprietary connector, any luthier would be within their rights to copy that connector for the purpose of making an instrument compatible with that amplifier.
Similarly, if I buy a Microsoft server, I should be able to choose any manufacturer's client to work with that server -- and if I buy a Microsoft client, I should be able to choose any manufacturer's server to work with it. By withholding information that people have a right to know on the flimsy pretext that most people would not know what to do with it anyway, Microsoft have created a monopoly for themselves -- a monopoly which might not have existed, had third parties been in a position to supply clients interoperable with Microsoft servers and servers interoperable with Microsoft clients. Unfortunately, withholding that information in the first place was actually illegal, and Microsoft must be punished.
In order for the boot sector to be compromised [in x64 Vista], there must already have been a kernel-level compromise. Unsigned kernel-level code must have already run.
What's to stop you from booting up with a recovery CD, and then using dd to copy a boot sector you prepared earlier over the existing one? Apart from the fact that modifying your own computer isn't such a big deal.
It's not obvious to me right now how anyone could pull that stunt on a third party, but maybe you could persuade someone to insert a flash drive and follow some instructions. If they didn't notice the necessary reboot (or are so used to rebooting Windows that it doesn't even register) then you might have a victim.
Yes, and the greatest number of drowning fatalities occur on the same days of the year as the greatest sales of ice cream -- so by that logic, eating ice cream obviously increases your chances of dying by drowning.
Try a Ouija board. In fact, make a video of the séance and post it on YouTube.
"Is anybody there? Knock once for yes, twice for no"
*knock* "Is that Tupac Shakur?"
*knock knock* "Well, can you fetch him?"
pause..... *glass rattles then begins to spell out a message* H..E..L..L..O..M..Y..N..A..M..E..I..S..T..U..P.. A..C..S..H..A..K..U..R "Have I your permission, in accordance with the Copyrights, Designs and Patents Act 1998 as amended, to make one copy of each of your albums for personal use?"
Y..E..S..M..A..K..E..A..S..M..A..N..Y..A..S..Y..O. .U..L..I..K..E
If none of the studios in Hollywood ever made another movie again, the average quality of films would go up -- a lot. What do we get from Hollywood? Spoiled brats playing with expensive toys. Predictable plots, usually based on terrible science and movies that are little more than 90-minute advertisements. And then they have the gall to keep on relentlessly milking a movie with sequel after sequel. Hollywood actresses, actors and directors are all overpaid -- there are no two ways about that. Nobody, and I really mean nobody, needs more than £100 000 a year to live on.
Maybe the major studios need to die. Go to your local independent cinema sometime -- there's one on or near every university campus -- or watch sky 315, and see what's possible without big budgets.
Having used both the VAX/VMS and Unix command lines, I know that there are better ones than MS-DOS. DOS really did a lot to tarnish the reputation of the command line.
Still, just try to do the equivalent of
$ for IMAGE in *.jpg; do THUMBNAIL="`basename $IMAGE.jpg`_mini.jpg"; convert -resize 200x200 $IMAGE $THUMBNAIL && echo "Shrunk $IMAGE giving $THUMBNAIL"; done
through a GUI and then tell me it's quicker or easier. (Let's say for argument's sake that there are a hundred, 4-megapixel.jpg images in the directory, which is about a full 256M memory card. In case it's not obvious, they are being shrunk down to no bigger than 200x200 and re-saved as oldfilename_mini.jpg.) The problem is that you CLI-bashers seem to want to maintain people in a permanent state of ignorance; when IMHO, most of them are perfectly capable of learning to type the above in an Xterm. If you'll excuse the vernacular, it's a shitload less dicking about.
-dev packages (or rather, the idea of separating out certain files which are not strictly necessary for ordinary day-to-day use of a program but required if you ever want to build something else that goes with it) are an anachronism. Back in the days when internet connections were by dial-up modem, files were often carried on floppy disks and hard disks were measured in megabytes, it made good sense to separate them. In those days, everybody using Linux was hardcore anyway and a requirement to download an extra file didn't matter so much -- you just had to know you needed foo-dev if you were building bar that depended on foo.
Nowadays, the majority of computer users have nice large hard drives, fast internet connections and bigger portable media like rewritable CDs/DVDs and keyring flash drives. Many people are in a position to try out GNU/Linux who are not as full of the pioneer spirit as us old-timers. Why should they have to be? We went out into the wilderness and we tamed it, with tarmac roads and flush toilets so those who came after wouldn't have to do things the hard way. And the reasons for separating out the -dev files -- basically, saving bytes -- are less valid than the reasons for not separating them out -- basically, simplifying foreign package installation.
Treating users like they have a clue is one thing, and maybe it's valid just to say "If you want package foo, look for foo-dev which will install foo plus some extra files which you'll need if you ever want to build other packages that work with foo." But if you took that to the extreme, you'd still have a lever on the steering column of your car to adjust the ignition timing instead of having the engine management system (or a pair of weights and a tube from the carburettor!) work it out for you. Maybe you do and if so, more power to you. I've been through the -dev thing and out the other side, but I still can't get rid of the feeling that it's just that sort of niggly little thing that puts less intrepid types off before they get as far as seeing the good stuff.
So we should include the -dev files in the main package because that's how Windows does it
Not really. Linux -dev packages contain files which get generated during compilation and which may need to be referred to in future when compiling a program which works with the one they came from. They are never required just in order to run a program; and if you downloaded the second program ready-compiled from your kernel distributor, you wouldn't need the -dev files. They only become necessary when -- not if, when -- you need to compile third-party packages from source; and no distributor, not even the mighty Debian, has every package ever written pre-compiled in their repositories.
Much third-party software for Windows insists to put extra copies of important DLLs (which are system libraries; MSVCRT.DLL is the Microsoft Visual C/C++ runtime, more analogous to libc) all over the place because there is no obvious way to determine where they should be found, let alone fetch them if they are missing; so it plays it safe. Windows installers aren't like Linux package managers, in that an installer only installs its own program(s); it doesn't do proper dependency-resolution.
We need to stop trying to be like Windows by doing what Windows does
If Windows actually got something right, then where's the harm in doing it that way?
and treat users like they have a clue by making sure they don't get confused when they need a -dev package.
That's the way I did it too -- all directories are named for groups, within which are subdirectories for albums. I even built a CGI-based front end so I could play tracks with a web-based interface. It turned out to be less useful in practice just because I was running the machine without a display. My TV set has RGB inputs (and I know how to generate csync from hsync and vsync) but I'm not sure the machine's onboard graphics will run down to 15kHz.
The thing is this: ignorance is transient. You start out not knowing things, and you need showing how to do them. Everything is hard, if you have never done it before. Once you have done something a few times, though, you start to understand what's happening and it gets easier. There are a lot of things which you will only ever have to do so rarely that they never really become "easy".
The idea of treating the state of ignorance as a desirable one which should be preserved (the Windows paradigm) is a relatively modern phenomenon, and one which I think is especially reprehensible. If this trend were taken to its logical conclusion, no book would contain any word longer than ten letters for fear of spoiling the reader's enjoyment by them having to look up an unfamiliar word; and year after year, the vocabulary would shrink, eventually excluding even nine-, eight- and seven-letter words.
Oh, For Crying Out Loud, that's it. I'm going to start MY own distro! And I'm going to base it off WindowMaker. Sod KDE and trying to pretend it's Windows! MY distro will be a clean break from the Windows mentality. I have the following design points in mind:
Treat users like they have a clue, or at least are capable of growing a clue.
Don't try to be like Windows. If there's a better way to do something than the way Windows does it, do it the better way.
Don't pretend the command line doesn't exist. It does exist, and it's often better than drag-and-drool. Present the user with some graded command-line exercises to get them used to it gently -- and make it easy to restore the state, because they might not get it right first time.
This is not Windows, and we are free to eschew Windows paradigms in favour of genuinely better alternatives where such exist.
No -dev packages! Put the -dev files in the main package. This will make the packages bigger and slower to download. I don't care. Hard disks have grown bigger and internet connections have grown faster since binary packages were invented. It's better all around for users to have the -dev files and not need them, than to need them and not have them. Beside which, how many copies of msvcrt*.dll and the rest do you find on a typical Windows box?
One of the first exercises will be compiling a package from source and installing it. If you can do that, you can do anything.
Be i-tal by default; but recognise that some people will want to pollute their systems with toxic closed-source software and allow for this to be done in the least-damaging way possible.
Stop trying to pretend to be Windows to the point where you begin to lose all Linux-ness. Reverse gear on a Ford is right and towards you, reverse gear on a Vauxhall is left and away from you. If people can cope with that sort of thing in cars, they can cope with something similar on computers.
This perceived need to be like Windows is seriously stifling computing, IMHO. The Apple Mac is a breath of fresh air, but we don't really want to be like that either.
I always said that what Mandrake needed was to ditch RPM and move to DEB package format. But the hypothetical "debdrake" never materialised, what with the Conectiva merger (they were the ones who had bodged apt to work with rpm files). Also, Mandrake and Debian have certain fundamental incompatibilities that won't go away with a few judiciously-placed symlinks. So it would have been a big jump
The second smart thing any distro could do would be to ditch -dev packages and put the developers' files right there in the main package. Because then, when some user inevitably has to install something from a source tarball that says it requires package "foo" -- which they are just l33t enough to know they installed from the official repository, but being still a bit of a n00b they don't know that this package also requires "foo-dev" -- they don't end up going ga-ga.
I realise why -dev files were separated out back in the day. I just don't think that the reasons for doing so are valid anymore! Most of us have bigger HDDs and faster internet connections. Those who really want "stripped-to-the-bone" systems are smart enough to know what they can get rid of. And the whole -dev thing is just so non-obvious.
Well, the original Elite on the BBC Model B was pretty good for its time. Bear in mind it was running on a 2MHz 6502 with just 32KB of RAM, of which 10KB was swallowed for the frame buffer and another 2.5KB for housekeeping (3.5KB on a disk-based system, but you can swap in from disk in a way you can't with a cassette).
The point is, these games were first developed on the Amiga. If they got ported to other machines afterward, that doesn't make them less influential. If anything, it makes them more influential (since the presence of the game on the Amiga had an influence on other systems).
The Amiga was one hell of a machine for its time. Unfortunately -- and this is a problem which occurs with any single-source product, not just the Amiga; Macs and Palms were always (in)famous for it -- it was just too expensive. Eventually, all the technologies that made it special were bolted onto the 80486 platform, churned out by manufacturers in the far East.
It's the same thing with all technology. Being the first (which they can't take away from you) doesn't count for anything like as much as being the only one (which they will take away from you). If you were the first in your street to own a (car|stereo record player|colour telly|VCR|microwave oven|satellite dish|DVD player|DVD recorder), the kudos won't last; and by the time everyone else has one, theirs will be better than your ancient one.
Oh, no -- "utm.edu" is a URL. I'm talking about cookies. A lot of sites try to set one with a name of "__utma". If you accept that one, then they will try "__utmb", "__utmc" and "__utmz"; but if you reject the __utma one then they don't usually offer any more.
The domain "2o7.net" seems to be used by some privacy-invader.
TTBOMK, "un-camcordable" cinema screens work by saturating the camera with infra-red -- which is invisible to human eyes, but very visible to the camera's image sensor. I'm not sure that it wouldn't cause (at the very least) some discomfort to certain sensitive individuals over the course of a 2-hour film. Projectionists would be even worse affected. Is it legitimate to blind someone for fear that others might be making copies of your movies? And if the cinemas cover their backsides by issuing protective IR-blocking goggles on request, what's to stop someone using them over a camcorder lens?
There is going to come a point, somewhere along the way, where consumers are going to get seriously annoyed by all this, and the question will be asked: What proportion of the price of an entertainment product (cinema ticket, DVD, music CD) is being spent on flawed copy-prevention schemes?
That's because your application is writing directly to the graphics card's (hardware) frame buffer, not going via the Xorg (software) frame buffer. Ironically, closed-source players (which can't access the hardware frame buffer) are entirely visible to XScreenshot and co.
I think you mis-spelled "antitrust lawsuit" in your last line.
Sub-pixel rendering on a tube TV would only work if it was a Trinitron, which have parallel bands of phosphor. Conventional CRTs have dots of phosphor arranged in triangles.
(1) Even though RAM is cheap, Squid is still a bit overkill just to use as an ad-blocker. And whilst I'm fully aware that a sledgehammer-cracked nut can -- depending upon operator skill -- taste absolutely exquisite, sometimes you just want to pop it in your mouth and swallow it almost before you've had time properly to appreciate the flavour. (2) I don't think Squid can filter cookies, which is another useful feature I have thought about having: no need to be prompted for every cookie just to keep out __utma and friends. (3) Squid isn't designed to download adverts without displaying them (which you need to do for some sites as they develop more sophisticated advert-blocker-blockers) or generate false click-throughs (just out of sheer petty-minded spite) -- both of which might be useful features for an advert-blocker. (4) I want to be recognised for some piece of software I wrote, goddammit!
I have a Squid proxy server set up to block all advertisements. If a site sends me an advertisement, I add it to an ACL which blocks it. The full Squid is a bit overkill for the purpose, though, and I do plan to write my own "mini" proxy server just for advert-blocking (and I'll even add options to have it download the advert and just not display it, so blocking advert-blocker-blockers; and maybe even falsify clicks to distort their figures -- though I'm not sure if this is kikely to make them show me more adverts).
When watching TV, I make sure to change the channel on my Sky Plus box when the programme starts; then go and do something else for ten minutes or so (basically just enough time to account for all the advert breaks in the show, minus a little bit to account for any pausing and rewinding I'm likely to do). Then I rewind it to the beginning, watch the first part (pausing and rewinding wherever appropriate) and fast-forward through the advert breaks. By the end of the programme, I've caught up with the live transmission and can flick to another channel (for obvious reasons, you can only rewind as far as the point where you changed the channel).
One of these days, I swear I'll write that cookie-blocker I've been meaning to write since forever. The one that silently swallows all those __utm.*, RMID, h2 and anything that originates from 2o7.net.
What Microsoft are being ordered to open up isn't their intellectual property, but part of the usage instructions. Admittedly it's a part that only means anything to rather advanced users, but nonetheless it's information to which users of Microsoft products are entitled. If I buy a guitar amplifier, I expect to be able to plug any guitar into it -- not just that manufacturer's guitars. And in the back of the handbook, it will give me the all information someone skilled in electronics would need to know in order to present a suitable signal to this amplifier -- the input impedance and expected voltage level. And in all probability, the connector will be a 6.3 mono jack. Now all I have to do is design my guitar pickup to have that voltage output into that impedance input and present it on that connector. More to the point, according to the law of the land, the amplifier manufacturer cannot stop me. If they tried to use some bizarre proprietary connector, any luthier would be within their rights to copy that connector for the purpose of making an instrument compatible with that amplifier.
Similarly, if I buy a Microsoft server, I should be able to choose any manufacturer's client to work with that server -- and if I buy a Microsoft client, I should be able to choose any manufacturer's server to work with it. By withholding information that people have a right to know on the flimsy pretext that most people would not know what to do with it anyway, Microsoft have created a monopoly for themselves -- a monopoly which might not have existed, had third parties been in a position to supply clients interoperable with Microsoft servers and servers interoperable with Microsoft clients. Unfortunately, withholding that information in the first place was actually illegal, and Microsoft must be punished.
It's not obvious to me right now how anyone could pull that stunt on a third party, but maybe you could persuade someone to insert a flash drive and follow some instructions. If they didn't notice the necessary reboot (or are so used to rebooting Windows that it doesn't even register) then you might have a victim.
Yes, and the greatest number of drowning fatalities occur on the same days of the year as the greatest sales of ice cream -- so by that logic, eating ice cream obviously increases your chances of dying by drowning.
Try a Ouija board. In fact, make a video of the séance and post it on YouTube.
..... *glass rattles then begins to spell out a message* . A..C..S..H..A..K..U..R
. .U..L..I..K..E
.....
"Is anybody there? Knock once for yes, twice for no"
*knock*
"Is that Tupac Shakur?"
*knock knock*
"Well, can you fetch him?"
pause
H..E..L..L..O..M..Y..N..A..M..E..I..S..T..U..P.
"Have I your permission, in accordance with the Copyrights, Designs and Patents Act 1998 as amended, to make one copy of each of your albums for personal use?"
Y..E..S..M..A..K..E..A..S..M..A..N..Y..A..S..Y..O
They'd have a job arguing with that
Bollocks.
If none of the studios in Hollywood ever made another movie again, the average quality of films would go up -- a lot. What do we get from Hollywood? Spoiled brats playing with expensive toys. Predictable plots, usually based on terrible science and movies that are little more than 90-minute advertisements. And then they have the gall to keep on relentlessly milking a movie with sequel after sequel. Hollywood actresses, actors and directors are all overpaid -- there are no two ways about that. Nobody, and I really mean nobody, needs more than £100 000 a year to live on.
Maybe the major studios need to die. Go to your local independent cinema sometime -- there's one on or near every university campus -- or watch sky 315, and see what's possible without big budgets.
Still, just try to do the equivalent of through a GUI and then tell me it's quicker or easier. (Let's say for argument's sake that there are a hundred, 4-megapixel
Nowadays, the majority of computer users have nice large hard drives, fast internet connections and bigger portable media like rewritable CDs/DVDs and keyring flash drives. Many people are in a position to try out GNU/Linux who are not as full of the pioneer spirit as us old-timers. Why should they have to be? We went out into the wilderness and we tamed it, with tarmac roads and flush toilets so those who came after wouldn't have to do things the hard way. And the reasons for separating out the -dev files -- basically, saving bytes -- are less valid than the reasons for not separating them out -- basically, simplifying foreign package installation.
Treating users like they have a clue is one thing, and maybe it's valid just to say "If you want package foo, look for foo-dev which will install foo plus some extra files which you'll need if you ever want to build other packages that work with foo." But if you took that to the extreme, you'd still have a lever on the steering column of your car to adjust the ignition timing instead of having the engine management system (or a pair of weights and a tube from the carburettor!) work it out for you. Maybe you do and if so, more power to you. I've been through the -dev thing and out the other side, but I still can't get rid of the feeling that it's just that sort of niggly little thing that puts less intrepid types off before they get as far as seeing the good stuff.
Not really. Linux -dev packages contain files which get generated during compilation and which may need to be referred to in future when compiling a program which works with the one they came from. They are never required just in order to run a program; and if you downloaded the second program ready-compiled from your kernel distributor, you wouldn't need the -dev files. They only become necessary when -- not if, when -- you need to compile third-party packages from source; and no distributor, not even the mighty Debian, has every package ever written pre-compiled in their repositories.
Much third-party software for Windows insists to put extra copies of important DLLs (which are system libraries; MSVCRT.DLL is the Microsoft Visual C/C++ runtime, more analogous to libc) all over the place because there is no obvious way to determine where they should be found, let alone fetch them if they are missing; so it plays it safe. Windows installers aren't like Linux package managers, in that an installer only installs its own program(s); it doesn't do proper dependency-resolution.
If Windows actually got something right, then where's the harm in doing it that way?
I've already explained why I think -dev packages are a very bad idea in today's climate. Installing a package from source needn't be any harder than
$ wget http://your.favourite.download.site.sld.cc/complic ated/path/to/foo.tar.gz
$ tar xvzf f
That's the way I did it too -- all directories are named for groups, within which are subdirectories for albums. I even built a CGI-based front end so I could play tracks with a web-based interface. It turned out to be less useful in practice just because I was running the machine without a display. My TV set has RGB inputs (and I know how to generate csync from hsync and vsync) but I'm not sure the machine's onboard graphics will run down to 15kHz.
Wait ..... did I just hear "MySQL" and "proper database" in the same sentence?
.....
Oh, you were comparing it to SQLite. Sorry. Point taken
I feel your pain.
The thing is this: ignorance is transient. You start out not knowing things, and you need showing how to do them. Everything is hard, if you have never done it before. Once you have done something a few times, though, you start to understand what's happening and it gets easier. There are a lot of things which you will only ever have to do so rarely that they never really become "easy".
The idea of treating the state of ignorance as a desirable one which should be preserved (the Windows paradigm) is a relatively modern phenomenon, and one which I think is especially reprehensible. If this trend were taken to its logical conclusion, no book would contain any word longer than ten letters for fear of spoiling the reader's enjoyment by them having to look up an unfamiliar word; and year after year, the vocabulary would shrink, eventually excluding even nine-, eight- and seven-letter words.
- Treat users like they have a clue, or at least are capable of growing a clue.
- Don't try to be like Windows. If there's a better way to do something than the way Windows does it, do it the better way.
- Don't pretend the command line doesn't exist. It does exist, and it's often better than drag-and-drool. Present the user with some graded command-line exercises to get them used to it gently -- and make it easy to restore the state, because they might not get it right first time.
- This is not Windows, and we are free to eschew Windows paradigms in favour of genuinely better alternatives where such exist.
- No -dev packages! Put the -dev files in the main package. This will make the packages bigger and slower to download. I don't care. Hard disks have grown bigger and internet connections have grown faster since binary packages were invented. It's better all around for users to have the -dev files and not need them, than to need them and not have them. Beside which, how many copies of msvcrt*.dll and the rest do you find on a typical Windows box?
- One of the first exercises will be compiling a package from source and installing it. If you can do that, you can do anything.
- Be i-tal by default; but recognise that some people will want to pollute their systems with toxic closed-source software and allow for this to be done in the least-damaging way possible.
- Stop trying to pretend to be Windows to the point where you begin to lose all Linux-ness. Reverse gear on a Ford is right and towards you, reverse gear on a Vauxhall is left and away from you. If people can cope with that sort of thing in cars, they can cope with something similar on computers.
This perceived need to be like Windows is seriously stifling computing, IMHO. The Apple Mac is a breath of fresh air, but we don't really want to be like that either.I always said that what Mandrake needed was to ditch RPM and move to DEB package format. But the hypothetical "debdrake" never materialised, what with the Conectiva merger (they were the ones who had bodged apt to work with rpm files). Also, Mandrake and Debian have certain fundamental incompatibilities that won't go away with a few judiciously-placed symlinks. So it would have been a big jump
The second smart thing any distro could do would be to ditch -dev packages and put the developers' files right there in the main package. Because then, when some user inevitably has to install something from a source tarball that says it requires package "foo" -- which they are just l33t enough to know they installed from the official repository, but being still a bit of a n00b they don't know that this package also requires "foo-dev" -- they don't end up going ga-ga.
I realise why -dev files were separated out back in the day. I just don't think that the reasons for doing so are valid anymore! Most of us have bigger HDDs and faster internet connections. Those who really want "stripped-to-the-bone" systems are smart enough to know what they can get rid of. And the whole -dev thing is just so non-obvious.