SPLASH 2011: Dave Thomas - On Modern Application Development

Download this episode

Download Video

Description

It's been a while since we've been lucky enough to catch up with Dave Thomas. Dave is well known for his work in object oriented programming language design, dynamic language development (SmallTalk), and virtual machines. Dave did the initial development of the Eclipse IDE and is currently the CEO of Bedarra Corporation. Dave is a recognized leader in the discipline of making software. A godfather in software engineering. Many technical conferences benefit from his support and influence.

Here, we learn about the history of SPLASH and find out what's on Dave's mind with respect to modern app development methodologies. Dave shares his wise opinions on the state of objects, JavaScript, Dart, browser DOM, model-driven development, IDEs, and more. Dave is on a mission to democratize software engineering for the masses by removing unnecessary complexity in programming abstractions (has Dave lost his faith in objects?). What does this mean?

Thank you for spending time with C9, Dave! Always a pleasure. We'll see you again at YOW! 2011 Smiley

Tune in. Enjoy.

Time codes (thanks to George!):

[00:30] history of SPLASH events since the 1986 beginnings

[02:17] - ref to Ivan Sutherland's amazing SPLASH talk

[02:50] concurrency & parallel programming & the role of hardware / software co-design

[04:40] one of the problems in computer science is that most of the students don't know what is involved in hardware & virtual machines

[05:08] the need to go back to old days feeling of growing hardware / software knowledge together

[05:30] what's the state of object oriented programming?  Commercially imensely succesful but practical is a disaster since it is difficult for people to do abstractions  6:18 F# is a great language but it is hard to use

[06:45] challenge: complexity is exposed and people get lost in this sea of complexity

[07:00] refactoring in practice is difficult for big projects, the tools and practices are not there

[07:16] Object-oriented technology doesn't have the old 4 generation languages (4GL) like Excel & Access

[07:32] ref to the easy of use of some older MS product

[07:50] as we move into the cloud, the challenge is how do we democratise the programming process

[08:15] the need to setup up a Hadoop cluster to search large data, is questioned

[09:02] notion of Virtual machine in the sky and what's Dave's take on Javascript?

[10:30] one of the challenges of Javascript is having too many ways to do things

[11:00] Dart might help Javascript to be more modular

[12:14] there is still lots of room for innovation on the web & mobile. Current impedance mismatch between DOM (in C++) and Javascript, needs to be solved

[14:22] end-user programming comments

[16:20]  reference to a SPLASH paper on direct Mathlab compilation into code.  - mathlab issue translating to c++ (v.s. wiring into silicon)    - going directly from the model to silicon

[16:50] ref to Simulink, compiling Mathlab to GPU & going from brain to code

[17:30] declarative specifications open opportunities for parallelism

[17:53] ref to a SPLASH talk on spreadsheet processed by multicores

[18:18] there is a huge benefit to go directly from model to code

[19:30] reference to model-driven development

[19:55] a lot can be done with the spreadsheets

[21:27] the challenge of slow software

[21:47] the need to be greener in writing software to reduce cycles

[22:20] the state of IDEs.   - Current IDEs cannot refactor huge code

[23:50] - there is a real opportunity for IDEs to breakthrough    - their philosophy needs to change

[25:45] comments on the current tendency to move into the cloud

[29:00] parallelism is a tough problem

Recently, Channel 9 was invited to attend the great SPLASH conference. What is SPLASH? Systems, Programming, Languages and Applications: Software for Humanity. A big thanks to the SPLASH event organizers for inviting me and my camera to engage some key computer scientists and engineers in geeky, fun conversation! SPLASH is a great event! I learned a ton and met many amazing computer scientists and students.

SPLASH is an annual conference that embraces all aspects of software construction and delivery, and that joins all factions of programming technologies. Since 2010 SPLASH is the umbrella for OOPSLA and Onward! [source=splashcon.org] 

Embed

