Friday, August 31, 2007

Suddenly More Space on My Comcast DVR?

Two days ago, the amount of space used on my Comcast DVR (Motorola 3412) dropped from 75% to 44%. I still have all of the same shows on my DVR that I had before. Nothing was erased. Does anyone know why? Did Comcast initiate a new compression scheme that even affects previously recorded shows? Perhaps temporary data was cleaned up and it freed space?

Labels:


Read the complete text of this post

Do You Really Need a BLU-RAY or HD DVD Player?

HDTVexpert asks the question every techno-lusting geek refuses to consider... "Do You Really Need a BLU-RAY or HD DVD Player?" So as not to spoil the answer, here is only an excerpt of the article
Those of us who are fortunate enough to have spent some time testing both BL disc formats have a pretty good idea by now when you’ll see the difference between red laser and blue laser media, and when you won’t. It all has to do with (1) the size of your HDTV or projection screen, and (2) how far you sit from it when watching HDTV programs and movies.

Even those of us with eagle-eye vision reach a distance where we can’t see small details in an electronic image, such as noise, grain, macroblocks, and edge artifacts. If all else is OK (high contrast, good color saturation, etc), then even a low-resolution image can appear to be high-resolution, when viewed at a certain distance.
On a related note, I am currently in the process of making this decsion. I was all set to purchase the Toshiba HD-A2 the day before DIGG and Engadget posted Amazon's deal all over the web. Yes, even though I saw the offer Amazon had posted for 8 free HD DVDs, I decided to wait and do a bit more research. The following day, Engadget and DIGG plastered the above-mentioned article all over the web, quickly drying up Amazon's stock of the HD-A2. Now I must consider falling prey to the upsell for an HD-A20 and take 5 free HD DVDs, of which the selection is rather poor.

Yes, I am bitter about this. Thanks Engadget...You made my week. As for Digg, the only thing I can say is that I prefer Newsvine.

Labels: ,


Read the complete text of this post

Monday, August 27, 2007

Goodbye SUNW. Hello JAVA

Sun Microsystems has changed its ticker symbol from SUNW to JAVA. According to several sources, the acronym SUNW stands for the Stanford University Network Workstation.

Labels:


Read the complete text of this post

Wednesday, August 22, 2007

Microsoft HD Photo plug-in for Photoshop for OS X

Microsoft has posted the HD Photo plugin for Photoshop CS2/3 for Mac OS X.
This is a Mac OS X BETA release of the HD Photo file format plug-in for Adobe® Photoshop® software. This release includes all the features and user interface changes for the final release, including the installer. The HD Photo plug-in supports a wide range of pixel formats (including high dynamic range, wide gamut formats) and numerous advanced HD Photo features.

This BETA plug-in is designed for use with the CS2 or CS3 versions of Adobe® Photoshop® software running under Mac OS X 10.4. Any other use is not supported. This BETA version will expire after December 31, 2007.

NOTE: HD Photo is also known as Windows Media Photo.

Labels:


Read the complete text of this post

The Secrets of about:config

This is a very interesting 6-part article on the many customizable features in Firefox. It may be useful in resolving memory-related issues and performance issues. Check it out at PCTipsBox

Mozillazine discusses the browser.cache.memory.capacity setting in Firefox.

In a related note, Paul Thurrott raises similar concerns in his Internet-nexus blog.

Labels:


Read the complete text of this post

Sunday, August 19, 2007

Upcoming Super DSLRs

Thursday, August 9, 2007

Dish Network Planning to Enable External HDD Support and Ethernet Jack

According to MultiChannel, Dish Network is enabling "USB External Storage" via a software update. Users of the ViP622 HD DVR will be able to attach their own USB hard drive for storing content. The fee for this is $39.99. Dish is also scheduled to enable the Ethernet port for users who have wanted to "phone home" via their networks.

Labels:


Read the complete text of this post

Friday, August 3, 2007

An Alternative to Counting Lines of Code

Software has become integral to almost every facet of life. From computers to automobiles, software plays an important role. When such importance is placed on something such as a product, it is important to make the correct judgments when cost, schedule, and the deployment of resources are concerned. Such is the case with software development. In response to the constraints placed on software development by cost, schedule, and resources, system software metrics have been developed. Such techniques can be useful in the selection and rejection of projects by a business. Many techniques exist, two of which are counting lines of code and Function Point Analysis. Based on a literature review of the theory behind these two techniques, this paper presents an analysis of counting lines of code, its flaws, and why Function Point Analysis offers an alternative.

The Need For Accurate Estimates

To understand the need for accurate estimations, one can look to statistical data gathered on the success and failure rates of software development projects. In their 1999 PM article, “Curing the Software Requirements and cost Estimating Blues,” Major Mike Nelson, James Clark, and Martha Ann Spurlock indicate that a large number of software development projects were not accurately estimated. The results of the 1995 Standish Group survey of 8380 software applications indicate that only 16% of projects stayed on schedule without exceeding their budgets, while 31% were cancelled, and 52.7% were completed with schedule and budget overruns (Nelson et al., 1999). In addition, the average budget overrun was 189% and the average schedule overrun was 222% (Nelson et al., 1999). A survey of the completed projects showed that the developers had to reduce features and functionality to 61% of the original requirements just to meet their schedule (Nelson et al., 1999). From these statistics, it is clear that accurate cost and schedule estimates are needed to avoid these failures. While Nelson et al. does not indicate if the Standish Group recorded the estimation techniques used by those surveyed, or even if those in the survey practiced an estimation technique, the predominant technique employed at the time of the survey was counting lines of code (Ferens, 1998).

