Monday, December 19, 2005

In computer science, a growing gender gap Women shunning a field once seen as welcoming

MEDFORD -- As a young high school teacher in 1982, Diane Souvaine leapt into graduate school for computer science having taken only one class in the subject.

Computers, she believed, offered an exhilarating way to apply her math skills to real-world problems. And because computer science was coming into its own in the feminist age, she also hoped it would be more welcoming to women than her undergraduate math department.

Today, Souvaine chairs the Tufts University computer science department, which has more female professors than male. But few younger women have followed in her generation's footsteps. Next spring, when 22 computer science graduates accept their Tufts diplomas, only four will be women.

Born in contemporary times, free of the male-dominated legacy common to other sciences and engineering, computer science could have become a model for gender equality. In the early 1980s, it had one of the highest proportions of female undergraduates in science and engineering. And yet with remarkable speed, it has become one of the least gender-balanced fields in American society.

In a year of heated debate about why there aren't more women in science, the conversation has focused largely on discrimination, the conflicts between the time demands of the scientific career track and family life, and what Harvard University President Lawrence H. Summers famously dubbed ''intrinsic aptitude."

But the history of computer science demonstrates that more elusive cultural factors can have a major impact on a field's ability to attract women.

As the popularity of computer science soared in the first half of the 1980s, many university departments became overburdened and more competitive, some professors argue. Introductory classes were taught in a way that emphasized technical minutiae over a broader sense of what was important and exciting about the field, a style catering to the diehard -- and overwhelmingly male -- techies rather than curious new recruits. The last thing educators, besieged by students, worried about was attracting more, so they didn't see the need to combat the image that took root in popular culture of the male computer geek with poor hygiene and glazed eyes.

''We had so much interest from so many young men for years, the attitude was 'Oh my God, how are we going to cope with these hordes of students?' not 'How do we get them interested?' " said Maria Klawe, a computer scientist and dean of engineering at Princeton University.

Though the enormous impact of computers on society makes the development of computer science at the college level unique in some ways, some scientists believe it offers a warning to other sciences as well. In fact, something similar happened in physics after World War II, when the atomic bomb catapulted the subject to preeminence in society, according to David Kaiser, a physicist and historian of science at the Massachusetts Institute of Technology. Facing a sudden and dramatic rise in enrollments, physics departments grew less intimate and coped with the crowds by teaching the subject in a more routinized and less creative way.

The percentage of women studying physics, already low, dropped dramatically and stayed in the single digits for decades. Eventually the physics bubble burst for men as well, and today a high percentage of the country's physicists are foreign-born.

Some computer scientists fear that they may be going in the same direction. They view the dearth of women as symptomatic of a larger failure in their field, which has recently become less attractive to promising young men, as well. Women are ''the canaries in the mine," said Harvard computer science professor Barbara J. Grosz.

In the wake of the dot-com bust, the number of new computer science majors in 2004 was 40 percent lower than in 2000, according to the Computing Research Association. The field has seen ups and downs before, and some think the numbers for men will soon improve at least a bit. But the percentage of undergraduate majors who are female has barely budged in a dozen years.

The shortage of new computer scientists threatens American leadership in technological innovation just as countries such as China and India are gearing up for the kind of competition the United States has never before faced.

The US economy is expected to add 1.5 million computer- and information-related jobs by 2012, while this country will have only half that many qualified graduates, according to one analysis of federal data. Meanwhile, the subject is becoming increasingly intertwined with fields ranging from homeland security to linguistics to biology and medicine.

''People who are mapping the genome are really computer scientists involved in biology," said Lenore Blum, a professor at Carnegie Mellon University in Pittsburgh.

A Globe review shows that the proportion of women among bachelor's degree recipients in computer science peaked at 37 percent in 1985 and then went on the decline. Women have comprised about 28 percent of computer science bachelor's degree recipients in the last few years, and in the elite confines of research universities, only 17 percent of graduates are women. (The percentage of women among PhD recipients has grown, but still languishes at around 20 percent.)

The argument of many computer scientists is that women who study science or technology, because they are defying social expectations, are in an uncomfortable position to begin with. So they are more likely to be dissuaded from pursuing computer science if they are exposed to an unpleasant environment, bad teaching, and negative stereotypes like the image of the male hacker.

When Tara Espiritu arrived at Tufts, she was the rare young woman planning to become a computer scientist. Her father is a programmer, and she took Advanced Placement computer science in high school. Because she scored well on the AP exam, she started out at Tufts in an upper-level class, in which she was one of a handful of women. The same men always spoke up, often to raise some technical point that meant nothing to Espiritu. She never raised her hand.

''I have not built my own computer, I don't know everything about all the different operating systems," she said. ''These people would just sit in the front of the class and ask these complicated questions. I had no idea what they were talking about."

Now a junior, Espiritu is majoring in engineering psychology, which examines how product design affects human use.

The classroom experience that turned off Espiritu had its roots in the early 1980s. The number of students receiving bachelor's degrees in computer science more than doubled between 1981 and 1984, according to the National Science Foundation. ''Undergraduates are swarming to major in computer science," NSF official Kent K. Curtis warned in 1983. Combined with the problem of faculty leaving for better-paying jobs, that meant there weren't enough professors to teach the subject. In response, ''many institutions are being forced to limit enrollments," Curtis wrote.

Many computer science departments imposed GPA requirements or tried to make introductory classes more difficult in order to weed out the multitudes, said Stanford professor Eric Roberts.

Those who were driven out were not the worst students, but those who felt more marginal, Roberts argues. They could have been men or women, but studies have shown that women generally have less previous computing experience and less single-minded passion for technology.

Introductory classes zeroed in on programming and other technical aspects of the field, rather than explaining big ideas or talking about how computing can impact society, many professors say. That approach led to a misconception among students that computer science is the same thing as computer programming. Computer scientists say that view shortchanges the field, which is far broader and more intellectually rich. It is applied math and design, they say; it is about modeling human behavior and thinking about the simplest way to accomplish a complex task.

When Souvaine joined the Tufts faculty in 1998, she was dismayed that there were few female students in the introductory course. So she and a colleague designed a new freshman seminar focused on problem-solving and real-life applications.

