The first 50 pages of generic design recommendations are not too bad but the patterns themselves are very boring to read.
There seems to be a strain of pedantry that is attracted to OO programming and it is in full flight in this book which is full of tedious repetition. As has been pointed out elsewhere, too many patterns can be a bad thing, a very bad thing. Also, patterns are in a way an admission that the language is flawed. You should not have an iterator pattern - you should have an iterator macro! Why are we still coding in low level 3GLs like Java 47 years after FORTRAN was invented?
I find the anti-patterns books more interesting. Why do people build spaghetti trash and what can you do about it? The answers are out there.
I remember the first Itanium demo I went to. It was in conjunction with a software vendor deminstrating their SQL server software for the chip.
You could not hear the presenter because of the noise the CPU fan was making. He had to move closer to the audience so we could hear him!
And that is a big part of the problem. Coming out with a power hungry CPU just when power became a huge issue was not a clever thing to do. AMD decided not to follow itanium for precisely that reason and said so at the time. AMD64 was their choice and the rest was history.
> SQL, on the other hand: > 1) Reasonably simple API...
The outrageous success of SQL is in part because it complies with the "second law of axiomatic design": a good design has minimum entropy. Prior to SQL a lot of application knowledge was duplicated in the database which increased entropy. Also a lot of knowledge of the physical structure of the data was embedded in the programs which also increased entropy. This is bad because the more redundant information the system contains the harder it is to change.
With SQL you can change the physical structure without rewriting all your programs. And you can change your code without affecting the DBMS design eg you can get the rows back in a different order. In the bad old days if you wanted things in a different order you had to reload the database and recompile all your programs.
Even though SQL uses 3 to 10 times as many CPU cycles as hierarchical DBMSs or ISAM files it took over because of this flexibility.
Similarly, I think that one of the reasons OO programming has not delivered the productivity benefits it was supposed to is that OO somehow encourages people to embed a lot of duplicated knowledge of the application into the class structure. This duplicated information makes it hard to change the system. I have seen this again and again. In contrast, before OO a lot of this information ended up in data or in a database, where it could be easily changed.
> I just checked the U.S. Patent office and sure enough, just minutes after your post, Microsoft patented "if (!ptr)" as a shorthand for "if (ptr==NULL)".
This is doubly ironic, because the C standard does not guarantee that if (!ptr) has the same result as (ptr != NULL). NULL does not have to be "zero" and on some strange CPUs, it actually is not zero.
Yes that's right, the idiom if (!ptr) is not valid.
> He has been to many doctors, and all of them have found little to nothing wrong.... Statistically, from the number and variety of doctors he's visited, a false negative at this point is incredibly unlikely.
If you get an illness that is rare but which has symptoms that are common, it is very difficult to get it diagnosed. An example is Cushing's syndrome. The main symptoms are weight gain, depression, lack of energy. Almost always these symptoms are usually caused by something else.
It is particularly bad if the illness has a slow onset. Cushing's for example is often caused by a slow growing tumour. At first the symptoms are mild but they get worse over time. Unfortunately by the time the symptoms are unmistakeable, the doctors have written you off as a neurotic or a hypochondriac. Confirmation bias ensures they do not take a good second look when the facts change. Confirmation bias also operates when one doctor sees another doctor has decided nothing is wrong and so you do not get a true second opinion.
This is why it takes on average 3.5 years to diagnose Cushing's.
The chances of getting a single rare illness is low, but there are many rare illnesses. The chance of getting some rare illness is reasonably large.
I suffered from a rare illness (central serous retinopathy) which took 7 years to diagnose and that was only through dumb luck.
I have also observed that when doctors cannot understand something they blame the patient, saying it is psychological. They almost never say "You are sick but I have no clue what the problem is".
> There are diminishing returns on labor as time increases. But the point is that there ARE indeed returns, even at hour 80.
This is nonsense. The problem is that every extra hour you work affects the productivity of all the other hours. If you work a 14 hour day, you are tired for all the next day. Yes you may get something done in the 14th hour, but the next day you get less done in all the hours.
If your theory was true, a person who worked 168 (24*7) hours a week would get more done than a person who works a 50 hour week. As anyone who has worked all night knows, on the second day without sleep you get virtually nothing useful done.
Also "Rapid Development" by Steve McConnell has some good material on this, including proven and somewhat unproven ideas. Yes he worked at MSFT so what.
Don't assume there is One True Way. Different people have different needs, and different teams have different needs. So try and give people some control over their environment. Studies seem to show that, amazingly, people are best at designing their *own* most productive environment.
Example: Noise. Some people think they can work in a noisy environment. Most people can't. Some even know it. What is noise and what is data varies between people. E.g. a chat between other team members may be useful but overhearing the accountants talking all day is probably noise unless you are an accountant.
> The processor speed for marketers is comparable to the engine size wars in the 60s/70s.
When I am talking to non-techos I draw the analogy megahertz to processing power is like revs per minute to horsepower or torque. Intel CPUs have high RPMs in the tacho but less horsepower and torque.
>I have not, in my experience seen any geekness or skill that can prevent a stylesheet from becoming fscked, or even to effectively unfsck it when it happens.
This whole problem of "document cancer" has been around for years. If you are lucky you can create a fresh document and cut/paste most of the content. If you copy the wrong thing you have to start again.
There is also the "What happened???" problem. Your document is suddenly very wrong. Undo is, of course, grayed out. Now way to find out what what went wrong or how to fix it.
> I remember in the late 80's seeing a bound, printed version of the IBM XT BIOS source code (ASM of course). It belonged to a friend and probably dated from the early 80's. IIRC, he sent IBM a check for $50 and they sent it to him.
I still have a copy of the PC, PC/XT and PC/AT technical reference manuals all with bios source. And with schematics of the motherboard and sample add on boards.
Someone told me IBM had to release this information due to anti-trust problems they had had. Another theory is they released it to make building cards for the PC easier.
In those days they gave their customers the source to their mainframe software at the time. But it was not open source as we know it. They thought at the time that hardware was the profit centre and software was not that important.
> For example, in my case a penalty of 1 year's jail would discourage me from murdering someone. Increasing the penalty further would have no further effect on me. The number of people who would be discouraged by say 30 years prison, but not discouraged by 20 years prison is miniscule.
There is also the 'nothing to lose' factor. This was one factor in removing the death penalty for rape. Rapists realized that they may as well kill the victim as the penalty was not worse and the risk of getting caught was less due to lack of a witness.
> Moreover, save for hardened criminals which tend not to act rationally, studies *have* shown that the common folk tend to adjust their rates of criminal behaviour in proportion to (a) likelihood of being caught (b) harshness of the penalty if caught and (c) potential reward as compared to living a straight life.
Studies do show the perceived likelihood of being caught is the major factor. As has been pointed out however, most murders are crimes of passion where the consequences are not considered. Most of the rest are cold blooded killings where there is actually a low chance of being caught.
The harshness of the penalty mostly has a threshold effect i.e. little effect below a certain penalty, and a fixed effect beyond that threshold. So further increases beyond a certain level of penalty have little effect.
For example, in my case a penalty of 1 year's jail would discourage me from murdering someone. Increasing the penalty further would have no further effect on me. The number of people who would be discouraged by say 30 years prison, but not discouraged by 20 years prison is miniscule.
As for reward/risk tradeoffs, you are assuming criminals make rational tradeoffs, which is rarely the case. For a start, the most powerful variable for predicting criminality is low IQ. You are dealing with stupid people for a start. If you don't believe me, have a look at the people on death row. A large percentage cannot even read. A sigificant percentage of the rest are highly impulsive - 30% of prison inmates have ADHD for example.
While it is true that murderers who are convicted and executed do not murder again, there are other factors:
1. Juries may be less likely to convict if they know the penalty is draconian - therefore severe penalties may *increase* the number of criminals on the streets.
2. Draconian penalties are expensive - keeping all those people in prison for long periods, or paying for all those death penalty appeals, etc. This cost means higher taxes. Also people in prison do not pay tax, again increasing the burden on others. Higher taxes make everyone poorer and less well off.
Most people who go to prison once never return. So by having heavy penalties, you are depriving society of many people who can and would contribute in many ways.
When you are dealing with people it is just not that simple.
There are even now a few things that 64 bit is useful for...
1. Crypto - 64 bit ints makes things much faster.
2. Running Lisp or Scheme. You can fit a lot more into a 64 bit int, which is important when running these languages.
3. Some calculations can be done in 64 bit ints that would not fit in 32 bit. Example, financial calculations, where $3,000,000.00 does not fit in 32 bit.
OO has one paradigm which is make everything objects. This is absurd.
If you look through the Java libraries there are numerous examples where things are stretched to make them objects. You see the same thing in Java applications.
Example: colors. Is a color an object or an attribute of a point on a surface? Apart from anything else Java having colors as objects means you have to create millions of objects or build a color object cache if you have large numbers of colors.
Example: bignum. A number is a stage in a computation not an object. Again, tons of garbage and impossibly slow code.
I agree with the lady that we need extra concepts but I disagree that we need a fixed set of concepts hard wired into the language. We need a powerful enough language where you can add concepts that you need.
Just as OO was added to Lisp without changing the base language, so can other concepts. Try that in Java.
Java is better than the original 3GLs like Fortran 58 and COBOL 60 but not by an order of magnitude.
1. That for the most part, the Germans who participated in the Nazi atrocities were fairly normal people who felt they had little choice about what they did, that they could not really influence what happened, that they were not sure what was going on, and that maybe the victims deserved their fate to some extent.
Kind of like the relationship people in the west have to world hunger.
2. That world hunger is a soluble problem that we choose not to solve because other things are more important to us.
1. Taper off your consumption to 2-3 cups per day and then quit.
2. Expect to have headaches for a couple days.
3. Expect to feel sleepy for a week.
4. Expect to feel somewhat lowe in energy for up to six weeks.
Then you will feel normal.
Coffee does not give you any more energy. It just allows you to have some control over when you have the energy. If you have an important meeting or a tough bug, a cup of coffee is great. (Not as good as a cigarette but tobacco is baaad medicine).
"Yeah, I'm a neanderthal. I'm the worst parent in the world. My kids will be forever messed up because I make sure I know everything there is to know about their lives."
You sound like the sort of micromanager so well portrayed in Dilbert.
Once they are 18 or so, they are going to do what they damn well please.
You opportunity as a parent is to give them the opportunity to learn as much as possible about how to manage their own lives.
If you make all their decisions for them now, they will have big trouble upcoming.
I am not saying let 10 year olds do as they please. I am saying, let them make their own decisions when they are ready.
Let them manage their own money, choose their own clothes, make non-life-threatening decisions, more and more as they get older. By the time they are 18 they should know when they need help and they should want to ask you for advice. I see so many people waste their 20s learning stuff they should already know.
Really, so what if 16 year olds see some pictures of naked women. If you have prepared them so badly for life that that is going to mess them up, you have failed.
"I suggest reading The Hacker's Diet, it has some good information and makes a very important point-- it all comes down to thermodynamics. "
I have read it. It is an excellent book. He admits though, as you would know from reading it, that the program does not necessarily work for everyone.
If you only eat 1,00 calories a day, you must lose weight or reduce energy consumption. It is by no means inevitable that you will lose weight.
It is not *simply* a matter of thermodynamics. The human body and brain are adaptive systems that actively attempt to oppose changes such as weight loss. That is why over 90% of people who succeed in losing substantial amounts of weight, put it back on within a year or two.
Saying that weight loss is as simple as "eat less, exercise more" is like saying anyone can get an advanced degree in math by studying harder.
"the US growth is around 7% of GDB in the *last quarter*".
The statistics are expressed as an annual rate. So if the growth for a quarter is 2% that means an annual rate of somewhat over 8%, due to compounding. 7% annual means 1.x% for the quarter, which is good but not exceptional, particularly given all the one-offs - mortgage refinancings, the war money, tax cuts etc.
If the economy had really expanded 7% in the last quarter, Greenspan would have jacked up interest rates by now.
"Don't be such a fucking baby. Run a consistent daily caloric deficit and your stomach will adjust within a few weeks."
People vary tremendously in their metabolisms. You are one of the lucky ones.
For many people, if they run a caloric deficit what happens is:
- They feel hungry all the time
- Mental functioning is impaired, with up to 15 IQ points impact, so it can be hard to do your job well, and to manage relationships effectively
- Energy levels decline as your body adapts to 'famine' conditions
- You feel cold all the time
- As you approach your ideal weight it gets harder and harder
- It gets worse over a period of weeks
Our bodies are built to hoard food for a famine that - these days - never comes. For some people, mobilising fat stores is very difficult. Atkins had some patients who could not lose weight on 1,000 calories a day.
The arrogance of people who can easily control their weight is built on ignorance and luck. The body ADAPTS to low calorie intake; it is not a passive store of calories.
In my case I have found something that works, but it requires getting a lot of things exactly right. It is by no means easy. When I was younger it was easy but after age 25-30 the degree of difficulty just goes up and up.
When I first got linux 0.99 as 80 Slackware floppy disks, it was Matt Welsh's documentation that got me started. He did as much as anyone to get Linux up and running out there. We all owe him a debt of gratitude.
You see these types glide up the corporate ladder, leaving a trail of destruction in their wake.
This explains part of the male/female gap in pay
on
Tall People Earn More
·
· Score: 1
Women are a lot shorter than men on average. So according to this study they would be expected to earn less.
They also spend only 1/2 as many hours in the work force, so they get less experience. They choose jobs with more regular hours and more pleasant work environments.
Put all that together and you are left with nothing for sex based discrimination to explain.
> I told someone no, I wouldn't create a system that used a Social Security # for a login, and a badge number for a password...
>...I got fired...
You don't need to say no to these things.
1. Write down the business requirements. Include the fact that legal dept has not signed off on possible violations of privacy laws or whatever.
Ask for signoff. Make sure all the names are printed and legible.
2. Generally people ask for something a lot more specific than what they actually want. You need to find out and articulate what they really want.
Ask some questions, let them talk about the need. Let them do lots of talking. Rephrase what they say, to make sure you really did take it it. This also makes them feel sure you know what they want.
Be subtle when pointing out issues. "I am thinking about how to deal with the performance issues of running MI on the same DBMS as the online system". Rather than "You must be an idiot to even CONSIDER running MI on the same box as the online".
Then make some suggestions. It is amazing when people feel you have listened, they will then listen to you.
Don't tie your suggestions to your ego. "One possibility to consider is..." or "I have heard some people used X with success..." works better than "I recommend...".
3. You will always fail if your objective is to prove the other guy is wrong/stupid/etc. On the other hand if they feel you helped them find a better solution, that can work. "One thing I saw that worked well was...".
4. Use stories. Particularly stories about this guy you heard about who got fired for doing (what they are asking you to do).
http://www.stevedenning.com/HarvardBusRevJun03.h tm l
5. Give people a choice. This works from 3 year olds (do you want to go to bed now, or in 10 minutes) through to managers.
The first 50 pages of generic design recommendations are not too bad but the patterns themselves are very boring to read.
There seems to be a strain of pedantry that is attracted to OO programming and it is in full flight in this book which is full of tedious repetition. As has been pointed out elsewhere, too many patterns can be a bad thing, a very bad thing. Also, patterns are in a way an admission that the language is flawed. You should not have an iterator pattern - you should have an iterator macro! Why are we still coding in low level 3GLs like Java 47 years after FORTRAN was invented?
I find the anti-patterns books more interesting. Why do people build spaghetti trash and what can you do about it? The answers are out there.
I remember the first Itanium demo I went to. It was in conjunction with a software vendor deminstrating their SQL server software for the chip.
You could not hear the presenter because of the noise the CPU fan was making. He had to move closer to the audience so we could hear him!
And that is a big part of the problem. Coming out with a power hungry CPU just when power became a huge issue was not a clever thing to do. AMD decided not to follow itanium for precisely that reason and said so at the time. AMD64 was their choice and the rest was history.
Tim Josling
> SQL, on the other hand:
> 1) Reasonably simple API...
The outrageous success of SQL is in part because it complies with the "second law of axiomatic design": a good design has minimum entropy. Prior to SQL a lot of application knowledge was duplicated in the database which increased entropy. Also a lot of knowledge of the physical structure of the data was embedded in the programs which also increased entropy. This is bad because the more redundant information the system contains the harder it is to change.
With SQL you can change the physical structure without rewriting all your programs. And you can change your code without affecting the DBMS design eg you can get the rows back in a different order. In the bad old days if you wanted things in a different order you had to reload the database and recompile all your programs.
Even though SQL uses 3 to 10 times as many CPU cycles as hierarchical DBMSs or ISAM files it took over because of this flexibility.
Similarly, I think that one of the reasons OO programming has not delivered the productivity benefits it was supposed to is that OO somehow encourages people to embed a lot of duplicated knowledge of the application into the class structure. This duplicated information makes it hard to change the system. I have seen this again and again. In contrast, before OO a lot of this information ended up in data or in a database, where it could be easily changed.
> I just checked the U.S. Patent office and sure enough, just minutes after your post, Microsoft patented "if (!ptr)" as a shorthand for "if (ptr==NULL)".
This is doubly ironic, because the C standard does not guarantee that if (!ptr) has the same result as (ptr != NULL). NULL does not have to be "zero" and on some strange CPUs, it actually is not zero.
Yes that's right, the idiom if (!ptr) is not valid.
> He has been to many doctors, and all of them have found little to nothing wrong. ... Statistically, from the number and variety of doctors he's visited, a false negative at this point is incredibly unlikely.
If you get an illness that is rare but which has symptoms that are common, it is very difficult to get it diagnosed. An example is Cushing's syndrome. The main symptoms are weight gain, depression, lack of energy. Almost always these symptoms are usually caused by something else.
It is particularly bad if the illness has a slow onset. Cushing's for example is often caused by a slow growing tumour. At first the symptoms are mild but they get worse over time. Unfortunately by the time the symptoms are unmistakeable, the doctors have written you off as a neurotic or a hypochondriac. Confirmation bias ensures they do not take a good second look when the facts change. Confirmation bias also operates when one doctor sees another doctor has decided nothing is wrong and so you do not get a true second opinion.
This is why it takes on average 3.5 years to diagnose Cushing's.
The chances of getting a single rare illness is low, but there are many rare illnesses. The chance of getting some rare illness is reasonably large.
I suffered from a rare illness (central serous retinopathy) which took 7 years to diagnose and that was only through dumb luck.
I have also observed that when doctors cannot understand something they blame the patient, saying it is psychological. They almost never say "You are sick but I have no clue what the problem is".
> There are diminishing returns on labor as time increases. But the point is that there ARE indeed returns, even at hour 80.
This is nonsense. The problem is that every extra hour you work affects the productivity of all the other hours. If you work a 14 hour day, you are tired for all the next day. Yes you may get something done in the 14th hour, but the next day you get less done in all the hours.
If your theory was true, a person who worked 168 (24*7) hours a week would get more done than a person who works a 50 hour week. As anyone who has worked all night knows, on the second day without sleep you get virtually nothing useful done.
> "Peopleware" by De Marco & Lister
Also "Rapid Development" by Steve McConnell has some good material on this, including proven and somewhat unproven ideas. Yes he worked at MSFT so what.
Don't assume there is One True Way. Different people have different needs, and different teams have different needs. So try and give people some control over their environment. Studies seem to show that, amazingly, people are best at designing their *own* most productive environment.
Example: Noise. Some people think they can work in a noisy environment. Most people can't. Some even know it. What is noise and what is data varies between people. E.g. a chat between other team members may be useful but overhearing the accountants talking all day is probably noise unless you are an accountant.
> The processor speed for marketers is comparable to the engine size wars in the 60s/70s.
When I am talking to non-techos I draw the analogy megahertz to processing power is like revs per minute to horsepower or torque. Intel CPUs have high RPMs in the tacho but less horsepower and torque.
They seem to grok this right away.
>I have not, in my experience seen any geekness or skill that can prevent a stylesheet from becoming fscked, or even to effectively unfsck it when it happens.
This whole problem of "document cancer" has been around for years. If you are lucky you can create a fresh document and cut/paste most of the content. If you copy the wrong thing you have to start again.
There is also the "What happened???" problem. Your document is suddenly very wrong. Undo is, of course, grayed out. Now way to find out what what went wrong or how to fix it.
> I remember in the late 80's seeing a bound, printed version of the IBM XT BIOS source code (ASM of course). It belonged to a friend and probably dated from the early 80's. IIRC, he sent IBM a check for $50 and they sent it to him.
I still have a copy of the PC, PC/XT and PC/AT technical reference manuals all with bios source. And with schematics of the motherboard and sample add on boards.
Someone told me IBM had to release this information due to anti-trust problems they had had. Another theory is they released it to make building cards for the PC easier.
In those days they gave their customers the source to their mainframe software at the time. But it was not open source as we know it. They thought at the time that hardware was the profit centre and software was not that important.
> For example, in my case a penalty of 1 year's jail would discourage me from murdering someone. Increasing the penalty further would have no further effect on me. The number of people who would be discouraged by say 30 years prison, but not discouraged by 20 years prison is miniscule.
There is also the 'nothing to lose' factor. This was one factor in removing the death penalty for rape. Rapists realized that they may as well kill the victim as the penalty was not worse and the risk of getting caught was less due to lack of a witness.
> Moreover, save for hardened criminals which tend not to act rationally, studies *have* shown that the common folk tend to adjust their rates of criminal behaviour in proportion to (a) likelihood of being caught (b) harshness of the penalty if caught and (c) potential reward as compared to living a straight life.
Studies do show the perceived likelihood of being caught is the major factor. As has been pointed out however, most murders are crimes of passion where the consequences are not considered. Most of the rest are cold blooded killings where there is actually a low chance of being caught.
The harshness of the penalty mostly has a threshold effect i.e. little effect below a certain penalty, and a fixed effect beyond that threshold. So further increases beyond a certain level of penalty have little effect.
For example, in my case a penalty of 1 year's jail would discourage me from murdering someone. Increasing the penalty further would have no further effect on me. The number of people who would be discouraged by say 30 years prison, but not discouraged by 20 years prison is miniscule.
As for reward/risk tradeoffs, you are assuming criminals make rational tradeoffs, which is rarely the case. For a start, the most powerful variable for predicting criminality is low IQ. You are dealing with stupid people for a start. If you don't believe me, have a look at the people on death row. A large percentage cannot even read. A sigificant percentage of the rest are highly impulsive - 30% of prison inmates have ADHD for example.
While it is true that murderers who are convicted and executed do not murder again, there are other factors:
1. Juries may be less likely to convict if they know the penalty is draconian - therefore severe penalties may *increase* the number of criminals on the streets.
2. Draconian penalties are expensive - keeping all those people in prison for long periods, or paying for all those death penalty appeals, etc. This cost means higher taxes. Also people in prison do not pay tax, again increasing the burden on others. Higher taxes make everyone poorer and less well off.
Most people who go to prison once never return. So by having heavy penalties, you are depriving society of many people who can and would contribute in many ways.
When you are dealing with people it is just not that simple.
"most people DO NOT need 64-bit computing"
There are even now a few things that 64 bit is useful for...
1. Crypto - 64 bit ints makes things much faster.
2. Running Lisp or Scheme. You can fit a lot more into a 64 bit int, which is important when running these languages.
3. Some calculations can be done in 64 bit ints that would not fit in 32 bit. Example, financial calculations, where $3,000,000.00 does not fit in 32 bit.
OO has one paradigm which is make everything objects. This is absurd.
If you look through the Java libraries there are numerous examples where things are stretched to make them objects. You see the same thing in Java applications.
Example: colors. Is a color an object or an attribute of a point on a surface? Apart from anything else Java having colors as objects means you have to create millions of objects or build a color object cache if you have large numbers of colors.
Example: bignum. A number is a stage in a computation not an object. Again, tons of garbage and impossibly slow code.
I agree with the lady that we need extra concepts but I disagree that we need a fixed set of concepts hard wired into the language. We need a powerful enough language where you can add concepts that you need.
Just as OO was added to Lisp without changing the base language, so can other concepts. Try that in Java.
Java is better than the original 3GLs like Fortran 58 and COBOL 60 but not by an order of magnitude.
Other ideas
1. Don't say "We've got to talk about *us*" for at least one week.
2. Accept him as he is and don't try to change him. For as long as possible.
3. Don't get bitter and twisted that he seems to love his PC more than you.
1. That for the most part, the Germans who participated in the Nazi atrocities were fairly normal people who felt they had little choice about what they did, that they could not really influence what happened, that they were not sure what was going on, and that maybe the victims deserved their fate to some extent.
Kind of like the relationship people in the west have to world hunger.
2. That world hunger is a soluble problem that we choose not to solve because other things are more important to us.
1. Taper off your consumption to 2-3 cups per day and then quit.
2. Expect to have headaches for a couple days.
3. Expect to feel sleepy for a week.
4. Expect to feel somewhat lowe in energy for up to six weeks.
Then you will feel normal.
Coffee does not give you any more energy. It just allows you to have some control over when you have the energy. If you have an important meeting or a tough bug, a cup of coffee is great. (Not as good as a cigarette but tobacco is baaad medicine).
"Yeah, I'm a neanderthal. I'm the worst parent in the world. My kids will be forever messed up because I make sure I know everything there is to know about their lives."
You sound like the sort of micromanager so well portrayed in Dilbert.
Once they are 18 or so, they are going to do what they damn well please.
You opportunity as a parent is to give them the opportunity to learn as much as possible about how to manage their own lives.
If you make all their decisions for them now, they will have big trouble upcoming.
I am not saying let 10 year olds do as they please. I am saying, let them make their own decisions when they are ready.
Let them manage their own money, choose their own clothes, make non-life-threatening decisions, more and more as they get older. By the time they are 18 they should know when they need help and they should want to ask you for advice. I see so many people waste their 20s learning stuff they should already know.
Really, so what if 16 year olds see some pictures of naked women. If you have prepared them so badly for life that that is going to mess them up, you have failed.
"I suggest reading The Hacker's Diet, it has some good information and makes a very important point-- it all comes down to thermodynamics. "
I have read it. It is an excellent book. He admits though, as you would know from reading it, that the program does not necessarily work for everyone.
If you only eat 1,00 calories a day, you must lose weight or reduce energy consumption. It is by no means inevitable that you will lose weight.
It is not *simply* a matter of thermodynamics. The human body and brain are adaptive systems that actively attempt to oppose changes such as weight loss. That is why over 90% of people who succeed in losing substantial amounts of weight, put it back on within a year or two.
Saying that weight loss is as simple as "eat less, exercise more" is like saying anyone can get an advanced degree in math by studying harder.
"the US growth is around 7% of GDB in the *last quarter*".
The statistics are expressed as an annual rate. So if the growth for a quarter is 2% that means an annual rate of somewhat over 8%, due to compounding. 7% annual means 1.x% for the quarter, which is good but not exceptional, particularly given all the one-offs - mortgage refinancings, the war money, tax cuts etc.
If the economy had really expanded 7% in the last quarter, Greenspan would have jacked up interest rates by now.
Tim Josling
"Don't be such a fucking baby. Run a consistent daily caloric deficit and your stomach will adjust within a few weeks."
People vary tremendously in their metabolisms. You are one of the lucky ones.
For many people, if they run a caloric deficit what happens is:
- They feel hungry all the time
- Mental functioning is impaired, with up to 15 IQ points impact, so it can be hard to do your job well, and to manage relationships effectively
- Energy levels decline as your body adapts to 'famine' conditions
- You feel cold all the time
- As you approach your ideal weight it gets harder and harder
- It gets worse over a period of weeks
Our bodies are built to hoard food for a famine that - these days - never comes. For some people, mobilising fat stores is very difficult. Atkins had some patients who could not lose weight on 1,000 calories a day.
The arrogance of people who can easily control their weight is built on ignorance and luck. The body ADAPTS to low calorie intake; it is not a passive store of calories.
In my case I have found something that works, but it requires getting a lot of things exactly right. It is by no means easy. When I was younger it was easy but after age 25-30 the degree of difficulty just goes up and up.
When I first got linux 0.99 as 80 Slackware floppy disks, it was Matt Welsh's documentation that got me started. He did as much as anyone to get Linux up and running out there. We all owe him a debt of gratitude.
Tall Energetic Confident Stupid = TECSans.
You see these types glide up the corporate ladder, leaving a trail of destruction in their wake.
Women are a lot shorter than men on average. So according to this study they would be expected to earn less.
They also spend only 1/2 as many hours in the work force, so they get less experience. They choose jobs with more regular hours and more pleasant work environments.
Put all that together and you are left with nothing for sex based discrimination to explain.
> I told someone no, I wouldn't create a system that used a Social Security # for a login, and a badge number for a password...
...I got fired...
h tm l
>
You don't need to say no to these things.
1. Write down the business requirements. Include the fact that legal dept has not signed off on possible violations of privacy laws or whatever.
Ask for signoff. Make sure all the names are printed and legible.
2. Generally people ask for something a lot more specific than what they actually want. You need to find out and articulate what they really want.
Ask some questions, let them talk about the need. Let them do lots of talking. Rephrase what they say, to make sure you really did take it it. This also makes them feel sure you know what they want.
Be subtle when pointing out issues. "I am thinking about how to deal with the performance issues of running MI on the same DBMS as the online system". Rather than "You must be an idiot to even CONSIDER running MI on the same box as the online".
Then make some suggestions. It is amazing when people feel you have listened, they will then listen to you.
Don't tie your suggestions to your ego. "One possibility to consider is..." or "I have heard some people used X with success..." works better than "I recommend...".
3. You will always fail if your objective is to prove the other guy is wrong/stupid/etc. On the other hand if they feel you helped them find a better solution, that can work. "One thing I saw that worked well was...".
4. Use stories. Particularly stories about this guy you heard about who got fired for doing (what they are asking you to do).
http://www.stevedenning.com/HarvardBusRevJun03.
5. Give people a choice. This works from 3 year olds (do you want to go to bed now, or in 10 minutes) through to managers.