Counting Lines of Code

The technique of counting lines of code involves counting the number of compiled source code lines in a program to estimate the size, cost, and effort required (Nelson et al., 1999). According to Nelson et al. (1999), the flaws associated with this technique result in a dramatically high error rate, sometimes reaching 400% of the original estimates. Nelson et al. (1999) notes that the software development industry lacks a standard definition for the measurement of source lines of code. Ferens (1988) concurs and adds that there is a large discrepancy between organizations as to what types of code statements constitute source code. He notes that most estimations include executable lines of code, but some do not include statements such as comments, test data statements, and declarative statements (Ferens, 1988). Compounding this issue is the proliferation of programming languages, which can achieve the same execution with differing numbers of executable statements. Moreover, Sean Furey, in his 1997 IEEE Software article, “Why We Should Use Function Points,” states that object-oriented programming languages make estimation difficult because “applications or major pieces of applications can be created with virtually no countable lines of code” (p. 28). Finally, Nelson et al. (1999) notes that estimates are often produced prior to the determination of the programming language used on a project.

Function Point Analysis

The need to produce estimates prior to programming language selection is perhaps one of the reasons A.J. Albrecht developed the Function Point Analysis technique, which was released to the public in 1979 (Jones, 1999). Since then, several variations of Function Point Analysis have been developed. These include the Symons Mark II version and several revisions developed by the International Function Point Users Group (Furey, 1997).

Function Point Analysis “is a measure of software complexity derived from five attributes of a program” (Jones, 1999, p. 165). Function points are computed by calculating the number of inputs, outputs, inquiries, master files, and interfaces in a program. Under the Version 4.0 rules set by the International Function Point Users Group, the five attributes are assigned a numeric value, weighted according to their complexity, and then are summed. With the sum calculated, adjustments are then made to this value by comparing it to a set of pre-defined criteria. The end result enables managers, developers and even users to estimate the relative size of a program in terms of cost and effort, terms the business, not just developers, can understand (Jones, 1999).

Advantages of Function Point Analysis

Function Point Analysis allows program managers to accurately estimate software size in terms that the business can understand because function points are based on a logical understanding of the software rather than a physical, or line count, view. This enables managers to make informed choices about their software development more objectively (Furey, 1997).

Furey (1997) states that “Function points are technologically independent, consistent, repeatable, and help normalize data, enable comparisons, and set scope and client expectations” (p. 28). In fact, function points allow the focus to be placed on the required functionality of the users, and therefore, also measure the software requirements. As a result of having a basis grounded in functional requirements, function points have an advantage over counting lines of code, in that, function points can be counted earlier in the development process (Furey, 1997).

Perhaps the greatest advantage of Function Point Analysis is that this technique has been ratified as an international standard, embodied in the International Function Point Users Group (Furey, 1997). As such, Function Point Analysis has an established set of rules and is independent of any programming language or changes in languages (Nelson et al., 1999).

An Example of the Benefits of Function Point Analysis

Furey (1997) provides an example of how Function Point analysis can allow managers to make more accurate judgments. In his example, two teams each develop an application that contains the same level of functionality and features, with two different languages. The first team develops the application with COBOL, writes 4000 lines of code, and finishes after ten months of work. The second team develops their application in Smalltalk, writes 900 lines of code, and finishes in five months. Under the lines of code counting technique, the first team is considered to be more productive because they produced more lines of code. However, when Function Point Analysis is applied, the second team was more productive because they developed an application with equal functionality in only half the time (Furey, 1997).

Disadvantages of Function Point Analysis

Ironically, the greatest advantage of Function Point Analysis, can be, at times, its greatest disadvantage. Having an established set of rules is advantageous only when those rules are followed. Barbara Kitchenham (1997) elaborates on this in her 1997 IEEE Software article, “The Problem with Function Points.” She argues that there is a need to understand the limitations of Function Point Analysis. In her analysis, she limits her discussion to Albrecht’s rules and Symons Mark II, citing their respective popularity in the United States and the United Kingdom (Kitchenham, 1997).

Keeping in mind that she is only analyzing Albrecht’s and the Symons techniques, she states that problems can be encountered when using function point measurements as the basis for negotiations and contracts between organizations (Kitchenham, 1997). She cites Albrecht’s use of an ordinal scale of “simple, average, and complex,” rather than a numeric scale, noting that the ordinal scale is vague in its descriptions of systems (Kitchenham, 1997).

Regarding the Symons Mark II technique, she notes that individual function point counts are transformed into weighted counts. She feels that this introduces issues because it assumes that all counts are equivalent measures, when standard conversion factors for these counts do not exist. In addition, she feels that function point counting involves the judgment of the person performing the count, and subsequently introduces variances and discrepancies in counts conducted by different people (Kitchenham, 1997).
Discussion

Accurate software metrics are crucial to the goals of staying on budget and on schedule. Without accurate measurements, serious budget expenses can be incurred and product releases can be delayed. Such failures to deliver could have serious repercussions for those developing the software and those managing the projects.

