• 7 Posts
  • 218 Comments
Joined 3 年前
cake
Cake day: 2023年6月14日

help-circle




  • Hi! You are still bullshitting us. To understand your own incorrectness, please consider what a chatbot should give as an answer to the following questions which I gave previously, on Lobsters:

    • Is the continuum hypothesis true?
    • Is the Goldbach conjecture true?
    • Is NP contained in P?
    • Which of Impagliazzo’s Five Worlds do we inhabit?

    The biggest questions in mathematics do not fit nicely into the chatbot paradigm and demonstrate that LLMs lack intelligence (whatever that is). I wrote about Somebody Else’s Paper, but it applies to you too:

    This attempt doesn’t quite get over the epistemological issue that something can be true or false, determined and decided, prior to human society learning about it and incorporating it into training data.

    Also, on a personal note, I recommend taking a writing course and organizing your thoughts prior to writing long posts for other people. Your writing voice is not really yours, but borrowed from chatbots; I suspect that you’re about halfway down the path that I described previously, on Lobsters. This is reversible but you have to care about yourself.

    Last time, when I tried to explain this to you, you decided to use personal insults. Mate, I’m not the one who has eaten your brains. I’m not the one who told you that LLMs can be turned into genies or oracles via system prompts. I’m certainly not the one who told you that RAG solves confabulation. You may have to stop worshipping the chatbot for a moment in order to understand this but I assure you that it is worthwhile.



  • I think that there are two pieces to it. There’s tradition, of course, but I don’t think that that’s a motive. Also, some folks will argue that not taking hands off the keyboard, not going to a mouse, is an advantage; I’m genuinely not sure about that. Finally, I happen to have decent touch typing; this test tells me 87 WPM @ 96% accuracy.

    First, I don’t spend that much time at the text editor. Most of my time is either at a whiteboard, synchronizing designs and communicating with coworkers, or reading docs. I’d estimate that maybe 10-20% of my time is editing text. Moreover, when I’m writing docs or prose, I don’t need IDE features at all; at those times, I enable vim’s spell check and punch the keys, and I’d like my text editor to not get in the way. In general, I think of programming as Naur’s theory-building process, and I value my understanding of the system (or my user’s understanding, etc.) over any computer-rendered view of the system.

    Second, when I am editing text, I have a planned series of changes that I want to make. Both Emacs and vim descend from lineages of editors (TECO and ed respectively) which are built out of primitive operations on text buffers. Both editors allow macro-instructions, today called macros, which are programmable sequences of primitive operations. In vim, actions like reflowing a paragraph (gqap) or deleting everything up to the next semicolon and switching to insert mode (ct;) are actually sentences of a vim grammar which has its own verbs and nouns.

    As a concrete example, I’m currently hacking Linux kernel because I have some old patches that I am forward-porting. From the outside, my workflow looks like staring out the window for several minutes, opening vim and editing less than one line over the course of about twenty seconds, and restarting a kernel build. From the inside, I read the error message from the previous kernel build, jump to the indicated line in vim with g, and edit it to not have an error. Most of my time is spent legitimately slacking multitasking. This is how we bring up hardware for the initial boot and driver development too.

    Third! This isn’t universal for Linux hackers. I make programming languages. Right now, I’m working with a Smalltalk-like syntax which compiles to execline. There’s no IDE for execline and Smalltalks famously invented self-hosted IDEs, so there’s no existing IDE which magically can assist me; I’d have to create my own IDE. With vim, I can easily reuse existing execline and Smalltalk syntax highlighting, which is all I really want for code legibility. This lets me put most of my time where it should go: thinking about possibilities and what could be done next.


  • Corbin@programming.devtoProgrammer Humor@programming.devIt do be like that
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    1
    ·
    10 天前

    So, you’ve never known any Unix hackers? I worked for a student datacenter when I was at university, and we were mostly vim users; as far as text-editor diversity, we did have one guy who was into emacs and another who preferred nano. After that, I went to work at Google, where I continued to use vim. As far as fancy IDE features, I do use syntax highlighting and I know how to use the spell checker but I don’t use autocomplete. I’ve heard of neovim but don’t have a good reason to try it out yet; maybe next decade?


  • Hi! You are bullshitting us. To understand your own incorrectness, please consider what a chatbot should give as an answer to the following questions which I gave previously, on Lobsters:

    • Is the continuum hypothesis true?
    • Is the Goldbach conjecture true?
    • Is NP contained in P?
    • Which of Impagliazzo’s Five Worlds do we inhabit?

    The biggest questions in mathematics do not fit nicely into the chatbot paradigm and demonstrate that LLMs lack intelligence (whatever that is). I wrote about Somebody Else’s Paper, but it applies to you too:

    This attempt doesn’t quite get over the epistemological issue that something can be true or false, determined and decided, prior to human society learning about it and incorporating it into training data.

    Also, on a personal note, I recommend taking a writing course and organizing your thoughts prior to writing long posts for other people. Your writing voice is not really yours, but borrowed from chatbots; I suspect that you’re about halfway down the path that I described previously, on Lobsters. This is reversible but you have to care about yourself.


  • Secondarily, you are the first person to give me a solid reason as to why the current paradigm is unworkable. Despite my mediocre recall I have spent most of my life studying AI well before all this LLM stuff, so I like to think I was at least well educated on the topic at one point.

    Unfortunately it seems that your education was missing the foundations of deep learning. PAC learning is the current meta-framework, it’s been around for about four decades, and at its core is the idea that even the best learners are not guaranteed to learn the solution to a hard problem.

    I am somewhat curious about what architecture changes need to be made to allow for actual problem solving.

    First, convince us that humans are actual problem solvers. The question is begged; we want computers to be intelligent but we didn’t check whether humans were intelligent before deciding that we would learn intelligence from human-generated data.





  • Hi! Welcome to the Nix community. You’ve made an unfortunate choice for your first package, because VPNs usually need to be integrated with system networking to function properly, and Nix without a daemon or NixOS is not able to do that. A distro has multiple pieces, including package management (putting executables and libraries onto your disk) and system configuration (interacting with the low-level hardware). Nix is a package manager; NixOS is Nix and also system configuration and some other stuff like booting.

    For the specific case of Mullavad, I found this community documentation:

    Warning: Mullvad VPN currently only works if systemd-resolved is enabled.

    All you need to know here is that systemd is part of the system configuration; systemd-resolved is part of how some Linux systems look up names. Nix’s version of Mullavad VPN is only compatible with a specific NixOS configuration.

    Honestly, it’s great to hear that the GUI and nix-env are working for you; those are things that often break on unusual targets. It sounds like the only thing that doesn’t work is something which cannot work as installed.





  • I want you to write kernel code for a few years. But we go to Lemmy with the machismo we have, not the machismo we wish we had. Write a JSON recognizer; it should have the following signature and correctly recognize ECMA 404, returning 0 on success and 1 on failure.

    int recognizeJSON(const char*);
    

    I estimate that this should take you about 120 lines of code. My prior estimated defect rate for C programs is about one per 60 lines. So, to get under par, your code should have fewer than two bugs.


  • They had you right the first time. You have a horde of accounts and your main approach is to post Somebody Else’s Opinion for engagement. You have roughly the political sophistication of a cornstalk and you don’t read the articles that you submit. You don’t engage on anything you’ve posted except to defend your style of posting. There’s no indication that you produce Free Software. You use Lemmy like Ghislane Maxwell used Reddit.



  • Java is bad but object-based message-passing environments are good. Classes are bad, prototypes are also bad, and mixins are unsound. That all said, you’ve not understood SOLID yet! S and O say that just because one class is Turing-complete (with general recursion, calling itself) does not mean that one class is the optimal design; they can be seen as opinions rather than hard rules. L is literally a theorem of any non-shitty type system; the fact that it fails in Java should be seen as a fault of Java. I is merely the idea that a class doesn’t have to implement every interface or be coercible to any type; that is, there can be non-printable non-callable non-serializable objects. Finally, D is merely a consequence of objects not being functions; when we want to apply a functionf to a value x but both are actually objects, both f.call(x) and x.getCalled(f) open a new stack frame with f and x local, and all of the details are encapsulation details.

    So, 40%, maybe? S really is not that unreasonable on its own; it reminds me of a classic movie moment from “Meet the Parents” about how a suitcase manufacturer may have produced more than one suitcase. We do intend to allocate more than one object in the course of operating the system! But also it perhaps goes too far in encouraging folks to break up objects that are fine as-is. O makes a lot of sense from the perspective that code is sometimes write-once immutable such that a new version of a package can add new classes to a system but cannot change existing classes. Outside of that perspective, it’s not at all helpful, because sometimes it really does make sense to refactor a codebase in order to more efficiently use some improved interface.