<<< Previous speaker Next speaker >>>

Dave Thomas, Bedarra Research Labs

 Dave  Thomas

Dave Thomas has a wide spectrum of experience in the software industry as an engineer, professor, consultant, architect, executive and investor. Dave is founder and CEO of Bedarra Corporation; which provides virtual CTO and CEO, business mentoring and seed investment to emerging companies. Recently formed Bedarra Research Labs undertakes speculative research on applications of emerging software technologies.

Dave has many years of experience in structured documents including the design of laser printer controllers, early commercial applications of Tex. He has advised on the IBM B2B strategy, and is on the MS Customer Advisory Council and with OLL contributed to the SCORM elearning standard, and authoring tools. He is Chairman of Xia Systems, Online-Learning.com (OLL), and a director of Stilo/Omnimark, Bitflash, Amikanow and Synop and several other software companies.

Dave is best known as the founder and past CEO and president of Object Technology International Inc. (formerly OTI, now IBM OTI Labs) and led the commercial introduction of object and component technology. The company is often cited as the ideal model of a software technology company.

Dave was the principal visionary and architect for IBM VisualAge Smalltalk and Java tools and virtual machines including the initial work on popular multi-language Eclipse.org IDE. OTI pioneered the use of virtual machines in embedded systems with Tektronix shipping the first commercial products in 1988. He was instrumental in the establishment of IBM's Pervasive computing efforts and in particular the Java tooling.

Dave is an adjunct research professor at Carleton University, and the University Of Queensland and is widely published in the software engineering literature. He is a popular humorous albeit opinionated keynote speaker. Dave remains active in various roles within the technical community including ECOOP, AOSD, Evolve, and Agile Development Conference, Agile/XP Universe and OOPSLA Onward. He is a founding director of the Agile Alliance and most recently a founder of Open Augment Consortium. Dave writes expert columns in Otland Online in Germany, and the Journal Of Object Technology in Switzerland where he also serves on the editorial board.

Presentation: "The Joy of Scripting"

Track:   Scripting And Dynamics

Time: Monday 10:15 - 10:45

Location: SAS Nortvegia

Abstract: Scripting is an important practice in the toolbox of professional software developers. Scripting Languages can be applied to vary development tasks from configuring and gluing existing components together to complete application development. Scripting languages are also useful for rapid prototyping applications as a means of elaborating requirements.

Password protected Download slides

Presentation: "6th Generation Languages - Back To The Future"

Track:   Sixth Generation Languages

Time: Tuesday 10:15 - 10:45

Location: Conference Hall

Abstract: It has been widely observed that despite the power capabilities of new platforms that it is still surprisingly difficult to write relatively simple applications programs. One approach solution little languages such as scripting or Domain Specific Languages (DSLs). However these solutions often come with limitations on performance and/or domain of applicability. 6GLs are full blown application languages which directly support the application developer. In this talk we speculate on future 6GLs, by taking a looking at successful 4, 5GLs which dominated application programming in the late 70s and early 80s. We examine the essential features of good application languages and the challenges that need to solved by a 6GL. We contrast 6GLs with MDA which is another approach advocated for next generation application development.

Password protected Download slides

Tutorial: "Scaling Agile Development"

Track:   Tutorials

Time: Sunday 09:00 - 12:00, 13:00 - 16:00

Location: SAS Suecia

Abstract: Agile Development is a set of best practices for software development which is rapidly being adopted by software developers. Agile focuses predictable delivery and high quality. While initially these practices were applied to individual teams, larger organizations are now adopting Agile seeking to obtain the same benefits. In this tutorial we provide a comprehensive view of Agile practices and how they are scaled to meet the needs of large organizations. The tutorial begins with fast paced overview of the current state of agile practices for developers and management. We then present the key tools and techniques for development and management agile projects. We explain how Agile fits into a modern software development process. We describe the roles and responsibilities in an agile development organization including analysts, architects, designers, project managers, testers etc. We discuss global development using and the use of offshore and contract development. We provide experiences and lessons learned from very large agile projects in IT Applications and Product Engineering.

Tutorial: "The Joy of Scripting"

Track:   Tutorials

Time: Sunday 09:00 - 12:00

Location: SAS Nortvegia

Abstract: Scripting is an important practice in the toolbox of professional software developers. Scripting Languages can be applied to vary development tasks from configuring and gluing existing components together to complete application development. Scripting languages are also useful for rapid prototyping applications as a means of elaborating requirements. In this tutorial we provide a fast paced introduction to scripting and popular object scripting languages including: ActionScript, ASP, JavaScript, JSP, PHP, Python, Ruby and VBScript and Windows Scripting Host. We look at both client and server side scripting. We explore the similarities and differences of various languages including syntax, semantics, data types, object models and libraries. We discuss the strengths and weaknesses of each language as well as the applications for which they are best suited. Finally we relate scripting languages to dynamic languages and domain specific languages.