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.
HN user
cjfd
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.
100% agree. 'Code duplication is far cheaper than the wrong abstraction' is a very good candidate for the worst programming article ever.
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.
There are words. The word I am thinking of is 'parasite'. The billionaire class largely consists of parasites.
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.
pacman -S git vim gcc make gtest
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.
How about not? If an LLM is needed to get set up either the language or the documentation is garbage. Probably both.
Well, the short summary of it all is that the US is the very curious case of a superpower attempting to become a third world country.
"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.
Require Import String.
Definition hello: string := "Hello world!".
Print hello.
hello = String (Ascii.Ascii false false false true false false true false) (String (Ascii.Ascii true false true false false true true false) (String (Ascii.Ascii false false true true false true true false) (String (Ascii.Ascii false false true true false true true false) (String (Ascii.Ascii true true true true false true true false) (String (Ascii.Ascii false false false false false true false false) (String (Ascii.Ascii true true true false true true true false) (String (Ascii.Ascii true true true true false true true false) (String (Ascii.Ascii false true false false true true true false) (String (Ascii.Ascii false false true true false true true false) (String (Ascii.Ascii false false true false false true true false) (String (Ascii.Ascii true false false false false true false false) EmptyString))))))))))) : string
There are also some funny humorous pieces on this site.
The short summary of it being that these people are beyond terrible at giving names to things.
Well, I think there is something to it. Computers were at some point newly invented so research in algorithms suddenly became much more applicable. This opened up a gold mine of research opportunities. But like real life mines at some point they get depleted and then the research becomes much less interesting unless you happen to be interested in niche topics. But, of course, the paper mill needs to keep running and so does the production of PhDs.
There are some services where it makes sense. E.g., submitting taxes with the government, logging into the banking website. Apart from that kind of service, yes I don't think I would want my identity or age verified on more or less any website.
The article talks about 'software development will be democratized' but the current LLM hype is quite the opposite. The LLMs are owned by large companies and are quite impossible to train by any individual, if only because of energy costs. The situation where I am typing my code on my linux machine is much more democratic.
Sure, we can run the math on heat dissipation. The law of Stefan-Boltzman is free and open source and it application is high school level physics. You talk about 50 MW. You are going to need a lot of surface area to radiate that off at somewhere close to reasonable temperatures.
E.W. Dijkstra: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight".
Personally, I think, much of the art of programming is to do as much as possible with as few lines of code as possible.
Whether or not a 'LIO' exists is not that interesting to me. What is interesting is what actually exists and what has happened in history. What actually exists is an enormous shock after, for instance, world war one where the question arose how it is possible that basically an entire generation of young men was slaughtered. E.g., every small village in France has a memorial of the fallen soldiers during world war one. For many decades after the war commemoration were/are still being held. It used to be that competing for territory was just the normal thing countries did. Then, it became clear that this has a potentially enormous cost in human lives. The obvious conclusion for people who are not sleepwalking through life and through history, is that any political leader who advocates for a change in country borders and does so much as hint to violent means of doing so is totally deranged and immoral. A similar shock has gone through the world after world war two, which, for instance, lead to the creation of the declaration of universal human rights. Among the decent public, it is also concluded that a violation of human rights is deranged in immoral.
They say that prediction is difficult, especially when it is about the future. Unwise economic policies may be punished quickly, slowly or might be revoked before punished severely. The question is how much risk one is willing to take. Another matter is of morality. Being invested into something means supporting its practices and being partly responsible for them.
Incorrect. The rules based order was first attempted after the first world war and then created after the second one. These are lessen that have been bought with blood. Lots of blood. Megaliters of it. The incredible stupidity of throwing that away is absolutely disgusting.