Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Matrix & Vector Modes #517

Open
7 tasks
michael-hawker opened this issue May 22, 2019 · 6 comments
Open
7 tasks

Add Matrix & Vector Modes #517

michael-hawker opened this issue May 22, 2019 · 6 comments
Labels
Enhancement help wanted Issues identified as good community contribution opportunities needs spec Pri: 2

Comments

@michael-hawker
Copy link

michael-hawker commented May 22, 2019

Problem Statement
Matrix and Vector math can be complicated and hard, but is a vital thing to understand in college-level math for various fields of study, especially computer graphics and artificial intelligence. Having a calculator to help with basic calculations can help users focus on the results and understanding than tedium after initial skills have been learned in class. By making matrices/vector math more discoverable and easier to process, we can make the skills required for these advanced fields more approachable.

Evidence or User Insights
There are many online matrix calculators available. Having one available inbox that works offline would be a great benefit, just like #338.

Inspired by this comment on #512.

Proposal

I think these modes are combined as matrix math can lead to a vector which then may want to be manipulated. They could also have similar interfaces to be shared, so it could make sense for them to overlap. The keyboard should be contextual anyway and only highlight/enable operations that make sense for the current state of the calculator.

This mode should allow a user to visually set the vector/matrix/matrices size(s) and click with in each cell to enter values (or use number keys and return to enter a value and then proceed to next empty cell or arrow keys to navigate cells). They should be able to see a single matrix or two matrices to perform operations involving 1 or 2 matrices.

After performing an operation, the matrix display should update to show the resulting matrix/value. The user should be able to click within their history to also restore the original matrices states from before the operation (i.e. to go back a step and re-perform a different operation).

Goals

  • Perform single matrix operations (Transpose, Inverse, Rank, Determinate, Power, etc...)
  • Perform two matrix operations (Add, Subtract, Multiple, Divide)
  • Work with Vectors and dot/cross product as well
  • Able to restore working state from History
  • Click in matrix cell to modify value
  • Use arrow keys to navigate matrix cells
  • Enter matrix values efficiently with keyboard

Non-Goals

Low-Fidelity Concept

image

Requested Assignment
I'm just suggesting this idea. I don't want to implement it.

@ghost ghost added this to Pitch in Feature Tracking May 22, 2019
@grochocki
Copy link
Contributor

Thanks for the feature suggestion! This is really well thought-out, and we really appreciate it. Let's keep this idea open for discussion so the community has the chance to provide feedback. Check out our New Feedback Process for more info on the user-centered process we follow for new feature development.

@ghost ghost moved this from Pitch to Pitch (Needs Review) in Feature Tracking May 22, 2019
@MicrosoftIssueBot
Copy link
Collaborator

This is your friendly Microsoft Issue Bot. I've seen this issue come in and have gone to tell a human about it.

@sirisian
Copy link

A vector projection operator would be nice also.

Also as an ad-hoc suggestion the UX for inserting a matrix and vector should use the Word insert table control where the user clicks insert Matrix/Vector and sees:

image

This allows one to create a matrix or vector of any standard size in two clicks. Ideally though the insert matrix/vector view would always be visible in the matrix/vector mode and a single click would be required. (The first element would be focused so the user could then type the numbers rapidly after creating a matrix or vector.

@ghost ghost moved this from Pitch (Needs Review) to Planning in Feature Tracking Jul 29, 2019
@ghost
Copy link

ghost commented Jul 29, 2019

We reviewed the pitch and would love to explore this idea further! The pitch is a great start, but there are still some open questions. I am moving this issue into planning to iron out some of those details and I created calculator-specs/matrix to track progress. A human will follow up with some feedback on your pitch shortly. Keep in mind that not all ideas that make it into the planning phase are guaranteed to make it to release. For more information on next steps, check out our spec workflow.

@ghost ghost removed the needs pitch review label Jul 29, 2019
@grochocki
Copy link
Contributor

Love the idea, but think it may be fairly ambitious depending on what features we include (e.g., will it show you solution steps?). Lots to think through in terms of UX.

@grochocki grochocki added the help wanted Issues identified as good community contribution opportunities label Jul 29, 2019
@ghost
Copy link

ghost commented Aug 4, 2020

@grochocki It would also be nice to have support for plotting vectors of the form r = xi + yj + zk in the graphing calculator. High school students would find it really helpful.

Should I open a separate issue for that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement help wanted Issues identified as good community contribution opportunities needs spec Pri: 2
Projects
Development

No branches or pull requests

4 participants