That document is called a HIG (Human Interface Guidelines) and most of today's systems or desktop environments have one; see the wiki page for a list of references. The documents are very good and everyone who works on UIs must read them.
I think you missed the point. The problem is that if the mouse is moved by accident [in that place], the cursor will be shown and the "batman highlighter" will also become active.
This is similar to the problem of accidentally moving the mouse by letting the hand rest on the touchpad (the touch of the palm is treated as a "mouse moved" event).
I think the solution is to insert a small delay; I am using it myself, but in a different context (a 290 ms delay solved my problem).
How about that? OpenSuse offers an alternative approach to install a program; besides the typical package manager tool and the command line there is a 1-click installer.
Will there be a problem when the hosts file gets large? Each time a connection is established the system will have to see if the name is in the list or not.
The network stack (or whatever it is that tries o find the match) is not a DBMS, how does it deal with a list that keeps growing all the time?
Although it originally deals with blue screens, you can use the same strategy to narrow the problem down to a particular process or driver.
Other posters' suggestions about using Process Monitor and Process Explorer are good ones, but they fail to take into account that these tools only show processes running in user mode. If the slow-down is caused by a driver that runs in kernel mode, then you will have to turn off some drivers, reboot - and see the effect.
Note that even if a driver is not loaded automatically when the system boots, it can be loaded later by a user mode process.
This book will teach you how to get a clear picture of what you want to build before you build it; it will also explain what the price of not doing so is.
This is a really good guide on how to write software requirements, I must also point out that most of the ideas there can be applied in other cases where planning is needed (ex: going shopping, organizing a party, moving out, etc).
Indeed, this is a great book, it has filled the blanks left after graduating the university.
I wish I read it during that time [or earlier], so that I knew then which questions to ask, where to dig, etc.
I think it is a good idea to read it prior to learning assembly programming - if you do that, you won't be intimidated by the apparent complexity of such code.
(Note: in case you're already afraid of it, the book is not about assembly programming)
I once wrote such a story - On humans, personalities, software and hardware. Note that I am not qualified to write this kind of material, so this text is different from what you expect to find.
I described the human as a layered system with interfaces between its subsystems and the surrounding world.
What is so technically challenging about a fake SIM card?
A SIM card is a smart card, which is a computer with a processor, file system and ACLs that are enforced.
Some files on the SIM card cannot be read, therefore you cannot make a clone of a SIM (it is so by design, once the card is not in the personalization phase anymore), even if you have the transport key.
If someone can clone a SIM it means they were able to get past the smart card security mechanisms - which is a big deal.
But.. it is not, in this case they simply bought cards using false documents.
If it complies with the GPL, it means that the source code for whatever they changed there must be available. Therefore anyone will be able to take a look at it and remove the offending parts.
If they won't offer the source code, how will they be forced to reveal it? In other words, if China violates the GPL, what will be done?
Not all routers have static DHCP, so this won't work.
Getting back to the original issue - I am running Opensuse 11 and I was able to create two profiles for my home network, one uses DHCP, the other one a manually entered IP.
I don't remember the exact steps to do this but I was just clicking the controls on the screen that had names suggesting me they do what I want them to.
You're right, in my message I sounds as if the guy is totally off the hook; my intention was to make contrast with the original poster's "this guy really screwed up" tone.
I am not qualified to judge what went wrong there, we don't know how they're running their company. Where I work, we have a document which clearly states who gets orders from whom and who is responsible when a problem occurs in various areas.
The reason I am biased towards blaming it on the "folks above" is because they didn't anticipate such a thing. Had they done so, the guy would have thought twice (perhaps it crossed his mind the idea wasn't perfect but for some reasons he decided not to mention that) if it was clearly stated somewhere that he would be responsible for the consequences.
It is a typical problem in companies - people think that "it is obvious to the others that X works this way or that Y is responsible for Z", but it is not so. Well-written rules can do wonders (as long as everyone knows where they are written so that they can read them too).
What you say in your message is correct. However, the guy in question is not yet a professional, the OP himself called him a "french fry maker". Will he ever become a pro? It also depends on how well he is trained by the more qualified colleagues.
If someone "above" ordered him to do this - they are to be held responsible.
If he was so "french fry cheap", why was he allowed access to such an important part of the system and allowed to make such dramatic changes?
Why wasn't there someone to supervise him and review his plans before implementing them?
To be honest, I don't see him that guilty; after all, he was just following orders (see the documentary on human behaviour based on an experiment by Milgram).
children and lying,
being able to openly and strongly disagree with someone is a sign of respect. Its a also a sign of trust, a sign that I believe my relationship with them will not change in a negative way just because I have a different opinion (I accidentally lost the Slashdot thread that discussed this article)
It is better to use a regexp to make sure the string is in the format X.Y.Z.W; afterwards use numerical comparison to verify that the numbers are between 0 and 255, etc.
The proposed regexp is long and difficult to maintain.
I'm surprised not to find a single reference to Samsung hard disks in this discussion.
From what I know (can't find the source, it was a magazine I read a few years ago), Samsung is one manufacturer that builds all the components inside the HDD by itself. As a result the disks are more reliable since they don't contain stuff from other parties and it is easier to put things together.
In my geographical area Samsung HDDs come with the longest warranty period (3 years vs 1.5 years in the case of WD or Seagate).
A coldboot attack is trivial on paper and in a controlled environment, but not in real world scenarios.
First you need to get hold of an unattended machine that works and the disks are mounted. You can minimize the probability of that by enforcing certain policies such as never leaving the machine unsupervised, closing access to the computer's case or even locking the case, etc.
Trust me, cold boot attacks are not the greatest concern.
Can I get in touch with your friend? I would like to take a look at his work, because I am planning to convince some folks in a university that Python is a much better choice for a "first language" than C or Pascal is (what they currently use).
You can find contact information on my site, or just reply to this comment providing some coordinates.
I think this is partly caused by school teachers who failed to get the message across as we were young.
I always had a problem with mathematics, I had a stomach ache before [almost] each math class as I was in high school and I rarely felt comfortable during the lessons.
Later I went to a technical university and I got better at maths, because my _colleagues_ were able to explain the concepts to me much better than some of the _teachers_ in school did. Only then I was able to say "I don't even see the code, I see blonde, brunette...". I wonder what would happen if I actually understood things in school back then.
I know many people who are literally afraid of maths or a subset of it, some have a lighter form - "I am not that good at mathematics", I am sure that many of these cases are caused by teachers who were not able to explain things properly. [Perhaps because they dealt with an audience in which the degree of "mathability" varied from "very low" to "very high" and they felt it was OK to ignore the "very low" part].
That document is called a HIG (Human Interface Guidelines) and most of today's systems or desktop environments have one; see the wiki page for a list of references. The documents are very good and everyone who works on UIs must read them.
I think you missed the point. The problem is that if the mouse is moved by accident [in that place], the cursor will be shown and the "batman highlighter" will also become active.
This is similar to the problem of accidentally moving the mouse by letting the hand rest on the touchpad (the touch of the palm is treated as a "mouse moved" event).
I think the solution is to insert a small delay; I am using it myself, but in a different context (a 290 ms delay solved my problem).
People who write books about managing software projects have a hard time coordinating the efforts of 50 programmers.
People who read such books have a hard time coordinating 10 programmers.
You expect that the military, with far less experience in the field, to be able to successfully manage *four hundred* programmers?!
The cause of that is not necessarily the fact that they're not in the army; perhaps they were doing a sloppy job?
How about that? OpenSuse offers an alternative approach to install a program; besides the typical package manager tool and the command line there is a 1-click installer.
1. go to their Software search page
2. find the program you want
3. click the "Install" button
This will start the package manager and from that point it is a matter of authenticating and clicking "Next" a couple of times.
Hi, I'd like to read that paper; can you share it?
Thanks
Will there be a problem when the hosts file gets large? Each time a connection is established the system will have to see if the name is in the list or not.
The network stack (or whatever it is that tries o find the match) is not a DBMS, how does it deal with a list that keeps growing all the time?
Take a look at this tutorial: http://www.lazybit.com/index.php/2008/02/22/fix_blue_screen_death_strategy_part_two?blog=2
Although it originally deals with blue screens, you can use the same strategy to narrow the problem down to a particular process or driver.
Other posters' suggestions about using Process Monitor and Process Explorer are good ones, but they fail to take into account that these tools only show processes running in user mode. If the slow-down is caused by a driver that runs in kernel mode, then you will have to turn off some drivers, reboot - and see the effect.
Note that even if a driver is not loaded automatically when the system boots, it can be loaded later by a user mode process.
Store them on a smart card or a token. The technology has been in use for many years and is reliable.
What about people who rely on screen readers?
This book will teach you how to get a clear picture of what you want to build before you build it; it will also explain what the price of not doing so is.
This is a really good guide on how to write software requirements, I must also point out that most of the ideas there can be applied in other cases where planning is needed (ex: going shopping, organizing a party, moving out, etc).
http://www.amazon.com/Software-Requirements-Second-Pro-Best-Practices/dp/0735618798/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230202804&sr=8-1
Indeed, this is a great book, it has filled the blanks left after graduating the university.
I wish I read it during that time [or earlier], so that I knew then which questions to ask, where to dig, etc.
I think it is a good idea to read it prior to learning assembly programming - if you do that, you won't be intimidated by the apparent complexity of such code.
(Note: in case you're already afraid of it, the book is not about assembly programming)
I once wrote such a story - On humans, personalities, software and hardware. Note that I am not qualified to write this kind of material, so this text is different from what you expect to find.
I described the human as a layered system with interfaces between its subsystems and the surrounding world.
A SIM card is a smart card, which is a computer with a processor, file system and ACLs that are enforced.
Some files on the SIM card cannot be read, therefore you cannot make a clone of a SIM (it is so by design, once the card is not in the personalization phase anymore), even if you have the transport key.
If someone can clone a SIM it means they were able to get past the smart card security mechanisms - which is a big deal.
But.. it is not, in this case they simply bought cards using false documents.
If it complies with the GPL, it means that the source code for whatever they changed there must be available. Therefore anyone will be able to take a look at it and remove the offending parts.
If they won't offer the source code, how will they be forced to reveal it? In other words, if China violates the GPL, what will be done?
Not all routers have static DHCP, so this won't work.
Getting back to the original issue - I am running Opensuse 11 and I was able to create two profiles for my home network, one uses DHCP, the other one a manually entered IP.
I don't remember the exact steps to do this but I was just clicking the controls on the screen that had names suggesting me they do what I want them to.
You're right, in my message I sounds as if the guy is totally off the hook; my intention was to make contrast with the original poster's "this guy really screwed up" tone.
I am not qualified to judge what went wrong there, we don't know how they're running their company. Where I work, we have a document which clearly states who gets orders from whom and who is responsible when a problem occurs in various areas.
The reason I am biased towards blaming it on the "folks above" is because they didn't anticipate such a thing. Had they done so, the guy would have thought twice (perhaps it crossed his mind the idea wasn't perfect but for some reasons he decided not to mention that) if it was clearly stated somewhere that he would be responsible for the consequences.
It is a typical problem in companies - people think that "it is obvious to the others that X works this way or that Y is responsible for Z", but it is not so. Well-written rules can do wonders (as long as everyone knows where they are written so that they can read them too).
What you say in your message is correct. However, the guy in question is not yet a professional, the OP himself called him a "french fry maker". Will he ever become a pro? It also depends on how well he is trained by the more qualified colleagues.
If someone "above" ordered him to do this - they are to be held responsible.
If he was so "french fry cheap", why was he allowed access to such an important part of the system and allowed to make such dramatic changes?
Why wasn't there someone to supervise him and review his plans before implementing them?
To be honest, I don't see him that guilty; after all, he was just following orders (see the documentary on human behaviour based on an experiment by Milgram).
It is better to use a regexp to make sure the string is in the format X.Y.Z.W; afterwards use numerical comparison to verify that the numbers are between 0 and 255, etc. The proposed regexp is long and difficult to maintain.
I'm surprised not to find a single reference to Samsung hard disks in this discussion.
From what I know (can't find the source, it was a magazine I read a few years ago), Samsung is one manufacturer that builds all the components inside the HDD by itself. As a result the disks are more reliable since they don't contain stuff from other parties and it is easier to put things together.
In my geographical area Samsung HDDs come with the longest warranty period (3 years vs 1.5 years in the case of WD or Seagate).
A coldboot attack is trivial on paper and in a controlled environment, but not in real world scenarios.
First you need to get hold of an unattended machine that works and the disks are mounted. You can minimize the probability of that by enforcing certain policies such as never leaving the machine unsupervised, closing access to the computer's case or even locking the case, etc.
Trust me, cold boot attacks are not the greatest concern.
Can I get in touch with your friend? I would like to take a look at his work, because I am planning to convince some folks in a university that Python is a much better choice for a "first language" than C or Pascal is (what they currently use).
You can find contact information on my site, or just reply to this comment providing some coordinates.
Thank you forward.
I think this is partly caused by school teachers who failed to get the message across as we were young.
I always had a problem with mathematics, I had a stomach ache before [almost] each math class as I was in high school and I rarely felt comfortable during the lessons.
Later I went to a technical university and I got better at maths, because my _colleagues_ were able to explain the concepts to me much better than some of the _teachers_ in school did. Only then I was able to say "I don't even see the code, I see blonde, brunette...". I wonder what would happen if I actually understood things in school back then.
I know many people who are literally afraid of maths or a subset of it, some have a lighter form - "I am not that good at mathematics", I am sure that many of these cases are caused by teachers who were not able to explain things properly. [Perhaps because they dealt with an audience in which the degree of "mathability" varied from "very low" to "very high" and they felt it was OK to ignore the "very low" part].
That may sound funny but is misleading.
If a program has a learning curve that looks like a wall, it means that you get to a high level of knowledge in a short interval of time.
(if time is on the abscissa and knowledge is on the ordinate)