Doing several things at once is a trick we play on ourselves, thinking we're getting more done. In reality, our productivity goes down by as much as 40%. We don't actually multitask. We switch-task, rapidly shifting from one thing to another, interrupting ourselves unproductively, and losing time in the process.No one is exempt from this, but some people are better at switch-tasking than others. For my part, I try to put my all into whatever I am doing, ergo I am a big proponent of single-tasking.
Tuesday, December 28, 2010
Another knock against the "Multitasking is good" argument
Thursday, December 16, 2010
The Chaos Monkey
One of the first systems our engineers built in AWS is called the Chaos Monkey. The Chaos Monkey’s job is to randomly kill instances and services within our architecture. If we aren’t constantly testing our ability to succeed despite failure, then it isn’t likely to work when it matters most – in the event of an unexpected outage.Cool.
Wednesday, December 15, 2010
Firefox's new Infallible memory allocators
When working on Windows, we were trained to write and test code under low memory conditions to ensure that code was resilient to allocation failures and the like. The question that always came up was, "What is the apt behavior when an allocation fails?"
Well, the good folks at Mozilla have given us one answer - crash.
Well, the good folks at Mozilla have given us one answer - crash.
Interesting concept in my opinion, as long as the application has a chance to log its state, failure code, and die "gracefully".How can memory allocation be infallible?
The term "infallible" means that your memory allocation request is guaranteed to succeed: your code can never see a failed request, and so doesn't need to check for failure.
Inside the allocation routine, the situation is different. Under extreme memory conditions, it's possible that the allocation will fail; however, the allocation routine will not, in this scenario, return to your code. Instead, the application will terminate. This should be rare, because the memory management system will do everything it can to find the memory you've asked for.
Choosing a memory allocator
As you write new code that needs to allocate memory, there are some simple rules to follow to help you decide whether to use a fallible or an infallible memory allocator:
If you're allocating what may be a large chunk of memory, you should allocate the memory fallibly (using moz_malloc() for example), and check the result to be sure it's not null. You should do this for large memory allocations because in extremely low memory conditions, as described in How can memory allocation be infallible?, the application may terminate if an infallible allocator can't find the memory you requested.
If you don't know whether or not the memory will be large, use the standard malloc() routine, which is currently fallible but will eventually become infallible. Be sure to check the result for null.
When instantiating objects, the new operator creates them infallibly by default. If you want to allocate them fallibly, use the syntax new (fallible_t()) Foo().
When in doubt, use the infallible allocator and don't null check.
Tuesday, November 16, 2010
File under engineer makes something that no one needs: Facebook messaging
This solution doesn't actually solve any user problem. Humans were successfully texting, IMing, and emailing each other, before SmartEngineer came along & decided to slam them all together into a mixed up mess, in the name of "abstracting away the transport."Way to have your finger on the pulse of your users.
Thursday, November 11, 2010
Comprehensive Windows Phone 7 review
There’s a lot of complaints in this blog post and that is indicative of this being version one of Windows Phone – I used the word “unfinished” a couple of times and that sums up the whole phone pretty well. Happily the majority of these irksome foibles are not core to the phone and can be easily fixed and I’m sure that will happen in the not too distant future. I don’t want to give the impression that I’m not enjoying the phone –I am, I’m loving it- but be aware of its shortcomings before you decide to jump in!All of the complaints were issues in the original iPhone as well. We all know how that cookie crumbled, so let's hope that Microsoft is serious about this platform and ready to ride the wave of good press its unique Metro interface is garnering. They need to innovate early, often and if the stars align, they will become not just pioneers but the leaders in this space.
Saturday, November 06, 2010
You like cheese?
Americans now eat an average of 33 pounds of cheese a year, nearly triple the 1970 rate. Cheese has become the largest source of saturated fat; an ounce of many cheeses contains as much saturated fat as a glass of whole milk.Still? Time for a rethink... And for people to stop hating so much on Whole Milk!
...
Consider the Taco Bell steak quesadilla, with cheddar, pepper jack, mozzarella and a creamy sauce. “The item used an average of eight times more cheese than other items on their menu,” the Agriculture Department said in a report, extolling Dairy Management’s work — without mentioning that the quesadilla has more than three-quarters of the daily recommended level of saturated fat and sodium.
Cutting taxes for the rich truly boggles my mind
The richest 0.1 percent of taxpayers would get a tax cut of $61,000 from President Obama. They would get $370,000 from Republicans, according to the nonpartisan Tax Policy Center. And that provides only a modest economic stimulus, because the rich are less likely to spend their tax savings.I think the American people need to understand one simple fact - taxes form the main revenue stream for the government. The government uses part of this money to fund programs all over the country. More importantly, taxes serve to reduce the national budget deficit. I have heard politicians talk about lowering taxes and lowering the budget/trade deficit in the same breath; this is a mathematical impossibility. It is, I repeat, IMPOSSIBLE.
At a time of 9.6 percent unemployment, wouldn’t it make more sense to finance a jobs program? For example, the money could be used to avoid laying off teachers and undermining American schools.
Republicans complain that income redistribution - the act of taxing the rich and distributing the taxes among the poor - isn't in the Constitution. I agree. But, vetoing and blanket dismissing initiatives that increase taxes on the rich using the fear of "Income Redistribution" is specious and misleading. The revenues from such tax increases can be put to other uses.
Update: Gruber has an interesting take on this as well
Subscribe to:
Posts (Atom)