coding for the cloud - development of modern web applications
TRANSCRIPT
![Page 1: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/1.jpg)
April 16
Coding for the Cloud
Wekoslav Stefanovski
@swekster
![Page 2: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/2.jpg)
Agenda
• Web development – classic and modern ways
• State of the development world
• Demo
![Page 3: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/3.jpg)
Basically, this talk is….
![Page 4: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/4.jpg)
Web Development
• It has to do with the internet
• Usually some kind of user interface is involved
• Some kind of client processing
• Some kind of server processing
• Of course, we have some kind of data store
• The scale of things is dramatic, from microscopic
to astronomical
• Done by web developers
![Page 5: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/5.jpg)
How do we develop webs?
• I have no idea, do you?
• There are lots of ready made solutions:
Wordpress, Joomla, Django, Drupal – do we
count those as web development?
• There are lots and lots of choices for every step
of the way, how do we choose?
![Page 6: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/6.jpg)
Classic Microsoft Way
• Web Forms on the server
• Whatever Web Forms generated on the client
• SQL Server for the database
• Code is in some private repository
• Hosted on a private server, or the cheapest
hosting service that had .net
• Not spoiled by choice
• But everything worked out of the box
![Page 7: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/7.jpg)
The New, Modern, Hip Way
• JAVASCRIPT EVERYWHERE!
• ITS’ THE BESTEST OF ALL LANGUAGES
• To be honest, JavaScript is the only universal
language across the stack.
• And it does have some good parts.
• The rise of the JavaScript framework
• The rise of the thick client
![Page 8: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/8.jpg)
VB6 Client – Server model
Dataset
SQL
Database Server Desktop Client
![Page 9: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/9.jpg)
Modern SPA model
Dataset
SQL
Database Server Desktop Client
Web ServerWeb Client
HTTP API Request
JSON Data
![Page 10: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/10.jpg)
IKEA Web Development
• You get the parts, and assemble them yourself
• Enables incredible customization power
• Whether you wanted it, or not
• Command line is back, with a vengeance
![Page 11: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/11.jpg)
DEMOIntroducing the team
![Page 12: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/12.jpg)
Editor: Visual Studio Code
• Very light-weight
• Very extension based
• Very multi-platform
• Built on Chromium with TypeScript
• Great development experience for js and ts
• Somewhat integrated debugger
![Page 13: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/13.jpg)
Server: Node.js
• Chrome’s V8 on a desktop machine
• Extremely light
• Multi platform by design
• Rabid community support
• npm is the comic relief sidekick
• Every package imaginable that you might need
• And every package you don’t need
• But you’ll get it anyway
![Page 14: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/14.jpg)
Language: Typescript
• Compile-to-Javascript language
• Very similar to Javascript
• Any valid Javascript is valid Typescript
• Open source, available on all platforms
• Can target specific Javascript levels
• Can be debugged as easy as Javascript
![Page 15: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/15.jpg)
Web Framework: Express.js
• Minimalist Node.js framework
• Extremely easy to get going
• Designed for API infrastructure
• Of course, lots of plugins
• Quite performant
![Page 16: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/16.jpg)
Database: SQL Server
• Industry standard for the longest time
• Nice performance (for nicely tuned databases)
• Finally, multi-platform?
![Page 17: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/17.jpg)
Client Framework: React
• User interface oriented framework
• Component based – but you make the components
• Uses Virtual DOM
• Relatively weird syntax
![Page 18: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/18.jpg)
Code repository: GitHub
• De facto standard in the developer community
• Basically, the Internet is hosted on GitHub
• Uses Git as source control
• Great (and easy) tooling
![Page 19: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/19.jpg)
Hosting Environment: Azure
• Integration with GitHub
• SQL Server Available
• Automatic deployments
• Multiple deployment slots
![Page 20: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/20.jpg)
Any Questions?Don’t be shy
![Page 21: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/21.jpg)
Upcoming events
SQLSaturday #519 in may!
http://www.sqlsaturday.com/519/
![Page 22: Coding for the cloud - development of modern web applications](https://reader031.vdocument.in/reader031/viewer/2022030401/58d18d4f1a28ab29318b5a29/html5/thumbnails/22.jpg)
Thanks to our Sponsors:
Global Sponsor:
Platinum Sponsors:
Swag Sponsors: Media Partners:
With the support of: