SlideShare a Scribd company logo
GemStone Update
Norm Green
Senior VP & CTO
ESUG 2018
Cagliari, Italy
2
How Many Have A Good
Feel For What
GemStone Is?
How Many Have Actually
Tried GemStone ?
3
So What Is This GemStone Thing?
• A solution to the limitations of traditional Smalltalk:
1. Object space limited to one VM.
2. Object space limited to one host.
3. Object space limited to available RAM.
4. Object changes (since last image save) lost when VM exits.
4
Welcome To The World Of GemStone!
• Object space visible to thousands of VMs on
thousands of machines.
• Object space limited by disk, not RAM.
• Object changes managed by ACID transactions
– Atomic
– Consistent
– Isolated
– Durable
• Object changes guaranteed persistent once
committed.
5
Key Features Of GemStone
• Scalability
– Billions of objects
– Thousands of users.
– Thousands of machines.
– Thousands of transactions per second.
– Terabytes of data.
6
Key Features Of GemStone
• Concurrency
– Multiple user sessions.
– Built-in database transactions.
• Commit
• Abort
• Continue
– Optimistic Concurrency
• Reduced Conflict Collections
– Pessimistic Concurrency
• Object-level read/write locks.
– Namespaces
• Shared and private.
7
Key Features Of GemStone
• Security
– Object-level security.
• User, group, world permissions.
– Login Security
• Traditional User-id / Password
• Single-Sign-On (GSSAPI/Kerberos)
• LDAP
• PAM
• X509 Certificates (new in 3.5)
– Privileged Operations
• #GarbageCollection
• #OtherPassword
• #SystemControl
8
Key Features Of GemStone
• 100% Smalltalk
– All objects, all the time.
– Classes, methods, blocks.
– ANSI-Smalltalk compliant
9
Key Features Of GemStone
• Very Large Collection Support
– Collections of millions of objects.
– Optimized searches using b-tree Indexes:
• Equality Indices (a = b)
• Identity Indices (a == b)
• Reduced Conflict Indicies
10
Key Features Of GemStone
• Interfaces to Other Smalltalks
– VisualWorks® - GemBuilder for VisualWorks®
– VA Smalltalk® - GemBuilder for VA Smalltalk®
– Pharo – tODE, gt4Gemstone
– Jade / Jadeite (Dolphin)
• Interfaces To Other Languages
– C/C++ - GemBuilder for C
– Java – GemBuilder for Java
• Interfaces to Relational Databases
– Oracle – GemConnect for Oracle
– Sybase – GemConnect for Sybase (open source)
11
GemStone Security Features
• Crypto provided by OpenSSL 1.1
• GsSecureSocket
– Secure network connections with SSL/TLS
• Secure Database Backup/Restore
– Encrypted and signed database backup files.
• External Password Authentication
– LDAP – OpenLDAP
• Single Sign On (SSO) Support via MIT Kerberos
– Login with Kerberos or Windows credentials
• Smalltalk support for encryption, decryption, message
digests, HMAC, base64, etc.
12
GemStone Platforms
• Object Server (Database)
– Linux x86_64
– Apple Darwin 64 bit
– Oracle Solaris amd64
– Oracle Solaris SPARC 64 bit
– IBM AIX PowerPC 64 bit
• Object Client
– All of the above, and:
– Microsoft Windows 7, 8, 10
13
Client Smalltalk - GBS Platforms
• Cincom® VisualWorks® 8.2.1, 8.1.1, 7.10.1
– MS Windows 7/8 32 bit
– MS Windows 7/8/10 64 bit
– Linux 32/64 bit
• Instantiations VA Smalltalk™ 8.6.3
– MS Windows 7/8
14
Client Smalltalk – non GBS
• Jade IDE
– Open source IDE for all versions of GemStone
– Written in Dolphin Smalltalk by James Foster
– Microsoft Windows only (or wine on Mac)
– Supports all versions of GemStone
– Rich set of tools
• Browsers
• Inspectors
• Debuggers
– https://github.com/jgfoster/Jade
Jade System Browser
15
16
Client Smalltalk – non GBS
• Jadeite
– Fork of Jade
– Currently in development at GemTalk for a customer in Europe
– Support for source code control with Rowan and Git
– Support for Tonal file format
– Migration tools from other SCM systems
Smalltalk - Powered
Business
18
GemTalk History
• 36 Years of Continuous Operation!
– Founded: 1982 (as Servio Logic Corporation)
– First Version of GemStone Shipped: 1986
– Name Changed from Servio to GemStone: 1995
– Acquired by Brokat: July 2000
– Management buyout: June 2001
– Acquired by VMware: May 2010
– Acquired by GemTalk Systems: May 2013
19
GemStone Powered Business
Container Shipping Vertical
- since 2016 - since 2000
20
Financial and Trading Vertical
Kapital is the world’s leading derivatives trading and
management system – since 1993
DBO is a very large precious metals trading and settlement
system.
- since 1990
ICE is the world’s fastest growing electronic trading exchange
– since 1994
MAS – Investor call management workflow system. – since
1995
GemStone Powered Business
21
Manufacturing Vertical
Works application for semiconductor manufacturing
– since 1991
Semiconductor manufacturing software – since 1998
GemStone Powered Business
Manufacturing software – since 2012
Adhesives Manufacturing – since 1997
22
Utilities Vertical
TCMS II- Trouble Call Management System V2
Power Billing – Customer Billing Application – since 1992
GemStone Powered Business
23
Telecommunications Vertical
Telecom Service Provisioning – since 2004
GemStone Powered Business
CONDIS – Inventory and cable management – since 1993
Government Vertical
Border Security – since 1996
Visa Processing – since 2004
Dutch Agricultural Institute – agriculture data collection
– since 1998
GemStone Powered Business
25
GemTalk Partners
26
GemTalk In the Community…
▪ Conferences and Groups
▪ Pharo Consortium (Industrial Member)
▪ ESUG (Platinum Sponsor)
▪ FAST (Platinum Sponsor)
Product
Roadmap
28
Trigger Warning!
I will be using the “C” word
29
Buzzwords I will not use…
• Disrupt
• Blockchain
• Cryptocurrency
• ICO (Initial Coin Offering)
• Bitcoin
• Ecosystem
• Guru / Ninja
• Unicorn
• Big Data
• Data Scientist
• IoT (Internet of Things)
30
Server Release Pipeline
• 3.3.x (previous release)
– 3.3.8, released on 8/28
• 3.4.x (current release)
– v3.4.2, released on 7/31
• v3.5 (Next Release)
– December 2018
31
GBS Release Pipeline
• GBS 8.3
– Released on 10/2017
– VisualWorks 7.10.1, 8.1.1, 8.2.1
• GBS 8.3.1
– Planned release: December 2018
– VisualWorks 8.3.1 Support
32
Version 3.5
• Cloudifying GemStone
– X509 Certificate security for all connections
• Login with certificate and private key instead of ID/password
– Cloud/Firewall-friendly network connections
• All connections are made into cloud, never from the cloud
– Tolerance for high latency networks (aka the
Internet)
– Object Filtering
• Restricts which objects may/may not go to the cloud
3.5 Cloud Architecture
33
Database Server
Stone
ST VM
NetLDI
Gem
Host Agent
Cache
Disk
Cloud Server
34
Version 3.5
• Stand-alone (Solo) Smalltalk Execution
– No running database required!
– Execute Smalltalk scripts from the command line
topaz> set solologin on
topaz> login
[Info]: Read-Only Repository: /export/moop2/users/normg/product/bin/extent0.dbf
successful Solo login
send GsSecureSocket httpsClientExampleForHost: 'www.google.com'
certificateDirectory: '/etc/ssl/certs'
Secure connection established
Current cipher in use is: ECDHE-RSA-CHACHA20-POLY1305 TLSv1.2 Kx=ECDH Au=RSA
Enc=CHACHA20/POLY1305(256) Mac=AEAD
Sending a 40 byte request to client: GET / HTTP/1.1 Host: www.google.com
Waiting for response from server...finished reading 1397 bytes from server.
HTTP/1.1 200 OK
35
Version 3.5
• OpenSSL 1.1.1
– TLS 1.3
– SHA3
• Base Image Additions
– Rowan
– FileTree
– Zinc (partial)
– <your suggestions here>
36
Version 3.6 and Beyond…
Smalltalk is our “Cowbell”
37
More Cowbell…
• Native Support for Pharo is coming!
– GemBuilder for Pharo (or something…)
– Date: TBD
+
38
GemStone Licensing Models
• Community Editions
– Free (as in beer) for any use (including commercial)
• Perpetual
– Buy once, own it forever
• Annual Subscription
– Pay annually, cancel any time.
• Value Added Reseller (VAR)
– Percentage of royalties
39
As requested at ESUG 2017….
• GBS Added To Community Edition!
– GemBuilder for Cincom® VisualWorks ®
– GemBuilder for Instantiations VA Smalltalk™
• Download from:
ftp.gemtalksystems.com/pub/GBS
40
GemStone Community Edition
Starter Limited Full Extended SPC Extended CPU Extended Full
License Kind Perpetual Subscription Subscription Subscription Subscription Subscription
Cores 2 2 2 2 4 4
SPC 1 G 2 G 2G 4G 2G 4G
Gems 10 20 Unlimited Unlimited Unlimited Unlimited
Disk 10G 50G Unlimited Unlimited Unlimited Unlimited
Development DB Unlimited Unlimited Unlimited Unlimited Unlimited Unlimited
Production DB 1 2 Unlimited Unlimited Unlimited Unlimited
Tech Support Community Community 5 tickets 10 tickets 10 tickets 20 tickets
Price Free Free $1500/yr $3000/yr $3000/yr $6000/yr
Distribution With Product Email addr Sales Sales Sales Sales
Source: http://gemtalksystems.com/index.php/lc-licensing/
41
Support Models
• Web Support (24 x 7)
– https://techsupport.gemtalksystems.com
– Help requests processed 8 am – 5 pm Pacific Time
• Emergency 24 x 7 Support
– Available for a premium
– GemTalk provides an emergency phone number
– Call back to the customer within 15 minutes
• List Server Support
– glass@lists.gemtalksystems.com
• GLASS
– GemStone-Smalltalk@lists.gemtalksystems.com
• All things GemStone
42
“GemStone is too expensive”
• True 15 years ago, not true today.
• See Also:
–Vaccines cause autism
–Fox News is News
Questions?
43
GemTalk Systems LLC
15220 NW Greenbrier Pkwy., Suite 240
Beaverton, Oregon, 97006
Mobile: (503) 804-2041
norm.green@gemtalksystems.com
Norman R. Green
Senior VP & Chief Technical Officer
www.gemtalksystems.com
®