On a recent afternoon, Soha Hassoun, who is now teaching that class, lit up a drab cinder-block classroom with her boisterous questions. The topic of the day was how to get a computer to determine whether a particular point is inside or outside a geometric shape.

Hassoun's focus was on logical thinking, and she set aside only a few minutes for students to write their answers in computer code.

''Here's the big question. Why do we care about this?" she asked rhetorically, then went on to explain that that same method could help determine which diabetes tests are the best predictors of the disease. The class would later work on just that task.

The first time Souvaine taught the freshman seminar, there were 14 men and 14 women, and seven of each gender went on to major in the field. The number of female undergraduate majors remains low, but Souvaine sees reason for hope. About 30 percent of students now in lower-level classes are women.

On a broader level, the National Science Foundation will soon announce a new set of grants to universities, high schools, and industry groups with creative ideas for attracting women to computer science. A two-year-old organization called the National Center for Women & Information Technology has designated several schools and groups, including the Girl Scouts, to identify solutions.

A number of universities are trying to do something similar to Tufts. At MIT, where the percentage of women is much lower in computer science than in the general student body, the electrical engineering and computer science department will pilot two new introductory classes this spring. One will use robots to try to capture the excitement of the subject, and the other will provide basic background aimed at students who didn't take Advanced Placement computer science in high school.

The goal is to inspire more students like Katie Seyboth of Tufts. She loved math and science, but had never been interested in computer science before she took, on a whim, one of the school's introductory classes for people with no previous experience.

Soon, Seyboth was procrastinating on her other class work in order to do computer science assignments. Still, she found it ''really intimidating" when men used terms she didn't know and talked about complicated programs they wrote in their free time.

She believes that if she hadn't taken the ''welcoming" introduction, she would have drowned in her next class, which was all programming. If Souvaine hadn't taken her under her wing, she might not have had the courage to drop her chemistry major, she said.

Now a senior, Seyboth wants to earn a doctorate in computer science and recently interviewed for a job at Google. She was just named a finalist for a national computer science award.

''There's nothing better than watching the real potential of students like Katie being unveiled, seeing the joy and excitement they feel and the contributions they make," Souvaine said. ''And yet, had just a few things gone differently along the way, they might no longer be in the field."



source: http://www.boston.com/news/local/articles/2005/12/18/in_computer_science_a_growing_gender_gap?mode=PF


Google Launches Mobile Mail

"Google has launched mobile phone version of Gmail. The service automatically optimizes the interface for the phone you're using and also 'Lets you reply by call to people whose phone numbers are in your Gmail Contacts list'. Technewsworld has a story on this. From the article: 'Gmail is now a kind of hub for Google ... GoogleTalk and a range of personalized services are all tied in together through Gmail registration. The more registration data collected by Google, the more relevant search results and ads can potentially be.'"

source: http://slashdot.org/articles/05/12/19/086238.shtml?tid=217&tid=215

The differences between Red Hat and Novell

I've been meaning to write about this for some time, but couldn't. Firstly, because I couldn't touch on the subject while I was still employed by Novell. Secondly, because i didn't want to create problems for Novell while it was going through its road bumps a few weeks back.

But I thought now was a good time to talk about the differences I perceive in the two companies, having worked at the one and talked extensively with the other. In no particular order....

Customers

Red Hat has long dominated the Linux market. In part this has resulted from serendipity - the company raised gobs of cash in a boom-time IPO and so was the first big player to market - but it also results from the company's rabid focus on customers. Importantly, Red Hat has never wavered from a core understanding that the low-hanging fruit is Unix. A friend there recently speculated that only 5-10% of Wall Street is Linux right now, and Wall Street is an early adopter. This means there's still truckloads of money to be made in converting Unix to Linux, with fewer barriers to doing so (skillsets transfer, dramatically lower cost of hardware, etc.).

Novell, for its part, has had to play catch-up, just as SUSE before it did. The integration of SUSE into Novell's corporate and technology infrastructure took time, and Red Hat extended its lead during that time. However, Novell brings some serious value to the market, including superior support. Customers, like the Swiss government and the UK's National Health Service are leading indicators of Novell's customer resurgence.

It's not the size of Novell's support staff that matters most, I don't think. That matters, but the larger issue is Novell's history and accumulated expertise in supporting operating systems and software, generally. Novell has been doing this for two decades, and they really are leaders in support, certification, etc.

I think Novell still does itself a disservice by focusing more on Microsoft and Windows than the Unix market, but this is changing. It's just hard for the company to give up on its eons-old battle with Redmond.

In short, both companies are improving their customer focus - Red Hat is adding employees (though still at an intelligent pace) to be able to better service customers who spend with them, and Novell is tightening its focus on Linux (and, frankly, shed some jobs to accomplish this) to better meet customers' requirements. Both are well-positioned. I think we're finally going to see some competition in the commercial Linux market.

Culture

Red Hat has a hard-charging, take-no-prisoners approach to the market. If you're not making them money, you're not going to get their ear. At times, because of how tightly Szulik runs the ship, they simply didn't have enough employees to be able to service all the demand, causing people outside the company to view Red Hat as aloof and arrogant.

This has led the growing open source ecosystem to Novell, which is partner-centric and easy-going almost to a fault. Ron Hovsepian is changing this, and Novell is starting to become much more choosy about opportunities (customer and partnering) that come its way. The company's culture is changing for the better along with this shift in opportunity mindset. Novell is becoming less concerned with popularity and more concerned with dollars.

Here, again, I see a convergence between the two. Red Hat is loosening up and Novell is tightening up.

Partners

I already addressed this a little above, but I think the companies are converging here. Red Hat has been historically difficult to work with, in large part because they simply lacked bandwidth to service all incoming requests. So, you were either SAP and Oracle (and a few select others), or you were no one. This was good for Red Hat in that it tightened the company's focus on revenue-generating partnerships, but it was bad in that it now has to play catch-up in being a central part of the growing open source ecosystem.

