Readit News logoReadit News
Posted by u/harrisonlo 2 years ago
Show HN: I made an app that consolidated 18 apps (doc, sheet, form, site, chat…)nino.app...
Nino is a radical approach to solve the app chaos problem for today's knowledge worker. I believe there are still too many tools; even using them becomes work in itself. I'm building all these apps from scratch in one place, using the same database and UI, with the flexibility to eventually support the majority of work from one "superapp."

Currently there are 18 apps (called "modules") on Nino:

- Database types: Sheet, Form, Calendar, Gallery, Board, Todo, List

- Composition types: Doc, Slide, Drive, Notebook, Canvas, Grid, Blog, Site

- Communication types: Channel, Chat, Meet

I want to improve these modules and build more. Your feedback is important!

FAQ: How is it different from Google Workspace, Microsoft 365, or startups like Notion and Clickup?

A: I think Nino has a better foundation to (1) consolidate a lot more apps than they currently do, (2) drastically improve speed with offline architecture, and (3) offer unmatched privacy and security with end-to-end encryption (coming soon)

Let me expand on these points:

1. Consolidation

In Nino, pages and blocks are interoperable with each other. Google and Microsoft still have mostly isolated apps. Nino is one (super)app that supports 18 modules, saving you time from switching and integrating between different providers.

2. Offline mode

This is actually more complex than it seems, but I ultimately decided it's worth it, not only for people who need to work without internet, but also for everyone else who want instant page load. Everything is saved locally by default.

3. End-to-end encryption (E2EE)

This is just a preview and not open to public yet, but is something I have been building alongside since day 1. In fact, it's likely not architecturally possible for existing products to add later on. Nino is built to offer both E2EE and cloud features (backup, search, collaboration).

One more thing: pages on Nino are also publishable! There are blog and site modules, but you can also publish other modules (i.e. sheet, board, canvas, etc.) on your custom domain or on a free nino.page subdomain.

Give it a try and let me know how it can improve. I want to hear from you.

sgarland · 2 years ago
Single biggest thing you need to nail down fast: the data model. It is extremely hard to shift as things grow, and without careful thought, it’ll turn into a horrifying miasma of JSONB columns, duplicated data, orphaned rows, and garbage performance.

Customers are going to store surprisingly large items in Docs, where you’d be tempted to inline them instead of offloading to S3 et al.

Chat practically needs to be its own DB. Discord runs on Scylla, Slack runs on Vitess over MySQL. The needs of chat access are wildly different from other types of storage.

If you’re doing any kind of active-active, have a plan for how to move off of that, because it does not scale (at least, not without breath-takingly expensive hardware).

Source: DBRE at one of your competitors.

EDIT: The fact that you’re doing offline saves (which is very cool!) makes me think that you may be using something like Ditto [0], which IIRC is MyRocksDB under the hood. I have no experience with either, but I do know some super sharp folks working at Ditto.

[0]: https://ditto.live

chefandy · 2 years ago
Single biggest technical thing, anyway. IMO, the single biggest thing is focus and clarity in their communication. If people without a working mental model of software development can’t instantly understand the tangible problem it solves in their existing business process, they won’t even scroll past the break, let alone pay for it. Consolidation and modularity are solutions, but people don’t go shopping for solutions without a problem. Have you ever gone out looking for a better commercial version of work-related software you didn’t have any problem with? “App chaos” is way too abstract of a problem for most people to grasp. Do people have trouble sharing google docs over slack? Do companies have trouble with sharepoint and teams not being integrated enough? Does your tool do it better? Does your tool do it approximately as well, but cheaper? More reliably? If so, do people find the existing solutions too pricy or unreliable, or does that not impact them enough to care?

Unless they define, upfront, specific problems people really have, that their unified solution solves, then nobody is going to pay attention.

