Saturday, April 2, 2016

Distracted Driving: Let's Slay the Monster We Created

Almost every day we see it: Someone in one of the cars around you moving down the road at high speed with their attention focused on their smartphone instead of the traffic around them. It's a global phenomenon, and there's no sign of it decreasing in frequency despite all the laws against it. According to distraction.gov, the official US government website for distracted driving, 3,179 people were killed and 431,000 were injured in motor vehicle crashes involving distracted drivers in the USA during 2014. The World Health Organization predicts that by 2030, road traffic injuries will be the fifth leading cause of death globally, surpassing AIDS, diabetes, violence, and all forms of cancer. Yet with all that carnage, the site goes on to say: "The best way to end distracted driving is to educate all Americans about the danger it poses."

As a technologist, this is appalling to me. This problem exists because of the smartphone and mobile network technology we have created, and has grown because of the improvements we have made to that technology specifically so that all of us can be connected at all times, everywhere. Yet our best solution is to try to convince people that they shouldn't do the very thing that the technology was designed to enable!

I can't accept that, and I think we need to devise and implement technological solutions for this technological problem. Certainly people can and will continue to eat, drink, groom themselves, and engage in other distracting activities while driving, but I think we all agree that very few of these have the same distractive capacity as messages and other notifications that are actively pushed to your device at random times during the day causing it to flash, shake, and make all kinds of noises to get your attention.

The solution seems obvious: Simply stop the driver's phone from creating or allowing distractions while the vehicle is moving. Unfortunately, a logical examination of that approach leads to another set of problems that are not easily addressed:

  • How do you know that the user is driving and not just a passenger in a car, bus, or train?
  • What applications are allowed? Should the driver be able to have a voice conversation over Bluetooth? Should they be able to have a voice interaction with Siri, Alexa, or Cortana? What about Google Maps? Pandora radio? How do you allow some interactions and prevent others?
  • How do you disable the driver's phone yet allow the passengers' phones to continue normal operation? People have multiple cars, multiple devices, and people also rent and share cars, so this is not straightforward.
  • How do you deal with people who actively try to bypass or override the control mechanisms?

This used to be a problem related solely to text messaging, and perhaps could have been addressed through controlling SMS delivery in the mobile operator networks, but now it's about mobile applications over the Internet. Since you cannot disable Internet service without making the device completely useless, the solution must lie with the device manufacturers and the automobile manufacturers. I don't know what the answer is, but I believe it will involve a few specific technological components. 

First, every mobile device must be able to transition into a Driver Mode that limits its capabilities. For example, screen input may be disabled and only voice interaction permitted. Applications will have to be qualified to operate in this mode, and if not they will be disabled by the device operating system.

Second, every automobile must be able to provide information to the device that would allow it to engage and disengage Driver Mode at appropriate times, such as when the car is put into or taken out of a drive gear, or when the car is in motion or stopped.

The automobile could also assist or take over engagement with the driver in more intelligent ways, perhaps via technologies such as Apple's CarPlay or Google's Android Auto. It's certainly better to present visual information on the car's dashboard or infotainment display than require the driver to look at their phone's screen, and it's also better to present audio information over the car's speakers than those on the phone. In today's world where every smartphone can use Bluetooth and screen sharing, this should not be a big leap.

Finally, there will have to be some solution for dealing with multiple devices in the car. One approach may be to have each device's location precisely analyzed to determine which one is nearest the driver's position. Another may be for the car to detect all devices and force one to be placed into Driver Mode with the notion that passengers would object to having their phone disabled by the driver.

There are a few technical solutions available now, such as CellControl, but these are mainly for teen drivers and require parents to install and configure hardware in the car and applications on their child's phone. Most adults would never voluntarily install this kind of control, and could choose to opt out of it whenever they wanted. 

I think this problem is serious enough that phone and car manufacturers should get together and agree to a solution that works, and ensure that the technology is standardized, documented, and freely licensed. A subset of drivers will try to circumvent the solution, but the majority of drivers will probably appreciate the improved interaction and integration between their phones and cars and never look back.

If you have any thoughts on this important problem, please share them!

Saturday, December 4, 2010

2010 MacBook Air: Lose weight, and nothing else

Now that I've had a few weeks (with one slight interruption) to get to work with the MacBook Air, I thought I'd share my findings.

I bought the top-end 13" Air with the intent of replacing my early-2008 15" MacBook Pro as my sole personal computer at home and work. Here are the specs:
  • Pro: 2.6Ghz Core2 Duo, 4GB RAM, GeForce 8600M GPU, 7200RPM HDD
  • Air: 2.13GHz Core2 Duo, 4GB RAM, GeForce 320M GPU, 256GB SSD
One of my biggest concerns was performance — I wondered if the Air could live up to the level of the Pro. Here's what I found out:

