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

Bundle example files with ParallaxIDE #133

Closed
PropGit opened this issue Jun 3, 2015 · 17 comments
Closed

Bundle example files with ParallaxIDE #133

PropGit opened this issue Jun 3, 2015 · 17 comments
Assignees
Milestone

Comments

@PropGit
Copy link
Contributor

PropGit commented Jun 3, 2015

From the user's perspective, the app needs to include one or more projects (folders) that includes some ready-made example source programs.

This means that the app needs to look for the existence of the folder on start up, and create it and it's contents if it doesn't exist.

See this post for content

@urbantumbleweed
Copy link
Contributor

I am wondering if there is a design element to this? For example, are the files going to structured as a type of tutorial? If so, are we going to introduce application functionality or will the emphasis be on PBASIC and programming. It seems like final collection of files will be the result of some user testing.

@PropGit
Copy link
Contributor Author

PropGit commented Jun 18, 2015

These are BASIC Stamp source code files with various file extensions (.BS2, .BSE, .BSX, .BSP, and .BPE) that need to be stored in a group which is accessible via the Project/File view. At the most, we may ask for an "Examples" menu item to be added for quick access, but I'm not doing so right now.

We do have tutorials in the form of .PDF and possibly .HTM files that we'd like to include in the future, but this will be handled as a separate issue that will likely have some kind of a UX/UI element to it.

@PropGit PropGit changed the title Bundle example files with ChromeIDE Bundle example files with ParallaxIDE Aug 10, 2015
@urbantumbleweed urbantumbleweed modified the milestone: Sprint 12 Oct 6, 2015
@urbantumbleweed urbantumbleweed self-assigned this Oct 6, 2015
@urbantumbleweed
Copy link
Contributor

@PropGit: There are a number of decisions that must be made before development can begin. You can use the checkboxs to indicate what tasks/questions are completed/resolved.

  • Step 1: Answer discovery questions and define specifications.
    • The actual content to be contained in the examples folder has been created.
    • What interaction (in regards to the example folder) is expected the first time the application is run?
    • What information (if any) about the examples will be available in the help view?
    • What should happen when a user alters an example file and attempts to save?
    • How should a user revert to the original state of the entire example folder?
    • How should a user revert to the original state of an individual example file?
    • Will is be possible for user to delete or override the example folder?
    • If applicable, how should a deleted examples folder be restored?
    • Will it be possible for the contents change overtime, possibly by an educational administrator or course instructor?
  • Step 2: Create Github issues that are related to this issue.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 8, 2015

@urbantumbleweed - great idea with the checkboxes!
I can answer some of these now; others need more work on my part.

What information (if any) about the examples will be available in the help view?

You mean in the on-line help link? Likely none (or very little) initially. We will probably just mention the examples and how to get to them. In later revisions of the on-line help, we'll likely more directly refer to certain examples (which we might expand on later) that naturally go with certain tutorial information contained in the help system.

What should happen when a user alters an example file and attempts to save?

Ideally, we'd like it to be read-only and instead the app could automatically recognize this is the examples project and can suggest to the user that they save their modification to another place. However, in previous discussion you said that "read-only" was very hard to do.

So, it should just let them save over the example file as normal (no code changes needed in Parallax IDE).

How should a user revert to the original state of the entire example folder?

If the app can recognize and treat the example folder as something special; we could provide a UI/UX feature to restore the examples.

Regardless, if the user deletes the example folder, or otherwise renames it, upon next session, the app should see that it is missing and recreate the entire thing as it did on the very first session after install. This is described in Issue #295.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 11, 2015

What interaction (in regards to the example folder) is expected the first time the application is run?

The first time the application is run, after the "updated" prompt that already appears, the app will notify the user via overlay that an examples project has been provided for them. This is described in Issue #295.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 13, 2015

The actual content to be contained in the examples folder has been created.

The first version of examples folder content is here for this release: Examples Project Files