The second biggest problem is having an interface design team that makes all of those disparate apps consistent enough to be more usable than individual solutions. The fact that nearly no popular user-facing applications are developer-managed FOSS (as opposed to Firefox/blender/signal/et al which are managed by a company that hires professional designers) despite being free, tells you everything you need to know about dev-driven UI/UX. This is coming from someone that worked as a full time developer for years and contributed many thousands of hours of coding to FOSS projects before switching to design.

sgarland · 2 years ago
Fair point. I know little to nothing about design, and don’t really care about it. It’s not that I think it’s unimportant, it’s just not something I want to expend any time learning. To be fair, I’m also not trying to create any user-facing products.

To me, rsync.net is peak design. It has just enough modernity to appeal to people who might expect that, but it quickly gets out of the way and tells you what it is, why it matters, and how much it costs.

At the other end of the spectrum, there’s tarsnap.com, which is probably a turnoff for anyone who doesn’t like text. I love it (as, apparently, do enough other people to keep its author comfortably employed), but I get that it’s an extremely narrow niche.

frankdenbow · 2 years ago
Nailed the real important part, the product marketing
winrid · 2 years ago
He's most likely using SQLite per account, because that's the easiest way to have an offline DB and sync it, which will most likely scale perfectly fine with appropriate indexes as long as you are careful about the feature set.
sgarland · 2 years ago
That introduces a new problem when it syncs to others in the same workspace, if it’s large.
japanman185 · 2 years ago
No one cares about that. Export to open document format or microsoft. You are living in a bubble of “hackers”. You are not your average user.

Case in point of “engineers are not product people”

zeroq · 2 years ago
He's actually dead on point.

Back in the day, here is Sokovia, there was a local competetitor to Facebook. They had a great start and everything went perfect for them, but it quickly turned out that the technical side was really bad. Sluggish interface, constant outages, etc.

They tried to rewrite the app from scratch two times, and eventually failed.

So yes, making sure you're moving in the right direction at the beginning of your journey is pretty important. You don't have to overengineer and stay in your shed until you have a complete, feature complete product, but at least make sure, that you're building on the right foundation.

danielmarkbruce · 2 years ago
If your selling point is consolidating apps, you absolutely have to get the data model right, else you don't solve the problem. Just because you don't go in and sell it that way, doesn't mean it's not important as hell. The very reason it's hard to get apps to interoperate is that each one has it's own data model. If they used one giant data model... it wouldn't be a problem.
sgarland · 2 years ago
Product sell lies to customers that engineering struggles to produce, because reality is a harsh mistress.
underwater · 2 years ago
Different apps have different technical problems that can be an enabler or a source of never-ending technical debt. Being able to add new features easily, rather than being stuck scaling, could make or break this product.
valty · 2 years ago
The problem with modern development is having to nail down the data model first.

I wish we would develop software where the data model could easily change.

To do this every data dependency in the system needs to traceable. Nothing does this so far. And everyone just picks a database off the shelf but none are even remotely useful for this.

indymike · 2 years ago
> The problem with modern development is having to nail down the data model first.

Schemaless was one of the original drivers for NoSQL databases.

Now, when I need something schemaless, I start with a Postgres table with an ID and a jsonb or json field... which at least makes it easy to have a schema when the inevitable happens and schema-dependent code ends up getting added to the project.

> To do this every data dependency in the system needs to traceable.

This is a hard problem.

sgarland · 2 years ago
Admittedly, yes. This is the massive appeal of Mongo et al., or just JSON[B] columns in an RDBMS.

Unfortunately, at a very deep level, that’s simply not how RDBMS works. The tuples are a B+tree, and in some (MySQL [InnoDB], SQL Server) cases everything is clustered around the PK. If you don’t create a data model that’s easily exploitable for optimizations designed around that data structure, you’re gonna have a bad time. It’s no different than if you decided to use strings to store ints – you _can_, but it’s a bad idea for a variety of reasons.