The screen is physically smaller, but the resolution is the same (1440x900) so the actual real estate is unchanged. The GPU is comparable, and both 2D and 3D graphics are snappy. The mini display port interface on the Air is superior to the DVI port on the Pro since it can support higher resolution displays and can carry both audio and video.

The CPU is slightly slower but the memory is faster; the new Air has a 1066MHz bus compared to the 800 MHz bus on my '08 Pro. So far this more than makes up for the CPU speed reduction in my estimation; response time in all applications (even graphically-intensive apps like iPhoto) seems to be the same or better.

There's no comparing disk performance — the Air blows the Pro away due to its use of solid state drive technology. Since the Air doesn't contain a 'disk' at all, but instead stores all of its data in memory chips, the access time for reading files is lightning fast and writing files is also faster. Even better, the Air has a 56GB storage advantage over the 200GB drive in the Pro.

The Air's audio is better, with a new under-keyboard speaker system that sounds fuller and less tinny than the speakers on the Pro.

The battery on the Air is delivering about 6-8 hours of normal use. This is double the amount of time I would get on the Pro.

At 2.9 pounds, the Air is 2.5 pounds lighter than the Pro. Considering the Air's smaller power adapter, the total carry package is about 50% lighter.

Peripheral connectivity options favor the Pro but, with two USB ports and a built-in SD card slot, the Air is more than adequate. However, the lack of a FireWire port on the Air may be a problem for cinematographers.

So, all in all:
  • computation and graphics capability are about the same
  • audio is a little better
  • data storage and retrieval is much better
  • battery performance is twice as good
  • carry weight is halved
  • lacking a FireWire port (not an issue for me)
At $1799, the Air turned out to be a good value for me and I've totally transitioned to it as my only personal computer.

Sunday, November 21, 2010

Customer Service: One Reason Why Apple is Awesome

Last weekend I bought a new MacBook Air. Rationally, I did it because I wanted to reduce the weight of my travel bag; actually, I did it because it looks cool and I wanted a notebook with solid state storage.

After spending a day with it and getting it all set up for my office and home networks, installing software, and copying files from my older MacBook Pro, I decided to take it in to the office. As I was walking from my car into the building, the strap on my bag somehow unfastened and the bag and all its contents (the new Air and also my iPad) crashed onto the concrete floor.

I unzipped the bag to look inside; the iPad seemed OK, but the Air had a big dent in the corner of the case. Opening it revealed damage to both the top lid that contains the display and the bottom that contains the keyboard and logic board. Miraculously, the thing still worked and there was no damage to the screen. I probably could have lived with it, but the bent metal was keeping the top from closing completely on that side and I was afraid that the display would eventually get damaged from flexing.

So I made an appointment with the Apple Genius Bar at my local Apple Store in Tampa, and took the machine in. I was expecting that the lid and bottom case would have to be replaced and that it would cost me a fair amount of money.

The employee there looked at it, confirmed my view of what had to be replaced, and said that they would fix it — for free!

I was floored. I know that it is going to cost them at least a few hundred dollars in time and materials for this repair. In addition to this, they thought it would take 5 days to get the parts since the machine was so new, but three days later they completed the repair.

So now I'm on the way to pick up the computer and definitely thinking that I am going to be a loyal Apple customer for a long time. Way to go, Apple!

Tuesday, August 10, 2010

Why the Volt is a Great Idea



General Motors has had its share of bad ideas over the years, but I think they have a really good one in the Volt.

The Volt is a new electric car that will be released this fall in the USA at a price of $41,000. After government tax credits, that price will be effectively reduced to $33,500.

What's interesting about the Volt is its practicality. First of all, from the outside you would never know it was anything special. It looks like a normal car. It has four doors and a roomy hatch. It has room for four people and their luggage. It has a radio, air conditioning, GPS, and OnStar service. You can fill it with gas, just like an ICE (internal combustion engine) or hybrid car. You can also plug it in to charge the battery, just like a pure electric car.

Yet compared to ICE cars, hybrid cars like the Prius, and pure electric cars like the Tesla, the Volt is very unique. Unlike an ICE car, the Volt is driven by electric power, not a gas engine. Unlike a hybrid car, an electric motor drives the wheels at all times; there is no complex transmission that connects the gas motor to the electric motor. Unlike a pure electric car the Volt has a gas engine in addition to a battery.

The battery in a Volt has more power than the battery in a hybrid, but less power than one in a pure electric car. When fully charged it can carry the car for about 40 miles of normal driving. After that, the gas motor starts up and generates the power to drive the electric motor another 300 miles per tankful.

This resolves the key dilemmas of hybrid and pure electric cars. Hybrid cars run mostly on gas so even on short trips gas is consumed and pollution is created; in the end they are only slightly more efficient than normal ICE cars. Pure electric cars run solely on battery, but when the battery is drained it takes hours to recharge, making the car impractical for long trips and causing a persistent fear of unplanned detours and the possibility of being stranded. But the Volt allows the driver to go as long as they want, stopping for just a few minutes every 300 miles to refill the gas tank.

This key capability will be what allows people to finally embrace an electric car as a practical vehicle. Though most trips and daily commutes are fairly short, we all make long trips from time to time and most of us can't afford to have a different car for those longer trips.

I drive about 40 miles to work and back each day, so on weekdays I will use almost no gasoline. Since the price of electricity per mile is radically lower than the price of gas per mile, I will save a lot of money. I will also generate a lot less pollution. Electricity from the grid has the added benefit of being generated from multiple different fuels (coal, natural gas, oil, nuclear) or even renewable sources like wind and solar power. Much of this power can be generated domestically, eliminating dependencies on foreign energy sources.

This is why I can see the Volt becoming a very popular car, and the first really practical electric car to ever be mass produced. Kudos to the engineers at GM for coming up with such a brilliantly simple concept, and kudos to the management for embracing the concept and getting it to market.

Monday, August 9, 2010

'Net Neutrality, Take Two...

Two companies, that is. Google and Verizon, the behemoth of Internet content and the leviathan of US mobile and fiber optic broadband.

Today they announced a proposed "legislative framework" around 'net neutrality. If you're not sure what this all about, here's a brief overview:

The Internet is a collection of networks that carry data between computers. This data is transported in the form of packets, where one logical communication, a video for example, is broken down into a series of packets that are carried from the sender to the receiver. This is a core feature of the Internet, and makes it very resilient because packets can be sent along many paths to get to their destination, so if in the middle of a transfer a cable gets cut somewhere the packets can immediately be re-routed over a different connection to get to the destination.

Now all of this is fine until there are more packets waiting to be sent than can be carried over any one segment of the network. When this happens, packets are delayed, like cars in a traffic jam, and the result is a slower download or choppy video. This can and does happen when there is not enough bandwidth or when bandwidth is shared across a number of users. To solve this problem companies can add more bandwidth by adding cables and equipment to the network; mobile companies might add more cell towers and backhaul circuits.

Another approach to solving this problem is to prioritize traffic, so that some packets get sent with a higher priority than others. Imagine a highway with bus or carpool lanes; while most cars sit in rush hour traffic, carpools and buses zip by at full speed. The network can be just like that, with certain bandwidth reserved for specific types of packets.

Where this gets interesting is that many of the companies that provide Internet connections and carry packets also provide data services. Consider your cable TV company — you can buy Internet service from them but they also provide video and voice services. What would happen if they protected the quality of their video and voice services by reducing the quality of Netflix and Skype? Would that be fair to these other companies?

This is the core argument for 'net neutrality; companies that carry Internet packets should not be allowed to prioritize some traffic at the cost of other traffic. If you prioritize, you are not neutral because you will make that prioritized service better than the non-prioritized service.

The concern is that without rules that require network companies to treat all packets equally, they will eventually resort to prioritizing their services and throttling those of competitors. The cable company wants you to use their video on demand, not Netflix or Hulu. The phone company wants you to use their voice service, not Skype or Fring. Thus, in the end, these alternative services won't get a fair chance because the network companies will choke them out and stifle competition.

I agree with a general policy that would prevent traffic prioritization, and think there ought to be a clear delineation between companies that transport packets and companies that provide data services like email, video, voice calling, and social networking. Without this, the Internet innovation engine will stall and we will return to the bad old days when a few big companies controlled all the information and communication services available to us. Even though there is no longer a telecommunications monopoly, over 97% of the US population gets mobile service from just four companies (Verizon, AT&T, Sprint, and T-Mobile) and a very large portion gets fixed line service from Verizon, AT&T, and a small number of major cable companies, so a small number of large companies have an awful lot of power.

However, in this announcement Google and Verizon take it upon themselves to define a framework where some traffic can be prioritized to allow broadband service providers to offer "differentiated services" whose packets could be prioritized over others. I think this loophole would be exercised to the maximum extent possible by the consumer fixed and mobile broadband companies in order to preserve their revenues at the expense of competitors.

What do you think?

Wednesday, September 30, 2009

The Ethics of Automated Weapons

I regularly follow developments in technology of all sorts, including in the computing, aerospace, and military fields. One thing that's becoming quite clear to me is that applications of automated killing are rapidly proliferating. As someone who knows a thing or two about computers and the software that runs them, I am more than a little concerned.

In the US, virtually all branches of our military are devising, developing, and deploying unmanned machines that are capable of taking lives. These include aircraft, ships, and ground vehicles.



