If we accept that AI is going to do all of these things humans will be superfluous and will just be optimized away. It looks a lot like we see the birth of silicon based life by the efforts of carbon based life. Carbon based life will die and it will not even be because AI decided to kill it, it will be because feeding and watering it was less important than other concerns. Bacteria may continue to exist, though.
The question in the title is basically a non-question. AI is quite good at achieving some sorts of stated goals. The easiest way is by exerting the least amount of effort. The least amount of effort ignores ethical concerns. The training around ethical concerns was most likely rather light to start with. If we accept the hypothesis that at some point the AIs are going to be more intelligent than humans it follows that human survival is not a concern and will be ignored as a superfluous concern.
Well, who knows? The trajectory has been set in and it is downwards. After Nero and the year of the four emperors the Roman Empire still had ways to go. So, I would say also the US can potentially recover. On the other hand the saying 'it cannot possibly get worse than this' has also been disproven may times in history. In any case, I like to sum it all up by saying "The US is a superpower attempting to become a third world country".
Sure, it is quite easy to install python from source. Usually I am doing it because I need older version for work projects. Of course, the other thing that one needs in that kind of situations is virtual environments. This makes it also quite easy to ensure that you always run the correct python. Create a venv with a specific version of python and once you are in that venv, the 'python' command will automatically run that python version. That way it is easy to use an unlimited number of python version next to each other.
Yes, this sound like it is true. But is it good? I mean, if I accept this idea, I start feeling more like a pet living in the house that is my platform then as a human who creates things. Also, it can be inefficient in that the same program or algorithm ends up being implemented in every language. Also, the article does mention that there is some pain in between programming language, e.g., when writing language bindings. I would push this point a bit further and note that we have too many tools and it is extremely painful to have to know all of them. Nowadays with AI it gets a bit more easy because it can help a lot with unfamiliar tools, but still that sounds like a problem that would not need to be solved if it was not created in the first place. Multiple programming languages tend to multiply the number of tools needed. I have been feeling for decades that C++ is a good language because it can be both low level and high level and can therefore take away the need for multiple programming languages. The world seems to be taking a different course, obviously, and in my opinion it makes people less free and less powerful than they otherwise could be.
Right. Because If I want feature A and it is available in configuration among features A through Z I will always perfectly pick the right letter of the alphabet and I will not at all be irritated by having 26 options that I have no idea about what is the difference between them.
I kept my old laptop (bought in 2007) alive for quite a while too. But last year I finally retired it. I also used archlinux 32 which worked fine for a while. But at some point the breakages really got too bad. I was using xfce4. For a while the xfce4-terminal was broken and would not start. That has the easy workaround of using xterm instead. But there were more breakages and it just started taking too much time. Quite a bit of software is ditching, or has ditched, 32-bit support.
Well, Joel is not saying not to refactor anything. In fact he is advocating improving the code quality in small steps. What is missing there is that in practice improving code quality in small steps requires automated tests . But I guess he can be forgiven given when he wrote the article.
You can talk about UBI if you want to appear nice but people on UBI are also rather useless. Of course the real solution to the problem will be the change of carbon based life into silicon based life and the extermination of the former kind of life. Which is not the elected representatives problem if it happens to happen more than 4 years into the future.
No. The duplication is seldomly that clean. It has started to diverge in subtle ways where the question becomes whether that was the intention or not. In the worst possible cases it has resulted in 8000-line functions full of duplication. 're-architecting the whole system to remove a bad abstraction' sounds fear mongering. That never happens.
By the way, I am old enough to remember that world. When I was young, people had fat books with maps of most large and medium size places in the country.
I am not so sure. The world of printing out driving directions or emailing photos sounds a lot more calm. Also, simply quite enjoyable. The current world is cramming too many events in too little time, it seems. Stress is quite bad for health so I am not so sure about these hundreds of millions of lives saved. It may also have costed quite a few.
So what would be a good architecture? How would I recognize it if I stumbled against it?
My own inclinations here are that it would be good to have as few different technologies as possible. To run things on as few different machines as possible and to have automated tests for everything. The thing is that as soon as there are multiple technologies you get to have different people specializing in them and it is always the communications between those that becomes painful. The automated tests are there to prevent fear of change setting in. I think I am kind of advocating what is called a 'big ball of mud' but that I want it to be a transparent ball of mud because of automated testing. I guess what I am saying is that I distrust most developments in so-called application architecture of the last few decades except automated tests. In particular, I think frameworks and microservices are mostly just bad.
I am not sure about the goose feather and the vellum but you do have a point about proving consistency. Fortunately, I also have a coq/rocq project for that kind of stuff so maybe one day I can be a not-so-very-weak programmer.
That is about it. No stinkin' config files needed. Initial Makefile is about 15 lines long, I can type it myself or copy something from another project.
"assuming you have a real engineering job" does a lot of work there. You could also do a lot of work the other way by stating "assuming you are getting a real education". I studied physics when I was young and that field is a lot deeper than my current work in programming. Computer science can also be quite deep if one considers things like the halting problem, type theory and proof assistants.
On the other hand, if you store a small integer in a float it is generally reliable to compare to it. E.g., setting a float to zero and comparing whether the float is zero.
This sounds all true to me, but I think there is more. It is not just decisions by management, it is also the wider economic context. Low interest rates and, for the US, having the world reserve currency as your own currency both seem to make many of these changes attractive or even inevitable. Low interest rates lead to 'innovation' which I put in scare quotes because besides real innovation it can also mean something that passes as innovation but in the end just turns out to be a bubble of stuff that was not valuable enough. The 'innovation' then crowds out investments in more boring sectors like manufacturing. This is also not good for the population in general because fewer jobs are left for people who are not suited for working in highly 'innovative' sectors.
From the quotes in the article it sounds pretty simple. These are words that everyone can understand. Of course, the fascist right is attempting to 'inform' the public at a level where even two-syllable words are a bit too complicated. But maybe the general public also should attempt to be at a level a bit higher than cattle.
All kinds of worries are possible. (1) It turns out that all this AI generated stuff is full of bugs and we go back to traditional software development, creating a giant disinvestment and economic downturn. (2) sofware quality going way down. we cannot produce reliable programs anymore. (3) massive energy use makes it impossible to use sustainable energy sources and we wreck the environment every more than we are currently doing. (4) AIs are in the hands of a few big companies that abuse their power. (5) AI becomes smarter than humans and decides that humans are outdated and kills all of us.
It obviously depends on how powerful AI is going to become. These scenarios are mutually exclusive because some assume that AI is actually not very powerful and some assume that it is very powerful. I think one of these things happening is not at all unlikely.
When I was a teenager, I read a book about assembly language for the commodore and implemented the game of life in a really simple way. I just used the text screen. To switch on a cell, I would put an asterisk ('*') in it. Then I could run my machine code program and it would evolve according to the rules of the game of life.
Well, if you do not need to care about performance everything can be extremely simple indeed. Let me show you some data structure in coq/rocq while switching off notations and diplaying low level content.