CS 774 Group Project

For my Human-Computer Interaction class, we were divided into groups to work on creating an user interface. Here are the specifications for the choices of the programs that we could do.

I submitted number two. This was one of my Mac programming ideas. I want to implement it on the Mac, but there are a lot of these types of programs out there already. A lot better than what I had thought of. I may just try to get some Mac programming under my belt. It was chosen as one of the projects that people wanted to do. Hopefully, they come up with an interesting interface.

A recipe management program for cooks. It will allow the user to create a recipe entry with the ingredients and their measurments as well as the steps in cooking. The user can rate the recipe and add informational notes to each. The recipes will also be able to handle conversion to metric units and to scale the recipe for differing amounts of servings. The user can search for a recipe by meal type, ingredient, by number of servings, by occasion, by rating and by keyword. The recipe program can integrate with a calendaring system wherein the cook can plan a day, week or month’s meals. From the meal plan, the recipe management program can generate a shopping list.

The one I am working on number three, the textbook exchange program.

A software program that allows students to sell used textbooks to one another. It would work for both graduate and undergraduate courses. Students could enter information on books they want to sell into the computer along with a price as well as search the site for textbooks that they need. They could search by department, course name, number, or alphabetically for courses and books. They could compare prices as well as the seller’s description of the books, and if interested contact the student. If a sale is made, the book would be removed from the site.

I should’ve chosen the other group’s project (number 7). My group sucks. There are no Mac users on my team and therefore the team lacks ingenuity to approach the problem differently.

For example, we had to refine the requirements and come up with the user interface to the program. At first, one team mate was basically dismissing this as a simple program, because he looked at it from the searching aspect. Yes, that is simple. We’ve all seen google. We’re all familiar with the search user interface idiom. So let’s do something different. Let’s look at the student exchange aspect of the system.

In my book review of Leonardo’s Laptop, the author was wrote about the future of human-computer interactions and defined a new paradigm for it with the simple mantra of “collect, relate, create, donate.” We could apply this to our problem.

Let’s look at the problem from the seller’s standpoint rather than the buyer. How should the seller input his information? Standard input form? Boring. Let’s create an interface that allows the seller to define the books he has selling and allow him to watch as the orders come in. Perhaps, a look at ebay should guide us. How does ebay handle the selling of things? And how about adding an RSS feed of your own books? And how about the notifications style found in the Mac’s mail program?

We chose to do a data entry program. How boring. Perhaps a little search. Still boring. Like I said, I should’ve chosen the other program. Or at least done mine.

Movie Reviews

I’m gearing up for the upcoming summer movie season. Consider these reviews spring training. Have you noticed that the summer movie season has started earlier and earlier each year? Look at what’s coming up in March. It doesn’t officially start until Memorial Day (or is it Labor Day) in May, but there are some potential blockbusters opening soon.

Firewall

Harrison Ford stars in a high tech thriller. This was an amalgamation of El Fugitivo and Air Force One. It sucked. Ford seems to be content in playing the harrassed man who has to save his family or himself. I thought it was going to be a hacker film, which would’ve saved it in my eyes, but it ended up being a thriller of un-epic proportions. Don’t watch this unless you catch it on Skinemax. Don’t order Skinemax, but wait until this shows up on TBS. Don’t Tivo it. You can catch it on broadcast TV, but only in small doses.

1 of 5 stars

Nightwatch

Nightwatch is another movie about vampires. They should’ve had some Lycans show up. Or at least some kick ass babes. They did, but I think we’ll have to wait for the sequel to see Olga kick some ass. Then it might be awesome. Perhaps the sequel is on bittorrent already.

3 of 5 stars

Why I procrastinate

I so much want to be better writer. When faced with the blank sheet of paper or the empty new document, I seize up. My brain has millions of things it wants to write down, but my fingers only type things that are not exactly as the brain has thought. I started blogging to help me write. If you notice, not all of it is good. A lot of it is bad. I try to be a better writer, but can’t. So I don’t. That is my procrastination source.