More Related Content

Similar to Gemstone RoadMap

Ethereum Devcon1 Report (summary writing)
Ethereum Devcon1 Report (summary writing)Ethereum Devcon1 Report (summary writing)
Ethereum Devcon1 Report (summary writing)
Tomoaki Sato
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Vinoth Rajagopalan
 
ODSA Sub-Project Launch
ODSA Sub-Project LaunchODSA Sub-Project Launch
ODSA Sub-Project Launch
ODSA Workgroup
 
ODSA Sub-Project Launch
 ODSA Sub-Project Launch ODSA Sub-Project Launch
ODSA Sub-Project Launch
Netronome
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
Ruslan Meshenberg
 
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20....Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
Javier García Magna
 
Mersive Solstice Appliance
Mersive Solstice ApplianceMersive Solstice Appliance
Mersive Solstice Appliance
Paul Richards
 
Abc beagleboard Getting To Know It
Abc beagleboard Getting To Know ItAbc beagleboard Getting To Know It
Abc beagleboard Getting To Know It
rviolachurch
 
14 scaleabilty wics
14 scaleabilty wics14 scaleabilty wics
14 scaleabilty wics
ashish61_scs
 
Optimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge ComputingOptimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge Computing
Rebekah Rodriguez
 
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
The Linux Foundation
 
Building Scalable Applications using Pivotal Gemfire/Apache Geode
Building Scalable Applications using Pivotal Gemfire/Apache GeodeBuilding Scalable Applications using Pivotal Gemfire/Apache Geode
Building Scalable Applications using Pivotal Gemfire/Apache Geode
imcpune
 
WebRTC Browsers n Stacks Implementation differences
WebRTC Browsers n Stacks Implementation differencesWebRTC Browsers n Stacks Implementation differences
WebRTC Browsers n Stacks Implementation differences
Alexandre Gouaillard
 
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp
 
Summit 16: Deploying Virtualized Mobile Infrastructures on Openstack
Summit 16: Deploying Virtualized Mobile Infrastructures on OpenstackSummit 16: Deploying Virtualized Mobile Infrastructures on Openstack
Summit 16: Deploying Virtualized Mobile Infrastructures on Openstack
OPNFV
 
LCU13: George Grey Keynote LCU13
LCU13: George Grey Keynote LCU13LCU13: George Grey Keynote LCU13
LCU13: George Grey Keynote LCU13
Linaro
 
Gemstone 64 Product Overview
Gemstone 64 Product OverviewGemstone 64 Product Overview
Gemstone 64 Product Overview
ESUG
 
Dimension Data Cloud Business Unit - Solution Offering
Dimension Data Cloud Business Unit - Solution OfferingDimension Data Cloud Business Unit - Solution Offering
Dimension Data Cloud Business Unit - Solution Offering
RifaHaryadi
 
Accelerating Innovation from Edge to Cloud
Accelerating Innovation from Edge to CloudAccelerating Innovation from Edge to Cloud
Accelerating Innovation from Edge to Cloud
Rebekah Rodriguez
 
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Alan Quayle
 

Similar to Gemstone RoadMap (20)

Ethereum Devcon1 Report (summary writing)
Ethereum Devcon1 Report (summary writing)Ethereum Devcon1 Report (summary writing)
Ethereum Devcon1 Report (summary writing)
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
 
ODSA Sub-Project Launch
ODSA Sub-Project LaunchODSA Sub-Project Launch
ODSA Sub-Project Launch
 
ODSA Sub-Project Launch
 ODSA Sub-Project Launch ODSA Sub-Project Launch
ODSA Sub-Project Launch
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
 
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20....Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
 
Mersive Solstice Appliance
Mersive Solstice ApplianceMersive Solstice Appliance
Mersive Solstice Appliance
 
Abc beagleboard Getting To Know It
Abc beagleboard Getting To Know ItAbc beagleboard Getting To Know It
Abc beagleboard Getting To Know It
 
14 scaleabilty wics
14 scaleabilty wics14 scaleabilty wics
14 scaleabilty wics
 
Optimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge ComputingOptimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge Computing
 
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
XPDS14: OpenXT - Security and the Properties of a Xen Virtualisation Platform...
 
Building Scalable Applications using Pivotal Gemfire/Apache Geode
Building Scalable Applications using Pivotal Gemfire/Apache GeodeBuilding Scalable Applications using Pivotal Gemfire/Apache Geode
Building Scalable Applications using Pivotal Gemfire/Apache Geode
 
WebRTC Browsers n Stacks Implementation differences
WebRTC Browsers n Stacks Implementation differencesWebRTC Browsers n Stacks Implementation differences
WebRTC Browsers n Stacks Implementation differences
 
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
 
Summit 16: Deploying Virtualized Mobile Infrastructures on Openstack
Summit 16: Deploying Virtualized Mobile Infrastructures on OpenstackSummit 16: Deploying Virtualized Mobile Infrastructures on Openstack
Summit 16: Deploying Virtualized Mobile Infrastructures on Openstack
 
LCU13: George Grey Keynote LCU13
LCU13: George Grey Keynote LCU13LCU13: George Grey Keynote LCU13
LCU13: George Grey Keynote LCU13
 
Gemstone 64 Product Overview
Gemstone 64 Product OverviewGemstone 64 Product Overview
Gemstone 64 Product Overview
 
Dimension Data Cloud Business Unit - Solution Offering
Dimension Data Cloud Business Unit - Solution OfferingDimension Data Cloud Business Unit - Solution Offering
Dimension Data Cloud Business Unit - Solution Offering
 
Accelerating Innovation from Edge to Cloud
Accelerating Innovation from Edge to CloudAccelerating Innovation from Edge to Cloud
Accelerating Innovation from Edge to Cloud
 
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
 

More from ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
ESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
ESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

More from ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Recently uploaded

Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 

Recently uploaded (20)

Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 

Gemstone RoadMap

  • 1. GemStone Update Norm Green Senior VP & CTO ESUG 2018 Cagliari, Italy
  • 2. 2 How Many Have A Good Feel For What GemStone Is? How Many Have Actually Tried GemStone ?
  • 3. 3 So What Is This GemStone Thing? • A solution to the limitations of traditional Smalltalk: 1. Object space limited to one VM. 2. Object space limited to one host. 3. Object space limited to available RAM. 4. Object changes (since last image save) lost when VM exits.
  • 4. 4 Welcome To The World Of GemStone! • Object space visible to thousands of VMs on thousands of machines. • Object space limited by disk, not RAM. • Object changes managed by ACID transactions – Atomic – Consistent – Isolated – Durable • Object changes guaranteed persistent once committed.
  • 5. 5 Key Features Of GemStone • Scalability – Billions of objects – Thousands of users. – Thousands of machines. – Thousands of transactions per second. – Terabytes of data.
  • 6. 6 Key Features Of GemStone • Concurrency – Multiple user sessions. – Built-in database transactions. • Commit • Abort • Continue – Optimistic Concurrency • Reduced Conflict Collections – Pessimistic Concurrency • Object-level read/write locks. – Namespaces • Shared and private.
  • 7. 7 Key Features Of GemStone • Security – Object-level security. • User, group, world permissions. – Login Security • Traditional User-id / Password • Single-Sign-On (GSSAPI/Kerberos) • LDAP • PAM • X509 Certificates (new in 3.5) – Privileged Operations • #GarbageCollection • #OtherPassword • #SystemControl
  • 8. 8 Key Features Of GemStone • 100% Smalltalk – All objects, all the time. – Classes, methods, blocks. – ANSI-Smalltalk compliant
  • 9. 9 Key Features Of GemStone • Very Large Collection Support – Collections of millions of objects. – Optimized searches using b-tree Indexes: • Equality Indices (a = b) • Identity Indices (a == b) • Reduced Conflict Indicies
  • 10. 10 Key Features Of GemStone • Interfaces to Other Smalltalks – VisualWorks® - GemBuilder for VisualWorks® – VA Smalltalk® - GemBuilder for VA Smalltalk® – Pharo – tODE, gt4Gemstone – Jade / Jadeite (Dolphin) • Interfaces To Other Languages – C/C++ - GemBuilder for C – Java – GemBuilder for Java • Interfaces to Relational Databases – Oracle – GemConnect for Oracle – Sybase – GemConnect for Sybase (open source)
  • 11. 11 GemStone Security Features • Crypto provided by OpenSSL 1.1 • GsSecureSocket – Secure network connections with SSL/TLS • Secure Database Backup/Restore – Encrypted and signed database backup files. • External Password Authentication – LDAP – OpenLDAP • Single Sign On (SSO) Support via MIT Kerberos – Login with Kerberos or Windows credentials • Smalltalk support for encryption, decryption, message digests, HMAC, base64, etc.
  • 12. 12 GemStone Platforms • Object Server (Database) – Linux x86_64 – Apple Darwin 64 bit – Oracle Solaris amd64 – Oracle Solaris SPARC 64 bit – IBM AIX PowerPC 64 bit • Object Client – All of the above, and: – Microsoft Windows 7, 8, 10
  • 13. 13 Client Smalltalk - GBS Platforms • Cincom® VisualWorks® 8.2.1, 8.1.1, 7.10.1 – MS Windows 7/8 32 bit – MS Windows 7/8/10 64 bit – Linux 32/64 bit • Instantiations VA Smalltalk™ 8.6.3 – MS Windows 7/8
  • 14. 14 Client Smalltalk – non GBS • Jade IDE – Open source IDE for all versions of GemStone – Written in Dolphin Smalltalk by James Foster – Microsoft Windows only (or wine on Mac) – Supports all versions of GemStone – Rich set of tools • Browsers • Inspectors • Debuggers – https://github.com/jgfoster/Jade
  • 16. 16 Client Smalltalk – non GBS • Jadeite – Fork of Jade – Currently in development at GemTalk for a customer in Europe – Support for source code control with Rowan and Git – Support for Tonal file format – Migration tools from other SCM systems
  • 18. 18 GemTalk History • 36 Years of Continuous Operation! – Founded: 1982 (as Servio Logic Corporation) – First Version of GemStone Shipped: 1986 – Name Changed from Servio to GemStone: 1995 – Acquired by Brokat: July 2000 – Management buyout: June 2001 – Acquired by VMware: May 2010 – Acquired by GemTalk Systems: May 2013
  • 19. 19 GemStone Powered Business Container Shipping Vertical - since 2016 - since 2000
  • 20. 20 Financial and Trading Vertical Kapital is the world’s leading derivatives trading and management system – since 1993 DBO is a very large precious metals trading and settlement system. - since 1990 ICE is the world’s fastest growing electronic trading exchange – since 1994 MAS – Investor call management workflow system. – since 1995 GemStone Powered Business
  • 21. 21 Manufacturing Vertical Works application for semiconductor manufacturing – since 1991 Semiconductor manufacturing software – since 1998 GemStone Powered Business Manufacturing software – since 2012 Adhesives Manufacturing – since 1997
  • 22. 22 Utilities Vertical TCMS II- Trouble Call Management System V2 Power Billing – Customer Billing Application – since 1992 GemStone Powered Business
  • 23. 23 Telecommunications Vertical Telecom Service Provisioning – since 2004 GemStone Powered Business CONDIS – Inventory and cable management – since 1993
  • 24. Government Vertical Border Security – since 1996 Visa Processing – since 2004 Dutch Agricultural Institute – agriculture data collection – since 1998 GemStone Powered Business
  • 26. 26 GemTalk In the Community… ▪ Conferences and Groups ▪ Pharo Consortium (Industrial Member) ▪ ESUG (Platinum Sponsor) ▪ FAST (Platinum Sponsor)
  • 28. 28 Trigger Warning! I will be using the “C” word
  • 29. 29 Buzzwords I will not use… • Disrupt • Blockchain • Cryptocurrency • ICO (Initial Coin Offering) • Bitcoin • Ecosystem • Guru / Ninja • Unicorn • Big Data • Data Scientist • IoT (Internet of Things)
  • 30. 30 Server Release Pipeline • 3.3.x (previous release) – 3.3.8, released on 8/28 • 3.4.x (current release) – v3.4.2, released on 7/31 • v3.5 (Next Release) – December 2018
  • 31. 31 GBS Release Pipeline • GBS 8.3 – Released on 10/2017 – VisualWorks 7.10.1, 8.1.1, 8.2.1 • GBS 8.3.1 – Planned release: December 2018 – VisualWorks 8.3.1 Support
  • 32. 32 Version 3.5 • Cloudifying GemStone – X509 Certificate security for all connections • Login with certificate and private key instead of ID/password – Cloud/Firewall-friendly network connections • All connections are made into cloud, never from the cloud – Tolerance for high latency networks (aka the Internet) – Object Filtering • Restricts which objects may/may not go to the cloud
  • 33. 3.5 Cloud Architecture 33 Database Server Stone ST VM NetLDI Gem Host Agent Cache Disk Cloud Server
  • 34. 34 Version 3.5 • Stand-alone (Solo) Smalltalk Execution – No running database required! – Execute Smalltalk scripts from the command line topaz> set solologin on topaz> login [Info]: Read-Only Repository: /export/moop2/users/normg/product/bin/extent0.dbf successful Solo login send GsSecureSocket httpsClientExampleForHost: 'www.google.com' certificateDirectory: '/etc/ssl/certs' Secure connection established Current cipher in use is: ECDHE-RSA-CHACHA20-POLY1305 TLSv1.2 Kx=ECDH Au=RSA Enc=CHACHA20/POLY1305(256) Mac=AEAD Sending a 40 byte request to client: GET / HTTP/1.1 Host: www.google.com Waiting for response from server...finished reading 1397 bytes from server. HTTP/1.1 200 OK
  • 35. 35 Version 3.5 • OpenSSL 1.1.1 – TLS 1.3 – SHA3 • Base Image Additions – Rowan – FileTree – Zinc (partial) – <your suggestions here>
  • 36. 36 Version 3.6 and Beyond… Smalltalk is our “Cowbell”
  • 37. 37 More Cowbell… • Native Support for Pharo is coming! – GemBuilder for Pharo (or something…) – Date: TBD +
  • 38. 38 GemStone Licensing Models • Community Editions – Free (as in beer) for any use (including commercial) • Perpetual – Buy once, own it forever • Annual Subscription – Pay annually, cancel any time. • Value Added Reseller (VAR) – Percentage of royalties
  • 39. 39 As requested at ESUG 2017…. • GBS Added To Community Edition! – GemBuilder for Cincom® VisualWorks ® – GemBuilder for Instantiations VA Smalltalk™ • Download from: ftp.gemtalksystems.com/pub/GBS
  • 40. 40 GemStone Community Edition Starter Limited Full Extended SPC Extended CPU Extended Full License Kind Perpetual Subscription Subscription Subscription Subscription Subscription Cores 2 2 2 2 4 4 SPC 1 G 2 G 2G 4G 2G 4G Gems 10 20 Unlimited Unlimited Unlimited Unlimited Disk 10G 50G Unlimited Unlimited Unlimited Unlimited Development DB Unlimited Unlimited Unlimited Unlimited Unlimited Unlimited Production DB 1 2 Unlimited Unlimited Unlimited Unlimited Tech Support Community Community 5 tickets 10 tickets 10 tickets 20 tickets Price Free Free $1500/yr $3000/yr $3000/yr $6000/yr Distribution With Product Email addr Sales Sales Sales Sales Source: http://gemtalksystems.com/index.php/lc-licensing/
  • 41. 41 Support Models • Web Support (24 x 7) – https://techsupport.gemtalksystems.com – Help requests processed 8 am – 5 pm Pacific Time • Emergency 24 x 7 Support – Available for a premium – GemTalk provides an emergency phone number – Call back to the customer within 15 minutes • List Server Support – glass@lists.gemtalksystems.com • GLASS – GemStone-Smalltalk@lists.gemtalksystems.com • All things GemStone
  • 42. 42 “GemStone is too expensive” • True 15 years ago, not true today. • See Also: –Vaccines cause autism –Fox News is News
  • 43. Questions? 43 GemTalk Systems LLC 15220 NW Greenbrier Pkwy., Suite 240 Beaverton, Oregon, 97006 Mobile: (503) 804-2041 norm.green@gemtalksystems.com Norman R. Green Senior VP & Chief Technical Officer www.gemtalksystems.com ®