Use a filter to get rid of spam. I get around 20-100 spam mails per day, but using bogofilter it's all filtered away. I get around 1 false negative per week and no false positives.
These micropayments seem interesting, but are really useful for spam reduction for people that don't have the capabilities to use a content based spam filter.
Besides, many mailing lists and ISPs are starting to use spamassassin or other filters, to the spam problem may go away in time. Or not.
You can't copyright or patent ideas. Not in Europe, and I hope not in the USA either.
You have copyright over a certain product that required creativity to create. You can patent a certain new technique. But you cannot patent ideas. Which is good, because there are something like 10 original stories in existence, and all the rest are just variations.
Trademarks are awarded for famously known words, symbols and other things that are known in the public and associated with a certain company, product or brand.
So: change the name, create it from scratch and avoid patented techniques. If you can make it cheaper or better than the original, you'll be successful. Isn't this what the capitalistic freedom in USA is all about?
I'm not sure what you're talking about. Your makeshift example about clipboards only tells us that different programs behave differently. I've seen Windows programs that didn't support copy-paste, albeit rarely - it's not an OS feature. And this has nothing to do with the OS (as in Operating System), but everything to do with a graphical user session and inconsistencies found there, which are admittedly a major problem for Linux in the desktop market.
When you talk about Linux's API, you're on fuzzy ground. Do you mean the kernel, or possibly libc6 or some other centrally standardized libraries? Or all of them together? Which libraries, in that case?
If you're worried about reinventing the wheel, don't be. Linux is equipped with pretty standard libraries that do much more than stock Windows libraries do. You just need to know which library contains the functionality you need. Just like in Windows, except you'll need to start making your own code much later, since the libraries provide you with much more ready-made functionality.
Anyway, the library APIs are free (as in speech) for one thing! You can actually look at the source and see that the method the API documentation talked about actually exists, and you can see exactly what it does.
Of the thousands of Windows libraries, only a portion is documented. MS has huffed and puffed this autumn and released several hundred new libraries with press releases to boost. But still parts of Windoze are undocumented to the developers at large. And rare are the people who have actually seen the source code that makes up even a minor part of Windows. And you call this a "solid API"?
This is why even Debian stable includes the security source, which contains all security patches for reported security problems within a day or two. So using Debian stable (or testing, or unstable) with frequent security updates will keep it secure.
If you want really secure, use some obscure Unix variant last released 10 years ago. No script kiddie is going have any idea on how to break into it.
You can also install Debian without a CD. Just get a suitable set of boot disks. If you get one with the correct NIC driver built into the kernel, you just need the rescue and root floppies and that big fat ethernet connection of yours. If you need driver modules, then you need an additional 4 disks of drivers, as well.
Or you can burn it all to a cd-rom. It's about a 12MB download. No fuss with slow floppies and you still get the newest version from the net.
I've been wearing night-and-day contact lenses for over a year now. Normally you'd need to wash them once a week or two, but apparently my eyes stay pretty clean and I keep them in the whole month, after which I switch to a new pair.
Included in the price of these lenses are free eye checkups, which I take every three months. A quick scan to see if everything is correct.
And just three weeks ago they noticed a scrape in my right eye. I took the contacts out for one week and then did a recheck. The scratch was gone, so I resumed wearing my contacts. Hasn't seemed too risky yet.
So far I've been very happy with them - no need to hassle every morning and evening like with normal lenses. After a month or two you don't even notice them. On the contrary, you notice when you're not wearing them.
Cost for me is like 200 for half a year, with checkups and such.
Look, GPL does not restrict you to anything! If you don't accept the license, then don't. You can still use the software and you're bound by the normal copyright laws.
Being bound by the copyright laws means that YOU CANNOT use that software as part of your own product, without a license. That's what GPL gives you - the license to use that software in yours - as long as you release your product under GPL as well.
Without GPL you have NO RIGHTS to redistribute or modify that GPL'd software. So GPL just gives you more rights, which you normally don't have. What is the problem here?
Actually you'll be better off if you make a copy of the CD and store the copy in a dark safe place, and keep on using the original.
Why? Because pressed glass CDs (the originals) do tend to break after about 20-30 years due to oxidation. Burned CD-R disks, however, have a life span of 50 to 100 years or even more, depending on quality.
Also, pressed glass CDs have better endurance, so they don't get damaged as easily as CD-Rs (or CD-RWs) when manipulated.
I do feel a bit cheated - my two week tour of Ireland and England was really badly timed. I was too early for Linuxbierwanderung and too late for the Great British Beer Festival held in London.
However, I did manage to visit Doolin while in Ireland. A really nice small village, with lots of fields around it and nice pubs, too. Good quality hostels, as well. And the starry skies you get on a cloudless night are pretty amazing, as there's no light pollution for miles around.
At least Guinness (written with two n's) is a heavily guarded recipe and only licensed breweries are allowed to brew Guinness. However, real connoisseurs (like the folk at Liverpool) hold that Guinness isn't real Guinness unless it's made from the waters of river Liffey, which flows through Dublin (where the original Guinness brewery is located). It is known that seaweed is one of the special ingredients, though.
Hopefully they do take the water from upstream of the city...
Next you'll see the military starting to sponsor the contestants. And next we'll see the bots in the Middle-East, hacking away at terrorist encampments. Or?
Well, free speech or not, the DMCA prohibits all devices (be it hardware or software) and services whose main purpose is the circumvention of access and/or copy restrictions (DRMs).
So unfortunately, the DMCA limits free speech. You can't give a presentation on how to make a DVD player zone free, or how to make truetype fonts embedded, or how to turn ebooks into PDF. Because the lawyers prosecuting you can label whatever you do as a "service".
OK, so what if you do it for free? Free services are services also. Mainly you need to watch what you discuss, not how you do it.
This is the real problem of the DMCA - it isn't enough that killing another human is illegal; we also prohibit knife sharpeners. What did we just accomplish? Killing a human is just as illegal as it was without this new law, but now nearly every household is also engaging in criminal activities when they use their knife sharpeners. And what is the point? Is it easier to catch the killers with this new law? What? What? What?!
And even if you don't get a hacked player, you can just check the net for information on players. Most players can be "hacked" by a blindigly simple program that just turns one bit in the player's BIOS.
But hey, that's circumventing a DRM, so it's illegal in the US, and shortly in the EU as well.
Well, not being a US citizen isn't much of a relief for long. The European version of DMCA is coming into effect around EU during 2003, so then we're all ankle-deep in the same sh...ushi.
It's weird to see representatives here in Europe supporting the new EU directive, while DMCA is scorned upon in the US by all except the media copyright holders.
The European version of DMCA is the EU directive 2001/29/KY, which demands that all EU member countries make the appropriate changes to their own legistlations no later than the year 2003.
In Finland the proposal is now ready and will go to the parliament vote in the early autumn, and will be effective as of December 2002.
The directive will, in effect, make the circumvention of digital copy and access restrictions illegal, including the actual process and also hardware, software, products and services that do the same.
Just a reminder, that MS did drive OS/2 out of the market, and OS/2 was in 1993 as advanced as Windows is just about now. So without Microsoft we wouldn't have had these QDOS based (Quick'n'Dirty Operating System) systems all these years.
And people wouldn't think it normal for computers to crash every other hour.
Microsoft labeled joysticks and games are pretty good, but they aren't strictly speaking made by Microsoft. MS is just the publisher.
Windows UI has nothing to do with usability or human interfaces in general. It's a failed copy of the Mac OS interface. It's sad that many Linux desktops are now forced to imitate Windows. Just like the QWERTY-keyboards of today have the same layout that the mechanical typewriters had to slow down typists so that the machine wouldn't get jammed. History never leaves us alone.
Microsoft has done a lot, but I really think that someone else would have done it, had Microsoft been away. And probably done it better, with the exception of Microsoft's marketing department, which is doing an excellent job making people believe they need poorly done software.
The JVM MS is including in Windows XP is apparently version 1.1.4 (read: "ancient"). This may just be another move to make users "see" that Java doesn't do anything so perhaps they'll try out C#. And users might not complain as much when they again remove Java support, since that old buggy version they're using pretty much makes Java unusable for the average non-geek user that cannot install a proper JVM.
Design pattern vs. implementation pattern
on
Bitter Java
·
· Score: 0
Yep, this example is an example of an implementation pattern - a good way of doing a specific task, in this case, reading a file and making sure it's closed.
This has nothing to do with design patterns, although the point is valid - some languages will make implementing a specific implementation or design pattern easier than others.
Btw, as to your Java example, Java has the GarbageCollector design pattern built-in. This means that you can just open the file and do what you want, then forget about it, since the file is closed automatically when the file object becomes unreferenced = when the myFile variable drops out of scope = you exit the current function.
In this case a design pattern helped make a specific implementation pattern ridiculously easy to implement.
Patterns don't just go away
on
Bitter Java
·
· Score: 1, Interesting
Hey, design patterns are just generally applicable ways of designing things (like software) that usually (through prior experiences) produce good designs that are robust, flexible, or whatever is wanted.
Everything that has to do with designing and is (relatively) commonly used and works is a design pattern.
Procedures are a pattern, just like OO. But when your implementation environment directly supports that pattern, then it becomes just a mundane tool.
Many GoF patterns are for C++ and Smalltalk, because those were the languages that the GoF had experience in. The patterns were meant to produce better designs for those languages. Because the implementation isn't supported by the language, a specific pattern must be enforced on the programmer.
Lisp doesn't need most of the GoF patterns due to its superior features, but that doesn't mean the patterns aren't there - they're just easier to implement. But if you don't use them, then your design won't be any better just due to your selection of language. And using a language or an environment that provides these basic patterns for you allows you to concentrate on even higher level patterns.
Or have you seen anyone implementing class inheritance using assembly? I haven't. It's a bit easier when the language handles stuff like named variables, scopes, functions and type checking, just to name a few very commonly used design and implementation patterns that help implementing an OO system.
If we're talking about optimization, how about a T9 system for normal keyboards?
T9 is the technique used by mobile phones to guess the appropriate words from a dictionary based on the digit keys pressed on the phone.
How about you just keep your fingers on the baseline (asdfghjkl) and type on that, and the system completes the words by selecting the appropriate letters from the top, middle or lower row so that correct dictionary words form. This should increase typing speed a bit.
And for programming, the system could use a dictionary of the programming language keywords and declared variables/functions/etc. Might be fun...
My friend had a summer job at a physics lab. Servers are unix, and most desktops are Linux. One guy there used Windows 98 or such, and Word, creating documentation.
It really made concentration difficult with that guy swearing all the time, and the machine crashing every now and then. One reason was Windows's instability, the other was Word's inept features at page layout.
After a month or so my friend got this guy to install CygWin and run LaTeX from a unix server through X. After that: peace and quite all the way. Since Windows did nothing but run the XServer, it stayed up, and LaTeX made document editing ridiculously easy.
Actually, the secret service is pretty well informed. And so are the people they're trying to track, as well. Since it's obvious the Internet is monitored, criminals use different codes to hide their messages into innocent looking postings, digitally imprinted into images and so forth. Probably some deep underground super computer just crawled through the web with a fuzzy algorithm and decided that post to be suspect and activated two agent drones to check out the guy and the building.
Well, as many already said - watch out what words you combine into a phrase, or even a message.
Use a filter to get rid of spam. I get around 20-100 spam mails per day, but using bogofilter it's all filtered away. I get around 1 false negative per week and no false positives.
These micropayments seem interesting, but are really useful for spam reduction for people that don't have the capabilities to use a content based spam filter.
Besides, many mailing lists and ISPs are starting to use spamassassin or other filters, to the spam problem may go away in time. Or not.
You can't copyright or patent ideas. Not in Europe, and I hope not in the USA either.
You have copyright over a certain product that required creativity to create. You can patent a certain new technique. But you cannot patent ideas. Which is good, because there are something like 10 original stories in existence, and all the rest are just variations.
Trademarks are awarded for famously known words, symbols and other things that are known in the public and associated with a certain company, product or brand.
So: change the name, create it from scratch and avoid patented techniques. If you can make it cheaper or better than the original, you'll be successful. Isn't this what the capitalistic freedom in USA is all about?
I'm not sure what you're talking about. Your makeshift example about clipboards only tells us that different programs behave differently. I've seen Windows programs that didn't support copy-paste, albeit rarely - it's not an OS feature. And this has nothing to do with the OS (as in Operating System), but everything to do with a graphical user session and inconsistencies found there, which are admittedly a major problem for Linux in the desktop market.
When you talk about Linux's API, you're on fuzzy ground. Do you mean the kernel, or possibly libc6 or some other centrally standardized libraries? Or all of them together? Which libraries, in that case?
If you're worried about reinventing the wheel, don't be. Linux is equipped with pretty standard libraries that do much more than stock Windows libraries do. You just need to know which library contains the functionality you need. Just like in Windows, except you'll need to start making your own code much later, since the libraries provide you with much more ready-made functionality.
Anyway, the library APIs are free (as in speech) for one thing! You can actually look at the source and see that the method the API documentation talked about actually exists, and you can see exactly what it does.
Of the thousands of Windows libraries, only a portion is documented. MS has huffed and puffed this autumn and released several hundred new libraries with press releases to boost. But still parts of Windoze are undocumented to the developers at large. And rare are the people who have actually seen the source code that makes up even a minor part of Windows. And you call this a "solid API"?
This is why even Debian stable includes the security source, which contains all security patches for reported security problems within a day or two. So using Debian stable (or testing, or unstable) with frequent security updates will keep it secure.
If you want really secure, use some obscure Unix variant last released 10 years ago. No script kiddie is going have any idea on how to break into it.
--
Tarmo Toikkanen
You can also install Debian without a CD. Just get a suitable set of boot disks. If you get one with the correct NIC driver built into the kernel, you just need the rescue and root floppies and that big fat ethernet connection of yours. If you need driver modules, then you need an additional 4 disks of drivers, as well.
Or you can burn it all to a cd-rom. It's about a 12MB download. No fuss with slow floppies and you still get the newest version from the net.
I've been wearing night-and-day contact lenses for over a year now. Normally you'd need to wash them once a week or two, but apparently my eyes stay pretty clean and I keep them in the whole month, after which I switch to a new pair.
Included in the price of these lenses are free eye checkups, which I take every three months. A quick scan to see if everything is correct.
And just three weeks ago they noticed a scrape in my right eye. I took the contacts out for one week and then did a recheck. The scratch was gone, so I resumed wearing my contacts. Hasn't seemed too risky yet.
So far I've been very happy with them - no need to hassle every morning and evening like with normal lenses. After a month or two you don't even notice them. On the contrary, you notice when you're not wearing them.
Cost for me is like 200 for half a year, with checkups and such.
Look, GPL does not restrict you to anything! If you don't accept the license, then don't. You can still use the software and you're bound by the normal copyright laws.
Being bound by the copyright laws means that YOU CANNOT use that software as part of your own product, without a license. That's what GPL gives you - the license to use that software in yours - as long as you release your product under GPL as well.
Without GPL you have NO RIGHTS to redistribute or modify that GPL'd software. So GPL just gives you more rights, which you normally don't have. What is the problem here?
Actually you'll be better off if you make a copy of the CD and store the copy in a dark safe place, and keep on using the original.
Why? Because pressed glass CDs (the originals) do tend to break after about 20-30 years due to oxidation. Burned CD-R disks, however, have a life span of 50 to 100 years or even more, depending on quality.
Also, pressed glass CDs have better endurance, so they don't get damaged as easily as CD-Rs (or CD-RWs) when manipulated.
Just my 0.02.
Isn't "less" better than "more"?-)
And, remembering that the pubs close pretty early in Ireland, you'll need to
$> cd /home
at some point for more beer.
I do feel a bit cheated - my two week tour of Ireland and England was really badly timed. I was too early for Linuxbierwanderung and too late for the Great British Beer Festival held in London.
However, I did manage to visit Doolin while in Ireland. A really nice small village, with lots of fields around it and nice pubs, too. Good quality hostels, as well. And the starry skies you get on a cloudless night are pretty amazing, as there's no light pollution for miles around.
Didn't find an internet café, though.
At least Guinness (written with two n's) is a heavily guarded recipe and only licensed breweries are allowed to brew Guinness. However, real connoisseurs (like the folk at Liverpool) hold that Guinness isn't real Guinness unless it's made from the waters of river Liffey, which flows through Dublin (where the original Guinness brewery is located). It is known that seaweed is one of the special ingredients, though.
Hopefully they do take the water from upstream of the city...
Next you'll see the military starting to sponsor the contestants. And next we'll see the bots in the Middle-East, hacking away at terrorist encampments. Or?
Well, free speech or not, the DMCA prohibits all devices (be it hardware or software) and services whose main purpose is the circumvention of access and/or copy restrictions (DRMs).
So unfortunately, the DMCA limits free speech. You can't give a presentation on how to make a DVD player zone free, or how to make truetype fonts embedded, or how to turn ebooks into PDF. Because the lawyers prosecuting you can label whatever you do as a "service".
OK, so what if you do it for free? Free services are services also. Mainly you need to watch what you discuss, not how you do it.
This is the real problem of the DMCA - it isn't enough that killing another human is illegal; we also prohibit knife sharpeners. What did we just accomplish? Killing a human is just as illegal as it was without this new law, but now nearly every household is also engaging in criminal activities when they use their knife sharpeners. And what is the point? Is it easier to catch the killers with this new law? What? What? What?!
--
Tarmo
And even if you don't get a hacked player, you can just check the net for information on players. Most players can be "hacked" by a blindigly simple program that just turns one bit in the player's BIOS.
But hey, that's circumventing a DRM, so it's illegal in the US, and shortly in the EU as well.
--
Tarmo
Well, not being a US citizen isn't much of a relief for long. The European version of DMCA is coming into effect around EU during 2003, so then we're all ankle-deep in the same sh...ushi.
It's weird to see representatives here in Europe supporting the new EU directive, while DMCA is scorned upon in the US by all except the media copyright holders.
--
Tarmo
The European version of DMCA is the EU directive 2001/29/KY, which demands that all EU member countries make the appropriate changes to their own legistlations no later than the year 2003.
In Finland the proposal is now ready and will go to the parliament vote in the early autumn, and will be effective as of December 2002.
The directive will, in effect, make the circumvention of digital copy and access restrictions illegal, including the actual process and also hardware, software, products and services that do the same.
--
The world is not what it used to be.
Just a reminder, that MS did drive OS/2 out of the market, and OS/2 was in 1993 as advanced as Windows is just about now. So without Microsoft we wouldn't have had these QDOS based (Quick'n'Dirty Operating System) systems all these years.
And people wouldn't think it normal for computers to crash every other hour.
Microsoft labeled joysticks and games are pretty good, but they aren't strictly speaking made by Microsoft. MS is just the publisher.
Windows UI has nothing to do with usability or human interfaces in general. It's a failed copy of the Mac OS interface. It's sad that many Linux desktops are now forced to imitate Windows. Just like the QWERTY-keyboards of today have the same layout that the mechanical typewriters had to slow down typists so that the machine wouldn't get jammed. History never leaves us alone.
Microsoft has done a lot, but I really think that someone else would have done it, had Microsoft been away. And probably done it better, with the exception of Microsoft's marketing department, which is doing an excellent job making people believe they need poorly done software.
The JVM MS is including in Windows XP is apparently version 1.1.4 (read: "ancient"). This may just be another move to make users "see" that Java doesn't do anything so perhaps they'll try out C#. And users might not complain as much when they again remove Java support, since that old buggy version they're using pretty much makes Java unusable for the average non-geek user that cannot install a proper JVM.
Yep, this example is an example of an implementation pattern - a good way of doing a specific task, in this case, reading a file and making sure it's closed.
This has nothing to do with design patterns, although the point is valid - some languages will make implementing a specific implementation or design pattern easier than others.
Btw, as to your Java example, Java has the GarbageCollector design pattern built-in. This means that you can just open the file and do what you want, then forget about it, since the file is closed automatically when the file object becomes unreferenced = when the myFile variable drops out of scope = you exit the current function.
In this case a design pattern helped make a specific implementation pattern ridiculously easy to implement.
Hey, design patterns are just generally applicable ways of designing things (like software) that usually (through prior experiences) produce good designs that are robust, flexible, or whatever is wanted.
Everything that has to do with designing and is (relatively) commonly used and works is a design pattern.
Procedures are a pattern, just like OO. But when your implementation environment directly supports that pattern, then it becomes just a mundane tool.
Many GoF patterns are for C++ and Smalltalk, because those were the languages that the GoF had experience in. The patterns were meant to produce better designs for those languages. Because the implementation isn't supported by the language, a specific pattern must be enforced on the programmer.
Lisp doesn't need most of the GoF patterns due to its superior features, but that doesn't mean the patterns aren't there - they're just easier to implement. But if you don't use them, then your design won't be any better just due to your selection of language. And using a language or an environment that provides these basic patterns for you allows you to concentrate on even higher level patterns.
Or have you seen anyone implementing class inheritance using assembly? I haven't. It's a bit easier when the language handles stuff like named variables, scopes, functions and type checking, just to name a few very commonly used design and implementation patterns that help implementing an OO system.
--
Tarmo
If we're talking about optimization, how about a T9 system for normal keyboards?
T9 is the technique used by mobile phones to guess the appropriate words from a dictionary based on the digit keys pressed on the phone.
How about you just keep your fingers on the baseline (asdfghjkl) and type on that, and the system completes the words by selecting the appropriate letters from the top, middle or lower row so that correct dictionary words form. This should increase typing speed a bit.
And for programming, the system could use a dictionary of the programming language keywords and declared variables/functions/etc. Might be fun...
It really made concentration difficult with that guy swearing all the time, and the machine crashing every now and then. One reason was Windows's instability, the other was Word's inept features at page layout.
After a month or so my friend got this guy to install CygWin and run LaTeX from a unix server through X. After that: peace and quite all the way. Since Windows did nothing but run the XServer, it stayed up, and LaTeX made document editing ridiculously easy.
Well, as many already said - watch out what words you combine into a phrase, or even a message.