Leonardo’s Laptop

The following is what I spewed out as a review of the book. This is what I procrastinated about. I hope it reads well, because I don’t really want to edit over again. One thing missing is examples. The doc will dock me points because of that.

Ben Shneiderman in his book, Leonardo’s Laptop: Human Needs and the New Computing Technologies, develops a vision of the future for human interactions with computers that is optimistic. In it, he writes that the future of computing will be about the empowerment of the end-user. Human-computer interactions will satisfy the needs of the end-user needs rather than the developers of the computing technologies. The software developers goal is then to help the end-user to achieve a goal and establish a community. Shneiderman lays out the new methodologies to achieve this goal by constructin a new human-computer interaction paradigm revolving around the “collect, relate, create, donate” mantra. He applies this to four societal aspects that can benefit from the new paradigm: education, business, healthcare, and politics. Each of these are important to society and by focusing on user’s needs as they relate to computing in these fields, Shneiderman asks of the reader to envision this future where computers serve mankind for the better.

Reading this book, one has to take into account which prospective type of computer user one is. Either, you read it with the jaundiced eyes of a software developer who knows the limits of computer technology or with the wide-eyed, wonderment of a end-user new to the technology. From the start, Shneiderman tries to instill in both types a sense of what to do and what is expected to ensure that the future of computing remain as human as possible. He creates a paradigm around his “collect, relate, create, donate” motto. This is useful to both types of users. The developer aids the end-user by developing software to meet these four needs. Software should be written to enable the end-user to collect information, to enable the end-user to relate their ideas to others, to enable the end-user to create and innovate for personal enjoyment, and enable the end-user to donate back to community furthering society as a whole. With the “collect, relate, create, donate” examples throughout the book, Shneiderman has given the software user and software developer a sense of purpose to computing technology.

Shneiderman sets some lofty goals with his book. To make computing technology personal, he creates a foil for future users in the guise of a new Leonardo. Throughout the book, he returns to this idiom to make the reader aware of the possibilities with the use of computers. This, in my opinion is the weakest aspect of the book. While I admire Leonardo as an artist and creative thinker, I find that he is too distant of a figure to relate to. The new renaissance man is few and fare between to happen in this day and age. Computers facilitate specialization and Shneiderman’s use of a new Leonardo does not take into today’s world of niches. In the last chapter, he describes how this new Leonardo will use the computer. He is creative, he is smart, and he is innovate, but that today and in the future will be a hard talent to find.

The strongest section of the book is in Shneiderman’s descriptions of a new education and government paradigm with the aid computers. Education is the new hope and can readily fit into the “collect, relate, create, donate” cycle. As teachers integrate computing technology, the benefits will affect society. They are the front lines to enable our youngest end users to be part of the future. Teachers will, with the help of computers, collect information for their students, relate those ideas to them, create innovative techniques to challenge their students, and donate back to the community by teaching the young.

As for the new politics, computing technology will enable the citizens to participate and be an important part of it. Citizens, as well as government agencies, can collect information that betters their predicament, relate their status within a community, create innovative measures to address societal failures, and donate back by being an active participant in the government itself. It is the promise that technology holds for bringing communities together which is what Shneiderman tried to focus on, and in the new politics, is the promise fulfilled.

Unfortunately for Shneiderman, his vision of the future of new business has already come to pass. He writes about customization that is to come, but since the book was probably written in the year 2002 his advice seems dated. Perhaps reading the book at that time it would have been closer to being prescient, but now with it already here, it just seems trite.

Finally, the most inspiring chapter of the book comes at the end. In the chapter entitled “Mega-Creativity,” Shneiderman discusses the types of creativity at which computers can aid humans: evolutionary creativity. This is taking small, incremental steps of refinement to better an idea already in the creative marketplace. It is not the revolutionary creativity that comes once in a lifetime, nor is it the everyday creativity wherein the individual adds flair to a banal task. As a tool computers enable the developer to craft programs that empower the end-user’s creativity, as well as his own. Shneiderman admits that it is this aspect of the computing technology that has potential for expanding the horizons of humanity. It is in this chapter where he achieves the goal to inspire all types of computer users to pursue using computers to further expand society.

