I'll tell you one thing: It doesn't take millions of dollars to develop a versioning system. It takes one programmer about eight months to build something functional, and then another two years to shake the bugs out and make it perfect.
I often find with java, that some mistakes cause the JVM to segfault. Of course, this is a bug in the JVM, but it still doesn't help me write my code. So far I've only ever segfaulted GCC once.
I'm fairly sure that if you can't write secure code in one language, then you can't write secure code in any language.
It's not pointless, it's a lower bound. Lower bounds are useful.
Speed: Java loses hands down to every other language (even the interpreted ones). This may have something to do with it being a heap-based stack machine. Reliability: Depends on the code quality, which is more dependent on the programmer than the language. All interpreted languages, however, have the added variable of a virtual machine, which may or may not be reliable. Safety: This is an ambiguous term, but if you mean "type-safety", then Java nowadays is no better than any other type-safe language. That was not always the case. If you mean "it checks everything it does because its a VM" then you are very naïve. Security: This is a function of the operating system and the sysadmin, not the programming language. Java is as insecure as any other complete language on an insecure operating system or with an incompetent admin.
And no, it is not a stupid comparison. Java is often used for web applications. All the web applications I have written in C execute in around 20 milliseconds. All the web applications I have written in Perl execute in around 100 milliseconds. Java can't even print "Hello World" in less than 250 milliseconds (bearing in mind that this is running on a twin athlon 1600+, and this was the fourth or fifth execution, so all disk data was cached).
Well, Duh, of course Random != Unique. But since it's an unsigned short, incrementing it means every 2^16'th packet will have the same id, so universal uniqueness is not an issue.
Besides the patches at grsecurity.net do the same thing, but use their own random number generator (ip_randomid) rather than the kernel-provided one (net_random).
Their patches are better, of course, since they integrate with the kernel proper and provide a kernel option. The point of my post was to emphasise how trivial the change effectively was;p
Also, anyone patching their kernels with things they got off slashdot has far greater problems than being NAT sniffed:)
Whilst I don't make my own clothes, I expect to be able to darn my socks when holes develop; I expect that changing my shirt won't cause my pants to fall down; I expect to be able to by a hat from one company and shoes from another and be able to wear them at the same time; I expect to be able to turn up my trousers if the legs are too long; I expect to be able to dye a t-shirt if I get bored with the colour; I expect to be able to give my old clothes to second hand stores without having to provide proof that I own the clothes; and I expect not to have the Federation Against Clothing Theft strip searching me on a monthly basis to check whether I own the clothes that I am wearing.
Hinting improves readability. Consider, for example, a lowercase letter m. If the font size is sufficiently small, then the three stalks of the m could blur into one grey blob through antialiasing. The hinter forces the stalks to be spread out with one-pixel gaps between them.
Interestingly, hinting can cause text to grow horizontally by up to 10%, which is why WYSIWYG editors which use hinting (e.g. MS Word, older versions at least), aren't really WYSIWYG, as the hinter doesn't operate on the printer as it is a much higher resolution [this manifested itself with lines sometimes breaking differently when you printed the file].
Loss-of-power is taken care of by the hospital's emergency power generator for operating theatres. I doubt the machine would be networked at all whilst in use.
What Disney doesn't realise is that they are shooting themselves in the foot. They themselves rely on public domain works to fuel their Disneyfication Machine(tm). They've cut off their nose to spite their face.
Well, I don't know if p (the "public" key) is known either, as there is no reason for MS to publish it. I could just be stored somewhere in the XBOX ROM where no-one knows where it is.
In that case we would need 2^1024 x 2^1024 trials, which (unless my maths fails me) is 2^2048.
If p is known then that makes it a lot easier, but still infeasable (only about 4 lines of digits, IIRC;-] )
Let's assume we want to find the key in about one year.
The keyspace is 2^2048. This means that to find it on average in one year, we need to search (2^2048)/2 keys.
There are 365 * 24 * 60 * 60 = 31536000 seconds in a year. A current machine, say 2 GHz, will not be able to check keys any faster than 2 billion per second (in practice the number would be much lower than this, but it cannot be any higher, ignoring chips which can parallelise operations). This means we can check 63072000000000000 keys per machine per second.
This means we need:
( (2048^2)/2 divided by 63072000000000000 ) machines to participate.
That's a lot of machines. In fact, every person in the world would need to have: 4088182880916853059137581913995608598938002 0574938 1512491823325275367\ 0039983761093737657581366182 3437132028369300928737 2136090488973662885\ 0749520857823194202487813723 5281529166119647272954 3623272112620364581\ 9171026696185476725881661520 6188703489047492973236 7903825810597884676\ 0087066526446068063036669029 6494498088117693882712 8484532375726579806\ 8929812355659309066834995984 8375737098966810233408 2736619960338101994\ 5191141043929531602040535969 8321364177283871960956 9923672820142531423\ 1154135179174732484135445198 3247750938845967420404 6551928328834053889\ 0325273138153871592525085498 7565463644 machines.
How about Douglas Engelbart's "windowed GUI" from 1968? Or the part of the smalltalk language that dealt with "windows"? XEROX PARC referred to their system (the one Steve Jobs saw) as WIMP -- Windows, Icons, Menus, Pointer -- in the 70's.
There's more evidence in the previous case. Even the guy who gave Windows its name (a marketer) got the idea from the words the tech guys were using to describe "Interface Manager".
Yes, this is true. Microsoft have a long history of calling their software by the generic name for what it does. I guess they can't even innovate when it comes to names. Though I suppose it has some effect on sustaining their monopoly, as people might think that "Media Player" is the ONLY media player, etc.
The question you should be asking is: SHOULD people make money from their websites?
It's quite simple: I browse the web how I want to, not how you want to. If you want money from me, then you'd better give me something I think is worth paying for. If you want labour from me (e.g. reading and closing a pop-up window, not to mention the bandwidth cost of your crappy flash animation), then you'd better have another think coming (I'm as lazy as hell).
If you want to block my access because my browsing does not suit you, then fine. I won't look at whatever you wanted me to look at in the first place. It won't hurt me since what you will have written will either be:
1: factual, and therefore almost certainly be available elsewhere gratis,
2: opinion or advertising, and therefore you are hurt more by not having your opinion/advert heard; I couldn't care less.
Anyone who has ever tried to produce something worthwhile, such as a website, in their spare time, in addition to having a full-time job, will probably understand these sentiments.
1: most websites produced in peoples' spare time are not worthwhile.
2: I don't understand these sentiments at all, yet I regularly write free software and give it away gratis with no expectation of reward of any kind. In fact, a lot of people do that... Isn't philanthropism strange...
But what will you do when the aliens invade and blow up the moon as a "warning shot"?
I'll tell you one thing: It doesn't take millions of dollars to develop a versioning system. It takes one programmer about eight months to build something functional, and then another two years to shake the bugs out and make it perfect.
Correct. The proof is Arch.
It's about 18-20 months through that bug-shaking period. Come help us finish it.
BSD gives anarchy. GNU gives liberty.
People really should try Arch. It's really really good.
research firm Yankee Group estimates that 56 million people use file-swapping software in the United States.
Has anyone else noticed that more people use file sharing software in the United States than voted for President Bush in the last election?
However, it's obvious they are just trolling. If they really *did* have a case against Linux, Microsoft would have bought them up in a snap. :-)
I often find with java, that some mistakes cause the JVM to segfault. Of course, this is a bug in the JVM, but it still doesn't help me write my code. So far I've only ever segfaulted GCC once.
I'm fairly sure that if you can't write secure code in one language, then you can't write secure code in any language.
It's not pointless, it's a lower bound. Lower bounds are useful.
Speed: Java loses hands down to every other language (even the interpreted ones). This may have something to do with it being a heap-based stack machine.
Reliability: Depends on the code quality, which is more dependent on the programmer than the language. All interpreted languages, however, have the added variable of a virtual machine, which may or may not be reliable.
Safety: This is an ambiguous term, but if you mean "type-safety", then Java nowadays is no better than any other type-safe language. That was not always the case. If you mean "it checks everything it does because its a VM" then you are very naïve.
Security: This is a function of the operating system and the sysadmin, not the programming language. Java is as insecure as any other complete language on an insecure operating system or with an incompetent admin.
And no, it is not a stupid comparison. Java is often used for web applications. All the web applications I have written in C execute in around 20 milliseconds. All the web applications I have written in Perl execute in around 100 milliseconds. Java can't even print "Hello World" in less than 250 milliseconds (bearing in mind that this is running on a twin athlon 1600+, and this was the fourth or fifth execution, so all disk data was cached).
Well, Duh, of course Random != Unique. But since it's an unsigned short, incrementing it means every 2^16'th packet will have the same id, so universal uniqueness is not an issue.
;p
:)
Besides the patches at grsecurity.net do the same thing, but use their own random number generator (ip_randomid) rather than the kernel-provided one (net_random).
Their patches are better, of course, since they integrate with the kernel proper and provide a kernel option. The point of my post was to emphasise how trivial the change effectively was
Also, anyone patching their kernels with things they got off slashdot has far greater problems than being NAT sniffed
Whilst I don't make my own clothes, I expect to be able to darn my socks when holes develop; I expect that changing my shirt won't cause my pants to fall down; I expect to be able to by a hat from one company and shoes from another and be able to wear them at the same time; I expect to be able to turn up my trousers if the legs are too long; I expect to be able to dye a t-shirt if I get bored with the colour; I expect to be able to give my old clothes to second hand stores without having to provide proof that I own the clothes; and I expect not to have the Federation Against Clothing Theft strip searching me on a monthly basis to check whether I own the clothes that I am wearing.
Hinting improves readability. Consider, for example, a lowercase letter m. If the font size is sufficiently small, then the three stalks of the m could blur into one grey blob through antialiasing. The hinter forces the stalks to be spread out with one-pixel gaps between them.
Interestingly, hinting can cause text to grow horizontally by up to 10%, which is why WYSIWYG editors which use hinting (e.g. MS Word, older versions at least), aren't really WYSIWYG, as the hinter doesn't operate on the printer as it is a much higher resolution [this manifested itself with lines sometimes breaking differently when you printed the file].
Even if the kerning does suck, we can modify the font to fix it.
Bitstream Vera is a font family, which consists of 10 fonts.
Loss-of-power is taken care of by the hospital's emergency power generator for operating theatres. I doubt the machine would be networked at all whilst in use.
What Disney doesn't realise is that they are shooting themselves in the foot. They themselves rely on public domain works to fuel their Disneyfication Machine(tm). They've cut off their nose to spite their face.
So why not just sell yourself a copy of linux through your own company?
Well, I don't know if p (the "public" key) is known either, as there is no reason
;-] )
for MS to publish it. I could just be stored somewhere in the XBOX ROM where no-one knows where it is.
In that case we would need 2^1024 x 2^1024 trials, which (unless my maths fails me) is 2^2048.
If p is known then that makes it a lot easier, but still infeasable (only about 4 lines of digits, IIRC
Ahhh, I get it now: "we can't remove IE from Windows, because then it wouldn't get all of its naughty speed hacks..."
Let's assume we want to find the key in about one year.
6 79812491847 0034501286984934080\2 6173015536181603483336 1032784430099655323\9 9902489291405217648393 6232454940842516362\0 4019484459166088424059 6873702316740293441\3 7127342032430926831573 9828884343009334529\5 9628831104499868523479 9854643717630057264\2 4010974519290044145762 9590988748658836010\6 1834647652719112497108 8586363327032331220\5 68862609019439636890
2 0574938 1512491823325275367\2 3437132028369300928737 2136090488973662885\3 5281529166119647272954 3623272112620364581\0 6188703489047492973236 7903825810597884676\9 6494498088117693882712 8484532375726579806\4 8375737098966810233408 2736619960338101994\9 8321364177283871960956 9923672820142531423\8 3247750938845967420404 6551928328834053889\8 7565463644
:)
The keyspace is 2^2048. This means that to find it on average in one year, we need to search (2^2048)/2 keys.
There are 365 * 24 * 60 * 60 = 31536000 seconds in a year. A current machine, say 2 GHz, will not be able to check keys any faster than 2 billion per second (in practice the number would be much lower than this, but it cannot be any higher, ignoring chips which can parallelise operations). This means we can check 63072000000000000 keys per machine per second.
This means we need:
( (2048^2)/2 divided by 63072000000000000 ) machines to participate.
That's:
25619138501483231307644340348070421074
536045058749470424288206517
242390857959540549852794245
788307622972306591036879771
555215196986044143194475602
237823719925815402062766832
742821393465861224879124664
631953178327398239073428324
171673195729764659671523380
That's a lot of machines. In fact, every person in the world would need to have:
408818288091685305913758191399560859893800
003998376109373765758136618
074952085782319420248781372
917102669618547672588166152
008706652644606806303666902
892981235565930906683499598
519114104392953160204053596
115413517917473248413544519
032527313815387159252508549
machines.
Good luck
Correction: They got Apple stock in return for allowing Jobs et al. to look around PARC and use anything they saw.
Since Apple did quite well in the 80's, they probably did OK out of it.
How about Douglas Engelbart's "windowed GUI" from 1968? Or the part of the smalltalk language that dealt with "windows"? XEROX PARC referred to their system (the one Steve Jobs saw) as WIMP -- Windows, Icons, Menus, Pointer -- in the 70's.
There's more evidence in the previous case. Even the guy who gave Windows its name (a marketer) got the idea from the words the tech guys were using to describe "Interface Manager".
Yes, this is true. Microsoft have a long history of calling their software by the generic name for what it does. I guess they can't even innovate when it comes to names. Though I suppose it has some effect on sustaining their monopoly, as people might think that "Media Player" is the ONLY media player, etc.
how SHOULD people make money from their websites?
The question you should be asking is: SHOULD people make money from their websites?
It's quite simple: I browse the web how I want to, not how you want to. If you want money from me, then you'd better give me something I think is worth paying for. If you want labour from me (e.g. reading and closing a pop-up window, not to mention the bandwidth cost of your crappy flash animation), then you'd better have another think coming (I'm as lazy as hell).
If you want to block my access because my browsing does not suit you, then fine. I won't look at whatever you wanted me to look at in the first place. It won't hurt me since what you will have written will either be:
1: factual, and therefore almost certainly be available elsewhere gratis,
2: opinion or advertising, and therefore you are hurt more by not having your opinion/advert heard; I couldn't care less.
Anyone who has ever tried to produce something worthwhile, such as a website, in their spare time, in addition to having a full-time job, will probably understand these sentiments.
1: most websites produced in peoples' spare time are not worthwhile.
2: I don't understand these sentiments at all, yet I regularly write free software and give it away gratis with no expectation of reward of any kind. In fact, a lot of people do that... Isn't philanthropism strange...
That's it; I'm starting a movement to replace all the GNU components with Free (as in of RMS) Software.
;-)
Anyone with me?