These days I don't often see actual improvements to software. Most "improvements" just add more bloat atop the already existing bloat; however, the Chrome browser has a really neat ability to use Bluetooth and serial ports connected to your computer.
I've used this to do some interesting (at least to me) things, such as remotely connect to a computer at a Boy Scout pinewood derby race and implement a simple browser-based timing interface that communicates with the track's timers via RS-232 and displays the results. From there, it's an easy task to export the results to a spreadsheet or further process the times using Javascript.
Something that interests me more is figuring out how to use this to extend embedded systems based on 40-year old microcontroller cores (Silicon Labs 8051s in particular). Chrome allows the microcontroller to connect to the computer via Bluetooth, and a presentation system written in Javascript handles converting the terminal-based communications from the 8051 into a GUI for the user.
I have about 8,051 ideas for how this can be used, including allowing control of an embedded system from across the planet, without requiring the embedded system to have any special firmware, or requiring the user to download anything but a browser many people already have installed. Additionally, it makes embedded systems accessible from mobile devices without having to go through the bass-ackwards and convoluted chore of creating mobile apps.
This also compliments an already existing piece of the operating system I've written to enable devices like 8051s to share resources such as flash and RAM, as well as allow firmware to access ports and other hardware on remote devices as if they were on the 8051 where the firmware is executing. By writing a node for this system in Javascript and connecting to the 8051, the computer running Chrome can do all the usual things but also act as a vast array of secondary or tertiary storage, perform complex calculations, and so on.
Finally, another interesting application is to perform automated configuration/troubleshooting/updating of an embedded system via the embedded system's terminal and using Javascript in Chrome on the laptop, desktop, or even under the direction of a server running PHP. And again, the wonderful thing is no additional software is required on any of the systems, as long as Chrome is already installed.
In the screenshot above, the "host" system automatically queried the embedded system once it was connected. The host asked for the number of output ports on the embedded system, and received a reply of 4. The host then requested the status of each port, and updated the GUI accordingly. Of course, the HTML/JS/CSS is still being worked on, and I'm hardly a guru at those two. For every item I add and get working, it seems I break something else. But, that's how things go when you rarely use a language.