SlideShare a Scribd company logo
1 of 52
Steeltoe and the
Open Source .NET Renaissance
Dave Tillman
Lead Engineer - Steeltoe, Pivotal
Zach Brown - @moredeploys
Product Strategy & Marketing, Pivotal
Beth Massi - @BethMassi
Product Marketing Manager .NET Platform, Microsoft
1
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Outline
• Welcome to the .NET Renaissance
• Steeltoe Overview
• Why is Steeltoe?
• What’s in Steeltoe?
• Demo and Deep Dive
• Roadmap & Resources
2
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Be engaged!
Join the dialogue
Share your thoughts, opinions and photos
...even if you disagree
3
Beth Massi
@BethMassi
Steeltoe Project
@SteeltoeOSS
Zach Brown
@moredeploys
#springone
Welcome to the
.NET Renaissance
Happy 15th Birthday, .NET!
Born February 13, 2002
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
.NET Standard allows
sharing code, binaries and
skills between .NET client,
server and all of its flavors.
.NET Standard provides a
specification for any
platform to implement
APIs in .NET Standard 2.0
THREADING Threads • Thread Pool • Tasks
IO Files • Compression • MMF
DATA DataSet • DataTable • SQLClient
APIs in .NET Standard 2.0
THREADING Threads • Thread Pool • Tasks
IO Files • Compression • MMF
DATA DataSet • DataTable • SQLClient
https://github.com/dotnet/standard
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Languages Innovation
C#
- Innovate aggressively and responsibly bringing latest language trends to
enable modern applications
- C# 7.2 just released – bring features in quicker with dot releases
- C# 8.0 preview – Null reference types
F#
- Be the most productive functional language with full integration and
interoperability with .NET
Span<T> implemented
- Safe access to continuous regions of memory
- Brings performance improvements up and down the stack
https://github.com/dotnet/csharplang/
0
200
400
600
800
1000
1200
Oct-13
Jan-14
Apr-14
Jul-14
Oct-14
Jan-15
Apr-15
Jul-15
Oct-15
Jan-16
Apr-16
Jul-16
Oct-16
Jan-17
Apr-17
Jul-17
Community Accepted PRs “Samsung is embracing .NET because it is a
completely open source project.” — Samsung
".NET is open source; that allows us to contribute
back to it if we have any performance issues which
Microsoft review and together we make a better
product.“ — Illyriad Games
25,000+ Community Contributions from 1700+ Companies outside Microsoft
Top 30
Highest
Velocity
OSS
Projects
https://www.cncf.io/blog/2017/06/05/30-highest-velocity-open-source-projects/
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Performance improvements in .NET Core 2.0
Base class libraries (CoreFX)
• The community has submitted many of these performance improvements
RyuJIT – Just-in-time IL compiler
• Benefits all .NET implementations
Profile-guided optimization (PGO)
• Improvements to generate better optimized code for native components
“Using the same-size server, we were able to go from 1,000 requests per
second per node with Node.js to 20,000 requests per second with .NET Core.“
— Raygun
https://www.microsoft.com/net/customers
From TechEmpower Round 13 Plaintext Tests
Modern Relevance
Growth in popularity on Hacker
News and Reddit since going open
and cross platform
Job market
#2 demanded primary technology
(LinkedIn)
Development frameworks on Reddit &
Hacker News
Java
Node.js
.NET
Community Momentum
.NET is loved
.NET Core debuts at #3 most loved Framework on
Stack Overflow Technology Survey 2017
Source: http://stackoverflow.com/insights/survey/2017
C# is #3 most popular language for desktop and web
developers on Stack Overflow Technology Survey 2017
www.dot.net/architecture
RayGun
"Using the same-size server, we were able to go from 1,000 requests per second
per node with Node.js to 20,000 requests per second with .NET Core."
- John-Daniel Trask, CEO and Co-Founder
AstroReality, Quantum Technologies
"We think .NET Core is mature, very powerful, and a great choice for
advanced modern apps."
- Zerlot Ma, Cofounder and CEO
Jet.com Inc.
"The event-driven, microservices paradigm eliminated a lot of the
overhead that comes with a service-oriented architecture."
- Mike Hanrahan, CTO
Tencent
“The cross-platform capabilities of .NET Core were very important to us. Also,
Microsoft designed .NET Core with a microservice architecture in mind, and
that fits right in with our redesign plans.”
- Shanyou Zhang: Senior Software Architect
Age of Ascent, Illyriad Games
"Our game microservices are built using ASP.NET Core which gives us
superior performance. ASP.NET is open source, that allows us to
contribute back to it if we have any performance issues which Microsoft
review and together we make a better product."
- Ben Adams, CTO and Co-founder
NetEase
".NET Core doesn't just help us get to market faster, it also enables our
developers to focus on the core logic and what really matters, our players'
experience. They don't have to deal with the communication gap and different
ways of implementing the algorithm on the back and front end. They can just
work on finding better ways to implement their ideas."
- Feng Zhou, Product Director
United Parcel Service (UPS)
"Xamarin allowed us to develop a single code base in C# and deploy the
application to two completely different mobile phone ecosystems."
- Scott Hildebrand, Application Development Manager
GoDaddy
“Services can be developed more quickly, perform faster in production, and
scale better if they’re written using .NET Core with C#.”
- Jeremiah Gowdy: Principal Software Architect
microsoft.com/net/customers
Steeltoe
DotNetNuke
SourceLink
nUnit
MvvmCross
IronPython
ILMerge
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Welcome Steeltoe to .NET Foundation!
Resilient .NET microservices
Cloud-native Security
Data Connectors
Service discovery with Netflix Eureka
Circuit breakers with Netflix Hystrix
Shared config with Spring Cloud Configuration Server
Integration with Cloud Foundry
Plus Management tools for production microservices
http://steeltoe.io/
Steeltoe Overview
Why is Steeltoe?
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
- 12 Factor App principles (https://12factor.net/)
- Configuration stored in environment variables
- Out of process session state
- No r/w to registry, GAC, Local file system
- Loosely coupled backing services (i.e. RDBMS)
“Today’s best practices are tomorrow’s anti-patterns.”
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Benefits of Microservices Architectures
- Quickly iterate and release frequently
- Easy for new devs to join and be productive
- Increased developer velocity
- Shorter test cycles
- Polyglot becomes reality
- Independently scalable components
Microservices
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Microservices = Distributed Systems = Way more complexity
- How to troubleshoot microservices?
- How to set global configuration across
the whole application?
- How to look up the dynamic addresses
of services you consume?
- What do you do when a service you
depend on stops responding?
But Microservices are hard
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
There are some great OSS solutions already available
and
But until now they’ve been focused on Java
and not very accessible to .NET devs…
The good news is…
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
To help you build
Cloud native .NET applications
and leverage Spring Cloud tooling for
resilient microservices
So that’s why we built Steeltoe
What’s in Steeltoe?
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Connectors for common data services
- MySQL
- Postgres
- Redis
- RabbitMQ
- OAuth2
- MS SQL Server
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Security Providers
- OAuth2 SSO Provider
- JWT resource protection
- Redis-backed Key Ring Repository
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Management Endpoints
- /info
arbitrary app info, e.g. git build tag
- /health
application health information
- /trace
circular buffer of last 100 http requests/responses
- /loggers
shows and modifies configuration of loggers down to the class level
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Configuration Providers
Cloud Foundry
• VCAP_APPLICATION, VCAP_SERVICES, CF_*
Config Server
• Access config stored in Spring Cloud Config Server
(backed by Git, Vault, local filesystem)
• Across all instances, all apps, all environments
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Spring Cloud Config Server
Cloud-Native .NET
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Service Discovery with Eureka
- .NET Client for Netflix Eureka
- Dynamically discover and call
registered services
- Supports direct addressing
Resilient Microservices
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Circuit Breaker
- .NET implementation of Netflix Hystrix
- Bypass failing services with
elegant fall-back behavior
(so your users don’t see nasty error messages)
- Rich metrics and monitoring
Resilient Microservices
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Netflix Hystrix
Resilient Microservices
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe works...
with .NET Core and with the .NET Framework
on Windows and on Linux
standalone and running on Cloud Foundry
Open and Flexible
…and now it’s part of the
Demo
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store
browse
music
add item
to cart
place
order
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Config
Server
config
servergit
config
config
config
config
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Connectors
config
servergit
redis
connector
mysql
connector
mysql
connector
mysql
connector
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Discovery
config
servergit
browse
music
add item
to cart
place
order
eureka
server
service
addresses
register
services
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Management
config
servergit
eureka
server
/info
/health
/trace
/loggers
/info
/health
/trace
/loggers
/info
/health
/trace
/loggers
apps
manager
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Circuit
Breakers
config
servergit
eureka
server
hystrix
dashboard
circuit
breakers
metrics
apps
manager
Roadmap & Resources
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe Roadmap
2.0-rc1 December 2017
• Full ANC 2.0 support
• CredHub support
• MS SQL Server Connector
>2.0
• New Management Endpoints – (Thread Dump, Heap Dump)
• Zipkin
• Netflix Ribbon
Looking for something else? Tell us at https://slack.steeltoe.io or submit a PR
48
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Learn more → https://steeltoe.io
Clone a sample → https://github.com/SteeltoeOSS/Samples
Get the packages → https://www.nuget.org/profiles/steeltoe
Talk to us → https://slack.steeltoe.io/
Tell your friends → @SteeltoeOSS
How to get started
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Resources at SpringOne
• Pivotal Demo Lounge
• Build .NET Framework, .NET Core and polyglot (Java + .NET) apps and
push them to Cloud Foundry
• Recommended sessions
• Migrating .NET and .NET Core to PCF (CapGemini)
Tues. 4:20pm Room 2012
• Tech Modernization: A Cloud Migration (Charles Schwab)
Tues. 5:00pm Room 2010
• Ensuring Platform Security w/Windows BOSH Add-ons & Runtime
Config at Boeing
Wed. 2pm Room 2024
50
Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Now it’s your turn to share
Cloud Foundry Summit North America 2018
April 18-20, 2018 – Boston
New track: “Cloud-Native .NET”
Call for Papers Deadline: 12/8/2017
https://www.cloudfoundry.org/event_subpages/cfna18-cfp/
51
Learn More. Stay Connected.
52
#springone@s1p
http://www.dot.net @dotnet
http://steeltoe.io @SteeltoeOSS

More Related Content

What's hot

Des ops101 : Overview - RH CoP UI/UX 9nov2018
Des ops101 : Overview - RH  CoP UI/UX 9nov2018Des ops101 : Overview - RH  CoP UI/UX 9nov2018
Des ops101 : Overview - RH CoP UI/UX 9nov2018Samir Dash
 
How we made jenkins community
How we made jenkins communityHow we made jenkins community
How we made jenkins communityKohsuke Kawaguchi
 
La montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverteLa montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverteOpen Source Experience
 
Open Source Building Career and Competency
Open Source Building Career and CompetencyOpen Source Building Career and Competency
Open Source Building Career and CompetencyKrishna-Kumar
 
The Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solutionThe Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solutionBarton George
 
Publishing your research results with an open source foundation
Publishing your research results with an open source foundationPublishing your research results with an open source foundation
Publishing your research results with an open source foundationOpen Source Experience
 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile AppMobio Solutions
 
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009eLiberatica
 
DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20Peter Gallagher
 
Spring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application ServiceSpring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application ServiceVMware Tanzu
 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesAll Things Open
 
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorOSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorGail Frederick
 
Internet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with DrupalInternet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with DrupalPrateek Jain
 
The Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoThe Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoGail Frederick
 
5/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'165/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'16Kangaroot
 
Productivity Gains Using Open Source products
Productivity Gains Using Open Source productsProductivity Gains Using Open Source products
Productivity Gains Using Open Source productsMadhusudan Rao
 
Microservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They MatterMicroservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They MatterAlexander Arda
 
Lean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building ExperiencesLean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building ExperiencesBill Scott
 

What's hot (20)

Des ops101 : Overview - RH CoP UI/UX 9nov2018
Des ops101 : Overview - RH  CoP UI/UX 9nov2018Des ops101 : Overview - RH  CoP UI/UX 9nov2018
Des ops101 : Overview - RH CoP UI/UX 9nov2018
 
How we made jenkins community
How we made jenkins communityHow we made jenkins community
How we made jenkins community
 
La montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverteLa montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverte
 
Open Source Building Career and Competency
Open Source Building Career and CompetencyOpen Source Building Career and Competency
Open Source Building Career and Competency
 
The Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solutionThe Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solution
 
Publishing your research results with an open source foundation
Publishing your research results with an open source foundationPublishing your research results with an open source foundation
Publishing your research results with an open source foundation
 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile App
 
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
 
Ruby on Rails Development Ecosystem
Ruby on Rails Development EcosystemRuby on Rails Development Ecosystem
Ruby on Rails Development Ecosystem
 
DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20
 
Spring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application ServiceSpring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application Service
 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for Companies
 
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorOSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
 
Asf icfoss-mentoring
Asf icfoss-mentoringAsf icfoss-mentoring
Asf icfoss-mentoring
 
Internet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with DrupalInternet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with Drupal
 
The Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoThe Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGo
 
5/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'165/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'16
 
Productivity Gains Using Open Source products
Productivity Gains Using Open Source productsProductivity Gains Using Open Source products
Productivity Gains Using Open Source products
 
Microservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They MatterMicroservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They Matter
 
Lean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building ExperiencesLean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building Experiences
 

Similar to Steeltoe and the Open Source .NET Renaissance

What is dotnet (.NET) ?
What is dotnet (.NET) ?What is dotnet (.NET) ?
What is dotnet (.NET) ?Talha Shahzad
 
New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF VMware Tanzu
 
Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Polyxer Systems
 
Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?BoTree Technologies
 
ASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | TechcronusASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | TechcronusTechcronusAus
 
Service oriented cloud computing
Service oriented cloud computingService oriented cloud computing
Service oriented cloud computingMandar Pathrikar
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Ken Owens
 
NET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website DevelopmentNET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website DevelopmentVirtual Employee Pvt. Ltd.
 
Top Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next ProjectTop Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next ProjectWeblineIndia
 
WeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for BusinessWeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for BusinessWeblineIndia
 
All-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfAll-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfShelly Megan
 
Ten compelling reasons to learn .net framework
Ten compelling reasons to learn .net frameworkTen compelling reasons to learn .net framework
Ten compelling reasons to learn .net frameworkJanBask Training
 
Why Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdfWhy Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdfIntelliSource Technologies
 
Asp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTDAsp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTDTasnim Jahan
 
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSIOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSAmazon Web Services
 
What is .NET Chinese ver
What is .NET Chinese verWhat is .NET Chinese ver
What is .NET Chinese verDuran Hsieh
 

Similar to Steeltoe and the Open Source .NET Renaissance (20)

What is dotnet (.NET) ?
What is dotnet (.NET) ?What is dotnet (.NET) ?
What is dotnet (.NET) ?
 
New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF
 
Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?
 
Enterprise serverless
Enterprise serverlessEnterprise serverless
Enterprise serverless
 
Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?
 
ASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | TechcronusASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | Techcronus
 
Service oriented cloud computing
Service oriented cloud computingService oriented cloud computing
Service oriented cloud computing
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!
 
NET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website DevelopmentNET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website Development
 
Top Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next ProjectTop Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next Project
 
WeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for BusinessWeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for Business
 
Srikanth.Mulesoft
Srikanth.MulesoftSrikanth.Mulesoft
Srikanth.Mulesoft
 
Top Things to Know about .NET 6
Top Things to Know about .NET 6Top Things to Know about .NET 6
Top Things to Know about .NET 6
 
All-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfAll-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdf
 
Azure for gaming
Azure for gamingAzure for gaming
Azure for gaming
 
Ten compelling reasons to learn .net framework
Ten compelling reasons to learn .net frameworkTen compelling reasons to learn .net framework
Ten compelling reasons to learn .net framework
 
Why Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdfWhy Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdf
 
Asp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTDAsp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTD
 
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSIOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
 
What is .NET Chinese ver
What is .NET Chinese verWhat is .NET Chinese ver
What is .NET Chinese ver
 

More from VMware Tanzu

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItVMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleVMware Tanzu
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductVMware Tanzu
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready AppsVMware Tanzu
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And BeyondVMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023VMware Tanzu
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptxVMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchVMware Tanzu
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishVMware Tanzu
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVMware Tanzu
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - FrenchVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootVMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerVMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeVMware Tanzu
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsVMware Tanzu
 

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
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
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
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
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
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
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
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
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Steeltoe and the Open Source .NET Renaissance

  • 1. Steeltoe and the Open Source .NET Renaissance Dave Tillman Lead Engineer - Steeltoe, Pivotal Zach Brown - @moredeploys Product Strategy & Marketing, Pivotal Beth Massi - @BethMassi Product Marketing Manager .NET Platform, Microsoft 1
  • 2. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Outline • Welcome to the .NET Renaissance • Steeltoe Overview • Why is Steeltoe? • What’s in Steeltoe? • Demo and Deep Dive • Roadmap & Resources 2
  • 3. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Be engaged! Join the dialogue Share your thoughts, opinions and photos ...even if you disagree 3 Beth Massi @BethMassi Steeltoe Project @SteeltoeOSS Zach Brown @moredeploys #springone
  • 4. Welcome to the .NET Renaissance
  • 5. Happy 15th Birthday, .NET! Born February 13, 2002
  • 8. LIBRARIES INFRASTRUCTURE .NET STANDARD .NET Standard allows sharing code, binaries and skills between .NET client, server and all of its flavors. .NET Standard provides a specification for any platform to implement
  • 9. APIs in .NET Standard 2.0 THREADING Threads • Thread Pool • Tasks IO Files • Compression • MMF DATA DataSet • DataTable • SQLClient
  • 10. APIs in .NET Standard 2.0 THREADING Threads • Thread Pool • Tasks IO Files • Compression • MMF DATA DataSet • DataTable • SQLClient https://github.com/dotnet/standard
  • 11. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Languages Innovation C# - Innovate aggressively and responsibly bringing latest language trends to enable modern applications - C# 7.2 just released – bring features in quicker with dot releases - C# 8.0 preview – Null reference types F# - Be the most productive functional language with full integration and interoperability with .NET Span<T> implemented - Safe access to continuous regions of memory - Brings performance improvements up and down the stack https://github.com/dotnet/csharplang/
  • 12.
  • 13. 0 200 400 600 800 1000 1200 Oct-13 Jan-14 Apr-14 Jul-14 Oct-14 Jan-15 Apr-15 Jul-15 Oct-15 Jan-16 Apr-16 Jul-16 Oct-16 Jan-17 Apr-17 Jul-17 Community Accepted PRs “Samsung is embracing .NET because it is a completely open source project.” — Samsung ".NET is open source; that allows us to contribute back to it if we have any performance issues which Microsoft review and together we make a better product.“ — Illyriad Games 25,000+ Community Contributions from 1700+ Companies outside Microsoft
  • 15. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Performance improvements in .NET Core 2.0 Base class libraries (CoreFX) • The community has submitted many of these performance improvements RyuJIT – Just-in-time IL compiler • Benefits all .NET implementations Profile-guided optimization (PGO) • Improvements to generate better optimized code for native components “Using the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core.“ — Raygun https://www.microsoft.com/net/customers
  • 16. From TechEmpower Round 13 Plaintext Tests
  • 17. Modern Relevance Growth in popularity on Hacker News and Reddit since going open and cross platform Job market #2 demanded primary technology (LinkedIn) Development frameworks on Reddit & Hacker News Java Node.js .NET Community Momentum
  • 18. .NET is loved .NET Core debuts at #3 most loved Framework on Stack Overflow Technology Survey 2017 Source: http://stackoverflow.com/insights/survey/2017 C# is #3 most popular language for desktop and web developers on Stack Overflow Technology Survey 2017
  • 20. RayGun "Using the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core." - John-Daniel Trask, CEO and Co-Founder AstroReality, Quantum Technologies "We think .NET Core is mature, very powerful, and a great choice for advanced modern apps." - Zerlot Ma, Cofounder and CEO Jet.com Inc. "The event-driven, microservices paradigm eliminated a lot of the overhead that comes with a service-oriented architecture." - Mike Hanrahan, CTO Tencent “The cross-platform capabilities of .NET Core were very important to us. Also, Microsoft designed .NET Core with a microservice architecture in mind, and that fits right in with our redesign plans.” - Shanyou Zhang: Senior Software Architect Age of Ascent, Illyriad Games "Our game microservices are built using ASP.NET Core which gives us superior performance. ASP.NET is open source, that allows us to contribute back to it if we have any performance issues which Microsoft review and together we make a better product." - Ben Adams, CTO and Co-founder NetEase ".NET Core doesn't just help us get to market faster, it also enables our developers to focus on the core logic and what really matters, our players' experience. They don't have to deal with the communication gap and different ways of implementing the algorithm on the back and front end. They can just work on finding better ways to implement their ideas." - Feng Zhou, Product Director United Parcel Service (UPS) "Xamarin allowed us to develop a single code base in C# and deploy the application to two completely different mobile phone ecosystems." - Scott Hildebrand, Application Development Manager GoDaddy “Services can be developed more quickly, perform faster in production, and scale better if they’re written using .NET Core with C#.” - Jeremiah Gowdy: Principal Software Architect microsoft.com/net/customers
  • 22. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Welcome Steeltoe to .NET Foundation! Resilient .NET microservices Cloud-native Security Data Connectors Service discovery with Netflix Eureka Circuit breakers with Netflix Hystrix Shared config with Spring Cloud Configuration Server Integration with Cloud Foundry Plus Management tools for production microservices http://steeltoe.io/
  • 25. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ - 12 Factor App principles (https://12factor.net/) - Configuration stored in environment variables - Out of process session state - No r/w to registry, GAC, Local file system - Loosely coupled backing services (i.e. RDBMS) “Today’s best practices are tomorrow’s anti-patterns.” Cloud-Native .NET
  • 26. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Benefits of Microservices Architectures - Quickly iterate and release frequently - Easy for new devs to join and be productive - Increased developer velocity - Shorter test cycles - Polyglot becomes reality - Independently scalable components Microservices
  • 27. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Microservices = Distributed Systems = Way more complexity - How to troubleshoot microservices? - How to set global configuration across the whole application? - How to look up the dynamic addresses of services you consume? - What do you do when a service you depend on stops responding? But Microservices are hard
  • 28. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ There are some great OSS solutions already available and But until now they’ve been focused on Java and not very accessible to .NET devs… The good news is…
  • 29. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ To help you build Cloud native .NET applications and leverage Spring Cloud tooling for resilient microservices So that’s why we built Steeltoe
  • 31. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Connectors for common data services - MySQL - Postgres - Redis - RabbitMQ - OAuth2 - MS SQL Server Cloud-Native .NET
  • 32. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Security Providers - OAuth2 SSO Provider - JWT resource protection - Redis-backed Key Ring Repository Cloud-Native .NET
  • 33. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Management Endpoints - /info arbitrary app info, e.g. git build tag - /health application health information - /trace circular buffer of last 100 http requests/responses - /loggers shows and modifies configuration of loggers down to the class level Cloud-Native .NET
  • 34. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Configuration Providers Cloud Foundry • VCAP_APPLICATION, VCAP_SERVICES, CF_* Config Server • Access config stored in Spring Cloud Config Server (backed by Git, Vault, local filesystem) • Across all instances, all apps, all environments Cloud-Native .NET
  • 35. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Spring Cloud Config Server Cloud-Native .NET
  • 36. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Service Discovery with Eureka - .NET Client for Netflix Eureka - Dynamically discover and call registered services - Supports direct addressing Resilient Microservices
  • 37. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Circuit Breaker - .NET implementation of Netflix Hystrix - Bypass failing services with elegant fall-back behavior (so your users don’t see nasty error messages) - Rich metrics and monitoring Resilient Microservices
  • 38. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Netflix Hystrix Resilient Microservices
  • 39. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe works... with .NET Core and with the .NET Framework on Windows and on Linux standalone and running on Cloud Foundry Open and Flexible …and now it’s part of the
  • 40. Demo
  • 41. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store browse music add item to cart place order
  • 42. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Config Server config servergit config config config config
  • 43. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Connectors config servergit redis connector mysql connector mysql connector mysql connector
  • 44. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Discovery config servergit browse music add item to cart place order eureka server service addresses register services
  • 45. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Management config servergit eureka server /info /health /trace /loggers /info /health /trace /loggers /info /health /trace /loggers apps manager
  • 46. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Circuit Breakers config servergit eureka server hystrix dashboard circuit breakers metrics apps manager
  • 48. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe Roadmap 2.0-rc1 December 2017 • Full ANC 2.0 support • CredHub support • MS SQL Server Connector >2.0 • New Management Endpoints – (Thread Dump, Heap Dump) • Zipkin • Netflix Ribbon Looking for something else? Tell us at https://slack.steeltoe.io or submit a PR 48
  • 49. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Learn more → https://steeltoe.io Clone a sample → https://github.com/SteeltoeOSS/Samples Get the packages → https://www.nuget.org/profiles/steeltoe Talk to us → https://slack.steeltoe.io/ Tell your friends → @SteeltoeOSS How to get started
  • 50. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Resources at SpringOne • Pivotal Demo Lounge • Build .NET Framework, .NET Core and polyglot (Java + .NET) apps and push them to Cloud Foundry • Recommended sessions • Migrating .NET and .NET Core to PCF (CapGemini) Tues. 4:20pm Room 2012 • Tech Modernization: A Cloud Migration (Charles Schwab) Tues. 5:00pm Room 2010 • Ensuring Platform Security w/Windows BOSH Add-ons & Runtime Config at Boeing Wed. 2pm Room 2024 50
  • 51. Unless otherwise indicated, these slides are © 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Now it’s your turn to share Cloud Foundry Summit North America 2018 April 18-20, 2018 – Boston New track: “Cloud-Native .NET” Call for Papers Deadline: 12/8/2017 https://www.cloudfoundry.org/event_subpages/cfna18-cfp/ 51
  • 52. Learn More. Stay Connected. 52 #springone@s1p http://www.dot.net @dotnet http://steeltoe.io @SteeltoeOSS