Format

Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image
      George_​Curelet_​Balan

      Eager to download and watch another great interview!

      Post updated on Nov 11, 2011, with:

      Notable points @ minutes: 2:50, 5:08, 6:45, 7:16, 7:50, 9:02, 12:14, 14:22, 16:20, 17:30, 19:30, 21:27, 22:20, 25:45, 29:00.

      My bookmarked notes on the video in minute:seconds format follow:

      0:30 history of SPLASH events since the 1986 beginnings

      2:17 - ref to Ivan Sutherland's amazing SPLASH talk

      2:50 concurrency & parallel programming & the role of hardware / software co-design

      4:40 one of the problems in computer science is that most of the students don't know what is involved in hardware & virtual machines

      5:08 the need to go back to old days feeling of growing hardware / software knowledge together

      5:30 what's the state of object oriented programming?  Commercially imensely succesful but practical is a disaster since it is difficult for people to do abstractions  6:18 F# is a great language but it is hard to use

      6:45 challenge: complexity is exposed and people get lost in this sea of complexity

      7:00 refactoring in practice is difficult for big projects, the tools and practices are not there

      7:16 Object-oriented technology doesn't have the old 4 generation languages (4GL) like Excel & Access

      7:32 ref to the easy of use of some older MS product

      7:50 as we move into the cloud, the challenge is how do we democratise the programming process

      8:15 the need to setup up a Hadoop cluster to search large data, is questioned

      9:02 notion of Virtual machine in the sky and what's Dave's take on Javascript?

      10:30 one of the challenges of Javascript is having too many ways to do things

      11:00 Dart might help Javascript to be more modular

      12:14 there is still lots of room for innovation on the web & mobile. Current impedance mismatch between DOM (in C++) and Javascript, needs to be solved

      14:22 end-user programming comments

      16:20  reference to a SPLASH paper on direct Mathlab compilation into code.  - mathlab issue translating to c++ (v.s. wiring into silicon)    - going directly from the model to silicon

      16:50 ref to Simulink, compiling Mathlab to GPU & going from brain to code

      17:30 declarative specifications open opportunities for parallelism

      17:53 ref to a SPLASH talk on spreadsheet processed by multicores

      18:18 there is a huge benefit to go directly from model to code

      19:30 reference to model-driven development

      19:55 a lot can be done with the spreadsheets

      21:27 the challenge of slow software

      21:47 the need to be greener in writing software to reduce cycles

      22:20 the state of IDEs.   - Current IDEs cannot refactor huge code

      23:50 - there is a real opportunity for IDEs to breakthrough    - their philosophy needs to change

      25:45 comments on the current tendency to move into the cloud

      29:00 parallelism is a tough problem

       

    • User profile image
      staceyw

      Dave seem to like Access.  Should note that Acces in the cloud and in Azure is now called MS LightSwitch.  IMO, even better than access, 3-tier by design, no walls, and native sql backend. to boot. Good stuff.

    • User profile image
      Richard.Hein

      Dave makes a very interesting point about how model driven development should be driven by real models, in the mathematical sense ... great interview so far ... still watching.

    • User profile image
      Charles

      @George_Curelet_Balan: Thank you, George!

      C

    • User profile image
      Richard.Hein

      23:50 - The idea of sharing compilation artifacts in the cloud between devs so we can reduce the amount of compile time and so forth, is great, and that's something I was thinking about a few months ago.  We are dealing with a minimum of 1.5 hours to recompile a fresh get from source control and with so many different branches, it's just incredibly inefficient when you realize all the duplication in there.  What a waste.

    • User profile image
      Pg77

      Thanks so much Mr.Thomas

    • User profile image
      Charles

      2010, 2011.. What's the difference. (re my introduction) Smiley
      C

    • User profile image
      eyal

      The idea of sharing compilation artifacts between devs is not new. It is a feature of ClearCase (SCM product) that I learned about 12 years ago, so it existed even earlier then that.

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.