The literature regarding software estimation reveals two prevalent issues. First, the software metric used by organizations must produce accurate measurements of size, cost, and schedule. The second issue involves industry-wide acceptance of a standard so that organizations can properly make comparisons using their estimations.

Measuring software by counting lines of code has been, and is some analysts’ estimation, will continue to be, the standard software metric. Unfortunately, there is little that can be considered standard about counting lines of code. In fact, the discrepancies are so great that there is little consensus on whether a comment is a line of code. Within an organization, these discrepancies may have little impact. Across the industry, however, the differences in estimation could have serious impacts on the development contracts between organizations.

In terms of estimation accuracy when compared to counting lines of code, it can be suggested from the literature that any Function Point Analysis technique has definite advantages, all of which provide the potential for more accurate estimations. Some empirical studies, such as those conducted by Kermerer, corroborate this suggestion (Kermerer, 1987). The advantages include technological and programming language independence, earlier estimation in the life cycle, and data normalization. In addition to these advantages, Function Point Analysis has the benefit of international standardization. This, however, only applies to the technique developed by the International Function Point Users Group. Albrecht’s original technique and the Symons Mark II technique are not internationally standardized and as such, places Function Point Analysis in a similar situation as the lines of code counting technique in terms of universal acceptance. The fact that Kitchenham neglects the International Function Point Users Group version of Function Point Analysis seemingly underscores this situation and points to the larger issue of a need for function point standardization.

Estimating software to determine cost, schedules, and effort is clearly an important activity for software developers and managers. Making the correct estimations can have serious impacts on a projects success or failure. The technique of counting lines of code does not appear to be providing organizations with the accurate estimates that they require, but by the same token, it would be unfair to characterize Function Point Analysis as the absolute solution to all problems. Even with its flaws, Function Point Analysis can, however, be a valuable alternative to the technique of counting lines of code.


References

Ferens, D. V. (1988). Software Size Estimation Techniques. Proceedings of the IEEE, 701-705.

Furey, S. (1997). Why We Should Use Function Points. IEEE Software, 28-30.

Jones, C. (1999). Software Sizing. IEE Review, 165-167.

Kermerer, C. (1987). An Empirical Validation of software Cost Estimation Models. Communications of the ACM, 416-429.

Kitchenham, B. (1997). The Problem With Function Points. IEEE Software, 29-31.

Nelson, M., Clark, J., & Spurlock, M. (1999). Curing the Software Requirements and Cost Estimation Blues. PM, 54-60.

Labels: ,


Read the complete text of this post

Wednesday, August 1, 2007

The Demise of the Desktop?

Update: Since I originally wrote this paper in November 2006, Microsoft announced its "Surface," and Apple released the iPhone and announced "stacks" in the soon to be released Mac OS X Version 10.5 Leopard.

Metaphors in Computing

Recognizing, understanding, and remembering are essential parts of intelligence and metaphors may play a significant role is such tasks. In fact, Marx (1994) holds that metaphors have substantial explanatory power when it comes to learning and that “anything new must be learned by metaphorically extending existing knowledge” (p. 379). Leveraging the power of metaphors enables designers of interfaces to provide users with a “head start” as it pertains to learning a new interface (Marx, 1994, p. 379).

In general, two kinds of metaphors exist in user interfaces. These are individual metaphors and systemic/over-arching metaphors. Individual metaphors pertain to specific user interface controls, such as radio buttons. Systemic or over-arching metaphors allow for a thorough understanding of a system, such as that which is understood via the “desktop metaphor” for operating systems such as Windows and the Mac OS. (Marcus, 1998, p. 46).

The Desktop Metaphor

The desktop metaphor is the dominant metaphor used in today’s commercial operating systems. Popularized by Apple and then by Microsoft, it contains references to items in the modern office and building structures. These items and structures include the desktop, files, documents, folders, trash cans, and windows (Marcus, 1994, p. 13). According to Gozzi (2002), the desktop metaphor “asserts that the computer screen is like a real desktop” (p. 425).

It has been argued that the desktop metaphor has successfully allowed novice users to acquaint themselves with the computing environment. Its success can be attributed to the highly familiar concepts of the office and the similarity between the metaphor and the real world. In general, documents look and act like real documents (Madsen, 2000). Johnson et al. (1985) states that the desktop metaphor approach is “intended to facilitate one’s use of the system by making the manipulation of information in the system analogous to the manipulation of physical objects on a desktop” (p. 548). Ravasio et al. would concur. In fact, Ravasio et al. (2004) suggests that with the release of the Xerox Star in 1981, computers were finally understandable to non-expert users.

With its twenty-plus years of existence and its current status, once might argue that the desktop metaphor is the standard for a reason. In general, the desktop metaphor holds up well against Marcus’ criteria for successful metaphors in user interfaces. Marcus (1998) states that a metaphor should use concepts familiar to the user, prepare the user to transfer the content domain model into the user’s mental model, and increase the ease of learning, memorization, and use. Proponents of the desktop metaphor would argue that it does these reasonable well. Even critics of the desktop metaphor, such as Gentner and Nielson, seem to agree.

Shortcomings of the Desktop Metaphor

In The Anti-Mac Interface, Gentner and Nielson (1996) concede that they do not think the Macintosh interface, and to a greater extent, the desktop metaphor, are bad by any means. They do, however, offer many criticisms about the desktop metaphor. As will be seen, they are not alone in their assertions.

