856 karma · joined September 10, 2015
But I agree providing some best practices on the structure would be helpful - I personally prefer top-level grouping-by-feature (e.g. "billing/" and "reports/") over grouping-by-type (e.g. "controllers/", "components/"), but I know some folks prefer by-type, especially in the smaller projects.
We plan to add more starter projects and templates so that might be a good start. Is there anything specific you'd like to se enforced/suggested, based on how you like to structure your projects?
I think the main question here is what experience we want to offer and which level of integration (e.g. with Wasp's entity models) we can achieve. Do you have any particular features of Supabase/Hasura that you'd like to use?
We documented our adoption journey (through gh stars) here (https://wasp-lang.dev/blog/2022/09/29/journey-to-1000-gh-sta...), and we also marked the moment when we were accepted in YC (we actually applied 3 times in a row!).
We thought about it a bit already and definitely not 100% of concepts from the domain of web apps would apply (e.g. routes maybe don't make sense in mobile apps), but there is still a lot that could be share. Maybe Wasp could also generate some SDK you could use from your native mobile code.
That's all long-term stuff so really hard to know, but we imagined we'd first focus on getting to 1.0 with React & Node, then add support for more client/server stacks (e.g. Vue and Python), and then go towards mobile and desktop.
At the beginning of our fundraising VCs were often skeptical towards Wasp being a "new programming language", because who ever monetized (directly) Python or C++? Once we changed the narrative a bit and started referring to Terraform (DSL and a successful VC case) and emphasized that Wasp is a config language that interacts with the existing stack (so no big learning curve), we started having much better conversations.
Fundraising wasn't an easy journey for us (it took over 250 meetings) and we learned a lot about how to present and also think about Wasp. For more details, we documented our fundraise in details here: https://wasp-lang.dev/blog/2021/11/22/fundraising-learnings
At Wasp, we are building a compiled, stack-agnostic DSL for implementing full stack web-apps, that interops with the existing stack (React & Node.js currently). Imagine Ruby on Rails as a language and not bound to the specific stack or architecture. The compiler is implemented in Haskell.
Our team is remote, with engineers currently both in US and Croatia.
Job link with more details: https://wasp-lang.notion.site/Founding-Engineer-at-Wasp-88a7...
The problem we're now facing with Happy is that it doesn't really have support for error recovery. We're trying to implement LSP so recovery is important in order to have proper syntax highlighting and error reporting in an IDE.
Wondering how well ANTLR covers this, I was quite surprised to find out that Happy has so little support for it.
If there was high-level intent (e.g. something like spec language) that was preserved and versioned, that might be possible I guess.
When I hear of a full-stack framework (in a modern setting), I think of stuff like Meteor, Redwood, and Wasp-lang (disclaimer: I am one of the authors of that one). RoR also always comes to mind, although it's more commonly used as an API server nowadays.
I am using Haskell mostly for writing compilers (https://github.com/wasp-lang/wasp currently), but I believe if the tutorial isn't using a lot of specialized libraries/frameworks (which seems to be the case from the first glance), a majority of the material taught should be transferable to any domain.
- we're sticking with the "Boring Haskell" manifesto(https://www.snoyman.com/blog/2019/11/boring-haskell-manifest...) - using only the widely adopted compiler plugins and not going too crazy with the monad transformer stack, which keeps the code easy for others to contribute to.
- we've hired 2 founding engineers so far - none of them knew Haskell beforehand! But they were both senior engs well versed in different languages and I was surprised with how quickly they picked it up - within the first month they are at 90% productivity.
Although it looks like a waste of time from the distance, since it prevents you from building the product, in our case it was actually a very useful and formative experience, I'd dare to say even the most of all parts of YC. Being an OSS, developer and tech oriented startup with no revenue it made us very aware of that and forced us to learn about how we can get there. As the result, we solidified our vision and actually feel much more confident about it now than before the fundraising.
There is also a program called Entrepreneur First (https://www.joinef.com/) which does it in a more structured way, like an incubator.
We actually never insisted on being called deep-tech, but we realised that was how others characterized us, especially when talking to investors (building a new programming language sounds pretty scary, although in our case it is a non turing complete DSL).
We learned that innovating on the product is already challenging enough, and if we also innovate on the business model / adoption strategy etc it just sounds too risky. The best thing here is just to follow on somebody else's footsteps, which also makes it much easier (both for investors and ourselves) to imagine what the future will look like.