SlideShare a Scribd company logo
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Seminole County Teach-In 2017
Ed Burns
Consulting Member of Technical Staff
Java EE Standards and Cloud Technologies
November, 2017
The Importance of GitHub to Your Software Professional Career
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
2
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Speaker Qualifications
• Worked on the world’s first graphical web browser, NCSA Mosaic in 1994
• Graduated with Bachelor of Science in CS from University of Illinois in
Urbana-Champaign in 1995
• Joined Sun Microsystems in 1997, at the beginning of Java
• Joined Oracle in 2010, through its acquisition of Sun
• Author of four IT books for McGraw-Hill
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
My Plan For Your Time Investment
Oracle and K-12 Education
GitHub
Version Control in General and with Git
Version Control With Git
GitHub Extras
1
2
3
4
5
4
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Oracle and K-12 Education
Subtitle
5
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
• Oracle Academy advances
computer science education
globally to drive knowledge,
innovation, skills development, and
diversity in technology fields.
• Delivers a complete portfolio of
computer science learning
resources to educational
institutions.
• https://academy.oracle.com/en/
about-mission.html
6
Oracle Academy
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
http://bit.ly/oracle_sxswedu
Three Myths about Computer
Science Education
• CS is just for rich kids on
white collar job paths
• Technology is everywhere,
so CS education is available
to everyone already
• You need to be a CS expert
to teach it effectively
7
Alison Derbenwick Miller
VP of Oracle Academy
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub
Subtitle
8
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
• Safari
– View GitHub for this presentation
– Fork Repository
– Make change and send Pull Request
• Firefox
– Accept Pull Request
– View new README.md
9
Quick Demo: GitHub and README.md
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
• Took Open Source Software to the big time,
starting in 2008
• What is Open Source Software?
11
Introducing GitHub
S
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
First Came Free Software
14
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Then Came Open Source Software
15
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
What is the Difference?
• The difference is a matter of liberty and legality
• Both give everyone access to the source code
• Free Software
– grants everyone the right to freely modify, enhance, and the obligation to share those
enhancements with everyone
• Open Source Software
– does not require any sort of legal freedom
• Yes, you can see the source code
• But you may not be able to do anything with it
• Open Source Software can also be Free Software, but the converse is
usually not true
16
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Life Before Open Source
17
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
• Your portfolio is out there for all to
see
• You can take your code with you to
your next job, if you want
• You can build a name for yourself
outside of your company
18
Life After Open Source
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 19
Back To GitHub
S
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 20
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub
• Coins the term ”Social Coding”
• Still other players exist
– GitLab
– BitBucket
21
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Git
Subtitle
22
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub is packaging around Git
• Lots of other goodies as well, but git is the heart of it
23
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
What is an SCM
SCM stands for Source Code Management
Checkin: organized common access to sources
History: who did commit which code at what time.
This creates the full history of all the source code.
Versioning: reconstruct an exact original state at a
later time
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
What is an SCM (cntd)
Branches: Maintaining multiple versions of the
sources. E.g. feature branches and maintainance
branches
Tagging: 'freeze' a state and give it a special 'name'
Comments: each change can have a comment
which describes the reason for the change.
Annotations: who change which line in a file?
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
general SCM categories
there are a few typical features which distinguish
various SCMs:
Daemon based SCMs vs File based
Distributed SCMs without a technical 'master'
system vs Client-Server systems.
file locking vs conflict merging
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Overview different SCM systems
CVS
SVN
SourceSafe
Mercurial
BitKeeper
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
SCM Comparison: GIT
GIT works similar to patch based systems
GIT is de-centralised: all changes are also available 'offline'
All 'patches' are available locally
Commits are cryptographically strong
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
The basic GIT idea
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GIT Concepts: Object tree
GIT always tracks the whole repository
GIT tracks a tree containing diffs with their 'parents' and commit
Information
.git/objects contains all those commits
each commit has a unique sha1 containing the diff-object plus tree
information, and further
each commit has a unique sha1 containing the tree-object +
commit info
git 'packs' objects space optimized.
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GIT Concepts: Commit Information
Distinguishing between Author and Committer
commit text
author and commit date
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GIT Concepts: the 'Index'
GIT doesn't work directly against the Repository but has a
'preparation area' called 'Index'
all changes prepared in that 'Index' will only get stored to the
Repositories tree-objects with the 'commit'
local
repo
I
N
D
E
X
file
change
upstream
repo1
upstream
repo2
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Some GIT history
Junio C. Hamano is the maintainer of GIT since
almost the beginning.
GIT is 'Distributed', a new generation of SCMs. It
requires a different mind-set in comparison to Client-
Server based systems.
Linus Torvalds developed GIT in April 2005, after lots
of discussions regarding BitKeeper to maintain the
Linux kernel
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Topology of classical SCMs
Client-Server Architecture
All use the same Repository
Each committer has write
access
Each committer checks in his
changes himself – there is
no review before checkin.
SCM
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Linux kernel maintenance - old style
Linus as single
"Committer"
All people sending
patches to Linus
Linus merged all Patches
Linus maintained all
changes himself
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Problems of classical SCMs
Classical Client-Server
SCMs require a strict
hierarchical organisation.
Only works if the server
is up and running
Working offline is
impossible
In bigger projects you
often face problems with
access control
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Topology of DSCMs
Mathias
Susanne
Stephan
Mark
Sigi
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Maintaining Linux with Git
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Network of Trust
Each user only writes to his own Repository
Which means no authorisation problem
Good changes get pulled actively
Author of a change remains in the commit
There is no technical master system
Self organisation based on Quality
Changes get reviewed a few times
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Git Repository
Pure content-tracking (NO file-tracking)
list of changes (diffs)
GIT collects Changes within a tree
Direct Acyclic dependent Graph (DAG) of changes
Each change has a unique SHA1 hash
That implies Security
Additional GPG signature possible for tags
submodules support
all info under .git - no garbage in your work tree
supports various transmission protocols
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Weak spots of GIT
optimized for whole trees and not for single files
Annotation is pretty expensive
GIT manages no authorisation
GIT manages no file metadata
Slide content from Mark Struberg, Apache Software Foundation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub Extras
42
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub Extras
• The Commit Strip
• Gist
• Issues
• GitHub Pages
• https://education.github.com/
43
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Commit Strip
44
• Shows your public commits
• A visual gauge of how active you are in open source
• Increases in value as GitHub itself becomes more pervasive
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Gist
• For quick sharing of code
• Permanent link
• Line numbers
• Comments
45
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Issues
• SUPER IMPORTANT professionally
• How you get work assigned to you
• How your productivity may be measured by your employer
• Has features for planning your time
46
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub Pages
• Free web hosting (DNS not included)
– http://ridingthecrest.com/
– http://battleofthesomme.info/
• https://guides.github.com/features/pages/
47
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
GitHub Student Pack
• https://education.github.com/pack
48
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The preceding is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
49
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 50
Seminole County Teach In 2017: Crooms Acadamy of Information Technology

