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

How to package and distribute symbols? #36

Open
SteveALee opened this issue Feb 14, 2019 · 35 comments
Open

How to package and distribute symbols? #36

SteveALee opened this issue Feb 14, 2019 · 35 comments

Comments

@SteveALee
Copy link
Contributor

SteveALee commented Feb 14, 2019

The dimensions to this are:

  • Symbol Format(s)
  • Online access - ie URL
  • Packaged and distributable formats - eg zip with known directory structure
  • Symbol ID (eg URI, GUUID)
  • Meta data including name
  • Internationalisation
  • Localisation
  • Concept coding
  • Compatability and use of Open Board Format(s)
  • Propriatry AAC device formats
  • Selecting, grouping and sharing symbols

I feel we should be doing a requirements analysis here to best support users of the symbols. We currently just provide a big zip of SVG symbols which might suite developers but not others.

Who are our users?

  • AAC developers - Add to their project. Want local copy? API? [Current implicit focus]
  • SALTs (SLPs) - less technical - printing on boards or add to AAC tools.
  • Carer/supporters? - probaby only want to print one or 2 symbols.
  • Others?

Some History
In Straight Street days the symbols were really aimed at SALTs and it was hope to encourage more devs, especially in innovative, open and online applications. Originally the symbols were provided in fixed resolution formats of various sizes and WMF (now fortunately obsolete and somewhat replaced by SVG). The source Adobe Illustrator files were not published and WMF was full of bugs and Windows only (not a problem at the time). A visitor to StrStr could select a set of symbols and download them in a ZIP. These seemed to cover most uses cases at the time, but expectations of users was low IMHO.

I pushed SVG format as being an ideal scalable technology despite very limited support at the time. Since then, the need for responsive designs to support widely varying screen sizes has led to much better SVG format on the web and other places. I'm not sure about iOS.

@ghost
Copy link

ghost commented Feb 14, 2019

For #AAC systems search by keyword for individual symbols is vital. If I want to assign a symbol to a button or print it I must be able to search. We use printed symbols for picture schedules and the same symbols for corresponding buttons in software.

@SteveALee
Copy link
Contributor Author

@josephoconnor

So what would the user story be for you when interacting with mulberry directly to obtain symbols? I dont't mean finding Mulberry symbols already loaded in an AAC device as tha tis more a developers requirment for us.

How about:

As a supporter I want to search for Mulberry symbols that I later print or add to an AAC device so that I can enance the vocabulary of a user

We had that in the old StrStr site and @gavinhenderson has ideas which we are tracking in #31

@ghost
Copy link

ghost commented Feb 14, 2019

Entire symbol libraries are loaded into #AAC devices to provide instant access. When we first took Siobhan to Ireland on the first morning we were having a full Irish and Siobhan asked for hot dog. We made a new button for sausage. No time to download.

@ghost
Copy link

ghost commented Feb 14, 2019

As a supporter I will load the Mulberry library into the AAC device to provide instant access to all symbols.

@gavinhenderson
Copy link
Contributor

As an AAC Dev I would rather have a local copy that is in a managed package. Means I can use it locally but also not have to worry about a cumbersome update process if I want access to any newly added symbols. Even if I have all the symbols locally when i come to build my site every symbol I don't use will be tree shaken out so its not going to add weight to my build.

Although, on the flip side, if I want the symbols to be customized by the user I would like an API so they can search all symbols and not need them sent down with the page. However, I would personally rather implement this API for my own system each time than using a generalised one.

@SteveALee
Copy link
Contributor Author

@josephoconnor thanks for the clarification - So you only really search for and use with the symbols directly in the AAC device? There's probably plenty of work to be done to allow a search to be effective accross a range of symbol sets. Hopefully OpenAAC might help, but most are proprietary and might not want to collaborate.

I guess you might want to be involved in new symbol requests and reviews at Mulberry?

@SteveALee
Copy link
Contributor Author

@gavinhenderson Yes a npm package seems like a priority. node_modules are massively bloaty anyway so the full Mulberry symbol set will hardly be noticed :)

I'm not sure how tree shacking will work with the symbols. though it is fairly mature these days in key bundlers.

The npm module will need a few utility functions to provide easy access - so we'll still need to define an API! Just not RESTful.

@SteveALee
Copy link
Contributor Author

@gavinhenderson I agree about rolling your own API. Since I created the original API, developing and hosting APIs has become almost trivial and low cost (free), eg with node serverless options.

@SteveALee SteveALee changed the title How do people use symbols and so want to access them How do you use the symbols and want to access them? Mar 15, 2019
@gavinhenderson
Copy link
Contributor

