Hacker News new | past | comments | ask | show | jobs | submit login

> The second time I tried it, I started to get it. After I got it, I struggled to want to write code with anything else.

Reminds of the time when metaprogramming in C++ became popular. Because you can do it it does not mean you should do it all the time. Also, people felt smarter (you said once "you got it", right?). I mean, do not take it as negstive feedback against you. Even I wrote some of that template metaprogramming code at times. But not everyone can get it.

We should not forget that programming is also a social activity. The more elitist we turn it, the more barriers to contribution.

This does not mean the borrow checker is bad in itself, but from that point of view (the social one) can get in the way. It does have a steep learning curve.

That is why some of us are not convinced it is the right path even if it does add value to some niche scenarios.

Best wishes as well.




I hear you, no offense taken. I actually worked with one of the people who contributed to the creation of template metaprograming once upon a time. Its definitely not for everyone, definitely abstract at first. I tended to avoid it unless I was working on libraries.

I also agree the social factor is amongst one of the most important things in software engineering, possibly more important than code itself. Most problems are social problems without technical solutions... Anyways, I hear you, but after a bit of toiling with it, it gets way easier.

Its a steep cliff type learning experience for most people especially people who have spent a lot of time in different paradigms. My perspective is, once you get someone up the cliff it's got a really nice view. That view improves objective communication about software and program flow and reduces some fears about pointers/references in review. It's a trade off, but I think the trade off is one where you get more out then you put in. Definitely an opinion though.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: