Showing posts with label WPF. Show all posts
Showing posts with label WPF. Show all posts

Sep 15, 2010

For Multi-Touch Techies and the Tech Curious- Touch and Retouch article, with code samples, by Charles Petzold

Thanks to Josh Blake, I came across a good article by Charles Petzold  in the September 2010 issue of MSDN Magazine:
Touch and Response


In this article,  Charles Petzold continues his discussion of the multi-touch support in version 4 of Windows Presentation Foundation (WPF).  I like the introduction to his article:
"Programming is an engineering discipline rather than a science or a branch of mathematics, so rarely does there exist a single correct solution to a problem. Varieties and variations are the norm, and often it’s illuminating to explore these alternatives rather than focus on one particular approach." -Charles Petzold
I also appreciate Petzold's discussion about smooth Z transitions, his thoughtful code samples and related links.

RELATED
Multi-touch Manipulation in WPF 
Charles Petzold (August, 2010, MSDN Magazine, UI Frontiers)
"Just within the past few years, multi-touch has progressed from a futuristic sci-fi film prop to a mainstream UI. Multi-touch displays are now standard on new models of smartphones and tablet computers. Multi-touch is also likely to become ubiquitous on computers in public spaces, such as kiosks or the table computer pioneered by Microsoft Surface."
"The only real uncertainly is the popularity of multi-touch on the conventional desktop computer. Perhaps the greatest impediment is the fatigue known as “gorilla arm” associated with moving fingers on vertical screens for long periods of time. My personal hope is that the power of multi-touch will actually provoke a redesign of the desktop display. I can envision a desktop computer with a display resembling the configuration of a drafting table, and perhaps almost as large." -Charles Petzold
Exploring Multi-Touch Support in Silverlight
Charles Petzold (March 2010, MSDN Magazine, Finger Style)


Comment:
I agree with Charles about the need for a re-design of desktop displays.  I like the drafting table as a form factor.  Here are a couple of my previous posts related to this topic:
Emerging Interactive Technologies, Emerging Interactions, and Emerging Integrated Form Factors (2008)
DigiBoard Multi-Touch Mixed Reality Game; Ideas for future design of a flexible, adjustable multi-touch surface (June 2008)



Aug 30, 2009

For techies and the tech-curious - Panel podcast: Is Software Development Too Complex?

If you are interested in programming, software development, UI design, or if you are a student/technology "hobbyist", a recent panel discussion .NET Rocks! podcast is a must-listen. Even for even if you are NOT a Microsofty.

Is Software Development Too Complex? 8/27/09

"Recorded live at devLink in Nashville, Tennessee. Billy Hollis, Kathleen Dollard, Jim Holmes, and Josh Holmes (no relation) discuss the issue of the complexity of software development. Several .NET celebrities in the audience also chimed in."

If you listen carefully, and take notes, you will find several gems of wisdom. It is well worth the time. If you don't have 78 minutes to listen to the podcast, listen to it while you do your laundry or something!