More Related Content

What's hot

In Search of Segmentation
In Search of SegmentationIn Search of Segmentation
In Search of Segmentation
Adrian Cockcroft
 
The internet of things in now , see how golang is a part of this evolution
The internet of things in now , see how golang is a part of this evolutionThe internet of things in now , see how golang is a part of this evolution
The internet of things in now , see how golang is a part of this evolution
Yoni Davidson
 
Comparison of Open Source Frameworks for Integrating the Internet of Things
Comparison of Open Source Frameworks for Integrating the Internet of ThingsComparison of Open Source Frameworks for Integrating the Internet of Things
Comparison of Open Source Frameworks for Integrating the Internet of Things
Kai Wähner
 
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
Mark Church
 
Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...
Codemotion
 
Introduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVTIntroduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVT
Cisco DevNet
 
Shrinking the container_zurich_july_2018
Shrinking the container_zurich_july_2018Shrinking the container_zurich_july_2018
Shrinking the container_zurich_july_2018
Ewan Slater
 
From Inception to RFC – The SCIM Story
From Inception to RFC – The SCIM StoryFrom Inception to RFC – The SCIM Story
From Inception to RFC – The SCIM Story
Nordic APIs
 
Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...
ITCamp
 
Meetups - The Oracle Ace Way
Meetups - The Oracle Ace WayMeetups - The Oracle Ace Way
Meetups - The Oracle Ace Way
Phil Wilkins
 
DEVNET-1112 The DevNet Hackathon Awards
DEVNET-1112	The DevNet Hackathon AwardsDEVNET-1112	The DevNet Hackathon Awards
DEVNET-1112 The DevNet Hackathon Awards
Cisco DevNet
 
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Kai Wähner
 
Open Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and ComplianceOpen Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and Compliance
All Things Open
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
ITCamp
 
DEVNET-1117 Open Source DevCenter Launched within DevNet
DEVNET-1117	Open Source DevCenter Launched within DevNetDEVNET-1117	Open Source DevCenter Launched within DevNet
DEVNET-1117 Open Source DevCenter Launched within DevNet
Cisco DevNet
 
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Sanjeev Rampal
 
Code Hosting: The Key to Autonomous, Self-Service Development
Code Hosting: The Key to Autonomous, Self-Service DevelopmentCode Hosting: The Key to Autonomous, Self-Service Development
Code Hosting: The Key to Autonomous, Self-Service Development
Rachel Maxwell
 
OpenStack Networking: Developing and Delivering a Commercial Solution for Lo...
OpenStack Networking:  Developing and Delivering a Commercial Solution for Lo...OpenStack Networking:  Developing and Delivering a Commercial Solution for Lo...
OpenStack Networking: Developing and Delivering a Commercial Solution for Lo...
Radware
 
Open Source IoT Project Flogo - Building a Custom Apache Kafka Connector
Open Source IoT Project Flogo - Building a Custom Apache Kafka ConnectorOpen Source IoT Project Flogo - Building a Custom Apache Kafka Connector
Open Source IoT Project Flogo - Building a Custom Apache Kafka Connector
Kai Wähner
 

What's hot (20)

In Search of Segmentation
In Search of SegmentationIn Search of Segmentation
In Search of Segmentation
 
The internet of things in now , see how golang is a part of this evolution
The internet of things in now , see how golang is a part of this evolutionThe internet of things in now , see how golang is a part of this evolution
The internet of things in now , see how golang is a part of this evolution
 
Comparison of Open Source Frameworks for Integrating the Internet of Things
Comparison of Open Source Frameworks for Integrating the Internet of ThingsComparison of Open Source Frameworks for Integrating the Internet of Things
Comparison of Open Source Frameworks for Integrating the Internet of Things
 
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
Docker Enterprise Networking and Cisco Contiv - Cisco Live 2017 BRKSDN-2256
 
Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...
 
Introduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVTIntroduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVT
 
Shrinking the container_zurich_july_2018
Shrinking the container_zurich_july_2018Shrinking the container_zurich_july_2018
Shrinking the container_zurich_july_2018
 
From Inception to RFC – The SCIM Story
From Inception to RFC – The SCIM StoryFrom Inception to RFC – The SCIM Story
From Inception to RFC – The SCIM Story
 
Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...
 
Meetups - The Oracle Ace Way
Meetups - The Oracle Ace WayMeetups - The Oracle Ace Way
Meetups - The Oracle Ace Way
 
DEVNET-1112 The DevNet Hackathon Awards
DEVNET-1112	The DevNet Hackathon AwardsDEVNET-1112	The DevNet Hackathon Awards
DEVNET-1112 The DevNet Hackathon Awards
 
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
 
Open Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and ComplianceOpen Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and Compliance
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
 
DEVNET-1117 Open Source DevCenter Launched within DevNet
DEVNET-1117	Open Source DevCenter Launched within DevNetDEVNET-1117	Open Source DevCenter Launched within DevNet
DEVNET-1117 Open Source DevCenter Launched within DevNet
 
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
 
Code Hosting: The Key to Autonomous, Self-Service Development
Code Hosting: The Key to Autonomous, Self-Service DevelopmentCode Hosting: The Key to Autonomous, Self-Service Development
Code Hosting: The Key to Autonomous, Self-Service Development
 
OpenStack Networking: Developing and Delivering a Commercial Solution for Lo...
OpenStack Networking:  Developing and Delivering a Commercial Solution for Lo...OpenStack Networking:  Developing and Delivering a Commercial Solution for Lo...
OpenStack Networking: Developing and Delivering a Commercial Solution for Lo...
 
