Title: Porting and Gardening VisualWorks Applications to 5i
1Georg Heeg eKBaroper Str. 33744227
DortmundGermany Tel 49-231-97599-0 Fax
49-231-97599-20
Georg Heeg eK Mühlenstr. 1906366
KöthenGermany Tel 49-3496-214 328 Fax
49-3496-214 712
Georg Heeg AGSeestraße 1358027
ZürichSwitzerland Tel 41(848) 43 34 24
Email georg_at_heeg.de http//www.heeg.de
2Georg Heeg Karsten Kusche Flexible
Technologies to Visualize and Transform
Terminological Representations Köthen, June
17th, 2005
3What is the Issue?
- You heard a lot of transfer problems in many
presentation today - I can hear these problems much more often then
you from Uta Seewald-Heeg - Uta Seewald-Heegs solution
- Ask Georg
4About Georg Heeg eK
- Founded 1987, headquarter in Dortmund,since
1996 in Zurich, since 1999 in Koethen (Anhalt) - Consulting- and training company for Smalltalk
- Hotline support, maintenance, bug-fixes for
ObjestStudio, VisualWorks and Visual Smalltalk - Technology-partner of
Corporate Mission Make Sophisticated Projectsa
Success for the Customer!
5About Georg Heeg eK
New Corporate Mission Make simple things easy!
6We have a powerful tool
- In 1983 I learned about Smalltalk
- What is the core about Smalltalk?
- Modeling instead of Programming
7Modeling instead of Programming
- Who is Responsible?
- Oriented to Concepts of the Application Domain
- Concepts are mapped directly into Software
8Modeling in the Good Old Days
Patient
Form
11
Dentist
Phenoma
model
File
Person
9Traditional Computer Modeling
States
Data structures
Processes
Procedures
link
Phenoma
model
runningprogram
Person
10Object Oriented Modeling
Concept
Class
11
Viewpoint ofthe Domain
Recognize, Define
Instance
Phenomon
model
Object
The World
11What is this?
- Wooden body in the form of a cylinder with
approx. 20 cm (8 inch) height and 6 mm (1/4
inch) in diameter. - In the center of the cylinder are a drilling of 1
mm and this are filled with pressed graphite. - At end end the cylinder is conically tapered.
- The graphite can be transferred to other bodies
by rubbing.
12What is this?
- Plastic tube in the form of a cylinder with
approx. 20 cm (8 inch) height and 6 mm (1/4 inch)
in diameter. - Inside is another plastic tube with 2 mm (1/12
inch) in diameter and at the top there is a metal
ball. - The inner tube is filled with a viscous liquid.
- The liquid can be transferred to other media with
the help of the ball.
13What Does Little John Care About?
14What Does Little John Care About?
DRAW
15Objects and Data
- Objects care about the services they provide
- Data is encapsulated inside and not a property
visible from the outside - Does this mean that todays topic is irrelevant?
16Transfer Problems
- Syntactic file format does not match
- TSV (Excel) vs. XML vs. Text File
- File structure does not match
- Excel columns do not match
- DTD is different
- TML is different
- File contents does not match
- Import allows only language tuples
- Import does not allow duplicates
17SSS-TTT Three Tier Transfer
- Syntactic tier maps keys to value
- Keys can be columns number, column headers or XML
entity labels - Structural tier maps logical attributes to to
(multiple) keyed values - Semantic tier maps logical attribute values
(strings) to meaningful objects
18Predefined Classes in Smalltalk
- For the syntactic tier
- XML Parser/Generator
- CSV Reader/Writer
- COM Connect
- .NET Connect
- As
- Everything in source
- Everything subclassable
- Everything changeable
- Adapt whenever needed
19Structural and Semantic Tiers
- Can be very easily programmed
- Provided linguistic theory is available
- I did not study it
- I am sure you who have this
20Immediate Feedback
- Agile Programming
- Make it work half way
- Try it out
- Make it work a little bit more
- Try it out
- Make it work
- Make it right
- Refactoring I
- Make it fast (if needed)
- Refactoring II
21Objects and Database
- Databases are about relational Algebra
- Finite sets and their cross products
- Must always be interpreted (what is 061705 vs.
611705 vs. 06366 vs. 6366?) - Objects are about services they provide
- Objects can easily represent any linguistic
theory - Only Smalltalk provide full object features
22Smalltalk Products
- Cincom Smalltalk
- Client and server platform
- GemStone
- Up to 1.099.511.627.775 objects
- Multi user
- Transactions
- High speed
- Persistence
23Microsoft Glossaries
- http//www.lai.com/microsft.html
- ftp//ftp.microsoft.com/developr/msdn/newup/glossa
ry - 24 Languages
- 5.8GB in .csv Files
- Many too big to open them in Excel
24Importing Microsoft Glossaries
- Problems
- Different number of columns
- Table headers sometimes missing
- Filename convention does vary
- Some language codes in 3, others in 2 characters
- Language codes for very uncommon languages
25Problems and Solutions
26After Reading
- You have a collection of objects
- Describe the contents of the files
- Can be sorted, filtered, matched,
- Can be exported to any desired format
- Can be used in VisualWorks tools
- L10N
- WebTCM
27L10n localizes Applications
28WebTCM localizes HTML-Pages
- Independence of language and culture
- Culture as personalization
- Every culture in every language
29(No Transcript)
30L10N Terminology Structure
- Key
- Translation
- Catalog
- Language Specification (de_DE)
- Version (Translator, Date)
31TMX Export for L10N
- Problem
- Storing catalog, key and version
- Solution
- Storing this into property tags
32TBX Export for L10N
- Problem
- Storing catalog, key and version
- Solution
- Storing key in ID-Tag
- Storing catalog name in Descrip-Tag
33Conclusion
- Cincom Smalltalk and GemStone serves as an ideal
tool - Create ad-hoc transformations
- Create and modify Language Software
- Try out new ideas
- Observe during execution in nice GUI
- Modeling instead of Programming
- Every Software entity is understandable