Showing posts with label gui. Show all posts
Showing posts with label gui. Show all posts

Tuesday, August 31, 2010

Some computing history

The fall semester is in full swing here at Harding, and I've decided to convert some of my notes on historical events in computing to slides. If you are interested, here are my slides on Internet and Web history and history of graphical user interfaces (GUIs). I'll admit the GUI slides are slanted toward Microsoft because we focus on Windows programming in my GUI course.

I'm still working on my general history of computing and will post an update later.

Monday, June 07, 2010

Build your own C# screen saver

I wrote a tutorial years ago about creating a Windows screen saver using the C# language. I usually let my GUI students do it as an extra credit assignment.

The tutorial was really showing signs of age, and last week I was finally able to update it. You can find it here. If you'd prefer to just jump straight to the finished product, you can download the project here. I used Visual Studio 2010 to write the demo code.

One more thing to cross off my summer to-do list.

Friday, December 12, 2008

Fav5

My pick of the week's top 5 items of interest:
  1. Google has released its list of popular searches in their 2008 Google Zeitgeist. The most popular "what is..." query? What is love. Baby, don't hurt me.

  2. According to J.L. Needham, Google's manager of public-sector content partnerships, approximately 1,000 federal government websites are inaccessible to search engines -- that is, they lie in the Deep Web.

  3. How well are we preserving our video game heritage? The paper 'Grand Theft Archive': A quantitative Analysis of the State of Computer Game Preservation attempts to answer this question. Their findings aren't very positive.

  4. Although this is three years old, I just came across it this week. Charles Petzold asks, Does Visual Studio Rot the Mind? Petzold's Windows programming books have been a staple of my GUI class since 1997.

  5. Some Harding students have developed this very creative and entertaining Christmas card. Enjoy.

Thursday, October 02, 2008

HCI for all CS students

I shared this quote with my GUI class today:
As for HCI, it is my hope that it stops being seen as a field "just for specialists," and becomes something like data structures, where every CS student should have at least one semester of HCI just to understand the basic concepts.
- Randy Pausch, discussing predictions for the future of human-computer interaction (HCI), in Communications of the ACM.

Thursday, February 14, 2008

GUI blooper: Adobe Reader print dialog

This GUI blooper has been annoying me for quite some time. If you want to print something from Adobe Reader 8, you are presented with a print dialog box shown below:

Notice that I selected to print 3 copies of the current page.

Now if I later decide to print something else, the print dialog box has reset the print range selection to All. This is a good thing since I typically want to print the entire document, and this is the standard behavior of other applications.

But there's something on the dialog box that was not reset back to its default... can you tell what it is?


That's right, the number of copies is still set to 3. In fact, every item in the Page Handling area is "sticky", but items under Print Range are not. I did a similar experiment with several applications, and they all reset the number of copies to 1.

This mistake may not seem like a big deal, but it is. If the document is a large one, say a 150 page dissertation, and you are not very careful to reset the number of copies to 1, you will get 300 pages of stuff you don't want. That can be very expensive when printing to 100% cotton paper.

Adobe: Either make all the items remember their state (something I don't recommend), or none of them. Using a hybrid and inconsistent approach is a GUI blooper.

Tuesday, September 25, 2007

More Vista surprises


Can you guess what this is?
a) A beautiful piece of art work.
b) What the screen looks like when I'm up with Ethan at 5am.
c) Internet Explorer on crack.
d) All of the above.

The answer is D. I saw this marvelous window yesterday when IE decided it would no longer respond to commands. When I would minimize windows that were in front of the non-responsive IE window, it would leave a trail behind. For my GUI students, this is an excellent example of an application that is no longer processing paint messages. It's also an excellent example of why you hear me scream and kick my office wall periodically.

Friday, March 30, 2007

GUI programming in the fall

Yesterday I gave a Tech Lunch talk entitled Introduction to .NET to a pretty full room of grad students. My slides are available here if you’re interested. I had to do a little brushing up before the presentation… I haven’t used Visual Studio in a few years, but I really liked the improvements made in VS .NET 2005.

Preparing for this talk got me to thinking about what I’ll be teaching this fall in my GUI Programming at Harding Univ. When I taught this class in the past, I would first have my students start off writing some fairly simple programs using the Win32 API. After struggling with the API for several weeks, we’d then move on to C# and VB.NET at which point most students thought they’d died and gone to heaven.

But a lot has changed over the past 4 years: a new OS (Vista), new tools (VS .NET 2005 and XAML), and new APIs (.NET Framework 3.0 and WPF). I’m a bit behind the learning curve having not even seen Vista yet. Fortunately, I found a really good article about Vista by Peter Bright which helped me put the changes into perspective.

Rather than teach the Win32 API again, this time I think I’ll just show my students what it used to be like (150 lines of C code for a Hello World application) and then move directly into .NET programming. Although they may not truly appreciate all that the .NET Framework is doing for them, I don’t think spending time learning a deprecated API is going to be of much value. The text we’ll be using is Programming Microsoft Windows Forms by Charles Petzold.

Perhaps I’ll also mix in some GUI development using Java, just so they can see what it's like on other platforms (and appreciate why more developers don’t use Java for GUI development wink). Additionally I want to focus more on the theory behind GUIs. I found an excellent book that I’m going to use called GUI Bloopers: Don'ts and Do's for Software Developers and Web Designers by Jeff Johnson.

Of course I’m open to other suggestions anyone may have.