4 ms·
This feels like it could quickly descend in to self congratulation. So to cast this in a different light perhaps another way to think about this is that program
by xevb3k 9y ago
This feels like it could quickly descend in to self congratulation. So to cast this in a different light perhaps another way to think about this is that programming is just becoming a basic skill, like reading, writing, basic mathematics required for all disciplines.
Most dedicated software engineers exist because this new basic skill hasn’t yet gained widespread adoption as a basic skill in other disciplines. But with time it will, and the number of dedicated software engineers required will decline.
- Supernaut 9y agoIt takes a child several years in full-time education to learn how to fluently read and write. Basic mathematics takes even longer. Similarly, a typical person will become a skilled and highly productive software engineer only through spending several years working full-time at the profession, ideally with the assistance of one or more mentors. Having only a basic grasp of the concepts behind programming does not enable anyone to achieve anything particularly useful, and someone working in a different profession will not have the time or energy to acquire the skills needed to roll their own applications, unless they're an unusually dedicated hobbyist.
- watwut 9y ago> Similarly, a typical person will become a skilled and highly productive software engineer only through spending several years working full-time at the profession, ideally with the assistance of one or more mentors. Having only a basic grasp of the concepts behind programming does not enable anyone to achieve anything particularly useful [...] You can create basic good looking iOS or web or android app without all those years and be extremely useful. Many jobs and positions don't require years of study with mentors. Many self taught programmers started like that. You can do basic data analytics and write selects without years or study too. There is huge amount of positions that don't require years of study.
- Supernaut 9y ago> You can create basic good looking iOS or web or android app without all those years and be extremely useful. We obviously have differing definitions of the word 'useful'.
- watwut 9y agoDefined as "able to be used for a practical purpose". Yes, companies need those apps and web pages and what not. They also need data analytics and what not.
- enraged_camel 9y agoThere is only one definition of the word “useful” that applies across the entire field: one whose output generates revenue for the company.
- CalRobert 9y agoSeveral years ago I worked in ad ops for one of the biggest publishers on the internet, making a bunch of ad placements by hand using Dart for Publishers, which was a dreadful product. I also was taking a night course in Java mostly for fun. At that point I didn't even know what functional programming, Big-O notation, or any of your other highfalutin' CS stuff was. All of the company's ads (thousands of different line items at any given time) had been entered by hand in to Dart. Things like "make every add weight-based-bulk with weight 100", etc. I wrote a craptacular Java app using Swing and the Dart API to get a handle on them. I mean - this thing was AWFUL. "Paste your username and password in to this box and type the name of the site you want to work with in that box and click something in this row of 14 buttons" level stuff. They used it to fix their waterfall. The first month it was an extra 80 grand or so in revenue. The next month I had a new job. This is based on what I learned in a few months of tinkering as a kid, and a few months of a Java course at Ohlone College in the east bay. Perhaps you can provide your own, more helpful, definition of useful? Most of what's "useful" is taking something that was a pile of godawful spreadsheets and making it manageable; not something meant for consumers.
- Supernaut 9y agoDoesn't your anecdote actually support my primary point, which is that a programmer with limited knowledge and experience will typically produce poor-quality software? (Or, to use your own terms, apps that are craptacular and awful?) An application, in my mind, is truly useful when it not only fulfils a user requirement, but is also dependable, scaleable and maintainable. It's not best practice for a business to base a process around some jury rigged POS that will be thrown away in horror when an experienced developer eventually gets a look at it. But hey, we can agree to differ on this.
- rimliu 9y agoYou can. Others cannot. I think you vastly overestimate the number of people capable of doing that.
- xevb3k 9y agoI don’t see the equivalence. Yes, the skill you listed take some time to acquire. But few master them to a professional level, yet still use them regularly in their jobs. I think programming is on the same trajectory. We might not even recognize many of the tools as “programming” (they might look more like spreadsheets). But I think general up take of programming skill will increase.
- Supernaut 9y ago> Yes, the skill you listed take some time to acquire. But few master them to a professional level So you're contending that few people can fluently read or write their own native language?
- xevb3k 9y agoI’m saying that few people write as their sole occupation (novelists, maybe journalists etc). Others use it as part of their professional work, but it is not their sole professional work. Similarly I’m suggesting software engineering will be part of many people’s professional work, but will be the sole professional work of few.
- stale2002 9y ago> Having only a basic grasp of the concepts behind programming does not enable anyone to achieve anything particularly useful This is absolutely untrue. There are many many jobs that are effective people doing data analysis in excel spreadsheets. The people doing this data analysis by hand can greatly improve their ability to do their jobs through simple things like learning how excel macros work. This is programming! There are tons of low handing fruit in the world, where basic tasks that are being done by hand, could easily be automated by the people doing it, through very simple, easy, "toy" solutions.
- rimliu 9y agoFor programming you need at least someone who has no problems with algebra, that's a bit above the basic maths. I say that not because you will need algebra for programming but because you must be capable of manipulating abstractions.