Look at stackoverflow for example. Thousands of programmers giving away their professional advice, spending their valuable time…for what exactly? Imaginary internet points?
Open source is another one: here’s my code that I’ve worked so hard on, spent countless hours on - please have it for free, my labor is worthless.
It’s like they’re actively seeking to bring their own value down.
Before Stackoverflow, people were answering questions on USENET newsgroups without any award of points.
And before USENET and the internet, hobbyists would gather to trade advice on building home computers. E.g.: https://en.wikipedia.org/wiki/Homebrew_Computer_Club
The common theme isn't the points... it's that people like to be helpful and share knowledge.
>Open source is another one: here’s my code that I’ve worked so hard on, spent countless hours on - please have it for free, my labor is worthless.
There are multiple motivations for open source. In my case, I did it because I could get more value from the community's enhancements than the "free code" the community got from me.
>It’s like they’re actively seeking to bring their own value down.
Neither of your 2 examples look like erosion of labor value. On the contrary, it shows that not every activity associated with programming has to be driven by the exchange of money.
Or, at least, it's only "labor" in the same sense that literature or painting is labor.
Does it seem strange to you that writers or painters would want the world to see their work, even for free? It doesn't seem strange to me.
Programming is the same.
What about this discussion we are having right now on here about this topic?
Why bother just for useless upvotes? No one is even paying me to think about this.
I can't agree with this. Programming can be like literature. It can also be like writing copy for a bad travel brochure.
It's true that software developers need to eat too but we need to figure out a way to do so without making the world more cumbersome, transactional, and shitty.
I’d estimate something like 99% of all software development (especially, perhaps, open source) is either for toys or else actively harmful. “Betterment of the species” indeed.
How do you reason? Are Linux, sqlite, LLVM, or OpenSSL actively harmful? KDE? Blender? Those are obviously not "toys" and each seems genuinely helpful and useful to me.
If software engineers want to contribute in that way, they should support the research efforts of individuals in the areas I mentioned. Those projects are meaningful and impactful. But they're a tiny fraction of software developed.
It's simply an incredibly ignorant conceit to fancy oneself as providing even small impact simply because one writes some software.
If you can't understand why someone would decide to offer their help for free then at least try to be thankful.
Basically what motivates good engineers is a good problem. If we can meet our basic needs we give the rest away for free. Companies/entities have been using/exploiting this for years. The gamification points are lame (I agree) but I believe there is a general desire to contribute to the common good and give back to the community.
https://thecreativeindependent.com/people/philip-glass-on-co...
That's weird logic. Presumably you wouldn't create something you consider worthless - you'd create it because you needed it.
When I participated on Stack Overflow, for me it was a combination of learning a lot by answering other people's questions and getting a kick out of demonstrating my expertise.
Just take my day today: interpreting the client's specs and internally communicating and planning a minor change in the context of a few parallel release paths, discussing a few tweaks to a piece of code with a colleague carefully weighing effort, impact on partially rolled out tests, and future flexibility (making best guesses as to where things are going), and analysing / fixing an issue in a piece of code which design delicately balances simplicity, robustness and performance.
Call me naive but I don't see an AI taking over before reaching (or nearing) general AI. Nor do I see how someone that's not a competitor already become one just by having access to Stack Overflow, or even a tenfold of it.
Open source is a great way to market yourself. If I have some really valuable code, then I'll keep it for myself. If I think it would be more useful and gain traction as an open source project then I might publish it and in that way position myself as the top expert on that software.
A lof of businesses are actively using, publishing and contributing to open source. Not because they don't want to make money, but because it's the way to make money.
The opposite is true. Analogy: Volvo invented the three point seatbelt. To maximize the value of the invention, they gave it away free to use.
Mass delusions are easy to propagate as they require little emotional nuance; a salute, tattoo, incantation… those used to be enough to bind large groups.
Groups are out though. We’re leaning into enabling humans as atomic agents and automating away the utilitarian social obligations, and work of biological survival to get there.
I'd say, minimally, a good 50 years, except perhaps for the busywork. At that point you could maybe have a tool that could handle a lawyer's job. Law's often an extremely creative, verbal, expressive job, so I think machines are particularly unlikely to do well there.
I'm not worried about being automated away. If someone wants to make coding easier, neat, I'm not a programmer, that's just how I get shit done. I solve complex problems, and I don't see machines taking that job for a long, long time.
Frankly, if machines can take away the mechanical bullshit part of a job and let us humans do the interesting, creative work, that works for me.
How much "interesting, creative work" is there? Surely most of the work that most of us do, and that most of us are capable of and interested in, is not simultaneously interesting and creative.
I count myself as lucky and I have certainly had a more interesting working life than average but the proportion of that forty years of work that counted as both interesting and creative is probably, looking back on it, measured in single digit percentage points.
If a machine does all the easy stuff how would I ever get enough practice to stretch myself to the difficult creative parts?
I would imagine that the answer is roughly "infinite". It's like asking "how much art is there?" - infinite.
> If a machine does all the easy stuff how would I ever get enough practice to stretch myself to the difficult creative parts?
By doing the easy stuff? I don't know, you can do whatever you want.
The machine is doing the easy stuff. Why would anyone pay a human to do it? If I am not being paid how will I get the resources needed to be able to spend time working on the easy stuff?
(stuff being done for me: CPU design and work with the OS on top of it including multithreading and IO, executing database operations, turning higher level commands into tons and tons of machine language instructions, libraries that allow me to go higher and higher in abstraction level, think synchronising, multi threading, basic data structures like dictionaries, map/filter/reduce operations, etc - where I need to I learn about them, but mostly I just use them and let them do the heavy, boring, lifting)
(working with a low code solution like Mendix is comparable, you can become creative without the boring work, of course it has a learning curve, which learns you how to use the higher abstraction layers without the need to really practice or fully understand what it takes out of your hands)
Law can be pretty verbose. Given half a paragraph, how often can an intelligence (artificial or natural) deduce what's next?
Of course the coding AI has the advantage that coders write (and publish) comments.
And writers in law write commentaries, some of them having great authority.
The article also mentions - "head of AI products at the St Petersburg office of JetBrains, a Czech developer of programming software, sees time savings of 10% to 20%. "
and the subheading says - "The software engineers of the future will, themselves, be software"
um, how seriously should we consider the fact that "skilled" software engineer/programmer solving really complex problems are at risk?
Can't say if making just another simple CRUD app is not at risk but the statements and their propositions made in the article are too generalize too plant a seed of insecurity in oneself.
I dare posing that by the time AI takes over my job, it's gotten so advanced that I've got much more to worry about than just my job.
Once I've solved a problem, I document it in code. Only seeing the code at the end misses the problem solving parts
As a programmer though, I’m not worried. Every line of code is generating more code. Every recursive function, every loop, every piece of meta programming. Every script file that calls a Python program that calls c routines that microcode that call actual ops. It’s already all generated code generating more generated code.
When (if) we have full AGI that is capable of truly understanding a real world problem and kicking off a chain of code generation and is affordable, then I’ll be worried.
Pretty sure that large law firms already automate a lot of the work they do. Standard contracts they customize for instance.
But really, aren't a lot of (billables) hours spent explaining legal concepts to customers?
* I should elaborate. We tend to easily accept the "this work is meaningful" line, we volunteer our time because "programming is a craft," and we will hop on tooling bandwagons like this because it's shiny and new without considering the ramifications.
First it was accessible programming languages (BASIC, Pascal, etc. ~1970s/80s), then it was standard software (spreadsheet software, ERM packages, etc. 1990s), then low code/no code (early 2000s), then model-/requirement driven (Rational Rose etc., late 90s, early 2000s), in between it was visual "programming" every now and again, now it's back to low code/no code again.
As long as the mechanical systems cannot test requirements for contradictions, don't accept non-functional requirements such as performance or security and produce non-correctness proven results that even fail to compile or are syntactically incorrect from time to time, I have no fears.
The current situation might as well be a local optimum in which NLP/ML will be stuck for quite a while. It's really hard to tell, but I don't see any reason for starting to panic just yet.
The term comes from this, and uncovers a bit of the futility about the so-called benefits of playing the imitation game:
https://www.steveglaveski.com/blog/the-curious-case-of-cargo...
The problem is that in the fast-paced corporate world, you either make your own startup (and usually fail at that), or you have to play the same game everyone else does. There's simply not enough time and resources to get ahead at everything. Unless you go for the smaller niche, ie. embracing agility. Of course, everyone and their mother is Agile (tm) these days too!
The key feature of cargo-culting is immitating another without understanding the why behind what they're doing.
Imitating is simply imitating. Many companies have gotten rich doing this.
Developers have a massive proclivity to follow something simply because others have. We're talking everything from best practices to design methodologies to whether or not to include a semicolon at the end of a line. There's a reason for this: writing software is very hard to measure and quantify. It's not a physical thing like a bridge or an automobile. When we hear about some new paradigm/framework/language/etc. espoused by some blue-checkmark-wielding developer who works at Google, we pay attention because...he works at Google, and seems like a trusted figure.
Not saying this is good or bad, it's just how it is.
Think about it, one well paid profession in the grips of capital siphoning off valuable, highly intellectual work (by using "open source" already), repackaging it and the selling it back to the people it aims to replace.
Imagine a million lawyers' days being recorded in 60s intervals - including what they type, the files they have opened, etc. - how long would it take to encode the average lawyer into a hdf5 file? How many lawyers would be fine with that kind of assistance?
If that's not ingenious, then I do not know what is.
Call to action: Programmer, wake up.
Edit: Just to address some typical rebuttals - I'm all for progress and cool toys, but I'm all against monopolies and mega-corps that control and monitor every aspect of your life.