196 karma · joined November 12, 2013
Also, Automag all the way.
Was the data stolen in transit (should be entirely encrypted) or stolen while at rest?
Here's a great essay on the ills of a policy like this: http://jacobian.org/writing/unlimited-vacation/
One of the main issues it that the US is one of the few (maybe only?) industrialized nation that doesn't require companies to offer PTO: http://en.wikipedia.org/wiki/List_of_statutory_minimum_emplo...
Edit: If you expand the list of supported languages, it shows Python too.
It's funny, relatable, and immediately makes you want to buy the product they're selling. Also, very cool use of hot new technology.
You should commit your asset files in the Bundle, but not the ones in web/bundles/ because those are created by copying or symlinking the assets in your Bundle.
Lots of suggestions:
* Don't write your own cron scripts, use Symfony Commands.
* Delete the Acme Bundle.
* Don't store your vendor directory in Git! Completely unnecessary and waste of 47MB.
* Don't commit parameters.yml, that's what parameters.yml.dist is for.
* Use a migration tool (Doctrine Migrations are fine) instead of one big SQL dump.
* Not sure what mongodb/example.php is for.
* Why is all the plivo stuff in web/plivo/ instead of being a callable controller?
* Are you manually generating your Doctrine entities?
* Don't commit your asset directories (they should be symlinks).
* No need to use PHPMailer (or include the entire project in your repository), Symfony comes with Swiftmailer which is great.
* Same with src/Phone, add that library through Composer (https://packagist.org/packages/practo/libphonenumber-for-php).
The design looks great, but I wouldn't trust a lot of this (especially after seeing how many hosts and usernames and passwords you left scattered about).
http://growingsoftware.org/expert-php-deployments/
It hasn't made me rich, but it usually sells about a copy a day. I love that it's entirely passive. I wrote it, published it, and it just sits there on my website making money.
It's also been a good way to build a list of people who would be interested in other things I make.
PS. Use coupon code "hn" for $2 off if you're interested.
I even had a small MVP, but gave up on it. Gumroad came along and built a great product. Your idea matters very little. And Gumroad didn't steal anything.
I fixed your image, will open an issue to fix it.
I plan on open sourcing it as soon as I add some tests so it's not totally embarrassing. Check it out. Thanks!
Combined with a better overall language (that still has it's warts, lets be clear here) and an ever expanding amazing ecosystem of great libraries and you have something that is easy to deploy _and_ fun to work with.
First, it shows your children you can be entertained without an electronic device. My oldest son is three and already an expert on the iPad and iPhone. It worries me how much he wants to use the device, and telling him he can't use it and the whole family is taking a timeout from electronics is important to his growth. He can draw while I read a book, for example.
Second, buying physical books at a bookstore is a great bonding experience. I love taking my little guys to the local Half Price Books which always has a great dedicated kids section.
These reasons aren't only for parents, of course, but as a parent I find having physical books present is important.
Keep double opt-in, it's necessary (and I think required in Mailchimp's case unless you use the API directly).
Can't wait to start playing with version 5.
Executing a DELETE statement and deleting a bunch of data is simple. Implementing "undo" is more difficult, especially for browser based software. How long is the undo valid for? Can you undo every action? How many levels of undo do you support? Do you allow an undo for UPDATE's as well (updating a blog post to set it's content is essentially deleting it, and would probably be something you want undone, for example).
On top of just building the functionality in to your app, communicating it to your users is also difficult since the web app medium is so different than the desktop one.