Hey @SteveALee, what the next step from this?

Personally I see this spinning into different repos:

  • One for symbol maintenance and distribution (via NPM)
  • Another for a website/platform that uses the symbol package from NPM and makes them searchable as well as allowing a request for a new symbol (might open an issue on the first repo?)

@SteveALee
Copy link
Contributor Author

SteveALee commented Mar 19, 2019

Thanks for asking - I'll give it thought. Maybe have a chat next week?

Yes, the original single repo was a 'get it working quick' when only the symbols and a web page. I don't see point of splitting Web from symbol management.

I lean towards static hosting where possible, perhaps with serverless backend when required. ie JAMStack.

It would be useful to get better idea of how people will use them - eg NPM good for devs but not carers / SALTs.

@ghost
Copy link

ghost commented Mar 20, 2019 via email

@SteveALee
Copy link
Contributor Author

Thanks, @josephoconnor.

One Problem we face is there are no standards for meta data and "file" formats or indeed upload mechanics (USB dongle, wired connection, etc) .

Perhaps a job for the OpenAAC group or GlobalSymbols!

@SteveALee
Copy link
Contributor Author

We could start a database of symbol upload technologies and formats. though I guess many are proprietary

@SteveALee SteveALee changed the title How do you use the symbols and want to access them? How to packages and distribute symbols? May 10, 2019
@SteveALee SteveALee changed the title How to packages and distribute symbols? How to package and distribute symbols? May 10, 2019
@eadraffan
Copy link

Thanks so much Steve for all the comments and work in this area and I have just made this a watched Github set of issues so I can keep track of it all. Global Symbols needs to take all this very seriously as we move forward with linking more symbol lists, harmonisation/standardisation for AAC users and their supporters inc W3C WAI WCAG coga task force. I am also on OpenAAC slack group so lets keep chatting about the ideas.

@gavinhenderson
Copy link
Contributor

Is this feature still something that you are keen to start development on? Obviously we want to make sure we are putting together the right solution for the problem.

I have availability (and willingness!) to work on features for mulberry symbols so if there is any feature that you are really keen on getting work started on let me know

@SteveALee
Copy link
Contributor Author

SteveALee commented Apr 16, 2020

@gavinhenderson It's great to hear from you again and you timing is good.

I've just been PMing someone using the symbols to create printed resources for people in ICU with CORVID19. Two things she mentioned that make it harder to use the symbols in software like Word or other symbol software are

  1. Translation of names (to Greek)
  2. Manual insertion

Both are mentioned in the intial decription on this issue. Packaging is a big part of the puzzle for making it as easy as possible for people to use the symbols. And then we need the packaging to be easy to use in as many apps as possible :)

I'd say we're still at the requirements gathering stage. Perhaps a set of questions could be useful to pass around to potential users (google survey etc), and/or we could arrange a meeting.

For translation I notice cboard states 33 languages so we could perhaps leverage that work. Perhaps that project would be useful to test packaging? I've pinged @shayc asking about printing and translations.

What are your thoughts?

@Eliada21
Copy link

Hello,

