Well, yes -- it's open, but that's all that's superior about it. And actually this kind of superiority does not matter a thing in terms of end user experience.
I've honestly tried to switch to Jabber -- in fact, only because it's open;) -- but it just didn't work for me. Almost all my friends use ICQ, and so there was basically no practical reason to use anything other than some nice ICQ client (I use gnomeicu).
(The other problem was that there was no stable ICQ gateway that had good support for cyrillic encodings. And no, UTF-8 is not an answer, because lots of people still haven't upraded their ICQ clients.)
Oh, great.
Let's say I live in China and want to know how our corporate life compares to that of, say, India. Or let's try Norvay vs. Finland. Or Brazilia vs. Argentine. Or whatever.
Will my story be accepted, too?
(Crossing my fingers:))
Yeah, but we want bleeding edge and security updates:)
I know, that's utopia -- but then, at the very least, I would like to be notified when the issues are fixed in unstable (the fixes are not always backported from sid -- e.g., see the last cvs DSA).
Getting that information from changelogs and BTS threads is tedious.
Storing a unique user ID is not an indispensable part of "nature of cookies"! It's a common approach for maintaining user sessions, but that does NOT mean that any use of cookies must somehow involve assigning unique ids to users.
Specifically, user id is absolutely not needed to store location/language information.
Using unique id to track user's sequential searches is a pretty obvious application (e.g., to know which ads would interest her), that's why some people are getting paranoid about it. It's something like library keeping a record of all the books you've read. Surely, usually, most people wouldn't care, but the privacy issues here definitely exist.
While your point about using modern C++ constructs is correct, it should be noted that both Java and.NET have security manager that can give additional security and limit overall damage, even if developer writes insecure code.
Well, in that case it'll be much less useful for the consumers, since they'll have to think hard about what evils were left unmentioned.
I would say that the labels described in an article are not really negative, they just state the fact. There's nothing wrong with free version of Opera running ads in the corner of its window, of with some personal firewall monitoring my actions. However, I as a consumer, would like to be sure that, say, there're no backdoors and that the software can be uninstalled cleanly.
The whole deal is about helping consumers make informed decisions. Helping companies that have no respect for their clients' privacy to sell a questionable product is not something we should lose our sleep over.
Static type checking allows IDE to
- check syntax on the fly, without requiring you to recompile the application;
- do refactorings (move and rename classes and/or variables updating all references, generate some code automatically, etc);
- help with variables/methods/classes/etc names completion.
Although lack of static typing has many advantages (your points on the matter are very good), it should be noted that a powerful IDE can speed up development enormously. (I'll never switch back to XEmacs from Eclipse to do Java development:))
Python is undoubtedly an excellent language for many applications, including some desktop apps (I developed with python+GTK, and it was really great), but I would still hesitate to use it in really big and complex projects.
Surely if they then try and get a third party to do the decoding the session will be expired.
The idea is that if that pseudo-porn site attracts enough visitors, the captchas will be solved pretty fast.
For example, even if the site get one [interested] visitor per minute (that's not much for a busy site, and session will definitely not time out that fast) it means something like 24*3600=86400 email addresses a day.
In addition to the replies posted above unit testing tools like JUnit (and its analogues for the other languages) are getting pretty popular today.
Most of the modern popular Java libraries have unit tests suites. Of course, unit tests are no panacea per se for best results, one has to use at least some of testing plan (and it will be way better than no plan at all). Tools like Clover help it somewhat.
Generally, it seems like consistent testing practices have all chances to become widely adopted by the open source community.
I don't think it is possible to implement a decent persistence framework in C++ that doesn't rely on code generation. Java's reflection API is a big plus here.
I know it for sure because currently I'm working on a C++-based persistence layer -- after spending several months with OJB and Hibernate:)
If you write a template method, you don't know what kinds of objects you are really working with. It is not always bad, but one of the problems with that is that IDEs will not be able to assist you with code completion and misc. refactorings.
The other problem with templates is that (at least with the C++ implementation) to use them without getting Cobol fingers, one has to write lots of typedefs, and those typedefs do hide what's underneath.
The main advantage of templates is the additional compile-time type checking, which arguably is not really needed, if you write tests for the code.
(C++ also has operator overloading, which lets use templates (conveniently) to implement lamda expressions. But Java doesn't have operator overloading, so this bonus doesn't apply here.)
I guess most (if not all) liability issues are ruled out by EULA.
Well, yes -- it's open, but that's all that's superior about it. And actually this kind of superiority does not matter a thing in terms of end user experience.
I've honestly tried to switch to Jabber -- in fact, only because it's open ;) -- but it just didn't work for me. Almost all my friends use ICQ, and so there was basically no practical reason to use anything other than some nice ICQ client (I use gnomeicu).
(The other problem was that there was no stable ICQ gateway that had good support for cyrillic encodings. And no, UTF-8 is not an answer, because lots of people still haven't upraded their ICQ clients.)
I wonder where I can try that out... It seems that in the past few months I have adblock'ed all flashes on the sites I usually visit :)
All right, this is slashdot, so that's still not a valid reason for rejecting my story ;)
Oh, great. Let's say I live in China and want to know how our corporate life compares to that of, say, India. Or let's try Norvay vs. Finland. Or Brazilia vs. Argentine. Or whatever. Will my story be accepted, too? (Crossing my fingers :))
Yeah, but we want bleeding edge and security updates :)
I know, that's utopia -- but then, at the very least, I would like to be notified when the issues are fixed in unstable (the fixes are not always backported from sid -- e.g., see the last cvs DSA).
Getting that information from changelogs and BTS threads is tedious.
Storing a unique user ID is not an indispensable part of "nature of cookies"! It's a common approach for maintaining user sessions, but that does NOT mean that any use of cookies must somehow involve assigning unique ids to users.
Specifically, user id is absolutely not needed to store location/language information.
Using unique id to track user's sequential searches is a pretty obvious application (e.g., to know which ads would interest her), that's why some people are getting paranoid about it. It's something like library keeping a record of all the books you've read. Surely, usually, most people wouldn't care, but the privacy issues here definitely exist.
It doesn't support internationalisation.
While your point about using modern C++ constructs is correct, it should be noted that both Java and .NET have security manager that can give additional security and limit overall damage, even if developer writes insecure code.
Well, in that case it'll be much less useful for the consumers, since they'll have to think hard about what evils were left unmentioned.
I would say that the labels described in an article are not really negative, they just state the fact. There's nothing wrong with free version of Opera running ads in the corner of its window, of with some personal firewall monitoring my actions. However, I as a consumer, would like to be sure that, say, there're no backdoors and that the software can be uninstalled cleanly.
The whole deal is about helping consumers make informed decisions. Helping companies that have no respect for their clients' privacy to sell a questionable product is not something we should lose our sleep over.
Unfortunately, I have no Smalltalk experience at all :(
I guess I should take a look at it some day...
Static type checking allows IDE to
- check syntax on the fly, without requiring you to recompile the application;
- do refactorings (move and rename classes and/or variables updating all references, generate some code automatically, etc);
- help with variables/methods/classes/etc names completion.
Although lack of static typing has many advantages (your points on the matter are very good), it should be noted that a powerful IDE can speed up development enormously. (I'll never switch back to XEmacs from Eclipse to do Java development :))
Python is undoubtedly an excellent language for many applications, including some desktop apps (I developed with python+GTK, and it was really great), but I would still hesitate to use it in really big and complex projects.
Without RTFA (of course), I tried to find any reference to "sco".
:)
The only match was "a misconfigured system".
Next to the press-release, there's a Related Links section with the link "Microsoft Resources: * Shared Source Web Site"
Surely if they then try and get a third party to do the decoding the session will be expired.
The idea is that if that pseudo-porn site attracts enough visitors, the captchas will be solved pretty fast.
For example, even if the site get one [interested] visitor per minute (that's not much for a busy site, and session will definitely not time out that fast) it means something like 24*3600=86400 email addresses a day.
Although Qt is an excellent toolkit in many aspects, it is not a C++ toolkit.
Qt sources have to be preprocessed before they can be passed through a standard C++ compiler, and the preprocessor has many limitations.
However, it can't really serve as an argument in the GNOME vs KDE debate.
Tell Bush there's oil on Mars.
In addition to the replies posted above unit testing tools like JUnit (and its analogues for the other languages) are getting pretty popular today.
Most of the modern popular Java libraries have unit tests suites. Of course, unit tests are no panacea per se for best results, one has to use at least some of testing plan (and it will be way better than no plan at all). Tools like Clover help it somewhat.
Generally, it seems like consistent testing practices have all chances to become widely adopted by the open source community.
I don't think it is possible to implement a decent persistence framework in C++ that doesn't rely on code generation. Java's reflection API is a big plus here.
I know it for sure because currently I'm working on a C++-based persistence layer -- after spending several months with OJB and Hibernate :)
If you write a template method, you don't know what kinds of objects you are really working with. It is not always bad, but one of the problems with that is that IDEs will not be able to assist you with code completion and misc. refactorings.
The other problem with templates is that (at least with the C++ implementation) to use them without getting Cobol fingers, one has to write lots of typedefs, and those typedefs do hide what's underneath.
The main advantage of templates is the additional compile-time type checking, which arguably is not really needed, if you write tests for the code.
(C++ also has operator overloading, which lets use templates (conveniently) to implement lamda expressions. But Java doesn't have operator overloading, so this bonus doesn't apply here.)
The whole point of the paper was drawing newbie hackers' attention to that mysterious number, 42.