datacamp / sqlwhat

https://sqlwhat.readthedocs.io
GNU Affero General Public License v3.0
3 stars 8 forks source link

[SCT] Assess SCT system for new technologies #110

Closed filipsch closed 6 years ago

filipsch commented 7 years ago

@ramnathv commented on Wed Jun 14 2017, and @filipsch updated.

User Story

As a product manager, I want to be able to get a sense of the amount of time and effort required to build SCT systems for new technologies, so that I can prioritize and plan development.

There are several new technologies that we might end up supporting over the next year. A critical element of this is the SCT system. Before starting to invest in a new technology, it would be prudent to get a sense of the time and effort involved in rolling out an SCT system. This would require researching into availability of AST parsers and other available systems.

The new technologies under consideration are:

  1. SQL Databases

    • MySQL
    • Microsoft SQL Server
  2. NoSQL Databases

    • MongoDB
  3. Bash

  4. Git

Comprehensive SCT support for any new technology is bound to be time consuming. We should get a time estimate of different 'milestones' in the SCT development process:

In addition to this:

when researching these things can be very helpful.

ramnathv commented 7 years ago

@filipsch The order of priority is:

  1. SQL databases (MySQL, SQL Server)
  2. Bash/Git
  3. NoSQL (MongoDB)
machow commented 7 years ago

From pairing w/ @richierocks , it sounds like there may be several Rcpp courses. If we want to do anything other than regex based tests of the c++ parts of the code, we should add it to the list. cc ( @ncarchedi )

ramnathv commented 7 years ago

@machow I have asked @richierocks to research how we can test C++ code. Let us wait till he can get back to us with some concrete references and ideas. Till then, this priority order stays.

machow commented 7 years ago

spreadsheet with details.

Some notes:

filipsch commented 7 years ago

Some clarification to @machow's point on MongoDB, after discussing in person:

FYI: with other engineers we've been discussing how to easily support a wide variety of technologies, going from git/bash, to databases, scala etc. The current thinking is that if we set up a simple python package that handles the commands, and can pipe it into language-specific processes, listening to the output, it could be superfast to support new technologies.

machow commented 6 years ago

closing, but feel free to reopen if there is more to dicuss