Hudson (2000) notes that the desktop metaphor is most often cited as the primary failure of metaphorical design. In Hudson’s opinion, one of its greatest features is also one of its most negative aspects. It is often found to be too restrictive and helpful only to new users (Hudson, 2000). Additionally, he describes some of the more confounding features by stating,
"I think the desktop metaphor on our computer screens has drifted too far from the original office domain. Microsoft Windows, for example, hides the in-tray and out-tray in an e-mail application, variously called Mail, Inbox, Outlook, or Outlook Express depending on the age and configuration of the system. The desktop is confusingly covered by wallpaper, and printing documents by dragging them to a printer does not work reliably. The Macintosh does not fare much better: it has the odd feature of allowing users to drag the floppy disk to the wastebasket (“Trash”) to eject the floppy. From the office domain it’s obvious that the effect of that action (if any) should be the same as discarding a document or folder" (p. 13).

Indeed, he raises some interesting points. Such examples, while seemingly trivial, might confuse the very users for which the system is intended to serve.

Gentner and Nielson (1996) take a much broader stance, claiming that the interface is stuck in a “WIMP (windows, icons, menus, pointer)” model (p. 70), offering little innovation. Madsen (2000) refers to the desktop metaphor as a “straitjacket” (p. 167), echoing Gentner and Nielson’s (1996) statement that the desktop metaphor only serves to cripple the interface “with irrelevant functions” (p. 72). Furthermore, Gentner and Nielson (1996) state that the desktop metaphor limits the designer’s ability to develop more powerful interfaces.

Gentner and Nielson (1996) acknowledge that the desktop metaphor’s intention is to save time by leveraging a user’s knowledge of the traditional office, much like the assertions of Hudson. They, however, feel that the desktop metaphor may hinder the productivity of the next generation of users who will grow up using computers and may have little knowledge of the office domain (1996). Gentner and Nielson (1996) recommend that new paradigms be developed “based on the structure of computer systems and the tasks users really have to perform” (p. 74).

Johnson et al. (1985) feels that the desktop metaphor “fails to recognize that user dexterity in manipulating simulated objects on a computer screen is not as high as it is in the physical world” (p. 548). In addition, he feels that users are handcuffed by trying to accomplish digital goals using the metaphor of the physical world (Johnson et al., 1985, p. 548). In other words, he feels that the computer’s functionality may be limited by attempting to perform the actions of the physical world due to the imposition of the desktop metaphor (Johnson et al., 1985).

Attempts at Enhancing the Desktop Metaphor

In “Not a Desktop, Not a Metaphor,” Gozzi (2002) suggests that the desktop metaphor is not a metaphor for our desks at all. In addition to pointing out that real desks “lack window close boxes,” he says that his “real desk is much messier” than what can be found on his computer desktop and that “the computer screen has nothing like ‘an intuitive pile of stuff’ on it” (Gozzi, 2002, p. 426). While such a literal comparison may be true today, attempts are being made to enhance the typical desktop metaphor with features such as “piles” and task-based functionality.

Ravasio et al. (2004) points out that researchers such as Malone have been studying the electronic office for many years. Research from the early 1980s suggests that there are two fundamentally different styles of filing. The two styles are that of neatly organized file folders and piles (Ravasio et al., 2004). Mander and Rose included piles in their systems designs in 1993, focusing on the idea of casual desktop organization (Ravasio et al. 2004). Mander et al. discovered that people preferred piles because piles did not require “detailed categorization” and information “could be more easily reordered” than it could be with a “folder and file system” (Mander, 1992, p. 628). In addition, “seemingly disordered piles were often sensible to the person who created them” (Mander, 1992, p. 628).

Agarawala and Balakrishnan (2006) are exploring adding physics simulation to virtual desktops in combination with “piling instead of filing as the fundamental organizational structure” (p. 1283). The goal is to mimic the information, feel, and visual clues provided by the spatial information on a real desktop (i.e. proximity indicates urgency). Their BumpTop prototype “presents users with a 2 _D view onto a planar desktop surface tilted 25 degrees” (Agarawala & Balakrishnan, 2006, p. 1285). Users can pile documents and other items on this surface. While their research is ongoing, it has been discovered that piles do not scale well once they become large (Agarawala & Balakrishnan, 2006).

Other research efforts have focused on task-based enhancements to the desktop metaphor. The “activity theory” has “resulted in task-centered approaches” (Ravasio, 2004. p. 161). The impetus for this approach stems from the assertion that “the desktop metaphor has inadequate support for task switching” (Robertson et al., 2000, p. 495). According to Bomsdorf and Szwillus (1998), “knowing the user’s tasks enables the designer to construct user interfaces reflecting the tasks’ properties” (p. 201). In their “Task Gallery,” Robertson et al. have designed a “window manager that uses interactive 3D graphics to provide direct support for task management and document comparison” (p. 494). In this enhancement to the desktop metaphor, users’ tasks are hung on walls much like an art gallery. Tasks are defined as a “collection of documents and applications organized around a particular user activity” and task management takes into account “creating, locating, and bringing tasks into focus” (p. 494). Their design attempts to use human spatial memory capabilities by relying on the location of tasks on the gallery walls (Robertson et al., 2000).

