1,115 karma · joined March 13, 2008
The one place I wish I had better type safety in Snap is the SQL level. Yesod has Persistent which you can use with Snap but Persistent follows the same "black magic" design principles. I really wish there was a tool that handled PostgreSQL-specific query type checking and migration and that's it. No JSON/noSQL to SQL abstraction etc (which is cool if you want it but just a lot of if you don't). Once I pick a DB I don't want to constantly be generalizing away from it which is a conceptual overhead.
Thanks for all your great feedback!
Sorry about that!
1) Snap is super simple. It's not overdone with metaprogramming etc so it's easy to understand and debug, but it's not so simple that you have to reinvent the wheel all the time.
2) Heist, the templating engine, is super simple and powerful. It subscribes to the idea that control flow should be in Haskell and HTML/XML in the template. It's proven to scale EXTREMELY well.
3) Performance. Snap server has really performed well in production for me. Low memory and CPU usage, fast, etc. Right now I'm just running on a micro EC2 and it's not breaking a sweat under the HN load.
4) Digestive functors is a GODSEND for handling forms. It really looks like Haskell's the perfect language for form processing when you use it compared to other frameworks. It also has features like dynamic lists w/ automatic JS which many other frameworks don't support.
5) Snap is the perfect blend of simple + featureful (framework + libraries). It easily competes with microframeworks in simplicity and the heavy weight frameworks when you need the functionality.
There's a great SO post with more detail from the authors of both Snap and Yesod: http://stackoverflow.com/questions/5645168/comparing-haskell... Jump on IRC Freenode #snapframework for discussion. The community is great and really open to all frameworks and language discussion.
Re: image: Definitely. Thanks for the feedback.
Of course I'm looking for customers as well as any feedback you have to give! Feel free to contact me directly at luke@racemetric.com.
This Show HN grew out of another comment thread here: https://news.ycombinator.com/item?id=7008532
Unfortunately I don't think I can hold off on payment collection until after the race because organizers need the registration money to actually pay for the race facilities. Any suggestions there?