topics:  main-page   everything   99things   things-to-do   software   space   future   exercise & health   faith  
  thought   web   movies+TV   music   mymusic   food   curiosity   tidbits   I remember   wishlist   misc   links

Canadianpharmacy is a time-tested selling place with actual methods based on privacy, quality and liability allow canadianpharmacy to be sure the supply and demand

le viagra viagra vs cialis canadian pharmacy viagra azitromicina parapharmacie en ligne parapharmacies ed drugs pharmacy en ligne cheap generic viagra avanafil viagra cialis vs viagra buy nexium acheter une pharmacie staxyn pharmacie en ligne viagra cialis generic viagra buy zithromax la parapharmacie pharmacien en ligne Canadian pharmacy ed pills buy cymbalta Canadian pharmacy viagra

Smart Home Use Cases
January 11, 2015

One of the obvious trends at CES this year, and connected with the IoT, is the smart home. I read an article today that reminds us that many people are still scratching their heads, a bit, at what the smart home will really do that is actually compelling, and whether it's going to be worth the money. For example, if you're willing to pay $100, you can teach an otherwise $10 lightbulb to listen for commands over Wi-Fi. Am I going to pay 10x the price so that I can remotely tell a light bulb to turn itself on or off? Never. Or how about my washing machine? Am I going to do back flips of excitement to be able to remotely connect to my washing machine to see where it is in its cycle? Kind of cute, but pretty uncompelling. (a classic novelty thing)

So where is all of this going? And will it really deliver value to the home? I figured I'd go the other way around -- not what technology can do today, but what the use cases are that I'd be delighted to see it be capable of.

