How should I learn Kelvin?

Navigate your Kelvin journey

Introduction

The Kelvin Legal Data OS is a data stack designed to help you accomplish legal data science tasks and deliver legal technology products and services. Like other data stacks, it is a collection of software and data components designed to work together to solve common problems.

As with any data stack, users generally need to have some familiarity with software development or data science in order to use it effectively. This is because the Kelvin Legal Data OS is not a single software product meant to be used as an end-user application.

Pre-requisites

Kelvin components can be used in multiple ways, including:

  • As Python libraries
  • As command line tools, either locally or via Docker
  • As REST APIs, either via Docker or hosted solutions

Using Kelvin requires familiarity with at least one of these technologies above. If you are not familiar with any of these technologies, then we recommend first learning Python, as it is the most flexible and powerful way to use Kelvin. Python is the most popular programming language in the world and is essentially the lingua franca of data science and AI.

If you need assistance selecting or designing a training program for Python, please contact us for a free consultation.

For Software Engineers with Python Experience

If you are a Python software engineer, then you can use Kelvin as a set of Python libraries. This is the most flexible and powerful way to use Kelvin, as it allows you to integrate Kelvin components into your own applications and workflows. Depending on your license, you may even be able to freely modify and use derivatives of Kelvin components in your own applications.

In addition to the resources available on this site, each Kelvin Python library has its own PyDoc-style documentation distributed with your Kelvin license. In addition to module and method API documentation, this documentation also includes component-specific background and best practice information.

If you are a licensed Kelvin user, you can also generate up-to-date documentation for your licensed components using the kelvin --docs kelvin.{package-name} command line tool. This tool generates a static HTML site that you can host on your own intranet or internal documentation site.

As a Python software engineer, the best way to learn Kelvin is to follow this path:

  1. Read this Introduction section to understand background concepts and terminology.
  2. Explore the list of Python vignettes and demo applications/notebooks available in the Knowledge Base.
  3. Read the PyDoc-style documentation for the Kelvin components you are interested in using.

For Software Engineers without Python Experience

If you are a software engineer without Python experience, then you can use Kelvin as a set of REST APIs or command line tools. This is the most flexible and powerful way to use Kelvin without learning Python, as it allows you to integrate Kelvin components into your own applications and workflows.

Almost all Kelvin components are available as stateless REST APIs. These APIs can be rapidly tested, integrated, and deployed using light-weight Docker containers. Some Kelvin higher-level components also provide state management and persistence, like the Kelvin Document Index, and can dramatically simplify the effort required to build a production-ready application.

In addition to the resources available on this site, each Kelvin API ships with an Swagger UI, OpenAPI/Swagger specification, and JSON Schema. These specifications can be used to generate client libraries in over 40 different languages including Java, C#, JavaScript, and Go.

As a software engineer without Python experience, the best way to learn Kelvin is to follow this path:

  1. Read this Introduction section to understand background concepts and terminology.
  2. Explore the list of API vignettes in the Knowledge Base.
  3. Launch the Swagger UI for the Kelvin API you are interested in using.
  4. Review the sample C# and node.js client libraries (coming soon).

For Data Scientists with Python Experience

If you are a data scientist, then you can use Kelvin through IPython/Jupyter notebooks or Python scripts, just like other common data science libraries like Pandas, NumPy, and scikit-Learn.

In addition to the resources available on this site, each Kelvin Python library has its own PyDoc-style documentation distributed with your Kelvin license. You can access this documentation from within IPython using its built-in help system.

As a data scientist, the best way to learn Kelvin is to follow this path:

  1. Read this Introduction section to understand background concepts and terminology.
  2. Explore the list of Jupyter notebooks available in GitHub.
  3. Read the PyDoc-style documentation for the Kelvin components you are interested in using.

Continue to the next section

Continue to the next section to learn more about core concepts and terminology in the Kelvin Legal Data OS.