Back in the 1980's, a Soviet spy plane had trouble and was allowed to land in Alaska. After it was repaired, the crew was allowed to leave, completely unmollested.
Can you provide any more info on that? I haven't seen references to that anywhere. Do you have any links? Is there more info you could give me about it (e.g, what air base, etc.)? I tried a search with what info is in your comment and came up empty. I would greatly appreciate it.
As some one who spent well over ten years in Leavenworth, I can tell you it isn't the deterrent most people seem to think. While it can be pretty crazy during the tourist season, the rest of the time it is usually downright pleasant. And I really don't think we need more cops.
But if your intent is to get them as far away from Salem, NH as possible for a while, I suppose your proposal would suffice.
The Pentagon is trying to protect itself from future attacks by deciding to "to carefully consider the origin of all software used in developing or upgrading information technology or national security systems." It sounds like they're mostly worried about those "foreigners" trying to put in backdoors. I'm not sure why they trust Americans more.
Perhaps they (the DoD, U.S. government) have a reason to suspect that companies in other countries could be persuaded/coerced into putting backdoors in their software by foreign powers? I can think of two reasons.
The first being that they believe governments in other countries can exhibit more influence over companies in those countries. This is probably true, at least in some cases. In fact, in the U.S. I think it is far more likely that businesses exhibit influence over the government, rather than vice versa. : )
The other reason I can think of is that they are able to coerce US companies to put in back doors, so they assume it is the cause in other countries.
Just a thought.
n8_f
Copyright of Screenshots
on
EULA In Games
·
· Score: 1
I just want to clarify what Have Blue hit on in a previous response.
A game screenshot is a derivative work. There is no way you can create that screenshot without using the copyrighted game.
With a Word doc, you can create that exact same document in a host of other applications or on paper by hand. Word is not necessary for the creation that document and that is the difference.
n8_f
Re:AT&T Better Fix The Broadband For Customers Fir
on
High-Speed Greed
·
· Score: 2
I would highly recommend trying another route, namely the government.
Here in Washington State we have the Washington Utilities and Transportation Commission, which has proved very helpful in my dealings with USWest. My roommates and I were some of the first to sign up for DSL service in June of '98 and we didn't get service until around November, a typical USWest installation horror story. Through the whole ordeal, my roommate was a savvy enough consumer to keep meticulous records of all of our trials and tribulations with USWest and then get the state utilities commission on USWest's case. We ended up getting a few months free, no installation costs, no long term commitments, and a couple of other things out of the deal. Not full compensation, but it was nice. Nothing we did had a greater impact on our dealings with USWest than calling the State Utilities Commission.
Since most of the telecommunications monopolies have yet to really break up, there are still strict rules imposed by the government regarding acceptable levels of service. I'm sure most states have a similar regulation body and with your well-documented evidence, it shouldn't be too hard to receive some level of redress through them. Plus, I think the utility marks you off in their customer database as someone not to piss off in the future. : )
Just because Darek Mihocka says it takes 192 megs of RAM doesn't mean its true. Everything in this article should be taken with a grain of salt. I'm writing this on OSX Beta running on a machine with 128 MB of RAM and I have no problems. So far I've been able to open and run every application, mostly Classic apps, with no complaint. And this is just the Beta, which you can reasonably expect to be a bit bloated. The actual release should only require 64 MB (although 128 will be recommended). That could change, but that is the current target and I think they can hit it.
Also, that minimum requirement, as some one else mentioned, is for a great user experience. Windows 2000 with the required 64MB is dog slow.
I think there is a big difference between taking design cues from a competitor and trademark infringement. If Ford introduced a truck that looked so close to a DaimlerChrysler pickup that a consumer might confuse it with a Dodge Ram (even using the same colors, etc.), that is definitely wrong, both from a legal and moral standpoint. It was this kind of infringement that Apple was trying to stop with its lawsuits against eMachines, et al. Apple has been over zealously litigious of late, but in regard to some of the copyright infringements I definitely side with them. Nathan
Yeah, but how many of those have been successful? That was Jonnythan's point. The examples you named have been failures (a little too early for the N64 upgrade, but given that the system is at the end of its product cycle, I don't see a ton of people running out to get it). How about the Sega 32x or SegaCD? Both were add-ons for the Genesis and both flopped. There are some other causes for these failures, but the basic rule is: don't split your market share. Performance upgrades split your market and you have to deal with that split by adding complexity and ineffiency to your software (not to mention different user experiences) or by excluding part of your market share.
I'll be very impressed with the first manufacturer that successfully pulls that off.
Those are all different from registered trademarks. What you refer to in your examples are copyrighted materials, not trademarked as you seem to think. With copyright, the examples you give are covered under the "fair use" clause in Section 107, Title 17, USC. With trademake, I don't think there even is a fair use clause, and if there is it is very limited.
Also, a clarification should be made for materials provided for you. If a company were to give you screenshots of their newest game to use in your review, the company could make you agree to a license that would impose further restrictions (such as editorial review). Obviously, if you accepted that license, then you would be bound to it. Of course, you would be perfectly able to not use those materials and get your own screenshots. Anyway, the bottomline is that Bolero is right. This is (once again) misinterpretation by the/. editors (like the "NSI Owns Your Domain Name!" mistake). Doesn't it seem like these mistakes are happening more frequently?
Uhh, correct me if I'm wrong, but if you have N64 games, don't you already have an N64? If not, then you must not need one, so I don't see why backwards compatibility is such a big deal. The only benefit is a little space saving (and a little bit better graphics on some games - yippee). But the risks of being saddled with poor design decisions (every system has some) and old technologies makes backwards compatibility a very bad goal for a console. Okay, if you can get it in a system incidentally, why not, but I don't think it is a great feature. And it does help ease the initial size of a system's game library, but no one is going to buy a PlayStation 2 to play PlayStation games.
Besides, the Dreamcast can play PlayStation games. Do you really think the Dolphin won't? Now playing Dreamcast games, that would be cool. A system that could play the games of another contemporary system would rock!
Just like awesome 3-D graphics has fallen within the reach of the masses due to commoditization (anybody remember the $15K+ Elsa & E&H cards that rendered 50K triangles/sec? It wasn't that long back). You basically want a DES (or, more likely, AES) encryption chip on each motherboard.
Remember, awesome 3-D graphics for the masses started with software rendering (Wolfenstein, Doom). It was only after 3D rendering became a common function for general computer users that it moved to hardware. Likewise, encryption (and the APIs for it) will have to start as software-only and then, when everyone is using it in a standard way, will there be an advantage to moving the functionality to hardware. As it is, there is no way to avoid quick obsolescence. The encryption needs of computer users must evolve in software, where that evolution is extremely cheap and has a low design cost, rather than hardware that has to be replaced constantly as the use of encryption settles in.
Widespread 3D graphics is a very good analogy for widespread encryption. Initially with 3D graphics, it was a very specialized use with only a couple of cutting edge programs doing it, each one implementing its own 3D renderer. As the use of 3D graphics became more commonplace and the repition of work became greater, 3D display was abstracted with a common set of APIs such as OpenGL (with cards and implementations supporting a much smaller subset of OpenGL directed at ust displaying 3D graphics), Glide, and Direct3D. This allowed hardware manufacturers to move 3D rendering to hardware, as they now had a a standard they could support (in the case of 3dfx and Glide, they wrote an API and convinced developers to write to it, rather than the other way around, but it is the same concept). Manufacturers could have introduced hardware before, but they would have practically had to write a new driver for each application they wanted to support.
And this is the path that encryption will have to take. Right now, I think that we are at the point of programs each doing their own encryption. This is not entirely accurate, because it is more like classes of applications doing their own encryption (e.g., SSL for web apps), but I think it fits. There are no universal APIs for encryption and nothing has really been adopted at an OS level or across multiple types of applications. Part of the problem is that a real API is going to have to be agnostic to the encryption algorithm used, just as 3D APIs are mostly agnostic to how the 3D shapes are actually drawn, so that the encryption algorithm can be seamlessly swapped with stronger ones as they are available.
I think that with the rise in distributed computing and networking, this will be the next big piece of functionality moved to hardware. But developing the APIs and infrastructure to support that move is going to take some time.
There seems to be some very irrational fear and speculation regarding the possible revocation of domain names by Internet Domain Name Registrars, specifically Network Solutions Inc., due to the court ruling in Network Solutions, Inc. v. Record No. 991168 Opinion by Justice Cynthia D. Kinser and changes to NSI's service agreement. These fears are completely unfounded! Not only does the case in question not rule that NSI "now 'owns' [a] domain name and can take it back at will", but it helps refute that position. Also, no where in NSI's revised service agreement does it refer to NSI owning a domain name. I have illustrated my arguments below.
The Ruling First, I'll deal with the ruling itself. Although the majority opinion by Justice M. Langhorne Keith did rule for NSI in overturning the opinion of Justice Cynthia D. Kinser, the main issue was not whether second level domains are intellectual property or not but rather if the service being provided by NSI was garnishable. In fact, Justice Keith states this explicitly when he writes "we do not believe that it is essential to the outcome of this case to decide whether the circuit court correctly characterized a domain name as a 'form of intellectual property.'"
The part that everyone is excited about and has become the focus of this case is where he writes that the rights of a second level domain (SLD) holder(whatever those rights maybe) "do not exist separate and apart from NSI's services that make the domain names operational Internet addresses." This is a very minor point in the majority's argument and is even contradicted in the opinion: both "NSI knowledged during oral argument before this Court that the right to use a domain name is a form of intangible personal property" and "as Umbro points out, domain names are being bought and sold in today's marketplace" both point to domain names having property rights. In fact, in a 1996 case against Clue Computing, NSI took the position that a domain name was property and it maintained that view in this case, as noted in the opinion.
The point that this case solved was whether the service that NSI was providing to the court debtor, domain registration, could be garnished. The Court concludes that "a domain name registration is the product of a contract for services between the registrar and registrant" and "a contract for services is not 'a liability'... and hence is not subject to garnishment." In fact, the court once again supports that domains are property, saying in support of their ruling for NSI that "we also are concerned that a decision to uphold the garnishment at issue would be opening the door to garnishment of corporate names by serving a garnishment summons on the State Corporation Commission since the Commission registers corporate names and, in doing so, does not allow the use of indistinguishable corporate names", comparing domain names to corporate names (which is a very accurate analogy, since they often are the same; right, Andover.net?). This is not a precedent setting decision on the issue of domain name rights and the opinions contained within it will be taken by any judge strictly as that: opinions (and inconsistent ones at that).
NSI's Service Agreement Secondly, there is NSI's service agreement. NSI (and all Registrars) are first and foremost governed by their agreement with ICANN. From ICANN's Registrar Accreditation Agreement: "H. Rights in Data. Registrar disclaims all rights to exclusive ownership or use of the data elements listed in Sections II.E.1.a through c for all SLD registrations submitted by Registrar to, or sponsored by Registrar in, the registry database for the.com,.net, and.org TLDs." Further evidence that the registrar is in control (also taken from the Registrar Accreditation Agreement): "An SLD registration is "sponsored" by the registrar that placed the record associated with that registration into the registry. Sponsorship of a registration may be changed at the express direction of the SLD holder or, in the event a registrar loses accreditation, in accordance with then-current ICANN-adopted policies."
Now, to look at NSI's own service agreement. Check out section 9 entitled "DOMAIN NAME DISPUTE POLICY MODIFICATIONS." In reference to changes in its Domain Name Dispute Police, it states that "you agree that, by maintaining the reservation or registration of your domain name after modifications to the dispute policy become effective, you have agreed to these modifications." Under section 15, "BREACH", it says that in the event of a breach of contract "we may delete the registration or reservation of your domain name and/or terminate the other Network Solutions' service(s) you are using without further notice." In fact, in sections 16, 17, 19, 20, and C it refers to the domain name as belonging to "you". It only refers to the domain name in possesion-inspecific phrases (e.g., "the domain name") or phrases giving "you" possession (such as "your domain name"). "Domain name registration service", as pointed out in the court case, is very different from "domain name." Section 6, allowing NSI to change the terms of the contract at any time without notice, is definitely scary, but any real changes would be subject to a court challenge. I am not sure a person can give away the right to subsequent changes in the contract without limit, and the courts have generally held this to be true (IIRC).
Summary To summarize, the court case is irrelevant. If anything, it strengthens the position of a domain name holder, because it does (if conflictingly) acknowledge that a domain is property, but it rules that NSI only provides a service (and, by extension, does not own that property). And NSI, through its agreement with ICANN and its own service contract, does not and can not take ownership of anyone's domain names. Could they try to? Anyone can try, but they would be laughed out of court. I'm sorry, but the gross negligence and sensationalism in the reporting of this story (both the author of the article, Brian Livingston, and the poster, CmdrTaco) and subsequent reader backlash against NSI is very disappointing to me. Please read this and re-evaluate your opinions accordingly.
Thanks, Nathan Florea
P.S. I apologize if this issue has already been addressed in the time between when I started this and when I finish it. Also, I can be contacted at a-nathfl@please-no-flames,-I-just-work-here.micros oft.com.
The problem is that TCP ACKs are acknowledging data octets, not TCP packets. When I referred to packets, I meant octets of data rather than packets containing that data. I apologize for the confusion.
The way a TCP ACK works is that it says "I have received all of the data up to this octet." TCP packet size is not determined by window size or acknowledged data. It is determined by the MTU and urgency of the data needed. If stack can wait until it has enough data to create a packet of the Maximum Transfer Unit, it will (there is a timeout). If the receiver has indicated that it needs the data ASAP, the TCP stack will push out the data octets as fast as it can (with a very short wait), regardless of how small the packet is (IIRC, I am a bit rusty on this part). So altering the packet size will have no effect.
Also, the out of order octets would not need to introduce much overhead. Simply a sequence number far enough a head to not be reached for a while ("while" is intentionally vague; I need to do some more research on how far ahead the stack could and should go). If that is acked with out the TCP stack having sent the previous data, the stack knows that the receiving stack is cheating and can close the connection.
The key idea here is to send information that can not be acknowledged (because octets before it have not been sent) and see if it *is* acknowledged. Perhaps a better implementation would be as the send window grows, the TCP stack skips two octets but otherwise continues sending normally. A valid stack would not be able to acknowledge any of the subsequent octets, but an optimistic ACKing stack would. And because the receiving stack caches the out of order octets, once the sending stack determines it is dealing with a legitimate receiver and sends the two missing octets, all of that data is still valid and there is very little inefficiency introduced. The keys here that I still need to work out are:
When does the sending stack use this trick (when the send window grows, etc.)?
For how long does it do it (i.e., at what point will a receiving stack start dropping OOO packets and how much time will it take to trick an optimistic ACKer)?
How much data does it skip (e.g., it would be more efficient if the sending stack skipped a whole packet's worth of data, that way it would not send a packet with only two octets of data when it decided it was dealing with a legitimate receiver)?
And lastly, when does it *not* do this (i.e., are there any cases where this introduced inefficiency is intolerable)?
As you can see, the idea has already evolved quite a bit in this post, so there is still some serious work that needs to be done. But I think that this is a very good solution to the problem. Can anybody else think of potential stumbling blocks or problems with this solution (or better solutions)?
In regard to an earlier response, discarding data the sending TCP stack received ACKs for would not cause abortive connections. Because a legitimate receiving TCP stack would only send ACKs for data it had received (therefore that the sending stack had sent), it would have no affect and the order in which the ACKs are received is irrelevant. In fact, that is how TCP stacks work. The low end of the TCP window (of data to send) represents the earliest packet sent that the stack has not received an ACK for. Once it receives an ACK, it moves the window up and that data is discarded. Otherwise, the stack resends the data.
I think the point you are missing is that with optimistic ACKing, ACKs are (hopefully) not sent for data that has not been sent. ACKs are sent for data that has not yet reached the receiving TCP stack (but been sent). This causes the sending TCP stack to think that data is being received faster than it is, which causes it to grow the high end of its data window, causing it to send more packets. The trick of optimistic ACKing is to send back ACKs fast enough to match the growth of the sending stack's window, but to not outpace that growth, so that all of the ACKs are for data that has been sent (just not yet received). This results in exponential growth of the TCP window. Of course, the problem is that while all of the data is sent, it will not necessarily all reach the receiving stack due to packet loss. The solution, as the article mentions, is for the receiving stack to reconnect and use the HTTP Range header to get only those packets that did not make it through the first time.
Your other suggestion, restricting the maximum window size, is not feasible. What would you set as the maximum size? At work, I am connected to the Internet by a super-highspeed, backbone connection (as are all of my friends at school). You have no way to tell what type of connection a person would have, so your maximum window would have to accomodate the fastest, the top 1% say, making it useless for the 99% with connections below that. Besides, that is not a limitation you want in your TCP stack. What happens when we get faster connections? Do you really want to have to patch your TCP stack everytime you upgrade your network? Limitations on bandwidth are best left to your router or firewall. Even then though, you are only going to be able to stop the extreme cases.
I think Stefan is thinking along the right lines for a solution: including a random piece of information in a packet that has to be echoed in the ACK. Although that would require changes to the TCP protocol, I think there may be a similar solution that would not.
An alternate solution would be to perhaps send a packet out of order, like a window a head of the most recently sent packet. The optimistic ACKers would then send back ACKs for the intervening data (because they would assume that the other data was on its way), which mostly would not have been sent yet, or they would send ACKs continuing on from the advance piece of data (to try to meet the expected growth of the window), once again sending ACKs for data that had not yet been sent. The resulting data loss would eliminate any gains from the optimistic ACKing. This solution is not quite as drastic as Stephan's, as it would not require changes to the TCP protocol or the client TCP stack (I think; I will have to do some research to verify that). Since optimistic ACKing relies on being able to predict the next packets sent, I think that this solution, adding some unpredictability to the packets sent using out of order packet sending, would effectively neutralize optimistic ACKing.
How are M$ going to control and take a cut of all games that run on Windows?
Easily. The OS won't be on the box, it'll be on the game disc. That way they can continually improve the OS/API (no doubt an M$ selling point), and games always use the exact same version they were developed for. Of course, the real reason is that it guarantees M$ a piece of every game. What about an alternative OS to interact with the hardware? I don't know how Sony keeps non-licensed games off the PlayStation (or Nintendo, Sega, etc.), but I'm guessing M$ will use the same tactic.
Hey, everybody! Stop thinking about the cost to manufacture this thing (e.g., they couldn't use Athlon/Intel/etc., it would have to be StrongARM/Crusoe/etc.). That is not an issue. MS can use whatever hardware they want and set whatever price point they want. There is very little connection between the two. The revenue stream with consoles isn't the hardware (and never has been) and M$ is starting this race in last place. If they have to give the hardware away, they will. It is an investment and they've got a LOT of money to invest. Also, games aren't the only potential revenue stream and you can bet they are going to tap the others. Games are the tip of the iceberg. If this thing is in development, it is meant as a WebTV-like device (I'd be suprised if they didn't release it under that brand), a console aimed at the 50% of the population that don't own a computer and maybe never will. This would be the honey for the flies M$ hasn't caught. : )
If you haven't registered your copyright, you can still claim actual damages, which basically amount to whatever profits the infringing entity made off of your copyright. What you don't get are the punitive damages, which can be up to $100,000 (plus legal fees, etc).
The second point I'd like to clarify, which superlame touched on briefly, is that there is no such thing as copyleft as opposed to copyright. Copyleft is just a clever coinage that the FSF/GNU came up with. It is a form of copyright licensing, but it isn't an alternative to it. It is amazing how many/.'ers and GPL'ers don't realize this. If there are any contradictions between copyleft and copyright, copyright is going to win. There are several elements of the GPL which haven't been legally tested and if the courts don't interprete copyright law the exact same as the FSF/GNU, it is very possible the GPL could be ruled invalid. Being aware and understanding these issues is very important to the survival of copyleft software. Just because RMS says something works this way doesn't mean it does. Please, don't assume. If this is an issue that affects you (e.g. you are authoring code), please read both the GPL and copyright law.
I think we're all glad you decided against "skipping this article all together" and posted. Thank you.
Couple of suggestions. Perhaps to make meta-moderating easier, moderators should give a short (any moderator who appears to be a troll. I think with that extra information, it would be much easier for a meta-moderator to make a value judgement regarding other's moderation.
WRT moderation around here being a fickle thing, I think that the more people you have moderating, the better. I think that the average/.'er is very reasonable, but many of the comments at a score of 1 or lower aren't. In order to find the gems by ACs and members who haven't yet been moderated up, I think we need more of the community searching.
Also, maybe posting guide lines or code of conduct would help? I see a lot of personal attacks, which is the weakest argument anyone can make, but not enough of them are moderated down to 0 or -1 where they should be. Maybe we are taking for granted common courtesy? Putting it into HTML and then augmenting the moderator mechanism to better enforce it couldn't hurt.
I agree that a high karma should be a prized status. Giving priviledges and recognition (via your stats idea) to those who take the time to post intelligent and well-written posts seems like a great idea. Any changes to moderating should favor those with higher karma, although not too much. Especially with meta-moderation to keep moderation in check, karma is a pretty good system.
Anyway, thanks again for the original post. Like Columbine, it is important not to react to the event, but to act on the underlying causes.
Whoops, I think I see your problem. You're going to kick yourself. : ) "I had always heard...that BSD[L] allows BSD[L]'d code to become non-free." That wouldn't make sense. If BSDL allowed code to become "non-free", then a company could just take all of the FreeBSD source, make it "non-free" (I assume by copyrighting it), and charge everybody using it $100 (or whatever they wanted). The BSDL allows BDSL'd code to be used with non-free (hereafter called proprietary) software, NOT "become non-free."
"Hardly grounds for a holy war!!" I agree. However, the BSDL and GPL represent very different philosophies. The GPL protects software freedom by taking away programmer freedom (I can explain this later if you'd like; I'm running a little late), while the BSDL is less restrictive.
If you still have questions or seek further explanations, just let me know.
Karma The way I understand your implementation of karma, every post I make influences my karma and goes into the number to be averaged. This means that every post I make has to be awesome. A large number of responses to other people's posts w/ questions or clarifications aren't likely to be moderated up, so when I do post my "awesome" comment, the effect of the moderation applied to it is watered down by all of the unremarkable comments I made. I think that only moderated comments should count towards karma.
Default Comment Scores I think that the opposite approach should be taken. The default post wouldn't have the bonus, with a check box to enable it. I see a lot of lame comments at a 2 or 3.
Waiting Period You mentioned in the moderation FAQ that you were thinking of implementing a waiting period inbetween posts. I think this is an excellent idea. Imposing a half-hour or hour waiting period between posts would be fine. It would force/.'ers to think about their posts (something too few posters seem to do). (Maybe also remove submit and go instead to a preview screen? Posters could then just hit submit, so in wouldn't be too intrusive, but a lot more people would hopefully proofread, since it would be there. But I digress....) Of course, maybe have some mechanism for posting small questions or clarifications. How about combined with my suggestions above? The default for posts is that they don't get your bonus and that they aren't considered for moderation? Small questions, requests for information, and clarifications are released under this, with perhaps a five minute waiting period. Larger comments that you do want moderated (interpreted as meaning you have something new and valuable to say) are posted with the bonus/moderate box checked, with a subsequently longer waiting period between these types of posts. Most posters seem to read all of the comments responding to their post, so they'll see the comments anyway (perhaps instead of a 0 score they are just given an "unmoderated" status, kind of like NULL). Impose a size restriction on these so that anyone giving a large opinion can't try to dodge being moderate or has to post as an AC (which has no or fewer restrictions).
Moderation This is where I want the biggest change. The current moderation system penalizes well thought out comments. The sooner you post, the more likely your chance of being moderated up. Later posts have little chance of being moderated, because most moderators have moved on to newer articles. For example, I posted to the Berkeley removes advertising clause article. I researched copyright law and posted a article related to the many posts on GPLing BSDL code. However, because I posted on Saturday, two days later, there is no chance of my comment being moderated. And what about the commments that are a few layers into a thread? What about the comments tacked onto the end of a thread? The point is, there are a lot of comments slipping through the moderation cracks. I think that you need a radical change to the moderation system. Here's my proposal. I realize that it is probably extremely difficult to integrate any of this into your system, but maybe some of the ideas can be adapted to fit in. Instead of giving moderators points, give them articles. You use the current system for selecting moderators, except you do a check everytime someone accesses an article. So when Joe Schmoe tryies accessing the "Microsoft's new evil plan..." article, his chances of being a moderator are checked. If he isn't selected, he goes onto view the page normally. If he is, however, he is taken to the moderator version of the page and given, say, 5 comments to moderate. The page looks like the standard version. The article at the top, comments below, but inbetween is the listing of his articles to moderate, listed similiar to the way your articles are listed in your user page. As I mentioned, the rest of the comments are below it, but the catch is nothing (including the 5 to moderate) has a score displayed. Now, Joe's job is to read those 5 (or 3 or whatever) comments (and any of the other comments) and give those five a score. Once he does that and submits it (or he clicks the "Decline" button), he is taken to the standard version of the page and he is free to post comments. Couple more things.
Comments with the least number of moderations are given preference. This way, one comment doesn't get moderated 50 times, and hopefully all comments get moderated at least once. If the threshold for moderator is set high enough, every comment should get moderated multiple times, with the final score being the average of those moderations, possibly weighted by the moderator's karma.
Moderators only overlap on 1 (if they only moderate 3 articles) or 2 (if they moderate 5 articles) articles, maximum. This is done in the scripting, so you don't have two moderators moderating all of the same articles.
Because this doesn't really work with a small number of articles, perhaps you have a threshold of like 20 articles, after which moderation is turned on. In fact, you could not display any comments until you get 20 (or 10 or whatever), which would cut down on those annoying posters who try to get first post (like it's a race or something). Or, perhaps you have something like a moderation acceleration curve, where the chance to moderate is modified by the number of posts.
People can moderate multiple times (perhaps only do the moderation check once per hour or day). So long as comments from any thread they have responded to are banned, there is no reason they shouldn't be able to. It isn't very likely that they would remember what score articles have gotten if they had been there before, and they would most likely get newer articles that they hadn't seen yet. This way, the more traffic a discussion gets, the more moderation.
People set their maximum number of comments to moderate. Everybody starts at 3, and the better moderators increase in the number of articles they moderate, up to their maximum. Also, perhaps people with a default bonus can only be moderated by people with an equal or greater default bonus. This prevents trolls from getting a large number of articles to mark down, or getting a chance to mark down people who may be over their head. : )
Expand the moderation system to include multiple categories. Many/. posts have horrible grammar and bad spelling. I've seen many posts over this issue, back and forth, and although I do feel for those people who don't speak English natively, a lot of it seems to just be linguistic laziness. I'm sorry, but how you communicate your point is almost as important as what your point is. You may be the most brilliant person since Stephen Hawking, but if you can't communicate your ideas in a way that other people can understand, it doesn't do anybody any good, does it? I'm not a grammar Nazi, I don't mind capitalization or punctation mistakes (afterall, e.e. cummings made it into an art form), but when I have difficulty understanding a poster's point or even determining what their point is, it's a problem. So writing should definitely be a category. Relevancy should be another. Perhaps something like idea or originality (redundancy). And then an overall or "must read" category. There are some posts that are hard to read and might be irrelevant to the current topic, but that should be read by everybody. Then users could set thresholds on the individual categories.
These are just some ideas. I have tons more, if you're interested. I realize implementing any of these may be impractical, but maybe they'll trigger something that is. I think that encouraging more moderation is only a good thing, and by increasing the moderation threshold so that every comment gets moderated multiple times, you'll increase the usefulness of the moderation system.
How do you think M$ makes money on Sega's Dreamcast? It has the same problems you just enumerated with M$'s new platform.
"Intel will not sell the x386 chips at a loss so MS can dominate a market, and neither will any 3-D board manufacturer. And since MS cannot control the hardware, they cannot control the software that runs on it, nor make any money licencing games (They don't on a PC.)"
I think it is obvious with this move that they didn't have altruistic motives in helping Sega. : ) No, the way M$ makes money is by having CE reside on the game CD (like on the Dreamcast). That way, they charge game developers for every CD shipped. And it makes sense (or at least M$ is able to rationalize it to developers) because you get PC-like upgrades to APIs and drivers (Dreamcast CE uses a subset of DirectX) w/o the PC-like incompatibilities. The OS is loaded from the game CD, so whichever version of the OS you developed for is what is always running with your game. Of course, the HUGE downside is that the developer has to pay for an OS for every piece of software they ship (although I'm sure M$ downplays that part:-/ ). Pricing probably will be comparable to other game companies licensing fees (~$15, I think), so developers won't complain. Also, you can bet that if this has the M$ name on it, it will have some strong low-level checks so nobody is booting Linux (or any "unauthorized" OS) off of a CD. : )
Games will not be any cheaper. People are used to paying $40-$60 for a game, so even if there was a cost savings, the publisher would probably pocket it. Games might drop a little in price, but probably not significantly ($30).
The thing that the M$ platform will have going for it will be portability. You might not even have to recompile to get it to run on Windows. You definitely won't have to change any code if you write it for the settop. Currently you have game companies having to write multiple, wildly different ports of games (N64, Playstation, PC). For PC game programmers who think MFC are part of the C++ standard libraries, it is a major pain in the butt. Now, they won't have to worry about code portability. They can write the only way they know how and let M$ handle all of the portability concerns. They have a game that runs on a console and computer and they didn't even have to leave their M$-only comfort zone. Very scary, indeed!
The initial problem will be getting the system going. It won't be cutting edge for long and M$ has no settop brand recognition; they can't wait to build it. Unless they are terminally brain dead, they'll release it under the WebTV brand name and bundle in the corresponding functionality. Why not? They'll have the Internet connection (Dreamcast is making that standard on consoles; about time) and the WinCE version of WebTV is already done. Also, a model with cable box functionality, so that all of the cable companies M$ now has significant stakes in can use these as terminals for the interactive services supposedly coming down the pike (not to mention HDTV, as that becomes available). These added features will help to make the purchase easier to justify to consumers (as well as differentiate it from the competition) until the software library catches up (and maybe make up for the fact that the graphics for games aren't any better than the PC version?).
In addition, expect standard monitor out (maybe even digital, though I doubt it; depends on where the standards are) as well as video out. Should have DVD, since that is what the other consoles will have, so expect it to play movies. And, as always, expect M$ to price under competitors by taking a huge loss on the hardware. Afterall, this has a much more constant revenue stream than PCs.
They'll probably release new versions every one or two years, and if they're smart they'll build that in. The best way would be to use a kind of preprocessor system and have a "game compiler" build different versions of the game. They could adjust not only the code, but the resolution, polygon count, etc. of source media (DVD-ROMs have the space to hold multiple copies). But I'm rambling...
This is the worst case, as I see it. There is a lot of talk in the industry about "computing appliances". Basically, that the general purpose computer has hit saturation (~50% of American households) and to reach the other half is going to require cheap, easy to use devices that fill a more specific void (like a settop box). Can you imagine how scary it would be if M$ controlled the OTHER half of the country?
I don't think this will happen (didn't you notice the sentences opening w/ stuff like "If they aren't terminally brain dead..." and "if they're smart..."? : ), because this is new territory and M$ isn't very good at creating new markets (afterall, if no one else has done it, who can M$ "innovate" from?). Plus, it is too difficult to keep an evil plan together with all of "those meddling kids" (had to quote Scooby Doo;), like Nintendo, Sony and (a really pissed off) Sega. Still, I think that they'll try, so support Sony! Buy a Playstation 2!:-)
This is a little off topic, but there were so many threads discussing this, that rather then reply to each of them, I thought I'd just start my own. : ) BTW, most of this is applicable to all licenses, including the GPL.
Besides being morally repugnant (the author released the code under that license for a reason), it is illegal for anyone other than the author(s) of a piece of code or binary to alter a license in ANY WAY (including Microsoft, SUN, BSDI, etc.). The main problem with the arguments of the proponents of GPLing BSDL source is that they assume a license completely ignores any previous rights given by copyright law. They assume that if it isn't explicitly stated in the license, a right is forfeit. It isn't. In fact, the opposite is true. Part (d) of section 201, Title 17 of the United States Code deals with the transfer of copyright rights and reads: "(d) TRANSFER OF OWNERSHIP.-- (1) The ownership of a copyright may be transferred in whole or in part by any means of conveyance or by operation of law, and may be bequeathed by will or pass as personal property by the applicable laws of intestate succession. (2) Any of the exclusive rights comprised in a copyright, including any subdivi-sion of any of the rights specified by section 106, may be transferred as provided by clause (1) and owned separately. The owner of any particular exclusive right is entitled, to the extent of that right, to all of the protection and remedies accorded to the copyright owner by this title."
There is nothing special about a license. It is simply a temporary grant of the rights entitled by a copyright holder. A licensee only gets the rights explicitly specified in the license. In fact, a license CANNOT give you the right to change the license. That is a right of ownership of the copyright, and as stated in Section 101, Title 17, USC, the definition of a "transfer of copyright ownership" excludes nonexclusive licenses (which software licenses are, by definition). So if a license gave you the right, it wouldn't be legally binding, and any subsequent sub-licensing would likewise be legally invalid. This is an area that I would be interested in seeing how the courts have defined. Furthermore, a person cannot GPL changes or additions made to BSDL code. Those are considered derivative works, and, as granted in subsection (c) of section 106, Title 17, USC, they are the exclusive right of the copyright owner. So, those would have to be BSDL, as well. The only way someone could GPL any BSDL code is if they created an entirely new work (not derivative) and their use of BSDL'd code passed the fair use test. As an aside, derivative works aren't well defined in the law (what happens to derivative works not created by the author, for example), so it would be interesting to see how the courts have defined this area. Also, code changes are a special case and could probably be further defined. Based on my interpretation of the law, changes made to either BSDL or GPL code would be copyrighted by the original author of the code, which seems excessive. (Anybody out there know how the courts have ruled?)
Whatever your feelings on GPL and BSDL, I think everyone can agree they represent very different philosophies for "free" software. To try to change the license of an author's code, even if it wasn't illegal, is wrong. The author made a choice, one that should be respected. By trying to change the license, a person is trying to take away an author's right to make that choice. That is why BSD people get so upset when someone tries to GPL BSDL code, for those of you that had to ask.
Responses are welcome. I am certainly not an authority on the subject, I just did a little research. I am especially interested in the case law, which I know absolutely nothing about. If any one is aware of how copyright law has been interpreted by the courts and how that might apply to this situation, I would love to hear from you. If you are interested in checking my research or just learning more about copyright law (it is very interesting stuff), the official site is at the Library of Congress.
Back in the 1980's, a Soviet spy plane had trouble and was allowed to land in Alaska. After it was repaired, the crew was allowed to leave, completely unmollested.
Can you provide any more info on that? I haven't seen references to that anywhere. Do you have any links? Is there more info you could give me about it (e.g, what air base, etc.)? I tried a search with what info is in your comment and came up empty. I would greatly appreciate it.
Thanks,
Nathan Florea
No. It was a nice attempt to stir up controversy on a story that isn't really that interesting, though.
Will 99% of Earthlink's users ever know about it? No.
As some one who spent well over ten years in Leavenworth, I can tell you it isn't the deterrent most people seem to think. While it can be pretty crazy during the tourist season, the rest of the time it is usually downright pleasant. And I really don't think we need more cops.
But if your intent is to get them as far away from Salem, NH as possible for a while, I suppose your proposal would suffice.
Grave of Fireflies directed by Isao Takahata.
If this is a "constitutional requirement" why are Congress and some states allowed to ignore it?
Every state has a its own state constitution. They are referring to the state constitution, not "the" constitution.
n8_f
The Pentagon is trying to protect itself from future attacks by deciding to "to carefully consider the origin of all software used in developing or upgrading information technology or national security systems." It sounds like they're mostly worried about those "foreigners" trying to put in backdoors. I'm not sure why they trust Americans more.
Perhaps they (the DoD, U.S. government) have a reason to suspect that companies in other countries could be persuaded/coerced into putting backdoors in their software by foreign powers? I can think of two reasons.
The first being that they believe governments in other countries can exhibit more influence over companies in those countries. This is probably true, at least in some cases. In fact, in the U.S. I think it is far more likely that businesses exhibit influence over the government, rather than vice versa. : )
The other reason I can think of is that they are able to coerce US companies to put in back doors, so they assume it is the cause in other countries.
Just a thought.
n8_f
I just want to clarify what Have Blue hit on in a previous response.
A game screenshot is a derivative work. There is no way you can create that screenshot without using the copyrighted game.
With a Word doc, you can create that exact same document in a host of other applications or on paper by hand. Word is not necessary for the creation that document and that is the difference.
n8_f
I would highly recommend trying another route, namely the government.
Here in Washington State we have the Washington Utilities and Transportation Commission, which has proved very helpful in my dealings with USWest. My roommates and I were some of the first to sign up for DSL service in June of '98 and we didn't get service until around November, a typical USWest installation horror story. Through the whole ordeal, my roommate was a savvy enough consumer to keep meticulous records of all of our trials and tribulations with USWest and then get the state utilities commission on USWest's case. We ended up getting a few months free, no installation costs, no long term commitments, and a couple of other things out of the deal. Not full compensation, but it was nice. Nothing we did had a greater impact on our dealings with USWest than calling the State Utilities Commission.
Since most of the telecommunications monopolies have yet to really break up, there are still strict rules imposed by the government regarding acceptable levels of service. I'm sure most states have a similar regulation body and with your well-documented evidence, it shouldn't be too hard to receive some level of redress through them. Plus, I think the utility marks you off in their customer database as someone not to piss off in the future. : )
HTH,
n8_f
Just because Darek Mihocka says it takes 192 megs of RAM doesn't mean its true. Everything in this article should be taken with a grain of salt. I'm writing this on OSX Beta running on a machine with 128 MB of RAM and I have no problems. So far I've been able to open and run every application, mostly Classic apps, with no complaint. And this is just the Beta, which you can reasonably expect to be a bit bloated. The actual release should only require 64 MB (although 128 will be recommended). That could change, but that is the current target and I think they can hit it.
Also, that minimum requirement, as some one else mentioned, is for a great user experience. Windows 2000 with the required 64MB is dog slow.
n8_f
I think there is a big difference between taking design cues from a competitor and trademark infringement. If Ford introduced a truck that looked so close to a DaimlerChrysler pickup that a consumer might confuse it with a Dodge Ram (even using the same colors, etc.), that is definitely wrong, both from a legal and moral standpoint. It was this kind of infringement that Apple was trying to stop with its lawsuits against eMachines, et al.
Apple has been over zealously litigious of late, but in regard to some of the copyright infringements I definitely side with them. Nathan
Yeah, but how many of those have been successful? That was Jonnythan's point. The examples you named have been failures (a little too early for the N64 upgrade, but given that the system is at the end of its product cycle, I don't see a ton of people running out to get it). How about the Sega 32x or SegaCD? Both were add-ons for the Genesis and both flopped. There are some other causes for these failures, but the basic rule is: don't split your market share. Performance upgrades split your market and you have to deal with that split by adding complexity and ineffiency to your software (not to mention different user experiences) or by excluding part of your market share.
I'll be very impressed with the first manufacturer that successfully pulls that off.
Those are all different from registered trademarks. What you refer to in your examples are copyrighted materials, not trademarked as you seem to think. With copyright, the examples you give are covered under the "fair use" clause in Section 107, Title 17, USC. With trademake, I don't think there even is a fair use clause, and if there is it is very limited.
/. editors (like the "NSI Owns Your Domain Name!" mistake). Doesn't it seem like these mistakes are happening more frequently?
Also, a clarification should be made for materials provided for you. If a company were to give you screenshots of their newest game to use in your review, the company could make you agree to a license that would impose further restrictions (such as editorial review). Obviously, if you accepted that license, then you would be bound to it. Of course, you would be perfectly able to not use those materials and get your own screenshots. Anyway, the bottomline is that Bolero is right. This is (once again) misinterpretation by the
Uhh, correct me if I'm wrong, but if you have N64 games, don't you already have an N64? If not, then you must not need one, so I don't see why backwards compatibility is such a big deal. The only benefit is a little space saving (and a little bit better graphics on some games - yippee). But the risks of being saddled with poor design decisions (every system has some) and old technologies makes backwards compatibility a very bad goal for a console. Okay, if you can get it in a system incidentally, why not, but I don't think it is a great feature. And it does help ease the initial size of a system's game library, but no one is going to buy a PlayStation 2 to play PlayStation games.
Besides, the Dreamcast can play PlayStation games. Do you really think the Dolphin won't? Now playing Dreamcast games, that would be cool. A system that could play the games of another contemporary system would rock!
Remember, awesome 3-D graphics for the masses started with software rendering (Wolfenstein, Doom). It was only after 3D rendering became a common function for general computer users that it moved to hardware. Likewise, encryption (and the APIs for it) will have to start as software-only and then, when everyone is using it in a standard way, will there be an advantage to moving the functionality to hardware. As it is, there is no way to avoid quick obsolescence. The encryption needs of computer users must evolve in software, where that evolution is extremely cheap and has a low design cost, rather than hardware that has to be replaced constantly as the use of encryption settles in.
Widespread 3D graphics is a very good analogy for widespread encryption. Initially with 3D graphics, it was a very specialized use with only a couple of cutting edge programs doing it, each one implementing its own 3D renderer. As the use of 3D graphics became more commonplace and the repition of work became greater, 3D display was abstracted with a common set of APIs such as OpenGL (with cards and implementations supporting a much smaller subset of OpenGL directed at ust displaying 3D graphics), Glide, and Direct3D. This allowed hardware manufacturers to move 3D rendering to hardware, as they now had a a standard they could support (in the case of 3dfx and Glide, they wrote an API and convinced developers to write to it, rather than the other way around, but it is the same concept). Manufacturers could have introduced hardware before, but they would have practically had to write a new driver for each application they wanted to support.
And this is the path that encryption will have to take. Right now, I think that we are at the point of programs each doing their own encryption. This is not entirely accurate, because it is more like classes of applications doing their own encryption (e.g., SSL for web apps), but I think it fits. There are no universal APIs for encryption and nothing has really been adopted at an OS level or across multiple types of applications. Part of the problem is that a real API is going to have to be agnostic to the encryption algorithm used, just as 3D APIs are mostly agnostic to how the 3D shapes are actually drawn, so that the encryption algorithm can be seamlessly swapped with stronger ones as they are available.
I think that with the rise in distributed computing and networking, this will be the next big piece of functionality moved to hardware. But developing the APIs and infrastructure to support that move is going to take some time.
There seems to be some very irrational fear and speculation regarding the possible revocation of domain names by Internet Domain Name Registrars, specifically Network Solutions Inc., due to the court ruling in Network Solutions, Inc. v. Record No. 991168 Opinion by Justice Cynthia D. Kinser and changes to NSI's service agreement. These fears are completely unfounded! Not only does the case in question not rule that NSI "now 'owns' [a] domain name and can take it back at will", but it helps refute that position. Also, no where in NSI's revised service agreement does it refer to NSI owning a domain name. I have illustrated my arguments below.
The Ruling
First, I'll deal with the ruling itself. Although the majority opinion by Justice M. Langhorne Keith did rule for NSI in overturning the opinion of Justice Cynthia D. Kinser, the main issue was not whether second level domains are intellectual property or not but rather if the service being provided by NSI was garnishable. In fact, Justice Keith states this explicitly when he writes "we do not believe that it is essential to the outcome of this case to decide whether the circuit court correctly characterized a domain name as a 'form of intellectual property.'"
The part that everyone is excited about and has become the focus of this case is where he writes that the rights of a second level domain (SLD) holder(whatever those rights maybe) "do not exist separate and apart from NSI's services that make the domain names operational Internet addresses." This is a very minor point in the majority's argument and is even contradicted in the opinion: both "NSI knowledged during oral argument before this Court that the right to use a domain name is a form of intangible personal property" and "as Umbro points out, domain names are being bought and sold in today's marketplace" both point to domain names having property rights. In fact, in a 1996 case against Clue Computing, NSI took the position that a domain name was property and it maintained that view in this case, as noted in the opinion.
The point that this case solved was whether the service that NSI was providing to the court debtor, domain registration, could be garnished. The Court concludes that "a domain name registration is the product of a contract for services between the registrar and registrant" and "a contract for services is not 'a liability'... and hence is not subject to garnishment." In fact, the court once again supports that domains are property, saying in support of their ruling for NSI that "we also are concerned that a decision to uphold the garnishment at issue would be opening the door to garnishment of corporate names by serving a garnishment summons on the State Corporation Commission since the Commission registers corporate names and, in doing so, does not allow the use of indistinguishable corporate names", comparing domain names to corporate names (which is a very accurate analogy, since they often are the same; right, Andover.net?). This is not a precedent setting decision on the issue of domain name rights and the opinions contained within it will be taken by any judge strictly as that: opinions (and inconsistent ones at that).
NSI's Service Agreement .com, .net, and .org TLDs."
Secondly, there is NSI's service agreement. NSI (and all Registrars) are first and foremost governed by their agreement with ICANN. From ICANN's Registrar Accreditation Agreement:
"H. Rights in Data. Registrar disclaims all rights to exclusive ownership or use of the data elements listed in Sections II.E.1.a through c for all SLD registrations submitted by Registrar to, or sponsored by Registrar in, the registry database for the
Further evidence that the registrar is in control (also taken from the Registrar Accreditation Agreement): "An SLD registration is "sponsored" by the registrar that placed the record associated with that registration into the registry. Sponsorship of a registration may be changed at the express direction of the SLD holder or, in the event a registrar loses accreditation, in accordance with then-current ICANN-adopted policies."
Now, to look at NSI's own service agreement. Check out section 9 entitled "DOMAIN NAME DISPUTE POLICY MODIFICATIONS." In reference to changes in its Domain Name Dispute Police, it states that "you agree that, by maintaining the reservation or registration of your domain name after modifications to the dispute policy become effective, you have agreed to these modifications." Under section 15, "BREACH", it says that in the event of a breach of contract "we may delete the registration or reservation of your domain name and/or terminate the other Network Solutions' service(s) you are using without further notice." In fact, in sections 16, 17, 19, 20, and C it refers to the domain name as belonging to "you". It only refers to the domain name in possesion-inspecific phrases (e.g., "the domain name") or phrases giving "you" possession (such as "your domain name"). "Domain name registration service", as pointed out in the court case, is very different from "domain name." Section 6, allowing NSI to change the terms of the contract at any time without notice, is definitely scary, but any real changes would be subject to a court challenge. I am not sure a person can give away the right to subsequent changes in the contract without limit, and the courts have generally held this to be true (IIRC).
Summary
Thanks,To summarize, the court case is irrelevant. If anything, it strengthens the position of a domain name holder, because it does (if conflictingly) acknowledge that a domain is property, but it rules that NSI only provides a service (and, by extension, does not own that property). And NSI, through its agreement with ICANN and its own service contract, does not and can not take ownership of anyone's domain names. Could they try to? Anyone can try, but they would be laughed out of court. I'm sorry, but the gross negligence and sensationalism in the reporting of this story (both the author of the article, Brian Livingston, and the poster, CmdrTaco) and subsequent reader backlash against NSI is very disappointing to me. Please read this and re-evaluate your opinions accordingly.
Nathan Florea
P.S. I apologize if this issue has already been addressed in the time between when I started this and when I finish it. Also, I can be contacted at a-nathfl@please-no-flames,-I-just-work-here.micro
The way a TCP ACK works is that it says "I have received all of the data up to this octet." TCP packet size is not determined by window size or acknowledged data. It is determined by the MTU and urgency of the data needed. If stack can wait until it has enough data to create a packet of the Maximum Transfer Unit, it will (there is a timeout). If the receiver has indicated that it needs the data ASAP, the TCP stack will push out the data octets as fast as it can (with a very short wait), regardless of how small the packet is (IIRC, I am a bit rusty on this part). So altering the packet size will have no effect.
Also, the out of order octets would not need to introduce much overhead. Simply a sequence number far enough a head to not be reached for a while ("while" is intentionally vague; I need to do some more research on how far ahead the stack could and should go). If that is acked with out the TCP stack having sent the previous data, the stack knows that the receiving stack is cheating and can close the connection.
The key idea here is to send information that can not be acknowledged (because octets before it have not been sent) and see if it *is* acknowledged. Perhaps a better implementation would be as the send window grows, the TCP stack skips two octets but otherwise continues sending normally. A valid stack would not be able to acknowledge any of the subsequent octets, but an optimistic ACKing stack would. And because the receiving stack caches the out of order octets, once the sending stack determines it is dealing with a legitimate receiver and sends the two missing octets, all of that data is still valid and there is very little inefficiency introduced. The keys here that I still need to work out are:
- When does the sending stack use this trick (when the send window grows, etc.)?
- For how long does it do it (i.e., at what point will a receiving stack start dropping OOO packets and how much time will it take to trick an optimistic ACKer)?
- How much data does it skip (e.g., it would be more efficient if the sending stack skipped a whole packet's worth of data, that way it would not send a packet with only two octets of data when it decided it was dealing with a legitimate receiver)?
- And lastly, when does it *not* do this (i.e., are there any cases where this introduced inefficiency is intolerable)?
As you can see, the idea has already evolved quite a bit in this post, so there is still some serious work that needs to be done. But I think that this is a very good solution to the problem. Can anybody else think of potential stumbling blocks or problems with this solution (or better solutions)?Nathan Florea
In regard to an earlier response, discarding data the sending TCP stack received ACKs for would not cause abortive connections. Because a legitimate receiving TCP stack would only send ACKs for data it had received (therefore that the sending stack had sent), it would have no affect and the order in which the ACKs are received is irrelevant. In fact, that is how TCP stacks work. The low end of the TCP window (of data to send) represents the earliest packet sent that the stack has not received an ACK for. Once it receives an ACK, it moves the window up and that data is discarded. Otherwise, the stack resends the data.
I think the point you are missing is that with optimistic ACKing, ACKs are (hopefully) not sent for data that has not been sent. ACKs are sent for data that has not yet reached the receiving TCP stack (but been sent). This causes the sending TCP stack to think that data is being received faster than it is, which causes it to grow the high end of its data window, causing it to send more packets. The trick of optimistic ACKing is to send back ACKs fast enough to match the growth of the sending stack's window, but to not outpace that growth, so that all of the ACKs are for data that has been sent (just not yet received). This results in exponential growth of the TCP window. Of course, the problem is that while all of the data is sent, it will not necessarily all reach the receiving stack due to packet loss. The solution, as the article mentions, is for the receiving stack to reconnect and use the HTTP Range header to get only those packets that did not make it through the first time.
Your other suggestion, restricting the maximum window size, is not feasible. What would you set as the maximum size? At work, I am connected to the Internet by a super-highspeed, backbone connection (as are all of my friends at school). You have no way to tell what type of connection a person would have, so your maximum window would have to accomodate the fastest, the top 1% say, making it useless for the 99% with connections below that. Besides, that is not a limitation you want in your TCP stack. What happens when we get faster connections? Do you really want to have to patch your TCP stack everytime you upgrade your network? Limitations on bandwidth are best left to your router or firewall. Even then though, you are only going to be able to stop the extreme cases.
I think Stefan is thinking along the right lines for a solution: including a random piece of information in a packet that has to be echoed in the ACK. Although that would require changes to the TCP protocol, I think there may be a similar solution that would not.
An alternate solution would be to perhaps send a packet out of order, like a window a head of the most recently sent packet. The optimistic ACKers would then send back ACKs for the intervening data (because they would assume that the other data was on its way), which mostly would not have been sent yet, or they would send ACKs continuing on from the advance piece of data (to try to meet the expected growth of the window), once again sending ACKs for data that had not yet been sent. The resulting data loss would eliminate any gains from the optimistic ACKing. This solution is not quite as drastic as Stephan's, as it would not require changes to the TCP protocol or the client TCP stack (I think; I will have to do some research to verify that). Since optimistic ACKing relies on being able to predict the next packets sent, I think that this solution, adding some unpredictability to the packets sent using out of order packet sending, would effectively neutralize optimistic ACKing.
Nathan Florea
How are M$ going to control and take a cut of all games that run on Windows?
Easily. The OS won't be on the box, it'll be on the game disc. That way they can continually improve the OS/API (no doubt an M$ selling point), and games always use the exact same version they were developed for. Of course, the real reason is that it guarantees M$ a piece of every game.
What about an alternative OS to interact with the hardware? I don't know how Sony keeps non-licensed games off the PlayStation (or Nintendo, Sega, etc.), but I'm guessing M$ will use the same tactic.
Hey, everybody! Stop thinking about the cost to manufacture this thing (e.g., they couldn't use Athlon/Intel/etc., it would have to be StrongARM/Crusoe/etc.). That is not an issue. MS can use whatever hardware they want and set whatever price point they want. There is very little connection between the two. The revenue stream with consoles isn't the hardware (and never has been) and M$ is starting this race in last place. If they have to give the hardware away, they will. It is an investment and they've got a LOT of money to invest.
Also, games aren't the only potential revenue stream and you can bet they are going to tap the others. Games are the tip of the iceberg. If this thing is in development, it is meant as a WebTV-like device (I'd be suprised if they didn't release it under that brand), a console aimed at the 50% of the population that don't own a computer and maybe never will.
This would be the honey for the flies M$ hasn't caught. : )
If you haven't registered your copyright, you can still claim actual damages, which basically amount to whatever profits the infringing entity made off of your copyright. What you don't get are the punitive damages, which can be up to $100,000 (plus legal fees, etc).
/.'ers and GPL'ers don't realize this.
The second point I'd like to clarify, which superlame touched on briefly, is that there is no such thing as copyleft as opposed to copyright. Copyleft is just a clever coinage that the FSF/GNU came up with. It is a form of copyright licensing, but it isn't an alternative to it. It is amazing how many
If there are any contradictions between copyleft and copyright, copyright is going to win. There are several elements of the GPL which haven't been legally tested and if the courts don't interprete copyright law the exact same as the FSF/GNU, it is very possible the GPL could be ruled invalid. Being aware and understanding these issues is very important to the survival of copyleft software. Just because RMS says something works this way doesn't mean it does.
Please, don't assume. If this is an issue that affects you (e.g. you are authoring code), please read both the GPL and copyright law.
n8_f
I think we're all glad you decided against "skipping this article all together" and posted. Thank you.
/.'er is very reasonable, but many of the comments at a score of 1 or lower aren't. In order to find the gems by ACs and members who haven't yet been moderated up, I think we need more of the community searching.
Couple of suggestions. Perhaps to make meta-moderating easier, moderators should give a short (any moderator who appears to be a troll. I think with that extra information, it would be much easier for a meta-moderator to make a value judgement regarding other's moderation.
WRT moderation around here being a fickle thing, I think that the more people you have moderating, the better. I think that the average
Also, maybe posting guide lines or code of conduct would help? I see a lot of personal attacks, which is the weakest argument anyone can make, but not enough of them are moderated down to 0 or -1 where they should be. Maybe we are taking for granted common courtesy? Putting it into HTML and then augmenting the moderator mechanism to better enforce it couldn't hurt.
I agree that a high karma should be a prized status. Giving priviledges and recognition (via your stats idea) to those who take the time to post intelligent and well-written posts seems like a great idea. Any changes to moderating should favor those with higher karma, although not too much. Especially with meta-moderation to keep moderation in check, karma is a pretty good system.
Anyway, thanks again for the original post. Like Columbine, it is important not to react to the event, but to act on the underlying causes.
n8
Whoops, I think I see your problem. You're going to kick yourself. : )
"I had always heard...that BSD[L] allows BSD[L]'d code to become non-free."
That wouldn't make sense. If BSDL allowed code to become "non-free", then a company could just take all of the FreeBSD source, make it "non-free" (I assume by copyrighting it), and charge everybody using it $100 (or whatever they wanted). The BSDL allows BDSL'd code to be used with non-free (hereafter called proprietary) software, NOT "become non-free."
"Hardly grounds for a holy war!!"
I agree. However, the BSDL and GPL represent very different philosophies. The GPL protects software freedom by taking away programmer freedom (I can explain this later if you'd like; I'm running a little late), while the BSDL is less restrictive.
If you still have questions or seek further explanations, just let me know.
Cheers,
n8
The way I understand your implementation of karma, every post I make influences my karma and goes into the number to be averaged. This means that every post I make has to be awesome. A large number of responses to other people's posts w/ questions or clarifications aren't likely to be moderated up, so when I do post my "awesome" comment, the effect of the moderation applied to it is watered down by all of the unremarkable comments I made. I think that only moderated comments should count towards karma.
I think that the opposite approach should be taken. The default post wouldn't have the bonus, with a check box to enable it. I see a lot of lame comments at a 2 or 3.
You mentioned in the moderation FAQ that you were thinking of implementing a waiting period inbetween posts. I think this is an excellent idea. Imposing a half-hour or hour waiting period between posts would be fine. It would force
This is where I want the biggest change. The current moderation system penalizes well thought out comments. The sooner you post, the more likely your chance of being moderated up. Later posts have little chance of being moderated, because most moderators have moved on to newer articles. For example, I posted to the Berkeley removes advertising clause article. I researched copyright law and posted a article related to the many posts on GPLing BSDL code. However, because I posted on Saturday, two days later, there is no chance of my comment being moderated.
And what about the commments that are a few layers into a thread? What about the comments tacked onto the end of a thread? The point is, there are a lot of comments slipping through the moderation cracks. I think that you need a radical change to the moderation system.
Here's my proposal. I realize that it is probably extremely difficult to integrate any of this into your system, but maybe some of the ideas can be adapted to fit in.
Instead of giving moderators points, give them articles. You use the current system for selecting moderators, except you do a check everytime someone accesses an article. So when Joe Schmoe tryies accessing the "Microsoft's new evil plan..." article, his chances of being a moderator are checked. If he isn't selected, he goes onto view the page normally. If he is, however, he is taken to the moderator version of the page and given, say, 5 comments to moderate. The page looks like the standard version. The article at the top, comments below, but inbetween is the listing of his articles to moderate, listed similiar to the way your articles are listed in your user page. As I mentioned, the rest of the comments are below it, but the catch is nothing (including the 5 to moderate) has a score displayed. Now, Joe's job is to read those 5 (or 3 or whatever) comments (and any of the other comments) and give those five a score. Once he does that and submits it (or he clicks the "Decline" button), he is taken to the standard version of the page and he is free to post comments.
Couple more things.
This way, one comment doesn't get moderated 50 times, and hopefully all comments get moderated at least once. If the threshold for moderator is set high enough, every comment should get moderated multiple times, with the final score being the average of those moderations, possibly weighted by the moderator's karma.
This is done in the scripting, so you don't have two moderators moderating all of the same articles.
In fact, you could not display any comments until you get 20 (or 10 or whatever), which would cut down on those annoying posters who try to get first post (like it's a race or something). Or, perhaps you have something like a moderation acceleration curve, where the chance to moderate is modified by the number of posts.
So long as comments from any thread they have responded to are banned, there is no reason they shouldn't be able to. It isn't very likely that they would remember what score articles have gotten if they had been there before, and they would most likely get newer articles that they hadn't seen yet. This way, the more traffic a discussion gets, the more moderation.
Everybody starts at 3, and the better moderators increase in the number of articles they moderate, up to their maximum. Also, perhaps people with a default bonus can only be moderated by people with an equal or greater default bonus. This prevents trolls from getting a large number of articles to mark down, or getting a chance to mark down people who may be over their head. : )
Many
These are just some ideas. I have tons more, if you're interested. I realize implementing any of these may be impractical, but maybe they'll trigger something that is. I think that encouraging more moderation is only a good thing, and by increasing the moderation threshold so that every comment gets moderated multiple times, you'll increase the usefulness of the moderation system.
Thanks,
n8
I'm afraid you've missed quite a few key points.
:-/ ). Pricing probably will be comparable to other game companies licensing fees (~$15, I think), so developers won't complain.
;), like Nintendo, Sony and (a really pissed off) Sega. Still, I think that they'll try, so support Sony! Buy a Playstation 2! :-)
How do you think M$ makes money on Sega's Dreamcast? It has the same problems you just enumerated with M$'s new platform.
"Intel will not sell the x386 chips at a loss so MS can dominate a market, and neither will any 3-D board manufacturer. And since MS cannot control the hardware, they cannot control the software that runs on it, nor make any money licencing games (They don't on a PC.)"
I think it is obvious with this move that they didn't have altruistic motives in helping Sega. : ) No, the way M$ makes money is by having CE reside on the game CD (like on the Dreamcast). That way, they charge game developers for every CD shipped. And it makes sense (or at least M$ is able to rationalize it to developers) because you get PC-like upgrades to APIs and drivers (Dreamcast CE uses a subset of DirectX) w/o the PC-like incompatibilities. The OS is loaded from the game CD, so whichever version of the OS you developed for is what is always running with your game. Of course, the HUGE downside is that the developer has to pay for an OS for every piece of software they ship (although I'm sure M$ downplays that part
Also, you can bet that if this has the M$ name on it, it will have some strong low-level checks so nobody is booting Linux (or any "unauthorized" OS) off of a CD. : )
Games will not be any cheaper. People are used to paying $40-$60 for a game, so even if there was a cost savings, the publisher would probably pocket it. Games might drop a little in price, but probably not significantly ($30).
The thing that the M$ platform will have going for it will be portability. You might not even have to recompile to get it to run on Windows. You definitely won't have to change any code if you write it for the settop. Currently you have game companies having to write multiple, wildly different ports of games (N64, Playstation, PC). For PC game programmers who think MFC are part of the C++ standard libraries, it is a major pain in the butt. Now, they won't have to worry about code portability. They can write the only way they know how and let M$ handle all of the portability concerns. They have a game that runs on a console and computer and they didn't even have to leave their M$-only comfort zone. Very scary, indeed!
The initial problem will be getting the system going. It won't be cutting edge for long and M$ has no settop brand recognition; they can't wait to build it. Unless they are terminally brain dead, they'll release it under the WebTV brand name and bundle in the corresponding functionality. Why not? They'll have the Internet connection (Dreamcast is making that standard on consoles; about time) and the WinCE version of WebTV is already done. Also, a model with cable box functionality, so that all of the cable companies M$ now has significant stakes in can use these as terminals for the interactive services supposedly coming down the pike (not to mention HDTV, as that becomes available). These added features will help to make the purchase easier to justify to consumers (as well as differentiate it from the competition) until the software library catches up (and maybe make up for the fact that the graphics for games aren't any better than the PC version?).
In addition, expect standard monitor out (maybe even digital, though I doubt it; depends on where the standards are) as well as video out. Should have DVD, since that is what the other consoles will have, so expect it to play movies. And, as always, expect M$ to price under competitors by taking a huge loss on the hardware. Afterall, this has a much more constant revenue stream than PCs.
They'll probably release new versions every one or two years, and if they're smart they'll build that in. The best way would be to use a kind of preprocessor system and have a "game compiler" build different versions of the game. They could adjust not only the code, but the resolution, polygon count, etc. of source media (DVD-ROMs have the space to hold multiple copies). But I'm rambling...
This is the worst case, as I see it. There is a lot of talk in the industry about "computing appliances". Basically, that the general purpose computer has hit saturation (~50% of American households) and to reach the other half is going to require cheap, easy to use devices that fill a more specific void (like a settop box). Can you imagine how scary it would be if M$ controlled the OTHER half of the country?
I don't think this will happen (didn't you notice the sentences opening w/ stuff like "If they aren't terminally brain dead..." and "if they're smart..."? : ), because this is new territory and M$ isn't very good at creating new markets (afterall, if no one else has done it, who can M$ "innovate" from?). Plus, it is too difficult to keep an evil plan together with all of "those meddling kids" (had to quote Scooby Doo
n8
BTW, most of this is applicable to all licenses, including the GPL.
Besides being morally repugnant (the author released the code under that license for a reason), it is illegal for anyone other than the author(s) of a piece of code or binary to alter a license in ANY WAY (including Microsoft, SUN, BSDI, etc.).
The main problem with the arguments of the proponents of GPLing BSDL source is that they assume a license completely ignores any previous rights given by copyright law. They assume that if it isn't explicitly stated in the license, a right is forfeit. It isn't. In fact, the opposite is true. Part (d) of section 201, Title 17 of the United States Code deals with the transfer of copyright rights and reads:
"(d) TRANSFER OF OWNERSHIP.--
(1) The ownership of a copyright may be transferred in whole or in part by any means of conveyance or by operation of law, and may be bequeathed by will or pass as personal property by the applicable laws of intestate succession.
(2) Any of the exclusive rights comprised in a copyright, including any subdivi-sion of any of the rights specified by section 106, may be transferred as provided by clause (1) and owned separately. The owner of any particular exclusive right is entitled, to the extent of that right, to all of the protection and remedies accorded to the copyright owner by this title."
There is nothing special about a license. It is simply a temporary grant of the rights entitled by a copyright holder. A licensee only gets the rights explicitly specified in the license.
In fact, a license CANNOT give you the right to change the license. That is a right of ownership of the copyright, and as stated in Section 101, Title 17, USC, the definition of a "transfer of copyright ownership" excludes nonexclusive licenses (which software licenses are, by definition). So if a license gave you the right, it wouldn't be legally binding, and any subsequent sub-licensing would likewise be legally invalid. This is an area that I would be interested in seeing how the courts have defined.
Furthermore, a person cannot GPL changes or additions made to BSDL code. Those are considered derivative works, and, as granted in subsection (c) of section 106, Title 17, USC, they are the exclusive right of the copyright owner. So, those would have to be BSDL, as well. The only way someone could GPL any BSDL code is if they created an entirely new work (not derivative) and their use of BSDL'd code passed the fair use test.
As an aside, derivative works aren't well defined in the law (what happens to derivative works not created by the author, for example), so it would be interesting to see how the courts have defined this area. Also, code changes are a special case and could probably be further defined. Based on my interpretation of the law, changes made to either BSDL or GPL code would be copyrighted by the original author of the code, which seems excessive. (Anybody out there know how the courts have ruled?)
Whatever your feelings on GPL and BSDL, I think everyone can agree they represent very different philosophies for "free" software. To try to change the license of an author's code, even if it wasn't illegal, is wrong. The author made a choice, one that should be respected. By trying to change the license, a person is trying to take away an author's right to make that choice. That is why BSD people get so upset when someone tries to GPL BSDL code, for those of you that had to ask.
Responses are welcome. I am certainly not an authority on the subject, I just did a little research. I am especially interested in the case law, which I know absolutely nothing about. If any one is aware of how copyright law has been interpreted by the courts and how that might apply to this situation, I would love to hear from you.
If you are interested in checking my research or just learning more about copyright law (it is very interesting stuff), the official site is at the Library of Congress.
Nathan "n8" Florea
n8_f@uswest.net
Links:
U.S. Copyright Law PDF
Section 201, Title 17, USC PDF
Section 101, Title 17, USC PDF
Section 106, Title 17, USC PDF
U. S. Copyright Office
Library of Congress
The Fair Use Test