solution without tremendous cost, so I won't do it. But I'll think I am being a Good Programmer because on the surface I am being very robust about making sure this API works, and these implementations work. The probelm is, it's the wrong API and wrong implementations.
-
Show this thread
-
This is also how I feel about languages that I think are "too static" like Rust. If I am just rough-drafting, I don't care if things are quite correct. Let me leak memory right now, it doesn't matter, I will probably throw away this procedure 4 times anyway; when I get to the
3 replies 6 retweets 71 likesShow this thread -
5th and final one, *then* let's make sure it doesn't leak memory. If you force me to be too correct up front, you remove the possibility of low-cost experimentation.
5 replies 3 retweets 80 likesShow this thread -
I think that software quality today is very poor, and correctness-proving systems are key to fixing this. I think the idea that Rust has that you should have annotations in your program, that ensure whatever dimensions of correctness are possible to ensure, is a good one.
3 replies 2 retweets 59 likesShow this thread -
But the flaw in Rust's approach is that I am forced to do this from day one (and forced to pay for it with time on every compilation). Let me experiment, let me gain expertise in this domain, then when it's time to get serious, let me layer in these checks.
6 replies 3 retweets 68 likesShow this thread -
(In theory you can mark an entire Rust program 'unsafe' and slowly remove this over time, but the language doesn't seem to really want you to do this, and the all-or-nothing mechanics are impractical. Let me layer in one check at a time, build it up.)
4 replies 1 retweet 32 likesShow this thread -
I don't mean to only address Rust here, it's just a concrete example of this class of languages. If you let me iterate and experiment, but then also provide me tools with which to ensure my program is correct, but I don't have to pay the costs of this on day one, that's great.
5 replies 2 retweets 37 likesShow this thread -
Iteration speed is very important for productivity. There's a big difference between compilation being instant, and taking 5 seconds. There's a big difference between 5 seconds and a minute. There's a big difference between 1 minute and 20 minutes.
5 replies 10 retweets 87 likesShow this thread -
If you have been paying 20 minutes every compilation for years, it's likely you no longer have a feel for what you have lost. If you get back to 1 minute, that'd be amazing. But also the person who was at 1 minute person no longer has a feel for what they have lost... !
2 replies 7 retweets 54 likesShow this thread -
Computers today are amazingly fast. They should be able to compile programs almost instantly, for any reasonable program size. If they aren't doing that, it's the sign of a problem.
9 replies 26 retweets 158 likesShow this thread
I don't agree with you on everything, but on this point 100%. My main work now is GUI in Rust, and long iteration cycles are probably the biggest problem.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.