SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Moonlight:
Silverlight on Linux.

        Miguel de Icaza
       miguel@novell.com
Getting here.
Ximian: early history
    Ximian: Linux Desktop Startup founded in 1999



      “fill the gaps”
      Develop missing pieces (and applications).
Mono Project
    Mono: .NET on Unix.



      Open Source implementation.
      Better Developer Tools for Linux developers.
    Allow Windows developers to port to Linux:



      Bring expertise.
      No need to learn new languages/APIs.
      No need to rewrite in Java/C++.
Silverlight, in 3 bullet points.
    WPF/E at PDC



      Cute.
    WPF/E at Mix 06



      Still cute.
    Silverlight 1.1 at Mix 07



      Awesome, and in our domain.
Mix 07.
    Interest at Mix 07



      Journalist quote.
    Marc Jalabert's “Can you demo it in 3 weeks?”



      Start work on May 31st.
      Remix 07 in Paris, France, June 21st.
    Microsoft/Novell interoperability framework.

Microsoft Opening Up.
    Open source efforts inside the company.



      DLR, IronPython, IronRuby and many more.
    Opening up formats, protocols.



      Open Specification Promise (OOXML, WS-*)
    Scott Guthrie, web guy in charge of .NET.



    Bob Muglia's interop initiative with Novell.



    Sam Ramji's group.

Microsoft/Novell agreement.
    Microsoft to provide:



      Media Pack for all Moonlight users on Linux.
      Regression test suites.
      Complete specifications for implementation.
    Novell to:



      Deliver a 100% compatible Moonlight.
      Support it on all major Linux
      distributions/platforms.
Moonlight
Moonlight Today
Moonlight Roadmap.
    Previews available now:



      http://www.go-mono.com/moonlight
      No media yet.
    Moonlight 1.0:



      Available in June
    Moonlight 2.0:



      Previews by the end of the summer.
      Final release shortly after MS Silverlight 2
mopen command tool.
    mopen launches xaml files from the desktop



      Applications can be contained in directories
      Pure XAML or XAML + managed code.
      Similar to MacOS X “open”


    Desklets: window-less XAML applications.



      Similar to Widgets, Gadgets.
Original Moonlight Core
Moonlight with MS Media Pack
Moonlight Directions Today
    Complete/ship 1.0



      Integration of MediaPack.
      Complete our media pipeline.
      Improve performance (complex scenes, drivers)
    Parallel work on 2.0:



      VM changes developed in parallel.
Silverlight Class Libraries.
    Core Libraries: Subset of 3.5 .NET Libraries.



      Most are a straight subset.
      A few one have different class hierarchies.
    Silverlight APIs:



      Draw inspiration from WPF.
      Almost no code reuse possible.
    DLR and DLR-based code is open source.



    Reuse existing Silverlight 2 controls.

2.1 class libraries

                2.0                               2.1
               mscorlib                         mscorlib




Add new
code from2.1




                2.0
                                            Mono Linker
               mscorlib
Moonlight: APIs today
    Moonlight 1.0                Moonlight 2.0
                            


      Tracks SL 1.0                Track upcoming 2.0
      No Mono.                   Lots of changes
                             


      Testing new pipeline       Only started on 3.5
                             


    Moonlight 1.1                  LINQ



      Implements SL 1.1            Others
      Few missing features       Missing new work.
                             


      Development frozen
Moonlight SDK
    Tools to develop Silverlight apps on Unix.



      Compiler (smcs)
      Class libraries.
      On Linux, MacOS X, Solaris
    IDE



      Early Prototype of Silverlight designer written.
      Bringing our MonoDevelop IDE to MacOS X.
Wishes.
    Work with other browser vendors:



      Opera, WebKit and Konqueror
    Support BSD and custom Linux variants:



      Ship the binary codecs for those systems.
    Use Moonlight on OSX for designer.

Mono
Mono.
    Our implementation of the CLR:



      VM, JIT, AppDomains, GC, Remoting, etc.
    A re-implementation of the class libraries



      Reflection, XML, etc
      ASP.NET, Web Services, ADO.NET
    Compilers for most .NET languages



           C# 3.0, VB.NET
       


           Third party compilers
       
Overall Progress.
    2.0 mostly complete:



      Core, ASP.NET and ADO.NET are done
      Windows.Forms the only piece on hold.
    3.5 the actual heir to 2.0:



      C# 3, LINQ, XLINQ mostly done
      Have not started on DLINQ
    3.0 add-on:



      Only WCF in progress, no WPF at this point.
