Upload
wekoslav-stefanovski
View
246
Download
5
Embed Size (px)
Citation preview
April 16
Coding for the Cloud
Wekoslav Stefanovski
@swekster
Agenda
• Web development – classic and modern ways
• State of the development world
• Demo
Basically, this talk is….
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
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?
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
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
VB6 Client – Server model
Dataset
SQL
Database Server Desktop Client
Modern SPA model
Dataset
SQL
Database Server Desktop Client
Web ServerWeb Client
HTTP API Request
JSON Data
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
DEMOIntroducing the team
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
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
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
Web Framework: Express.js
• Minimalist Node.js framework
• Extremely easy to get going
• Designed for API infrastructure
• Of course, lots of plugins
• Quite performant
Database: SQL Server
• Industry standard for the longest time
• Nice performance (for nicely tuned databases)
• Finally, multi-platform?
Client Framework: React
• User interface oriented framework
• Component based – but you make the components
• Uses Virtual DOM
• Relatively weird syntax
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
Hosting Environment: Azure
• Integration with GitHub
• SQL Server Available
• Automatic deployments
• Multiple deployment slots
Any Questions?Don’t be shy
Upcoming events
SQLSaturday #519 in may!
http://www.sqlsaturday.com/519/
Thanks to our Sponsors:
Global Sponsor:
Platinum Sponsors:
Swag Sponsors: Media Partners:
With the support of: