When the Windows 8 Developer Preview was released I noticed that the Metro style user interface was made specifically with tablet devices in mind. I could not see myself working on a “normal” laptop with Windows 8 without tablet functionalities, and remain as efficient as I am with Windows 7… even with a few weeks to get used to the new interface.
Next, I took a tablet device and put Windows 8 on it… and after that, I drove to a friend to play with his iPad. These were my first experiences working with a tablet device, so this was a whole new experience for me… and I loved it! The ease of which the user interfaces allowed me to switch from one application to the next and interact between them was amazing to me. So I think this is the way forward for the next consumer devices!
Possibilities were going through my mind, but I also envision that this was not the end. Let me explain why I think this is just the beginning.
Let’s go a few years back into the history, back when the only input devices were either a keyboard or mouse. The same problem existed with mobile phones. A big part of its surface was the interface for the user; the keyboard. When mobile phones got more and more functionalities the desire came to put a ‘qwerty’ keyboard on it. Because this increases the amount of keys dramatically an even larger part of the surface was needed for the interface.
But, that is where the virtual keyboard came in… the entire surface of the device could be used for the display and when you needed a keyboard, you could just make that visible. A different solution to the problem was to create a keyboard inside the phone that you could “pull out” when needed. Since this took up a lot of space inside the device, the devices became heavy or just had less functionality or power.
In my opinion this is somewhat the same principle with tablets and laptops. A tablet is basically a laptop with a virtual instead of a physical keyboard and a touch screen which takes over the functionality of a mouse…
But still, the biggest physical part of a tablet device remains the display, as with most mobile devices. In the case of a tablet device, the display has also been made into the interface.
So let’s take a trip into a possible future and theorize a little…
For the sake of argument, let’s assume that the display will remain the interface of choice for the user.
If the remaining challenge is the size of the display, how can we eliminate that problem? People are very visually oriented so without a display, no visual response to any input will be received. So it’s safe to say we still need a display in one form or another.
What if you could project the display on any surface that just happens to be near to you?
And what if sensors could detect you touching the surface on which the display is being projected on? Some experimental projectable keyboard where made with this technology.
This would enable you to have a small device, way smaller than a tablet, and just project the display when you need it on whatever surface just happens to be available to you at the time! If the quality of the image is good enough this might work very well.
Perhaps such a solution will not replace tablets or laptops with integrated displays, or at least not in general. It could be a device for a specific set of users. In the end, only time will tell what the future will bring…
Last evening my girl was mean to me… she told me that the “system administrator” today isn’t “god” anymore. Users are in control…and so was she! Or at least that is what she thought… mistake number one.
The people that know me understand that I see such a remark as a straight up challenge and are probably thinking something like “Omg Jeff, what the hell did you do next…?”.
I knew that she would have to work all evenings this weekend on a paper/report for her work which provides me with a beautiful chance…
Yes, there are tools to make this task way easier… but where’s the fun in that?
So, I started scripting… turning the laptop off is a little evil since she could loose some work. Turning the screen 90 degrees was my first idea, but was not able to get the script working.
Turning off the screen…what if I couldn’t get it on again and some of her work would be lost? No, turning off the screen wasn’t an option… but dimming the light is!
So, I started scripting and when I was finished I scheduled the script to run on my server at:
19:03, 19:06, 19:09, 19:20, 19:21, 19:23, 19:25, 19:27.
So… she was sitting behind one of my laptops working on some report while I was watching some TV. Yes, she was sitting behind one of MY laptops… mistake number two.
At 19:03 I heard some noise, but she seemed to found the setting in the GUI to correct the setting.
At 19:06 I heard some harder noise, and again she seemed to have used the GUI to correct it.
# Very much trying not to laugh…
At 19:10 I noticed that she gave the laptop a reboot.
# Like faith was helping me, just when I did not schedule the script, she did a reboot… *evil laugh*
At 19:14 the laptop was booted up and she was working again.
At 19:20 she made a very annoyed sound.
At 19:21 she looked at me very angry (could see it through the mirror).
# Still trying very hard not to cry out in laughter…
At 19:26 she told me that the system administrator was god…and if I could please STOP IT!!!
# Now I couldn’t hold it anymore… I started laughing and my belly still hurts from it…
Lesson: Never mess with a geek!
The following is the script I’ve used:
. $env:windir\diagnostics\system\power\powerconfig.ps1
function isAC {
(gwmi BatteryStatus -Namespace root\wmi).PowerOnline
}
function GetActiveSchemeGuid()
{
$activeSchemeGuid = [PowerConfig]::ActiveSchemeGuid()
return $activeSchemeGuid
}
function Get-VideoBrightness([bool]$isAC=$(isAC))
{
$activeSchemeGuid = $powerconfig::ActiveSchemeGuid()
$subGroupGuid = new-object system.Guid("7516b95f-f776-4464-8c53-06167f40cc99")
$settingGuid = new-object system.Guid("aded5e82-b909-4619-9949-f5d71dac0bcb")
$settingvalue = 0
$res = [PowerConfig]::ReadPowerSetting($isAC,[ref]$activeSchemeGuid,[ref]$subGroupGuid,[ref]$settingGuid,[ref]$settingvalue)
if($res -eq 0)
{
$settingvalue
}
}
function Get-DefaultVideoBrightness([bool]$isAC=$(isAC))
{
$BalancedPowerPlan = $powerconfig::BalancedPowerPlan()
$subGroupGuid = new-object system.Guid("7516b95f-f776-4464-8c53-06167f40cc99")
$settingGuid = new-object system.Guid("aded5e82-b909-4619-9949-f5d71dac0bcb")
$settingvalue = 0
$res = [PowerConfig]::ReadDefaultSetting($isAC,[ref]$BalancedPowerPlan,[ref]$subGroupGuid,[ref]$settingGuid,[ref]$settingvalue)
if($res -eq 0)
{
return $settingvalue
}
}
function Set-VideoBrightness([int]$settingvalue = 100, [bool]$isAC=$(isAC))
{
$activeSchemeGuid = $powerconfig::ActiveSchemeGuid()
$subGroupGuid = new-object system.Guid("7516b95f-f776-4464-8c53-06167f40cc99")
$settingGuid = new-object system.Guid("aded5e82-b909-4619-9949-f5d71dac0bcb")
[void][PowerConfig]::WritePowerSetting($isAC,[ref]$activeSchemeGuid,[ref]$subGroupGuid,[ref]$settingGuid,$settingvalue)
}
Get-VideoBrightness
Get-DefaultVideoBrightness
Set-VideoBrightness 1

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 