Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on...

27
Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization, language

Transcript of Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on...

Page 1: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Creating User Interfaces

[Catch up presentations]. Language. Localization.

Homework: Work on teaching projects. Post comments on

source for localization, language

Page 2: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Localization

• Create web site for use in several specific 'local' places.

• Create multiple web sites, each for use in specific place.– in an efficient, effective manner so any underlying

common content does not need to be duplicated (and commonality diluted).

• Develop tools (networking s/w, standards, etc.) that promote Web as "global, interoperable tool of communication"– www.w3c.org

Page 3: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

International / Global / ?

• So-called localization more than just language– Alphabets– Idiom

• Other issues– Dates– Layout (flow on page)– money– Cultural issues ??– More?

Page 4: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Class exercise What is the word in that language for

– Spanish• Latin America, Spain, USA, …

– Portuguese– Chinese (Mandarin? Hainese?)– Korean– Japanese– Hebrew– Russian– French– Arabic (Classical, today)

What is the direction of text? What is the format for dates? Time? Money? Relevant cultural issues?

Page 5: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

ExampleThere can be differences:

•Aymara example concerning time

•Spanish double negative– Double positive?

Page 6: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Globalization techniques(globalisation)

•Separate content from formatting and programming (behavior)

– Content: separate text

•checklists

Page 7: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Bits and bytes

• How many different patterns can be held in a bit string– 4 bits long– 7– 8– 16

Page 8: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Character code

• Note: European languages plus several other 'small' alphabets easily handled.

• We/I (typical monolingual American) can't hardly appreciate the challenge:– two Chinese (kanji) character sets: modern

(China) and traditional (Taiwan + most of the Chinese diaspora)

– 'ruby': symbols 'over' ideographs

Page 9: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

http://www.cs.tut.fi/~jkorpela/chars.html#code

character repertoire: A set of distinct characters.

character code: A mapping, often presented in tabular form, which defines a one-to-one correspondence between characters in a character repertoire and a set of nonnegative integers.

Page 10: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Characters, more

character encoding: A method (algorithm) for presenting characters in digital form by mapping sequences of code numbers of characters into sequences of octets. In the simplest case, each character is mapped to an integer in the range 0 - 255 according to a character code and these are used as such as octets. Naturally, this only works for character repertoires with at most 256 characters. For larger sets, more complicated encodings are needed. Encodings have names, which can be registered.

Page 11: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

charset

Using the terms just defined, the charset attribute in an HTML meta tag means encoding

<meta http-equiv="Content-Type" content= "text/html;charset=utf-8" />

<meta http-equiv="Content-Type" content= "text/html;charset=ISO-8859-1" />

Page 12: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Language

• Attribute of html tag

<html lang="en-us">

MAY be used by browsers (spell-check, hyphenation, speech synthesizers), search engines, other tools.

See two-letter codes:

http://www.w3c.org/WAI/ER/IG/ert/iso639.htm

Page 13: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

… more• A glyph is a presentation of a particular shape

which a character may have when rendered or displayed. – speak of same glyph in italic, bold, etc.

• A repertoire of glyphs comprises a font. In a more technical sense, as the implementation of a font, a font is a numbered set of glyphs. The numbers correspond to code positions of the characters (presented by the glyphs). Thus, a font in that sense is character code dependent. An expression like "Unicode font" refers to such issues and does not imply that the font contains glyphs for all Unicode characters.

Page 14: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Examples

• ASCII is a character repertoire, code and encoding. Note: confusion about 7 vs 8 bit ASCII

• ISO Latin 1 alias ISO 8859-1 standard defines a repertoire, code and encoding of which ASCII is a subset. ISO 8859 is a family of many encodings, indicated by the –n. ISO 8859-5 handles Cyrillic.

Page 15: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Unicode

… provides a unique number for every character, no matter what the platform, no matter what the program, no matter what the language. This is the goal.

Page 16: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Unicode, continued

The Unicode Standard has been adopted by such industry leaders as Apple, HP, IBM, JustSystem, Microsoft, Oracle, SAP, Sun, Sybase, Unisys and many others. Unicode is required by modern standards such as XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML, etc., and is the official way to implement ISO/IEC 10646.

It is supported in many operating systems, all modern browsers, and many other products. The emergence of the Unicode Standard, and the availability of tools supporting it, are among the most significant recent global software technology trends.

Page 17: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Note

• Unicode goal is universal coverage…

• Unicode is product of a consortium of 'mostly US companies'.

• Some controversy in its treatment of things– Combining certain kanji characters

Page 18: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Unicode consortium

• Go to http://www.unicode.org/unicode/standard/WhatIsUnicode.html

• Examine the Translations on the left. See what language characters do not appear on your computer. – Select one and– Go to Display Problems and see if you can fix it.

Page 19: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Techniques• One web site / screen provide options to go to

different pages– use symbols/icons that are meaningful to

audience• tricky. Flags may not be appropriate.

– use images containing text in the specific language

– risky choice: hope that computer/platform/browser has character encoding and font to display language

– poor choice: use English word for other language and/or require English

– Other?

Page 20: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Class Exercise

Go to these sites to see what they do?

– http://www.lionbridge.com/

– http://wikipedia.org

– http://cnn.com

– http://google.com

– Pick one (a site that would claim to have a global appeal)

Page 21: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Refrain: Accessibility

• Many organizations (including SUNY) require websites, other applications to be accessible to people with disabilities.

• There also can be situational blindness, other situations, in which attention/awareness helps a wider set of people.

• Note: complex situation example: ramps for wheelchairs versus curbs for the blind. Can you come up with a computer interface example?

• How to make websites be accessible for differently-abled in different places/languages?

Page 22: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Special requirements

• How to help visually impaired people understand mathematics?

• One approach (Murphy, et al, at Dublin City University): use a mixture of non-speech (e.g., rising and falling tones), modified speech, and binaural spatialization: http://www.usablenet.com/

• http://mcg.computing.dcu.ie/amexamples

Page 23: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Discussion

• What would be other approachs?

• How would these types of techniques apply to something else?

Page 24: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Something to explore

• Speech synthesis (Text to speech) and

• Speech recognition

I have not studied this:

http://zenorocha.github.io/voice-elements/?utm_source=html5weekly&utm_medium=email

Page 25: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Segue to privacy

• European countries (may be European Union) have stricter rules about privacy, such as maintaining data on people

Page 26: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Business model• … for many products involves using information

for marketing• For Facebook, Google, etc. "we are not the

consumer; we are the product."– My source: Jeffrey Rosen,

http://www.nytimes.com/2012/12/02/magazine/who-do-online-advertisers-think-you-are.html?pagewanted=all

– Alternate: if you aren't paying for it, you are the product.

– What is your reaction?

Page 27: Creating User Interfaces [Catch up presentations]. Language. Localization. Homework: Work on teaching projects. Post comments on source for localization,

Homework

• Find unique source on (one of)– techniques & checklists for localization/globalization– Unicode,– interactions with geolocation, – exact purpose for lang attribute, other html, similar

things in meta tags – privacy issue (especially differences in different places)– Speech reco / speech synthesis package

• Write summary of what the site is/does; your assessment, and include working link.

• Keep working on teaching project