You're right - and the perl oneliner I wrote is suitable for use as an external deformatter. The hack with sort | diff | grep is just to demonstrate that a simple spellchecker can be done using ordinary Unix tools.
As I mentioned you can mitigate the problem of nonwords like 'ch' and 'ptr' by filtering out all words shorter than 5 letters. Indeed I would probably make the spellchecker just report the ten longest misspellings found rather than all of them.
As I understand it, since the ruling that stopped Microsoft from charging OEMs per PC sold, they switched to a different contract that charges OEMs per PC sold of a given 'model', but again the OEM pays whether or not the PC was shipped with Windows. This is within the letter of the agreement but not really the spirit.
When I suggested that Microsoft should be required to sell Windows at the same price for all vendors, I didn't say that the price should be chosen by the courts. Microsoft could choose whatever price they want to charge. The only stipulation is that one Windows licence cost the same amount for every OEM in the United States, so that Microsoft can't coerce OEMs by threatening to increase the price they charge for Windows.
He didn't ask whether it is possible to buy a non-Microsoft PC. Of course it has always been possible. He asked how easy it is. This is a quite legitimate question, even if as you point out it includes several different factors such as price and number of vendors.
It's documented that Microsoft has entered into restrictive contracts with OEMs so they pay per PC sold, whether or not it includes Windows. Also that Microsoft has threatened vendors (e.g. IBM) with an increase in the price they pay for Windows and used this as a tool to stop vendors from including competitors' software they don't like. Some of these restrictive deals were replaced with similar ones that look better on paper but are much the same in practice (e.g. paying a Microsoft tax on each PC of a certain 'model' that was sold, so if a vendor wants to exclude Windows they must print new name badges and manuals). A simple injunctive remedy IHMO would be to require that Microsoft sell Windows licences at the same price to all vendors, and that the licence be paid for only if Windows is included with the PC.
You are quite right about the bundling of products etc. That is another example of monopoly power. It doesn't make the complaint about Microsoft preventing OEMs from offering Windows-free PCs any less valid.
I believe the convention comes from Smalltalk, and it came about because the keyboard of the machine where Smalltalk was first implemented did not have an underscore character! From there the StudlyCaps convention spread to other languages because it looks kool and Wired-magazine-esque to have capital letters in the wrong place.
What puzzles me is not that there's a disagreement on which of the two is more aesthetic. It's that while lots of people criticize the ICantReadThis style, I haven't seen anyone argue that it is better and gives more readable code than using underscores to separate words. The debate seems very one-sided.
Yes, this is a legitimate problem. I work on code that has spelling mistakes embedded into interfaces and it's very annoying. The fashionable use of StudlyCaps in programming (why? who decided that TextLikeThis is more readable than text_like_this?) makes the job a little harder but not impossible, as long as you follow the sane rule of making each word start with capital and continue lowercase, even if an acronym (so XmlParser not XMLParser or, God forbid, XMLparser - though of course XML_parser would be better than any of those).
That will give a list of unique words in your source code (use find and xargs to scan the whole source tree). Then you can run that list of words through an ordinary spellchecker such as ispell. Unfortunately when you find a mistake you have to go back and grep for it to find where it occurs. You would also need a personal dictionary for things that are not English words but nonetheless appear in code.
I would probably keep the private word list containing things like 'foreach' and 'const' with the program source code, and have a makefile target 'make spellcheck' that runs a command like the above and then prints out all words found that are not in/usr/share/dict/words or in the private word list. Indeed, why not this:
The private word list can be kept under version control and checked in whenever you add a new non-English word like 'Frobule' to your source code.
Adding filenames and line numbers to the output is left as an exercise for the reader. You might also want to change the perl command to ignore words with length < 5.
Actually, you can extend GPL software and keep those extensions hidden. You can make your own modified version and use it for whatever you want. The only requirement is that if you give that modified version to others then they must have the same rights you received.
If I'm not going to hold my own copyright, why not just specifically disavow copyright and let it enrich everybody via the public domain?
That is often a good strategy (tho' some people don't believe that works can be released into the public domain; since IANAL I have no idea why, but it's why using a permissive licence is often preferred). You might decide that it benefits society more to require that any work derived from yours (e.g. a modified version of your computer program) must also be free. If you think that, you can use the GPL.
Header files are copyrightable just as any source file. A list of numbers (like the list in errno.h) or a public interface description (like Win32) may be considered mere facts and so if you re-express the same facts in your own words (or even in the exact same words, if the language you write in doesn't offer much choice) you may not be infringing copyright. This does not mean a blanket exemption for all header files from copyright law. IANAL etc.
So an author changed the license of his own code, hit the presses!
Nope... check the first patch that appears in the article:
@@ -2,17 +2,7 @@
* Copyright (c) 2004-2007 Reyk Floeter
* Copyright (c) 2006-2007 Nick Kossifidis
* - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * This file is released under GPLv2
See the two copyright holders? They would need to give permission.
N.B. 'This file is released under GPLv2' is not really the recommended notice to add to source files. See 'How to apply these terms to your programs' at the end of the GPL text.
The article says that if you can produce light of any frequency you don't need colour filters. But this can't be the case, because a computer display needs to mix different frequencies (to produce white light, for example). That said, if they can control the proportion of incident white light that is reflected as white rather than coloured to a single frequency (or narrow band of frequencies), and with a simple light/dark filter (such as a black and white liquid crystal display), it could make a display that works on hue-saturation-value rather than red-green-blue. That would be interesting for the computer world, which has used boring RGB values to store image data for so long. I know that JPEG stores chrominance and luminance separately but I'm not aware of any file format (let alone graphics hardware) which works using HSV.
(BTW, does anyone know how to post a comment to an article using the new discussion system?)
Why would you require a certain clock speed? Is it some hard-realtime or DSP environment where you want the processor clock exactly synchronized to an input signal? Apart from that, there is no reason to prefer a 100MHz part to a 50MHz one that can do twice as much work per clock cycle.
I think the right comparison is watt-for-watt or MIPS-for-MIPS not MHz-for-MHz. Nobody has a functional requirement for a certain clock speed, although they may require performance of at least a certain level or power usage below a certain level.
So car stereos should just offer a high compression setting, and probably default to having it on.
Is this the 'loudness' feature that some car stereos and amplifiers have? I never worked out how that differed from just turning up the volume, but it must do something.
I will send you one of these pens for only $345 and as a bonus I'll include a copper magnetic bracelet which not only improves sound quality when wrapped around audio cables but can also alleviate arthritis.
Did you try a blind test? If you play the CD with the expectation that it will sound better and be less tiring, that's most likely what you will experience. You need to get two copies of the same song (an older one and a modern, squashed remastering), sample them to lossless audio files and get a friend to adjust the volume so that the newer remastering is not obviously louder. Then write a short program to play one of the two at random and ask you which one you think it is. Then you will find out whether you can reliably distinguish between them.
Many people experienced improved sound quality from using a special pen to draw round the outside of their CDs. They expected it to sound better and so it did.
Obviously animals are not formed from deformations of a doughnut shape. Everyone knows that the shape of living things is derived from the behaviour of one-dimensional cellular automata.
(a) According to copyright law, merely running some software (or compiling source code to run it) does not require permission from the copyright holder. Therefore, you do not need a licence to use the software. In this case any language about 'use' in the licence document is a harmless irrelevance (unless it attempts to restrict use, in which case it is a confusing and harmful irrelevance - but the MS-PL doesn't do that).
(b) According to copyright law, you do require permission to use the software. In that case the statement at the top of the licence: 'This licence governs use of the software' is just stating a legal truth.
Did Microsoft really drop or sideline PlaysForSure after creating the Zune store?
That's the way it has been spun in the media. I don't know whether adding Zune to PlaysForSure 'makes sense', but it does look like Microsoft is abandoning PlaysForSure customers and music companies by conspicuously refusing to let music bought in that system play on Microsoft's own heavily-promoted music player. If you do launch a DRM-infested proprietary music file format you should at least make some effort to ensure the files will still be usable on future devices.
The whole thing is a bit weird for me, I don't really see what possible reason they could have for selling a music player and selling music, but not allowing the music to be used with their own player. Even if there is a good reason, anyone buying Zune music now must worry that when the Zune is discontinued and the next big thing comes out from Microsoft, it too will have a 'self-contained music ecosystem' and you'll have to re-purchase all your music again.
While I agree with you in principle, to be fair, Microsoft dropped "PlaysForSure" after the deal with MTV to create URGE had already happened.
Isn't that the point? They made a partnership and persuaded MTV to use PlaysForSure, then after making the deal, they decided to effectively sideline PlaysForSure and switch to the Zune instead.
BTW,
"Our music brands, MTV, CMT, and VH1 can now be found on multiple screens as our audience has made it crystal clear that they really want their music accessible wherever they might be," said Van Toffler, president of the MTV music group. "The collaboration with these three companies is like a perfect storm, really striking the right balance to deliver the purest digital music play available."
It's like a perfect storm. Whoah. Is Van Toffler a made-up name?
So... when YouTube switches to H.264, does that mean that the Flash player will no longer be necessary? Will MPlayer, for example, be able to play videos straight from the site?
Do these ratings have any legal weight? Surely PC gamers can just pay for and download the games that they want. Do people still go to shops and buy a shiny disc in a plastic case?
You're right - and the perl oneliner I wrote is suitable for use as an external deformatter. The hack with sort | diff | grep is just to demonstrate that a simple spellchecker can be done using ordinary Unix tools.
As I mentioned you can mitigate the problem of nonwords like 'ch' and 'ptr' by filtering out all words shorter than 5 letters. Indeed I would probably make the spellchecker just report the ten longest misspellings found rather than all of them.
As I understand it, since the ruling that stopped Microsoft from charging OEMs per PC sold, they switched to a different contract that charges OEMs per PC sold of a given 'model', but again the OEM pays whether or not the PC was shipped with Windows. This is within the letter of the agreement but not really the spirit.
When I suggested that Microsoft should be required to sell Windows at the same price for all vendors, I didn't say that the price should be chosen by the courts. Microsoft could choose whatever price they want to charge. The only stipulation is that one Windows licence cost the same amount for every OEM in the United States, so that Microsoft can't coerce OEMs by threatening to increase the price they charge for Windows.
Argh... I am running Windows... replace the double quotes with single quotes. Sorry ;-p.
He didn't ask whether it is possible to buy a non-Microsoft PC. Of course it has always been possible. He asked how easy it is. This is a quite legitimate question, even if as you point out it includes several different factors such as price and number of vendors.
It's documented that Microsoft has entered into restrictive contracts with OEMs so they pay per PC sold, whether or not it includes Windows. Also that Microsoft has threatened vendors (e.g. IBM) with an increase in the price they pay for Windows and used this as a tool to stop vendors from including competitors' software they don't like. Some of these restrictive deals were replaced with similar ones that look better on paper but are much the same in practice (e.g. paying a Microsoft tax on each PC of a certain 'model' that was sold, so if a vendor wants to exclude Windows they must print new name badges and manuals). A simple injunctive remedy IHMO would be to require that Microsoft sell Windows licences at the same price to all vendors, and that the licence be paid for only if Windows is included with the PC.
You are quite right about the bundling of products etc. That is another example of monopoly power. It doesn't make the complaint about Microsoft preventing OEMs from offering Windows-free PCs any less valid.
I believe the convention comes from Smalltalk, and it came about because the keyboard of the machine where Smalltalk was first implemented did not have an underscore character! From there the StudlyCaps convention spread to other languages because it looks kool and Wired-magazine-esque to have capital letters in the wrong place.
What puzzles me is not that there's a disagreement on which of the two is more aesthetic. It's that while lots of people criticize the ICantReadThis style, I haven't seen anyone argue that it is better and gives more readable code than using underscores to separate words. The debate seems very one-sided.
I should add that if you do use underscores to separate words, just put 'tr/_/ /' in the perl code instead of that [a-z][A-Z] stuff.
Yes, this is a legitimate problem. I work on code that has spelling mistakes embedded into interfaces and it's very annoying. The fashionable use of StudlyCaps in programming (why? who decided that TextLikeThis is more readable than text_like_this?) makes the job a little harder but not impossible, as long as you follow the sane rule of making each word start with capital and continue lowercase, even if an acronym (so XmlParser not XMLParser or, God forbid, XMLparser - though of course XML_parser would be better than any of those).
/c; foreach (split) { print qq{$_\n} unless $seen{lc $_}++ }" source_file...
/usr/share/dict/words or in the private word list. Indeed, why not this:
/c; foreach (split) { print qq{$_\n} unless $seen{lc $_}++ }" >found_words /usr/share/dict/words >allowed_words
Enough rant. How about this:
perl -ne "s/([a-z])([A-Z])/$1 $2/g; tr/A-Za-z/
That will give a list of unique words in your source code (use find and xargs to scan the whole source tree). Then you can run that list of words through an ordinary spellchecker such as ispell. Unfortunately when you find a mistake you have to go back and grep for it to find where it occurs. You would also need a personal dictionary for things that are not English words but nonetheless appear in code.
I would probably keep the private word list containing things like 'foreach' and 'const' with the program source code, and have a makefile target 'make spellcheck' that runs a command like the above and then prints out all words found that are not in
find . -type f -name '*.c' | xargs perl -ne "s/([a-z])([A-Z])/$1 $2/g; tr/A-Za-z/
sort -u private_word_list
diff -u allowed_words found_words | grep -E '^[+][^+]'
The private word list can be kept under version control and checked in whenever you add a new non-English word like 'Frobule' to your source code.
Adding filenames and line numbers to the output is left as an exercise for the reader. You might also want to change the perl command to ignore words with length < 5.
Header files are copyrightable just as any source file. A list of numbers (like the list in errno.h) or a public interface description (like Win32) may be considered mere facts and so if you re-express the same facts in your own words (or even in the exact same words, if the language you write in doesn't offer much choice) you may not be infringing copyright. This does not mean a blanket exemption for all header files from copyright law. IANAL etc.
Nope... check the first patch that appears in the article:
See the two copyright holders? They would need to give permission.
N.B. 'This file is released under GPLv2' is not really the recommended notice to add to source files. See 'How to apply these terms to your programs' at the end of the GPL text.
The article says that if you can produce light of any frequency you don't need colour filters. But this can't be the case, because a computer display needs to mix different frequencies (to produce white light, for example). That said, if they can control the proportion of incident white light that is reflected as white rather than coloured to a single frequency (or narrow band of frequencies), and with a simple light/dark filter (such as a black and white liquid crystal display), it could make a display that works on hue-saturation-value rather than red-green-blue. That would be interesting for the computer world, which has used boring RGB values to store image data for so long. I know that JPEG stores chrominance and luminance separately but I'm not aware of any file format (let alone graphics hardware) which works using HSV.
(BTW, does anyone know how to post a comment to an article using the new discussion system?)
Why would you require a certain clock speed? Is it some hard-realtime or DSP environment where you want the processor clock exactly synchronized to an input signal? Apart from that, there is no reason to prefer a 100MHz part to a 50MHz one that can do twice as much work per clock cycle.
I think the right comparison is watt-for-watt or MIPS-for-MIPS not MHz-for-MHz. Nobody has a functional requirement for a certain clock speed, although they may require performance of at least a certain level or power usage below a certain level.
Hardware AES? Can OpenSSH use it?
How does this chip compare in performance per watt against ARM, PowerPC and the like?
The article doesn't say what socket and interface the chip uses. Are they still on Socket 370?
I will send you one of these pens for only $345 and as a bonus I'll include a copper magnetic bracelet which not only improves sound quality when wrapped around audio cables but can also alleviate arthritis.
Did you try a blind test? If you play the CD with the expectation that it will sound better and be less tiring, that's most likely what you will experience. You need to get two copies of the same song (an older one and a modern, squashed remastering), sample them to lossless audio files and get a friend to adjust the volume so that the newer remastering is not obviously louder. Then write a short program to play one of the two at random and ask you which one you think it is. Then you will find out whether you can reliably distinguish between them.
Many people experienced improved sound quality from using a special pen to draw round the outside of their CDs. They expected it to sound better and so it did.
Obviously animals are not formed from deformations of a doughnut shape. Everyone knows that the shape of living things is derived from the behaviour of one-dimensional cellular automata.
As I see it there are two possibilities.
(a) According to copyright law, merely running some software (or compiling source code to run it) does not require permission from the copyright holder. Therefore, you do not need a licence to use the software. In this case any language about 'use' in the licence document is a harmless irrelevance (unless it attempts to restrict use, in which case it is a confusing and harmful irrelevance - but the MS-PL doesn't do that).
(b) According to copyright law, you do require permission to use the software. In that case the statement at the top of the licence: 'This licence governs use of the software' is just stating a legal truth.
The whole thing is a bit weird for me, I don't really see what possible reason they could have for selling a music player and selling music, but not allowing the music to be used with their own player. Even if there is a good reason, anyone buying Zune music now must worry that when the Zune is discontinued and the next big thing comes out from Microsoft, it too will have a 'self-contained music ecosystem' and you'll have to re-purchase all your music again.
BTW,It's like a perfect storm. Whoah. Is Van Toffler a made-up name?
So... when YouTube switches to H.264, does that mean that the Flash player will no longer be necessary? Will MPlayer, for example, be able to play videos straight from the site?
Is there no existing free (modulo patent hassle) program to play H.264 videos?
Do these ratings have any legal weight? Surely PC gamers can just pay for and download the games that they want. Do people still go to shops and buy a shiny disc in a plastic case?