This is an example of how to build a RAG app on FastAPI with vector embeddings and LLM inference broken out as separate services. Using Runhouse, those services can be hosted on your own infra (A10 GPU on your own AWS, for example).
Hoping that this is helpful for anyone considering ways to scale out components of a more complex RAG application.
For example: you get a huge boost in rankings when you first launch an app in the App Store. Not enough to be #1 above a Calm, but certainly #1 for medium-difficulty keywords. Once this advantage goes away, you'll need a strong ASO strategy and money to spend on ads to boost keywords.
Some of these opportunities are tough to overcome after you missed them. Press is very similar: reporters will cover a newly launched product, but new features likely won't get a feature.
I would first question whether or not you actually need a web version and if it might be a very different experience. I only say this because I wasted months duplicating my app experience to the web and less than 1% of users use the web version regularly.
I've worked with React Native for iOS and Android and would recommended it. It's a huge challenge to make complex apps feel as fast and slick as building in Swift, but that may be an issue with any js framework (and I may be biased from working in Swift also).
The popularity of React is another plus: it's easy enough for a web React developer to learn React Native.
Yesterday I launched a really unique feature in my app Happyfeed - now you can create small groups (called Pods) to share your journaling progress and actual posts.
I don't think many other journaling apps have tried this pseudo-social approach, but I think it works really well for gratitude in particular.
It was pretty interesting figuring out a way to build sharing with one or many Pods while keeping posts private by default. Happy to answer any questions or take feedback on how it could be better built. (I wrote a blog post but saw in the rules not to include those.)
I'm curious if you think social networking might affect the way people journal. I'd be a little concerned that people might try to post things they think others will find interesting.
Interesting concept anyway, I'll be following along!
Good point, though I tend to get too distracted on AlternativeTo. Not sure if it's the design or just too many options and not enough votes. Measuring alternatives on specific dimensions related to the problems with Facebook could be interesting!
I like the idea of offering alternatives, but have you considered crowdsourcing those apps? Could add an extra level of transparency if people could select/vote on which alternatives really are better (because that can be awfully subjective).
It would be interesting to link to privacy policies and other relevant information as well!
Please tell me there's a train you can ride around the museum with a small keyhole to look out through to help you better understand human perspective in relation to multiple dimensions
As a former Red Robin employee, I should tell you - people would ABSOLUTELY KILL for the ranch dressing recipe. That alone might have scored you a pretty penny. I used to get asked several times a week for a some ranch "to go." Suggestions included filling a 16oz to-go soda cup with ranch and in exchange for a $20. Unfortunately for them, I didn't think it was worth risking my high school job.
I always wonder how changing "Favorite" to "Like" would affect the frequency of the action on Twitter. To say something is your favorite is kind of extreme, right? - you can like lots of things but you only have one favorite. Interesting point you make though, because in an argument you'd be more likely to use a "favorite" to select the better stance.
Disclaimer: I'm a terrible Twitter user, and still trying to figure out what I'm doing.
Great article Ryan, I am (as I'm sure most founders reading this are) actively working on my startup's story - so I found it very useful. One thing that interests me is how the story changes over time. This seems to have been the case with Instagram. Like you said, Burbn was a very different product and over time they realized people were using it mostly for photos so they restarted with what is now Instagram. Was the well-crafted story you described there from the beginning, or was it developed as they worked with users and iterated through early products? Stories definitely give a company direction, allow designers and engineers to focus more on the few important features that really matter, and make it easier to speak to users, but it seems that getting to that story can be a journey in and of itself.
Flat design allows a designer to focus on more of the important aspects of a design in early stages. Choosing the right shadow, gradient, texture, whatever is certainly NOT going to make or break your design. Jack Dorsey has said that the best products disappear to the user, and I couldn't agree more. It doesn't matter as much what a button looks like but more what it does and that the design of that button accurately conveys what that action will be. A good design (flat or not) will bring users in but it will not retain them on it's own; functionality is clearly what makes all great products thrive. Flat designs are inherently lighter and cleaner, which allows users to focus on functionality and user experience. So then, for a novice designer, why bother trying to make complicated skeuomorphic designs that can potentially distract users? (Anyone who has tested an early product with users will know what I mean by "distract" - all those times when a tester spends most their time giving you feedback on colors, font sizes, and layouts of a design instead of the overall utility of the product.)
The thought that always comes to my mind regarding this topic is how "delete" buttons are implemented. Often times a classic "trash can" icon is used to depict the delete action. But how often do you ever see an old aluminum trash can anymore? Not very often. Eventually this icon will make absolutely no sense to users (like an old proverb that your parents used to use). However, the word "delete" will likely be around for a lot longer. Using that little trash can icon might save space and help to improve the overall aesthetic of your site/app, but it will never be as clear as a big red "delete" button.
Hoping that this is helpful for anyone considering ways to scale out components of a more complex RAG application.