6 ms·
You will no longer need to code to be a programmer. I give it 5 years max 10 years. They say software will eat the world. I did not expect software to come afte
by xbmcuser 5y ago
You will no longer need to code to be a programmer. I give it 5 years max 10 years. They say software will eat the world. I did not expect software to come after software coders but I guess they are also part of the world. They are the largest expense as well as the fastest growing expense on most of the worlds largest companies balance sheet so replacing them would save billions.
- ldjkfkdsjnv 5y agoI dont believe this at all. When I think of all the code I work on, most of it is complex logic about what needs to happen in the real world. i.e. if this user has x objects in their cart, and is a rewards member, go get this data if in india else from here. All of that logic has to go somewhere. I do think things like distruted systems, auto scaling, recomndations etc will go away. But the rest is just logic, whether you code it or put it in a config file, it still needs to be done
- zaphirplane 5y agoI don’t see a lot of people designing their own houses without a civil engineer because they used an online cad system.
- achow 5y agoExactly. That's what OP meant. Those logic are defined by business and then translated to implementation logic by dev. Today there are many situations where one can remove outsourced dev shops, if business themselves can implement the logic that is there in their head. Lowest hanging fruits are perhaps internal IT Tools and workflows.
- LouisSayers 5y agoIf only this were true. In my experience business people have a hard time defining logic to the level of granularity that a developer requires. Even if it's simply a matter of wiring things up, you'd essentially require the developer mindset / training to understand how to wire everything up to accomplish the business objective. Not to mention knowing exactly what tools to do this in and ensuring any new systems can talk with older ones etc. Developer jobs aren't going anywhere, it may get quicker to accomplish a task but you're still going to need people who understand the finer details and are able to take a human requirement and break it down and wire things up.
- nightski 5y agoThis aligns with my 10 year experience as a consultant working with C suite level executives as well. The people I have worked with are extremely smart and have incredible knowledge about their business. They can think through the happy path quite well. But when it comes to edge cases, error handling, and detailed logic they generally do not have the education/training to think about this properly. I've converted a few access databases in my day which were surprisingly sophisticated yet the lack of rigor was very transparent. There were good reasons they needed to transition to software written by a developer.
- lifeisstillgood 5y agoI have a theory of "software literacy" where software is a new form of literacy - and everyone should become literate. All you are saying here is that businesses will be populated by people who can ... read and write. I think there will come a time when businesses stop outsourcing their reading and writing to external dev shops, but that's not the idea you are thinking about. IMO your idea is "a dev shop will write lots of paragraphs in such a way they can be fitted together by an illiterate person using config" I think putting it that way highlights the problems Edit: another way to look at it is that managers "design" a company with policies and hiring etc. When a company is "software mediated" then the management is now one step removed from reality of the design of the company - the code is the design and the coders are the new managers Before software you were hiring people to follow your written policies and your occasional orders as policy did not meet reality. Now with software mediated companies, you are hiring people to write the actual policies - and as you do not / cannot be specific enough except in code the actual design is done for the managers - in short management moves to be either the coders or the managers are investors. Either way the "management" work becomes that of coders. And management this means writing code. Don't write code? not a manager. you can be an investor, a visionary, an accountant and budget holder. All fine. but not actually an executive
- achow 5y agoI was actually talking about former - stop outsourcing 'reading and writing' to dev shops. Rules and policies are quite intricately thought through and they get refined as and when 'bugs' or 'holes' are detected (to the detriment of work culture - yet another condition for buying paperclips). It is often software implementation which does not take care of all ifs and buts, as nobody has patience to write a detailed specs. Most often software tools addresses only frequent cases; when it comes to outliers and exceptions one defaults to 'manual methods' (emails, meetings, face to face talks, etc). Software implementations can be way behind when trying to keep pace with system intricacies that human minds can conjure up.
- lifeisstillgood 5y agoBut the "intricacies human minds conjure up" can themselves be coded - I mean they are rules that at least two humans have agreed on (at least enough to transact) The fact that most IT systems are behind is just saying most companies are not software mediated enough, yet. And all the robot automation and so on happening across all companies is a recognition that there needs to be deeper mediation - the implications may not be well thought through but the more a companies processes and decisions are made explicit in software the more change will be forced As an example just think of volkswagen - someone had to explicitly code up "lie on the exhaust emissions test". if that is not raising / surfacing all explicit rules and assumptions i don't know what is !
- ramoz 5y agoI disagree with the systems aspects, and actually think logic is more automated. I imagine 2 advanced crafts, Design Engineering (UI), and Systems Engineering (distributed, low level, cloud native, and… data). Everything in between (full stack, APIS, req/res handling, DB integration, data processing, etc) can all be automated efficiently. Those previous two areas seem to continuously evolve, while APIs and their integration are pretty straight forward and have been for a long time. I believe AI to be the reason why those two can’t be automated, coincidentally. AI applications require new architectures, AIUX, advanced UI metrics, etc.
- thewarrior 5y agoCoders aren't coding all the time or even the majority of the time. It's going to be a while before an AI can take part in a meeting between 2 project managers wrangle out a spec that makes everyone happy and then negotiate with the rest of the team to make the changes necessary. It's going to be even longer before the AI can figure out why the site is down and bring it back up. And then figure out how to prevent the outage. Besides that AI isn’t that intelligent yet. Training on all the jQuery code won’t yet give you an AI that can write React. If AI writes code then now the systems become exponentially more complex exponentially faster . Unless this AI is truly human or super human it won’t keep up. If we have human level AI then coding jobs are the least of our concerns .
- somenameforme 5y ago> Training on all the jQuery code won’t yet give you an AI that can write React. If AI genuinely took over coding then languages would become obsolete. The most basic turing complete language, probably some sort of RISC assembly, would be all that would ever be needed. But when will we get there? A decade ago it seemed like fully autonomous self driving vehicles were just around the corner. Now? Well that corner seems a lot further away than it did then, simply because the problems getting from 99% to 100% are proving quite resilient. Sigmoid curves look exponential on the way up...
- thewarrior 5y agoThat would create a huge explainability problem.
- cavisne 5y agoThe original "no code" dream (ie programs would be written by dragging boxes around in a UI) could have led to this. If instead the future of software becomes large ML models, software engineers will be critical. Feeding the right data, managing configuration and deployments, debugging issues all require software engineering skills.
- tubby12345 5y ago
- yjftsjthsd-h 5y agoThe obsolescence of programmers has been five years out for how many decades now? Remember when COBOL was going to make it so easy for business analyst and management to work with programs directly? (No, seriously; the fact that it reads almost like English is not an accident.) And sometimes we do make meaningful progress and perhaps AI will be the magical thing that changes everything, but you will forgive me not holding my breath.
- ehsankia 5y agoI thought my code was hard to debug, can you imagine understanding and debugging code written by an AI?
- LouisSayers 5y agoI might believe it if you said 100 years. Whenever people say stuff like this, I just think - how are all those chat bots working out? How useful do you find Siri? Honestly, if we can't even get siri to be able to answer simple questions without telling you she'll google it for you, how on earth do you expect developers to be made redundant in 5-10 years?!
- JohnJamesRambo 5y agoSiri is not working out that well but Alexa is.
- lpapez 5y agoMost of the "coding" work I do is not writing code, but instead it's communicating with a client/manager trying to extract the exact requirements for a feature they want implemented. I can't see a computer doing that any time soon and I argue that most developers have the same experience. Having the computer automate the code typing part would be immensely useful, but definetly would not make anyone obsolete.
- yazaddaruvala 5y agoI generally agree. Maybe not totally, but software developers will have a very different job role in 10 years. The most obvious is BigQuery, Palantir, Snowflake, etc. So many data pipelines that currently need 10+ teams of engineers to work on will be done through SparkSQL and SparkML by 1 or 2 teams of Data Engineers (i.e. no distributed systems knowledge) instead. It’s not there yet, but dealing (in an asynchronous context) with data at scale is very close to getting commoditized. Fortunately, UI applications (synchronous, latency sensitive applications, modeling data input from the real world, making things pretty/unique) will likely always need people to write something kinda like code lol. However, I feel like they will likely have classes/experience with HCI/design, product management/MBAs, in the long-long run probably with law/accounting/medicine/architecture/etc. That said, there is just so much of the real world that needs to be better modeled digitally that everyone that learns coding-like skills will continue to be highly employable. At least, until the singularity. Then all bets are off.
- ramoz 5y agoCompletely agree that Data Engineering is a bloated skill set. I have devops engineers who can manage/build out complex pipelines and actually prefer they do since we simultaneously manage large scale cloud architectures. For anything overtly complex (actual data parsing challenges) they usually consult with a data scientist on a team. I’m constantly reviewing data engineering resume and am wondering “what exactly is this person going to be doing if it isn’t some outdated architecture and o&m work …. Why would we hire this person vs a cloud native software engineer who costs x2 less” etc
- Donckele 5y agoAre you in marketing?
- ren_engineer 5y agosomebody needs to understand how it all works though, otherwise we'll end up in some fictional dystopia where nobody understands how their magical technology actually works under the hood. I can see the tools being made to make lots of automation and connection of tools possible without understanding code, but there will always be people who have to understand it all.