Food allergies are rare, but they're definitely real. As with so many other things (e.g. ADHD), I'm sure it's way over-diagnosed. Or at least wrt anything serious.
The reality is that everyone has some mild food sensitivities, and most of the time, the effects are subtle enough that you probably don't notice. Lactose intolerance may give you diarrhea, but usually, it just gives people a little bit of gas. Some food intolerances are immune reactions (typically IgA if you don't notice much effect), some are the side-effect of microorganisms in your digesting what you cannot, and some seem to be a bit mysterious. A common effect of a mild food intolerance is that between a few hours to a few days after you eat the offending food, you may experience some fatigue. The reaction is usually too subtle and too delayed for people to make the association. It can take a heck of a lot of effort to discover every little food you might have some trouble with. The advantage is that you might optimize your energy and general well-being slightly. A potential disadvantage is difficulty in obtaining important nutrients, if you remove too much variety from your diet.
Coeliac disease is an interesting one. It's not a food allergy. It's an auto-immune reaction brought on by an antibody to some of the peptides in gluten. One's body produces IgA antibodies that react to these, and those same antibodies attack the intestinal lining. For most victims of this disease, the symptoms start out subtle. But if left unchecked, the destruction of the intestinal lining can lead to severe malnutrition. Some victims have more severe reactions, like vomiting and diarrhead, while others have terrible mood swings and other cognitive effects.
I personally have an allergy (a real IgE reaction) to soy protein. My reaction is annoying but decidedly non-deadly. If I eat any food product with sufficient soy protein, even fermented like soy sauce or tofu, I may suffer a nose bleed within a few hours, and several hours later, I'll break out in a major all-over itch, not necessarily with visible hives. Claritin will do the trick. According to a lab test, I also have an IgA reaction in the gut, which explains why diarrhea is a symptom that sometimes accompanies it as well. Also, my energy level seems to be affected for a few days afterwards. In my case, this soy allergy is genetic. Both my mother and sister have it.
So to summarize, subtle to mild food sensitivities are fairly common but not anything to fuss over. Serious intolerances, however, are a serious matter, and it's nice that some restaurants go out of their way to accomodate people with these problems.
I've read a little about psychopaths. From what I recall, in today's society, we have no place for them, but a long time ago, such people would become warriors. Their kings trying to vie for territory would use them as soldiers.
Multiple people may get the same idea at once, but those who succeed are also those who also have to skills to pull it off. I guess that's obvious. But it may go into explaining why Facebook succeeded where others did not. Zuckerberg managed to develop a UI that people preferred, even if the number of features was smaller. Here, his skill was greater intuition or better training in how to build a usable and attractive system.
The US government has too many secrets. Certainly, they need SOME, otherwise they can't have a tactical advantage over enemies. But there's stuff decades old that just should not be closed up in some government filing cabinet. I think the excessive government secrecy, cover-ups for mistakes, and all sorts of other crud need to be blown wide open by those who care more for the American people than for their government (which should be for the people, by the people, of the people, etc.).
The problem currently is that those people doing the blowing-open appear to be kindof shallow on ethics themselves. Assange comes across to me as a serious ass-hat who get's a kick out of doing this stuff more because it's "naughty" than because he really cares about freedom of information. Of course, this impression, along with the sexual misconduct charges, could all be the result of Pentagon brainwashing. But if you're going to take the "moral high ground" against government secrecy, you have to be above reproach, and you have to use tactics much less douchy than the ones we've been seeing, what with the "I'm going to release this stuff in two weeks, so I can get lots of personal attention, up the suspense, etc. Maybe I'll be arrested for not having yet released anything, which will be a high profile embarrassment for the government. Strisand Effect."
Wikileaks seems to be more about media whoring than truly doing good things.
It's common for people (myself included) to conflate Energy with Power, but it's often an important distinction. To begin with, technically, we don't consume power. We consume energy (to do work, which is in the same units), and power is the rate at which it is consumed.
An important factor often left on the floor is processing efficiency, meaning how fast are we getting work done for a given power level. If you reduce power by half, but the work takes twice as long, you've accomplished nothing. For the same amount of work, your battery will drain the same amount. Indeed, what we really want to do here is make systems take less energy, and within reasonable limits, it doesn't matter how much power you consume while you're doing it.
This has actually been one of the things that makes ARM processors energy-efficient. Not to say they're not also low power, the strategy has always been to build event-driven systems. Something happens (user input, sensor reading, etc.), which causes the CPU to wake up in your embedded system. The ARM processor then blasts through the work to be done, and then goes to sleep, powering down completely until the next event. (Some systems will use intermediate "sleep" states that are less time-expensive to sleep and wake.) An ARM is more efficient than an Atom, in part because it uses less power, but also in part becauses it needs less time to complete the same task.
In today's technology, this is especially important. At 90nm and 65nm, the Intel Core and Core 2 used clock gating to save power. Functional units (e.g. floating point multiply) that are idle have their clock signals gated, which reduces power being used by that part of the clock distribution tree. This is important because in those technologies, dynamic (switching) power dominates. In the Core i7, Intel uses POWER gating. When a functional unit is idle, it's powered down completely. This is because in 45nm and 32nm CMOS, static (leakage) power is what dominates.
Going back to ARM, this is something being applied in the Cortex A9. They've made a more complex processor in order to execute out of order, but as a result, computation goes appreciably faster. During computation, leakage is constant. By getting the work done faster and powering down completely, more leakage power is saved. Less time translates into less energy, even if the A9 uses more power than the A8.
I've had mostly good experiences with my MacBook Pro. Ok, there was some trouble with the RAM, the network adaptor, and it keeps eating batteries. But it's a better experience than I've had from other PC makers. But this whole iPhone 4 situation really shows Apple's true colors. If there's something wrong with something they made, they're going to pull a Dell and LIKE ABOUT IT. This makes me wonder what kinds of design flaws I'll see in the next Mac I buy. Ok, so no technology is perfect, but a tendency to try to cover up mistakes is not good for business.
I just wanted to take this opportunity to mention a POSITIVE experience with an online vendor. I was absolutely taken aback by their excellent customer service. Basically, they had mislabeled a product, and as a result, I bought something I couldn't use. They CALLED ME ON THE PHONE and informed me that they were issuing me an immediate full credit including shipping. (At that point, I had already bought a substitute from Radio Shack.) I immediately went to resellerratings.com and gave them a great review.
Your first mistake was mentioning that it's a Dell. Now all you're going to get is people reminding you that Dell has a tendency to produce faulty hardware and lie about it. (Never mind that they have made plenty of other good products, and it's irrelevant to your problem.)
It used to be that people had to LEARN DISCIPLINE so that they could pay attention in school and learn. Meanwhile, the randomness of the thoughths they had to learn to keep under control was funneled into directed creativity.
These days, every kid is labeled with ADHD and given drugs that suppress random thoughts. Oh, sure they SEEM a little more disciplined, but we're chemically robbing them of creativity.
(I'm not saying that ADD doesn't exist. I know, because I have it. Indeed, I rely on it to help me come up with interesting random ideas. And it was indeed a long, challenging journey to learn to focus. I also realize that some people have it SO BAD that giving them some chemical help makes sense. But MOST kids in school labeled with ADHD just have discipline problems. But let's not leave it there, because often the discipline problems aren't their fault. Their diets are absolute shit. If parents would feed their kids properly, we wouldn't have half so much trouble.)
Back in the 80's and early 90's, I owned some Atari computers and did some development work on them. I would use GEnie to communicate with other developers. Even before popularity of the platform really tanked (mostly Atari's fault and the major reason most developers left), I recall the occasional developer complaining about too much piracy and deciding to drop the platform. This included private developers and also larger companies that produced games and such. Also, when moving to the PC, they would complain about how the platform sucked, but that although the piracy rate was no better, the sheer volumes of sales made it profitable.
Ok, so no proof, because it's been more than 20 years, and I can't remember any of the names. But it happened more than a few times that somsone on GEnie or at a local user's group meeting would mention that so-and-so had quit developing for Ataris.
The only reason the old antenna engineers did what they did was because they were forced to by Apple marketing and industrial design groups. And the only reason the next ones won't make the same mistake is because of hindsight, not because the new ones will be somehow more competent than the old ones.
Apple sounds like a horrible place to work. Every decision you make has to put aesthetics ahead of every other practical consideration. I bet you'd get fired for complaining too much about a problem early in the design cycle, and of course, if something goes wrong, you'll get fired for lacking the forethought. Rock and a hard place.
And indeed, we had done that at one point. We discussed with the phone rep when we should send out the payment, and we adjusted the date on the bank web site. That worked for a while, until they changed the date again.
I had an Amazon VISA, which I believe was also Chase. We had set up our bank account to automatically send payments on time, and all we had to do was respond to the reminder and put the amount in. Well, then Chase started changing the due date on us, every couple of months. We'd find out the next billing cycle that we'd been late (because they shifted the date and charged us a late fee), and we had to call them to complain, get them to take off the late fee, and shift back the due date. Then one time, I told them that if they did it again, I would cancel. Well, of course, it happened again. It took me about an hour on the phone to get them to finally cancel the card. I told them that they would have to promise in writing that they would never again change the due date, but of course they were not able to do it. They kept going on and on about all the benefits I'd racked up since I had been a loyal customer and had joined in like 1999 or something, and I responded that they were not treating me well for having been a loyal customer. Some of their arguments, IIRC, were rather inane. All I wanted was a certain kind of consistent treatment, and instead they were making the due date a moving target so they could rack up late fees. We now have a Barnes and Noble credit card. Heh.
I don't know. Verizon is a lot like Foxconn, except that their employees aren't the only ones they induce to commit suicide. If they waived the early termination fee for every death they were responsible for, they'd be running at a major loss.
I'm not the only one who noticed this. There are hoards of blog and forum posts about this. iOS4 is actually SLOWER than the 3.x version, especially on the iPhone 3G. Good going, Apple.
Actually, the primary form of reasoning that humans use is "abductive inference", of which induction is a special case.
What really amazes me is how many people in AI miss out on this fact. I saw a talk recently where someone implemented an AI algorithm that be explained as using "Occam's Razor". In essence, his algorithm was reasoning to the simplest explanation. If you use "simplest" as a proxy for "likeliest", then you have classical abduction. He had apparently never heard of abductive inference, and this meant that he missed out on a lot of the formalisms that had been developed to implement abductive inference engines. I hope he looked into it, because he could really improve on his work.
Another commenter is correct in pointing out that what they're doing is using leakage current. When we measure power dissipation, we count two things, (a) dynamic power, which is used when a transistor switches and is a function of frequency, voltage, and temperature, and (b) static (leakage) power, which is always going on and is a function of voltage and temperature. At 180nm, the ratio of dynamic to static was about 1000:1. It started to become noticed at around 90nm and a problem at 65nm. Now at 45nm and 32nm, leakage is about half the total power usage. The best way to lower power is to reduce voltage, but this kills performance scaling. Scaling down transistors reduces dynamic power but increases relative static power, which is why processors like the Core i7 use not just clock gating but POWER gating, dynamically, at a functional unit level.
Regarding subthreshold, as you lower voltage, power goes down. The problem is that transistors also get slower. Above threshold, the power goes down faster than speed, so if you're using a transistor with threshold voltage of 150mV with a supply voltage of 300mV, you get like a 100th the power dissipation, but a tenth the speed, which means that you use one tenth the energy to perform some process. As you lower the supply voltage below threshold, the transistors get slower faster than the power goes down, so total energy actually goes up as you lower voltage below a certain point. There is a supply voltage point either side of the threshold voltage where energy is minimum for the range. You use near threshold or sub threshold depending on if you care about speed. Also, things behave quite differently at low voltages, so you have to change all your design techniques.
One of the problems with near and sub threshold is that you don't actually know what your threshold voltages are anymore. It's called process variation. The transistors are so tiny that you get on the order of tens of dopant atoms per transistor. The doping process is highly random, so you get wide variance on threshold voltage (and effective channel length too), meaning that two transistors next to each other have different switching characteristics. This is actually a major problem at 32nm, resulting in unfortunately large supply voltage margins to avoid timing-related errors, which translates into excessive power usage. It's an even bigger problem when the supply is near the threshold (above or below), because the speed of a transistor and its power output are actually functions of the difference between supply voltage and threshold voltage. If the supply is 300mV, then the transistor with Vth=130 is going to be way faster (and way leakier) than the transistor on the same die with Vth=170. Of course, both were designed to have Vth=150, but you can't control that well enough.
My area of research involves coping with the 5X decrease in reliability at NTC, and I'll talk more about it when my papers are accepted.:)
And yet the leave out some really BASIC features
on
Safari 5 Released
·
· Score: 1
Hey, Apple, how about adding proper crash recovery and session management to Safari? I hate to inform you, but Safari DOES crash now and then, and we shouldn't have to install Saft to get something as elementary as the ability to return to the state we were in before your browser decided to take a core dump, despite the fact that I've disabled Flash. And how about session management? I'd like to be able to quit the browser and restore the state properly when I reopen. Yes, I am aware of "History > Reopen All Windows From Last Session". But it's unreliable, because if something doesn't reload properly, and I quit, the only thing saved in the session is the "couldn't connect" page. The history for that tab is GONE. What you really need to do is load from cache like Firefox does.
And how about your memory management? If I open the same set of documents in Firefox and Safari, Firefox uses a fraction the memory of Safari.
(It's too bad Firefox isn't usable on a Mac because it completely prevents a Mac from sleeping after idle. The bugzilla entry on that has been open for a really long time and gets no attention. Meanwhile, they're all over Private Browsing.)
I'm going to try out Chrome, but reportedly, its memory management is much worse than either. (http://dotnetperls.com/chrome-memory)
I'm wondering if the Dunning–Kruger effect may have anything to do with this. This mainly has to do with the fact that people's incompetence blinds them to the fact of their incompletence.
However, I've encountered people across all ranges of IQs who (myself included from time to time), at least for certain things, insist on being dogmatic in the face of reasonable counterevidence.
Of course, we don't want to take science as dogma either. Scientists are basically human beings, who make mistakes. We shouldn't just unquestioningly accept everything that comes out of the mouth of a scientist. On the other hand, if something has been peer-reviewed and withstood a far amount of scrutiny, it definitely worth taking seriously.
I think part of the problem is that many people have a hard time "believing" two contradictory ideas or at least seriously contemplating them at the same time. Unfortunately, this is frequently necessary in the face of incomplete information. Two ideas that seem mutually exclusive are each supported by some body of reasonable evidence.
Holy crap, it's like you too my feelings about the whole issue and expressed it in better words than I could have.
I've been using computers since the late 70's myself. Before I had my own 8-bit computer in 1981, I was programming TI calculators and writing Fortran programs for Amdahl mainframes. I know at least a dozen CURRENT programming languages, on top of a few old ones I've forgotten. After I got my B.S. in computer engineering, I worked for 9 years writing device drivers (mostly graphics) and eventually learned chip design, which is what I mostly do now as a consultant. At the moment, I'm working on my Ph.D. in computer science, specializing in computer architecture (mostly CPU architectures, dealing with issues of performance, power consumption, manufacturing variation, and reliability).
In short, I'm a computer nerd through and through. I have a long history, and I know a hell of a lot about computers.
And in my years as a computer nerd, the moments of frustration with computers not automatically doing things that should be obviously automatic, crashing at inopportune times, and just all-around being brain-dead have accumulated in my mind, culminating in me saying "fuck it" to all the annoying bullshit and buying a Mac. Why? Because a Mac doesn't get in my way. Basic things "just work", like wireless networking, accessing myriad peripherals, storing data, backing up data, restoring from backups, not crashing, not getting viruses, making it easy to find my documents, making it easy to mulitask, ad infinitum.
Don't tell me that Linux is just as good. I run Linux on my home server. Gentoo, in fact. I have it working great, so yes, I know what I'm doing. I know HOW to do all this stuff. And I do it when it meets some need. But to have to fight it on a daily basis does nothing but get in the way of me doing useful work.
I want to get technical at MY whim, not at the computer's whim. The computer is a slave to me, not the other way around.
So, in summary, I'm grown impatient with having to do the same tasks over and over again that should just happen correctly and automatically. MacOS isn't perfect at that, but it is by far much less of a hassle than either Windows 7 or the latest and greatest "user friendly" Linux distros. I value my time, my energy, my relaxation, utility, and ease of use over some abstract sense of "Freedom" that isn't really freedom if I can't accomplish my goals with it without investing an inordinate amount of time into what is nothing more than a distraction.
The article mentions MacOS X. Unfortunately, Firefox is not a good browser to use on Apple notebooks under MacOS, because it actively prevents the machine from going to sleep if you leave it idle. It'll just drain your battery down. And compared to Safari, Firefox uses significantly more CPU load for exactly the same set of pages (I've tested this across a lot of different combinations). So Firefox will drain your battery faster.
What I like about Firefox is that it's a memory miser. Compared to everything else (that I've tried and according to various articles I've read), Firefox is much skimpier on memory usage. Its data structures are smaller to begin with, and it's better about releasing memory back to the OS. In theory, you should be able to have more documents open at the same time without hitting swap. The trouble is, each open document adds appreciably to the CPU load, which creates another limitation to the number of documents you WANT to have open, else you drain your battery too fast.
Firefox also has much better crash protection. Safari+Saft is acceptable but still problematic. I tend to use Firefox nightly builds, which crash slightly more often, but it's so good at restoring to the state you left, it almost doesn't matter. (Someone once pointed out that crash reliability is what prevents sleep, but this should not be true, because if you're not doing anything, there's no changed state that needs to be saved.)
I didn't leave the program entirely. I changed specialties. The actual reason I left AI was somewhat different from that. My problem with ASR is that I would have hated working on it because there would have been no room for real innovation. Not to say that I'm some kind of genius in processor architecture, but there are some exciting things people are working on that are really outside of the box.
The main thing that got me out of AI was this: My subfield was knowledge-based reasoning (we used a lot of abductive inference). When I started in the program, there were 8 people in the lab I had joined. But by the time I finished the core courses, there was no one left. 7 had graduated, and one was AWOL. The prof who ran the lab retired. And the other prof who was left was always busy with his business. So there was absolutely no one to work with. As a junior grad student, trying to break into a big field is almost impossible if you have no mentoring. I tried to work on a few papers, but the reviews I got back convinced me that (a) I wasn't up to speed in the areas, and (b) the work required to fix the papers was beyond my capacity alone. If I'd had at least one other student to work with, I might have been able to keep going.
Instead, what I decided to do was cut my losses and go into another area where I already basically new the material. I'd worked as a chip designer and was well-read in the area of computer architecture. Plus, a new prof was hired in exactly that area. It's been great, because he's enthusiastic to make his mark and get tenure, and he has start-up funding, so we work closely together.
Since I have also studied Linguistics, I do have some ideas here, but honestly, I don't really think I understand the field well enough to make any impact myself. I also fear that I just don't have the intellect for it. There are some areas like high cardinality infinities in mathematics that just baffle me -- it would take another lifetime for me to understand the existing stuff, let alone invent something new. Maybe NLP isn't THAT hard, but there's only so much I can do.
When I started on my Ph.D., I started out majoring in AI. One of several reasons I changed to computer architecture (CPU design, etc.) is because I just couldn't stand the broken ways that people were doing stuff. Actually computer vision stuff isn't so bad -- at least there's room for advancement. But the speech recognition state of the art is just awful. I couldn't stand the way they did much of anything in pursuit of human language understanding.
With automatic speech recognition (ASR), the first problem is the MFCCs. (Mel-frequency cepstral coefficients.) What they essentially do is take a fourier transform of a fourier transform of the data. This filters out not only amplitude but also frequency, leaving you only with the relative pattern of frequency. Think of this as analogous to taking a second derivative, where all you get is accelerating, leaving out position and velocity. You lose a LOT of information. Then once the MFCC's are computed, they're divided up into the top 13 (or so) dominant MFCCs, plus the first and second step-wise derivatives, giving you a 39D vector. Then the top N most common ones are tallied, and code-booked, mapping the rest to the nearest codes, leaving you with a relatively small number of codes (maybe a few hundred).
So to start with, the signal processing is half deaf, throwing away most of the information. I get why they do it, because it's speaker independent, but you completely lose some VERY valuable information, like prosodic stress, which would be very useful to help with word segmentation. Instead, they try to guess it from statistical models.
Next, they apply a hidden Markov model (HMM). Instead of inferring phones from the signal, the way they model it is as a sequence of hidden states (the phones) that cause the observations (the codes). This statistical model seems kinda backwards, although it works quite well, when trained properly. To train it, you need a lot of labeled data, where people have taken lots of speech recordings and manually labeled the phonetic segments. What is usually learned is mostly a unigram, where what you know are the a priori probabilities of each phone label (the hidden states), and the posterior probability of each phone given each possible prior phone. Given a sequence of codes, you find the most likely sequence of phones by computing the viterbi path through the HMM.
Honestly, I can't complain too much about the HMM. What I do complain about is the fact that the "cutting edge" is to replace the HMM with a markov random field (just remove the arrows from the HMM), and conditional random fields (which are markov random fields with extra inputs).
My response to using MRFs and CRFs is "big whoop", because all you're doing is replacing the statistical model, which doesn't dramatically improve recognition performance, because they haven't fixed the underlying problem with the signal processing.
Then on top of the phone HMM, they layer ANOTHER HMM on top of it to infer words and word boundaries, based on a highly inaccurate phone sequence.
The main problem with all of this is not that the reseachers are idiots. They're not. The problem is that the people with the funding are totally unwilling to fund anything really interesting or revolutionary. The existing methods "work", so the funding sources figure that we can just make incremental changes to existing technologies. Which is wrong. Unfortunately, any radically new technology would be highly experimental, with a high risk of failure, and would take a long time to develop. No one wants to fund anything that iffy. As a result, all the scientists working in this are spend their time on nothing but boring tweaks of a broken but "proven" reasonably effective technology.
So I don't blame people for the conundrum, but I see no opportunity to do anything interesting, so I just couldn't stand studying it.
Food allergies are rare, but they're definitely real. As with so many other things (e.g. ADHD), I'm sure it's way over-diagnosed. Or at least wrt anything serious.
The reality is that everyone has some mild food sensitivities, and most of the time, the effects are subtle enough that you probably don't notice. Lactose intolerance may give you diarrhea, but usually, it just gives people a little bit of gas. Some food intolerances are immune reactions (typically IgA if you don't notice much effect), some are the side-effect of microorganisms in your digesting what you cannot, and some seem to be a bit mysterious. A common effect of a mild food intolerance is that between a few hours to a few days after you eat the offending food, you may experience some fatigue. The reaction is usually too subtle and too delayed for people to make the association. It can take a heck of a lot of effort to discover every little food you might have some trouble with. The advantage is that you might optimize your energy and general well-being slightly. A potential disadvantage is difficulty in obtaining important nutrients, if you remove too much variety from your diet.
Coeliac disease is an interesting one. It's not a food allergy. It's an auto-immune reaction brought on by an antibody to some of the peptides in gluten. One's body produces IgA antibodies that react to these, and those same antibodies attack the intestinal lining. For most victims of this disease, the symptoms start out subtle. But if left unchecked, the destruction of the intestinal lining can lead to severe malnutrition. Some victims have more severe reactions, like vomiting and diarrhead, while others have terrible mood swings and other cognitive effects.
I personally have an allergy (a real IgE reaction) to soy protein. My reaction is annoying but decidedly non-deadly. If I eat any food product with sufficient soy protein, even fermented like soy sauce or tofu, I may suffer a nose bleed within a few hours, and several hours later, I'll break out in a major all-over itch, not necessarily with visible hives. Claritin will do the trick. According to a lab test, I also have an IgA reaction in the gut, which explains why diarrhea is a symptom that sometimes accompanies it as well. Also, my energy level seems to be affected for a few days afterwards. In my case, this soy allergy is genetic. Both my mother and sister have it.
So to summarize, subtle to mild food sensitivities are fairly common but not anything to fuss over. Serious intolerances, however, are a serious matter, and it's nice that some restaurants go out of their way to accomodate people with these problems.
I've read a little about psychopaths. From what I recall, in today's society, we have no place for them, but a long time ago, such people would become warriors. Their kings trying to vie for territory would use them as soldiers.
Multiple people may get the same idea at once, but those who succeed are also those who also have to skills to pull it off. I guess that's obvious. But it may go into explaining why Facebook succeeded where others did not. Zuckerberg managed to develop a UI that people preferred, even if the number of features was smaller. Here, his skill was greater intuition or better training in how to build a usable and attractive system.
The US government has too many secrets. Certainly, they need SOME, otherwise they can't have a tactical advantage over enemies. But there's stuff decades old that just should not be closed up in some government filing cabinet. I think the excessive government secrecy, cover-ups for mistakes, and all sorts of other crud need to be blown wide open by those who care more for the American people than for their government (which should be for the people, by the people, of the people, etc.).
The problem currently is that those people doing the blowing-open appear to be kindof shallow on ethics themselves. Assange comes across to me as a serious ass-hat who get's a kick out of doing this stuff more because it's "naughty" than because he really cares about freedom of information. Of course, this impression, along with the sexual misconduct charges, could all be the result of Pentagon brainwashing. But if you're going to take the "moral high ground" against government secrecy, you have to be above reproach, and you have to use tactics much less douchy than the ones we've been seeing, what with the "I'm going to release this stuff in two weeks, so I can get lots of personal attention, up the suspense, etc. Maybe I'll be arrested for not having yet released anything, which will be a high profile embarrassment for the government. Strisand Effect."
Wikileaks seems to be more about media whoring than truly doing good things.
It's common for people (myself included) to conflate Energy with Power, but it's often an important distinction. To begin with, technically, we don't consume power. We consume energy (to do work, which is in the same units), and power is the rate at which it is consumed.
An important factor often left on the floor is processing efficiency, meaning how fast are we getting work done for a given power level. If you reduce power by half, but the work takes twice as long, you've accomplished nothing. For the same amount of work, your battery will drain the same amount. Indeed, what we really want to do here is make systems take less energy, and within reasonable limits, it doesn't matter how much power you consume while you're doing it.
This has actually been one of the things that makes ARM processors energy-efficient. Not to say they're not also low power, the strategy has always been to build event-driven systems. Something happens (user input, sensor reading, etc.), which causes the CPU to wake up in your embedded system. The ARM processor then blasts through the work to be done, and then goes to sleep, powering down completely until the next event. (Some systems will use intermediate "sleep" states that are less time-expensive to sleep and wake.) An ARM is more efficient than an Atom, in part because it uses less power, but also in part becauses it needs less time to complete the same task.
In today's technology, this is especially important. At 90nm and 65nm, the Intel Core and Core 2 used clock gating to save power. Functional units (e.g. floating point multiply) that are idle have their clock signals gated, which reduces power being used by that part of the clock distribution tree. This is important because in those technologies, dynamic (switching) power dominates. In the Core i7, Intel uses POWER gating. When a functional unit is idle, it's powered down completely. This is because in 45nm and 32nm CMOS, static (leakage) power is what dominates.
Going back to ARM, this is something being applied in the Cortex A9. They've made a more complex processor in order to execute out of order, but as a result, computation goes appreciably faster. During computation, leakage is constant. By getting the work done faster and powering down completely, more leakage power is saved. Less time translates into less energy, even if the A9 uses more power than the A8.
It's not so weird. Many artists take it as a sign of success that they've been parodied by Weird Al.
I've had mostly good experiences with my MacBook Pro. Ok, there was some trouble with the RAM, the network adaptor, and it keeps eating batteries. But it's a better experience than I've had from other PC makers. But this whole iPhone 4 situation really shows Apple's true colors. If there's something wrong with something they made, they're going to pull a Dell and LIKE ABOUT IT. This makes me wonder what kinds of design flaws I'll see in the next Mac I buy. Ok, so no technology is perfect, but a tendency to try to cover up mistakes is not good for business.
I just wanted to take this opportunity to mention a POSITIVE experience with an online vendor. I was absolutely taken aback by their excellent customer service. Basically, they had mislabeled a product, and as a result, I bought something I couldn't use. They CALLED ME ON THE PHONE and informed me that they were issuing me an immediate full credit including shipping. (At that point, I had already bought a substitute from Radio Shack.) I immediately went to resellerratings.com and gave them a great review.
Your first mistake was mentioning that it's a Dell. Now all you're going to get is people reminding you that Dell has a tendency to produce faulty hardware and lie about it. (Never mind that they have made plenty of other good products, and it's irrelevant to your problem.)
It used to be that people had to LEARN DISCIPLINE so that they could pay attention in school and learn. Meanwhile, the randomness of the thoughths they had to learn to keep under control was funneled into directed creativity.
These days, every kid is labeled with ADHD and given drugs that suppress random thoughts. Oh, sure they SEEM a little more disciplined, but we're chemically robbing them of creativity.
(I'm not saying that ADD doesn't exist. I know, because I have it. Indeed, I rely on it to help me come up with interesting random ideas. And it was indeed a long, challenging journey to learn to focus. I also realize that some people have it SO BAD that giving them some chemical help makes sense. But MOST kids in school labeled with ADHD just have discipline problems. But let's not leave it there, because often the discipline problems aren't their fault. Their diets are absolute shit. If parents would feed their kids properly, we wouldn't have half so much trouble.)
Back in the 80's and early 90's, I owned some Atari computers and did some development work on them. I would use GEnie to communicate with other developers. Even before popularity of the platform really tanked (mostly Atari's fault and the major reason most developers left), I recall the occasional developer complaining about too much piracy and deciding to drop the platform. This included private developers and also larger companies that produced games and such. Also, when moving to the PC, they would complain about how the platform sucked, but that although the piracy rate was no better, the sheer volumes of sales made it profitable.
Ok, so no proof, because it's been more than 20 years, and I can't remember any of the names. But it happened more than a few times that somsone on GEnie or at a local user's group meeting would mention that so-and-so had quit developing for Ataris.
The only reason the old antenna engineers did what they did was because they were forced to by Apple marketing and industrial design groups. And the only reason the next ones won't make the same mistake is because of hindsight, not because the new ones will be somehow more competent than the old ones.
Apple sounds like a horrible place to work. Every decision you make has to put aesthetics ahead of every other practical consideration. I bet you'd get fired for complaining too much about a problem early in the design cycle, and of course, if something goes wrong, you'll get fired for lacking the forethought. Rock and a hard place.
And indeed, we had done that at one point. We discussed with the phone rep when we should send out the payment, and we adjusted the date on the bank web site. That worked for a while, until they changed the date again.
I had an Amazon VISA, which I believe was also Chase. We had set up our bank account to automatically send payments on time, and all we had to do was respond to the reminder and put the amount in. Well, then Chase started changing the due date on us, every couple of months. We'd find out the next billing cycle that we'd been late (because they shifted the date and charged us a late fee), and we had to call them to complain, get them to take off the late fee, and shift back the due date. Then one time, I told them that if they did it again, I would cancel. Well, of course, it happened again. It took me about an hour on the phone to get them to finally cancel the card. I told them that they would have to promise in writing that they would never again change the due date, but of course they were not able to do it. They kept going on and on about all the benefits I'd racked up since I had been a loyal customer and had joined in like 1999 or something, and I responded that they were not treating me well for having been a loyal customer. Some of their arguments, IIRC, were rather inane. All I wanted was a certain kind of consistent treatment, and instead they were making the due date a moving target so they could rack up late fees. We now have a Barnes and Noble credit card. Heh.
I don't know. Verizon is a lot like Foxconn, except that their employees aren't the only ones they induce to commit suicide. If they waived the early termination fee for every death they were responsible for, they'd be running at a major loss.
I'm not the only one who noticed this. There are hoards of blog and forum posts about this. iOS4 is actually SLOWER than the 3.x version, especially on the iPhone 3G. Good going, Apple.
Actually, the primary form of reasoning that humans use is "abductive inference", of which induction is a special case.
What really amazes me is how many people in AI miss out on this fact. I saw a talk recently where someone implemented an AI algorithm that be explained as using "Occam's Razor". In essence, his algorithm was reasoning to the simplest explanation. If you use "simplest" as a proxy for "likeliest", then you have classical abduction. He had apparently never heard of abductive inference, and this meant that he missed out on a lot of the formalisms that had been developed to implement abductive inference engines. I hope he looked into it, because he could really improve on his work.
Another commenter is correct in pointing out that what they're doing is using leakage current. When we measure power dissipation, we count two things, (a) dynamic power, which is used when a transistor switches and is a function of frequency, voltage, and temperature, and (b) static (leakage) power, which is always going on and is a function of voltage and temperature. At 180nm, the ratio of dynamic to static was about 1000:1. It started to become noticed at around 90nm and a problem at 65nm. Now at 45nm and 32nm, leakage is about half the total power usage. The best way to lower power is to reduce voltage, but this kills performance scaling. Scaling down transistors reduces dynamic power but increases relative static power, which is why processors like the Core i7 use not just clock gating but POWER gating, dynamically, at a functional unit level.
Regarding subthreshold, as you lower voltage, power goes down. The problem is that transistors also get slower. Above threshold, the power goes down faster than speed, so if you're using a transistor with threshold voltage of 150mV with a supply voltage of 300mV, you get like a 100th the power dissipation, but a tenth the speed, which means that you use one tenth the energy to perform some process. As you lower the supply voltage below threshold, the transistors get slower faster than the power goes down, so total energy actually goes up as you lower voltage below a certain point. There is a supply voltage point either side of the threshold voltage where energy is minimum for the range. You use near threshold or sub threshold depending on if you care about speed. Also, things behave quite differently at low voltages, so you have to change all your design techniques.
One of the problems with near and sub threshold is that you don't actually know what your threshold voltages are anymore. It's called process variation. The transistors are so tiny that you get on the order of tens of dopant atoms per transistor. The doping process is highly random, so you get wide variance on threshold voltage (and effective channel length too), meaning that two transistors next to each other have different switching characteristics. This is actually a major problem at 32nm, resulting in unfortunately large supply voltage margins to avoid timing-related errors, which translates into excessive power usage. It's an even bigger problem when the supply is near the threshold (above or below), because the speed of a transistor and its power output are actually functions of the difference between supply voltage and threshold voltage. If the supply is 300mV, then the transistor with Vth=130 is going to be way faster (and way leakier) than the transistor on the same die with Vth=170. Of course, both were designed to have Vth=150, but you can't control that well enough.
My area of research involves coping with the 5X decrease in reliability at NTC, and I'll talk more about it when my papers are accepted. :)
Hey, Apple, how about adding proper crash recovery and session management to Safari? I hate to inform you, but Safari DOES crash now and then, and we shouldn't have to install Saft to get something as elementary as the ability to return to the state we were in before your browser decided to take a core dump, despite the fact that I've disabled Flash. And how about session management? I'd like to be able to quit the browser and restore the state properly when I reopen. Yes, I am aware of "History > Reopen All Windows From Last Session". But it's unreliable, because if something doesn't reload properly, and I quit, the only thing saved in the session is the "couldn't connect" page. The history for that tab is GONE. What you really need to do is load from cache like Firefox does.
And how about your memory management? If I open the same set of documents in Firefox and Safari, Firefox uses a fraction the memory of Safari.
(It's too bad Firefox isn't usable on a Mac because it completely prevents a Mac from sleeping after idle. The bugzilla entry on that has been open for a really long time and gets no attention. Meanwhile, they're all over Private Browsing.)
I'm going to try out Chrome, but reportedly, its memory management is much worse than either. (http://dotnetperls.com/chrome-memory)
I'm wondering if the Dunning–Kruger effect may have anything to do with this. This mainly has to do with the fact that people's incompetence blinds them to the fact of their incompletence.
However, I've encountered people across all ranges of IQs who (myself included from time to time), at least for certain things, insist on being dogmatic in the face of reasonable counterevidence.
Of course, we don't want to take science as dogma either. Scientists are basically human beings, who make mistakes. We shouldn't just unquestioningly accept everything that comes out of the mouth of a scientist. On the other hand, if something has been peer-reviewed and withstood a far amount of scrutiny, it definitely worth taking seriously.
I think part of the problem is that many people have a hard time "believing" two contradictory ideas or at least seriously contemplating them at the same time. Unfortunately, this is frequently necessary in the face of incomplete information. Two ideas that seem mutually exclusive are each supported by some body of reasonable evidence.
Holy crap, it's like you too my feelings about the whole issue and expressed it in better words than I could have.
I've been using computers since the late 70's myself. Before I had my own 8-bit computer in 1981, I was programming TI calculators and writing Fortran programs for Amdahl mainframes. I know at least a dozen CURRENT programming languages, on top of a few old ones I've forgotten. After I got my B.S. in computer engineering, I worked for 9 years writing device drivers (mostly graphics) and eventually learned chip design, which is what I mostly do now as a consultant. At the moment, I'm working on my Ph.D. in computer science, specializing in computer architecture (mostly CPU architectures, dealing with issues of performance, power consumption, manufacturing variation, and reliability).
In short, I'm a computer nerd through and through. I have a long history, and I know a hell of a lot about computers.
And in my years as a computer nerd, the moments of frustration with computers not automatically doing things that should be obviously automatic, crashing at inopportune times, and just all-around being brain-dead have accumulated in my mind, culminating in me saying "fuck it" to all the annoying bullshit and buying a Mac. Why? Because a Mac doesn't get in my way. Basic things "just work", like wireless networking, accessing myriad peripherals, storing data, backing up data, restoring from backups, not crashing, not getting viruses, making it easy to find my documents, making it easy to mulitask, ad infinitum.
Don't tell me that Linux is just as good. I run Linux on my home server. Gentoo, in fact. I have it working great, so yes, I know what I'm doing. I know HOW to do all this stuff. And I do it when it meets some need. But to have to fight it on a daily basis does nothing but get in the way of me doing useful work.
I want to get technical at MY whim, not at the computer's whim. The computer is a slave to me, not the other way around.
So, in summary, I'm grown impatient with having to do the same tasks over and over again that should just happen correctly and automatically. MacOS isn't perfect at that, but it is by far much less of a hassle than either Windows 7 or the latest and greatest "user friendly" Linux distros. I value my time, my energy, my relaxation, utility, and ease of use over some abstract sense of "Freedom" that isn't really freedom if I can't accomplish my goals with it without investing an inordinate amount of time into what is nothing more than a distraction.
The article mentions MacOS X. Unfortunately, Firefox is not a good browser to use on Apple notebooks under MacOS, because it actively prevents the machine from going to sleep if you leave it idle. It'll just drain your battery down. And compared to Safari, Firefox uses significantly more CPU load for exactly the same set of pages (I've tested this across a lot of different combinations). So Firefox will drain your battery faster.
What I like about Firefox is that it's a memory miser. Compared to everything else (that I've tried and according to various articles I've read), Firefox is much skimpier on memory usage. Its data structures are smaller to begin with, and it's better about releasing memory back to the OS. In theory, you should be able to have more documents open at the same time without hitting swap. The trouble is, each open document adds appreciably to the CPU load, which creates another limitation to the number of documents you WANT to have open, else you drain your battery too fast.
Firefox also has much better crash protection. Safari+Saft is acceptable but still problematic. I tend to use Firefox nightly builds, which crash slightly more often, but it's so good at restoring to the state you left, it almost doesn't matter. (Someone once pointed out that crash reliability is what prevents sleep, but this should not be true, because if you're not doing anything, there's no changed state that needs to be saved.)
I didn't leave the program entirely. I changed specialties. The actual reason I left AI was somewhat different from that. My problem with ASR is that I would have hated working on it because there would have been no room for real innovation. Not to say that I'm some kind of genius in processor architecture, but there are some exciting things people are working on that are really outside of the box.
The main thing that got me out of AI was this: My subfield was knowledge-based reasoning (we used a lot of abductive inference). When I started in the program, there were 8 people in the lab I had joined. But by the time I finished the core courses, there was no one left. 7 had graduated, and one was AWOL. The prof who ran the lab retired. And the other prof who was left was always busy with his business. So there was absolutely no one to work with. As a junior grad student, trying to break into a big field is almost impossible if you have no mentoring. I tried to work on a few papers, but the reviews I got back convinced me that (a) I wasn't up to speed in the areas, and (b) the work required to fix the papers was beyond my capacity alone. If I'd had at least one other student to work with, I might have been able to keep going.
Instead, what I decided to do was cut my losses and go into another area where I already basically new the material. I'd worked as a chip designer and was well-read in the area of computer architecture. Plus, a new prof was hired in exactly that area. It's been great, because he's enthusiastic to make his mark and get tenure, and he has start-up funding, so we work closely together.
Since I have also studied Linguistics, I do have some ideas here, but honestly, I don't really think I understand the field well enough to make any impact myself. I also fear that I just don't have the intellect for it. There are some areas like high cardinality infinities in mathematics that just baffle me -- it would take another lifetime for me to understand the existing stuff, let alone invent something new. Maybe NLP isn't THAT hard, but there's only so much I can do.
When I started on my Ph.D., I started out majoring in AI. One of several reasons I changed to computer architecture (CPU design, etc.) is because I just couldn't stand the broken ways that people were doing stuff. Actually computer vision stuff isn't so bad -- at least there's room for advancement. But the speech recognition state of the art is just awful. I couldn't stand the way they did much of anything in pursuit of human language understanding.
With automatic speech recognition (ASR), the first problem is the MFCCs. (Mel-frequency cepstral coefficients.) What they essentially do is take a fourier transform of a fourier transform of the data. This filters out not only amplitude but also frequency, leaving you only with the relative pattern of frequency. Think of this as analogous to taking a second derivative, where all you get is accelerating, leaving out position and velocity. You lose a LOT of information. Then once the MFCC's are computed, they're divided up into the top 13 (or so) dominant MFCCs, plus the first and second step-wise derivatives, giving you a 39D vector. Then the top N most common ones are tallied, and code-booked, mapping the rest to the nearest codes, leaving you with a relatively small number of codes (maybe a few hundred).
So to start with, the signal processing is half deaf, throwing away most of the information. I get why they do it, because it's speaker independent, but you completely lose some VERY valuable information, like prosodic stress, which would be very useful to help with word segmentation. Instead, they try to guess it from statistical models.
Next, they apply a hidden Markov model (HMM). Instead of inferring phones from the signal, the way they model it is as a sequence of hidden states (the phones) that cause the observations (the codes). This statistical model seems kinda backwards, although it works quite well, when trained properly. To train it, you need a lot of labeled data, where people have taken lots of speech recordings and manually labeled the phonetic segments. What is usually learned is mostly a unigram, where what you know are the a priori probabilities of each phone label (the hidden states), and the posterior probability of each phone given each possible prior phone. Given a sequence of codes, you find the most likely sequence of phones by computing the viterbi path through the HMM.
Honestly, I can't complain too much about the HMM. What I do complain about is the fact that the "cutting edge" is to replace the HMM with a markov random field (just remove the arrows from the HMM), and conditional random fields (which are markov random fields with extra inputs).
My response to using MRFs and CRFs is "big whoop", because all you're doing is replacing the statistical model, which doesn't dramatically improve recognition performance, because they haven't fixed the underlying problem with the signal processing.
Then on top of the phone HMM, they layer ANOTHER HMM on top of it to infer words and word boundaries, based on a highly inaccurate phone sequence.
The main problem with all of this is not that the reseachers are idiots. They're not. The problem is that the people with the funding are totally unwilling to fund anything really interesting or revolutionary. The existing methods "work", so the funding sources figure that we can just make incremental changes to existing technologies. Which is wrong. Unfortunately, any radically new technology would be highly experimental, with a high risk of failure, and would take a long time to develop. No one wants to fund anything that iffy. As a result, all the scientists working in this are spend their time on nothing but boring tweaks of a broken but "proven" reasonably effective technology.
So I don't blame people for the conundrum, but I see no opportunity to do anything interesting, so I just couldn't stand studying it.