Interesting article and thoughts, but having previously prompted fellow designers to pick up code I soon came to realise that it is not as feasible as a broadly sweeping statement would suggest.
I have spent many late nights over many years teaching myself to code. Whilst I love that I understand and can connect many concepts in code, I am still a far way off from producing great web or native applications. That is what the engineers that I work with do. To suggest that designers should learn to code and do prototypes in this medium is no small request and eventually leads to yet another level of abstraction.
Sketch and InVision are an abstraction from code, but so too is a poorly created prototype in code. I would much rather a member of my team threw together a prototype in 1 day using Sketch + InVision in place of spending one week or more trying to throw it together in a Bootstrap mashup of mis-configured components.
Bootstrap may be easy to put together a Bootstrap-flavoured UI but again this is an abstraction of what that designers actual product will look and function like. I don’t see this as a reasonable replacement in all cases. Whichever method communicates the most realistic and testable solution should be the one which is use.
At the end of the day, designers should solve problems and communicate their solutions in effective ways. Whether that is through code, Sketch, InVision, Photoshop, whatever…it should be the call of the designer and the team to decide which method works best for the benefit of delivering a shit-hot product.
I previously covered my views in a previous post ( https://medium.com/@northswiss/designers-fill-the-gaps-don-t-grow-a-horn-57d254d3f748#.2mbtci489 ) and would love to hear any thoughts or feedbacks on my angle.
Learning to code is great. Developing a common language is great. But the degree to which anyone develops these areas are wholly dependant on too many factors to make this a broad-sweeping suggestion.