I believe there are some main questions that need consideration prior of deciding how to proceed:

  1. Who are the users?
    This questions was answered in another point, on February and the answer provided is (I have added some comments in a parenthesis):
  • AAC developers
  • SALTs (SLPs) - less technical - printing on boards or add to AAC tools (comment added: well I know many SLTs who use AAC software)
  • Carer/supporters? - probaby only want to print one or 2 symbols
  • Others (here you could add scholars/researchers)
  1. Why the above potential users prefer to use the collection of Mulberry symbols instead some other collection of symbols?
  • it is free
  • there are no copyright restrictions
  • it is easily accessibly (is it in the current form? This brings me to the third question below)
  • it has several symbols that cover a wide range of categories (there is always room for improvement for any given collection of symbols)
  • symbol users can request new symbols to be developed for their needs (can they? This is important because if the vocabulary bank is small and there are not many options then it might be pointless for the users to use the Mulberry symbols)
  • the design of symbols is consistent (and many other reasons that can be directly related to the way that Mulberry symbols are created)
  1. What tools do the above users need in order to use Mulberry symbols?
    Well because one of the strengths of Mulberry symbols is that they are free, it is important to acknowledge that users might not have access to any AAC software (e.g. Boardmaker, MindExpress, Grid). If they had, they would most probably use the symbols included the software. So what toos users probably have?
  • Microsoft Word (everybody has it. However, is it easy for someone to import Mulberry symbols in word documents and create communication pages/books or even text with symbols?
  • I cant think of any other options that most potential users have and could 'take advantage'. I think an open ended software (or even application but then you need to consider android/ios options) that is freely available to potential users is the ideal solution. However, I don't know if this is feasible.

My concern is that one of the reasons that people choose Mulberry symbols is that they are free. You have done great job on designing these symbols. How these symbols can be easily accessible to users?

Eli

@SteveALee
Copy link
Contributor Author

SteveALee commented Apr 16, 2020

@Eliada21 Thank you that is very helpful indeed

symbol users can request new symbols to be developed for their needs (can they?)

Yes they can! As the symbols are "open" anyone can actually create new symbols to extend the set. Thus there are more options to get new symbols. We'd love to get a style guide together to encourage this. See #32

users might not have access to any AAC software (e.g. Boardmaker, MindExpress, Grid)

There is free and open source cboard and free trial and open source coughdrop

So what tools users probably have?

In addition to MS Office there is Libre Office. Powerpoint and Impress are iactually excellent for creating documents and in this case probably have several advantages over Word. Cboard might be more useful if it has a print option (it's a web app).

and how easy are they to use

That's a great question. It needs some investigation. Perhaps there are ways to make it easier - creating an extension or scripting/automation apps tools like Auto Hot Key

@SteveALee
Copy link
Contributor Author

SteveALee commented Apr 16, 2020

One pretty concrete thing we could do if adding SVG's to Office docs is still a problem would be to provide other formats, eg png or jpeg.

I'm very reluctant to make them permanently available for download as these formats are resolution/size specific unlike SVG which scales beautifully for best results at any size.

Does a useful free bulk conversion tool already exist that we can point people to? If not perhaps we can add an option on the website to generate a zip of pngs for a given size on demand?

@eadraffan
Copy link

You can also use BoardBuilder with .pngs / .jpgs etc for making communication charts or boards. All free with instructions and it allows you to save to other apps in obf/obz format that are mentioned on OpenBoard format page as well as download charts as PDFs for printing.

Global Symbols on creating symbols to match other sets.docx
This is a very basic symbol design guide but happy to add to it to help others.

@SteveALee
Copy link
Contributor Author

Well I'm confused. I just tried adding some of the distributed SVG symbols to Word, PowerPoint, Writer and Impress and saw no problems. I used both Insert and drag and drop.

So are there issues I missed with my very simple test?

@SteveALee
Copy link
Contributor Author

@eadraffan Thanks for the info on BoardBuilder. Is there some documentation? And what about the repository etc as I understand it's Open Source?

The symbols creating document is useful.

@eadraffan
Copy link

eadraffan commented Apr 16, 2020 via email

@SteveALee
Copy link
Contributor Author

@eadraffan are you saying there is a problem with paint when you try to modify an image. That does not surprise me in the least as paint is specifically for raster images, not scalable ones like SVG. Use a SVG editor like InkScape. I can understand if that is an "app to far" for some people though. :)

I don't undertsand your comment about Powerpoint. Libre office is also powerful but free. Outlook.com is also free but may be limited. What other low power tools do people want to use? Wordpad?

@eadraffan
Copy link

Yes I have InkScape and use other open source apps, but you mentioned Word and PowerPoint etc in your previous comments. I find it is incredibly helpful to have a choice of symbol formats as they all have their plus points when used in different settings. This is especially important when you want transparent backgrounds for colouring symbols to show parts of speech for use on communication charts or books.

@gavinhenderson
Copy link
Contributor

Do we have any metrics on how people are accessing the symbols?

I currently don't think we have any user friendly way for users to browse the symbols and select one for download. Maybe the barrier to usage is there rather than getting them into word (or other tools)?

Current options to getting the symbols:

  1. Downloading the zip, which then strips all category information and makes searching harder. It also makes you go through Github which could confuse non technical users.
  2. Browse the categories.html, again no search but at least you can jump around by category. It is also worth noting that it is a very slow page to load which can turn users off.

I think we could iterate on the existing categories.html, so that it has a lighter load and search. Also more instructions on how to download the symbols. I have in my mind something similar to font-awesome

@SteveALee
Copy link
Contributor Author

Do we have any metrics on how people are accessing the symbols?

No, hence saying we need to gather requirements. :) I'm talking to a few people but mor ecan be done to research. Adding metrics would be useful.

I currently don't think we have any user friendly way for users to browse the symbols and select one for download. Maybe the barrier to usage is there rather than getting them into word (or other tools)?

I agree it's likely to be a part of the issue to address (but again research would be great). We are tracking this in #31 where I see you mentioned FontAwesome. There is also the noun project whic hmight have ways to select.