Overall, Shneiderman may have written this book as an observation about the future direction of computers and human interaction, but he has achieved a new manifesto for developers to follow to make good of the use of the computer tools. The big theme of “collect, relate, create, donate” should be followed by all users of computers, especially those that want to be leaders into the future.

Procrastinate

verb [ intrans. ]

delay or postpone action; put off doing something : it won’t be this price for long, so don’t procrastinate.

I am stuck on writing a review of a book. It is now 11:31PM….

RIP RF

Don Knotts has died. Goodbye, Mr. Furley. May the you and Jack Tripper rock that Regal Beagle in the sky. Don’t let him turn back into the tinkerbell.

Billionth

This dude is so lucky. A $10,000 scholarship in his name at Julliard. Wow. Also, $10,000 worth of iTunes music. And 10 iPods. And that 20 inch iMac.

I am watching the winter olympics

I am watching the women’s (ladies?) figure skating. I already know the outcome. Why am I watching it then?

Go Bel Air girl! Oh. You got sixth.

Go Sacha Cohen! No not Alli G, Sasha Cohen! Oh. You fell and got second. You fall and got second? How does that happen?

Like my father, I dread everytime a skater falls. “Once they fall,” he use to say, “it’s over.”

The Americans didn’t do so well. Perhaps the curse of Michelle Kwan robbed them of a medal filled Olympics.

Update: The Americans are falling. Sasha Cohen is still geting the silver. Bel Air girl, Kimmie has the jitters. Still a wonderful performance. The judging is weird no more 10s and it is so anticlimactic.

Dull little boxes, dutifully peforming dull little tasks

MacIntel Ad

Another topic we discussed in tonight’s class was the question if “computers inspire creativity?”

Once again the Windows consultants in class said no. They couldn’t ever imagine a computer helping someone be creative. I pity their outlook in life. Why would anyone ever use Windows if this was the case?

One of them said that, while there are software programs that help you create things, computers do nothing to inspire creativity. He said that photoshopping is nothing like painting and that computers are for performing various drudgw work.

I wanted to snap, “Get a Mac!” That will show you the endless possibilities of being creative. Break those chains and get a mac. You don’t know what you’re missing.

Computers are tools. Software programs are tools. In the artist’s hands, these tools can do amazing things. Look at digital animation. That is creative! I think that using them will ignite the creative side of you. You never know until you’ve tried.

This is why I like the Mac platform. There are endless inspiring programs coming out for it. I believe the indy Mac developer world is just like the indy film world of the eighties. It is ready to go big time. If it could just change the developers that are like that Windows consultant, then Apple could rule the world. I think that day is coming.

Jihad

As you know, I am going to school for a masters in software engineering. One of the classes I am taking this semester is Human Computer Interactions. A very social-sciency type of subject. Tonight’s lecture topic was software tools. Programs that create other programs. This relates back to HCI, because these types of programs aid the developers in crafting the software. The lecture was just a categorization of the various types available.

This topic is a virtual grenade for software developers. Ask ten different software developers their favorite editor and you may get ten different answers. Ask them their preferred language and get a myriad of names. Ask them favorite platform and watch the whole thing explode in your face.

Tonight, the instuctor let slip that Java was faster than Visual Basic. I ran for cover. I was expecting a total flame war to break out, live in class. It happened.

We have a mix of developers in class. There are the web services folks, me the embedded systems guy, a lady who has to do COBOL, a Java dude and a few MS developers. One in particular has been a consultant/programmer on the MS Windows platform for about 15 years. He knows his Windows stuff and had to respond back to the Java versus VB jab. The Java dude had to respond back. I think if the instructor was not a woman it would’ve gotten ugly real fast. I, being a MacAddict, stayed out of this fight. Everyone knows that Macs rule.

Tempers simmered, and we ended up agreeing to disagree. That is the best tact.