Linux will use swap sometimes even if you don't fill up your RAM. It can swap out idle programs and use the recovered RAM for file caching which gives a performance boost to the file system.
Conversely, if you have enough ram for file caching and running applications, then you will get a performance boost from disabling swap (because applications would be faster if they weren't ever swapped out).
Should congestion subsequently occur, traffic with a higher priority is handled first, followed by lower priority (and this is not a throttle to X speed)
Reading this, my first reaction was to worry about starvation (if my packets are marked "low priority", my bandwidth dropping to approximately zero), but I think this could only happen if the users that don't have a high priority are completely maxing out the connection.
No, corporations should make money. They shouldn't be (by themselves) responsible to other "communities" than to their shareholders. The reason is that making money is why they do exist; to behave differently is expecting them to behave irrationally.
That's a narrow view. First of all, if the company isn't publicly traded, then its job is to do whatever the owners want, which is frequently more complex than "make as much money as possible". So if we're talking about publicly traded companies, wouldn't companies benefit from positive public opinion? The company's job isn't just to make money this year--it's to seek long term profitability, and that may involve "being responsible".
On another note, these companies, even the public ones, are run by their officers. Those officers are people with principles, whatever they be, and I would hope that these people follow their principles, as well as do their best to lead their company to success.
Haskell only evaluates what it has to -- this program for example which looks up the 3000th element of the sequence will not compute the complexCalculation on the 2999 fibbonaccis before hand like a traditional program would: (parMap rnf) complexCalculation (fibs 1 1) !! 3000
Actually, I think you're confusing two concepts. parMap is strict--it does not return until it evaluates the entire list. So in fact, even the following simple line of code will never return:
(parMap rnf id [0..]) !! 1
If you think about it, it makes sense--if you aren't going to need all the values, why bother parallelizing their calculation? Why not just not calculate them? There is a lazier alternative--parBuffer works like parMap (and will still evaluate the list from start to finish), but will evaluate n elements at a time, so the following doesn't run forever:
(parBuffer 8 rnf id [0..]) !! 1
This will map the function "id" (or any function you choose) over a list, evaluating 8 elements at a time (and it will only evaluate as far as it needs to). But if you really don't need to evaluate all the elements, it's much more efficient (and lazy) to just use "map" instead of "parBuffer ".
Do you have any references for your assertion that we are all mentally ill? Forgive me for being skeptical, I do think "that's life."
Could you explain the brain differences you allude to between healthy and unhealthy people? I have a hard time accepting your premise that, as I see it, is that most of us are in an unnatural state of being screwed up.
I hate to say it, but that's the biggest thing I don't like about Haskell. Whenever I ask a question in their IRC channel or looked something up online, I'm referred to a paper. I felt like to do anything interesting in the language, I had to be an academic or scientist. I think there's a dearth of simple tutorials/recipes for Haskell.
Learning Slackware has certainly served me well. I think it gives the most rounded education of how a system works--it's said that "when you learn Red Hat, you know Red Hat. When you learn Slackware, you know Linux." Learning how to install software and run servers in Slackware, I learned a bunch. (And yes, the knowledge you take away from that is more generally applicable than what you learn from Gentoo.)
What an idiot. "HDs have platter capacity limits that rarely go up".
What a jerk. You don't need to call someone an idiot because he phrased something badly--his point was mainly correct--platter density doesn't increase that fast, and the max number of platters in a 3.5" bay doesn't increase at all, for the most part. (The internet doesn't make people any less fallible, or make them enjoy being called names any more.)
You can set up your machine this way right now if you want. Just put/home on a traditional disk and have the kernel and maybe a couple more trees of system files on an SSD. This way your SSD doesn't wear out as fast and you have super-quick read access to the kernel and settings.
I'd just like to point out that you don't really need to put the kernel on the SSD--it's loaded once, and stays in memory after that. Applications and libraries would help a lot more. And I suspect that even the benefit of that would be dwarfed by the benefit of having enough memory that no swap space is needed. And if you do need swap, putting it on the SSD would likely also help a lot (because with swap/memory, access time makes all the difference). I bought 4GB of memory for my laptop, and it makes a huge difference with regard to application latency.
When I took my computer forensics class they showed that you could use a hex editor on a zero wiped floppy disk and recover most of the data that was on it previously.
Do you know how this is done? Because if one just uses a hex editor, wouldn't the hex editor simply see a disk full of nulls?
Thanks. I like the second possibility--if I'm parsing DB table names, then the regex match time is not a bottleneck, and it would not normally occur to me to write a line twice, even when it's the most readable way to do it.
I recently had a similar problem, and as a result, wrote a script in perl instead of python: ... elsif ($str =~/($release)\./) { do something with $1;}
If someone could tell me how to do this nicely in python, I'll buy you a beer (if you live near me).
I think string manipulation is an area where I've found that Python just doesn't compare to perl or ruby. It is so much more annoying to write this in python: if ($str =~/(.*)@/) { print $1; }
And no, I'm not afraid to write three more lines of code, but I hate moving logic away from the place where it's applied, just to support the limitations of a language.
Interesting. I guess the FSF's point of view is that such documentation is part of the "work" that constitutes a piece of software. I'm not sure I agree, but life's like that. Sure, it's nice to write build scripts (and you should release them if they are already written), but I think it's merritless to say that my knowledge is part of the derived work.
Too many software projects rely on only one or a very few team members who know how to build and assemble the final released product. Such knowledge centralization not only creates engineering redundancy issues, but it also endangers GPL compliance, which requires you to provide build scripts.
On a literal, hair-splitting note, I'm sure build scripts do not have to be provided if the build guru in question has not actually scripted the build. After all, if no build scripts exist, there is simply no grounds to claim that they must be distributed. Copyright/the GPL do not cover things that do not exist, as far as I can tell.
I'm going to get troll-rated into oblivion for this, but how is it different from few dozen window mangers for Linux - arguably one of the main reasons why the community is so fragmented and the interface standard still lagging behind proprietary systems?
(I'm going to get modded 'feeding the trolls' for this, but) So? Yes, the community is fragmented. Who does that hurt? This is a tired old argument, but you are starting off with some value assumptions that I just don't think make sense.
Well, part of the big joke is that a game, once cracked, a game effectively has no DRM, no nag screens, no internet phoning home, no CD-ROM checks, etc. A legally purchased game continues to require these things, and over the long run, is more annoying than a cracked copy. This has been a problem with music, too, because an MP3 with no DRM will play on any device (which is a lot more than an encrypted AAC file).
I treat my R61 more more roughly than I've ever treated a laptop (maybe partly because it's thinner and lighter), and it just feels like the machine can take it. It feels solid. (Knock on wood--now it'll probably fall apart the next time I feel like carrying the opened laptop by the screen.)
Linux will use swap sometimes even if you don't fill up your RAM. It can swap out idle programs and use the recovered RAM for file caching which gives a performance boost to the file system.
Conversely, if you have enough ram for file caching and running applications, then you will get a performance boost from disabling swap (because applications would be faster if they weren't ever swapped out).
Should congestion subsequently occur, traffic with a higher priority is handled first, followed by lower priority (and this is not a throttle to X speed)
Reading this, my first reaction was to worry about starvation (if my packets are marked "low priority", my bandwidth dropping to approximately zero), but I think this could only happen if the users that don't have a high priority are completely maxing out the connection.
I disagree. It's a culture problem. It seems that violence is becoming more "cool" in the UK of late, and Youtube does not want to be a part of that.
No, corporations should make money. They shouldn't be (by themselves) responsible to other "communities" than to their shareholders. The reason is that making money is why they do exist; to behave differently is expecting them to behave irrationally.
That's a narrow view. First of all, if the company isn't publicly traded, then its job is to do whatever the owners want, which is frequently more complex than "make as much money as possible". So if we're talking about publicly traded companies, wouldn't companies benefit from positive public opinion? The company's job isn't just to make money this year--it's to seek long term profitability, and that may involve "being responsible".
On another note, these companies, even the public ones, are run by their officers. Those officers are people with principles, whatever they be, and I would hope that these people follow their principles, as well as do their best to lead their company to success.
Sorry, I got the syntax wrong. The working line of code is syntactically a little strange:
(parBuffer 4 rwhnf $ map id [0..]) !! 1
Haskell only evaluates what it has to -- this program for example which looks up the 3000th element of the sequence will not compute the complexCalculation on the 2999 fibbonaccis before hand like a traditional program would:
(parMap rnf) complexCalculation (fibs 1 1) !! 3000
Actually, I think you're confusing two concepts. parMap is strict--it does not return until it evaluates the entire list. So in fact, even the following simple line of code will never return:
(parMap rnf id [0..]) !! 1
If you think about it, it makes sense--if you aren't going to need all the values, why bother parallelizing their calculation? Why not just not calculate them? There is a lazier alternative--parBuffer works like parMap (and will still evaluate the list from start to finish), but will evaluate n elements at a time, so the following doesn't run forever:
(parBuffer 8 rnf id [0..]) !! 1
This will map the function "id" (or any function you choose) over a list, evaluating 8 elements at a time (and it will only evaluate as far as it needs to). But if you really don't need to evaluate all the elements, it's much more efficient (and lazy) to just use "map" instead of "parBuffer ".
Do you have any references for your assertion that we are all mentally ill? Forgive me for being skeptical, I do think "that's life."
Could you explain the brain differences you allude to between healthy and unhealthy people? I have a hard time accepting your premise that, as I see it, is that most of us are in an unnatural state of being screwed up.
I hate to say it, but that's the biggest thing I don't like about Haskell. Whenever I ask a question in their IRC channel or looked something up online, I'm referred to a paper. I felt like to do anything interesting in the language, I had to be an academic or scientist. I think there's a dearth of simple tutorials/recipes for Haskell.
Learning Slackware has certainly served me well. I think it gives the most rounded education of how a system works--it's said that "when you learn Red Hat, you know Red Hat. When you learn Slackware, you know Linux." Learning how to install software and run servers in Slackware, I learned a bunch. (And yes, the knowledge you take away from that is more generally applicable than what you learn from Gentoo.)
You don't have to explain assembly language to a jury; you get an expert witness to testify.
I'd be more concerned that if there were serious flaws (and there may be), you couldn't find an expert witness that's good enough to find them.
What an idiot. "HDs have platter capacity limits that rarely go up".
What a jerk. You don't need to call someone an idiot because he phrased something badly--his point was mainly correct--platter density doesn't increase that fast, and the max number of platters in a 3.5" bay doesn't increase at all, for the most part. (The internet doesn't make people any less fallible, or make them enjoy being called names any more.)
You can set up your machine this way right now if you want. Just put /home on a traditional disk and have the kernel and maybe a couple more trees of system files on an SSD. This way your SSD doesn't wear out as fast and you have super-quick read access to the kernel and settings.
I'd just like to point out that you don't really need to put the kernel on the SSD--it's loaded once, and stays in memory after that. Applications and libraries would help a lot more. And I suspect that even the benefit of that would be dwarfed by the benefit of having enough memory that no swap space is needed. And if you do need swap, putting it on the SSD would likely also help a lot (because with swap/memory, access time makes all the difference). I bought 4GB of memory for my laptop, and it makes a huge difference with regard to application latency.
Does anyone know, off-hand, a way to query a sata disk for at least a count of how many sectors have been re-allocated, if not an actual map of them?
In linux, you can use smartctl (from smartmontools, I think)-- /dev/sda, and look for "Reallocated_Sector_Ct" in the output.
smartctl --all
When I took my computer forensics class they showed that you could use a hex editor on a zero wiped floppy disk and recover most of the data that was on it previously.
Do you know how this is done? Because if one just uses a hex editor, wouldn't the hex editor simply see a disk full of nulls?
Thanks. I like the second possibility--if I'm parsing DB table names, then the regex match time is not a bottleneck, and it would not normally occur to me to write a line twice, even when it's the most readable way to do it.
If you use Ruby, people call you by your initials, not your name.
Thank you for that wonderful post :)
I recently had a similar problem, and as a result, wrote a script in perl instead of python: /($release)\./) { do something with $1;}
...
elsif ($str =~
If someone could tell me how to do this nicely in python, I'll buy you a beer (if you live near me).
Pffft, Perl is perfectly good for anything that needs string manipulation and such.
Unfortunately for Perl, so is Python.
I think string manipulation is an area where I've found that Python just doesn't compare to perl or ruby. It is so much more annoying to write this in python: /(.*)@/) { print $1; }
if ($str =~
And no, I'm not afraid to write three more lines of code, but I hate moving logic away from the place where it's applied, just to support the limitations of a language.
Interesting. I guess the FSF's point of view is that such documentation is part of the "work" that constitutes a piece of software. I'm not sure I agree, but life's like that. Sure, it's nice to write build scripts (and you should release them if they are already written), but I think it's merritless to say that my knowledge is part of the derived work.
Too many software projects rely on only one or a very few team members who know how to build and assemble the final released product. Such knowledge centralization not only creates engineering redundancy issues, but it also endangers GPL compliance, which requires you to provide build scripts.
On a literal, hair-splitting note, I'm sure build scripts do not have to be provided if the build guru in question has not actually scripted the build. After all, if no build scripts exist, there is simply no grounds to claim that they must be distributed. Copyright/the GPL do not cover things that do not exist, as far as I can tell.
Thank you :)
I'm going to get troll-rated into oblivion for this, but how is it different from few dozen window mangers for Linux - arguably one of the main reasons why the community is so fragmented and the interface standard still lagging behind proprietary systems?
(I'm going to get modded 'feeding the trolls' for this, but) So? Yes, the community is fragmented. Who does that hurt? This is a tired old argument, but you are starting off with some value assumptions that I just don't think make sense.
I thought the same thing, but the domain was registered in 2000, 6 years before the first Mistborn was released.
The current registrants may have bought tineye.com from its previous owners.
Well, part of the big joke is that a game, once cracked, a game effectively has no DRM, no nag screens, no internet phoning home, no CD-ROM checks, etc. A legally purchased game continues to require these things, and over the long run, is more annoying than a cracked copy. This has been a problem with music, too, because an MP3 with no DRM will play on any device (which is a lot more than an encrypted AAC file).
I treat my R61 more more roughly than I've ever treated a laptop (maybe partly because it's thinner and lighter), and it just feels like the machine can take it. It feels solid. (Knock on wood--now it'll probably fall apart the next time I feel like carrying the opened laptop by the screen.)