@PropGit
Copy link
Contributor Author

PropGit commented Oct 13, 2015

How should a user revert to the original state of an individual example file?

Ideally, the app could recognize that this is a special "examples" folder and provide a UI/UX feature (ex: right-click > restore example) to restore it.

For now, this is not a feature we will implement. Instead, the only way to restore will be by deleting and restoring the entire examples folder.

Will is be possible for user to delete or override the example folder?

Yes, they can delete the folder (which is one way to lead to restoring it) and then can recreate it and fill it with files; but the future app may still see and treat that folder as a special examples folder.

If applicable, how should a deleted examples folder be restored?

Answered at bottom of this post - the app recognizes it's missing upon next session and restores it as described in Issue #295.

Will it be possible for the contents change overtime, possibly by an educational administrator or course instructor?

Yes, by Parallax staff, not by course instructor. Parallax will need to initiate the update of the repository's contents so next build includes new examples. At this time, we'd like it built into the app, rather than provided via some Internet resource.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 13, 2015

The implementation of this feature will be done in phases, across at least two sprints. Other issues describe the separate related features.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 13, 2015

@urbantumbleweed - Since other issues were created to resolve this, this issue can be closed in this sprint after it is read and understood.

@urbantumbleweed
Copy link
Contributor

@PropGit @phated Here is a listing of issues that I think can be created from this thread. I have included the two issues that were created already (#295 and #296)

  1. Ensure that 'Examples' project exists on session start (Ensure "Examples" project exists on session start #295)
  2. Create example files for the example directory from zip file content. here
  3. Create UX/UI to restore examples (User-initiated restoration of examples #296) ***future enhancement
  4. Psuedo-read-only feature: Saving an example file copies the content state, creates a new file, reverts the example file, and moves to the new file. (Pseudo-read-only Examples project content #307) *** future enhancement
    1. App automatically recognizes the current folder is the is the examples project and can behave differently.(related to above) ***future enhancement
  5. Online help refers to certain examples (Update Online Help to refer to Examples project contents #303) ***future enhancement
  6. Provide the option to hide the examples folder (User should be able to hide the Examples project #304). ***future enhancement
  7. Pull the content from an internet resource (Pull Examples project content from an Internet resource #305). ***future enhancement
  8. Check for available updates (Check for updates to Examples project content #306). ***future enhancement

Please confirm that these are the issues that we should create. If so, let's add them so that in subsequent sprints we can add them.

@phated
Copy link
Contributor

phated commented Oct 14, 2015

@urbantumbleweed it looks like a bunch of these would be enhancements that wouldn't get implemented until a ways into the future. Can you mark those in your list in some way?

@urbantumbleweed
Copy link
Contributor

Updated, let me know what you think.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 15, 2015

@urbantumbleweed @phated
Number 3 - seems to provide a pseudo-read-only feature. Is that right? The intent of this item is to preserve the original example? This begs the question, what happens with unsaved changes?

Number 4 - I don't understand this one. Please explain.

@urbantumbleweed
Copy link
Contributor

Shoot, I moved the issues around and don't know which is Number 4. Please let me know which one it is.

For Number 3, it is the pseudo-read-only feature. If there are unsaved changes then the original example file would remain intact.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 15, 2015

The one I don't understand is "Create CodeMirror documents and example directory from zip file here"

I don't know what CodeMirror documents are or why they apply here, and the example directory is what is being created in Issue #295.

Other than that, I like the others and agree that we should make issues out of them. Would you like me to create them?

@urbantumbleweed
Copy link
Contributor

All that was meant was that we would use the content from the supplied zip archive to create the example files in the application. I have rephrased the issue above because we won't be creating CodeMirror documents but will be creating files on the application file system.

Yes, please create the issues at your convenience.

@PropGit
Copy link
Contributor Author

PropGit commented Oct 16, 2015

I created a number of related issues as requested and also updated the list above to reference them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants