Can we get away from the &quot;programming&quot; == &quot;web programming&quot; fallacy?  Building simple CRUD on a RoR stack is but one tiny part of the professional programming world.<p>Hell, I could consider myself a web developer of sorts, and I wear many hats: algorithm design, basic database optimization, backend services, REST API design&#x2F;implementation, basic security, profiling&#x2F;benchmarking (client-side, server-side, and backend services), basic interaction design, basic project management (of the tech lead variety), code review, debugging, basic devops deployment&#x2F;monitoring, etc. etc. etc.<p>(You might notice I put &quot;basic&quot; on a lot of those; I&#x27;m just old enough to have stopped thinking that I&#x27;m really good at most of this.)<p>...and that leaves out the zillion other things that programmers of various stripes do: custom kernel builds, <i>real</i> nuts-and-bolts database optimization (i.e. &quot;OK, I&#x27;m going to go patch MySQL now&quot;), sensors&#x2F;microcontrollers, real-time computing, scientific computing, distributed systems design&#x2F;implementation, content design, visual design, data analytics, growth hacking, user testing, playtesting, statistical machine learning, writing academic papers, public speaking (e.g. &quot;developer evangelist&quot; roles, or anyone who ever has to present their work in meetings), open-sourcing...<p><i>gasp</i> OK, I&#x27;ve got to go do some of the aforementioned things now, before I spend all day writing this list :)