Gentner and Nielson (1996), however, have a distinctly pointed view about these new attempts at revitalizing the desktop metaphor. They feel that interfaces that try to emulate virtual reality in a 2D space introduce “clunky interactions” (p. 72). In addition, they find these interfaces to be “navigationally cumbersome” and “interactionally cumbersome” (p. 72). They suggest developing “new interface paradigms based on the structure of computer systems and the tasks users really have to perform” (p. 74). According to Marcus (2002), analysts such as David Gelerntner, Don Norman, and George Robertson “are calling for the end of the desktop metaphor” (p. 8). In Gozzi’s (2002) words, “the desktop metaphor is apparently on its way out” (p. 427).

Tangible Interfaces

If the desktop metaphor is on its way out, it must be replaced by something else. Marcus (1994) states that future interface designs need to strike a balance between mental models, presentation, interactions, metaphors, and navigation. With Gentner and Nielson recommending new paradigms and computer systems based on tasks and with the observations about spatiality and piles, it seems that tangible user interfaces may be the solution.

Fitzmaurice et al. are credited with distinguishing tangible user interfaces from all others when they coined the term “graspable user interfaces” (Sharlin et al., 2004, p. 338). Ishii and Ullmer are credited with coining the term “tangible user interfaces” and define them as “devices that give physical form to digital information, employing physical artifacts as representations and controls of the computational data” (Sharlin et al., 2004, p. 338). Although in their infancy, these interfaces may be the answer to providing highly functional, intuitive computing environments (Svanaes and Verplank, 2000).

Svanaes and Verplank (2000) feel that it is now time to “go beyond the GUI interface” (p. 121). They define tangible user interfaces as “systems that allow for the user to interact with the computer through physical objects (other than mouse and keyboard)” (p. 121). They provide Durrell Bishop’s Marble Answering Machine as an example, where the manipulation of marbles manipulates phone messages (p. 122).

Ishii and Ullmer’s (1997) research is attempting to make digital information tangible as well. Their designs include interactive surfaces (walls, desktops, ceilings, windows, and doors), coupled bits and atoms, and ambient media. Their goal is to turn “everyday architectural spaces into ‘interfaces’ between people and information” (p. 235). The design calls for “allowing users to ‘grasp and manipulate’ foreground bits by coupling bits with physical objects, and enabling users to be aware of background bits at the periphery using ambient media in an augmented space” (p. 235). As an example, they provide the “Clearboard,” which integrates the ability to draw on a wall with distributed computing. This “active surface” allows a person across distances to interact with another person. Other examples that use this technology include the metaDESK, transBOARD, and ambientROOM, all which seem to have enormous potential.

In “A Taxonomy for and Analysis of Tangible Interfaces,” Fishkin (2004) discusses the role metaphor can play in tangible user interfaces. He states, "We believe that metaphor is particularly appropriate for TUIs, as opposed to other interfaces, due precisely to their physical tangibility. Once parts of an interface are made physically tangible, a whole realm of physically afforded metaphors becomes available. A designer can use the shape, the size, the color, the weight, the smell, and the texture of the object to invoke any number of metaphorical links. Mithen [40] argues that ‘‘the most powerful [metaphors] are those which cross domain boundaries, such as by associating a living entity with something that is inert or an idea with something that is tangible.’’ Tangible interfaces, which can have exactly these properties, therefore, have this potential" (p. 349).

Indeed, it is conceivable that the power of metaphor can extend beyond the desktop interface into the realm of tangible interfaces and affect them in much the same way.

Discussion

One concept seems to permeate the whole of the research is the physical desktop’s influence on our designs. At first, this notion may seem to be a given; an obvious statement. The fact is, however, that our computing designs have largely been influenced by the way we worked prior to the advent of computers. It seems natural to transfer the sum of our experiences in the analog environment to the digital environment via the desktop metaphor. Granted, the desktop metaphor as implemented today may be flawed. Perhaps a little fine-tuning or enhancement is in order. While the actual implementation may change, the idea of the desktop seems to remain an integral part of way we use computers. The research has shown that humans naturally think metaphorically, and we have defined our work structure in such a way.

Perhaps those conducting the research are correct. Perhaps it is time to eschew the desktop metaphor. Perhaps it is time for the augmented desktop. At first glance, it seems that a desktop augmented with digital capabilities and computational power would be of great benefit to humanity. Indeed, it has much potential. Research into the desktop metaphor seems to be converging in this direction. Alignment of human skills and computing power appears to be the goal. Tangible interfaces seem to hold the key.

In a tangible computing world, Johnson would have users manipulating data with great dexterity, Gozzi’s physical desktop would actually be a messy computer screen, and piles of digital documents would serve as the normal filing strategy. Perhaps in the future, we’ll look back at the history of the desktop metaphor and reminisce about the progression from physical desks, to computer desktop interfaces, to digital desks. Does the physical desktop hold this much influence over our designs? Perhaps it does.

It seems that after twenty years, the desktop metaphor has aged well. While it may not be perfect for everyone, it has certainly been a functional tool that has served the majority of personal computer users well. Whatever its fate, the desktop metaphor has played an integral role in the advancement, development, and shaping of personal computers and computer users alike. Its influence will continue to pervade our understanding of computers for years to come.

References

Agarawala, Anand & Balakrishnan, Ravin. (2006). Keepin’ It Real: Pushing the Desktop
Metaphor with Physics, Piles and the Pen. Proceedings of the SIGCHI conference on
Human Factors in computing systems CHI '06, 1283-1292.

