You think this is bad? Nearly one year ago I moved to Sweden. Every swede has a so called personnumber which is formatted like yymmdd-xxxx (your birtday + four digits). Without it you are lost. You can't do anything in sweden without a person number. Swedes are really clueless about it I always have lots of fun when I have to show my dutch passport. First they spent a few minutes looking at the passport. When they start looking really confused I explain them that it is not a swedish passport (duh) and therefore my personnumber cannot be found in it.
Basically you can't open a bankaccount, can't get phone in your house, can't rent a fucking video tape without a personnumber in this country. Luckily I got one since I have a job in this country and have to pay (a lot) taxes.
A dutch friend of me who also lives here teaches database courses. One of the standard things he has to teach his students is not to use the perssonnumber as a primary key. Unfortunately they don't listen and most databases in this country use perssonnumber as a primary key so you have a lot of trouble fitting in to the system if you don't have one.
If you want to read more about the personnumber I have a nice link here.
"Config files are normally sectioned key value pairs."
That's nice if you have only a few sections but if you have a lot of them you might want to organize them hierarchically. -> xml does this, ini files don't. Currently the solution for this is LDAP which is also a nice solution. The only problem is that it is a protocol rather than a fileformat. Technically you could probably combine LDAP with XML. It wouldn't surprise me if that already has been done somewhere since it is so obvious.
Windows ini files were a mess. It is good that MS abandoned them. The windows registry really wasn't a bad idea until they started putting com registration in. Then it became really messy.
The last thing I want is a localized ini file. What if I move to another place? right I loose all my settings. I want to store my settings on a central place in the network. With personalized configuration files for each program you use, that becomes really messy.
Database guys figured out years ago that flat files are not good for datastorage. First they invented hierarchical databases and later on they came up with relational databases. After that came object databases and now we have XML (which can be used to store objects).
So why use XML: - rich, extensible syntax - standardized - easy to handle (it's just ascii)
"This doesn't make any sense. The XML would have to be stored somewhere. My guess is in/etc/something. As for user-specific settings, where else would they go but some.something/ directory in the user's home?"
true, didn't think of that. You might want to consider storing it somewhere else though because the last thing you'd want is joe average launching turbo vi to mess up his config file.
"Such "generic software" already exists for flat ASCII text files. It is called emacs, vi, perl, sed, awk, grep, diff . . . the list goes on and on"
BS. It's not the same, if you don't see that you have a problem. I'm not going to waste my time trying to explain you the difference between a text editor and configuration tool.
"This isn't that shocking a suggestion, since it's been done. Those who have programmed ColdFusion Server's CFML language, to take one example, already know that XML-based programming languages tend to have heavy, verbose, and annoying syntax because you have to enclose everything in angle brackets."
Now that's interesting's I guess those guys were trying their generic vi/emacs editors on XML. Jesus! The idea of XML is definitely not that you open vi and start hacking away. Rather you build a tool that does it for you. If you really want to program good old c, just build a program that parses the file and converts it to C. This is also a great way to convert old code. Imagine having the linux source tree available as a giant XML tree. Sure it would be big but you can always gzip it.
"One feature of markup languages like XML and HTML is that anything not enclosed in angle brackets is a string literal. This is good when you want to mark up content, but annoying for general-purpose programming. How much of the average program consists of string literals?"
I wasn't talking about enclosing the original source but rather about replacing it. I.e.
public void aMethod(int param) { a lot of other stuff }
would become something like
a lot of other stuff
Now the fun part would be inserting tags like bla bla smart ass etc.
"The reason there is no javadoc for C++ is cultural: Bjarne Stroustrup did not decide that there should be a way to automatically generate documentation from code, and Arnold Gosling did. The task of parsing special comments, which is what javadoc uses to generate its output, is pretty trivial and would not be hard to do for C++."
The real reason is that C++ syntax is so complex he would have a hard time building the tool. Can you say #define? Now of course there are some Javadoc like tools for C++ but most of them place restrictions on the input. Javadoc does a little more than just parsing comments. It also parses method headers, class definitions. Since C++ uses a macro language rather than language constructs for all sorts of definitions, it is really hard to get decent documentation from the source code.
You are right about sun using Java as a tool to stimulate hardware sales but everything else you say is BS.
First Java is getting big on the server side. Suns vm is particularly good in running server side stuff. They are also pushing it on the embedded machine side (again good for hw sales).
Your qualification of the sunray as a Java thin client is not correct. The new SunRay1 machines do not include a clientside vm. They don't need to because all they do is display the output of apps (possibly Java apps) on the server side.
"but I stopped supporting Sun *long* ago"
That is no excuse for spreading ill informed rumours.
Most benchmarks show both IBM's vm and Sun's hotspot to be way faster than anything MS has. I think there are several other VMs out there that are faster to. MS more or less stopped developing their VM and J++ long time ago.
Though I use texteditor mostly, I can see the benefit. Servlets are typically made up of several more or less standard non visual components (beans) that are connected together. IDEs like visual age contain nice functionality for connecting such components, so not only is it possible, it is probably a nice thing to have too!
Using XML would allow us to separate the configuration files from the configuration applications and those could be separated from the applications that are being configured.
If some effort is made, a generic configuration program (or more than one think expert and novice user targeted software here) could be made that would work with any application that needs to be configurated. I imagine application creators could write an xml file describing all the properties in their application, with documentation included as meta tags. A generic configuration application would read the resource file and present a nice GUI for it. The entered values could be stored in another xml file. The administration possibilities are also way cool. Imagine having permissions on certain properties, default properties and user specific properties managed automatically.
The advantages are clear: - platform independent, possibly even program independent (imagine having a set of default parameters that any app can use) configuration - fine grained control on configuration for administrators - user friendlier - no more obscure textfiles in obscure places on your hardrive, no more.blablabla files in your homedirectory. - advanced tools for configuring any application
Plain ASCII files with fixed syntax are obsolete. The revolutionary thing about XML is not it's syntax, not the way it stores stuff but the fact that you can define extensible syntax structures with it and that you can use generic software to read and write to it.
In fact I have an idea that may be shocking for hardcore UNIX guys (stop reading if you want to sleep tonight): why not replace the syntax of programming languages like C and Java with XML equivalents. The reason I would want to this is that XML is extensible so you could add meta tags to it. Imagine having author tags, documentation tags (in many flavors), etc in your code. The possibilities are endless. There may be some problems with the grammar, for instance I know that c++ syntax is more complex than Java syntax (one of the reason why you don't find so much tools like javadoc for c++).
Sure there are bugs in Java 2. Some are annoying but usually you can work around them. As for printing, I've no experience using that part of the API but surely its not as bad as you say or otherwise I had been hearing about it more often. Java AWT sucked but was small and functional which made it useful. You could do more with it than with HTML forms and that was the idea. Of course for application development it was useless which is why we have swing today. I have yet to see a GUI framework that allows you to write such complex and portable applications like Swing does. Sure it is a bit slow on lowend machines but for most applications the performance is fine. I have no complaints about performance on my pretty average 233 PII with 64 Mb.
I'm sorry to see that you decided to give up Java after a few minor disappointments. Has it occured to you that the bad performance you had might be caused by your programming style rather than Java. Java allows you to do much flexible stuff but that usually involves a performance price. Creating objects all over the place for instance, is usually a bad idea, especially in loops.
Its even more fun to watch c programmers become obsolete like Cobol programmers are these days. In a few years there will be a huge amount of legacy of code written in C/C++. It will no longer be the default choice for most programming tasks with the sole exception of very low level hardware stuff. Of course legacy code needs to be maintained so there will be plenty of jobs for these fellows.
Java has been closing the infamous speed gap during the past few years. Most whining about Java performance in this tread seems to be obsolete. Guys this is slashdot, news for nerds stuff that matters. You should know better. True some pioneer projects like corel's wordperfect for Java failed miserably, but there are commercial and succesfull Java programs all over the place nowadays (or millions of Java programmers are wasting their time each day). Netbeans, which is mentioned in the article is a nice example.
As for myself, I think I can counter the claim about not knowing about other technologies. I programmed a lot of languages ranging from logic languages like prolog to functional languages like Gofer and Lisp. I also did C, Pascal, basic, C++ and smalltalk. I even spent some time with scripting languages like Javascript and perl (puke, if you've seen a decent language before you just have to dislike it's syntax).
An additional advantage of this simplicity is that development time is much lower than with c/c++. Because of this development cost is lower and more features can be built into the system.
C/C++ is nice if you need to deal with hardware directly since it gives a lot of flexibility in this area. The same flexibility backfires if you apply these languages in domains where hardware interaction is not needed (for instance an object oriented ecommerce server application). Generally an expert C/C++ programmer is needed to deliver clean code. Expert C/C++ programmers are scarce and it is a waste of their skill top let them chase stupid errors in pointer arithmetic. You could benefit more from their skill if they applied their knowledge to the actual problem that needs to be solved: how to meet the requirements efficiently. Java allows this. because of its simplicity even newby programmers can deliver nice applications. Expert Java programmers can be very productive in Java.
When I started my CS study, the language we had to learn was C. I had to learn the hard way about pointers and stuff like that. Then Java came along. Within weeks I was producing programs more quickly then I ever could in C. Generally you need only a fraction of the LOC needed to implement the same stuff in C.
"I cannot see any advantages in using Java (beside of attracting programmers that cannot handle pointers and dynamic allocation:)) ) "
Boy you must be blind. Perhaps handling pointers and static allocation is special hobby of you (it bores me since it slows me down). You should realize that each time you spend time on that you are wasting time because these are tasks that can and should be automated (like Java does). The only reason not to automate them has always been performance. And that argument is becoming of less relevance with each new release of Java. The garbage collection algoritms in the current generation of VMs are pretty good and the performance penalty of using dynamic allocation is not so big as it used to be. Further improvements in that area are on the way.
You are right about the tools, not about the language. I've been using Java since the 1.02 version and I always found that IDEs did not support the latest features. Since those often were the features I relied on I often ended up using an editor and a compiler. Over the years I have become convinced that most experienced Java programmers work this way. Perhaps they use an IDE to make editing/compiling/debugging more easy, but they sure don't use an IDE to drag and drop apps together. The latter is done by less experienced programmers. I have not seen the latest generation of IDEs for Java. I heard they are much better at supporting beans and swing which is good for newbies but not for me. I always disliked GUI editors because I always end up changing stuff manually at which point the GUI editor becomes useless.
As for the application you tried to build, a heavy server app, it really depends on which virtual machine you use what the performance of your system will be. Especially the number of threads that is supported varies from machine to machine (and is also OS dependend). I think at this moment you should either use sun's hotspot vm or IBM's vm to get maximum performance.
"Anyway, it's a chicken and egg thing. Better tools mean better apps. The best Java IDE anyone could find was written in Java. That's a very scary thing to think about."
It doesn't surprise me that the best IDEs were Java programs. To test and debug a Java program you need to run a vm anyway. To read out properties and events from a bean, you need to do Java stuff. To run a Java GUI component, you need a Java vm. A Java IDE needs to do all these things at the same time so you might as well implement the whole thing in Java. Doing so also speeds up the development process of the IDE dramatically so that's good. And most developers have fast machines on their desk so performance is not a real big issue.
Java Studio and Java Workshop were not particularly bad also not particularly good. Therefore it ids a good thing that SUN is dropping it. Netbeans on the other hand is a very promissing product. It is written in 100% Java and uses the swing classes for it's GUI. It is available for free evaluation. I think I heard somewhere that they were going to integrate with togetherJ which is a UML oriented Java IDE. The cool thing about this program is that while you type your Java code, the UML diagram is updated. If you draw UML on the other hand your code is updated accordingly.
Needless to say that both programs prove the suitability of Java to make desktop applications, something insiders already knew. Sure you need lots of memory and a fast processor but then it is really usable. I have run both programs and they both made a solid impression on me. There were some gitches in the form of exceptions but they did not crash the application.
Oh yeah, please don't bother posting the usual "Java sucks" and "Java is slow" postings. If you have to at least provide some new arguments, the old ones are obsolete and have been countered many times on this site.
First I'm dutch (holland is also ok), I just live in sweden. Second, most things are better in Sweden than in the US.
Unlike the US the government actually cares about their people.
I can't confirm what you said about sterilization though I did hear some rumours that it was true. The rumours I heard was that they copied this method from America.
America has far more problems then just guns and no sense of community. Christian fundamentalism, Education, poverty, drugs (caused by a combination of the previous three factors), criminality, lack of democracy (I wouldn't call the way presidents get to power in america democratic, large sums of bribing money and smear campaigns seem to be necessary).
Sweden is not a perfect country though. There's some violence from right wing extremists, a very stupid alcohol law which causes alcohol to cost two to three times as much as in Holland. Furthermore it is only available in state shops.
And then there is the holy person number. This number (something like a social security number). Every swede is given a number which looks like this yymmdd-xxxx. Apart from the fact that it is not 2000 prepared (only two digits for the year), it is abused on a large scale. Basically you have to show it nearly everywhere (to open a bank account, get a phone in your room, to get a job, to rent a video). Very annoying if you don't have one like me when I just came here. They gave me one after a while and I have memorized it because I need it a lot. There's a fun link about this here.
Also you pay a lot of taxes in sweden. But you get a very low criminality, insurance, good education, good roads, good public transportation and a friendly society for that.
BTW.if there's one country that's arrogant, it's the USA. The USA is trying to push their culture on all other countries in the world. Since they acquired nukes in the fifties they've been telling other countries in this world how to behave and what to do, sometimes with devastating consequences. It is sort of fun to see americans realize they don't live in a perfect country after a drama like this (something which is pretty obvious from this side of the ocean). Those kids got so sick of the country they lived in they grabbed their guns and started shooting. Then they shot themselves because in the world where they lived you might as well be dead.
What shocked us europeans most is not the shooting but the fact that even right after the shooting a majority of the americans was proud of their gun policy. I don't think america learned their lesson from this particular incident.
From A to Z this affair illustrates how sick America is.
These kids had been caught before for some minor offence. How could they get away with buying enormous amount of weapons?? Simple they had money and you can buy anything with money in America.
But wasn't there anybody who had suspicions?? Of course not, their parents were too much obsessed with their own lives to care about their children, their teachers were to busy teaching to notice anything was going on and since they were outcasts nobody, including the busy teachers, cared about them.
So they were able to prepare themselves for months. Load themselves up with weapons and play quake with real guns at their local school.
What happened afterwards was even more shocking was what happened afterwards. Within minutes after the shooting a drooling herd of journalist went out to cover the story. Since little was known they made up their stories. The only people who got better of these events are media companies. A shitload of money was made on this event.
Within hours there people on TV asking to *puke* pray for the victims. America showed its christian fundamentalist nature and started mass praying, burning candles and more bullshit. Then the guessing started for who to blame. The parents?? The teachers?? Friends of the killers?? People like the killers?? The easy way was chosen. Anybody with a trenchcoat instantly became a potential killer. Anything non christian, non conformist was dangerous.
Fortunately the killers shot them selves otherwise they would have been sued for billions in emotional damage before being lynched... eh sentenced to dead by a legal jury (isn't that the same).
And now this. Some journalist figured out that NONE of the stuff that has been thrown at us by politicians, newspapers, tv and church was actually true. Boy I'm going to enjoy how mainstream media is going to ignore this.
America, you got what you deserved. Your ignorance and studid weapon laws lead to this drama. The fun part is that nothing fundamental has changed since the drama so it's guaranteed to happen again and again. The media sure won't mind because crazy people shooting at crowds generates a lot of revenue. Politicians won't care either since making political correct statements at such events helps winning elections. The religious community does care but also benefits since 110% of america flocks to the churches like sheep each time this happens. Ordinary people do care but have a fun anyway watching all the hype on tv, after all it is good entertainment. Weapon manufacturors won't care because each time this happens 99% of america buys a gun to protect themselves. The other 1% also buys a gun because they think it is cool to shoot people. Either way everybody but the victims wins and since America doesn't like losers that is good.
To a reasonably objective person like me or the journalist who wrote this article it is all so painfully obvious why this happened and why it will continue to happen in the future.
I'm glad to live in Sweden where guns are nowhere to be found and the biggest problem we seem to face is the liquor stores opening on saturday!
This discussion is getting a bit silly but I'll stick with the example.
Basically you are denying mr Ugh the right to protect his invention. So what he will probably do is hide the design of the wheel in a very deep cave so that nobody can see it. He'll still sell his products only there won't be any oportunity for science to improve on his design and built something more advanced like a car since the design is locked away. Mr Duh, in the unlikely case that he too comes up with something so brilliant as the wheel independently of mr Ugh will probably follow the same technique in order to prevent that mr Club'em will outcompete the both of them with his harsh business tactics.
"But I don't believe you have damaged any of my 3 points."
I'm sorry to say your way of tackling my reply is not to convincing either. Here we go again:
"How do you know what it would have been like doing things the way I suggest? As a matter of fact, only in the last 10-20 years have patents (particularly software patents) gotten totally out of control. We didn't try it my way, so there is no basis for an A-B comparison. I see what is, and say, couldn't it be done better. "
I don't know. All i know is that despite the presence of patents development went as fast as it went. So there doesn't seem to be any particular reason to doubt their functioning based on history. Software patents are problematic but just because of the way they are hanled today. I'm all in favor of changing the current practice but abandoning patents just doesn't seem a good solution to me.
"It's not up to me to research what some other guy has done, except in the present warped system of patents. Mr. Ugh, 3 caves down, came up with the concept of the round wheel. So did I, Joe Duh. Ugh, you keep out of my way, and I'll keep out of yours. That's my philosophy. Funny, doing things my way, no one damages anyone else. It's the agora of ideas, man. "
If mr Ugh is making money selling is wheels, he will be pissed of when mr duh start doing the same. A patent would temporarily protect his invention until the novelty wears off.
"Just the obstacle I pointed out already. You could enlist the services of everyone in the world to work for the patent office, and it still couldn't cope. It's out of control. The concept it is promoting can't possibly be implemented rationally and effectively."
Here you go again. Yo do away with it rather easily but I still don't see WHY "The concept it is promoting can't possibly be implemented rationally and effectively"
"P.S. - I'm a libertarian, about as far from a socialist or communist as I think you can get:-)"
I'm glad you are open for reasonable arguments. I wouldn't have replied otherwise.
As many articles on this topic this one tries to simplify stuff by explaining things terms of friends, enemies, dictators and the like.
It really is very simple. SUN produces hardware. Their main motivation for also producing software is to sell more hardware.
Linux runs well on sun hardware. So sun supports it.
Sun is not going to get rich of selling Star Office. The only reason they bought star is because they see it as a tool to boost server sales. So giving it away is a smart thing to do. There's no evil intention.
Star portal is an even better tool to boost server sales. They won't make much money on selling the portal though since the potential number of customers is rather limited. That's why they intend on giving it away (if i understood the press releases correctly).
A lot of nice things are happening with SUNs software lately. You should realize that none of it is charity though.
The relation between SUN and OSS is a symbiotic relation. As long as it is good for both it will continue to last. The OSS community profits from SUN's gifts. SUN profits from the OSS comunity's contributions. Both parties don't seem to have much conflicting interests so I don't see any reason for this relation ending anytime soon.
Sun doesn't want to rule the world like MS does they just want to make shitloads of money (which is a healthy thing to want for a company). Sure they will use dirty tricks like MS does. Which company wouldn't. Companies are not driven by ideology but by making money. This also applies to typical linux companies like read hat and VA. the only thing that's different from conventional companies is their business model.
"But: Consider this: None of the three inventors have seen a dime from the patent (other than any consulting money that they've gotten since). The money all went to PKP and MIT, since they gave up their patent rights when they became an employee."
Good point. But they were only able to do their research because their company funded their research. I think it's not a bad thing that those companies were able to get revenue from their investment.
Several people here seem to claim that it is a bad thing to patent mathematical inventions claiming that even multiplication wouldn't be safe. Those persons are overlooking a few things: - you can't patent something that is already in use. - patents expire. No patent lasts for ever - patents are made public. I.e. you can still improve the invention because you have access to its details. You just can't use these inventions to make money.
In my opinion any original (with stress on this word) invention should be patentable. It is also my opinion that the current system doesn't work as good as it should. Things tend to move a lot faster in the software world than in other research areas. Because of this the period over which a patent is valid should be shorter (otherwise it starts blocking progress as pointed out earlier in this thread). Also a lot of not so original stuff seems to be under patent. This is frustrating.
Constructing a database costs money. It is only natural that the constructor wants to protect his investment. I.e. if someone copies the database, it is hard for the constructing party to make any money on it.
An example of this is an interesting case in Holland. In Holland there is a publishing company which publishes books containing the text of all the laws in our country. Maintaining this collection costs a lot of money even though the text of the laws (naturally) is open and available for public use. The collection is under copyright. A few years ago a smart law student scanned and ocr'ed the lawbooks and published them on the internet (which in itself is useful). He was subsequently sued and he lost the case.
I think this is a perfect example of a collection of open information (nobody could claim ownership of a law) that is copyrighted.
In stallmans worlds the publishing company would have been kindly thanked for all the time and money invested in creating and maintaining this collection and the guy would have been able to publish the stuff he copied. I don't think that would be a good thing.
"1) It hinders society's progress more than spurring it (because people without the funds to patent things and prosecute "infringers" are not only deterred by lack of incentive, but actually prevented by legal force from innovating, since everything, particularly in software, gets patented by somebody)."
I don't see how it hinders society. In fact scientific and technology progress has never been so good as the past 50 years. All this time patents have been around. They have allowed companies to cash in on their inventions.
"2) It invades basic personal rights, by saying, even if you figure out something yourself, you can't use the fruit of your own thoughts, just because, nyah, nyah, I thought of it first, and I had the money to patent it, and I have the money to prosecute "infringement" (so there!)."
Tough luck if you invent something that has already been patented. Do better research next time because nobody benefits from reinvented wheels. In all other cases it is just plain theft of an idea and protection of it seems a very wanted feature just to protect individual freedom.
"3) No patent office could possibly cope effectively with the volume of applications without making the kind of ludicrous, moronic mistakes and errors of judgement the US Patent Office does, particularly with software."
You are right that the current system doesn't work. I pointed that out in my original post. I don't see any obstacles for improvement of this system though (accept for the generally slow speed these things tend to happen in real life)
So this does away with all three of your arguments and several similar ones in other replies to my posting.
"Property is property. Things you can touch. Not God's/Nature's/The Universe's handiwork/tapestry as discovered and interpreted by anyone."
That's a moral position you take here, I and many others don't share it. This is the key issue here. You belief in giving away stuff for free bu that is just not how our society works. In a communist society patents wouldn't make much sense but in our capitalist society where everything (like it or not, personally I don't like it) boils down to money it is an important tool.
Apart from the spelling/typos (please proofread) which indicates that your posting was written in a hurry and without much eye for consistent argumentation, I still don't agree with you.
First of all I'm not socialist (I rather think of myself as being pragmatic) so I don't feel any reason to start giving away stuff just to do society a pleasure. Sure I'll consider doing so if there's a good reason to do so.
Second, I don't see any evidence backing up your claim about multi million dollar of research patents being discovered without any way to protect them. It's not at all obvious to me. If you take medical patents for instance, companies do researh patent the result and make a lot of money on the products they create based on that research. The last thing such a company would want is that competing companies introduce similar products based on their research (which why it was patented in the first place).
"Whats more value to socity, a corp wasting millions to come up with the same thing a few hackers can do on their own for free?"
I have yet to see any real innovative stuff coming from the OSS community. The OSS community delivers high quality software but most of it was not invented by it. Linux is a fine piece of software but it is not innovative.
Companies like SUN, MS, SGI pump billions of dollars into research. The only reason they do so is that they expect to make even more money on the products they can create with the results of this research. They wouldn't make much money if the OSS community would start giving new stuff away as soon as something useful is invented. Imagine MS has been working for years on speech recognition and they finally finds a way to do so reliably. They create a product based on this technology to get a revenue on their investment. The application is reverse engineered by someone and weeks after the new product introduction free products start to appear based on the research. And you are telling me that despite this companies would still be willing to invest loads of money in something they won't make much money on. Wake up dreamer.
Finally I found your doubt in my being a researcher slighty insulting. With not so many words you are accusing me of being a liar. For your information: I'm a Ph. D. student at the university of Karlskrona/Ronneby my homepage (see my personal details on this site) is located there and there are even some articles by my hand on it (not much because I have only started a few months ago).
So in your terminology, I'm a academic researcher. Since my research is funded by the swedish government and commercial companies, they have a vote in saying what happens to the result of my research. Mostly this means that my work is made public in the form of a paper in journal or at a conference. Should I discover something valuable, it is likely that a patent will be created for it first. So the research community still benefits (since the invention is made public) only the use of the invention is limited.
I think I tackled all of your objections now. Of course I'm open to new arguments. I find this an interesting subject since I have the ambition of producing useful research in the future. Therefore I care what happens after I do so. I don't have any moral objections agains patents which you do seem to have.
That sounds reasonable. If it is true they should fix it. Right now if I type in my full name, it returns only one link (not my homepage but still relevant). So it does a good job at filtering out the useless stuff. Altavista usually poors out a long list of porn sites if it fails. But still if there's only one link to return, it might be worthwhile to try a different search algoritm and put the results of the new search in the list too.
"Quite frankly, I think that all patents ought to be done away with."
I don't agree with you on that. Why would a company invest millions of dollars in research if anything they discover can be taken by some open source hippy who gives it away for free. I think the basic notion of protecting new inventions from being stolen is not a bad idea.
Of course the situation has gotten out of control when software is considered. The solution is not to throw away the concept of patents but rather to enhance it.
Such enhancements could be: - better selection at the patent office. Clearly these guys don't have a clue about what they are doing. A suggestion could be to involve experts from the field in the selection process. - restrict patterns to algoritms rather than vague methods for fro instance retrieving information from databases. Algoritms usually are the result of real research. While retrieving information from a database is a goal rather than a technique. To be patentable, a technique should be sufficiently concrete. - a way to terminate a pattern if somebody shows that what has been patented was in fact invented and used elsewhere before it was patented. Right now the only way to get this done is being sued by the patent holder and winning your case. This would be an ideal way to kill the thousends of pointless patents in use right now.
Under the above restrictions I think software patents are not a bad thing. They encourage research and thus stimulate advances in technology. Being a researcher I like the idea of not working for nothing. It would really piss me off if I would invent something useful and somebody else would make loads of money with it, leaving me without a legal foot to stand on. Maybe I would give it away. But it would be my choice to do so. Maybe I would try to make some money from the invention either by selling it or by creating a product based on the idea. In either case the protection of a patent is a good thing.
Somehow I don't think copyright is sufficient to provide this protection. With software this would mean that - you need a piece of code implementing your idea - only the code not the actual idea is protected. I.e. a clean room implementation of the idea is not covered by the copyright. Example: a particular photo of a sunset is covered by copyright but that does not mean that a similar photo infringes on this copyright.
You think this is bad? Nearly one year ago I moved to Sweden. Every swede has a so called personnumber which is formatted like yymmdd-xxxx (your birtday + four digits). Without it you are lost. You can't do anything in sweden without a person number. Swedes are really clueless about it I always have lots of fun when I have to show my dutch passport. First they spent a few minutes looking at the passport. When they start looking really confused I explain them that it is not a swedish passport (duh) and therefore my personnumber cannot be found in it.
Basically you can't open a bankaccount, can't get phone in your house, can't rent a fucking video tape without a personnumber in this country. Luckily I got one since I have a job in this country and have to pay (a lot) taxes.
A dutch friend of me who also lives here teaches database courses. One of the standard things he has to teach his students is not to use the perssonnumber as a primary key. Unfortunately they don't listen and most databases in this country use perssonnumber as a primary key so you have a lot of trouble fitting in to the system if you don't have one.
If you want to read more about the personnumber I have a nice link
here.
nice bold font, enhances readability :)
"Config files are normally sectioned key value pairs."
That's nice if you have only a few sections but if you have a lot of them you might want to organize them hierarchically. -> xml does this, ini files don't. Currently the solution for this is LDAP which is also a nice solution. The only problem is that it is a protocol rather than a fileformat. Technically you could probably combine LDAP with XML. It wouldn't surprise me if that already has been done somewhere since it is so obvious.
Windows ini files were a mess. It is good that MS abandoned them. The windows registry really wasn't a bad idea until they started putting com registration in. Then it became really messy.
The last thing I want is a localized ini file. What if I move to another place? right I loose all my settings. I want to store my settings on a central place in the network. With personalized configuration files for each program you use, that becomes really messy.
Database guys figured out years ago that flat files are not good for datastorage. First they invented hierarchical databases and later on they came up with relational databases. After that came object databases and now we have XML (which can be used to store objects).
So why use XML:
- rich, extensible syntax
- standardized
- easy to handle (it's just ascii)
damn, I should have proofread this piece. All the xml was replaced with whitespace. sigh.
OK, heres the xml with the brackets replaced with *'s you'll get the point:
*method name="aMethod"*
*param type="int" name="param"/*
*block*
a lot of stuff
*/block*
*/method*
"This doesn't make any sense. The XML would have to be stored somewhere. My guess is in /etc/something. As for user-specific settings, where else would they go but some .something/ directory in the user's home?"
true, didn't think of that. You might want to consider storing it somewhere else though because the last thing you'd want is joe average launching turbo vi to mess up his config file.
"Such "generic software" already exists for flat ASCII text files. It is called emacs, vi, perl, sed, awk, grep, diff . . . the list goes on and on"
BS. It's not the same, if you don't see that you have a problem. I'm not going to waste my time trying to explain you the difference between a text editor and configuration tool.
"This isn't that shocking a suggestion, since it's been done. Those who have programmed ColdFusion Server's CFML language, to take one example, already know that XML-based programming languages tend to have heavy, verbose, and annoying syntax because you have to enclose everything in angle brackets."
Now that's interesting's I guess those guys were trying their generic vi/emacs editors on XML. Jesus! The idea of XML is definitely not that you open vi and start hacking away. Rather you build a tool that does it for you. If you really want to program good old c, just build a program that parses the file and converts it to C. This is also a great way to convert old code.
Imagine having the linux source tree available as a giant XML tree. Sure it would be big but you can always gzip it.
"One feature of markup languages like XML and HTML is that anything not enclosed in angle brackets is a string literal. This is good when you want to mark up content, but annoying for general-purpose programming. How much of the average program consists of string literals?"
I wasn't talking about enclosing the original source but rather about replacing it. I.e.
public void aMethod(int param)
{
a lot of other stuff
}
would become something like
a lot of other stuff
Now the fun part would be inserting tags like bla bla
smart ass
etc.
"The reason there is no javadoc for C++ is cultural: Bjarne Stroustrup did not decide that there should be a way to automatically generate documentation from code, and Arnold Gosling did. The task of parsing special comments, which is what javadoc uses to generate its output, is pretty trivial and would not be hard to do for C++."
The real reason is that C++ syntax is so complex he would have a hard time building the tool. Can you say #define? Now of course there are some Javadoc like tools for C++ but most of them place restrictions on the input. Javadoc does a little more than just parsing comments. It also parses method headers, class definitions. Since C++ uses a macro language rather than language constructs for all sorts of definitions, it is really hard to get decent documentation from the source code.
You are right about sun using Java as a tool to stimulate hardware sales but everything else you say is BS.
First Java is getting big on the server side. Suns vm is particularly good in running server side stuff. They are also pushing it on the embedded machine side (again good for hw sales).
Your qualification of the sunray as a Java thin client is not correct. The new SunRay1 machines do not include a clientside vm. They don't need to because all they do is display the output of apps (possibly Java apps) on the server side.
"but I stopped supporting Sun *long* ago"
That is no excuse for spreading ill informed rumours.
Most benchmarks show both IBM's vm and Sun's hotspot to be way faster than anything MS has. I think there are several other VMs out there that are faster to. MS more or less stopped developing their VM and J++ long time ago.
Though I use texteditor mostly, I can see the benefit. Servlets are typically made up of several more or less standard non visual components (beans) that are connected together. IDEs like visual age contain nice functionality for connecting such components, so not only is it possible, it is probably a nice thing to have too!
Yes indeed a great idea.
.blablabla files in your homedirectory.
Using XML would allow us to separate the configuration files from the configuration applications and those could be separated from the applications that are being configured.
If some effort is made, a generic configuration program (or more than one think expert and novice user targeted software here) could be made that would work with any application that needs to be configurated. I imagine application creators could write an xml file describing all the properties in their application, with documentation included as meta tags. A generic configuration application would read the resource file and present a nice GUI for it. The entered values could be stored in another xml file. The administration possibilities are also way cool. Imagine having permissions on certain properties, default properties and user specific properties managed automatically.
The advantages are clear:
- platform independent, possibly even program independent (imagine having a set of default parameters that any app can use) configuration
- fine grained control on configuration for administrators
- user friendlier
- no more obscure textfiles in obscure places on your hardrive, no more
- advanced tools for configuring any application
Plain ASCII files with fixed syntax are obsolete. The revolutionary thing about XML is not it's syntax, not the way it stores stuff but the fact that you can define extensible syntax structures with it and that you can use generic software to read and write to it.
In fact I have an idea that may be shocking for hardcore UNIX guys (stop reading if you want to sleep tonight): why not replace the syntax of programming languages like C and Java with XML equivalents. The reason I would want to this is that XML is extensible so you could add meta tags to it. Imagine having author tags, documentation tags (in many flavors), etc in your code. The possibilities are endless. There may be some problems with the grammar, for instance I know that c++ syntax is more complex than Java syntax (one of the reason why you don't find so much tools like javadoc for c++).
I'd love to see your reactions on these ideas.
worked fine for me.
Sure there are bugs in Java 2. Some are annoying but usually you can work around them. As for printing, I've no experience using that part of the API but surely its not as bad as you say or otherwise I had been hearing about it more often. Java AWT sucked but was small and functional which made it useful. You could do more with it than with HTML forms and that was the idea. Of course for application development it was useless which is why we have swing today. I have yet to see a GUI framework that allows you to write such complex and portable applications like Swing does. Sure it is a bit slow on lowend machines but for most applications the performance is fine. I have no complaints about performance on my pretty average 233 PII with 64 Mb.
I'm sorry to see that you decided to give up Java after a few minor disappointments. Has it occured to you that the bad performance you had might be caused by your programming style rather than Java. Java allows you to do much flexible stuff but that usually involves a performance price. Creating objects all over the place for instance, is usually a bad idea, especially in loops.
Its even more fun to watch c programmers become obsolete like Cobol programmers are these days. In a few years there will be a huge amount of legacy of code written in C/C++. It will no longer be the default choice for most programming tasks with the sole exception of very low level hardware stuff. Of course legacy code needs to be maintained so there will be plenty of jobs for these fellows.
Java has been closing the infamous speed gap during the past few years. Most whining about Java performance in this tread seems to be obsolete. Guys this is slashdot, news for nerds stuff that matters. You should know better. True some pioneer projects like corel's wordperfect for Java failed miserably, but there are commercial and succesfull Java programs all over the place nowadays (or millions of Java programmers are wasting their time each day). Netbeans, which is mentioned in the article is a nice example.
As for myself, I think I can counter the claim about not knowing about other technologies. I programmed a lot of languages ranging from logic languages like prolog to functional languages like Gofer and Lisp. I also did C, Pascal, basic, C++ and smalltalk. I even spent some time with scripting languages like Javascript and perl (puke, if you've seen a decent language before you just have to dislike it's syntax).
An additional advantage of this simplicity is that development time is much lower than with c/c++. Because of this development cost is lower and more features can be built into the system.
:)) ) "
C/C++ is nice if you need to deal with hardware directly since it gives a lot of flexibility in this area. The same flexibility backfires if you apply these languages in domains where hardware interaction is not needed (for instance an object oriented ecommerce server application). Generally an expert C/C++ programmer is needed to deliver clean code. Expert C/C++ programmers are scarce and it is a waste of their skill top let them chase stupid errors in pointer arithmetic. You could benefit more from their skill if they applied their knowledge to the actual problem that needs to be solved: how to meet the requirements efficiently. Java allows this. because of its simplicity even newby programmers can deliver nice applications. Expert Java programmers can be very productive in Java.
When I started my CS study, the language we had to learn was C. I had to learn the hard way about pointers and stuff like that. Then Java came along. Within weeks I was producing programs more quickly then I ever could in C. Generally you need only a fraction of the LOC needed to implement the same stuff in C.
"I cannot see any advantages in using Java (beside of attracting programmers that cannot handle pointers and dynamic allocation
Boy you must be blind. Perhaps handling pointers and static allocation is special hobby of you (it bores me since it slows me down). You should realize that each time you spend time on that you are wasting time because these are tasks that can and should be automated (like Java does). The only reason not to automate them has always been performance. And that argument is becoming of less relevance with each new release of Java. The garbage collection algoritms in the current generation of VMs are pretty good and the performance penalty of using dynamic allocation is not so big as it used to be. Further improvements in that area are on the way.
Hmm,
You are right about the tools, not about the language. I've been using Java since the 1.02 version and I always found that IDEs did not support the latest features. Since those often were the features I relied on I often ended up using an editor and a compiler. Over the years I have become convinced that most experienced Java programmers work this way. Perhaps they use an IDE to make editing/compiling/debugging more easy, but they sure don't use an IDE to drag and drop apps together. The latter is done by less experienced programmers. I have not seen the latest generation of IDEs for Java. I heard they are much better at supporting beans and swing which is good for newbies but not for me. I always disliked GUI editors because I always end up changing stuff manually at which point the GUI editor becomes useless.
As for the application you tried to build, a heavy server app, it really depends on which virtual machine you use what the performance of your system will be. Especially the number of threads that is supported varies from machine to machine (and is also OS dependend). I think at this moment you should either use sun's hotspot vm or IBM's vm to get maximum performance.
"Anyway, it's a chicken and egg thing. Better tools mean better apps. The best Java IDE anyone could find was written in Java. That's a very scary thing to think about."
It doesn't surprise me that the best IDEs were Java programs. To test and debug a Java program you need to run a vm anyway. To read out properties and events from a bean, you need to do Java stuff. To run a Java GUI component, you need a Java vm. A Java IDE needs to do all these things at the same time so you might as well implement the whole thing in Java. Doing so also speeds up the development process of the IDE dramatically so that's good. And most developers have fast machines on their desk so performance is not a real big issue.
Java Studio and Java Workshop were not particularly bad also not particularly good. Therefore it ids a good thing that SUN is dropping it. Netbeans on the other hand is a very promissing product. It is written in 100% Java and uses the swing classes for it's GUI. It is available for free evaluation. I think I heard somewhere that they were going to integrate with togetherJ which is a UML oriented Java IDE. The cool thing about this program is that while you type your Java code, the UML diagram is updated. If you draw UML on the other hand your code is updated accordingly.
Needless to say that both programs prove the suitability of Java to make desktop applications, something insiders already knew. Sure you need lots of memory and a fast processor but then it is really usable. I have run both programs and they both made a solid impression on me. There were some gitches in the form of exceptions but they did not crash the application.
Oh yeah, please don't bother posting the usual "Java sucks" and "Java is slow" postings. If you have to at least provide some new arguments, the old ones are obsolete and have been countered many times on this site.
First I'm dutch (holland is also ok), I just live in sweden.
Second, most things are better in Sweden than in the US.
Unlike the US the government actually cares about their people.
I can't confirm what you said about sterilization though I did hear some rumours that it was true. The rumours I heard was that they copied this method from America.
America has far more problems then just guns and no sense of community. Christian fundamentalism, Education, poverty, drugs (caused by a combination of the previous three factors), criminality, lack of democracy (I wouldn't call the way presidents get to power in america democratic, large sums of bribing money and smear campaigns seem to be necessary).
Sweden is not a perfect country though. There's some violence from right wing extremists, a very stupid alcohol law which causes alcohol to cost two to three times as much as in Holland. Furthermore it is only available in state shops.
And then there is the holy person number. This number (something like a social security number). Every swede is given a number which looks like this yymmdd-xxxx. Apart from the fact that it is not 2000 prepared (only two digits for the year), it is abused on a large scale. Basically you have to show it nearly everywhere (to open a bank account, get a phone in your room, to get a job, to rent a video). Very annoying if you don't have one like me when I just came here. They gave me one after a while and I have memorized it because I need it a lot. There's a fun link about this here.
Also you pay a lot of taxes in sweden. But you get a very low criminality, insurance, good education, good roads, good public transportation and a friendly society for that.
BTW.if there's one country that's arrogant, it's the USA. The USA is trying to push their culture on all other countries in the world. Since they acquired nukes in the fifties they've been telling other countries in this world how to behave and what to do, sometimes with devastating consequences. It is sort of fun to see americans realize they don't live in a perfect country after a drama like this (something which is pretty obvious from this side of the ocean). Those kids got so sick of the country they lived in they grabbed their guns and started shooting. Then they shot themselves because in the world where they lived you might as well be dead.
What shocked us europeans most is not the shooting but the fact that even right after the shooting a majority of the americans was proud of their gun policy. I don't think america learned their lesson from this particular incident.
From A to Z this affair illustrates how sick America is.
... eh sentenced to dead by a legal jury (isn't that the same).
These kids had been caught before for some minor offence. How could they get away with buying enormous amount of weapons?? Simple they had money and you can buy anything with money in America.
But wasn't there anybody who had suspicions?? Of course not, their parents were too much obsessed with their own lives to care about their children, their teachers were to busy teaching to notice anything was going on and since they were outcasts nobody, including the busy teachers, cared about them.
So they were able to prepare themselves for months. Load themselves up with weapons and play quake with real guns at their local school.
What happened afterwards was even more shocking was what happened afterwards. Within minutes after the shooting a drooling herd of journalist went out to cover the story. Since little was known they made up their stories. The only people who got better of these events are media companies. A shitload of money was made on this event.
Within hours there people on TV asking to *puke* pray for the victims. America showed its christian fundamentalist nature and started mass praying, burning candles and more bullshit. Then the guessing started for who to blame. The parents?? The teachers?? Friends of the killers?? People like the killers?? The easy way was chosen. Anybody with a trenchcoat instantly became a potential killer. Anything non christian, non conformist was dangerous.
Fortunately the killers shot them selves otherwise they would have been sued for billions in emotional damage before being lynched
And now this. Some journalist figured out that NONE of the stuff that has been thrown at us by politicians, newspapers, tv and church was actually true. Boy I'm going to enjoy how mainstream media is going to ignore this.
America, you got what you deserved. Your ignorance and studid weapon laws lead to this drama. The fun part is that nothing fundamental has changed since the drama so it's guaranteed to happen again and again. The media sure won't mind because crazy people shooting at crowds generates a lot of revenue. Politicians won't care either since making political correct statements at such events helps winning elections. The religious community does care but also benefits since 110% of america flocks to the churches like sheep each time this happens. Ordinary people do care but have a fun anyway watching all the hype on tv, after all it is good entertainment. Weapon manufacturors won't care because each time this happens 99% of america buys a gun to protect themselves. The other 1% also buys a gun because they think it is cool to shoot people. Either way everybody but the victims wins and since America doesn't like losers that is good.
To a reasonably objective person like me or the journalist who wrote this article it is all so painfully obvious why this happened and why it will continue to happen in the future.
I'm glad to live in Sweden where guns are nowhere to be found and the biggest problem we seem to face is the liquor stores opening on saturday!
This discussion is getting a bit silly but I'll stick with the example.
Basically you are denying mr Ugh the right to protect his invention. So what he will probably do is hide the design of the wheel in a very deep cave so that nobody can see it. He'll still sell his products only there won't be any oportunity for science to improve on his design and built something more advanced like a car since the design is locked away. Mr Duh, in the unlikely case that he too comes up with something so brilliant as the wheel independently of mr Ugh will probably follow the same technique in order to prevent that mr Club'em will outcompete the both of them with his harsh business tactics.
"But I don't believe you have damaged any of my 3 points."
:-)"
I'm sorry to say your way of tackling my reply is not to convincing either. Here we go again:
"How do you know what it would have been like doing things the way I suggest? As a matter of fact, only in the last 10-20 years have patents (particularly software patents) gotten totally out of control. We didn't try it my way, so there is no basis for an A-B comparison. I see what is, and say, couldn't it be done better. "
I don't know. All i know is that despite the presence of patents development went as fast as it went. So there doesn't seem to be any particular reason to doubt their functioning based on history. Software patents are problematic but just because of the way they are hanled today. I'm all in favor of changing the current practice but abandoning patents just doesn't seem a good solution to me.
"It's not up to me to research what some other guy has done, except in the present warped system of patents. Mr. Ugh, 3 caves down, came up with the concept of the round wheel. So did I, Joe Duh. Ugh, you keep out of my way, and I'll keep out of yours. That's my philosophy. Funny, doing things my way, no one damages anyone else. It's the agora of ideas, man. "
If mr Ugh is making money selling is wheels, he will be pissed of when mr duh start doing the same. A patent would temporarily protect his invention until the novelty wears off.
"Just the obstacle I pointed out already. You could enlist the services of everyone in the world to work for the patent office, and it still couldn't cope. It's out of control. The concept it is promoting can't possibly be implemented rationally and effectively."
Here you go again. Yo do away with it rather easily but I still don't see WHY "The concept it is promoting can't possibly be implemented rationally and effectively"
"P.S. - I'm a libertarian, about as far from a socialist or communist as I think you can get
I'm glad you are open for reasonable arguments. I wouldn't have replied otherwise.
As many articles on this topic this one tries to simplify stuff by explaining things terms of friends, enemies, dictators and the like.
It really is very simple. SUN produces hardware. Their main motivation for also producing software is to sell more hardware.
Linux runs well on sun hardware. So sun supports it.
Sun is not going to get rich of selling Star Office. The only reason they bought star is because they see it as a tool to boost server sales. So giving it away is a smart thing to do. There's no evil intention.
Star portal is an even better tool to boost server sales. They won't make much money on selling the portal though since the potential number of customers is rather limited. That's why they intend on giving it away (if i understood the press releases correctly).
A lot of nice things are happening with SUNs software lately. You should realize that none of it is charity though.
The relation between SUN and OSS is a symbiotic relation. As long as it is good for both it will continue to last. The OSS community profits from SUN's gifts. SUN profits from the OSS comunity's contributions. Both parties don't seem to have much conflicting interests so I don't see any reason for this relation ending anytime soon.
Sun doesn't want to rule the world like MS does they just want to make shitloads of money (which is a healthy thing to want for a company). Sure they will use dirty tricks like MS does. Which company wouldn't. Companies are not driven by ideology but by making money. This also applies to typical linux companies like read hat and VA. the only thing that's different from conventional companies is their business model.
"But: Consider this: None of the three inventors have seen a dime from the patent (other than any consulting money that they've gotten since). The money all went to PKP and MIT, since they gave up their patent rights when they became an employee."
Good point. But they were only able to do their research because their company funded their research. I think it's not a bad thing that those companies were able to get revenue from their investment.
Several people here seem to claim that it is a bad thing to patent mathematical inventions claiming that even multiplication wouldn't be safe. Those persons are overlooking a few things:
- you can't patent something that is already in use.
- patents expire. No patent lasts for ever
- patents are made public. I.e. you can still improve the invention because you have access to its details. You just can't use these inventions to make money.
In my opinion any original (with stress on this word) invention should be patentable. It is also my opinion that the current system doesn't work as good as it should. Things tend to move a lot faster in the software world than in other research areas. Because of this the period over which a patent is valid should be shorter (otherwise it starts blocking progress as pointed out earlier in this thread). Also a lot of not so original stuff seems to be under patent. This is frustrating.
Constructing a database costs money. It is only natural that the constructor wants to protect his investment. I.e. if someone copies the database, it is hard for the constructing party to make any money on it.
An example of this is an interesting case in Holland. In Holland there is a publishing company which publishes books containing the text of all the laws in our country. Maintaining this collection costs a lot of money even though the text of the laws (naturally) is open and available for public use. The collection is under copyright. A few years ago a smart law student scanned and ocr'ed the lawbooks and published them on the internet (which in itself is useful). He was subsequently sued and he lost the case.
I think this is a perfect example of a collection of open information (nobody could claim ownership of a law) that is copyrighted.
In stallmans worlds the publishing company would have been kindly thanked for all the time and money invested in creating and maintaining this collection and the guy would have been able to publish the stuff he copied. I don't think that would be a good thing.
"1) It hinders society's progress more than spurring it (because people without the funds to patent things and prosecute "infringers" are not only deterred by lack of incentive, but actually prevented by legal force from innovating, since everything, particularly in software, gets patented by somebody)."
I don't see how it hinders society. In fact scientific and technology progress has never been so good as the past 50 years. All this time patents have been around. They have allowed companies to cash in on their inventions.
"2) It invades basic personal rights, by saying, even if you figure out something yourself, you can't use the fruit of your own thoughts, just because, nyah, nyah, I thought of it first, and I had the money to patent it, and I have the money to prosecute "infringement" (so there!)."
Tough luck if you invent something that has already been patented. Do better research next time because nobody benefits from reinvented wheels. In all other cases it is just plain theft of an idea and protection of it seems a very wanted feature just to protect individual freedom.
"3) No patent office could possibly cope effectively with the volume of applications without making the kind of ludicrous, moronic mistakes and errors of judgement the US Patent Office does, particularly with software."
You are right that the current system doesn't work. I pointed that out in my original post. I don't see any obstacles for improvement of this system though (accept for the generally slow speed these things tend to happen in real life)
So this does away with all three of your arguments and several similar ones in other replies to my posting.
"Property is property. Things you can touch. Not God's/Nature's/The Universe's handiwork/tapestry as discovered and interpreted by anyone."
That's a moral position you take here, I and many others don't share it. This is the key issue here. You belief in giving away stuff for free bu that is just not how our society works. In a communist society patents wouldn't make much sense but in our capitalist society where everything (like it or not, personally I don't like it) boils down to money it is an important tool.
Apart from the spelling/typos (please proofread) which indicates that your posting was written in a hurry and without much eye for consistent argumentation, I still don't agree with you.
First of all I'm not socialist (I rather think of myself as being pragmatic) so I don't feel any reason to start giving away stuff just to do society a pleasure. Sure I'll consider doing so if there's a good reason to do so.
Second, I don't see any evidence backing up your claim about multi million dollar of research patents being discovered without any way to protect them. It's not at all obvious to me. If you take medical patents for instance, companies do researh patent the result and make a lot of money on the products they create based on that research. The last thing such a company would want is that competing companies introduce similar products based on their research (which why it was patented in the first place).
"Whats more value to socity, a corp wasting millions to come up with the same thing a few hackers can do on their own for free?"
I have yet to see any real innovative stuff coming from the OSS community. The OSS community delivers high quality software but most of it was not invented by it. Linux is a fine piece of software but it is not innovative.
Companies like SUN, MS, SGI pump billions of dollars into research. The only reason they do so is that they expect to make even more money on the products they can create with the results of this research. They wouldn't make much money if the OSS community would start giving new stuff away as soon as something useful is invented. Imagine MS has been working for years on speech recognition and they finally finds a way to do so reliably. They create a product based on this technology to get a revenue on their investment. The application is reverse engineered by someone and weeks after the new product introduction free products start to appear based on the research. And you are telling me that despite this companies would still be willing to invest loads of money in something they won't make much money on. Wake up dreamer.
Finally I found your doubt in my being a researcher slighty insulting. With not so many words you are accusing me of being a liar. For your information: I'm a Ph. D. student at the university of Karlskrona/Ronneby my homepage (see my personal details on this site) is located there and there are even some articles by my hand on it (not much because I have only started a few months ago).
So in your terminology, I'm a academic researcher. Since my research is funded by the swedish government and commercial companies, they have a vote in saying what happens to the result of my research. Mostly this means that my work is made public in the form of a paper in journal or at a conference. Should I discover something valuable, it is likely that a patent will be created for it first. So the research community still benefits (since the invention is made public) only the use of the invention is limited.
I think I tackled all of your objections now. Of course I'm open to new arguments. I find this an interesting subject since I have the ambition of producing useful research in the future. Therefore I care what happens after I do so. I don't have any moral objections agains patents which you do seem to have.
That sounds reasonable. If it is true they should fix it. Right now if I type in my full name, it returns only one link (not my homepage but still relevant). So it does a good job at filtering out the useless stuff. Altavista usually poors out a long list of porn sites if it fails. But still if there's only one link to return, it might be worthwhile to try a different search algoritm and put the results of the new search in the list too.
"Quite frankly, I think that all patents ought to be done away with."
I don't agree with you on that. Why would a company invest millions of dollars in research if anything they discover can be taken by some open source hippy who gives it away for free. I think the basic notion of protecting new inventions from being stolen is not a bad idea.
Of course the situation has gotten out of control when software is considered. The solution is not to throw away the concept of patents but rather to enhance it.
Such enhancements could be:
- better selection at the patent office. Clearly these guys don't have a clue about what they are doing. A suggestion could be to involve experts from the field in the selection process.
- restrict patterns to algoritms rather than vague methods for fro instance retrieving information from databases. Algoritms usually are the result of real research. While retrieving information from a database is a goal rather than a technique. To be patentable, a technique should be sufficiently concrete.
- a way to terminate a pattern if somebody shows that what has been patented was in fact invented and used elsewhere before it was patented. Right now the only way to get this done is being sued by the patent holder and winning your case. This would be an ideal way to kill the thousends of pointless patents in use right now.
Under the above restrictions I think software patents are not a bad thing. They encourage research and thus stimulate advances in technology. Being a researcher I like the idea of not working for nothing. It would really piss me off if I would invent something useful and somebody else would make loads of money with it, leaving me without a legal foot to stand on. Maybe I would give it away. But it would be my choice to do so. Maybe I would try to make some money from the invention either by selling it or by creating a product based on the idea. In either case the protection of a patent is a good thing.
Somehow I don't think copyright is sufficient to provide this protection. With software this would mean that
- you need a piece of code implementing your idea
- only the code not the actual idea is protected. I.e. a clean room implementation of the idea is not covered by the copyright. Example: a particular photo of a sunset is covered by copyright but that does not mean that a similar photo infringes on this copyright.