Sure, we could have gone over the 24hr limit and do a few more "nice to have" functions. After all, this is not a commercial contracts where the time constraint is real. But we stuck to our plan, put our pride aside and just accepted that the product will look a bit bit crusty (and people will tell us).
So far, no regrets - while we feel a bit embarrassed when people give us negative feedback, at least the app is out there and criticisms will only make it better.
Don't be embarrassed. ;)
This allows my web layer to have no project reference to my data layer, and forces my developers to explicitly call the logic/service layers every time they want some data.
I totally feel your pain for Linq. I'm a .Net guy myself and when we went full time on our startup we went with C# and I vowed to never fall into the traps and horrible mistakes I saw at past jobs using Linq2Sql and EF. Before POCO was available for EF I was masking the entities with Interfaces so that the web layer had no way to make 'extra queries'. I'd love to learn more about how you used T4/POCO/EF together to clean up this constant problem.
I've also wanted an excuse to use Unity for something... haven't had the chance yet.