For now, there is a hack to download individual symbols](#31 (comment)) from the webpage of all symbols (but slow to load as you say)

@SteveALee
Copy link
Contributor Author

Another thing we could do is provide a few templates for printing or use in AAC (eg in Open Board Format).

For see example the PowerPoint/Impress board templates from the CommuniKate project

@eadraffan
Copy link

eadraffan commented Apr 17, 2020

I really love that idea as I have made lots on Cboard that are public but I could make more and put them on Global Symbols or anywhere you want. We also have a facebook page for Global Symbols so we can also put them there as well. Do you want them to be just made with Mulberry Symbols so they can go on your site as well?

@eadraffan
Copy link

Do we have any metrics on how people are accessing the symbols?

No, hence saying we need to gather requirements. :) I'm talking to a few people but mor ecan be done to research. Adding metrics would be useful.

I currently don't think we have any user friendly way for users to browse the symbols and select one for download. Maybe the barrier to usage is there rather than getting them into word (or other tools)?

I agree it's likely to be a part of the issue to address (but again research would be great). We are tracking this in #31 where I see you mentioned FontAwesome. There is also the noun project whic hmight have ways to select.

For now, there is a hack to download individual symbols](#31 (comment)) from the webpage of all symbols (but slow to load as you say)

Do you mean you cannot download Mulberry Symbols individually as you can from Global Symbols? e.g. acne spots download
acne spots
or use them in an app or communication chart builder?

@SteveALee
Copy link
Contributor Author

I thought this is a good point to collect the various threads together after disussions with @Eliada21 and @eadraffan. This should help frame the technical work, especially for @gavinhenderson.

The TLDR; (short version) is that there is burgeoning Open Symbols ecosystem and I want to position Mulberry as a part of that activity. Thus developments should not be Mulberry specific if they fit better elsewhere in the ecosystem.

So after chatting to various people I blogged my understanding of the Open Symbols EcoSystem as it currently stands.

I think we now have the parts in place to make the symbols easier to find and use by SALTs an other users. The restrictions are the maturity of the various parts and possibly that the tools are mostly online. Stakeholders will want products, not open source projects.

The parts I see are:

  • globalsymbols.com and opensymbols.com collect and provide access to the various symbol sets
  • Board maker provides a way to create boards with those symbols and collections for print and use in AAC tools (via the ODF format)
  • cboard, coughdrop and other aac tools import ODF to create interactive AAC
  • We might add a tool to better manage printables, or expand BoardBuilder features
  • A translation tool - at least for symbol strings if not names. We also still need to figure quite how internationalisation and localisation fit in across the parts pluss tooling like CCF, AI etc.

So next steps for Mulberry I see

  • Provide an API for Global Symbols to use to get symbols when updated. Currently this would be a manual process.
  • Work with Global Symbols on developing the site facilities and tools like BoardBuilder
  • Workwith Open AAC to senure ODF/ODZ formats are good and Mulberry can be used.
  • For developers we continue with the zip archive and add translations
  • Can explore more refined developer access (like fontawesome) but need to see if there is a demand that would not be met by ODF
  • Work will cboard and coughdrop and hopefully proprietary AACs to make sure all works well.
  • Work with everyone on Internationalisation
  • Provide a spreadsheet of all symbol names for community translation. This can then get used by GlobalSymbols etc. @Eliada21 has offered a Greek translation and we have a partial Finnish one.

To progress we'd need OpenSymbols and BuildBuilder to be managed as Open Source projects so we can contribute.

Thoughts?

@gavinhenderson
Copy link
Contributor

Sounds sensible to me. It definitely makes sense to make these changes in other parts of the ecosystems so all symbol sets benefit and we avoid further polluting the ecosystem with more fractured distribution methods.

It would also be great if GlobalSymbols and BuildBuilder to be managed as Open Source projects but as you mentioned I'm not sure how feasible that is? Have you got ideas how to make that happen?

As this discussion becomes wider about the whole ecosystem I wonder if there is a better platform than a Github issue to have the discussion? Perhaps something like a slack channel or slack org? Although that could be a potentially be a heavy handed answer.

@SteveALee
Copy link
Contributor Author

It would also be great if GlobalSymbols and BuildBuilder to be managed as Open Source projects but as you mentioned I'm not sure how feasible that is? Have you got ideas how to make that happen?

A little friendly lobbying of GlobalSymbols might help :) I'll add your vote!

I wonder if there is a better platform than a Github issue to have the discussion? Perhaps something like a slack channel or slack org?

The Open AAC project has a slack room - the invite link on the website seems down right now but the room is active.

@SteveALee
Copy link
Contributor Author

Here's the open AAC slack channel

@SteveALee
Copy link
Contributor Author

See also #30

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

4 participants