Open Source IoT Project Flogo - Building a Custom Apache Kafka Connector
Open Source IoT Project Flogo - Building a Custom Apache Kafka ConnectorOpen Source IoT Project Flogo - Building a Custom Apache Kafka Connector
Open Source IoT Project Flogo - Building a Custom Apache Kafka Connector
 

Similar to Seminole County Teach In 2017: Crooms Acadamy of Information Technology

Cisco Connect Toronto 2018 DevNet Overview
Cisco Connect Toronto 2018  DevNet OverviewCisco Connect Toronto 2018  DevNet Overview
Cisco Connect Toronto 2018 DevNet Overview
Cisco Canada
 
GraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
GraphPipe - Blazingly Fast Machine Learning Inference by Vish AbramsGraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
GraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
Oracle Developers
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API Providers
Cisco DevNet
 
Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)
dmgerman
 
Oracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the CloudOracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the Cloud
Ed Burns
 
Using MySQL Containers
Using MySQL ContainersUsing MySQL Containers
Using MySQL Containers
Matt Lord
 
CI/CD with AWS Code Services
CI/CD with AWS Code ServicesCI/CD with AWS Code Services
CI/CD with AWS Code Services
Pulkit Gupta
 
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
Data Con LA
 
Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...
All Things Open
 
Microcontainers and Tools for Hardcore Container Debugging
Microcontainers and Tools for Hardcore Container DebuggingMicrocontainers and Tools for Hardcore Container Debugging
Microcontainers and Tools for Hardcore Container Debugging
Oracle Developers
 
Bringing Java into the Open
Bringing Java into the Open Bringing Java into the Open
Bringing Java into the Open
Heather VanCura
 
DevNetCreate Workshop - build a react app - React crash course
DevNetCreate Workshop - build a react app - React crash courseDevNetCreate Workshop - build a react app - React crash course
DevNetCreate Workshop - build a react app - React crash course
Cisco DevNet
 
Intro to open source - 101 presentation
Intro to open source - 101 presentationIntro to open source - 101 presentation
Intro to open source - 101 presentation
Javier Perez
 
Container Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey BoxellContainer Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey Boxell
Oracle Developers
 
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems IntegrationJenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
Oleg Nenashev
 
Move your Castle to the Cloud
Move your Castle to the CloudMove your Castle to the Cloud
Move your Castle to the Cloud
Blaine Carter
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle Developers
 
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
David Buck
 
Dev ops in the cloud use case and best practices meetup
Dev ops in the cloud use case and best practices   meetupDev ops in the cloud use case and best practices   meetup
Dev ops in the cloud use case and best practices meetup
Nitu Parimi
 
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
David Buck
 

Similar to Seminole County Teach In 2017: Crooms Acadamy of Information Technology (20)

Cisco Connect Toronto 2018 DevNet Overview
Cisco Connect Toronto 2018  DevNet OverviewCisco Connect Toronto 2018  DevNet Overview
Cisco Connect Toronto 2018 DevNet Overview
 
GraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
GraphPipe - Blazingly Fast Machine Learning Inference by Vish AbramsGraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
GraphPipe - Blazingly Fast Machine Learning Inference by Vish Abrams
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API Providers
 
Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)
 
Oracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the CloudOracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the Cloud
 
Using MySQL Containers
Using MySQL ContainersUsing MySQL Containers
Using MySQL Containers
 
CI/CD with AWS Code Services
CI/CD with AWS Code ServicesCI/CD with AWS Code Services
CI/CD with AWS Code Services
 
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
Data Con LA 2022-Open Source or Open Core in Your Data Layer? What Needs to B...
 
Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...
 
Microcontainers and Tools for Hardcore Container Debugging
Microcontainers and Tools for Hardcore Container DebuggingMicrocontainers and Tools for Hardcore Container Debugging
Microcontainers and Tools for Hardcore Container Debugging
 
Bringing Java into the Open
Bringing Java into the Open Bringing Java into the Open
Bringing Java into the Open
 
DevNetCreate Workshop - build a react app - React crash course
DevNetCreate Workshop - build a react app - React crash courseDevNetCreate Workshop - build a react app - React crash course
DevNetCreate Workshop - build a react app - React crash course
 
Intro to open source - 101 presentation
Intro to open source - 101 presentationIntro to open source - 101 presentation
Intro to open source - 101 presentation
 
Container Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey BoxellContainer Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey Boxell
 
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems IntegrationJenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
Jenkins Pipeline @ Scale. Building Automation Frameworks for Systems Integration
 
Move your Castle to the Cloud
Move your Castle to the CloudMove your Castle to the Cloud
Move your Castle to the Cloud
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
 
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
OpenJDK: How to Join In on All the Fun [JavaOne 2017 CON3667]
 
Dev ops in the cloud use case and best practices meetup
Dev ops in the cloud use case and best practices   meetupDev ops in the cloud use case and best practices   meetup
Dev ops in the cloud use case and best practices meetup
 
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
 

More from Ed Burns

What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfileWhat We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
Ed Burns
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
Ed Burns
 
What Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java DevelopmentWhat Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java Development
Ed Burns
 
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Ed Burns
 
Enterprise Java on Azure: From Java EE to Spring, we have you covered
Enterprise Java on Azure: From Java EE to Spring, we have you coveredEnterprise Java on Azure: From Java EE to Spring, we have you covered
Enterprise Java on Azure: From Java EE to Spring, we have you covered
Ed Burns
 
Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?
Ed Burns
 
JavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a ThereminJavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a Theremin
Ed Burns
 
Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017
Ed Burns
 
Chicago JUG / GOTO Meetup
Chicago JUG / GOTO MeetupChicago JUG / GOTO Meetup
Chicago JUG / GOTO Meetup
Ed Burns
 
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
Ed Burns
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
Ed Burns
 

More from Ed Burns (11)

What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfileWhat We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
 
What Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java DevelopmentWhat Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java Development
 
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
 
Enterprise Java on Azure: From Java EE to Spring, we have you covered
Enterprise Java on Azure: From Java EE to Spring, we have you coveredEnterprise Java on Azure: From Java EE to Spring, we have you covered
Enterprise Java on Azure: From Java EE to Spring, we have you covered
 
Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?
 
JavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a ThereminJavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a Theremin
 
Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017
 
Chicago JUG / GOTO Meetup
Chicago JUG / GOTO MeetupChicago JUG / GOTO Meetup
Chicago JUG / GOTO Meetup
 
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
 

Recently uploaded

Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

Seminole County Teach In 2017: Crooms Acadamy of Information Technology

  • 1. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Seminole County Teach-In 2017 Ed Burns Consulting Member of Technical Staff Java EE Standards and Cloud Technologies November, 2017 The Importance of GitHub to Your Software Professional Career
  • 2. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 2
  • 3. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Speaker Qualifications • Worked on the world’s first graphical web browser, NCSA Mosaic in 1994 • Graduated with Bachelor of Science in CS from University of Illinois in Urbana-Champaign in 1995 • Joined Sun Microsystems in 1997, at the beginning of Java • Joined Oracle in 2010, through its acquisition of Sun • Author of four IT books for McGraw-Hill
  • 4. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | My Plan For Your Time Investment Oracle and K-12 Education GitHub Version Control in General and with Git Version Control With Git GitHub Extras 1 2 3 4 5 4
  • 5. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Oracle and K-12 Education Subtitle 5
  • 6. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • Oracle Academy advances computer science education globally to drive knowledge, innovation, skills development, and diversity in technology fields. • Delivers a complete portfolio of computer science learning resources to educational institutions. • https://academy.oracle.com/en/ about-mission.html 6 Oracle Academy
  • 7. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | http://bit.ly/oracle_sxswedu Three Myths about Computer Science Education • CS is just for rich kids on white collar job paths • Technology is everywhere, so CS education is available to everyone already • You need to be a CS expert to teach it effectively 7 Alison Derbenwick Miller VP of Oracle Academy
  • 8. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub Subtitle 8
  • 9. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • Safari – View GitHub for this presentation – Fork Repository – Make change and send Pull Request • Firefox – Accept Pull Request – View new README.md 9 Quick Demo: GitHub and README.md
  • 10. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
  • 11. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • Took Open Source Software to the big time, starting in 2008 • What is Open Source Software? 11 Introducing GitHub S
  • 12. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
  • 13. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
  • 14. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | First Came Free Software 14
  • 15. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Then Came Open Source Software 15
  • 16. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | What is the Difference? • The difference is a matter of liberty and legality • Both give everyone access to the source code • Free Software – grants everyone the right to freely modify, enhance, and the obligation to share those enhancements with everyone • Open Source Software – does not require any sort of legal freedom • Yes, you can see the source code • But you may not be able to do anything with it • Open Source Software can also be Free Software, but the converse is usually not true 16
  • 17. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Life Before Open Source 17
  • 18. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • Your portfolio is out there for all to see • You can take your code with you to your next job, if you want • You can build a name for yourself outside of your company 18 Life After Open Source
  • 19. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 19 Back To GitHub S
  • 20. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 20
  • 21. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub • Coins the term ”Social Coding” • Still other players exist – GitLab – BitBucket 21
  • 22. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Git Subtitle 22
  • 23. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub is packaging around Git • Lots of other goodies as well, but git is the heart of it 23
  • 24. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | What is an SCM SCM stands for Source Code Management Checkin: organized common access to sources History: who did commit which code at what time. This creates the full history of all the source code. Versioning: reconstruct an exact original state at a later time Slide content from Mark Struberg, Apache Software Foundation
  • 25. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | What is an SCM (cntd) Branches: Maintaining multiple versions of the sources. E.g. feature branches and maintainance branches Tagging: 'freeze' a state and give it a special 'name' Comments: each change can have a comment which describes the reason for the change. Annotations: who change which line in a file? Slide content from Mark Struberg, Apache Software Foundation
  • 26. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | general SCM categories there are a few typical features which distinguish various SCMs: Daemon based SCMs vs File based Distributed SCMs without a technical 'master' system vs Client-Server systems. file locking vs conflict merging Slide content from Mark Struberg, Apache Software Foundation
  • 27. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Overview different SCM systems CVS SVN SourceSafe Mercurial BitKeeper Slide content from Mark Struberg, Apache Software Foundation
  • 28. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | SCM Comparison: GIT GIT works similar to patch based systems GIT is de-centralised: all changes are also available 'offline' All 'patches' are available locally Commits are cryptographically strong Slide content from Mark Struberg, Apache Software Foundation
  • 29. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | The basic GIT idea Slide content from Mark Struberg, Apache Software Foundation
  • 30. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GIT Concepts: Object tree GIT always tracks the whole repository GIT tracks a tree containing diffs with their 'parents' and commit Information .git/objects contains all those commits each commit has a unique sha1 containing the diff-object plus tree information, and further each commit has a unique sha1 containing the tree-object + commit info git 'packs' objects space optimized. Slide content from Mark Struberg, Apache Software Foundation
  • 31. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GIT Concepts: Commit Information Distinguishing between Author and Committer commit text author and commit date Slide content from Mark Struberg, Apache Software Foundation
  • 32. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GIT Concepts: the 'Index' GIT doesn't work directly against the Repository but has a 'preparation area' called 'Index' all changes prepared in that 'Index' will only get stored to the Repositories tree-objects with the 'commit' local repo I N D E X file change upstream repo1 upstream repo2 Slide content from Mark Struberg, Apache Software Foundation
  • 33. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Some GIT history Junio C. Hamano is the maintainer of GIT since almost the beginning. GIT is 'Distributed', a new generation of SCMs. It requires a different mind-set in comparison to Client- Server based systems. Linus Torvalds developed GIT in April 2005, after lots of discussions regarding BitKeeper to maintain the Linux kernel Slide content from Mark Struberg, Apache Software Foundation
  • 34. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Topology of classical SCMs Client-Server Architecture All use the same Repository Each committer has write access Each committer checks in his changes himself – there is no review before checkin. SCM Slide content from Mark Struberg, Apache Software Foundation
  • 35. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Linux kernel maintenance - old style Linus as single "Committer" All people sending patches to Linus Linus merged all Patches Linus maintained all changes himself Slide content from Mark Struberg, Apache Software Foundation
  • 36. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Problems of classical SCMs Classical Client-Server SCMs require a strict hierarchical organisation. Only works if the server is up and running Working offline is impossible In bigger projects you often face problems with access control Slide content from Mark Struberg, Apache Software Foundation
  • 37. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Topology of DSCMs Mathias Susanne Stephan Mark Sigi Slide content from Mark Struberg, Apache Software Foundation
  • 38. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Maintaining Linux with Git Slide content from Mark Struberg, Apache Software Foundation
  • 39. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Network of Trust Each user only writes to his own Repository Which means no authorisation problem Good changes get pulled actively Author of a change remains in the commit There is no technical master system Self organisation based on Quality Changes get reviewed a few times Slide content from Mark Struberg, Apache Software Foundation
  • 40. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Git Repository Pure content-tracking (NO file-tracking) list of changes (diffs) GIT collects Changes within a tree Direct Acyclic dependent Graph (DAG) of changes Each change has a unique SHA1 hash That implies Security Additional GPG signature possible for tags submodules support all info under .git - no garbage in your work tree supports various transmission protocols Slide content from Mark Struberg, Apache Software Foundation
  • 41. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Weak spots of GIT optimized for whole trees and not for single files Annotation is pretty expensive GIT manages no authorisation GIT manages no file metadata Slide content from Mark Struberg, Apache Software Foundation
  • 42. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub Extras 42
  • 43. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub Extras • The Commit Strip • Gist • Issues • GitHub Pages • https://education.github.com/ 43
  • 44. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Commit Strip 44 • Shows your public commits • A visual gauge of how active you are in open source • Increases in value as GitHub itself becomes more pervasive
  • 45. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Gist • For quick sharing of code • Permanent link • Line numbers • Comments 45
  • 46. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Issues • SUPER IMPORTANT professionally • How you get work assigned to you • How your productivity may be measured by your employer • Has features for planning your time 46
  • 47. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub Pages • Free web hosting (DNS not included) – http://ridingthecrest.com/ – http://battleofthesomme.info/ • https://guides.github.com/features/pages/ 47
  • 48. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GitHub Student Pack • https://education.github.com/pack 48
  • 49. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 49
  • 50. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 50

Editor's Notes

  1. This is a Title Slide with Picture slide ideal for including a picture with a brief title, subtitle and presenter information. To customize this slide with your own picture: Right-click the slide area and choose Format Background from the pop-up menu. From the Fill menu, click Picture and texture fill. Under Insert from: click File. Locate your new picture and click Insert. To copy the Customized Background from Another Presentation on PC Click New Slide from the Home tab's Slides group and select Reuse Slides. Click Browse in the Reuse Slides panel and select Browse Files. Double-click the PowerPoint presentation that contains the background you wish to copy. Check Keep Source Formatting and click the slide that contains the background you want. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Right-click any selected slide, point to Layout, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates. To copy the Customized Background from Another Presentation on Mac Click New Slide from the Home tab's Slides group and select Insert Slides from Other Presentation… Navigate to the PowerPoint presentation file that contains the background you wish to copy. Double-click or press Insert. This prompts the Slide Finder dialogue box. Make sure Keep design of original slides is unchecked and click the slide(s) that contains the background you want. Hold Shift key to select multiple slides. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Click Layout from the Home tab's Slides group, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates.
  2. This is a Safe Harbor Front slide, one of two Safe Harbor Statement slides included in this template. One of the Safe Harbor slides must be used if your presentation covers material affected by Oracle’s Revenue Recognition Policy To learn more about this policy, e-mail: Revrec-americasiebc_us@oracle.com For internal communication, Safe Harbor Statements are not required. However, there is an applicable disclaimer (Exhibit E) that should be used, found in the Oracle Revenue Recognition Policy for Future Product Communications. Copy and paste this link into a web browser, to find out more information.   http://my.oracle.com/site/fin/gfo/GlobalProcesses/RevRec/Policies/cnt2321729.pdf For all external communications such as press release, roadmaps, PowerPoint presentations, Safe Harbor Statements are required. You can refer to the link mentioned above to find out additional information/disclaimers required depending on your audience.
  3. Give Neil slide 3.
  4. This is a Section Header with Picture slide ideal for including a picture with a brief title and optional subtitle. This slide can also be used as a Q and A slide. To customize this slide with your own picture: Right-click the slide area and choose Format Background from the pop-up menu. From the Fill menu, click Picture and texture fill. Under Insert from: click File. Locate your new picture and click Insert. To copy the Customized Background from Another Presentation on PC Click New Slide from the Home tab's Slides group and select Reuse Slides. Click Browse in the Reuse Slides panel and select Browse Files. Double-click the PowerPoint presentation that contains the background you wish to copy. Check Keep Source Formatting and click the slide that contains the background you want. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Right-click any selected slide, point to Layout, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates. To copy the Customized Background from Another Presentation on Mac Click New Slide from the Home tab's Slides group and select Insert Slides from Other Presentation… Navigate to the PowerPoint presentation file that contains the background you wish to copy. Double-click or press Insert. This prompts the Slide Finder dialogue box. Make sure Keep design of original slides is unchecked and click the slide(s) that contains the background you want. Hold Shift key to select multiple slides. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Click Layout from the Home tab's Slides group, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates.
  5. This is a Section Header with Picture slide ideal for including a picture with a brief title and optional subtitle. This slide can also be used as a Q and A slide. To customize this slide with your own picture: Right-click the slide area and choose Format Background from the pop-up menu. From the Fill menu, click Picture and texture fill. Under Insert from: click File. Locate your new picture and click Insert. To copy the Customized Background from Another Presentation on PC Click New Slide from the Home tab's Slides group and select Reuse Slides. Click Browse in the Reuse Slides panel and select Browse Files. Double-click the PowerPoint presentation that contains the background you wish to copy. Check Keep Source Formatting and click the slide that contains the background you want. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Right-click any selected slide, point to Layout, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates. To copy the Customized Background from Another Presentation on Mac Click New Slide from the Home tab's Slides group and select Insert Slides from Other Presentation… Navigate to the PowerPoint presentation file that contains the background you wish to copy. Double-click or press Insert. This prompts the Slide Finder dialogue box. Make sure Keep design of original slides is unchecked and click the slide(s) that contains the background you want. Hold Shift key to select multiple slides. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Click Layout from the Home tab's Slides group, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates.
  6. LiveSlide Site https://player.vimeo.com/video/89542305
  7. Welcome to try samples there
  8. LiveSlide Site https://www.youtube.com/watch?v=9sJUDx7iEJw&t=21
  9. LiveSlide Site https://www.youtube.com/watch?v=kCpjg50-nvc
  10. Proprietary programming languages Proprietary software Skills not portable from job to job Difficult to build a “portfolio” of work
  11. Welcome to try samples there
  12. This is a Section Header with Picture slide ideal for including a picture with a brief title and optional subtitle. This slide can also be used as a Q and A slide. To customize this slide with your own picture: Right-click the slide area and choose Format Background from the pop-up menu. From the Fill menu, click Picture and texture fill. Under Insert from: click File. Locate your new picture and click Insert. To copy the Customized Background from Another Presentation on PC Click New Slide from the Home tab's Slides group and select Reuse Slides. Click Browse in the Reuse Slides panel and select Browse Files. Double-click the PowerPoint presentation that contains the background you wish to copy. Check Keep Source Formatting and click the slide that contains the background you want. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Right-click any selected slide, point to Layout, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates. To copy the Customized Background from Another Presentation on Mac Click New Slide from the Home tab's Slides group and select Insert Slides from Other Presentation… Navigate to the PowerPoint presentation file that contains the background you wish to copy. Double-click or press Insert. This prompts the Slide Finder dialogue box. Make sure Keep design of original slides is unchecked and click the slide(s) that contains the background you want. Hold Shift key to select multiple slides. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Click Layout from the Home tab's Slides group, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates.
  13. This is a Safe Harbor Front slide, one of two Safe Harbor Statement slides included in this template. One of the Safe Harbor slides must be used if your presentation covers material affected by Oracle’s Revenue Recognition Policy To learn more about this policy, e-mail: Revrec-americasiebc_us@oracle.com For internal communication, Safe Harbor Statements are not required. However, there is an applicable disclaimer (Exhibit E) that should be used, found in the Oracle Revenue Recognition Policy for Future Product Communications. Copy and paste this link into a web browser, to find out more information.   http://my.oracle.com/site/fin/gfo/GlobalProcesses/RevRec/Policies/cnt2321729.pdf For all external communications such as press release, roadmaps, PowerPoint presentations, Safe Harbor Statements are required. You can refer to the link mentioned above to find out additional information/disclaimers required depending on your audience.