In that world, Novell is the first choice because it's easier to work with and more generous with terms. Novell is becoming choosier as its clout grows, but I don't sense it's doing so out of arrogance. I think Ron is just instilling discipline. From my perspective as a prospective Novell partner, this is a good thing. I'd much rather work harder to partner with a company that has its act together than to slap together an easy, meaningless partnership that is good for a press release and little else.

Red Hat is also improving its partner programs to accommodate more. Again, this is more a matter of adding employees to cover things than it is a real shift in the company's mindset - Red Hat has always cared about partners. Now it has the people to put meat on the bones of those good intentions.

Conclusion

Novell is growing into its role as a major Linux vendor, and Red Hat is growing into its role as a major company, period. I really like the changes I see in both companies. They're still very different companies with different mindsets, but the differences are narrowing.



source:http://weblog.infoworld.com/openresource/archives/2005/12/the_differences.html


The History of Videogame Lawsuits

"1UP is running an interesting piece detailing the history of lawsuits in the gaming industry. It reveals a bit about Nintendo's old strong-arm tactics, the origin of the third party developer, Electronic Art's employee abuse, and of course plenty of violent games being 'linked' to violent behavior. Jack Thompson gets an entire page to himself." From the article: "To show their appreciation, Atari took Activision to court, claiming that the company didn't have the right to develop Atari games. Atari lost, and more companies decided to follow in Activision's footsteps, creating the concept of third-party developers. It was a defining moment for video games."

source:http://yro.slashdot.org/article.pl?sid=05/12/18/239202&tid=123&tid=10

Retrofit your Web pages for wireless compatibility

If you're like many Web developers, you have no idea how to ensure that your Web pages are accessible to wireless devices. Because you probably don't want to maintain Web and wireless versions of the same site or take on the overhead of Extensible Markup Language (XML) transformations, this article shows you a more practical approach to wireless compatibility. With some well-designed XHTML, a bit of CSS, and the media attribute, you can do wonders.

The days when Web pages were viewed only on Web browsers are long behind us. In fact, even the days when Web pages were viewed mostly on Web browsers are coming to an end. With hundreds of mobile devices available and millions of them in use -- most now Internet-capable -- it's almost assured that if your Web site or application is popular, it will be viewed on a mobile device. As a Web developer, the question is how far are you willing to go for wireless? Most Web developers don't particularly want to take on a second specialization in wireless development, but trends show that you do need your Web pages to be usable by wireless devices -- so what are your options?

Developers already using XML for their site or application code will probably do best to stay on that track and use Extensible Stylesheet Language (XSL) stylesheets for wireless formats. Those dependent on wireless traffic may benefit from building multiple versions of the same site. But the rest of us need less costly options -- preferably ones that let us use what we've got, rather than starting from scratch.

In this article, I'll show you an easy way to upgrade your Web pages for wireless compatibility. If you're already coding your Web pages using HTML 4.01 Strict or XHTML and styling them with CSS, then you've done more than half of the work of making them accessible to wireless devices. What's left to do, as you'll see, is a breeze.

First, a little background

The following technologies should be familiar to you if you're doing serious Web development, but just in case, here are the basics:

Assuming you've got a "plain vanilla" Web site, you're probably using some mixture of HTML 4.01 (the current standard) and a bit of older HTML, as well as possibly a little bit of CSS. The first thing you'll need to do is upgrade your Web pages to something a little more strict, as I'll explain below. (If you're already using HTML 4.01 Strict or XHTML you're ahead of the game -- jump to "Getting started.")



Back to top


From HTML to XHTML

If you don't already know it, HTML is on the move. The presentation HTML most Web developers cut their teeth on is nearly phased out, with newer versions like HTML 4.01 Strict and XHTML 1.0 being readily adopted by newer (and especially Web 2.0) browsers. If you're not already up on the different versions of HTML and XHTML you might want to check out an introductory article or book on the topic (see Resources). Basically, today's HTML falls into the following categories:

Aww, why so strict?

You might be thinking, "Why go to HTML Strict, as long as I'm using CSS for all my styling and presentation?" This classic I'll discipline myself argument never actually pans out -- at least not over the long term. No matter how disciplined you are, if you can make a quick change here or there with presentation HTML, you eventually will. By moving to HTML 4.01 (and XHTML 1.0) Strict, you're restricting yourself: you can't use presentation HTML, no matter how much you might want to. More importantly, when the boss is screaming at you to get that menu changed from green to blue, you'll take the time to make that change in your CSS, not your markup.

The benefits of XHTML

If you're serious about supporting wireless devices, you need to be using at least HTML 4.01 Strict for your Web pages, and you should seriously consider moving to XHTML 1.0 Strict. Getting to HTML 4.01 Strict forces you to drop any presentation in your HTML in favor of CSS, which is the first step to good, flexible Web design. CSS is also essential if you want to build Web apps that easily support wireless devices, because you can apply one CSS set of rules for Web browsers and another for mobile devices.

After you've moved to HTML 4.01 Strict (if you're unsure about how to do that, see the Resources section for relevant links), you'll want to think seriously about moving to XHTML 1.0 Strict. XHTML is simply the most current version of markup around, and that carries with it some significant benefits:

As an additional bonus, more and more wireless devices are providing support for XHTML. While that doesn't necessarily mean that these devices won't support HTML 4.01 Strict, it does mean that they're going to support XHTML specifically, and as you move to XHTML 1.1 and the new wireless modules in that version of XHTML, you're going to get significant advantages over using just HTML 4.01, even with the CSS techniques discussed in this article.



Back to top


Getting started

For the purpose of the examples, I'll assume you've upgraded to HTML 4.01 Strict or XHTM 1.0 Strict. The first step after you've upgraded your HTML is to be sure you supply a DOCTYPE for the page. Listing 1 shows the DOCTYPE for HTML 4.01 Strict.


Listing 1. Using the HTML 4.01 Strict DOCTYPE





"http://www.w3.org/TR/html4/strict.dtd">



Simple HTML Page







This should be the first line in your HTML document, before the html element. You should also include the meta tag, which specifies your character set: the W3C validator (discussed below) doesn't like not knowing the encoding of your document.

