We were inspired on one hand by the custom dev projects we were doing for our customers who wanted intuitive, secure and affordable data-management software. But often, it wasn't that much custom, and it was a waste to develop something just for them. On the other hand, with a strong background in collaboration software including Microsoft SharePoint, we realized that there was a challenge to give more power to end users. If you want your end users to solve their business challenges quickly, to become more agile, they need a platform that doesn't require IT each time they need to change something, and that gives them full power on their data and data structure. We then focused on a very common use case: you need to gather data from multiple users in a secured environment (sometimes to the point that you don't want each of your users to see what the others enter). Today, you would probably create an Excel file, send it to your contacts, ask them to send you back copies of your file with their entry added. Then you have to check their data, copy and paste it into your central Excel file, chase the ones who haven't answered… and eventually you get your data ready! This is when we came with the idea of RowShare, to gather data securely.
A few years down the road, it was clear that we needed to integrate with our customer collaboration platform, and this is very often Microsoft Teams.
What it does
RowShare lets you design a table that will be shared in a secured while simple manner. Secured: you can grant access to a table to users and/or groups, but beyond that, you can let some users only see the data they are in charge of, while some others will see everything. RowShare handles rich data, not just text and numbers: pictures, attachments, comments, colors, reminders…
How I built it
We are now in the 3rd version of RowShare. Initially, it was as much as possible built in-house with home-made components. Over time, we migrated what was standard to 3rd party components to focus on our added value: ease of use and security. It's developed in .NET / C# for the backend, with Azure Database for the data. The front-end is being moved to Vue.js as we speak (or as I write this).
Challenges I ran into
There are so many :) Just to talk about our Teams integration, a challenge was to draw the line of what would be in our Teams app, and what would stay out of our V1 scope because it didn't make sense to include everything. Now that it has shipped, we really want to add more features. We're closely monitoring usage to justify additional development resource.
Accomplishments that I'm proud of
Having published our app in Microsoft Teams is an accomplishment. First because it wasn't as straightforward as we thought, so we're happy to have it done, but also mainly because we have so many users who were waiting for it, and now new users coming daily from Microsoft App store. For our team based in France, the day we had more users out of France than in France was also a key milestone!
What I learned
With a small team, don't launch too many initiatives. Go one by one, get it done (at least as MVP), and then move to the next one. Initially, we had too many open topics at the same time, and some stayed open forever. We are now tougher on the roadmap and only open a new topic when we close another one. Agile, but getting somewhere!
What's next for RowShare
Regarding our Teams integration, we'll add the possibility to create and share tables within Teams. Outside of Teams, our mobile app is just around the corner. And a much more productive table to let you handle large amounts of data as you would do in any spreadsheet. And more vertical use cases. And… much more.