These systems had humble beginnings focused on support functions like reconnaissance and mobility; aircraft with sensors and cameras that could observe targets and vehicles that could carry gear across rough terrain. They were like remote controlled toys on steroids, reducing the risk to our troops and increasing their combat effectiveness.



As the machines became more robust and reliable, their functional envelope was extended to contain offensive capabilities. It is now common for these machines to carry air to ground missiles, bombs, cannons, and machine guns. We regularly hear about unmanned aerial vehicle (UAV) strikes on ground targets in Iraq, Pakistan, and Afghanistan.

Today, each of these vehicles requires direct human supervision. UAVs have pilots that fly via remote control from thousands of miles away. I sometimes wonder about the morality of killing through a video screen and then going home for dinner with the family. Does this lead to a lower threshold for deciding to kill? Does it remove some of the moral repercussions of killing? Will the reduced risk to our citizens make us more apt to select war as a means to further our national interests?

Even more challenging, the future direction is clearly towards autonomous or semi-autonomous killing machines. There are many valid arguments for this strategy. The time delay inherent in remote communication reduces the effectiveness of current remote controlled vehicles; UAV pilots report that there is up to a two second time delay between their control inputs and the actual change in the aircraft's attitude, and the images being displayed back are similarly delayed. This results in a reduced ability to lock on to fast-moving targets and avoid threats that could destroy the UAV. If the UAV could be directed to a target and then allowed to operate on its own, it could make rapid course corrections that would increase its ability to successfully carry out the attack and avoid or escape from threats. This would be a semi-autonomous UAV, because a human operator still designated the target and decided to attack it. Fully-autonomous vehicles would simply be directed to a patrol area and could decide on their own when to engage a target or flee from a threat.

Additionally, autonomous machines could be programmed to coordinate attacks in real time with other machines in the area; for example a fast moving jet carrying bombs working in tandem with a helicopter hovering behind a treeline, and the helicopter popping up just in time to point a laser designator on a target to guide the jet's bombs thus minimizing the risk to both vehicles and increasing the probability of a successful attack.

The notion of autonomous killing machines raises three key concerns:
  1. What if the machine fails to select appropriate targets? In the best case, a valid target may escape and cause more allied casualties later. In the worst case, allies or civilians may be killed. In the realm of asymmetrical warfare, it is almost impossible for humans to make clear choices and avoid mistakes in these situations; my estimation is that even our best computers are not up to this task.
  2. Will this completely eliminate the ethical burden of making war? With today's UAVs, a person must still, ultimately, decide to 'pull the trigger' and take responsibility for the action. If we remove ourselves from that decision loop, will we still take moral responsibility for the actions of the machines we built and deployed? And if we don't, what will that do to the fabric of society?
  3. Who will control these machines? One thing I've learned from history is that, generally speaking, a large enough group of people will enforce moral behavior. An army won't attack a civilian population; some amoral subgroup might try, but the majority will rapidly bring them under control. In a world where a few people could control a large number of these machines, however, what would prevent a potential slaughter? And could an army of these machines be used to control the population at large in any country, even our own?
These are serious concerns, and there are probably many more I haven't considered here. Yet it seems clear that this technological development track will continue because it is a natural evolution of our current capabilities and there are reasonable arguments for it. I'm sure that I would have much stronger feelings about this if I lived in a country where these weapons are likely to be deployed, and can only tremble at the thought of being on the wrong end of a gun controlled by a soulless machine.

Friday, June 12, 2009

SDXC Raises Interesting Possibilities

I recently read this article on the new SDXC memory card standard. In early 2010, SDXC devices will store up to 64GB of data and transfer data at 52MB/s, but the industry expects capacities up to 2TB and transfer speeds up to 300MB/s within a few years.

This kind of capacity and performance in this form factor raises some interesting possibilities. Perhaps we'll keep all of our personal files on our SD cards and only keep system files on our computers, making it easier to upgrade systems or use multiple computers during the course of the day or week. All of the new MacBooks announced this week are adding an SD card slot, and many Windows PCs already offer this feature.

This will also make it easier to move data between computers and mobile devices like smart phones and media players.

I also wonder about the possibilities for high performance applications. Imagine a small RAID device with one or more USB 3 interfaces and multiple SDXC slots. Striped and mirrored, an array of 16 cards could provide 16TB of storage with aggregate transfer speeds of up to 2400MB/s. When one of the cards starts to 'wear out' — as flash cards will do over time — you just pop it out and replace it with a fresh one. No need to make backups, and no downtime from disk failures.

There are more powerful flash memory technologies available; FusionIO, for example, already offers high performance PCI Express flash cards for servers. However, the mass market aspect of SD cards means the price per GB will be lower than enterprise-class hardware. This makes it attractive for low-end and mid-range applications, and maybe even for enterprise systems looking to take advange of commodity technology.