Microsoft's Open Source Code.
    Reuse Microsoft-produced code:



    ASP.NET AJAX



      Client side libraries.
      ASP.NET AJAX Control Toolkit.
    Dynamic Language Runtime



      IronPython, IronRuby.
Visual Studio Deployment
    Mono is binary compatible with .Net



      Same .DLL and .EXE file formats.
      Implements the same APIs.
    Winforms or ASP.NET apps





                 Demo
Mono Migration Analysis




     Demo

Weitere ähnliche Inhalte

Mehr von goodfriday

Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092goodfriday
 
Eastercard2009
Eastercard2009Eastercard2009
Eastercard2009goodfriday
 
Easterservices2009
Easterservices2009Easterservices2009
Easterservices2009goodfriday
 
Bulletin Current
Bulletin CurrentBulletin Current
Bulletin Currentgoodfriday
 
March 2009 Newsletter
March 2009 NewsletterMarch 2009 Newsletter
March 2009 Newslettergoodfriday
 
Lent Easter 2009
Lent Easter 2009Lent Easter 2009
Lent Easter 2009goodfriday
 
Easterpowersports09
Easterpowersports09Easterpowersports09
Easterpowersports09goodfriday
 
Easter Trading 09
Easter Trading 09Easter Trading 09
Easter Trading 09goodfriday
 
Easter Brochure 2009
Easter Brochure 2009Easter Brochure 2009
Easter Brochure 2009goodfriday
 
March April 2009 Calendar
March April 2009 CalendarMarch April 2009 Calendar
March April 2009 Calendargoodfriday
 
Easter 2009 Advertising
Easter 2009 AdvertisingEaster 2009 Advertising
Easter 2009 Advertisinggoodfriday
 
1204.Echoing Easter Sunday April12
1204.Echoing Easter Sunday April121204.Echoing Easter Sunday April12
1204.Echoing Easter Sunday April12goodfriday
 
Sani Trash Schedule Update 2009
Sani Trash Schedule Update 2009Sani Trash Schedule Update 2009
Sani Trash Schedule Update 2009goodfriday
 

Mehr von goodfriday (20)

Easter Letter
Easter LetterEaster Letter
Easter Letter
 
April2009
April2009April2009
April2009
 
Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092
 
Eastercard2009
Eastercard2009Eastercard2009
Eastercard2009
 
Easterservices2009
Easterservices2009Easterservices2009
Easterservices2009
 
Bulletin Current
Bulletin CurrentBulletin Current
Bulletin Current
 
Easter2009
Easter2009Easter2009
Easter2009
 
Bulletin
BulletinBulletin
Bulletin
 
March 2009 Newsletter
March 2009 NewsletterMarch 2009 Newsletter
March 2009 Newsletter
 
Mar 29 2009
Mar 29 2009Mar 29 2009
Mar 29 2009
 
Lent Easter 2009
Lent Easter 2009Lent Easter 2009
Lent Easter 2009
 
Easterpowersports09
Easterpowersports09Easterpowersports09
Easterpowersports09
 
Easter Trading 09
Easter Trading 09Easter Trading 09
Easter Trading 09
 
Easter Brochure 2009
Easter Brochure 2009Easter Brochure 2009
Easter Brochure 2009
 
March April 2009 Calendar
March April 2009 CalendarMarch April 2009 Calendar
March April 2009 Calendar
 
Easter 2009 Advertising
Easter 2009 AdvertisingEaster 2009 Advertising
Easter 2009 Advertising
 
Vc12.04.09
Vc12.04.09Vc12.04.09
Vc12.04.09
 
1204.Echoing Easter Sunday April12
1204.Echoing Easter Sunday April121204.Echoing Easter Sunday April12
1204.Echoing Easter Sunday April12
 
Sacredtriduum
SacredtriduumSacredtriduum
Sacredtriduum
 
Sani Trash Schedule Update 2009
Sani Trash Schedule Update 2009Sani Trash Schedule Update 2009
Sani Trash Schedule Update 2009
 

