73 karma · joined March 22, 2012
1) Methods with names that indicate the parameter types. 2) Method calls on objects to convert some internal struct data from one type to another. 3) Something I haven't thought of that doesn't involve losing a handle on your type.
So there is certainly a loss in convenience, but if you use the type system it can be just as safe as a functional language as far as I can tell. So, yeah, it isn't as intellectually elegant, but it also isn't really that hard to deal with.
So "Follow the local Law" seems to me to be the very definition of moral relativism.
Incidentally do you find that compiling is actually disappointingly slow? My current project takes about 2.5 seconds to build and that feels very long.
If anything, I think it isn't the experience of a startup that is terrible so much as the emotional burnout that often seems to result from being in one. I think everybody in their youth should experience it just to see how far they can go. I would only recommend that they don't do it in a situation where they are the only one steering the ship :) It can lead to lots of sleepless nights and tremendous amounts of pressure, but I would imagine that sharing the load with a couple other people would make it a lot more "fun" as well as providing all of the educational benefits available for participating. Nothing is better for developing your style as a programmer than having to program a lot over a long period of time. There are more opportunities to make mistakes in a startup which means there are more opportunities to learn. I would say it is far better than a corporate environment, which I have also had the pleasure of working in.
But don't worry we will have something similar to this in the not so distant future when editing video footage quickly and with picture perfect results makes it hard to determine if evidence is real.