Bomsdorf, Birgit & Szwillus, Gerd. (1998). From Task to Dialogue: Task-Based User Interface
Design. Conference on Human Factors in Computing Systems, 201.

Fishkin, Kenneth P. (2004). A Taxonomy for and Analysis of Tangible Interfaces. Personal
and Ubiquitous Computing, 8, 5, 347-358.

Gentner, Don & Nielson, Jakob. (1996). The Anti-Mac Interface. Communications of the ACM,
39, 8, 70-82.

Gozzi, Raymond, Jr. (2002). Not a Desktop, Not a Metaphor. ETC: A Review of General
Semantics, 59,4, 425-428.

Hudson, William. (2000). Metaphor: A Double-Edged Sword. Interactions, 7, 3, 11-15.

Ishii, Hiroshi & Ullmer Brygg. (1997). Tangible Bits: Towards Seamless Interfaces Between
People, Bits, and Atoms. Conference on Human Factors in Computing Systems, 234-241.
Johnson, Jeff A., Smith, David C., Ludolph, Frank E., Irby, Charles H. (1985). The Desktop
Metaphor as an Approach to User Interface Design. Proceedings of the 1985 ACM
Annual Conference on The Range of Computing, 548-549.

Madsen, Kim H. (2000). Magic By Metaphors. Designing Augmented Reality Environments,
167-169.

Mander, Richard, Salomon, Gitta, Wong, Yin Yin. (1992). A ‘Pile’ Metaphor for Supporting
Casual Organization of Information. Conference on Human Factors in Computing Systems, 627-634.

Marcus, Aaron. (1994). Managing Metaphors for Advanced User Interfaces. Proceedings of the
Workshop on Advanced Visual Interfaces, 12-18.

Marcus, Aaron. (2002). Metaphors and User Interfaces in the 21st Century. Interactions, 9, 2, 7-
10.

Marcus, Aaron. (1998). Metaphor Design in User Interfaces. Journal of Computer
Documentation, 22, 2, 43-57.

Marx, Adam N. (1994). Using Metaphor Effectively in User Design. Conference on Human
Factors in Computing Systems, 379-380.

Ravasio, Pamela, Schar, Sissel Guttormsen, Krueger, Helmut. (2004). In Pursuit of Desktop
Evolution: User Problems and Practices with Modern Desktop Systems. ACM Transactions on Computer-Human Interaction, 11, 2, 156-180.

Robertson, George, van Dantzich, Maarten, Robbins, Daniel, Czerwinski, Mary, Hinckley, Ken,
Risden, Kirsten, et al. (2000). The Task Gallery: A 3D Window Manager. Conference on Human Factors in Computing Systems, 494- 501.

Sharlin, Ehud, Watson, Benjamin, Kitamura, Yoshifumi, Kishino, Fumio, Itoh, Yuichi. (2004).
On Tangible User Interfaces, Humans, and Spatiality. Personal and Ubiquitous Computing, 8, 5, 338 – 346.

Svanaes, Dag & Verplank, William. (2000). In Search of Metaphors for Tangible User
Interfaces. Designing Augmented Reality Environments, 121-129.

Labels: ,


Read the complete text of this post

Tuesday, July 31, 2007

Bissell Healthy Home Vacuum

The Bissell Healthy Home Vacuum is an excellent vacuum. It has incredible suction power that rivals any Dyson available today. In addition, the air in my home smells cleaner because it is filtered through the vacuum's large HEPA filter.

In three months of testing in normal and sometimes not-so-normal household use, I can say that the Bissell Healthy Home Vacuum can stand up to and handle anything you throw at it. In a test of the Bissell Healthy Home Vacuum, I used alot of carpet powder. My Eureka Boss was not able to pull all of the powder up out of the carpet. The Bissell was able to pull up most, if not all, of the carpet powder. Unfortunately, this overwhelmed the filter and I needed to replace it. I soon found out that while this vacuum is available is many stores, the filters are not. I had to order them online at Bissell.com. Why sell a product in stores and not sell its accessories?

Labels: ,


Read the complete text of this post

Sunday, July 29, 2007

Favorite Shredder

...is the Fellowes Strip-Cut Paper Shredder Model: PS70-2CD. Its available
from Amazon or just about any office store.

Labels: ,


Read the complete text of this post

Nonbelievers to Convert

"For Apple, there are no disinterested consumers — just nonbelievers to convert." Check out the USA Today article, "In iPod America, legions in tune."

Labels:


Read the complete text of this post

Motorola Cable Signal Booster

I purchased a Monster Cable TGHZ-3RF 3-Way Low-Loss RF Splitter for the cable drop's main entry point into my home. The cable installer used a cheap 1 Ghz splitter to split the single drop into three.

I'll be testing out the Motorola Signal Booster (#484095-001-00) tonight. The analog cable channels (channels 1-80) on Digital Cable are grainier than my satellite was. This device is supposed to boost the signal and correct this. Plus it will allow me to put my cable modem and HD-DVR cable box on the same cable drop. I will split the drop with the Monster Cable TGHZ-2RF Two-Gigahertz Low-Loss RF Splitter.

Labels:


Read the complete text of this post

Saturday, May 20, 2000

Firewalls for Home Use