(Lots of people in the podcast's audience still write programs using in .NET 2.0)



The real question:

How do we develop usable, elegant software to support a complex society, and at the same time, meet the demands of a world that holds high expectations about what technology can do the future?

A couple of quotes from the panel discussion:

"They've all seen CSI Miami!"

"Ohmygod, what do I have to learn NOW?"


"Microsoft, stop the insanity!"



RELATED
LINKS

Jesse Liberty's Post & Reader's Responses to Dot Next Rocks



A user's point of view about the complexity of technology:

Computers conspiring to overthrow us- Gail Collins, National Columnist 8/30/09

May 23, 2009

Razorfish's Touch Framework "Razorfashion" - A lot like my idea for an in-home FashionMirrorAdvisor...

Razorfish recently unveiled the Razorfashion application designed to provide shoppers with an engaging retail experience within the "multi-channel shopping ecosystem". I'm not the "shop to you drop" type of gal, but I can see that this concept could be useful in other situations, after a few tweaks.




As soon as I saw this Razorfish Touch "Fashion" demo video, it touched a nerve. I've been playing around with a similar idea, but for my personal use, in the form of an RFID-enabled system. I'd call it something like "FashionMirrorAdvisor".

Instead of showing skinny fashion models like the Razorfashion application, I'd harness the power of built-in web-cam and mirror my own image on the screen. My mirror would dress me up in the morning when I'm way too foggy to think about matching colors and accessories.

My FashionMirrorAdvisor would be my friend. My "smart" friend, since all of my clothes would be RFID-tagged, along with my shoes, jewelry, and other accessories. My make-up, too.

It would be a no-brainer. I really could use this application - just ask my husband!

More often than not, most mornings I find myself staring at the clothes in my closet, frozen in time, unable to formulate a fashion thought. I might set my eyes on a favorite blouse, but blank out when I try to think about the rest of the steps I need to pull my look together.


I know I can't wear my reddish-pink camisole with my dusty-orange/brown slacks, but at 5:15 A.M., who has the time to think about this little detail? My friend, the TouchFashionMirror would prevent me from making this fashion faux-pas.

No problem.

My FashionMirrorAdvisor would show me a few outfits, and dress my real-time moving image on the screen. Since she knows all things, she'd show me ONLY the articles of clothing that were clean, since my RFID system would keep up with all of that. It would be much more functional than a "virtual wardrobe" application.

I could try out different earrings without having to get them out.

If I couldn't find something, the RFID system would take care of this detail. My FashioMirrorAdvisor would know where I misplaced my clothes, accessories, and even my keys, since they would all be tagged. The mirror application would provide me with a nice little map of my house and car, and highlight the location of the item.

My FashionMirrorAdvisor would keep track of my laundry, too. This would be a great feature. So if my dirty laundry was piling up, and I wanted to wear outfit X, Y, or Z over the next few days, I'd receive a gentle reminder that I'd need to do some laundry first!

Another practical feature:

My FashionMirrorAdvisor would also serve as my health consultant, keeping track of my weight and BMI. This data, along with information gained from the webcam, would be combined so that my advisor would NEVER suggest an outfit that would be too...snug.

I could program the system to provide me with gentle reminders if my weight was an issue. My FashionMirrorAdvisor would show me images of myself "before" and "after", outfits included.

Information about the "after" outfits could be fed to the system from the web-catalogs of my favorite fashion retailers, and once I lost those 10 darned pounds, I'd find a nice parcel delivered to my door.

Thanks to my FashionMirrorAdvisor, I know that the outfit would be just right.


UPDATE 5/8/10:  The FashionMirrorAdvisor would be integrated with a mobile app - since I now have a smartphone, this would be quite useful in planning shopping trips centered around the purchase of new clothes, shoes, accessories, and coordinating cosmetics!  I created a little game  that I think would be ideal for this sort of thing, too.

I still want to work on this....someday.

Too many ideas, too little time!


RELATED
From the Razorfish site:
"The Razorfish Emerging Experiences team is a dedicated group of highly experienced professionals focused solely on emerging experiences and technologies. "Effective innovation" is our multifaceted approach to concepting and delivering pioneering solutions for our clients"

"Founded in 2008, Razorfish Emerging Experiences is a cross-functional team composed of strategists, artists, experience designers, and technologists. We’re part of the Razorfish Strategy & Innovation practice led by Shannon Denton. Jonathan Hull is the managing director of the team, Steve Dawson is the technology lead and Luke Hamilton is the creative lead."


Razorfish Emerging Experiences Portfolio

Jan 20, 2009

Baby Multi-Touch Interaction on a Win7 HP TouchSmartPC running BabySmash.

I'm preparing myself to explore the multi-touch potential of my HP TouchSmart PC with the beta version of Win7, Microsoft's newest operating system. While I was searching for information, I came across this cute video of a baby interacting with the touch-screen. The dad in the video is software developer Kurt Brockett.

The application is BabySmash, a free application created by Scott Hanselman for his little ones. If you are interested in learning more about how BabySmash was created, see Scott's 6-part tutorial, "Learning WPF (Windows Presentation Foundation) with BabySmash". It includes information about incorporating speech synthesis into the application. The BabySmash! source code can be found on the CodePlex site. Ideas for improving the application can be found on the BabySmash! feedback forum.


I have lots of ideas for touch screen interaction applications for kids of all ages. Please leave a comment if you have a TouchSmart and working with Win7, or plan to do so in the future.

Jan 9, 2009

Interactive Multimedia and Multi-touch at CES

I received couple of interesting links about interactive multimedia applications from Anthony Uhrick, of NextWindow, who is attending CES (Consumer Electronics Show). (NextWindow is the company who produces large touch-screen displays that have duo and multi-touch capabilities.)

Kevin Kennedy and his team at InterKnowlogy partnered with Zygote 3D Human Anatomy and Intermountain Health Care to develop a health care application developed in Windows Presentation Foundation to run on Microsoft's multi-touch Surface computing table.

The application supports collaboration between health care professionals and could also support collaboration between patients and doctors as well. Aspects of the application could be useful for patient education.

I really liked the part that demonstrates how you can zoom deeply into the 3D heart and look at things from various angles.


http://silverlight.interknowlogy.com/Videos/VitruView/default.html

Best of InterKnowlogy Surface:



The above video demos an application that might be useful for teaching history with an interesting timeline interface dial.

Visit InterKnowlogy for more videos and information about what they are doing with Windows Presentation & Silverlight as partners with Microsoft's Surface team.

If you are interested in more 3D anatomy, visit Zygote's 3D Human Anatomy site and 3D Science. If you are an educator, you'll see that 3D interaction has potential for creating more engaging science and health education lessons!

Another interesting link is to TouchTV Networks, which has partnered with companies such as Vectorform, who are also working with multi-touch applications using Windows Presentation Foundation.

Video from TouchTV Networks of CES 2009 Demo:


Vectorform's Virtual Drum Kit application:


Vectorform's Surface at School - demonstrates how this can be used in a classroom:


Vectorform's Surface DJ


Does anyone want to give me a multi-touch table?

Oct 28, 2008

HP to launch TouchSmart Developer's Kit! via Rich Brown at CNET Crave's Blog

If you follow my blog, you know that I have a TouchSmart, and that I'm a little obsessed about surface-gesture-touch-screen-multi-touch-multi-user computing....

Here is some good news!

http://lh6.ggpht.com/serge.v3/SGPaSZExeLI/AAAAAAAAAkE/t1c9HjUTylI/jpgFFC.png
According to a recent article from Rich Brown's Crave blog (CNET news), programming guidelines for the TouchSmart require developers to be know C# and Windows Presentation Foundation. That's great for me, since I can program in C# and I've been playing with WPF for nearly a year.



Despite what Rich Brown says, I know that the TouchSmart has at least duo-touch capabilities, since the touch-screen technology was provided by NextWindow, and the TouchSmart has been used for multi-touch demos created by FingerTapps. It is possible for the TouchSmart to handle input from multiple mice, too.

Hopefully Windows 7 will make it easier for developers to harness the power of the TouchSmart. I have so many ideas I'd like to see come to fruition.

If you go to the HP website, you can join the HP TouchSmart developer community.

May 31, 2008

Nov 17, 2007

About: Programming for interactive multimedia applications- WPF, Silverlight, EduSim, NeuroVR..

Part I Musings: Learning about application development and programming at mid-life:

I thought I'd write on a more personal level this time.

I'm a school psychologist, so in 2003, my motivation for taking computers at mid-life stemmed from my desire to create engaging interactive multimedia games for learning, games that could be played on hand-held devices as well as on the interactive whiteboards that I noticed were inching into my schools.


It was difficult for me to figure out how to get from Point A to Point B.

I shouldn't have been shocked to learn that most introductory programming classes provide instruction, as well as endless lab assignments, that are geared for people who want to make business forms and manipulate business-related data, build e-commerce websites, or create relational databases for... banks!

I now can make a mortgage calculator forms that adjust for various scenarios and provide cute error messages, in beginning Visual Basic.Net, C#, and Java. I can create a database that will let users look up part numbers for all sorts of widgets, in all sorts of combinations, and ensure that client data can be easily accessed in a nice looking form.

Why should I learn all of the old stuff when there are so many new avenues to explore?

Over the past few years, I've been fortunate to take a variety of classes that were not readily available just 8-10 years ago:

Computer/Internet Multimedia. Computer Music Technology. Game Design/Development. AI for Games. Ubiquitous Computing. Web Development Tools. Virtual Reality for Education and Training. These courses have motivated me to learn more about programming. The traditional programming courses had the opposite effect.


PART II
Keeping up

I recently attended a day-long code camp at Central Piedmont Community College to learn more about Windows Presentation Foundation (WPF) and Silverlight. WPF and Silverlight provide the foundation for applications that can run on Microsoft's Surface. WPF and Silverlight provide designers and developers with more efficient ways of developing visualization and interactive multimedia applications.

The architecture behind WPF and Silverlight seems to align more with the way people think and envision, which in my opinion, gives hope for those of us who have toyed with the idea of programming, but were frightened off the first time they opened up a traditional programming textbook.


Part III Visualization and Interactive Multimedia

For more information about WPF, Silverlight, design, etc, read Sam Batterman's (a Microsoft Evangalist) recent blog post: Some thoughts about WPF and Data Visualization

Here are some pictures and text that I lifted from Sam's blog that will give you a picture of what I'm talking about:


"Here's an application that one of our partners built in a few weeks - all WPF and actually, not complicated code...getting that heart rendered was probably less than 100 lines of code. This app is used in a hospital for documenting heart surgery procedures. You can draw and annotate the 3D surface, rotate the heart, etc."


Angiographer


Can you imagine how kids would love to manipulate something like this in a science class?! This would be great on an interactive whiteboard or display.

This focuses on user experience, much more so than applications in the past. For more information about designing for user experience, take a look at the link to Bill Buxton's book, "Sketching User Experiences."

sketch

Bill Buxton's webiste, "Multi-touch systems that I have known and loved" is a good resource for those of you who'd like to get a better picture of multi-touch systems and interaction.

(I'll write more about WPF and Silverlight after I get my laptop repaired and have a chance to experiment some more.)

Croquet and EduSim


Right now, I've been experimenting with
Croquet, which uses Squeak, and EduSim, which is powered by Croquet, to put together some learning activities for students.The best part is that Croquet is open-source, and all of the EduSim applications are free.

Here are some pictures that link to short video clips from the Greenbush EduSim website:







Neuro VR


Another application that I'm working with is NeuroVR.

NeuroVR is a free virtual environment that was designed for use in clinical settings. If you don't have access to virtual-reality hardware, you can still use NeuroVR on a desktop or large-screen display. Available 3D environments include an office, a supermarket, a park, a classroom, a poolside setting, and a home.

Andrea Gaggioli, Ph.D., is the Chief Technical Officer of the this project. He's also behind the Positive Technology blog, which is a great resource. Andrea is a
researcher working at the intersections of psychology, neuroscience, and emerging technologies.

NeuroVR allows the clinician (or educator) to easily insert pictures, objects, and videoclips into each virtual world. Doors open and close, and you can move items around in the environment. For example, fruit set on a table can be moved over to a counter.

In my opinion, NeuroVR has potential not only in the area of rehabilitation and therapy, but in special education as well, particularly for students who have multiple special needs, including severe autism. A variety of "how-to" videos are posted on DaevornLi's YouTube channel.


Here are some videos clips to give you a better picture of the application: