Comments (6)
Hi again! Sorry for the lead time here.
We don't have to worry too much at this early stage about API stability because no one is using it. Later, once we start attracting users, it is much harder to change the API without breaking things for people.
And yes... friction points are exactly along those lines.
I wrote the contents of the initial commit over the course of two weeks, IIRC. During that time I didn't use version control (.... ahem!).
from formulaic.
Hi Reilley! Thanks for reaching out!
Documentation is underway, but when it lands having someone read over it to make sure it makes sense and is correct would be hugely valuable. Likewise, if you start playing with the API and notice any friction points, now is the time to surface them (because we don't have to worry about API stability yet). Bug reporting is also helpful, but I'm less worried about bugs at this point than I am about getting the API right (we can always fix bugs, but changing the API frequently hurts users).
As for unit tests, we're at 100% coverage, but if you find something that breaks in user testing that is not represented by a test, feel free to open an issue or a PR, and we'll see if we cannot plug the hole!
from formulaic.
I'd love to read over the docs when the time comes!
Why is it that you don't have to start worrying about API stability yet? Does it have to do with releases? I'll start playing around with it this evening/tomorrow morning.
An API friction point, for example, could be confusing function names, confusing structure, or things along those lines, yeah?
I noticed that your first commit was very large, is that because those files were simply taken from elsewhere?
from formulaic.
Not a problem!
Gotcha. So now is the time for big changes if they are needed. I am going to spend a couple of hours right now learning and will report back with questions/comments!
I'm not trying to be snarky, but how do you know that you will attract people? Is it because this sort of software is in demand?
Why no VC early on?
What does "high-level" vs "low-level" mean? Does a high level function have more more stuff abstracted away and therefore less stuff for the user to worry about?
from formulaic.
Not a problem!
Gotcha. So now is the time for big changes if they are needed. I am going to spend a couple of hours right now learning and will report back with questions/comments!
I'm not trying to be snarky, but how do you know that you will attract people? Is it because this sort of software is in demand?
I don't! I wrote it for myself and my needs, due to limitations in existing implementations. Time will tell whether people care about the improvements to the status quo here.
Why no VC early on?
This is a personal/hobby project that is motivated by real world use cases at my workplace and (presumably others). I work on it in my spare time, but I'm not planning to make a living off of this.
What does "high-level" vs "low-level" mean? Does a high level function have more more stuff abstracted away and therefore less stuff for the user to worry about?
"high-level" is more abstracted APIs (further/higher away from implementation details). "low-level" is the opposite: it's the nitty-gritty of how things are implemented.
from formulaic.
Thank you for the clarification, Matt!
from formulaic.
Related Issues (20)
- Query the number of formula terms HOT 5
- Sparse matrix creation is slow HOT 2
- Explicitly passed terms should be sorted like parsed terms. HOT 4
- Make a `Q` operator that behaves like patsy's Q. HOT 3
- Feature Request: circular transform HOT 3
- bug: incorrect metadata license file HOT 2
- Allow interaction with yourself HOT 1
- Test failures: `AssertionError: approx() is not supported in a boolean context.` HOT 4
- drop both columns in dependent variable and design matrix when missings occur HOT 5
- DOC: Explicitly mention support for multiple variables on the left hand side HOT 3
- Terms not being evaluated in get_model_matrix() HOT 2
- 17 tests fail: ModuleNotFoundError: No module named 'interface_meta' HOT 2
- How can the encoding choices for one dataset be reused for another? HOT 3
- Intercept term breaks when RHS formula begins with a parentheses HOT 2
- How do I set the reference level for a categorical term? HOT 4
- Support for sympy >= 1.10 HOT 3
- ENH: Preserve variable order as they appear in formulas HOT 5
- 2 tests fail HOT 1
- Interaction between two categorical covariates sometimes switches order, causing error HOT 3
- Intercept is not added after being removed HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from formulaic.