You people are the ones who voted the Nazis into power and invented industrialized genocide (another fine example of "German engineering" that was).
So, where does the Germany of 2004 torture prisoners, discriminate people based on their origin or colour, disrespect human rights, invade and bomb foreign countries and consistently drop out of international institutions?
At least we have learned from history, but you apparently haven't.
you're referring to the Republican Party as Nazis.
And indeed, while calling Rebulicans Nazis is IMO not (yet) acceptable, the similarities between both parties are disturbing.
Also, look at the spamhaus lists or such, how many of them are American? Not many.
I had a quick look at Spamhaus. You have a pretty screwed notion of "many" if you say that 77.5% (141 out of 182 entries in the ROKSO list) is "not many".
From the German word, I get [...] "terribly" in English based on Google's translating tools which in some contexts could mean the same thing.
I know German very well, and "unheimlich" has a certain nuance in it that is not at all reflected in "terrible". "Unheimlich" is much weaker, somewhat like a mixture of "uncomfortable" (that would be the 1:1 translation) and "terrible". For example, going through an empty quiet, abandoned place can be "unheimlich".
Regarding the universal dictionary, I think using English as a backbone is a bad choice because (in my opinion) English is a language with comparably few words (e.g. compared to German, French, and Swedish - the other languages I know). When I translate from German to Swedish or French via English, the outcome is usually complete nonsense. The only feasible way (if there is no direct translation German->Swedish available) is to manually lookup the German->English translation, interpret the English word according to the context and manually lookup relevant English->Swedish translations.
Backing the thing with WordNet is not sufficient to solve this problem, because WordNet reflects only relations between English words.
When I studied, we had a funny game having the university restaurant's online menu translated into English and back. From "Spagetthi", we got "Kabel", and so forth.
Gentoo's Bugzilla (mainly for ebuilds) is awesome. Just about every time I've had a problem, I can find a solution there. Yes, I'm saying that Gentoo's not perfect. It isn't. But at least I know it's getting better. Not sure if Debian has one, but the mailing lists sure are a pain to sift through...
Did you ever try http://bugs.debian.org? Debian had a sophisticated bugtracking system even before Bugzilla was developed. Bug submitting is as easy as "reportbug PACKAGE" on the command line, and it leads you through much of the workflow involved in doing proper bug reports (e.g. it adds the relevant versions of depending packages automatically).
On the other hand, I always found bugzilla a pain to browse and use. You often need to know way too much about the system in order to search for bugs or to submit bugs (just have a look at Bugzilla's bugreporting system itself to see what I mean). In Debian, you just enter the package name and get a simple-but-straightforward list of bugs structured in categories of importance.
No, it does not have any advantage. Any functional style algorithm can be expressed in imperative style.
Any program can be written on a Turing machine. Or in Brainfuck for that matter.
And C++ can do functional programming. It *is* a functional language, in some respect.
No, it fails on most properties that make up functional languages: functions are not "first class", there is no static type checking, there is no partial evaluation, variables represent memory cells instead of values,...
i>Well, guess what I found: not a single feature that C++ does not have!
Two words: static typechecking. This single property has very far reaching consequences. Most importantly, it allows to detect many programming errors at compile time that would go unnoticed in most other languages. Oh, and don't tell me C++ has a strong type system. It hasn't. For instance, I can do all kinds of nasty things with pointers that are never checked.
Other features:
higher order functions, partial evaluation
garbage collection (really efficient, not the time and memory consuming stuff from Java)
close to the mathematical description of problems
...
The point is, I can still program the functional way with all its advantages, but revert to imperative style for the small amount of code that really needs to be fast. Personally, I still prefer Haskell, though (lazy evaluation is fun!).
Yah, I'd love to pick up and use O'Caml, but the biggest barrier is interfacing with other libraries.
You might want to give Haskell a try then. It has excellent support for interfacing to foreign languages (at least the GHC compiler), and I prefer it over OCaml for its clean design.
I'm not a hacker unless I write something using a "non standard" language that 80 percent of us dont even know?
You didn't get the point of the original poster (who was very convincing in his argumentation). Great hackers are curious (that was also one of the points in Paul Graham's article). They like using new, interesting things. They like to experiment with languages and find pleasure in finding their limits (ever tried to program "hello world" in brainfuck?).
Strong typing on the other hand - Python actually has strong typing, it just doesn't have static typing.
Neither does Java. Also, strong typing is not very useful if you don't have any kind of type checking (like Python) during compilation. The big strength of statically typed languages (like e.g. Haskell) is that the compiler can detect many errors that go unnoticed in dynamically typed languages (like Java or Python). A nice side effect is that the compiler can actually throw away any type information after compilation, because the static type inference ensures that all types are correct anyway.
As most of Europe (except for a small island constantly trying to be different) uses civil law, court decisions are not binding precedents. Thus, the court decision has no real effect except on the affected parties. Of course, it might be cited in subsequent court decisions, but as I said, it is not binding.
I imagine that since it is a DISTRICT court (trial-level court, IIRC) other German courts are not even required to follow it
German law is quite different in this respect. It does not know the concept of binding precedent. The juridical system is solely based on law.
BTW: the court is a so-called "Landgericht", which is still a regional court, but not the lowest level (that would be "Amtsgericht" - municipal court), because the amount of money in dispute was fixed to the rather large sum of 100.000 Euro.
Accidents can (probably) be predicted with probabilities. Assuming that you have "synchronized traffic" of a certain length, it is (probably) very likely that an accident happens.
Besides, as far as I understand, the system currently only considers highways, which (at least in Germany) have at least dual carriage ways. If the traffic is not dense, most accidents or break downs do not cause jams, as the traffic simply passes by.
Basically what I take from this is that the table (e.g. SELECT * FROM foo) is simply a convenient logical representation of a stored relation. That is to say, foo can be implemented by the DBMS as a linked list, a tree, any data structure.
True. However, this encoding is usually very inconvenient (consider representing an HTML document or a structured piece of literature in this manner).
Besides this, nested structures are at least as logical as flat structures (I continue to call them flat because they *are*). Relational database logic is merely a fragment of first order predicate logic, one that is restricted to - guess what - flat relations, whereas first order predicate logic usually works with *nested* structures (called terms) and relations. XML and other nested data structures fit very well into logic, and in fact we (a research group in Munich and some other places) are working on a logic-based query language that exploits this similarity.
I agree with many of the statements that the author of the article makes, in particular regarding XQuery. However, some are so arrogant and *unproven* that it leaves the article in a bad light. Also, while he claims to have a good insight into database theory, I don't think he really has. SQLs big advantages are (1) it is easy to use and (2) it has a very limited expressive power which makes it easy to implement and efficient to evaluate. Other approaches have been considered, e.g. in deductive databases or knowledge base systems. However, those needed languages that were basically Turing complete or at least supported basic recursion (to implement transitive closure) and thus could lead to very inefficient queries.
Apparently "left" means "Progressive"/"Socialist" as it does in the USA.
Not necessarily. The social democrats are pretty "conservative" when it comes to social security and protection of the "welfare state" and the workers. The christian democrats (the word "christian" does no longer have anything to do with their orientation) is conservative when it comes to protecting the rights of industry and farmers, but more progressive on issues like social security.
Really progressive is in my opinion only the green party (whether you like their "progress" or not) and to some extent also the liberal party. That's probably also the reason why the green party got 12% in the European Election.
I feel sorry for you. How much disk space do you have devoted to viruses?
The diskspace used is almost irrelevant compared to current disk capacities. Our mail server probably has 0.5 TB disk storage for 5000 students (I don't have the exact numbers, though). Users can delete messages or even have them discarded. The important point is that it has to be the user's choice, not the administrators. This might be different for corporate mail systems, but we are a university, which in Germany is a public entity, for which the laws are usually more stringent.
Most? Really? How does this happen? From everything I've seen, the malware directly connects to the MX-specified server for the destination address. So I'd think the server in question should generally be under your control.
You probably never worked in a large institution. The relay server very often is not under your control, nor is it possible to use the relay for time-consuming tasks like content filtering. At our institute, the MX host simply decides to which mail servers the mail is forwarded, and the server itself is not under our control. Port 25 connections from outside to other hosts are blocked by the routers. I know several other institutions (university as well as corporate) that have this kind of setup.
Those servers forwarding it really should be doing virus checking.
That's a requirement almost as illusionary as to require all Windows installations to be patched!:-)
You are meeting the rules I mentioned, then, provided you're not sending vacation messages and such in reply.
We don't, as emails get delivered, it would be unsensible to do so.
That's OK, but the user still has to work through hundrets of messages per month
Well, the user can configure to automatically discard all messages above a certain level. The important thing is that the user must have full control over this, otherwise you are breaking privacy and mail laws (which were originally developed for snail mail, of course), at least in Europe.
I don't believe that RBLing even violates the law in Germany. On the same basis, firewalls could be ruled illegal, because they can block mail-connections (if you firewall some script-kiddie).
IANAL, but arbitrary connections are probably not covered by mail privacy.
Blocking someone else's messages is breaking privacy. It is even questionable to do automatic classification of Spam messages. You could use the same techniques for classifying political opponents, after all, and block those messages that are not "politically correct" (I sometimes get the impression that this is what they are doing with your president). The minimum solution that is acceptable is to add a header and let the user decide what to do with it. Not that I am against filtering, I use it myself extensively. But it has to be fully user configurable and users have to be fully aware of it and capable of turning it off.
The whole thing about them being legally obligated to deliver mail is the silliest thing I've ever heard. Leave it to the Germans to enact such a law.
Maybe you are living in a country where privacy laws are no longer enacted, but I prefer to have rather strict privacy laws over having someone spy on me.
There are simple solutions that allow to abide to the law while still providing Spam filtering. We add appropriate headers to Spam and Virus Mails and deliver them to certain subfolders of a users mailbox. He/She can then decide to delete the mails. Users who would click on attachments are also not capable of using IMAP instead of POP and thus won't get access to the messages.
Much better way: reject viruses in the SMTP transaction. The SMTP client is then responsible for notifying the sender. If that client is a virus or worm, it will do nothing; no one is bothered. If it's a false positive, the sender will get the bounce. Reliable, unobstrusive.
Two things:
in many countries (e.g. Germany) you are actually obliged to deliver a message, regardless of whether its a Virus or not, or at least send the recepient a message that he received an email and can fetch it by some means.
your proposal is short-sighted: most viruses are already relayed via several systems before they reach my mail server, so a bounce would be generated in any case; I suspect that this is true for most other systems as well.
The approach that we take is the following: We mark virus messages with a special header and deliver them in a dedicated folder in the user's mailbox. Most users simply delete all messages in this folder, but then it is their choice, we abide to all laws and do not generate bounce messages.
As long as you continue to buy american products we don't give a flying fuck what you do. Keep pouring money into our economy, we'll turn that into weapons and fuck you whenever we want.
Actually, we are importing less from the US than we are exporting to the US. So it's quite the opposite.
Thus, by stopping this directive, the situation gets worse.
Noone means to stop a directive that regulates software patents. The issue is just, that the council of ministers, under Irish presidency, plainly ignored the vote of the European Parliament which voted for a very restrictive directive about software patents. So, please, before you say someone is "full of shit", please get your facts straight!
I'm also contemplating filing an official complaint with the EU (not because of software patents, but because of the undemocratic way the directive was handled in this inctance). The EU has the *legal* obligation to investigate official complaints.
If you are willing to do this, I'll support you as much as I can.
The only reason I could imagine, sadly, is that some EU bureaucrats get big dollars by US companies. The fact that theses bureaucrats just choose to overrulle the European Commission is so incredible that my hope is it will create an enormous indignation (because, face it, the average EU citizen doesn't care about patents, but perhaps the beahvior shown by the bureaucrat (total irrespect to the elected representants) will trigger something).
Actually, it was the Irish presidency that overruled the Parliament, which I (as EU citizen) consider even worse (the directive has, however, still to be passed by the council of ministers, but that is usually only a formal thing). Unfortunately, the EU Parliament in the current form of the EU does not have much to say, which is very, very sad, if we are to become a political entity. I hope that at least the comparably new democracies in Central and Eastern Europe will help to change this.
I tried to alert the (mainstream) media about this some time ago, but they simply don't appear to care, most probably because the average citizen is not interested in software patents.
So, where does the Germany of 2004 torture prisoners, discriminate people based on their origin or colour, disrespect human rights, invade and bomb foreign countries and consistently drop out of international institutions?
At least we have learned from history, but you apparently haven't.
you're referring to the Republican Party as Nazis.
And indeed, while calling Rebulicans Nazis is IMO not (yet) acceptable, the similarities between both parties are disturbing.
Sebastian
I had a quick look at Spamhaus. You have a pretty screwed notion of "many" if you say that 77.5% (141 out of 182 entries in the ROKSO list) is "not many".
Sebastian
I know German very well, and "unheimlich" has a certain nuance in it that is not at all reflected in "terrible". "Unheimlich" is much weaker, somewhat like a mixture of "uncomfortable" (that would be the 1:1 translation) and "terrible". For example, going through an empty quiet, abandoned place can be "unheimlich".
Regarding the universal dictionary, I think using English as a backbone is a bad choice because (in my opinion) English is a language with comparably few words (e.g. compared to German, French, and Swedish - the other languages I know). When I translate from German to Swedish or French via English, the outcome is usually complete nonsense. The only feasible way (if there is no direct translation German->Swedish available) is to manually lookup the German->English translation, interpret the English word according to the context and manually lookup relevant English->Swedish translations.
Backing the thing with WordNet is not sufficient to solve this problem, because WordNet reflects only relations between English words.
When I studied, we had a funny game having the university restaurant's online menu translated into English and back. From "Spagetthi", we got "Kabel", and so forth.
Sebastian
Did you ever try http://bugs.debian.org? Debian had a sophisticated bugtracking system even before Bugzilla was developed. Bug submitting is as easy as "reportbug PACKAGE" on the command line, and it leads you through much of the workflow involved in doing proper bug reports (e.g. it adds the relevant versions of depending packages automatically).
On the other hand, I always found bugzilla a pain to browse and use. You often need to know way too much about the system in order to search for bugs or to submit bugs (just have a look at Bugzilla's bugreporting system itself to see what I mean). In Debian, you just enter the package name and get a simple-but-straightforward list of bugs structured in categories of importance.
Sebastian
Any program can be written on a Turing machine. Or in Brainfuck for that matter.
And C++ can do functional programming. It *is* a functional language, in some respect.
No, it fails on most properties that make up functional languages: functions are not "first class", there is no static type checking, there is no partial evaluation, variables represent memory cells instead of values, ...
Sebastian
Two words: static typechecking. This single property has very far reaching consequences. Most importantly, it allows to detect many programming errors at compile time that would go unnoticed in most other languages. Oh, and don't tell me C++ has a strong type system. It hasn't. For instance, I can do all kinds of nasty things with pointers that are never checked.
Other features:
- higher order functions, partial evaluation
- garbage collection (really efficient, not the time and memory consuming stuff from Java)
- close to the mathematical description of problems
- ...
The point is, I can still program the functional way with all its advantages, but revert to imperative style for the small amount of code that really needs to be fast. Personally, I still prefer Haskell, though (lazy evaluation is fun!).Sebastian
You might want to give Haskell a try then. It has excellent support for interfacing to foreign languages (at least the GHC compiler), and I prefer it over OCaml for its clean design.
Sebastian
You didn't get the point of the original poster (who was very convincing in his argumentation). Great hackers are curious (that was also one of the points in Paul Graham's article). They like using new, interesting things. They like to experiment with languages and find pleasure in finding their limits (ever tried to program "hello world" in brainfuck?).
Sebastian
Neither does Java. Also, strong typing is not very useful if you don't have any kind of type checking (like Python) during compilation. The big strength of statically typed languages (like e.g. Haskell) is that the compiler can detect many errors that go unnoticed in dynamically typed languages (like Java or Python). A nice side effect is that the compiler can actually throw away any type information after compilation, because the static type inference ensures that all types are correct anyway.
Sebastian
"Fog in the Channel, continent isolated"
Sebastian
Sebastian
German law is quite different in this respect. It does not know the concept of binding precedent. The juridical system is solely based on law.
BTW: the court is a so-called "Landgericht", which is still a regional court, but not the lowest level (that would be "Amtsgericht" - municipal court), because the amount of money in dispute was fixed to the rather large sum of 100.000 Euro.
Sebastian
Besides, as far as I understand, the system currently only considers highways, which (at least in Germany) have at least dual carriage ways. If the traffic is not dense, most accidents or break downs do not cause jams, as the traffic simply passes by.
Sebastian
True. However, this encoding is usually very inconvenient (consider representing an HTML document or a structured piece of literature in this manner).
Besides this, nested structures are at least as logical as flat structures (I continue to call them flat because they *are*). Relational database logic is merely a fragment of first order predicate logic, one that is restricted to - guess what - flat relations, whereas first order predicate logic usually works with *nested* structures (called terms) and relations. XML and other nested data structures fit very well into logic, and in fact we (a research group in Munich and some other places) are working on a logic-based query language that exploits this similarity.
I agree with many of the statements that the author of the article makes, in particular regarding XQuery. However, some are so arrogant and *unproven* that it leaves the article in a bad light. Also, while he claims to have a good insight into database theory, I don't think he really has. SQLs big advantages are (1) it is easy to use and (2) it has a very limited expressive power which makes it easy to implement and efficient to evaluate. Other approaches have been considered, e.g. in deductive databases or knowledge base systems. However, those needed languages that were basically Turing complete or at least supported basic recursion (to implement transitive closure) and thus could lead to very inefficient queries.
Sebastian
Not necessarily. The social democrats are pretty "conservative" when it comes to social security and protection of the "welfare state" and the workers. The christian democrats (the word "christian" does no longer have anything to do with their orientation) is conservative when it comes to protecting the rights of industry and farmers, but more progressive on issues like social security.
Really progressive is in my opinion only the green party (whether you like their "progress" or not) and to some extent also the liberal party. That's probably also the reason why the green party got 12% in the European Election.
Sebastian
The diskspace used is almost irrelevant compared to current disk capacities. Our mail server probably has 0.5 TB disk storage for 5000 students (I don't have the exact numbers, though). Users can delete messages or even have them discarded. The important point is that it has to be the user's choice, not the administrators. This might be different for corporate mail systems, but we are a university, which in Germany is a public entity, for which the laws are usually more stringent.
Most? Really? How does this happen? From everything I've seen, the malware directly connects to the MX-specified server for the destination address. So I'd think the server in question should generally be under your control.
You probably never worked in a large institution. The relay server very often is not under your control, nor is it possible to use the relay for time-consuming tasks like content filtering. At our institute, the MX host simply decides to which mail servers the mail is forwarded, and the server itself is not under our control. Port 25 connections from outside to other hosts are blocked by the routers. I know several other institutions (university as well as corporate) that have this kind of setup.
Those servers forwarding it really should be doing virus checking.
That's a requirement almost as illusionary as to require all Windows installations to be patched! :-)
You are meeting the rules I mentioned, then, provided you're not sending vacation messages and such in reply.
We don't, as emails get delivered, it would be unsensible to do so.
Sebastian
Well, the user can configure to automatically discard all messages above a certain level. The important thing is that the user must have full control over this, otherwise you are breaking privacy and mail laws (which were originally developed for snail mail, of course), at least in Europe.
I don't believe that RBLing even violates the law in Germany. On the same basis, firewalls could be ruled illegal, because they can block mail-connections (if you firewall some script-kiddie).
IANAL, but arbitrary connections are probably not covered by mail privacy.
Sebastian
Blocking someone else's messages is breaking privacy. It is even questionable to do automatic classification of Spam messages. You could use the same techniques for classifying political opponents, after all, and block those messages that are not "politically correct" (I sometimes get the impression that this is what they are doing with your president). The minimum solution that is acceptable is to add a header and let the user decide what to do with it. Not that I am against filtering, I use it myself extensively. But it has to be fully user configurable and users have to be fully aware of it and capable of turning it off.
Sebastian
Maybe you are living in a country where privacy laws are no longer enacted, but I prefer to have rather strict privacy laws over having someone spy on me.
There are simple solutions that allow to abide to the law while still providing Spam filtering. We add appropriate headers to Spam and Virus Mails and deliver them to certain subfolders of a users mailbox. He/She can then decide to delete the mails. Users who would click on attachments are also not capable of using IMAP instead of POP and thus won't get access to the messages.
Sebastian
Two things:
The approach that we take is the following: We mark virus messages with a special header and deliver them in a dedicated folder in the user's mailbox. Most users simply delete all messages in this folder, but then it is their choice, we abide to all laws and do not generate bounce messages.
Sebastian
Sebastian
Actually, we are importing less from the US than we are exporting to the US. So it's quite the opposite.
Sebastian
Noone means to stop a directive that regulates software patents. The issue is just, that the council of ministers, under Irish presidency, plainly ignored the vote of the European Parliament which voted for a very restrictive directive about software patents. So, please, before you say someone is "full of shit", please get your facts straight!
Sebastian
If you are willing to do this, I'll support you as much as I can.
Sebastian
Actually, it was the Irish presidency that overruled the Parliament, which I (as EU citizen) consider even worse (the directive has, however, still to be passed by the council of ministers, but that is usually only a formal thing). Unfortunately, the EU Parliament in the current form of the EU does not have much to say, which is very, very sad, if we are to become a political entity. I hope that at least the comparably new democracies in Central and Eastern Europe will help to change this.
I tried to alert the (mainstream) media about this some time ago, but they simply don't appear to care, most probably because the average citizen is not interested in software patents.
Sebastian