Yeah, that's great. And you "only" need to pay $3900, $6000 or $25000 *per CPU* to upgrade if your site ever outgrows it. If you're going to use it for a website, only per CPU licensing is acceptable. Great plan, really. By the time you find Express won't cut it anymore, it'd probably take quite a while to migrate from it.
For most sites, your hardware probably costs less than the license. Hardly a good plan. I've used MS SQL Server, and it's good, but I have no idea why would anybody even WANT to run a blog from it. MySQL and postgres are perfectly suitable for that, and for the price of the software you could have a second server instead.
Besides, commercial software is often cleverly limited: You find that the next version/edition has just the stuff missing from the one you're using, but doesn't have ALL of the features you'd like. That's in the Real Expensive Edition, even if it's not all that technically complicated.
An example for Express: no backup, no replication. How are you going to backup your site's DB, take the server down, detach the database and make a copy?
This may be a bit pedantic, but you can press Ctrl+Alt+Del with one hand with all the keyboards I tried. This will work unless you have a keyboard that lacks the Ctrl and Alt keys on the right side. It even worked on my laptop, although it's certainly awkward, and is probably hard for children.
At least Ctrl+Alt+Del isn't something you expect to press often, and in sane programs keys can be remapped. But the laptop does have a problem, for instance you can't press "print screen" with one hand, because it's fn + insert. This is probably a greater problem than Ctrl+Alt+Del, because it's after all an OS feature, and could be worked around, but this combination appears to be handled by the laptop itself.
Could somebody explain what does this mean? What is involved in cloning, and how does it work?
Where does the "terror" group come in? What are they trying to do here, and why is it a "terror group" if they aren't uh, terrorizing anybody?
And most importantly, what is the point of making some random person pay for a CEO's phone usage? Is it an attack against the CEO, her, or just intended to create problems for Rogers?
Well, uber-muscled men kind of make sense. After all, if you play a barbarian that spends the day swinging a sword around, you wouldn't expect to look very weak, right?
On the other hand, I would say that huge breasts are probably a bad thing for running all day around and climbing on things. It'd be much more realistic if they looked more like the women that participated in American Gladiators.
Who said anything about POST? There's GET, which works just fine, is perfectly bookmarkable, and when using SSL, is sent encrypted.
By "web application" I mean specifically anything trying to act as an application, that is, trying to make the web fully stateful, beyond what's offered by GET/POST and cookies. Things like gmail, for instance. I have no problem with slashdot and google itself, where every page is perfectly bookmarkable, and pages don't suddenly change on their own.
And it seems you didn't get my comment about Java. I was talking about a *desktop* application, not about a backend. Say, like Azureus for instance. If the bank wants to provide a rich interface, what could be better than an actual application instead of something that tries to be one but can't manage due to the limitations of the web?
And why it makes little sense? I'm not talking about one or the other, but both. If you want to give easy access to anybody from anywhere, you do a website. If you want a full interface with no limitations, the web still gets nowhere near a decent desktop app.
It's nothing very strange, really. If I wanted to always have access to my email in all possible conditions, I'd install something like squirrelmail on my server. On the other hand, IMHO, no web interface beats a decent mail client (kmail, eudora, mutt, etc)
Er, since when there's any need for AJAX for banking? Mine could certainly work just fine without it. Should be perfectly doable with web forms and cookies.
Hint #1: I don't like web applications. Gmail is all nice and cool, but I don't give a damn about it, I'm very happy with my IMAP server.
Hint #2: *I* will decide what I want to bookmark and what not, thank you very much.
Hint #3: *I* will decide when I want to use the back button, instructions not to use it will never cease to annoy me.
And yeah, I know about the back button being a way to re-submit a transaction. But any bank should be sane enough not to process it again, which is exactly what I want: To go back to the previous page, without harmful consequences.
The particular problem with my bank comes in even before attempting a transfer. I have two accounts, numbered something like #2342342343 and #2342342532. The balance screen lets me see my balance. The transfer screen lets me make a transfer. However, since it's dumb enough to show me just account numbers, sometimes I want to go back to the previous screen (balance) to find out which is which. At this point the site complains that I shouldn't use the button, and forces me to start the process from the beginning, of course losing any data I had already entered in the form. All of this is before trying to confirm the transfer.
I fail to see why couldn't there be "balance.cgi", "transfer.cgi", and "rechage_cell_phone.cgi", and a complete lack of all this weird magic.
If the bank for whatever reason wants to offer a richer interface they can do it perfectly well with say, a Java application which won't have any of the problems all this AJAX mess has.
Well, I hate to break it for you, but after 12+ years, web sites have gone to crap.
Instead of a light page that contains exactly what it should and no more, now I need to deal with 50K Javascript monstruosities which break the back button, produce errors even in IE, and do utterly annoying things having the gall of popping up message boxes saying "Please wait until the page refreshes"!
Seriously, I tried configure a server on hp.com today. HP could have a normal page, but no, there's got to be some Javascript crap that dares to complain because I toggle options too fast on it! And my bank for some reason insists on that the "back" button is a no-no, and that I must deal with it like with old DOS applications that could only have one "window" at once. Heck, even in DOS they managed to do better than that!
The same crap also makes it impossible to bookmark multiple configurations, as the data isn't actually stored anywhere. Now I've got to print it, then go back to the page, and set the options the way I like them again. Isn't it great to have http://server.com/magic-script.asp in the URL instead of all that "foo=1&bar=3" mess?
Well, nice rebuttal. I'm definitely not going to pay even one cent for something described as "sort of sucks", especially with the "you can't do anything with it" part.
And while HDTV would indeed take quite a while to download, most things distributed on BitTorrent have much better quality than 320x200, and I can get that for free. Now when somebody starts offering high quality video for download, without tons of crap attached, then I'll gladly pay for it.
The first is obviously bad because it says nothing new. Now, the second one is more interesting.
Are you returning because an error would happen if you didn't, or because with no tariff the rest of the code doesn't apply? IMO, it's the second thing that should be explained in the comment -- we aren't returning because it's a hack that prevents something from raising an exception, but because with this particular value set to null, the rest of the function doesn't apply.
Perhaps there should be two comments: One explaining that this particular part of the code doesn't apply when no tariff is defined, and a second one that explains that the lack of this check previously produced a crash.
This way, the programmer reading it can know two things: That this is done because the remaining code doesn't apply in this particular situation, and it also fixes a bug.
You don't see any because by default it reboots instead of showing a BSOD.
My main experience is with Win2K which will BSOD by default, and indeed doesn't do it very often on my computer, but that's mostly because it barely has anything installed. I've had many things, from antiviruses to *games* and CD burning software make it fail to boot. Looks like lots of things want to install drivers for some bizarre reason.
But, even if it doesn't crash all that often, I still prefer Linux for stability for two reasons: Linux is a lot easier to recover from anything but really devastating damage, and it's fully under my control. I don't have games and audio CDs loading some crap into the kernel, so I can be a lot more sure that barring a disk failure, if it booted yesterday, it will boot tomorrow.
I still run Windows, as I develop for it, just inside vmware.
Ah, but you still don't get it. There's no single possible limit that's even barely acceptable because the circumstances change so much. Computers have wildly varying amounts of resources. This kind of limit is only effective when it's placed between two points: The maximum resource usage that can be considered normal, and the point where resource depletion becomes dangerous.
For instance. What is the maximum amount of memory a program should be able to use on a 1 GB computer? You find things like Notepad, which are tiny, and big games like Doom 3. Doom 3 will probably bring a 128MB computer down if you have enough swap space to make it start. How should it be determined whether it's safe or not to run it? Probably the only way of placing that kind of limits automatically is defining them per-application, like SELinux does. But SELinux is definitely not something for newbies. Sooner or later you run into it, and need to know exactly what it is, and how to fix it. Not good for general usage yet. BTW, I heard older Mac computers used to have this, and people hated it.
What is the maximum amount of current a house should be able to use? The answer lies somewhere between the maximum possible power draw with everything on, and what the wiring can handle. What works for your house might be too little or too much for mine.
How much of a medicine with potential bad side effects should you take? A doctor will determine that depending on your weight, history, sensibility to specific compounds. Sometimes you can't just say "everybody should take one tablet in the morning".
You can't limit things like number of processes without knowing what the machine is supposed to do. A limit of 30 processes might be perfectly fine on a firewall, and completely insane for a machine that runs Apache. Set it to 500, and it won't prevent the firewall from becoming unusable due to a fork bomb, which may very well consume all available memory.
Same goes for things like memory limits. Databases are expected to use up most of the RAM available in the machine, very unlike a computer used for word processing, where it's very rare for any single program to consume a large fraction of RAM.
This is in no way unique to computers. You can't apply the same current limits to a residential house and a factory.
Thing is, this kind of safety measures only work when you know the setting, the expected resource usage, and put limits in the right place. They're specific for each particular situation.
I still haven't tried XP properly, and here I see Win2K running pretty much everywhere. It's stable, well known, and works on fairly old computers. No need to upgrade to something newer.
Linux is different though. Some distributions stay fixed, some like Gentoo are gradually upgraded. But at least they don't suddenly switch to a new interface, start requiring twice the amount of memory and introduce restrictions that are only for Microsoft's benefit.
Part of what made X-Com so great for me is that it was turn based and tactical. It's not some kind of Quake where you rush in like mad, but a game where planning properly was very useful, and rushing was deadly. At least the demo has a limit on the amount of turns you can make. I hate it just for that.
It's also just the battle part of X-Com, which is another turn off. Research, construction, base expansion, UFO killing provided a nice change from having to shoot things all the time. You could even skip the shooting for a while, although obviously not without consequences.
Even worse, it removes all personality from your units. Now it's more like chess instead of a game where your units were very valuable, and got better with time. Every unit is the same, with the same weapons.
The turn based moving is different from X-Com, although I guess I could get used to it.
Linux is more secure than Windows, but that doesn't mean that you can't make it even more secure with some effort. The reason it's not already done is that some of the ways of adding more security make it less friendly.
For example, in Windows as it is, the moment you let execute anything they want on your computer, you can assume it's been breached, since practically everybody runs everything as Administrator on Windows. Not so on Linux.
Now, while giving somebody an user account on your Linux box doesn't let them to say, spy on you, or reformat your disk, it doesn't mean they can't find any way of annoying you. They could say, run a program that uses more memory than you have. So there are additional measures you can take to restrict the amount of memory they can use, for instance. This is one thing that can't be done automatically. For example, I know that on my specific computer no single program should ever need more than 128MB RAM, and that user bob shouldn't need more than 256MB total. You can't make this sort of restriction by default though, as there's no value that suitable for everybody.
While the default settings are already very good, some people want to place even more restrictions to make sure that for example a computer used by 20 people makes it as hard as possible for one idiot to annoy everybody else.
Why the heck would I pay otherwise? Medium to high quality is available for free from BitTorrent, often ripped from DVD. And without ads.
If they want me to pay, they can begin by offering more than the competition: Very good quality, good servers that allow me to use all the bandwidth available to me, and no ads.
BitTorrent doesn't work for streaming at all, as blocks are downloaded pretty much at random. In general I found that video becomes watchable only when you get 90-95% of the file. Before that the only useful thing you're likely to get out of a partial file is to be able to verify that it's what you want and that the quality is good enough.
That still doesn't mean you can't mess with the source on your Oracle server.
Let me try with a practical example. The cp command is very nice for batch files, but once in a while I'd like to see some kind of progress, like when copying large things around. Now, turns out I'm not the only one who noticed this, and Gentoo comes with a patched cp, which adds a parameter to show a progress bar.
So, will Oracle stop me from taking the source to cp, the patch from Gentoo, building my own copy and placing it in *my home folder*? Why would Oracle care about what random stuff I have lying around in/home/vadim? I'm fairly sure they don't.
Notice how I can still manage to benefit from Open Source without coding anything myself, and without touching one bit of the Oracle install. That's where I see the greatest value of OSS, not in replacing libc, but in being able to adapt things that are *almost* right, but not quite. And if somebody else likes it, well, even better.
Hello, no. VB needs to die, badly. And I say this as somebody paid to maintain a VB app.
VB is a nice toy when you need to whip out something quickly. But it's HORRIBLE for anything at all serious. Besides all of that, VB by itself is useless. No VB programmer uses just VB, the way a C programmer can code great things with just gcc and glibc. VB coders string together lots of pre-made objects. A VB database program for instance mostly consists of VB objects + ADO + perhaps a third party grid control + very uninteresting code that glues it all together.
Besides, MS killed VB anyway. VB6 is pretty much dead now, there won't be more versions of the language, and support is dropped. VB.NET has next to nothing to do with VB6, rather, it's a VB-like syntax for.NET, which I see as rather pointless, as absolutely nothing written in VB6 longer than a few lines works in VB.NET.
If you're interested in this kind of thing, support Mono. It's definitely a lot better designed, and Mono already made great progress in making it usable on Linux.
Because as somebody pointed out already, it's not a laptop, but a portable computer.
You don't get one of those to carry around with you all day. You get it when you want an easily movable computer. This is the thing to bring to a friend's home to play games without the hassle of having to mess with wires and having to lug a monitor.
Another reason is moving the computer around the house with you. If you live with other people it can be useful to be able to move into another room to find some peace and quiet, or perhaps the weather is good and you move to the balcony.
In those times, it must have been something quite scary.
Let's see, you're on a boat, going into battle. Everybody's naturally quite nervous already. And suddenly there's this really awful light that sets fire the sail, sets somebody's hair on fire, burns another one's face, blinds several people... The Greeks would probably not get it perfectly right on the first try, but could in the process manage to freak everybody out even before getting any practical results.
I bet that even without burning anything you could cause enough confusion with just blinding and burning people to make everybody on the boat think that the sky is falling. Nobody would want to dare look towards the light, so it could make things quite complicated.
What, you're saying the commercial industry is better organized? Ever tried to look for an uncommon product?
Sure, common stuff is widely available in both kinds. Say, MS Office, OpenOffice, etc. Big products with big visibility, who everybody at least heard about, and which are easy to see somewhere.
Now move into more confusing grounds. Let's say, I want a.NET component. Where can I find a say, good database bound grid control, which is cheap, stable, and has the (not many) features I need? This kind of thing is offered by several companies like say, Infragistics, but Infragistics makes one that can make webpages drop down from combo boxes!
In these grounds, you won't quickly find what you need. Many are expensive, some are buggy, there are several companies that offer different versions of the same stuff, some of them are very overkill, some will turn out not to be enough... basically, once you start looking for something not so widely used, finding exactly what you need becomes very hard.
In fact, I'd say that commercial products are at a disadvantage here. If I need to decide between BIND 8, BIND 9, djbdns and maradns, it's a matter of googling around, perhaps installing them, trying what works. Those are very public, it's easy to find DJB debating the merits of djbdns, source is available, bug reports can be checked in distributions.
Here's a practical example: I recently built BIND 9 on Gentoo. Looking at the compilation process I noticed something: It builds more or less like this: "gcc -O2 [...] -c foo.c -o foo.o >/dev/null 2>&1". Meaning, it suppresses any warnings due the build process! Instant bad impression. But that's a very good thing to be able to see. Can I ever find about bad coding practices in a commercial product? Not very likely.
Now take a proprietary component, like that data grid. Sure, I can get a demo version. But do I know that the company won't go bankrupt tomorrow? What if I pay thousands of $$$ and it turns out that late in the development process there's some unsolvable problem they refuse to fix? How about looking at the source to verify the quality? Some companies will sell you the source, but I don't have that much money to be able to pay for something that I might decide not to use after looking better at it!
The copying collector sounds really fast indeed, but I can immediately see two problems:
The first one is the need for a huge amount of memory. It would seem that the optimal way of dealing with this is restricting the amount of memory available to the application, otherwise any app can grow to the maximum size allowed by the VM, whether it needs it or not. But this sounds rather crappy to me, now every developer needs to figure out an right limit for the application.
The second is that performance is going to suck when garbage collection is performed. The slowdown could be a lot larger than a single execution of malloc/free, especially if virtual memory is taken into account. The unused half of the memory will often be quickly moved to swap by the VM, especially when the process grows to sizes in the order of hundreds of MB. Then GC will force bringing all that back to RAM, while possibly swapping the previously used half to disk. Exactly the same situation as what's described with heap allocation, but a whole lot worse.
It sounds to me that even if malloc is slower, it's a lot less inconvenient in applications like games, where something that is always slow can be taken into account, but where a sudden run of the GC could be really inconvenient.
But this is not my area of experience, so it's just what came to mind. Can anybody confirm or refute these suspicions?
Yeah, that's great. And you "only" need to pay $3900, $6000 or $25000 *per CPU* to upgrade if your site ever outgrows it. If you're going to use it for a website, only per CPU licensing is acceptable. Great plan, really. By the time you find Express won't cut it anymore, it'd probably take quite a while to migrate from it.
For most sites, your hardware probably costs less than the license. Hardly a good plan. I've used MS SQL Server, and it's good, but I have no idea why would anybody even WANT to run a blog from it. MySQL and postgres are perfectly suitable for that, and for the price of the software you could have a second server instead.
Besides, commercial software is often cleverly limited: You find that the next version/edition has just the stuff missing from the one you're using, but doesn't have ALL of the features you'd like. That's in the Real Expensive Edition, even if it's not all that technically complicated.
An example for Express: no backup, no replication. How are you going to backup your site's DB, take the server down, detach the database and make a copy?
This may be a bit pedantic, but you can press Ctrl+Alt+Del with one hand with all the keyboards I tried. This will work unless you have a keyboard that lacks the Ctrl and Alt keys on the right side. It even worked on my laptop, although it's certainly awkward, and is probably hard for children.
At least Ctrl+Alt+Del isn't something you expect to press often, and in sane programs keys can be remapped. But the laptop does have a problem, for instance you can't press "print screen" with one hand, because it's fn + insert. This is probably a greater problem than Ctrl+Alt+Del, because it's after all an OS feature, and could be worked around, but this combination appears to be handled by the laptop itself.
Could somebody explain what does this mean? What is involved in cloning, and how does it work?
Where does the "terror" group come in? What are they trying to do here, and why is it a "terror group" if they aren't uh, terrorizing anybody?
And most importantly, what is the point of making some random person pay for a CEO's phone usage? Is it an attack against the CEO, her, or just intended to create problems for Rogers?
Well, uber-muscled men kind of make sense. After all, if you play a barbarian that spends the day swinging a sword around, you wouldn't expect to look very weak, right?
On the other hand, I would say that huge breasts are probably a bad thing for running all day around and climbing on things. It'd be much more realistic if they looked more like the women that participated in American Gladiators.
Who said anything about POST? There's GET, which works just fine, is perfectly bookmarkable, and when using SSL, is sent encrypted.
By "web application" I mean specifically anything trying to act as an application, that is, trying to make the web fully stateful, beyond what's offered by GET/POST and cookies. Things like gmail, for instance. I have no problem with slashdot and google itself, where every page is perfectly bookmarkable, and pages don't suddenly change on their own.
And it seems you didn't get my comment about Java. I was talking about a *desktop* application, not about a backend. Say, like Azureus for instance. If the bank wants to provide a rich interface, what could be better than an actual application instead of something that tries to be one but can't manage due to the limitations of the web?
And why it makes little sense? I'm not talking about one or the other, but both. If you want to give easy access to anybody from anywhere, you do a website. If you want a full interface with no limitations, the web still gets nowhere near a decent desktop app.
It's nothing very strange, really. If I wanted to always have access to my email in all possible conditions, I'd install something like squirrelmail on my server. On the other hand, IMHO, no web interface beats a decent mail client (kmail, eudora, mutt, etc)
Er, since when there's any need for AJAX for banking? Mine could certainly work just fine without it. Should be perfectly doable with web forms and cookies.
Hint #1: I don't like web applications. Gmail is all nice and cool, but I don't give a damn about it, I'm very happy with my IMAP server.
Hint #2: *I* will decide what I want to bookmark and what not, thank you very much.
Hint #3: *I* will decide when I want to use the back button, instructions not to use it will never cease to annoy me.
And yeah, I know about the back button being a way to re-submit a transaction. But any bank should be sane enough not to process it again, which is exactly what I want: To go back to the previous page, without harmful consequences.
The particular problem with my bank comes in even before attempting a transfer. I have two accounts, numbered something like #2342342343 and #2342342532. The balance screen lets me see my balance. The transfer screen lets me make a transfer. However, since it's dumb enough to show me just account numbers, sometimes I want to go back to the previous screen (balance) to find out which is which. At this point the site complains that I shouldn't use the button, and forces me to start the process from the beginning, of course losing any data I had already entered in the form. All of this is before trying to confirm the transfer.
I fail to see why couldn't there be "balance.cgi", "transfer.cgi", and "rechage_cell_phone.cgi", and a complete lack of all this weird magic.
If the bank for whatever reason wants to offer a richer interface they can do it perfectly well with say, a Java application which won't have any of the problems all this AJAX mess has.
Well, I hate to break it for you, but after 12+ years, web sites have gone to crap.
Instead of a light page that contains exactly what it should and no more, now I need to deal with 50K Javascript monstruosities which break the back button, produce errors even in IE, and do utterly annoying things having the gall of popping up message boxes saying "Please wait until the page refreshes"!
Seriously, I tried configure a server on hp.com today. HP could have a normal page, but no, there's got to be some Javascript crap that dares to complain because I toggle options too fast on it! And my bank for some reason insists on that the "back" button is a no-no, and that I must deal with it like with old DOS applications that could only have one "window" at once. Heck, even in DOS they managed to do better than that!
The same crap also makes it impossible to bookmark multiple configurations, as the data isn't actually stored anywhere. Now I've got to print it, then go back to the page, and set the options the way I like them again. Isn't it great to have http://server.com/magic-script.asp in the URL instead of all that "foo=1&bar=3" mess?
Yup, things have evolved indeed.
Well, nice rebuttal. I'm definitely not going to pay even one cent for something described as "sort of sucks", especially with the "you can't do anything with it" part.
And while HDTV would indeed take quite a while to download, most things distributed on BitTorrent have much better quality than 320x200, and I can get that for free. Now when somebody starts offering high quality video for download, without tons of crap attached, then I'll gladly pay for it.
Both pretty bad, IMO.
The first is obviously bad because it says nothing new. Now, the second one is more interesting.
Are you returning because an error would happen if you didn't, or because with no tariff the rest of the code doesn't apply? IMO, it's the second thing that should be explained in the comment -- we aren't returning because it's a hack that prevents something from raising an exception, but because with this particular value set to null, the rest of the function doesn't apply.
Perhaps there should be two comments: One explaining that this particular part of the code doesn't apply when no tariff is defined, and a second one that explains that the lack of this check previously produced a crash.
This way, the programmer reading it can know two things: That this is done because the remaining code doesn't apply in this particular situation, and it also fixes a bug.
You don't see any because by default it reboots instead of showing a BSOD.
My main experience is with Win2K which will BSOD by default, and indeed doesn't do it very often on my computer, but that's mostly because it barely has anything installed. I've had many things, from antiviruses to *games* and CD burning software make it fail to boot. Looks like lots of things want to install drivers for some bizarre reason.
But, even if it doesn't crash all that often, I still prefer Linux for stability for two reasons: Linux is a lot easier to recover from anything but really devastating damage, and it's fully under my control. I don't have games and audio CDs loading some crap into the kernel, so I can be a lot more sure that barring a disk failure, if it booted yesterday, it will boot tomorrow.
I still run Windows, as I develop for it, just inside vmware.
Ah, but you still don't get it. There's no single possible limit that's even barely acceptable because the circumstances change so much. Computers have wildly varying amounts of resources. This kind of limit is only effective when it's placed between two points: The maximum resource usage that can be considered normal, and the point where resource depletion becomes dangerous.
For instance. What is the maximum amount of memory a program should be able to use on a 1 GB computer? You find things like Notepad, which are tiny, and big games like Doom 3. Doom 3 will probably bring a 128MB computer down if you have enough swap space to make it start. How should it be determined whether it's safe or not to run it? Probably the only way of placing that kind of limits automatically is defining them per-application, like SELinux does. But SELinux is definitely not something for newbies. Sooner or later you run into it, and need to know exactly what it is, and how to fix it. Not good for general usage yet. BTW, I heard older Mac computers used to have this, and people hated it.
What is the maximum amount of current a house should be able to use? The answer lies somewhere between the maximum possible power draw with everything on, and what the wiring can handle. What works for your house might be too little or too much for mine.
How much of a medicine with potential bad side effects should you take? A doctor will determine that depending on your weight, history, sensibility to specific compounds. Sometimes you can't just say "everybody should take one tablet in the morning".
Because there happens to be no sane default.
You can't limit things like number of processes without knowing what the machine is supposed to do. A limit of 30 processes might be perfectly fine on a firewall, and completely insane for a machine that runs Apache. Set it to 500, and it won't prevent the firewall from becoming unusable due to a fork bomb, which may very well consume all available memory.
Same goes for things like memory limits. Databases are expected to use up most of the RAM available in the machine, very unlike a computer used for word processing, where it's very rare for any single program to consume a large fraction of RAM.
This is in no way unique to computers. You can't apply the same current limits to a residential house and a factory.
Thing is, this kind of safety measures only work when you know the setting, the expected resource usage, and put limits in the right place. They're specific for each particular situation.
I would say wikis seem to provide most of that.
And if not, it'd be always possible to customize one for the specific requirements. I don't see any fundamental technical problems here, anyway.
I still haven't tried XP properly, and here I see Win2K running pretty much everywhere. It's stable, well known, and works on fairly old computers. No need to upgrade to something newer.
Linux is different though. Some distributions stay fixed, some like Gentoo are gradually upgraded. But at least they don't suddenly switch to a new interface, start requiring twice the amount of memory and introduce restrictions that are only for Microsoft's benefit.
Tried the demo, didn't like it.
Part of what made X-Com so great for me is that it was turn based and tactical. It's not some kind of Quake where you rush in like mad, but a game where planning properly was very useful, and rushing was deadly. At least the demo has a limit on the amount of turns you can make. I hate it just for that.
It's also just the battle part of X-Com, which is another turn off. Research, construction, base expansion, UFO killing provided a nice change from having to shoot things all the time. You could even skip the shooting for a while, although obviously not without consequences.
Even worse, it removes all personality from your units. Now it's more like chess instead of a game where your units were very valuable, and got better with time. Every unit is the same, with the same weapons.
The turn based moving is different from X-Com, although I guess I could get used to it.
Linux is more secure than Windows, but that doesn't mean that you can't make it even more secure with some effort. The reason it's not already done is that some of the ways of adding more security make it less friendly.
For example, in Windows as it is, the moment you let execute anything they want on your computer, you can assume it's been breached, since practically everybody runs everything as Administrator on Windows. Not so on Linux.
Now, while giving somebody an user account on your Linux box doesn't let them to say, spy on you, or reformat your disk, it doesn't mean they can't find any way of annoying you. They could say, run a program that uses more memory than you have. So there are additional measures you can take to restrict the amount of memory they can use, for instance. This is one thing that can't be done automatically. For example, I know that on my specific computer no single program should ever need more than 128MB RAM, and that user bob shouldn't need more than 256MB total. You can't make this sort of restriction by default though, as there's no value that suitable for everybody.
While the default settings are already very good, some people want to place even more restrictions to make sure that for example a computer used by 20 people makes it as hard as possible for one idiot to annoy everybody else.
Yup, it's exactly what I want.
Why the heck would I pay otherwise? Medium to high quality is available for free from BitTorrent, often ripped from DVD. And without ads.
If they want me to pay, they can begin by offering more than the competition: Very good quality, good servers that allow me to use all the bandwidth available to me, and no ads.
BitTorrent doesn't work for streaming at all, as blocks are downloaded pretty much at random. In general I found that video becomes watchable only when you get 90-95% of the file. Before that the only useful thing you're likely to get out of a partial file is to be able to verify that it's what you want and that the quality is good enough.
That still doesn't mean you can't mess with the source on your Oracle server.
/home/vadim? I'm fairly sure they don't.
Let me try with a practical example. The cp command is very nice for batch files, but once in a while I'd like to see some kind of progress, like when copying large things around. Now, turns out I'm not the only one who noticed this, and Gentoo comes with a patched cp, which adds a parameter to show a progress bar.
So, will Oracle stop me from taking the source to cp, the patch from Gentoo, building my own copy and placing it in *my home folder*? Why would Oracle care about what random stuff I have lying around in
Notice how I can still manage to benefit from Open Source without coding anything myself, and without touching one bit of the Oracle install. That's where I see the greatest value of OSS, not in replacing libc, but in being able to adapt things that are *almost* right, but not quite. And if somebody else likes it, well, even better.
foreach NovellWorker Worker in CurrentlyHired {
if( Worker.TooOld || Worker.EarnsTooMuch || Worker.HatedByBobInAccounting ) {
Worker.Release();
Worker.Dispose();
}
}
Hello, no. VB needs to die, badly. And I say this as somebody paid to maintain a VB app.
.NET, which I see as rather pointless, as absolutely nothing written in VB6 longer than a few lines works in VB.NET.
VB is a nice toy when you need to whip out something quickly. But it's HORRIBLE for anything at all serious. Besides all of that, VB by itself is useless. No VB programmer uses just VB, the way a C programmer can code great things with just gcc and glibc. VB coders string together lots of pre-made objects. A VB database program for instance mostly consists of VB objects + ADO + perhaps a third party grid control + very uninteresting code that glues it all together.
Besides, MS killed VB anyway. VB6 is pretty much dead now, there won't be more versions of the language, and support is dropped. VB.NET has next to nothing to do with VB6, rather, it's a VB-like syntax for
If you're interested in this kind of thing, support Mono. It's definitely a lot better designed, and Mono already made great progress in making it usable on Linux.
Because as somebody pointed out already, it's not a laptop, but a portable computer.
You don't get one of those to carry around with you all day. You get it when you want an easily movable computer. This is the thing to bring to a friend's home to play games without the hassle of having to mess with wires and having to lug a monitor.
Another reason is moving the computer around the house with you. If you live with other people it can be useful to be able to move into another room to find some peace and quiet, or perhaps the weather is good and you move to the balcony.
In those times, it must have been something quite scary.
Let's see, you're on a boat, going into battle. Everybody's naturally quite nervous already. And suddenly there's this really awful light that sets fire the sail, sets somebody's hair on fire, burns another one's face, blinds several people... The Greeks would probably not get it perfectly right on the first try, but could in the process manage to freak everybody out even before getting any practical results.
I bet that even without burning anything you could cause enough confusion with just blinding and burning people to make everybody on the boat think that the sky is falling. Nobody would want to dare look towards the light, so it could make things quite complicated.
What, you're saying the commercial industry is better organized? Ever tried to look for an uncommon product?
.NET component. Where can I find a say, good database bound grid control, which is cheap, stable, and has the (not many) features I need? This kind of thing is offered by several companies like say, Infragistics, but Infragistics makes one that can make webpages drop down from combo boxes!
Sure, common stuff is widely available in both kinds. Say, MS Office, OpenOffice, etc. Big products with big visibility, who everybody at least heard about, and which are easy to see somewhere.
Now move into more confusing grounds. Let's say, I want a
In these grounds, you won't quickly find what you need. Many are expensive, some are buggy, there are several companies that offer different versions of the same stuff, some of them are very overkill, some will turn out not to be enough... basically, once you start looking for something not so widely used, finding exactly what you need becomes very hard.
In fact, I'd say that commercial products are at a disadvantage here. If I need to decide between BIND 8, BIND 9, djbdns and maradns, it's a matter of googling around, perhaps installing them, trying what works. Those are very public, it's easy to find DJB debating the merits of djbdns, source is available, bug reports can be checked in distributions.
Here's a practical example: I recently built BIND 9 on Gentoo. Looking at the compilation process I noticed something: It builds more or less like this: "gcc -O2 [...] -c foo.c -o foo.o >/dev/null 2>&1". Meaning, it suppresses any warnings due the build process! Instant bad impression. But that's a very good thing to be able to see. Can I ever find about bad coding practices in a commercial product? Not very likely.
Now take a proprietary component, like that data grid. Sure, I can get a demo version. But do I know that the company won't go bankrupt tomorrow? What if I pay thousands of $$$ and it turns out that late in the development process there's some unsolvable problem they refuse to fix? How about looking at the source to verify the quality? Some companies will sell you the source, but I don't have that much money to be able to pay for something that I might decide not to use after looking better at it!
The copying collector sounds really fast indeed, but I can immediately see two problems:
The first one is the need for a huge amount of memory. It would seem that the optimal way of dealing with this is restricting the amount of memory available to the application, otherwise any app can grow to the maximum size allowed by the VM, whether it needs it or not. But this sounds rather crappy to me, now every developer needs to figure out an right limit for the application.
The second is that performance is going to suck when garbage collection is performed. The slowdown could be a lot larger than a single execution of malloc/free, especially if virtual memory is taken into account. The unused half of the memory will often be quickly moved to swap by the VM, especially when the process grows to sizes in the order of hundreds of MB. Then GC will force bringing all that back to RAM, while possibly swapping the previously used half to disk. Exactly the same situation as what's described with heap allocation, but a whole lot worse.
It sounds to me that even if malloc is slower, it's a lot less inconvenient in applications like games, where something that is always slow can be taken into account, but where a sudden run of the GC could be really inconvenient.
But this is not my area of experience, so it's just what came to mind. Can anybody confirm or refute these suspicions?