Listing 2 shows the DOCTYPE for XHTML 1.0 Strict.


Listing 2. Using the XHTML 1.0 Strict DOCTYPE



"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">



Simple XHTML Page





IE and the XML declaration

XML gurus will wonder why Listing 2 doesn't have the XML declaration, the line that starts with . Unfortunately, Internet Explorer (only the world's most popular browser) chokes on that line, so you must ensure that the first line of your XHTML is the DOCTYPE line, not the XML declaration.

You'll notice a few differences in the XHTML compared to the HTML, but you should be able to figure them out fairly easily. The biggest change is that XHTML requires you to close all your elements (use, for example, and
instead of and
), and you'll also need to add the xmlns attribute on the html element. A good book or article will guide you through these semantic details. See the Resources section for pointers.

Can you validate that?

It's one thing to say you're going to upgrade your pages to a specific version of HTML or XHTML; it's another to actually get them there. Rather than just reading some articles, making a few changes, and assuming you're done, you should always validate your files. The World Wide Web Consortium (W3C) defines all the standards being discussed in this article, and its validator tool lets you check your HTML or XHTML and make sure you're compliant.

After you have your DOCTYPE in place, surf on over to the W3C Validation Service. There you can upload your files (or paste in the source), and validate them. Figure 1 shows a successful validation; this will let you know for sure that your page meets the standard you're going for.


Figure 1. Validating XHTML and getting the green light
A valid document results in green messages
One at a time

When you're validating and dealing with errors, fix them one at a time. The validator often reports one error, and then successive errors show up as a result of that initial error. So don't bother trying to go down the entire list; instead, fix one error, re-validate, and see if that clears up other problems (it usually will).

Making mistakes is a pain, although it's common enough, and almost always the first step between starting and finishing. In cases where your HTML or XHTML is invalid, the W3C validator gives you red error messages like the ones in Figure 2.


Figure 2. Validating XHTML and getting a list of errors
An invalid document results in red error messages

When you get messages like this one, don't worry -- just use them as a guide to fixing what's wrong with your page, and then re-validate until you get the nice green message shown in Figure 1.



Back to top


And then there was CSS...

After you've removed all the presentation code from your page (with the help of the W3C validator), it's time to add in some CSS. Like HTML and XHTML, CSS has tons of great features, but for the purpose of this article you need to follow two basic steps:

  1. Move all of your CSS into one (or more) external stylesheets, ending in a .css extension.
  2. Reference your stylesheets in your HTML or XHTML using a link element.

I'll take you through all the steps of moving your CSS to external files in just a second, but first let's concentrate on getting that all-important link right. Listing 3 shows the XHTML to link correctly to an external stylesheet.


Listing 3. Linking to an external CSS stylesheet




"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">



Simple XHTML Page










Back to top


Setting up external CSS

Moving your CSS code into external stylesheets is the key to making your Web pages accessible to wireless devices. External stylesheets can be easily applied to different presentation environments such as Web browsers and wireless devices. The steps are as follows:

  1. Move all your CSS into external stylesheets (that is, dump it from inline code).
  2. Segregate your stylesheets into logical groupings: one for browsers, one for wireless devices, one for printing, and so forth.
  3. Use the media attribute on the HTML 4.01 or XHTML link element to assign specific stylesheets to different viewers of your page.

As you're in transition to external stylesheets it's also a good idea to think about stylesheet naming. A typical CSS stylesheet is named something like lounge.css or starbuzz.css or perhaps my-site.css. There's nothing wrong with that, although -- as you'll see in the next few sections -- there's nothing particularly great about it either.

When you start to develop CSS stylesheets for each type of device you serve, you're going to want to name stylesheets according to both the site or purpose they serve (like "lounge" or "starbuzz"), and the type of device they style for. So for your core sheets, you might want to consider a name like lounge-web.css or starbuzz-web.css. This makes it very clear -- to you, to colleagues, and to that new junior programmer who just got hired and knows nothing about your systems -- that the purpose of that particular CSS stylesheet is to serve Web browsers (or at least clients that access the Web traditionally). You could even use something like lounge-browser.css if you wanted to really be specific. This may seem like overkill now, but it's about to really pay off.

Let's see what happens as I follow the steps to move from inline CSS to external stylesheets.

1. Dump inline CSS

The first thing you need to do is get any inline CSS out of your pages. Listing 4 shows a typical HTML page with CSS added to the beginning of the page.


Listing 4. Inline CSS










elisabethfreeman.com
















There's nothing particularly wrong with this page: it works great, looks good, and uses CSS for presentation instead of deprecated HTML. However, the CSS is applied to this page for every type of viewer, whether it's a printer, Web browser, mobile phone, handheld, or aural screen reader. That's the problem with inline CSS -- it's tied to the page and is thus largely inflexible. Fortunately, the switch to external stylesheets is relatively simple, as shown in Listing 5.


Listing 5. Moving to external CSS









elisabethfreeman.com
type="text/css" href="ef.css">















In Listing 5 you can see that a fairly small change adds a lot of flexibility. The external stylesheet can easily be applied to all the pages on your Web site or application (or all the pages in a particular section of your site), resulting in a nice, uniform look and feel. More importantly, moving all that inline CSS into external files sets you up nicely for using multiple stylesheets.

2. Group stylesheets

Lots of times you'll find that in one stylesheet you end up with hundreds -- and sometimes even thousands -- of rules. There's nothing particularly problematic about that (other than the maintenance nightmare), but using multiple stylesheets lets you break up your stylesheets a little more logically. Putting all your table-related rules in one sheet and your core HTML rules in another (for example) will make your site a lot easier to maintain, because a two- or three-hundred-line sheet is much easier to read than a single sheet that encompasses every single rule.

Things get more interesting when you decide that you want your overall site or application to have a common look and feel, but you want some pages or sections to be differentiated. For this, you might have a basic sheet that lays out the rules for all pages, and then particular sheets that add or modify those rules for certain sections. For example, consider a setup like this:

Applying multiple stylesheets

After you've set up multiple stylesheets you can simply reference more than one link element in a page. Listing 6 shows a single stylesheet for the heading section of the core site's pages.


