© 2012 Autodesk The Confluence of AutoCAD® Mobile, Desktop, and the Cloud Albert Szilvasy Software...
-
Upload
chloe-powers -
Category
Documents
-
view
241 -
download
3
Transcript of © 2012 Autodesk The Confluence of AutoCAD® Mobile, Desktop, and the Cloud Albert Szilvasy Software...
© 2012 Autodesk
The Confluence of AutoCAD® Mobile, Desktop, and the CloudAlbert SzilvasySoftware Architect, AutoCAD Engineering Team
© 2012 Autodesk
Summary
This is a developer oriented presentation An overview of how the technology landscape is changing How we are evolving AutoCAD to fit into this landscape Some future looking content
My guesses are educated but future is uncertain The future is not static: please provide feedback both positive and negative
© 2012 Autodesk
Agenda
State of the art in Cloud Client device (phone, tablet, laptop, desktop) Browser
Evolution of the desktop application Office 2013/Office 365 How is AutoCAD evolving?
How can developers prepare?
© 2012 Autodesk
Cloud
Heavily overloaded term From strictly technical: on-demand computing infrastructure… To anything that you do with a connected application
How does it matter to my application? Storage Compute Data and Services from others Connectivity
© 2012 Autodesk
Cloud providers
Am
azo
n
Rent a virtual machine
Mic
roso
ft
Go
og
le
Sophisticated services• Database as a service• Identity directory• Notifications• Autoscaling• Etc.
Level o
f abstractio
n
© 2012 Autodesk
Cloud storage
For an application there are 2 aspects:1. Storing customer data in the cloud
Drawing files Other data (e.g. comments)
2. Acting on the customer data already in the cloud A360 Skydrive, Gdrive , DropBox, Office 365 APIs to access data are important
© 2012 Autodesk
Cloud Compute
Amazon started with allowing you to rent a virtual machine Maximum control and responsibility Easiest to migrate legacy server applications Azure introduced this capability recently due to it popularity
The execution environment has become more managed Amazon Elastic Beanstalk Azure Cloud Services Google AppEngine
More software readily accessible as virtual machine image AWS marketplace Azure VM images
© 2012 Autodesk
Cloud Data and Services
Applications (client or cloud) can access a vast array of data online Machine friendly presentation Lot of XML/JSON-based formats
Bing/Google/Nokia maps Azure Data Marketplace
OData format is widely used Every major website exposes some level of programmability Facebook, Twitter, Google (+, apps, search), Microsoft (messenger, skydrive,
search)
© 2012 Autodesk
Cloud Connectivity
Client applications can rely on inexpensive servers No upfront investment, easy to scale E.g. Windows Intune (use the cloud to manage PCs) Interesting pattern
Most work happens on the client Requires minimal cloud storage or compute Still provides mobile, browser access
Virtual Private Cloud Rented servers are isolated from internet Connect to on premises network via encrypted channel (vpn)
© 2012 Autodesk
Client Devices Trends
Desktops are getting more parallel (6-8 core CPUs) The difference between laptop and tablet is disappearing (touch screens) Software stack unification
iOS/Android on tablet and phone Windows on tablet, phone and desktop
Sandboxed execution Apps are purchases from Store and run with well understood rights More apps each with limited, focused function
Challenge for developers Support multiple operating systems Support parallelism Break down your large application into smaller apps
© 2012 Autodesk
Browser
The virtual machine that works across all OS-es and device types One programming language: Javascript, becoming an intermediate
language Google GWT, Dart Microsoft Typescript
HTML as a UI framework 2D and 3D graphics
Canvas and WebGL More device access
Local storage, sensors
© 2012 Autodesk
Desktop vs. Mobile vs. Cloud
Desktop Mobile CloudCPU CISC & Many RISC & Few ‘unlimited’/pay as you goGPU Common Common RareStorage TBs GBs ‘unlimited’/pay as you goNetwork Gbit Mbit GbitPower ‘unlimited’ Limited by battery ‘unlimited’Sensors Few Many NoneInteraction High precision Less precise Programmatic only
© 2012 Autodesk
Office 2013/Office 365
The most widely used desktop application suit Historically many parallels with AutoCAD
Large C++ code base Rich client programmability (vba, .net) Large 3rd party developer community Similar UI elements (e.g. ribbon, task panes)
No reason to believe the future will be very different Looking at Office today may inform the future of AutoCAD and vice versa
© 2012 Autodesk
Office 2013 vs. AutoCAD 2013
Sign in with Microsoft account Save/Open from SkyDrive,
SharePoint Browser-based viewing/editing in
Office Web Apps Apps for Office: Javascript/HTML
extensibility Server-side: Word, Excel,
PowerPoint services in Sharepoint
Sign in with Autodesk account Save/Open from A360,
Buzzsaw Browser-based viewing/editing in
AutoCAD WS ?
?
© 2012 Autodesk
Apps for Office
A webpage displayed inside Excel, Outlook etc. The webpage is hosted on remote server, it can be updated without having to
install anything on the client The only thing that needs to be installed is an xml file
The webpage can access the host app via JavaScript This is allows the webpage to use the power of the Office app
HTML/Javascript is portable The same app can work in the desktop or web version! Mobile can also work but the form factor does not lend itself very well to
extensions (small screen, tricky to get right)
© 2012 Autodesk
Apps for Office cont.
Servers to host webpages for the app Provided by Microsoft – simple no need for additional accounts, infrastructure Provided by developer – very flexible but requires more work
Office Store to sell your application Users take less risk since the app is just a webpage (sandboxed by the
browser)
© 2012 Autodesk
AutoCAD Futures
What happens if AutoCAD follows a similar evolutionary path as Office? Apps for AutoCAD – JavaScript/HTML extensibility
It is already happening: Design Feed in AutoCAD WS AutoCAD services on the server – Process DWG files on the server
AutoCAD
Add-in
Mobile/Browser app
AutoCAD
Add-in
Web Site
© 2012 Autodesk
Apps for AutoCAD
JavaScript/HTML rendering is readily available in open source Chromium, Chromium Embedded
Inject our own functions into the Javascript context
Acweb.dll (.net)
AutoCAD
CefSharp.dll (.net/c++)
HTML/Javascript
Chromium (C++)
© 2012 Autodesk
How developers can prepare?
Learn HTML/Javascript/CSS Learn to build websites
ASP.NET or another stack Building Apps for Office is a good way to practice
© 2012 Autodesk
Server friendly components
The economy of the cloud comes from maximum resource utilization Host as many task as possible on a given hardware
Running the entire AutoCAD with UI is expensive nobody is there to see it, interact with it
Need components that are server friendly RealDWG = DWG DOM AutoCAD Core Engine = Real DWG +
© 2012 Autodesk
.crx apps
AutoCAD Core
AutoCAD.arx apps
AutoCAD 2011
AutoCAD.arx apps
AcDb (RealDwg).dbx apps
Osnap
Core commands
Plot
Command processor Input acquisition Viewports
Lisp Selection Layouts
ToolbarsMenus Palettes Dialogs
© 2012 Autodesk
AutoCAD Core Technology Stack
AcDb (RealDwg)
AcCore
.crx
app
s.d
bx a
pps
Graphics Subsystem
AutoCAD for Windows
.arx
app
s
AutoCAD Core Engine
AutoCAD for Mac
…
AcCoreConsole.exe
© 2012 Autodesk
Exposing AcCoreConsole.exe as a service
It has not been done. How would we do it? AcCoreConsole.exe /i <inputdwg> /s <script> Inputs
Uploaded Service to HTTP/GET from a web address
Outputs Downloaded Service to HTTP/PUT,POST to a web address
Script Custom commands (autoloader package)
© 2012 Autodesk
How can developers prepare?
Start building CRX applications It is like an ARX application but
C++ Don’t link acad.lib
.NET Don’t reference acmgd.dll
Lisp Don’t use vla, vlax
Learn HTTP/REST Live API Google Apps API
© 2012 Autodesk
Local File Server
Workstation 1
AutoCAD Core
EngineService
Upside down CloudWeb Site
Mobile/Browser App
Workstation 2
AutoCAD Core
EngineService
Workstation 3
AutoCAD Core
EngineServiceWorkstation 4
AutoCAD Core
EngineService
© 2012 Autodesk
Upside Down Cloud
Use the computers on the local network To process dwg files, extract or imprint data
Use the computers in the datacenter To coordinate and manage the local workstations and their “jobs” Store metadata Interact with the users on mobile device, browser
Original design data never leaves the premises. Service is cheap to provide because all heavy duty computation is
done on hardware that is paid for. You can do it now. AutoCAD 2013 ships all you will need.
© 2012 Autodesk
Summary
Desktop applications will need to be more connected Javascript/HTML is the lingua franca of the client. Learn it.
Websites will need to be more programmable REST is the lingua franca of the programmability. Learn it.
The difference between desktop, cloud, mobile is rapidly disappearing Difficult to predict the future.
© 2012 Autodesk
Autodesk, AutoCAD* [*if/when mentioned in the pertinent material, followed by an alphabetical list of all other trademarks mentioned in the material] are registered trademarks or trademarks of Autodesk, Inc., and/or its subsidiaries and/or affiliates in the USA and/or other countries. All other brand names, product names, or trademarks belong to their respective holders. Autodesk reserves the right to alter product and services offerings, and specifications and pricing at any time without notice, and is not responsible for typographical or graphical errors that may appear in this document. © 2012 Autodesk, Inc. All rights reserved.