(Many of the following things are at least a couple of decades away, etc, but I'll include them in the list anyway.)

The big three are pretty obvious, and they're a ways off, but ultimately, I think this is where much of the value lies:


I think the most alluring smart home technology would be devices that can tidy the home. For example, putting away toys in the proper bin, picking up clothes of family members that don't seem to know where the laundry bin is, etc, etc. The reason I would value this so much is that an untidy home is something that psychologically wears on me a lot, and it can take a lot of mental energy to keep on top of it. I expect we're at least 20 years a way from systems that are both capable of this and not a ridiculous amount of money. But let's be clear -- when we scratch our heads and wonder "will this ever be compelling", the self-tidying home, for me, is one of the ultimate use cases that for me says "absolutely"!


This is actually something that we started to see a few years ago -- systems that can vacuum carpeted and hard floors. But if and when this expands to include dusting furniture, cleaning kitchen surfaces, cleaning bathrooms, etc, it's obvious that customers will place high value on it.


Another high-value category. And machines are already delivering huge value in this area -- washers and dryers. But when the day comes that you drop your underwear beside your bed in the morning and it automatically finds its way into the laundry to be washed, dried, and put away, I think we can all agree that people will throw their money at the solution.


Beyond these big three, here is a long list of little things, some of which are much closer to being plausible:

Lights that automatically turn themselves off when people aren't in the room. This sounds simple, but I would really appreciate this. The number of times I've had to turn off Eli's light or the bathroom light is a bit depressing. Not having to think about turning lights off would be pretty nice.

Sometimes we put something in the washing machine but don't hear it beep, or don't attend to it immediately, and then we forget. We then discover it a day or two later, and the wet laundry stinks and needs to be re-washed. It would be great if the washing machine would send me an email after 4 hours, and again after 8 hours, etc, if not attended to yet.

Last year (?) I left the BBQ on for 19 hours on high. It sure would have been nice if our smartphone beeped shortly after we emptied the BBQ and left it running. On a similar note, it would be nice if we would be notified anytime *any* gas-using device was left on accidentally. (by monitoring the gas line itself)

Sometimes (3 times a year, perhaps), I forget to close the garage door and we go to bed with the garage wide open for the whole night. Wouldn't it be nice if the house let us know we had forgotten to close the garage door?

I'd like it if every device in the home internally measured how much energy it was drawing, and kept track of that in terms of when and how much it used. A master system could then aggregate that data to show you what devices were drawing what amounts of energy, and answer one-off questions such as "what percentage of our electricity bill does our TV account for", or "what devices use the most electricity", or "how much money would we save each year if we purchased such-and-such dishwasher", etc, etc.

Ultimately it would be nice if every physical thing in the home had a minuscule tag built into it so that the home knew its x/y/z coordinates. Can't find the remote? No problem. Can't remember what box such-and-such is in? Easy. Not sure whether you left something at the cottage? Just ask.

Self-diagnosing devices: Wouldn't it be great if devices had self-diagnostic abilities so that when they went caput, they could communicate to you and to the service agent exactly what went wrong, reducing the cost and time it takes to fix it, and in some cases, to allow you to fix it.

On a related note, wouldn't it be great if along with self-diagnosing devices, things were also self-documenting. So, when something goes wrong with your device, you could tap into detailed instructions that would show you how to fix it if you had the basic skills required to do so. (and if you didn't it could even link to how-to's and youtube videos to teach you how to do the basic skills required to fix the device yourself) If you didn't have a certain tool, wouldn't it be great if your family and friends were connected in such a way as to be able to see the closest friend that had that tool?

Measure waterfall and soil characteristics and recommend intelligently when it is critical to water the lawn to prevent it from dying, etc. Likewise, tell the homeowner when soil characteristics (and season, etc) are such that a fertilizer should be applied, or a grub treatment should be applied, etc.

Ping the homeowner when the furnace filter needs to be replaced, or any other seasonal thing that people tend to forget.

We had a leak in our basement this year, but I think it first started a few years ago and we didn't notice. Now we're left with a basement that sometimes has a bit of a musty odor. It would be great if homes had sensors that could detect and report any issues of this kind before they did damage, and to help localize where exactly the problem is and how bad. If sensors become cheap enough, perhaps one day this kind of thing would be feasible.

Kids eventually get to the stage where they play outside on their own. Sometimes when I peek out the window I happen to see Eli doing something unsafe, and I go outside to talk to him. It would be nice if cameras on the exterior of the home were watching everything going on, and would ping parents if something dangerous was going on that they themselves hadn't noticed. Obviously there's a danger with anything like this, where a parent might come to simply rely on the danger-detection device to catch everything, when it wouldn't.

It would be nice if a home was able to see (via infrared cameras, etc.) where thermal issues were, etc, and to be able to recommend if asked how to improve the thermal characteristics of the home, etc, or to warn the homeowner if door seals had degredated, etc, in order to be replaced.

Another very difficult but extremely valuable use case is the management of the kitchen. Namely, what meals are planned for, and what food is purchased. I worked on this one a bit in 2008. Here's the notion:
The fridge and cupboards know what is in them because food items have RFID (etc) tags.
You can therefore have the computer recommend a supper recipe based on foods in the kitchen.
You can also be walking through the super market and see what commonly used foods you recently ran out of.
This could be tied into a system that would plan your meals for you. It would optimize nutrition, cost, preference, etc, and would stay within dietary concerns, etc. It could also help reduce waste.
This could again be further automated by having the system do the ordering of the food once the meal plan had been OK'd by the home owner.
Food could be delivered rather than purchased manually at the grocery store.


Anyway, no shortage of compelling use cases, I think. But many of them will take years, and in some cases, decades, to become common place, I think. That might make for a bit of a yawn-fest in the next 10 years as the things that become available seem a bit head-scratch-worthy... I guess we'll have to wait and see how quickly things unfold.

CES 2015
January 9, 2015

January is an interesting month in the tech world because of CES -- lots of shiny gadgets being shown off, and the direction of technology becoming a bit clearer. Here are some thoughts on the next 15 years of tech based on this new information.

Perception & Devices That Move / Interact

More and more it is becoming apparent that the perceptual abilities of technologies are sharply on the rise -- the ability to devices to sense and perceive the 3D world around them. This dovetails with recent advances in machine learning.

The intuition, then, is that over the next 15 years we will see significantly more devices that can:

a)Accurately sense/perceive the physical environment around them.
b)Therefore, interact appropriately with the physical environment around them.

This is a big deal. In a sense, what we're talking about are "robots", the old concept of these mechanical creatures walking around and doing things. But this is a broader vision, really -- it is devices of all kinds, small and large, being able to perceive the real world, and behave in it. Cars, drones, vacuums, doors, thermostats, TVs, garage doors, etc.

What will this ultimately look like in 15 years? I still expect the most noticeable thing will relate to autonomous driving, but be ready to see this theme all over the place.

In industry, I see this as being incredibly significant. Automation has been kept back by this perception problem, and so if it is significantly solved, expect significant developments in industry, and in some cases, replacing person-powered jobs in factories (etc) with intelligent systems.