Kürzlich hochgeladen

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Kürzlich hochgeladen (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

Exploring Moonlight: Novell's Implementation of Silverlight on Linux

  • 1. Moonlight: Silverlight on Linux. Miguel de Icaza miguel@novell.com
  • 3. Ximian: early history Ximian: Linux Desktop Startup founded in 1999  “fill the gaps” Develop missing pieces (and applications).
  • 4. Mono Project Mono: .NET on Unix.  Open Source implementation. Better Developer Tools for Linux developers. Allow Windows developers to port to Linux:  Bring expertise. No need to learn new languages/APIs. No need to rewrite in Java/C++.
  • 5. Silverlight, in 3 bullet points. WPF/E at PDC  Cute. WPF/E at Mix 06  Still cute. Silverlight 1.1 at Mix 07  Awesome, and in our domain.
  • 6. Mix 07. Interest at Mix 07  Journalist quote. Marc Jalabert's “Can you demo it in 3 weeks?”  Start work on May 31st. Remix 07 in Paris, France, June 21st. Microsoft/Novell interoperability framework. 
  • 7. Microsoft Opening Up. Open source efforts inside the company.  DLR, IronPython, IronRuby and many more. Opening up formats, protocols.  Open Specification Promise (OOXML, WS-*) Scott Guthrie, web guy in charge of .NET.  Bob Muglia's interop initiative with Novell.  Sam Ramji's group. 
  • 8. Microsoft/Novell agreement. Microsoft to provide:  Media Pack for all Moonlight users on Linux. Regression test suites. Complete specifications for implementation. Novell to:  Deliver a 100% compatible Moonlight. Support it on all major Linux distributions/platforms.
  • 11. Moonlight Roadmap. Previews available now:  http://www.go-mono.com/moonlight No media yet. Moonlight 1.0:  Available in June Moonlight 2.0:  Previews by the end of the summer. Final release shortly after MS Silverlight 2
  • 12. mopen command tool. mopen launches xaml files from the desktop  Applications can be contained in directories Pure XAML or XAML + managed code. Similar to MacOS X “open” Desklets: window-less XAML applications.  Similar to Widgets, Gadgets.
  • 14. Moonlight with MS Media Pack
  • 15. Moonlight Directions Today Complete/ship 1.0  Integration of MediaPack. Complete our media pipeline. Improve performance (complex scenes, drivers) Parallel work on 2.0:  VM changes developed in parallel.
  • 16. Silverlight Class Libraries. Core Libraries: Subset of 3.5 .NET Libraries.  Most are a straight subset. A few one have different class hierarchies. Silverlight APIs:  Draw inspiration from WPF. Almost no code reuse possible. DLR and DLR-based code is open source.  Reuse existing Silverlight 2 controls. 
  • 17. 2.1 class libraries 2.0 2.1 mscorlib mscorlib Add new code from2.1 2.0 Mono Linker mscorlib
  • 18. Moonlight: APIs today Moonlight 1.0 Moonlight 2.0   Tracks SL 1.0 Track upcoming 2.0 No Mono. Lots of changes  Testing new pipeline Only started on 3.5  Moonlight 1.1 LINQ  Implements SL 1.1 Others Few missing features Missing new work.  Development frozen
  • 19. Moonlight SDK Tools to develop Silverlight apps on Unix.  Compiler (smcs) Class libraries. On Linux, MacOS X, Solaris IDE  Early Prototype of Silverlight designer written. Bringing our MonoDevelop IDE to MacOS X.
  • 20. Wishes. Work with other browser vendors:  Opera, WebKit and Konqueror Support BSD and custom Linux variants:  Ship the binary codecs for those systems. Use Moonlight on OSX for designer. 
  • 21. Mono
  • 22. Mono. Our implementation of the CLR:  VM, JIT, AppDomains, GC, Remoting, etc. A re-implementation of the class libraries  Reflection, XML, etc ASP.NET, Web Services, ADO.NET Compilers for most .NET languages  C# 3.0, VB.NET  Third party compilers 
  • 23. Overall Progress. 2.0 mostly complete:  Core, ASP.NET and ADO.NET are done Windows.Forms the only piece on hold. 3.5 the actual heir to 2.0:  C# 3, LINQ, XLINQ mostly done Have not started on DLINQ 3.0 add-on:  Only WCF in progress, no WPF at this point.
  • 24. Microsoft's Open Source Code. Reuse Microsoft-produced code:  ASP.NET AJAX  Client side libraries. ASP.NET AJAX Control Toolkit. Dynamic Language Runtime  IronPython, IronRuby.
  • 25. Visual Studio Deployment Mono is binary compatible with .Net  Same .DLL and .EXE file formats. Implements the same APIs. Winforms or ASP.NET apps  Demo