The growth of the Internet and the available services has created an exciting era in the information technology industry. During this time, both corporate networks and home users have become more Internet savvy. There has, however, been a vast gap that existed between the speed of the access at work and the speed available to home users. Coupled with the fact that these same users have grown accustomed to the speeds available at work, the demand for high-speed home access has grown dramatically. As a result, several high-speed home Internet access options have been developed. Two of the most popular, Cable modems and DSL modems, now offer the speeds equal to or sometimes better than those found on corporate networks. Both of these services provide the benefits of speed, but along with those benefits come the same drawbacks network administrators have faced for years: the need for heightened security.

One of the realities of having high-speed Internet access is the fact that the connections are essentially network connections. These connections, much like those of corporate LANs, are vulnerable to a variety of attacks. Within these connections are two inherent weaknesses that can be exploited by malicious hackers. The first is the operating system security. The vast majority of home users purchasing high-speed access are running Microsoft operating systems. Security issues have plagued these operating systems since the days of DOS (Parnell 137). Windows 9x incarnations have limited security that can easily be bypassed and Windows NT/2000, although largely secure, still suffers from an occasional security breach (Parnell 138).

The second issue of concern with these high-speed connections is their “always on” nature. Due to this nature, experienced hackers may be able to gain access to financial records, personal information, and the like.

To solve this these problems, high-speed Internet access purchasers should highly consider purchasing one of the firewall products being offered by the various networking vendors. These vendors have begun to target the security needs of Cable/DSL users by producing both software and hardware firewalls. These home-use firewalls perform essentially the same functions as their corporate counterparts. Although the kinds of services vary by vendor, their primary goal remains the same. They all function to keep intruders out.

To gain a better understanding of how these relatively new home-use firewalls function, one can look at how the tried and true implementations function in corporate networks. “Firewall” is used commonly as a term describing any of the various methods and devices for protecting one’s network from outside intrusion. In fact, the term is often extended to describe any network security device, such as a hardware encryption device, a screening router, or an application-level gateway (Siyan 274). The traditional definition of a firewall, however, as defined by the ICSA, is a “system or group of systems that enforces an access control policy between two networks” (Greenstein 268). Such systems, according to the ICSA definition, must be immune to penetration, allow only authorized traffic to pass through the network, and must be positioned in the network so that all traffic from inside or outside the network passes through it (Greenstein 268). Generally, firewalls are placed between the internal trusted network and the external untrusted network (Siyan 274).

This type of firewall usually falls into one of four designs. The first, router-based firewalls, is the simplest form. These firewalls are incorporated into routers that sit between the Internet and the network they are designed to protect. They act as the only gateway between the two networks. Similarly, an operating system can be loaded up with firewall software and also sit between the Internet and the network (Parnell 143).

The second type is called a dual-homed host. This is a computer with two network interfaces. One interface reaches out to the Internet and the other reaches out to the LAN. All traffic passes through the dual-homed host and all connectivity is proxied (Parnell 143).

A third type is called a bastion host. The bastion host approach employs a screening router as the only entry point to the Internet. This router is backed up by the Bastion host, which provides the needed services for the LAN (Parnell 144).

The final type is to employ multiple routers, with each router becoming progressively more complex and secure (Parnell 144).

There are two different approaches to setting up a firewall. The first approach involves programming an in-house firewall that meets the specific needs of the network. While this can be a very effective approach, it involves many hours of programming and is expensive. However, it is also very attractive because it is a custom solution that can be integrated effectively into the network (Siyan 274). The second approach involves purchasing a product from a vendor and then configuring it to match the network security policy (Siyan 274). While both approaches are effective, most organizations by “off the shelf” products as a way of expediting the process of securing the network. This is also the most effective approach for home users interested in firewall protection.

Firewalls can be divided into two different types based on functionality. The first type is considered static. Static firewalls either permit all traffic except that which is specifically blocked (default permit) or they deny all traffic except that which is specifically allowed (default deny). Default deny is usually held to be more secure (Greenstein 270).

The second type of firewall is considered dynamic. These firewalls are more fluid in the ways they manage configuration. They allow both denial and permission of any service according to established rules (Greenstein 271).

Firewalls are designed to operate at the highest levels of the OSI model, thus giving them complete information about the types of data flowing through the network. The main objective of any firewall is to protect one network from another network, preventing unauthorized users from accessing the network and allowing legitimate users to access the network (Siyan 274). However, depending on the vendor, many other functions are available. Most firewalls are constructed with a variety of functionalities. These functionalities include packet filtering, network address translation, application-level proxies, stateful inspection, virtual private networking, and real-time monitoring (Greenstein 272).

The most crucial of all of the firewall capabilities is the ability to filter packets, which is the process of examining every packet and passing it along to its recipient or discarding the packet if it is unauthorized (Greenstein 274). Packets can be filtered based on their inbound and outbound status, source IP address, destination IP address, TCP type, and by port number (Parnell 142).

Another important function of firewalls is network address translation. Network address translation lets the network administrator assign IP addresses from a different subnet to the LAN used for the firewall itself. Network address translation was originally conceived as a way to get around the IP address shortage, but it has found its way into firewall technology as a way of making the internal network theoretically invisible to the outside world, using IP addresses that cannot be used on the Internet (Parnell 142).

