Sync Data Across Devices
in progress
Derek Lee
Hi friends! I'm digging into the data sync functionality and I have a couple of questions
Question #1. You've been using Beat Note for some time, and you have beats both on your iPhone and your iPad. Sometimes, you shared a link from one device to open it on the other. Imagine one day soon, Beat Note supports syncing data (yay! I can't wait!! 🎉), and you sync the data between your devices. How do you want Beat Note to handle these beats that exist on both devices when your data is merged together? 🤔
Question #2. Imagine Beat Note now supports syncing data (soon! 🥳) You have two devices (iPad and iPhone). Both are offline because you've decided to disconnect from the internet to focus. You update Beat "Super Schaweet Groove" on your iPad and change some notes. Sometime later, you're on your phone (still offline!), and update the same Beat "Super Schaweet Groove" on your iPhone with different changes.
You re-connect your phone to the internet, and Beat Note saves "Super Schaweet Groove" to the cloud. Then later you reconnect your iPad to the internet.
How does Beat "Super Schaweet Groove" appear? 🧐
Thanks for your help! 🙏
J
Jesse Rolland
Derek Lee These are great questions. I was thinking a lot about this as well now that I recently upgraded to iPhone 15 and a new iPad (Beat Note for Apple Watch??? Kidding…lol).
I think for both scenarios the best example to emulate for me would be Google Drive. So basically question addresses when both devices are connected like to the internet like normal but question #2 would be for anytime either device or both are offline like even if you lost service for a bit (really good scenario to address). When editing Google Drive documents on any of the apps like Docs or Sheets it will simply autosave the last modifications regardless of the device last used. The goal here is to keep one master copy in my opinion and whenever I use either device my work and edits are constantly being auto saved in real time. I think this is the most simple and obvious solution and it works perfectly with Google Drive.
Now with question #2 I think the same philosophy follows suite but it obviously gets a little trickier. With Googke Drive if you hav a an offline tab open on a device you can reconnect to the internet and it will update and save the changes immediately from that device for that open file but I believe all the other files will not change unless you had a tab open and made some edits. Unfortunately we can’t just leave tabs open in beat note so yeah this kind of a big problem. What we don’t want is the offline library from one device to suddenly just update and override the other device that is currently online and connected to internet.
I guess my solution to this would be this even though I have no idea if this is even feasible but it would be ideal. If files could maybe INDIVIDUALLY give you a message prompt to update and save from current device or I guess just resort to original before going offline that would be pretty sweet. So in other words once the device is back online you would get these prompts for any beat file you open that has since been edited after going online. Does that make sense?
J
Jesse Rolland
The ultimate goal here is that we would want the option to be able to update the current offline changes from that specific device in that moment once reconnected to the internet even if it’s just WIFI. We only want to effect the beat files that we have since edited after going offline and the current one we have opened. We should get a prompt that gives us the option to make the status of the beat from this device current so all devices will be effected now. You would go through this process for every file you updated offline regardless of the device you were using. This would safeproof everything.
Ultimately if you are working offline even from both devices this definitely requires the user to pay close attention to the files you are editing and keep track manually. No way around that really. But at least every time you reconnect to the internet you would be given the option to make the current state of that file from that device the current saved version. BOOM.
G
Gilles Mercier
Hi, Derek Lee
Thanks for implementing all of this !
Now about the questions
#1 : in parameters / sync section
- how to handle objects/beats on 2 or more devices (btw is this based on the name of the beat ?)
option 1 : always get latest/newest
option 2 : ask (and show the source devices name to know which is wich)
#2 : use the same parameters ...
BUT I would add the possibility to EXCLUDE a beat from sync, if you want a particular beat to stay only on one device, or be able to manipulate it and "wait" for it to be complete before sync.
I would add a checkbox "Exclude from devices sync" (+ eventually a tag) in all beats that I could check if wanted (default : unchecked).
What do you think ?
R
Ross Farley
Derek Lee
#1 If you're able to detect duplicates, would creating a tag for potential duplicates work? I'd be happy to manually go through them to remove them after the initial sync
#2 Would it be possible for the edited measure within the beat to be duplicated? Say measure 3 has been changed on two devices in the scenario you describe. After both devices go back online there would be a measure 3A and measure 3B. If that's not a viable solution a duplicate of the whole Beat?
R
Ross Farley
ps. Looking forward to this update!
Derek Lee
Jesse Rolland Gilles Mercier Ross Farley Thanks for all of the great feedback! Much appreciated!!
Re: Google Drive - I think GD is a much more advanced use case as it allows real-time updates (multiple users can open the same file at the same time and make edits and see them in real-time). I know some users have suggested Beat Note also supports this functionality (wink nudge Ross Farley 😘) and I can see how it could be useful, but it's an entirely different technical implementation and not something I'm considering at this point (waaaaay, waaay, waaaaaaay more complicated 😅).
Scenario #1 is specifically to address concerns where you've already been using BN on multiple devices without data sync and may have the same beat with the same name on both devices, and maybe they are the same, one has been updated, or both have been updated. In this case I only have the name of the beat to go by since the beat was shared from one device to another (and if it was copied to My Beats, it would have received a different ID). So beats with the same name would be the only criteria I think I could look at. 🧐
Scenario #2 is specifically to address the offline scenario when both devices are offline, the same beat is updated on both devices, and then they reconnect at different times. Generally, the device to connect first would "win" since it would push its update to the server first.
Derek Lee
Ross Farley It's definitely possible to both detect duplicates and give a custom screen for resolving these, as well as possible to show measures 3A and 3B when a difference at that level was detected (as per the screenshot you previously provided, which was super helpful BTW! 🙏). Both of those are quite advanced, complex, and time consuming to build, and I would consider them for a future update. Ideally I'd like to lean towards something simpler to get the feature out sooner and then iterate to improve upon it, heading in the direction you recommend for a much more delightful user experience.
Gilles Mercier Re: Marking a beat to NOT sync- This is the first time I've heard of this as it's not a scenario I'm too familiar with when using other online cloud-based products (Google Drive, Dropbox, Apple Notes, Evernote, Notion, etc). I'd be willing to consider this if there's enough interest, but simplicity and intuitiveness are the primary drivers for me and introducing this kind of option increases the complexity considerably. I would ask you to create a separate enhancement for this for other users to also be able to vote and comment to consider as a future improvement. 👍🏻 Thanks!
Please keep the feedback coming and I'll keep you informed of progress!
G
Gilles Mercier
Derek Lee,
No problem, for the NOT sync, it is just a nice to have, but no bother with this :-) at least for now, let's implement the main feature first
Just another question though ... will the sync also sync the deletions ?
R
Ross Farley
Derek Lee Any syncing will work for me ultimately!
Derek Lee
Gilles Mercier Re: "will the sync also sync the deletions" → In how I understand data syncing to work, yes, it would work with deletions. For example: You create beat "Funky Groove" on your iPhone. It syncs to your other active devices: iPad and Mac. If you then delete "Funky Groove" from your iPad, it would also be deleted from your iPhone and Mac.
That said - most of the cloud-based software tools I use have the concept of a "trash bin" (as we have discussed in other threads). Maybe this is the time to introduce this concept? Instead of deleting it across all of your devices, it gets moved to the "trash bin" and it becomes possible to restore it. What do you think?
Ross Farley Thanks, Ross! As always: all features in BN tend to start with an initial implementation to ensure I'm moving in the right direction, gather feedback, iterate, and improve. This would be the same. 👍🏻 Thanks for your patience and continued feedback and support, we're making great progress!! 🙇🏻♂
G
Gilles Mercier
Derek Lee : Yes the "trash bin" is a very good idea, which also adds a layer of security against accidental deletions (errors)
Derek Lee
in progress
U
Urs Kaestli
Sync between devices would be awesome! Please consider to add to your excellent app asap! Thanks.
C
Chris Wardle
Hope this coming soon, paid yearly subscription but can’t use on my iPad, I looked up apps on my iPhone and didn’t think to install it on my iPad first.
Derek Lee
Chris Wardle Thanks for your comment! I'm working on the technical aspects of this feature and will update when I have a release date approaching.
You can absolutely still use Beat Note on your iPad with your subscription. Simply install the app and restore your purchases from the payment screen (scroll to the bottom and tap "Restore Purchases").
Data syncing may not yet be available, but you can still use all of the features of the app on all of your devices. Beat Note also supports family sharing so members of your family can also access your subscription the same way.
I don't see your vote on this feature request so I'll add it for you. In the future, please up-vote any features you are interested in!
Thanks! Best, Derek
Derek Lee
planned
Updating this back to "Planned" as all development work has been paused in order to resolve other critical and outstanding technical issues.
I will resume development of this in the near future. Thanks for your understanding! 🙇🏻♂️
Hinrich Nagel
Hi Derek,
I read many comments here on syncing and some other aspects (e.g sorting) which are (from my point of view) primary not involved in writing music notes and which are partially complex and difficult to develop. Therefore I like to express a possible different way to fulfill these feature requests.
Up to now all the data of BN are stored in a protected file (not in the access of the user). If you change this to an approach that every beat is stored in separate file in a directory which is selected by the user the following benefits should result:
- Syncing of the beats (files) is part of the OS (MacOS, iPadOS or iOS) if the user select an icloud-directory
- Tagging the Beats (files) is part of the OS (maybe the code can remove from BN)
- Sorting the Beats (files) is part of the OS
- Sharing the Beats (files) is part of the OS and can made via iMessage, eMail, collaborate or 'invite with a link' (for anyone who do not use Apple systems)
In this way, many of the features of the underlying OS can be used by BN without 'reinvent the wheel'.
What's about your thoughts to this approach?
Best regards
Hinrich
Derek Lee
Hinrich Nagel Hi Hinrich and thanks for dedicating some of your brain cycles to assisting with this complex issue! I appreciate your support! 🙇🏻♂️
First of all, any comments not related to syncing data can be considered with the appropriate feature they apply to. My intention with this feature request is to only consider comments applicable to data syncing. Additionally, the majority of feature requests on this site that come from users are representative of a user's request and may symbolize a user need, but in many cases, without further research does not necessarily constitute a proper solution to a user's problem. Finding the appropriate solution requires exploration to gain a deep understanding of the problem and then a process of ideating on potential solutions and choosing one to iterate upon.
Unfortunately, many of your points might apply to the file system in macOS, but do not translate to iOS. Tagging within a file system does not allow tagging within the app, neither does sorting or sharing. All of these features require 100% custom implementation in iOS as they are not native macOS functionality. Although Apple might be moving in this direction, iOS also does not have access to the macOS file system.
More importantly, my vision for Beat Note is to be supported across multiple platforms, and I've been building the app from the beginning with this in mind. Because teachers and content creators want to reach their students regardless of the device they are using, I need to add support not only for iOS but also for Android and the web (at a minimum). This requirement alone eliminates any solely macOS-only or iOS-only solutions.
If I wanted to support only Apple platforms, then yes, there are other approaches that could be considered (however, your suggestion of the file system is unfortunately not one I would consider due to iOS's limitation here).
I understand the importance of syncing data between devices, and I am committed to implementing this so that all users can access their data regardless of whether it's on iOS, macOS, Android, the Web, or possibly other platforms (Windows?). This way, all teachers and students can benefit from using Beat Note. 👍🏻
Thanks for your patience while I work through the technical challenges of this to deliver a robust solution for you and all other users! 🙇🏻♂️
Derek Lee
That said, if you'd like to lend a hand with development... please let me know! 😅
C
Chris Ward
Derek Lee keen drummer, teacher, and programmer here… I’d love to help :)
Derek Lee
Chris Ward Thanks, Chris! I'll send you an emaill so we can chat. 👍🏻
Derek Lee
in progress
This is a highly complex enhancement and I'm starting to put some pieces in place to move this forward. I don't have a target release date yet and I'll update this as development progresses. 👍🏻 Planned for a future 3.x release.
C
Collin Flaherty
Derek Lee Man this is an awesome update! I have no idea how much goes into being able to make a feature like this work under the hood, but I can imagine what seems simple to us as the end user can be a complicated process under the hood to develop. Not to mention to work in the background while continuing to make the app super smooth and not affect other aspects of the app.
I am excited for this feature, but using the Beat Note link feature and sharing those within apple notes to go back and forth between my iphone and ipad is my workaround for this at the moment.
Thank you for all your time and effort towards making this app better and better Derek! You rock bro 🙏
Derek Lee
Collin Flaherty Thanks for your comment and continued support! The goal of a feature like this is to make it as invisible to you as possible so things "just work." However, the complexity behind the scenes is enormous, so this is one that's going to take a considerable amount of time.
A lot of what's required for this is purely technical, but there are some user-facing aspects that I'll start to work on introducing soon. For example, you'll need to create an account and log into your account for me to be able to associate your different devices with your user account. I'll be posting here and to IG with more details as these changes are built and rolled out. 👍🏻 Thanks for your patience while I work on this!
Derek Lee
Given the high # of votes for this feature, I'm planning to include this feature in an upcoming 3.x release. I'll update this feature as progress is made. 👍🏻 Thanks for contributing to the Beat Note roadmap by sharing your feedback and votes!
Derek Lee
I'm excited to see this feature request getting more attention, passing the 10 vote mark!
I think this is a sure candidate for a release once the current 3.0 major update is wrapped up.
Thanks for continuing to vote and share your feedback on this! 👍🏻
Hinrich Nagel
From my point of view an iCloud-sync is the best way, because it is not my goal to share my beats to other people. So, save your server-capacity and give the control to the user where the beats should be saved.
Derek Lee
Hinrich Nagel: Thank you for taking the time to share your feedback on this feature! Your input is greatly appreciated, and it's valuable to understand how you use the app and what features matter most to you. 👍🏻
I completely understand your preference for iCloud sync and giving users control over where their beats are saved. While it's an intriguing idea, implementing such a feature would involve a significant amount of development work. The complexity of providing this level of control while ensuring data security and seamless user experience can be quite challenging.
It's important to note that Beat Note is designed to cater to a diverse user base with various needs and preferences. While some users, like yourself, may not have the intention to share beats with others, there are many teachers and content creators who find value in the "share beat" feature. To create a solution that accommodates everyone, I'm actively working on expanding Beat Note's capabilities, including support for Android and Web platforms in future updates. This will enable teachers and content creators to reach a wider audience while still maintaining control over their data.
Once again, thank you for contributing your thoughtful feedback to the roadmap, and please know that I'm committed to continuously improving Beat Note to provide the best experience for all our users. Please continue to share feedback about your experience with Beat Note so I can learn more from you and continue to evolve Beat Note to fit your needs!
Hinrich Nagel
Derek Lee: Many thanks for your explanations to the way you would develop Beat Note. Nevertheless I like to mention some additional aspects (of course only from my point of view):
To have control to my beats depends on the place where the beats are stored AND in which data format they are stored. Maybe in future time I would not renew my subscription or you stop the development/distribution of Beat Note or anything else, I like to export my Notes. In a first step, that could be the PDF-format (I think that is in your progress), but in this case there are many limitation to deal with the data. A better way to solve this should be the usage of an universal exchange format, e.g. MusicXML.
Hopefully this is not too arrogating; and please apologize if my wording or style is curious, but English is not my native language.
Derek Lee
Hinrich Nagel: Thanks for the great feedback and for continuing to share more details with me about your experience. You bring up some important points and I'm excited to be able to engage in this dialogue with you. Thank you! 🙇🏻♂️music editing (I especially appreciate the effort it takes to communicate in your non-native language. If you prefer to speak in your native language, I am happy to use Google Translate. The most important thing to me is that we communicate, so let's do it in any way possible! 👍🏻)
It sounds like you'd like the option to export to MusicXML. Before we talk about what format to export to, though, I'd like to better understand more about what you're trying to accomplish:
#1. What is the reason for exporting the data from Beat Note? You suggested you may want to cancel your subscription sometime, or you may be worried about the app's lifetime. (I can understand your concern. At the same time, Beat Note is only 1.5 years old, and I can share with you that I have a long-term plan for supporting Beat Note into the far future.)
#2. After exporting the data from Beat Note, where do you want to import it? And for what reason?
You bring up an excellent point about data formats. I am familiar with MusicXML, and I am specifically not utilizing MusicXML because I didn't think it was a good fit for what I wanted to accomplish with drumset music notation. Therefore, the data format Beat Note is utilizing is indeed proprietary. The benefit this provides is it gives me the most flexibility and allows me to cater specifically to the needs of Beat Note's users in addressing the specific use case of drumset music notation. The drawback, as you've kindly pointed out, is that it is incompatible with other formats.
As I believe you have seen, PDF export is coming in the next release. While this is a valid way to export data, I don't think PDF export would be appropriate for your use case as it would not allow further music editing.
Several other users have requested various ways of exporting their data. I'll list them all so we can see all of the needs (and add others if necessary):
Audio:
- Audio file export: https://roadmap.beat-note.app/feature-requests/p/export-to-audio
- MIDI export: https://roadmap.beat-note.app/feature-requests/p/export-to-midi
Image/Video:
- PDF export: https://roadmap.beat-note.app/feature-requests/p/export-to-pdf
- Video export: https://roadmap.beat-note.app/feature-requests/p/export-to-video
- Image export: https://roadmap.beat-note.app/ask-a-question/p/print-or-export-a-beat-image-with-multiple-measures
File Format:
Please help me to better understand your needs and we can create the appropriate feature requests to make sure they are addressed. 👍🏻 Thanks! Best, Derek
Hinrich Nagel
Derek Lee: I understand, that you use a proprietary data format and if I would be in your position as a developer, I also want do so.
#1: The need to have the possibility to export data is not special to your app. I have only minor experience in playing drums but much more in IT. In the last decades have seen many apps/programs gone away and I lost many time to transfer the data manually to another format. So, in conclusion this is only for safety reasons. But there is no need to focus on MusicXML, that is only an example. Every other universal or widely used format should be appropriate.
#2: My main case in using your app is to tap in (maybe there is in future the possibility to import data) several exercises which I got from my drum teacher and then listen to the sound produced by your app to have a feeling what and in which way to play the exercises on the drumset. Up to now, I use also the „Stave ‘n‘ Tabs“-App but the sound in your app is much more better. But of course, as a backup I’m able to import MusicXML to „Stave ’n‘ Tabs“.
Derek Lee
Hinrich Nagel: Thanks so much for your additional feedback! This is so valuable and helpful for me.
#1. I understand your concerns about data safety, and in my current mindset (just trying to get this app off the ground, and the difficulties I'm encountering and working through), it's easy for me to forget that by creating this tool, that I am potentially creating a dependency on it. Thanks for the kind reminder about the responsibility that I am taking on by doing this.
When I think about export and import for the purpose of maintaining your data, I would think it would be important to be able to both have the ability to read the data (visually this might be a PDF or an image, audibly this might be some kind of audio medium), and I also think it's important given the composition aspect of Beat Note that you're still able to edit and modify this data.
MusicXML might be a valid format to export it in, but if then you import that data into another program and it doesn't look correct or you can't edit it, then I wouldn't consider that to be an appropriate solution. I would want to look at the entire workflow (export from BN and import into ???) and be able to feel confident that you have a complete round-trip process.
At least for me, I have a long-term vision for Beat Note and my goal is to continue building out the software and platform over the next 3-5 years. It's all a work in progress - but let me assure you I will do my best to serve you on the BN platform.
#2. I've never heard of "Stave 'n Tabs" so I'll have to check out that software. Thanks for bringing it to my attention! Thank you as well for explaining how you are using Beat Note.
A few suggestions I can make:
- Since Beat Note has the ability to share beats, you might tell your teacher about Beat Note and see if they are interested. I'm looking at building out small networks with teachers and students by using Beat Note as the tool for distributing exercises for students.
- Regarding import, there have been a few requests from different users, including: tapping on images of drums on the iOS device screen (like some of those drumset playback apps), recording from playback of an electronic drumset (MIDI), and recording what is played on an acoustic drumset (in real time). If you have other ideas around how to import your music, please let me know. The current "sequencer grid" implementation was my first effort to make it easy to quickly input beats, but some of these other ideas (and others that haven't been explored yet) could make this easier in the future.
Thanks for all of your great feedback!
Hinrich Nagel
Derek Lee: Thanks a lot for your reply and your suggestions. I look forward to see what‘s about import/export/sync in the next versions of your app. In the meantime I will discuss the usage of Beat Note with my drumteacher, maybe there is chance he put the exercises directly to Beat Note and share it with me.
Derek Lee
Hinrich Nagel: I love that you are using Beat Note to enter in the materials from your drum lessons and I think this is a great way to use Beat Note to assist your learning. I've also heard from many drum teachers that they are also finding it to be a valuable tool, so I thought it might be worth suggesting to your teacher. I think there are a lot of opportunities to enhance the teacher / student experience and I'm eager to learn about this to see if Beat Note could help. I would appreciate it if you could continue to share feedback about your experience. Thank you!
Load More
→