SlideShare a Scribd company logo
Smalltalk Summer School 2004




  Smalltalk on a CE device
                  Experience Report




   Matthias Schnoor + Marten Feldtmann
   m.schnoor@t-online.de     marten@schrievkrom.de
Content
                                 Smalltalk on a CE device



●   Project „Collect working hours at the building sites“
●   Topics
     –   Manager wishes
     –   Available knowledge
     –   Project description
     –   Cebit fair: Hardware and Software
     –   IDE candidates
     –   License questions and consequences
     –   Hardware evaluation
     –   Development and problems
●   Summary
     –   Video clips (Examples: Standard, Pollock, Application, Squeak)
     –   Caution: Beta State
Us
                                 Smalltalk on a CE device



●   Experiences
     –   Smalltalk experiences for some years using mainly VAST
     –   C# and .NET
     –   RDBMS and OODBMS
●   Development
     –   Document Management Software „Schrievkrom“ (VAST) (www.schrievkrom.de)
     –   Election Prejection presentation software for the first german TV channel
         „ARD“ with company „infratest-dimap“ (C#) (www.dimap.de)
●   Administration + Development
     –   Butzkies Stahlbau GmbH, Krempe (www.butzkes.de)
Wishes and Knowledge
                                  Smalltalk on a CE device



●   Manager wishes
     –   One day: wish to collect number of working hours at building sites and
         send them very soon to our company and reduce the time to manage
         these numbers here: „Look here at my PDA and my handy“
     –   Perhaps some spreadsheets with Pocket Excel and macros .... ?
           ●   Pocket Excel has no macros ....
     –   Perhaps use already available devices
     –   Embedded Visual Basic .... ? Should be portable ... ?! After all it's Windows !
     –   No real wish for Smalltalk (no mainstream, too few developers)
●   Environment
     –   Managers in company had newest PDA and handies (bought by company)
     –   No real wish to do software development inhouse ... it's not productive ..
●   Developing
     –   No PDA or Windows CE developing experience, but went to CeBit to look for
         devices ..
Project Description
                                Smalltalk on a CE device



Internet-Server (FTP)
A: Auftragsdaten (ASCII)                                     WinCE-Client
P: Personaldaten (ASCII)




                               SMTP-Relay
                                (T-Online)                  Email- (SMTP/ POP)
                                                                   Server
                                                                  (Extern)       External

                                                                                 Inhouse



                                                              POP-Account




  ASCII File Exchange         Control Program




                                                           Datenbank

   HER- Zeitsystem
Project Description
                                 Smalltalk on a CE device



●   Using PUM (Poor Users Modeller) as a code generator
     –   Writing the PUM VisualWorks runtime during this project
     –   Writing the PUM VisualAge/VisualWorks ENVY runtime during this project
     –   Learning how to generate source code for VW
Hardware
                                   Smalltalk on a CE device



●   CeBit fair Hannover 2004: dBook1 (www.demolux.de)
     –   Windows CE .NET 4.2
     –   StrongArm 1110 206 Mhz, 128 MB RAM, Keyboard, full VGA
     –   Integrated GPRS module
     –   Partial protection against water, dust ....
     –   Price € 900 - € 1400
Hardware
                                   Smalltalk on a CE device



●   CeBit fair Hannover 2004: skeye.integral
     –   Windows CE .NET 4.2
     –   StrongArm 206 Mhz, 64 MB RAM
     –   ¼ VGA
     –   Full protection against water, dust ....
     –   Price around € 1900 (plus ...)
IDE's
                                      Smalltalk on a CE device



●   We wanted a Smalltalk project – but we know the bad reputation of
    Smalltalk in the minds of our managers
     –   VisualStudio 2003 Professional
          ●   .NET != CE .NET
          ●   Large, Larger, Largest ...
          ●   Emulators ...
     –   Java
          ●   Not so good reputation from third party developers
          ●   No SWT support
     –   Squeak
          ●   No solution out of the box – but possible candidate
     –   VisualWorks
          ●   CeBit fair 2004 visit
          ●   Deployment of an image, development on a PC
VisualWorks and it's license
                                     Smalltalk on a CE device



●   Project calculation
     –   Fixed prices with VAR license
●   Cincom refuses VAR licenses for project -> inhouse developement
     –   Much higher price now each year to pay – not acceptable by management
●   We changed the complete development process
     –   I founded a small company (one person company)
     –   I got the VAR license ...
●   Summary
     –   Cincom license too complicated for smaller software projects
Hardware Evaluation
                                  Smalltalk on a CE device



●   Skeye integral
     –   Socket stuff did not work – due to false secondary exception handling
           ●   New CE parcels fixed this problems
●   dbook1
     –   Did not start at all
           ●   New special virtual machine needed – due to special machine instruction
               handling on this machine
●   Very good support during project from company „Georg Heeg“
●   Management wanted dBook1
●   Additional Hardware for testing
     –   Aldi Medion (XScale 400, 64 MB)
     –   IPAQ 2210 (XScale 400, 64 MB)
Summary
                                 Smalltalk on a CE device



●   Concept in general works ...
     –   Develop on the PC, deploy image on the PDA
●   BUT: Problems due to heterogenous Windows CE market
     –   Unsure if application runs under the most selling consumer PDA's
     –   Expect improvements in the next one or two years
     –   Need for support for cheap consumer devices, not only high end devices
     –   Product still needs more time or man power to become less complicated
     –   Native DLL usage also heterogenous (DLL's missing)
●   Memory and speed is again a problem for Smalltalk
     –   Image size
Summary
                                   Smalltalk on a CE device



●   VisualWorks GUI too slow
     –   Using the normal VW GUI development process leads to very slow, not
         acceptable applications.
     –   Pollock is NOT a solution to this problem – even worse
     –   PDA with special graphic accelerators reduces this problem
     –   Consider the in general simple non standard GUI applications on a PDA !
     –   We need a „light“ widget set !!!!!
●   Smalltalk IS fast enough for a PDA
     –   See Squeak demo (Small Memory footprint)
           ●   Faure (http://russell-allen.com/squeak/faure/)
           ●   DynaPad (http://dynapad.swiki.net/1) (10/2003)
●   Wish for more specific PDA support
     –   More documentation and much more integration of the CE system
     –   One still needs additional developer information: PocketPC embedded
         VisualBasic books or VisualStudio Professional 2003
Clips
                                Smalltalk on a CE device



●   Speed feeling
     –   Drop-down list under VW 7.2.1 (Standard) under IPAQ 2210
     –   Drop-down list under VW 7.2.1 (Pollock) under IPAQ 2210
     –   Application under ipaq 2210
     –   Application under dbook1
     –   Squeak GUI
●   PDA environment
     –   DynaPad

More Related Content

What's hot

Raju_Biswas_Resume
Raju_Biswas_ResumeRaju_Biswas_Resume
Raju_Biswas_Resume
Raju Biswas
 
Leland Hamilton120320
Leland Hamilton120320Leland Hamilton120320
Leland Hamilton120320
lelandhamilton
 
Kahuna Systems : Product Engineering Services
Kahuna Systems : Product Engineering ServicesKahuna Systems : Product Engineering Services
Kahuna Systems : Product Engineering Services
kahunasystems
 
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature 'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
Qualcomm Developer Network
 
ARM
ARMARM
VenutoResume
VenutoResumeVenutoResume
VenutoResume
Tony Venuto
 
Assembler & z/OS Internals Syllabus
Assembler & z/OS Internals SyllabusAssembler & z/OS Internals Syllabus
Assembler & z/OS Internals Syllabus
Deru Sudibyo
 
Ball Systems Capabilities
Ball Systems CapabilitiesBall Systems Capabilities
Ball Systems Capabilities
amhoff
 
Managing Remote Teams
Managing Remote TeamsManaging Remote Teams
Managing Remote Teams
Dell World
 
Embedded services by Faststream Technologies
Embedded services by Faststream TechnologiesEmbedded services by Faststream Technologies
Embedded services by Faststream Technologies
Hari Narayana
 
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinACDMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
DMC, Inc.
 

What's hot (11)

Raju_Biswas_Resume
Raju_Biswas_ResumeRaju_Biswas_Resume
Raju_Biswas_Resume
 
Leland Hamilton120320
Leland Hamilton120320Leland Hamilton120320
Leland Hamilton120320
 
Kahuna Systems : Product Engineering Services
Kahuna Systems : Product Engineering ServicesKahuna Systems : Product Engineering Services
Kahuna Systems : Product Engineering Services
 
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature 'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
'Hear' & Now: Software Integration for the Qualcomm Snapdragon Audio Feature
 
ARM
ARMARM
ARM
 
VenutoResume
VenutoResumeVenutoResume
VenutoResume
 
Assembler & z/OS Internals Syllabus
Assembler & z/OS Internals SyllabusAssembler & z/OS Internals Syllabus
Assembler & z/OS Internals Syllabus
 
Ball Systems Capabilities
Ball Systems CapabilitiesBall Systems Capabilities
Ball Systems Capabilities
 
Managing Remote Teams
Managing Remote TeamsManaging Remote Teams
Managing Remote Teams
 
Embedded services by Faststream Technologies
Embedded services by Faststream TechnologiesEmbedded services by Faststream Technologies
Embedded services by Faststream Technologies
 
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinACDMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
DMC Siemens Automation Summit 2014 Presentation: Extending S7 PLC Through WinAC
 

Similar to Smalltalk on a CE device

Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latest
Srikanth Pilli
 
Embedded Linux Systems Basics
Embedded Linux Systems BasicsEmbedded Linux Systems Basics
Embedded Linux Systems Basics
Max Henery
 
Bringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near YouBringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near You
Samsung Open Source Group
 
Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015
Richard Bronson
 
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Andreas Jakl
 
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
Ron Munitz
 
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Kieran Kunhya
 
Computing Without Computers - Oct08
Computing Without Computers - Oct08Computing Without Computers - Oct08
Computing Without Computers - Oct08
Ian Page
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
LINAGORA
 
Nassim_TLILI_resume
Nassim_TLILI_resumeNassim_TLILI_resume
Nassim_TLILI_resume
Nassim TLILI
 
Challenges In Managing Embedded Product Development
Challenges In Managing Embedded Product DevelopmentChallenges In Managing Embedded Product Development
Challenges In Managing Embedded Product Development
Atul Nene
 
Implementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfallsImplementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfalls
Kieran Kunhya
 
nokia and opensource n800
nokia and opensource n800nokia and opensource n800
nokia and opensource n800
winsopc
 
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
Igalia
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Enterprise Management Associates
 
FPGA workshop
FPGA workshopFPGA workshop
FPGA workshop
Alex Borisevich
 
Using IT Equipment in Live Broadcast
Using IT Equipment in Live BroadcastUsing IT Equipment in Live Broadcast
Using IT Equipment in Live Broadcast
Kieran Kunhya
 
Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...
Kieran Kunhya
 
Who Is This Guy?
Who Is This Guy?Who Is This Guy?
Who Is This Guy?
Chili.CHIPS
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company Presentation
DCC Labs
 

Similar to Smalltalk on a CE device (20)

Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latest
 
Embedded Linux Systems Basics
Embedded Linux Systems BasicsEmbedded Linux Systems Basics
Embedded Linux Systems Basics
 
Bringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near YouBringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near You
 
Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015
 
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
 
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
 
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
 
Computing Without Computers - Oct08
Computing Without Computers - Oct08Computing Without Computers - Oct08
Computing Without Computers - Oct08
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
 
Nassim_TLILI_resume
Nassim_TLILI_resumeNassim_TLILI_resume
Nassim_TLILI_resume
 
Challenges In Managing Embedded Product Development
Challenges In Managing Embedded Product DevelopmentChallenges In Managing Embedded Product Development
Challenges In Managing Embedded Product Development
 
Implementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfallsImplementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfalls
 
nokia and opensource n800
nokia and opensource n800nokia and opensource n800
nokia and opensource n800
 
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
A Browser for the Automotive: Introduction to WebKit for Wayland (Automotive ...
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
 
FPGA workshop
FPGA workshopFPGA workshop
FPGA workshop
 
Using IT Equipment in Live Broadcast
Using IT Equipment in Live BroadcastUsing IT Equipment in Live Broadcast
Using IT Equipment in Live Broadcast
 
Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...
 
Who Is This Guy?
Who Is This Guy?Who Is This Guy?
Who Is This Guy?
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company Presentation
 

More from ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
ESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
ESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

More from ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Recently uploaded

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 

Recently uploaded (20)

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 

Smalltalk on a CE device

  • 1. Smalltalk Summer School 2004 Smalltalk on a CE device Experience Report Matthias Schnoor + Marten Feldtmann m.schnoor@t-online.de marten@schrievkrom.de
  • 2. Content Smalltalk on a CE device ● Project „Collect working hours at the building sites“ ● Topics – Manager wishes – Available knowledge – Project description – Cebit fair: Hardware and Software – IDE candidates – License questions and consequences – Hardware evaluation – Development and problems ● Summary – Video clips (Examples: Standard, Pollock, Application, Squeak) – Caution: Beta State
  • 3. Us Smalltalk on a CE device ● Experiences – Smalltalk experiences for some years using mainly VAST – C# and .NET – RDBMS and OODBMS ● Development – Document Management Software „Schrievkrom“ (VAST) (www.schrievkrom.de) – Election Prejection presentation software for the first german TV channel „ARD“ with company „infratest-dimap“ (C#) (www.dimap.de) ● Administration + Development – Butzkies Stahlbau GmbH, Krempe (www.butzkes.de)
  • 4. Wishes and Knowledge Smalltalk on a CE device ● Manager wishes – One day: wish to collect number of working hours at building sites and send them very soon to our company and reduce the time to manage these numbers here: „Look here at my PDA and my handy“ – Perhaps some spreadsheets with Pocket Excel and macros .... ? ● Pocket Excel has no macros .... – Perhaps use already available devices – Embedded Visual Basic .... ? Should be portable ... ?! After all it's Windows ! – No real wish for Smalltalk (no mainstream, too few developers) ● Environment – Managers in company had newest PDA and handies (bought by company) – No real wish to do software development inhouse ... it's not productive .. ● Developing – No PDA or Windows CE developing experience, but went to CeBit to look for devices ..
  • 5. Project Description Smalltalk on a CE device Internet-Server (FTP) A: Auftragsdaten (ASCII) WinCE-Client P: Personaldaten (ASCII) SMTP-Relay (T-Online) Email- (SMTP/ POP) Server (Extern) External Inhouse POP-Account ASCII File Exchange Control Program Datenbank HER- Zeitsystem
  • 6. Project Description Smalltalk on a CE device ● Using PUM (Poor Users Modeller) as a code generator – Writing the PUM VisualWorks runtime during this project – Writing the PUM VisualAge/VisualWorks ENVY runtime during this project – Learning how to generate source code for VW
  • 7. Hardware Smalltalk on a CE device ● CeBit fair Hannover 2004: dBook1 (www.demolux.de) – Windows CE .NET 4.2 – StrongArm 1110 206 Mhz, 128 MB RAM, Keyboard, full VGA – Integrated GPRS module – Partial protection against water, dust .... – Price € 900 - € 1400
  • 8. Hardware Smalltalk on a CE device ● CeBit fair Hannover 2004: skeye.integral – Windows CE .NET 4.2 – StrongArm 206 Mhz, 64 MB RAM – ¼ VGA – Full protection against water, dust .... – Price around € 1900 (plus ...)
  • 9. IDE's Smalltalk on a CE device ● We wanted a Smalltalk project – but we know the bad reputation of Smalltalk in the minds of our managers – VisualStudio 2003 Professional ● .NET != CE .NET ● Large, Larger, Largest ... ● Emulators ... – Java ● Not so good reputation from third party developers ● No SWT support – Squeak ● No solution out of the box – but possible candidate – VisualWorks ● CeBit fair 2004 visit ● Deployment of an image, development on a PC
  • 10. VisualWorks and it's license Smalltalk on a CE device ● Project calculation – Fixed prices with VAR license ● Cincom refuses VAR licenses for project -> inhouse developement – Much higher price now each year to pay – not acceptable by management ● We changed the complete development process – I founded a small company (one person company) – I got the VAR license ... ● Summary – Cincom license too complicated for smaller software projects
  • 11. Hardware Evaluation Smalltalk on a CE device ● Skeye integral – Socket stuff did not work – due to false secondary exception handling ● New CE parcels fixed this problems ● dbook1 – Did not start at all ● New special virtual machine needed – due to special machine instruction handling on this machine ● Very good support during project from company „Georg Heeg“ ● Management wanted dBook1 ● Additional Hardware for testing – Aldi Medion (XScale 400, 64 MB) – IPAQ 2210 (XScale 400, 64 MB)
  • 12. Summary Smalltalk on a CE device ● Concept in general works ... – Develop on the PC, deploy image on the PDA ● BUT: Problems due to heterogenous Windows CE market – Unsure if application runs under the most selling consumer PDA's – Expect improvements in the next one or two years – Need for support for cheap consumer devices, not only high end devices – Product still needs more time or man power to become less complicated – Native DLL usage also heterogenous (DLL's missing) ● Memory and speed is again a problem for Smalltalk – Image size
  • 13. Summary Smalltalk on a CE device ● VisualWorks GUI too slow – Using the normal VW GUI development process leads to very slow, not acceptable applications. – Pollock is NOT a solution to this problem – even worse – PDA with special graphic accelerators reduces this problem – Consider the in general simple non standard GUI applications on a PDA ! – We need a „light“ widget set !!!!! ● Smalltalk IS fast enough for a PDA – See Squeak demo (Small Memory footprint) ● Faure (http://russell-allen.com/squeak/faure/) ● DynaPad (http://dynapad.swiki.net/1) (10/2003) ● Wish for more specific PDA support – More documentation and much more integration of the CE system – One still needs additional developer information: PocketPC embedded VisualBasic books or VisualStudio Professional 2003
  • 14. Clips Smalltalk on a CE device ● Speed feeling – Drop-down list under VW 7.2.1 (Standard) under IPAQ 2210 – Drop-down list under VW 7.2.1 (Pollock) under IPAQ 2210 – Application under ipaq 2210 – Application under dbook1 – Squeak GUI ● PDA environment – DynaPad