What you can do is give yourself as much leeway as possible, by following some basic best practices. For example, it’s a hell of a lot easier to update a tiny reference table than to update billions of rows when you decide that column `region` should say `European Union` instead of `EU`.

vrighter · 2 years ago
I'd rather the data model be designed properly upfront so that it doesn't need to change, but can be extended with new functionality.
dataflow · 2 years ago
If you know people at Ditto, let them know their website looks completely obnoxious if fonts are not loaded. It looks something like this:

> Sync aPPS WItH OR WItHOUt tHE InTeRneT

daniel_iversen · 2 years ago
Notion might have written something about their journey in this regard?
sgarland · 2 years ago
They have [0] [1], yes, but they also mention [2] learning that skipping building indices during a DB copy (doing so instead after the new instance is built) is much faster, which is pretty basic RDBMS knowledge. It’s great to be learning, and even better to be sharing that knowledge, but it gives me pause about accepting much of what they’ve written as expertise.

IME, many SaaS companies have eschewed the idea of having any DB experts, and this inevitably leads to pain down the road.

[0]: https://www.notion.so/blog/data-model-behind-notion

[1]: https://www.notion.so/blog/sharding-postgres-at-notion

[2]: https://www.notion.so/blog/the-great-re-shard

Closi · 2 years ago
Super impressive app by the look of things, but as you asked for feedback, it is (to me) very confusing on the product side of things (i.e. what is it and why does it matter to me).

As a business user it's not clear how I would use it, and why I would care.

Your front page reads as:

> Nino is a collection of apps that can interoperate with each other on the block-level from one uniform interface. It has interoperable pages and blocks. It is flexible, extensible, and adapting to your needs as you grow, as Nino helps you consolidate tools and reduce costs. It has page sourcing so you can view pages in a different way. It has page embed, so you can sync page to another page. It has sync block to another page, but you can also block mirror and sync block on the same page.

A good comparison against your front page would be against monday.com or Asana who start with use-cases and practical application. See Monday:

> Monday - A platform built for a new way of working. What would you like to manage?

> * Work Management - Run all aspects of work

> * Sales CRM - Streamline sales processes

> * Dev - Manage product lifecycles

Then if I click any of those categories, it goes into the exact ways it can help me.

farley13 · 2 years ago
+1 to this. Focusing on usecases would be great. ex: I wanted to see what features were available for your sheets module.

Was willing to spend 5 minutes on a walk. Tried the web app - ios safari is not supported :( downloaded the ios app and registered. Got a totally blank app - no onboarding, no template / samples, no obvious way to import from my existing google sheets to see how things scaled. I added a datasource and a few fields (which felt confusing) and my walk was over.

Dead Comment

mosselman · 2 years ago
I totally agree. Coming across Simon Sinek's 'Start with Why' has helped me a great deal in communicating in general. Even in conversations this applies:

https://www.youtube.com/watch?v=u4ZoJKF_VuA

I also suggest reading his book.

In terms of this theory you should communicate like this: Why, How, What

You are starting from your 'What'.

I haven't really grasped the core of your product, but to restructure it could be something like:

Stop wasting time looking up documents, e-mails and chats in different systems. Stop paying for 20 different single purpose services just to run your business.

By having everything in one place it is easier to find and share information throughout you business. Creating custom combinations of docs, chats, sheets, forms, etc will allow you to create the tool to support your own processes and ways of thinking rather than having to learn some app's way of thinking.

Nino allows you to quickly build your own custom flows using modular building blocks. Create the tools that you need and have all of your information in one place.

harrisonlo · 2 years ago
Good call, I'm also a fan of Simon Sinek.

Thanks guys for the feedback. I think it's pretty clear what should be worked on next.

nine_k · 2 years ago
> interoperate with each other on the block-level from one uniform interface

Sounds quite a bit like Notion. A comparison would be apt.

Also sounds a bit like OLE / OpenDoc on desktop, embedding an Excel sheet into a Word doc along with an Access form. If it can do that, it could make quite a demo.

marwis · 2 years ago
Microsoft was pushing something like that few years ago under the name Fluid Framework: https://youtu.be/tPw5kFkXtt4

But seems to have devolved into generic state synchronization library these days.

wavemode · 2 years ago
Yep. This is a product in desperate need of a "Showcase" page showing off why it's valuable.
dkarl · 2 years ago
> very confusing on the product side of things (i.e. what is it and why does it matter to me)

My initial thought was, this vision looks like what happens when a company realizes that their core product is less valuable than everything adjacent to it and starts growing their product a dozen different directions simultaneously.

But maybe there's something different about embracing this holistic vision from the start, as opposed to trying to be focused and then getting forced into scope creep.

aetherspawn · 2 years ago
A lot of people are saying to specialise your business or die. I think you have a good opportunity here to do what nothing else does quite well, and that is to implement a vertically integrated document management system for use cases such as ISO 9001 etc.

Use case 1, document management: This basically just means that you need to implement the capability to “publish” a document version, permanently view that document version (think tag), and auto generate a document “identifier” using the companies naming convention (and allow this to be embedded automatically in the document so the client can use it too). The document ID might look something like SOP-2401001.

Once a document is published it should be read-only, and you should be able to put artifacts a long with published documents … ie exported PDF copies, or signed copies or something.

Use case 2, document siloing: One of the most difficult parts of document management is creating forms for procedures, and then teaching everyone how to not ruin the document management of these forms once they are filled. I have always wanted a silo that automatically copies a form when you start to fill it out, allocates it a brand new document ID, and collects it together with all the other forms of the same kind.

This could be integrated with an automation platform so that ie if you fill out a form it sends someone an email or something like that. Or if you wanted to get really fancy, you could allow people to define “workflows” for documents and actually visually show a business process alongside a document.

squeezebees · 2 years ago
This is indeed a clear market gap. Ideally it has the workflow features but they can also be swapped out. Enterprise market though as opposed to wherever this was aimed.
yoz · 2 years ago
Initial impression after a few minutes of use: there may be a huge amount of power here, but the app and site seem to be completely lacking guidance and I've no idea what to do or how to learn.

I've installed it on my Mac and am trying to add a set of records representing contacts with a couple of basic fields: name, phone, birthdate. I want to query those records elsewhere in other modules.

The app is giving no guidance on how to do this. On open, it just shows me a blank tab, and I had to try a few different controls to work out how to add a module. I don't know which module I should use to add queryable records, so I'm trying Board.

Now that I've added a board, I can add a first record but there doesn't seem to be a way to add a second. There are columns named "None" and "Unnamed"; the one named "None" has the first contact in it. Pressing the "+" button in the corner adds another column. Eventually, I drag the record from "None" to "Unnamed"; "None" disappears, now there's just "Unnamed", and I can add other records.

I'll keep playing with it a little, but there's only so far that people can be expected to try to work out the usage model that you've designed this for. Sure, there are loads of modules, but how do they link together? An example setup for a fictional team might really help here.

harrisonlo · 2 years ago
Noted on the lack of guidance and onboarding. I can see the confusion you had with the board module and have some ideas on improving it. Thanks for giving it a try.
joenot443 · 2 years ago
Piggybacking to say I really like GP's suggestion of a living demo the user can jump right into after onboarding. I'm working on a similarly open-ended product right now and I've been thinking hard on ways to avoid the daunting "what now?" feeling of being presented with a big, unfamiliar, blank canvas.
0thgen · 2 years ago
I honestly found it pretty intuitive. Every module uses the same basic action-flow, which was super clever UI design on the creator's part
not_your_mentat · 2 years ago
This looks really neat!

I'd be interested in giving it a try, but doing so would replace existing tools and workflow. As a user, I'm unwilling to do this is I can't both own my data and application hosting.

If Nino doesn't pan out and the product gets shut down, how do I continue to access my now (trigger warning, words used to describe as I understand, not critique) tightly coupled proprietary data? Can I self host? Is source code available? Are document formats open? How do I not get screwed as an enthusiastic adopter in the unhappy case that things don't work out? If I put my data in and the product isn't working for me, how do I get my data out?

bertil · 2 years ago
One great solution for that would be the approach many advanced Markdown editors like Obsidian have: the documents remain usable. You might lose some benefits (the integration between documents in a graph-like structure) that are specific to the tool. Still, your work is preserved in a universal format that anyone can leverage.

Most elements of Nano have widely accepted standards, presumably easy to integrate, so that guarantee should be doable.

eviks · 2 years ago
It's not a universal format since a lot of data is for only for Obsidian plugins that can work work it, and it isn't universally extensible, so not suitable for proper tools this aims to be
harrisonlo · 2 years ago
Thanks. I think the concern about software provider shutting down is valid. Heck, I still remember being pissed when Google deprecated two products I used within a month (a few months back).

Self-hosting might be too complex to setup, but do you think single tenant offering helps? I don't know if it makes sense for individuals tho.

In addition to HTML & CSV, there is an option to export JSON, which supports more formats. In a way, it is an open format (.json) but I'll have to add relevant documentation. PDF support will also come at one point.

buildbuildbuild · 2 years ago
Self-hosting is key for us as well. Companies working with sensitive data really value "on-device" / "on-premises" architecture, which it looks like you're close to nailing.

Check out Bitwarden and Gitlab's self-hosting approaches, and congrats on the launch. I'm excited to try it.

And regarding self-hosting complexity, start with a "docker-compose up" example and iterate from there.

localhost · 2 years ago
For sure this is a super-impressive (solo?) effort and I'm certain a ton of work went into this.

Some feedback:

Who is the customer for this? Can you describe what their day looks like and how Nino helps them get their work done better/faster/cheaper? What are the top 5 problems that they face that Nino is clearly better than the competition? Be specific and show the workflows.

Where do they work? Who do they collaborate with? What are they collaborating on? Do the same exercise - SxS comparison with how they do things in existing tools and show how Nino is clearly better than their existing solution.

Finally, don't ever underestimate how difficult it is to get people to change from whatever they are doing today. Today is not 1990 - people have been using solutions to the general information worker problem for decades now. Why will they switch?

ramijames · 2 years ago
I'm not really sure that I see an "app chaos problem". For each company/job workflow that I've encountered, there are a set of apps that solve for the specific use-case.

For example as the head of devrel at the last company that I worked for, we used Atlassian products for internal documentation and work tracking, we used Google's docs and sheets for collaborative writing with external teams, and we used github and markdown for external docs building. It's all text, but the work flows were different, had different needs (like permissions), and ultimately we found the right tools for the job.

I wish you luck with this endeavor, but I hope that your looking for a specific problem. To solve that isn't "app chaos".

d3w4s9 · 2 years ago
Exactly, my company have a similar setup and I don't think people have trouble figuring out which tool to use or how they work with each other. Nino seems to try to solve a problem that hardly exist.
airstrike · 2 years ago
This is really cool -- congrats on the launch! The productivity worker's "app chaos problem" as you called it is a real problem and a solvable one.

I'm building something similar after spending 10+ years working with those numerous different apps day in and day out in quote-unquote "high stakes" white-collar roles. It's early days and I'm approaching it from a slightly different angle, but there's a certain amount of overlap between the two visions. I'm focusing on a smaller set of apps but more fleshed out set of features, aiming for feature parity with incumbents + my own features (which incidentally is why this is taking a while to build well...)

Curious to see how Nino progresses and we should connect later on when I have something tangible to show, if you're up for it

harrisonlo · 2 years ago
We should! Just sent an email to the address on your profile