Listing 6. Using a single stylesheet




Welcome to Cyber-Autos, Inc.



If you wanted to work on the financing section, though, you'd want to apply both the core sheet and the finance sheet. That's trivial after you've set up external CSS and grouped your rules into multiple stylesheets. You just need to add another link element in, as shown in Listing 7.


Listing 7. Applying more than one stylesheet




Cyber-Autos, Inc. :: Apply for Financing




Are you starting to see the power of external CSS with multiple stylesheets? Augmenting the rules in one sheet with another makes it easy to define different layers of styling. And, because the rules in later sheets override rules in earlier ones, you can easily pick and choose from existing rules as you create new pages or sections, or upgrade your site's look and feel. (For example, you might choose to use 80 percent of the core rules for a redesign but redefine a few rules for a new look and feel.) The result is a highly configurable site that offers a uniform look and feel and lets you define differences between logical sections.

3. Assign stylesheets to different viewers

So far, the tricks I've shown you mostly apply to normal Web development -- using the most current HTML or XHTML and external stylesheets to make your pages nice and organized. Now it's time to think about making the pages accessible to different viewers. You've already seen the basics of using the link element to link to external stylesheets (in Listing 3 and Listing 7), but here's where it becomes even more powerful. Adding the media attribute to the link element allows you to indicate the viewer type to be assigned to each stylesheet. The most common values for this attribute are as follows:



Back to top


Working with different media

So, suppose you have a highly graphical site -- maybe the flashy opening section of that automotive site, with pictures of cars and descriptive text -- and you want to allow for printing. You obviously want to strip out most of the formatting, which either won't show up on a printer at all or would look terrible. So, you create a new stylesheet called auto-print.css that sets the basic font to a serif style (generally considered the best type of font for print), and focuses on the text. To ensure that auto-print.css is used for pages to be printed you would add the second link element shown in Listing 8.


Listing 8. Adding a stylesheet for printing




Cyber-Autos, Inc. :: Welcome

media="print" />


That's simple enough, right? Now let's say that you also want to add a wireless stylesheet into this mix, so that users checking out your automotive site from their Treos could get some useful content. Obviously, there's a lot to be said about laying out a site for wireless visitors, but for the sake of this first example, let's just say you decide to strip out all formatting for a streamlined, bandwidth-light version of your site. Listing 9 shows how you would link to a stylesheet for wireless devices.


Listing 9. Adding another stylesheet for wireless devices




Cyber-Autos, Inc. :: Welcome


media="handheld" />


Don't forget to set the media type!

Listing 9 looks pretty good, but it presents a hidden problem. Do you remember what the media type defaults to if none is specified? It's all. So the first link, which refers to auto-core.css, is automatically applied to all viewer types. And, as you may recall, when multiple stylesheets are specified, they're combined, with rules in later sheets overriding rules in earlier sheets.

Given the current code, the printing and handheld device pages will be styled by their individual stylesheets (auto-print.css and auto-wireless.css, respectively), but they'll also take on the rules of auto-core.css. That may be what you want -- uniformity, right? -- but it's probably not. If auto-core.css adds any background images, or performs absolute positioning, or even sets the color or style of fonts, some of these styles will likely "bleed" into your printable or handheld device pages. Because you don't want to mess up an otherwise great looking page on a specific device, you need to specify the media type on the core stylesheet, as show in Listing 10.


Listing 10. Setting the media type




Cyber-Autos, Inc. :: Welcome
media="screen"/>




This small -- and easily forgotten!-- change will ensure that auto-core.css is applied only to browsers, leaving auto-print.css and auto-wireless.css to handle all the styling for the devices they target. The result is a better site with more specific styling for different devices. Perfect!



Back to top


Wireless design notes

After you know how to apply a specific set of CSS rules to wireless clients, you've got to do some thinking about what to show to those clients. Unfortunately, this is largely application- and page-specific work. In other words, there's no basic set of rules for making Web pages suitable for display on wireless and handheld devices.

I'll spend the remainder of the article looking at some of the basic principles and common problems you should consider when styling your Web pages for viewing on wireless devices. Before I even start on the design notes let me reiterate the essential lessons learned in the first half of this article: If you have presentation code in your HTML itself, you're in for a world of hurt; it will be nearly impossible to manage good design for different devices. Before spending hours tweaking your CSS for a handheld, make sure that your pages use completely HTML 4.01 Strict (if not XHTML 1.0 Strict) markup, and that you've correctly set the media type up on your link elements. With those things done your pages are set up to work across wireless devices, and what's left are the actual design considerations.

Slim, low, little

Wireless devices have slow network connections and little room for display. If you're serious about wireless compatibility you need to design your Web pages accordingly. The many things you can do to help wireless displays fall into three basic categories:

  1. Create or style a version of your site that is slim and will fit on narrow device screens.
  2. Provide low-bandwidth versions of your site.
  3. Get the most important content on the initial screen of your little handheld; it's problematic to scroll down on phones.

So for example, you should consider dropping out all images in your stylesheet rules for handhelds; the less images a handheld has to load, the faster your pages will appear. If you need a small banner image, that's probably okay, but showing fancy backgrounds or stylized content just doesn't make sense on handheld devices.

But my phone supports ...

Plenty of newer phones and phone-organizer hybrids support frames, Flash, Java™ plug-ins, JavaScript, and other such fancy features. If you write your code with such devices in mind, however, you leave the majority of users behind. Not everyone can afford a $500 wireless device. If you're aiming for true wireless compatibility you need to support mainstream Nokia phones as much as you do high-end devices like Treo, Blackberry, and Sidekick.

You should also avoid using frames, as well as fancy menus and scripts. If you provide menus and scripts on your screen-viewed site, be sure to set your CSS to fall-back to text versions of menus and remove scripts for wireless devices. Frames are a bad idea in any environment, so just avoid them completely.

In addition to avoiding scripts, you should assume that handheld devices aren't going to work with Flash animations, Java plug-ins, events in JavaScript like onClick or onBlur... unfortunately, the list of unsupported things just goes on and on. In general, you need to ensure your sites are simple, mostly text, and stick to a one-column design if you want to ensure good wireless device compatibility.

A tiny little window...

To address the narrow width of handheld devices, consider using the CSS max-width property, as shown in Listing 11.


Listing 11. Setting the maximum width for handhelds




body {
max-width: 200px;
}

div#content {
max-width: 100px;
}

div#links {
max-width: 50px;
}


This ensures that your pages stay slim, and fit in typical handheld windows. You may also want to hide portions of your page that aren't needed. For example, if that fancy logo and footer just aren't really needed on wireless devices, use display:none; see Listing 12 for a simple example.


Listing 12. Hiding non-essential elements




body {
max-width: 200px;
}

div#content {
max-width: 100px;
}

div#links {
max-width: 50px;
}

#menu {
display: none;
}

#footer {
display: none;
}



Consider using similar rules to shrink down banner images (remember, you're removing any other non-essential images), hiding extraneous text, using text-only images, and anything else you can think of to create small, handheld-friendly displays.

The classic div problem

The classic div problem is worth knowing about if you ever need to convert a highly dynamic site to wireless-capable views. To start, take a look at Listing 13, which shows a typical div-based XHTML page. It's made up of several basic sections:


Listing 13. A typical div-based XHTML page




"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">



Cyber-Autos, Inc.










Welcome to Cyber-Autos!







]]>


For the screen, you might float the sidebar over to the right (in fact, that's a very typical approach), meaning that the main body content appears on the left. In other words, CSS is used to position the divs on the screen, rather than their position within the actual XHTML file. That's problematic on a handheld, however, because you're not going to be able to use absolute positioning and float -- at least, not if you want to support more than the latest handheld devices.

The typical handheld device reads your XHTML from top to bottom (no surprise here, right?) but absolute and relative positioning, as well as floating divs, are dicey at best on handheld devices. So no matter what you have in your CSS, the handheld would read a page like Listing 13, and show first the header, then the sidebar, and finally the main section. To avoid this problem you may have to make changes to the structure of your XHTML. Even though you shouldn't code presentation into your XHTML, you occasionally may have to make changes to that structure that have an effect on presentation (it's a subtle difference, but a difference nonetheless).

If you looked at the div-based page shown in Listing 13 on a handheld, you'd see an image at the top (which is almost certainly unnecessary on a wireless device), then the menu and further information links, and then -- finally -- the main page content. To get around this, first consider completely hiding the header (using display: none). After you've removed the image (which really has no bearing on a handheld) you can insert text instead, or just count on the page title to do the job. Next, you might want to hide the entire sidebar section. Alternatively, you could move that div below the main content, which is where your structure does have some bearing on your content. Because wireless devices -- or devices that don't support CSS in full -- read the page in order, you should try to position important content as high on the page as possible, so it's seen first.

As a corollary, items that are temporary (like a special deal) or less important (advertisements for a sister company or division that sells tires, for example) should be placed lower on the page. They'll be below the visible screen on most handheld devices, but you can use CSS to move them nearer the top of the page -- or to different columns -- on CSS-capable viewers.



Back to top


In conclusion

Obviously, there are as many ways to handle the demands of wireless devices as there are actual devices! In many cases, you will actually be able to tailor your approach to serving wireless content to the types of phones or handhelds you're targeting. For example, if you know that you're only serving content to internal employees, and they're all carrying Blackberry or Treo devices, you may choose to get a little fancier, or just allow the devices to download an XHTML mobile application (something that's beyond the scope of this article, but referenced in the Resources section). If you're serving content to every possible phone and device, however, your solution will obviously have to be more general.

The ideas in this article are best suited to existing Web pages that need to support -- at least to the degree possible -- wireless devices with minimal changes to the pages. You can do a lot more by designing wireless sites or apps from scratch, or by creating complicated Website Meta Language (WML) or VoiceXML applications specifically for phones. The technique I've demonstrated here is for situations where you don't have the time and resources for such solutions, or where the handheld isn't the company's primary target. In these cases you can get by with just a little CSS and some well-planned page layout.



Back to top


Resources

Learn

Get products and technologies

Discuss


Back to top


About the author

Photo of Brett McLaughlin

Brett McLaughlin has worked in computers since the Logo days. (Remember the little triangle?) In recent years, he's become one of the most well-known authors and programmers in the Java technology and XML communities. He's worked for Nextel Communications, implementing complex enterprise systems; at Lutris Technologies, actually writing application servers; and most recently at O'Reilly Media, Inc., where he continues to write and edit books that matter. His most recent book, Java 5.0 Tiger: A Developer's Notebook, is the first book available on the newest version of Java technology, and his classic Java and XML remains one of the definitive works on using XML technologies in the Java language.



source:http://www-128.ibm.com/developerworks/wireless/library/wi-css/?ca=dgr-lnxw01WirelessPages


Bill Gates, Time Magazine "Person of the Year"

"Bill Gates and his wife, Melinda, were named Time Magazine "Persons of the Year". He was joined in this honor with Irish rocker Bono-all being named for being "Good Samaritans" who made a difference."

source:http://slashdot.org/article.pl?sid=05/12/18/1415241&tid=109

Polar Bears Drowning As Globe Warms

"The Times Online is reporting on disturbing findings from the arctic. Polar bears appear to be drowning when they attempt long sea crossings as a result of receding summer ice." From the article: "New evidence from field researchers working for the World Wildlife Fund in Yakutia, on the northeast coast of Russia, has also shown the region's first evidence of cannibalism among bears competing for food supplies ... As the ice pack retreats north in the summer between June and October, the bears must travel between ice floes to continue hunting in areas such as the shallow water of the continental shelf off the Alaskan coast -- one of the most food-rich areas in the Arctic. However, last summer the ice cap receded about 200 miles further north than the average of two decades ago, forcing the bears to undertake far longer voyages between floes. "

source:http://science.slashdot.org/article.pl?sid=05/12/18/079222&tid=14

NANO-ARMOR:PROTECTING THE SOLDIERS OF TOMORROW