The Size of Computers

This shouldn't be surprising at all -- more just a confirmation of the trend we've seen over the last 40 years continuing. Computers can now be fit inside of something the size of a shirt button. So what does this mean for the next 15 years?

I think it's just "computation everywhere", which again isn't a new idea, but I think there will be a synergy that could be profound between these small devices and the Internet. It's the whole IoT thing -- Internet of things. As I've commented on in the near past, these tiny computers are really the "eyes/ears" of the "Internet organism".

I'm not sure if this will really become apparent in the next 15 years, but it could -- the increase sense of just how much this Internet organism can sense and perceive and thus potentially act on. My expectation in 15 years is that there will be a big up-tick that way.

Just expect lots of "smart" stuff... smarter street lights, smarter homes, smarter appliances, smarter cars, smarter medical diagnostic devices, smarter clothing perhaps (ex. shoes that count steps, etc.), etc. etc.

Screens / TV

Last but not least, and somewhat of a surprise to me (but perhaps shouldn't be), still lots of energy being put into the development of screens. 4K, talk of high dynamic range, etc. This all points to the next 15 years continuing to be a rich time for displays, increasing resolutions, increasing contrast, dynamic range, etc, etc. I still think this will slow down at some point, because we're approaching diminishing returns at some point, but for now, the engine is still churning pretty hard.

Function Search Engine / How To Search Engine
December 28, 2014

I had an idea recently that has sparked a lot of excitement in my mind... not infrequently, I find myself needing a function that I know has probably been implemented 10,000 different times by other software developers over the ages, and I groan that here I am, about to do it again. Other times the function might be more unique, but I'm still convinced that its something that other people have already implemented at least a few times.

What if there was a really compelling way for developers to share functions/classes? There already exist places like GitHub for sharing projects, and that's great, but so often what I want isn't an existing project, it's an existing function. Imagine this search engine was more than a search engine, it was a combination of a search engine and a source code repository like GitHub. People could upload functions, associate unit tests with them, and the site would allow others to view those functions and even run them interactively on the website to play with them. Users could file bugs against those functions, resolve those bugs / commit fixes, etc. Users could comment on functions or make requests for improvements, etc.

The second ingredient would be to make these functions very findable through clever use of NLP, etc. So, you're coding in Java and want code to download a webpage? No problem -- search for "download webpage", and see functions that do exactly that.

This could be expanded to also encompass the idea of "how to's" / "example code". Search for "Java convert string to integer" and a function would be found that demonstrates how to do that. You might not want to use the function in the end, but at least to be able to examine the function to learn how to do what you were asking for.

Next: The ability to write functions that call other functions on the site. Technically you'd be calling a certain REVISION of that function, since future revisions of the function you were calling might cause breakage, but automated tools could be used figure out if it was safe to call a newer version of that function. It would also be interesting, upon modifying your function, to see if any of the tests for things that call your function break. (A kind of canary in the coal mine that might suggest you broke something in your function)

I think this idea combines (can combine) some powerful things:

Open source
Crowd sourcing
Exponential nature of technology (building up more powerful pieces)
Ratings: People could rate functions to make them higher in the search results
Status: As people contribute more, they gain status. Useful for resumes, feeling good about one's contributions, etc.

Also imagine people defining "interfaces" + tests that define useful bundles of functionality, and being able to associate functions with interfaces. The system might even try to automatically detect when a new function matches an existing interface. Lots of interesting possibilities there.

The system could automatically sort functions by their runtime to show you which implementations were fastest, etc.

Yet another way to search for a function could be to define the arguments of a function you're about to write, the description, and a few sample input/output value pairs, and then have your IDE connect to the service to see if there are any existing matches or close matches. If so, it could essentially fill in the body of the function you were about to write automatically, or download the function and simply refer to its implementation.

Then imagine associating implementations in one language with implementations in another so that if you're learning a new language, you can simply click on a link to see how some particular thing is implemented in another language. It could also then generate metrics to show how many relative lines of code you need to implement something in one language VS another, the speed of execution, etc. That could then be used as a semi-automated tool for converting code from one language to another -- just use the properly mapped function.

And the final idea I'll propose is to provide a way to map what a function does onto a semantic model with the goal of making it even more possible to simply write a specification of what you want done, and have the site be able to cobble together the appropriate functions to do what you want, and spit out the required code.

Lots of really exciting possibilities in this space...

older >>