Maintaining control over network services is another important feature offered by some firewall products. Firewalls that include Application Level Proxies substitute normal network services by allowing the firewall to provide the service (Greenstein 275). The proxies run services on behalf of the network’s client machines that could be potentially damaging to the network if used maliciously. All requests are forwarded back and forth from the proxy to the clients, providing some degree of control of the services (Parnell 142).

Other firewall services include stateful inspection, whereby the firewall verifies whether packets are authorized by checking a rulebase (Greenstein 278). Still others include Virtual Private Networking. Some firewall vendors incorporate this capability, allowing the creation of secure private “tunnels” on public networks, such as the Internet (Greenstein 279).

Finally, the ability to monitor a firewall in real-time is crucial to staying on top of the status of the network. Many firewalls feature paging and notification services as well as logging capabilities that allow network administrators to keep track of activity (Parnell 142).

All of these capabilities server to protect the network from a variety of attacks. These include TCP hijacking, IP spoofing, and network sniffing (Greenstein 269). The most common, and simplest is taking advantage of weak or default passwords (Parnell 140). A second and popular kind of attack today is the Denial of Service attack. These attacks simply overload the servers with requests until the servers crash. Attacks such as SYN flooding take advantage of a weakness in the TCP three-way handshake, rendering servers inoperable. Other similar attacks include DNS attacks and the Solaris “suicide ping.” Even more complex attacks involve exploiting network operating system holes (Parnell 141).

Most of these attacks are limited to large corporate LANs. However, as the line blurs between home networks with high-speed access and corporate LANs, the threat of attacks in increasing for home users. Since Cable and DSL users are part of larger LANs, they face threats similar to those faced by large corporate LANs. Currently, the most common attack on home users is the Trojan horse attack.

A Trojan horse attack begins by placing the Trojan horse on a user’s machine. Usually, these programs are downloaded unknowingly as disguised programs through newsgroup postings and email attachments, or by hackers exploiting Microsoft’s File and Printer sharing. Once the file is on the user’s computer, a hacker can attempt to perform malicious acts. A typical and frequently used attack is the Sub-Seven attack. It is a remote access Trojan that contains many so-called “tricks” that allow hackers to post messages and sniff passwords from a user’s computer. Sub-Seven attacks can use AOL Instant Messenger, ICQ, and Yahoo Instant Messenger to perform these acts. Hackers can also speak through the user’s soundcard and speaker and view the content of the victim’s screen using Sub-Seven attacks (Graham).

Realizing the increasing need for security on home computers, several larger vendors who produce enterprise networking solutions, have begun to produce similar solutions for home use. These options include both software and hardware based firewalls.

Several software firewalls have been developed for home use. Symantec’s Norton Internet Security 2000 and Network ICE’s Black ICE Defender are two such products. Both feature a rule-based firewall that runs in the background protecting the user’s PC while connected to the Internet. Both protect against hackers, unauthorized intrusions, and attempts at discovering personal information such as passwords, financial information, and other sensitive data (Symantec, Network ICE). This type of protection is becoming increasingly important, as indicated by Intel’s investment in Network ICE. Intel has also begun to bundle Black Ice Defender with its DSL modems (Intel).

For those home users who prefer hardware based solutions, several network hardware providers have begun to include firewall technology into their hubs and switches. These vendors are targeting home users wishing to connect several PCs and create a network, as well as those who wish to employ firewall protection. The vendors currently offering Cable/DSL firewall devices include Linksys, Netopia, Macsense, NetGear, Cayman, WebRamp, and UMAX. Each of the offerings from these vendors feature similar functionality, but the Linksys is set apart due to its switching capability (Linksys). This market is just beginning to develop, but there are already several available products boasting impressive home networking features as well as incorporating firewall protection. Some of the features included in these products are the ability to create a home network using a Cable/DSL link, virtual private networking capabilities, DHCP serving, IP filters, and real-time monitoring.

With the birth of high-speed Internet connections for the home, the world of personal computing is becoming less personal and more connected. With malicious intent, the personal aspect of computing is compromised, resulting in security breaches. Several options are available to home users who wish to enjoy the benefits of high-speed and still keep their information safe.



Works Cited

Graham, Robert. “FAQ: Firewall Forensics.” RobetGraham. 2000.

Greenstein, Marilyn; Feinman, Todd. Electronic Commerce. Massachusetts: Irwin McGraw-Hill, 2000.

Parnell, Tere; Null, Christopher. Network Administrator’s Reference. California: Osborne, 1999

Siyan, Karanjit. Internet Firewalls and Network Security. Indiana: New riders Publishing, 1995.

“BlackICE Defender.” Network ICE. 2000. http://www.networkice.com/Products/BlackICE/blackice%20defender.htm

“Cable/DSL Router Peer Matrix.” Linksys. 2000. http://www.linksys.com/pdf/befsr41cm.pdf

“Intel To Become First Company To Offer Advanced Internet Security Software From
Network ICE With Its High Speed DSL Modem.” Intel. 2000.
http://www.intel.com/pressroom/archive/releases/cn033000.htm

“Norton Internet Security 2000 Features: Comprehensive Security Suite.” Symantec. 2000.
http://www.symantec.com/sabu/nis/featuresA.html

Labels: ,


Read the complete text of this post

 

Check out the Voice Over the Wall Store, Powered by Amazon.com

copyright 2003-2007, VOTW

all rights reserved.