An Israeli company has recently tested one of the most shock-resistant materials known to man. Five times stronger than steel and at least twice as strong as any impact-resistant material currently in use as protective gear, the new nano-based material is on its way to becoming the armor of the future.


Illustration photo - medieval armor.
The discovery of the extraordinary wave-shock absorption quality of the IF materials, position it as one of the best candidates for future protective gear and armor.

A year ago IsraCast reported on the development of the first commercial nano-based lubricant which was developed by the Israeli company ApNano materials. A year later we find ApNano working also on a wholly different application of their technology - shielding and protection. In recent research lead by Prof. Yan Qiu Zhu of the School of Mechanical, Materials and Manufacturing Engineering at the University of Nottingham, England, a sample of the ApNano material was subjected to severe shocks generated by a steel projectile traveling at velocities of up to 1.5 km/second. The material withstood the shock pressures generated by the impacts of up to 250 tons per square centimeter. This is approximately equivalent to dropping four diesel locomotives onto an area the size of one’s fingernail. During the test the material proved to be so strong that after the impact the samples remained essentially identical compared to the original material. Additionally, a recent study by Prof. J. M. Martin from Ecole Centrale de Lyon in France tested the new material under isostatic pressure and found it to be stable up to at least 350 tons/cm2.

In the line of fire - creating super shock-resistant materials


Some of the equipment that's being used to produce the Inorganic Fullerene materials at ApNano's laboratories in Nes Ziona, Israel.

In order to understand how it is possible to create this ultra-strong shock absorbing material we first need to understand the nature of the nano material developed by ApNano. In the early 1990's the Nano-materials Synthesis Group in the Weizmann institute headed by Professor Reshef Tenne, ApNano Chief Scientific Advisor, and recent winner of the Materials Research Society medal, together with Dr. Menachem Genut, currently the President and CEO of ApNano Materials, Prof. Gary Hodes and Dr. Lev Margulis, discovered a new class of inorganic nanostructures. The group had found that certain inorganic compounds such as WS2, MoS2, TiS2 and NbS2 that normally occur as large flat platelets can be synthesized into much smaller nano-spheres and nano-tubes which they named inorganic fullerene-like nanostructures or IF for short. Fullerenes are a new form of carbon, other forms being diamond, graphite and coal. They are molecules composed entirely of carbon, taking the form of a hollow sphere, ellipsoid, or tube. Spherical fullerenes are sometimes called buckyballs, while cylindrical fullerenes are called buckytubes or nanotubes. Buckyballs are named after R. Buckminster Fuller, architect of the geodesic dome that he designed for the 1967 Montreal World Exhibition. IF materials are Fullerene-like materials but instead of being composed out of carbon they can be created from various other inorganic elements.


The "Onion like" nano-structure of the IF materials, is the result of a sophisticated manipulation on the original layered material. This unique structure is responsible for its remarkable strength and durability.

The new IF material produced by the Weizmann Group was made of Tungsten Disulfide (WS2). In contrast to organic Fullerenes, IF is easier and much less expensive to produce, it is chemically stable and is less reactive and consequently less flammable. Organic Fullerenes are also considered to be highly toxic while IF materials have been tested extensively and deemed safe. Tungsten Disulfide is relatively heavy and for that reason ApNano is currently experimenting with other materials such as Titanium Disulfide which is at least four times lighter and is expected to perform even better than Tungsten Disulfide against shock waves. One of the most interesting new IF properties discovered by ApNano is its extremely high degree of shock absorbing ability. Shock absorbing materials are commonly used in impact resistant applications such as ballistic protection personal body armor, bullet proof vests, vehicle armor, shields, helmets, and protective enclosures. The new Tungsten based IF material has up to twice the strength of the best impact resistant materials currently used in protective armor applications such as boron carbide and silicon carbide, and are over 5 times stronger than steel. It is also possible to combine IF with other substances in order to expand their range of capabilities. For instance, mixing IF with highly elastic materials can lead to new compounds which are both flexible and shock-absorbing. These properties position IF materials as one of the best candidates for future protective gear and armor.


Dr. Menachem Genut – ApNano's President and CEO, co-discoverer of the inorganic fullerenes.

Currently ApNano can manufacture only a few kilograms of the new material a day at their lab in Nes Ziona. In an interview by IsraCast, Dr. Menachem Genut, ApNano CEO, explained that the company is moving into semi-industrial manufacturing within the next six months producing between 100-200 kilograms of the material per day, gradually moving to full-scale industrial production by 2007, creating several tons each day. Although it is currently still hard to determine the exact price of the "nano-armor" when in full industrial production, given the cost of the original materials (Tungsten Disulfide, Titanium Disulfide, etc.) and the relatively low production costs, Dr. Genut stated that a kilogram of the new material will cost considerably less than a similar amount of the carbon-based Fullerenes. More field testing will need to be carried out before the nano-armor can be declared commercial but the company is optimistic that with some external financial backing it will be possible to have the first product ready in less then three years.



source:http://www.isracast.com/tech_news/091205_tech.htm


The next wave

ndia's IT and remote-service industries just keep on growing


ASKED for a sound-check at a function in Delhi this month, Bill Gates eschewed the “1,2,3...” favoured by ordinary mortals. “One billion, 2 billion...,” he counted. They think big, these IT moguls, and especially, these days, in India.

Microsoft later announced plans to invest $1.7 billion in India over the next four years, about half of it in adding to its existing research and development (R&D) and technical-support operations. “The only thing that limits us in India,” Mr Gates told the local press, “is the speed at which we can recruit.” A few days earlier, Intel, a giant chipmaker, had unveiled plans to invest more than $1 billion over five years, much of it in expanding its R&D centre in Bangalore. In October Cisco Systems, the world's largest maker of the routers and switches that direct internet traffic, announced its own plans to invest $1.1 billion in India.

