• 0 Posts
  • 177 Comments
Joined 3 years ago
cake
Cake day: June 30th, 2023

help-circle

  • You can train it on all the source code, meta data for that source code, and documentation you want but it will never understand programming. It’s a text predictor that was trained on both sides of a bunch of debates. Contradictions mean nothing to it, but it usually only predicts what one side of the debate will say to champion its side, which means it will use confident and absolute language to “sell” whatever side of the debate it looks like the previous tokens are headed towards.

    It is impressive what it can output sometimes and it makes a decent debate/exploration partner, but it will always have a chance at predicting a useless series of tokens or contradicting the previous thing it just said because a) its training data only trains it to predict tokens from statistics, and b) its training data includes some of those contradictions directly.

    I have lost count of the times I’ve been “thinking out loud” about something with an LLM and realize something about what I’m thinking about that contradicts what it is currently saying, then I’ll add my new perspective and it agrees entirely, despite the contradiction. Sometimes it tries to resolve the contradiction, sometimes it just abandons what it said previously entirely, sometimes it adds more to the perspective that I hadn’t considered.

    That’s fine for just shooting the shit about some random topic but horrible for a tool intended to provide expertise and reliability, when the response matters because it feeds into something else and you want to automate it. Should a tool just inject “are you sure?” after each response? What if it makes it second guess something that was correct? What if it’s one of those debates and it will endlessly switch sides when it faces any opposition? That’s a waste of resources and time.

    Funny thing is I’m expecting this to eventually go back to scripting for automation. An LLM has a higher chance of outputting a script that does what you want (depending on the task) while you hold its hand than it does of consistently giving the correct output when it is thrown into an automated system directly. But you get “goodish” results much quicker just trying putting the LLMs everywhere, even if there’s some selection bias on the results (“didn’t work, didn’t work, oh it worked, great!”).


  • For someone fluent in all involved languages, sure.

    But from the sounds of it, OP’s company outsources the translation but doesn’t fully trust the output they get back. They’re back to square one for verifying it, because if they knew both languages enough to verify, they could do the translations themselves.

    The problem AI is trying to solve is “how do I access a skill I don’t have cheaply?” It’s only because it’s bad at that problem that it has shifted to “how can we use AI to get more production out of the skilled workers we still need to babysit the AI that is unreliable at everything?”


  • It’s kinda like the push to return to office. It was driven by corps having invested in the “can’t fail (ignoring the last previous crash)” real estate market and buying their offices. If everyone suddenly works from home instead of in the office, then those investments go bad because demand for office space is way down. So they tell people to go back to the office, hoping to return to that “every business needs offices!” status quo and save their investments. Though the demand is false (especially combined with layoffs), so it won’t necessarily cause any new corp to want that office space. If they don’t have the sunk cost, then they don’t need to accept the rest of the fallacy.

    With AI, it’s the same but just replace building investment with R&D as well as data centre investment. A lot of the companies really pushing AI are the ones that will profit from people going along with that. They really want to build a dependence amongst users as well as a good reputation for execs so they can get a return on the investment. Then there’s also the True Believers (who think LLMs are brilliant AIs that can solve anything if given the right prompts) and the FOMOs (who don’t know much about it but see the world moving towards it and don’t want to miss it because if it was a real AI, missing it could be a massive mistake). There’s also some people who just don’t have various skills and want the AI agents to fill those gaps (and probably don’t have a very good idea about what the LLMs are actually doing in those gaps).

    At this point, I think it’s a mistake to go all in on this tech. LLMs aren’t reliable, and their ability to “perform” is more about their flexibility than being well-suited for any task. They’ll go directly from saying things that seem “insightful” (they have no insight) to making the dumbest “mistake” (a mistake requires intent, which they lack, they just predict tokens). But there’s all kinds of false and true (albeit misguided IMO) demand right now and it’s still in early pricing mode (remember the intent is to make that investment money back).

    Oh and there’s also China which has been making more efficient models and open sourcing some of them. If they continue to do this, there’s a decent chance those investments will never give the desired returns, at least not to those who are trying to sell tokens. Or those who depend on those selling tokens, like any hardware companies selling hardware under the assumption that it will then make the money to pay for itself (which I believe both nVidia and AMD have done).

    It’s mirroring the dotcom bubble with that last bit because network cable companies started loaning the money to pay for their cables to ISPs, expecting returns that never came.



  • And AI is going to put that into overdrive.

    For a little while, I helped with some intern and recent grad interviews and holy shit some people didn’t have a clue. Had one guy on a remote interview that had a friend there helping him answer questions. It was obvious because he didn’t even mute his mic and we could hear them. And it was extra pathetic because his friend wasn’t even feeding him anything useful, like Bevis was helping Butthead with a software engineering interview.

    We had a short break and when we resumed, he had at least figured out to mute his mic between questions (not that that helped, as muting yourself frequently when you’re one of the main speakers in the meeting alone is a red flag without some reason that should be obvious when it isn’t muted). Only resumed because I was fairly new to interviewing, if I got one of those today (and still did interviews), I would have ended it early.


  • Though, if you prefer, you can also move your hand to the mouse. With the scroll wheel and good hand-eye coordination, you can get pretty close to the speed of a true vim exper–haha jk, they finished converting the entire source file from python to rust using a specially crafted regex by the time your hand reached the mouse and implemented a matrix view by the time you scrolled to the line you wanted.

    And when you say that falling green symbols aren’t that impressive, they look at you in confusion for a moment before realizing what you meant and handing you a VR plug to show you what “matrix view” really means.



  • Very efficiently.

    Or for a less cheeky answer, I believe the method they used at a high level was pointing a camera at a few guide stars, so the 30 lines of assembly might have been a loop that checked those cameras for any drift of those stars and did a correction pulse of the rotation boosters to keep them centered. Oh, one of the references might have been the signal strength from home, too (signal gets weaker if the antenna isn’t aligned).

    Unless it was an emergency, it might only need to look at 5 pixels to determine alignment and correction.

    Also, just because it’s assembly doesn’t mean it can’t call subroutines and functions, so that 30 lines might be misleading in the way those several lines in the other reply have way more going on. That said, if it’s just doing a pixel brightness comparison, that’s one line to read the central pixel, then for each direction one line to read that pixel, one more to compare, one line to jump to next comparison if center is brighter, one instruction to initiate correction burn, one instruction to stop it immediately after, then one instruction to return to the start of the loop… Which comes to 22 lines total, leaving 8 for logging or maybe timing the burn. And that’s assuming their instruction set didn’t have anything fancy like read and compare, compare and jump, or a single instruction burn pulse.





  • The reason that 25 number came up is that’s how old the cohort they were studying brain development got when their funding was cut. There’s no reason to not believe brains continue developing all our lives, or that even if that study did find a “cut off point” that it would be the same from person to person.


  • Just realized that even if there is no mechanism to get the exact date from any of these age tracking systems, they’ll be able to infer the exact dates by just looking at when the user/device transitions to the next bracket. Then they’ll know the birthday for the start of that bracket falls somewhere between the last check and the current one.

    Though maybe that data can be poisoned by making it transition backwards occasionally, so it looks like the user is editing their age older and back or something. But, on the other hand, a lack of data or poisoned data is going to be a flag on its own at some point (if not already).






  • Ah, that’s efficiency of use and depends more on how familiar you are with the software as well as the design and task. Like editing an image or video is going to be a lot easier with a gui than a command line interface (other than generating slop I guess).

    When people talk about how efficient software is, it’s usually referring more to the amount of resources it uses (including time) to run its processes.

    Eg an electron app is running a browser that is manipulating and rendering html elements running JavaScript (or other scripts/semi-compiled code). There is an interpreter that needs to process whatever code it is to do the manipulation and then an html renderer to turn that into an image to display on the screen. The interpreter and renderer run as machine code on the CPU, interacting with the window manager and the kernel.

    A native app doesn’t bother with the interpreter and html renderer and itself runs as machine code on the CPU and interacts with the window manager and kernel. This saves a bunch of memory, since there isn’t an intermediate html state that needs to be stored, and time by cutting out the interpreter and html render steps.