The euphoria is confined neither to American multinationals, nor to information technology. It also encompasses India's own IT industries, and the expanding range of other back-office services that can now be performed remotely. The three biggest Indian IT-services firms—Tata Consultancy Services (TCS), Infosys and Wipro—are each recruiting more than 1,000 people a month. And to take just one example of the other services now moving to India, J.P. Morgan Chase, a big investment bank, this month revealed it is to double, to about 9,000, its staff there. Anyone who assumes J.P. Morgan will simply be doing low-level “back office” tasks in the country—a bit of data entry and paper-shuffling—would be flat wrong. One task for the new recruits is to settle complex structured-finance and derivative deals, what one insider calls “some of the most sophisticated transactions in the world”.

All these investments illustrate that a third stage of the great Indian services-export boom is well underway. In the first, firms such as TCS developed world-class expertise in software “application development and maintenance”, and their low-cost developers became the preferred partners of many Western IT firms. In the second, Indian firms and the local “captive” operations of multinationals started offering low-end back-office services that could take place a continent away—telephone call-centres, transcribing medical records, processing insurance claims and so on. In the third, in both IT and the broader spectrum of other “business processes”, ever-more sophisticated functions are happening in India.

So strong are the forces driving this shift that what seemed improbably rosy projections by NASSCOM, the Indian software- and service-industry lobby, and McKinsey, a consultancy, back in 1999, are coming true. This week NASSCOM and McKinsey produced the second full-scale update of their study. It argues that exports from India's IT industry and from “Business Process Offshoring” (BPO)—both from services “outsourced” to Indian firms and those performed by captives—are on track to reach $60 billion a year by 2010.

That would be a huge surge from the $17.2 billion in the year ending in March 2005. But it implies a compounded annual growth rate of 28%—below that achieved in recent years. Moreover, according to McKinsey's estimates, it requires India merely to maintain its present shares of the markets for offshore IT services (65%) and BPO (46%). This is because the study predicts a massive rise in the size of the overall market, estimated at present to make up just one-tenth of those services that could be sent offshore. The proportion is expected to rise as demography—a western labour shortage—becomes more pressing than protectionism.

In IT the growth in Indian exports is expected to come both from the software market, and from “traditional IT outsourcing”—such as the remote management of whole systems, a market now dominated by the big global IT consultancies. This is expected to rise from 8% of Indian sales now to about 30% in 2010, while software-development's share will fall from 55% to 39%. In business-process-offshoring, the big industries will remain banking and insurance. But rapid expansion is also expected in other areas, like legal services.

The law, in fact, illustrates how vast is the untapped potential market. About $250 billion is spent on legal services world-wide, about two-thirds of it in America, and as yet only a tiny proportion goes offshore. Forrester, a research outfit, has estimated that, by last year, 12,000 legal jobs had moved offshore, and forecast that this will increase to 35,000 by 2010. India, with its English-language skills and common-law tradition is well-placed to secure a big share of the business. It is not just a question of “paralegal” hack work such as document-preparation. Sanjay Kamlani, of Pangea3, a small Indian firm, calls it “real lawyering”—drafting contracts and patent applications, research and negotiation. His clients are both big law firms and in-house legal teams.

India's fundamental attraction has not changed since it first drew software developers: fantastic cost savings. With American lawyers costing $300 an hour or more, Indian firms can cut bills by 75%. Across the board, despite climbing rates of pay in IT and BPO, where rapid expansion has brought frantic job-hopping, India remains, say NASSCOM and McKinsey, the lowest-cost of all the main outsourcing destinations. It also has, among these countries, by far, the largest pool of employable people—those with the necessary language and technical skills. On this measure, India, which produces 2.5m graduates a year, 250,000 of whom are engineers, has 28% of the global available workforce, compared with 11% in China.

Yet the supply of talent may be the biggest constraint on the Indian industry's growth. On these latest projections, the number of people working in IT and business-process exports in India will increase from about 700,000 now to 2.3m by 2010. But on today's estimates only 1.05m suitably qualified people will graduate from college between now and then, so there will be a shortfall of nearly 500,000, with business-processing the worst affected. McKinsey's Jayant Sinha believes the education system can be fixed in time to plug the gap. A bigger worry, he says, is India's creaking urban infrastructure. IT firms in Bangalore, for example, are in revolt against the local government for its neglect of basic amenities. Yet India's IT and business-process industries will need about 14m square metres (150m square feet) of office space by 2010: “a new Manhattan”.

Hectic building is under way, and not just in the big IT and business-processing centres (Bangalore, Mumbai and around Delhi) or the “second tier” of cities such as Pune, Hyderabad and Chennai (Madras). The industry's worry over infrastructure, as over education, is that it cannot do everything by itself. Having thrived by keeping government at arm's length, business now needs help.

Why Do Computer Games Claim Lives?

An article from Chosun, a Korean newspaper, asking the question why do videogames claim lives? The article is in response to some recent high profile gamer deaths. From the article: "Apparently rare overseas, such cases make frequent headlines in Korea. Why? Experts point to the poor environment of the 'PC bang' or Internet cafes that have mushroomed nationwide. Generally dark and poorly ventilated, they cater to gamers who tend to smoke heavily. The bad air and light can increase the danger of sudden death, experts warn."

source:http://games.slashdot.org/article.pl?sid=05/12/17/2130220&tid=10

Cell Phone CEOs Marked For Phone Cloningn

"When Sarah Drummond got back from Israel, she found a cell phone bill for more than $12,000. She contacted her cell phone provider to let them know that someone had stolen her phone, but they weren't interested in helping her and told her she'd have to pay. In preparing for small claims court, she and her partner found out that not only does her company have the ability to spot unusual activity on a cell phone account, the company executives' own phones have been targeted by a group linked to Hezbollah. From the article: 'They were using actually a pretty brilliant psychology. Nobody wants to cut off [CEO] Ted Rogers' phone or any people that are directly under Ted Rogers, so they took their scanners to our building, like our north building, where our senior top, top, top executives are. They took their scanners there and also to Yorkville, where there are a lot of high rollers and like it would be a major PR blunder to shoot first and ask questions later. . . . Nobody wants to shut off Ted. Even if he is calling Iran, Syria, Lebanon, and Kuwait.'"

source:http://it.slashdot.org/article.pl?sid=05/12/17/1729245&tid=172&tid=215

This page is powered by Blogger. Isn't yours?