4 ms·
The Future of Applications
- rationalfaith 4y ago[dead]
- jszymborski 4y agoI think that metabase example is telling, though. Is it actually easier or better to write out a whole paragraph describing your query instead of clicking through a few drop-downs? Far worse, those drop-downs are not only expressive, but they have ostensibly perfect precision. With an LLM UI, you can find yourself endlessly prompt engineering your long paragraph. AND, that's only if you've realised that the LLM didn't give you the correct result according to your query. Please don't let LLM's become the blockchain folks. It's exciting stuff, but I really think people have come to believe that LLMs are actual AGI.
- plutonorm 4y agoLook at the trajectory, not where we are. S curve, yada, yada. Sure it may top out and we will be left with something that many will argue is not AI. But on the other hand the curve may continue and it will be GAI. I don't see any sign of it topping out yet.
- ChatGTP 4y agoTranslation: “something might happen”.
- jszymborski 4y agoI don't blame people for being optimistic, LLMs represent a huge jump in what we can do with computers. But there are two huge problems here with this article that none of the progress we've made with LLMs are close to solving. 1. Most of the time, you don't actually want to talk to your computer. You have a huge database. You need to make a number of non-trivial queries with subtle but precise requirements against it. Your livelihood depends on these results being correct. You have limited time to work on it. Would you rather (A) write an SQL query or (B) text Fred to do it for you. Fred doesn't have any special knowledge of your task, but he's capable of writing SQL, and he's of an obsequious and loyal disposition; willing to do whatever you ask over SMS. Fred is a really confident guy, and his deliverable, while they are to the best of his ability, are delivered expediently regardless of how correct they are or how good Fred is at the task. Choosing B means that I need to brief Fred on the task. I need to layout explicitly what records I want, how optimized I need the query to be for my tight timeline, and I need to impress upon him how deeply important the results of the outcome are. It is of the utmost importance that I explain away every possible misconception because if Fred is unsure of something, he might just shrug it off and give me his best guess. Suddenly, the language I'm using to communicate to Fred becomes more... formal. I'm writing these verbose documents to Fred that are starting to look like ISO documents. I'm starting to see the appeal of constructed languages like Lojban which are formally verified and designed to avoid ambiguity. Wait... maybe what I actually want is a special language that would be both unambiguous and high-bandwidth. Ah yes, I think SQL would suit me just fine actually. 2. LLMs are as much building an AGI as building a keyboard is building a computer. I'll not get into it here, but there's a lot of burden of proof that LLMs are a microcosm of computers reasoning about things. LLMs are super impressive, and they are able to do some neat tricks like do math like a drunk 7 year old or generate plausible SQL injections. The rub here is that while that _feels_ like it's reasoning and has a mental model of arithmetic or cyber-security, it's just predicting what word is most likely to go next.
- plutonorm 4y agoCompletely disagree with 2. Look up AIXI. It looks and feels to me like a completely plausible and mathematically grounded theory of intelligence. One principle aspect of the theory is that it allows you to see that intelligence is merely compression. This is the origin of the Hutter prize. Compression is almost the same thing as prediction, look into the math. Llms are prediction machines. Predicting the next word isn't some stupid goal it's exactly what you need to do to build an intelligent machine.
- jszymborski 4y agoI'm failing to see what AIXI, a theoretical RL agent, has to do with LLMs. I never said that predicting the next word was a stupid goal, just that it isn't AGI.
- atoav 4y agoWhether you are fine with 2 depends on how much you are willing to shrug any possible outcome off and say: "I guess it's fine". And, more essentially, how much the rest of the company just shrugs it off and says: "I guess it's fine", so when it blows up you can defend with the famous defence my Nazi grandfather also told me: "But everybody else did it too." Remember the Xerox printer that was swapping out (and therefore falsifying) numbers in their compression algorithm whenever you made a copy? Imagine we could bring this to all of our business processes, but in new and unexpected ways.
- d1sxeyes 4y ago> The rub here is that while that _feels_ like it's reasoning and has a mental model of arithmetic or cyber-security, it's just predicting what word is most likely to go next. I have yet to hear a convincing argument that 'reasoning' is any more than simply predicting what comes next. We intuitively think that human intelligence is special, and that somehow we are categorically different to some black box of ones and zeros in any form other than substrate.
- jszymborski 4y ago
- graypegg 4y agoThe expressive aspect is an important one I think! It’s hard to know what you CAN do when you just get given an empty text box. I don’t want more mile-long “what can I ask” example query lists from the Siri/Google Assistant/Alexa era.
- brundolf 4y agoHave you used an LLM firsthand? They're nothing like the major voice assistants
- graypegg 4y agoI know that currently, every example of conversational AI is presented as “the only one you need” but there’s not much economic benefit to let your “real world service” hook into someone else’s AI tool if you also offer one right? We’re going to end up with a Bing AI that can touch things in your Microsoft account, and a Google AI that can touch things in your Google account, and if you want one to talk to the other you’re going to be messenger between them. So now everyone needs to consider that while maybe the google AI can hallucinate when the next billing cycling for your Bing Assistant subscription will happen, you need to understand that it can’t know that unless you ask the “right” assistant. The one that’s capable of reaching into the sheltered data that isn’t exposed to the internet. At least I think. Maybe there’s some economic incentive to bundling it all into one and there won’t be blessed AI’s with special access to non public data. I’m doubtful though.
- brundolf 4y agoOk, but in the original comment you were talking about the conversations being stilted and mostly limited to pre-baked commands like Siri/Alexa/etc. That's what I was saying doesn't apply here Vendor lock-in is a whole separate question. I agree it will be interesting to see how it plays out, and as with most new technologies there will be plenty of opportunities for abuse. Though I'm also not sure this problem is one that's fundamentally new and specific to AI
- 4y ago
- brundolf 4y ago> you can find yourself endlessly prompt engineering your long paragraph I already don't find this to be true most of the time, and I'm sure the tail will shrink to almost nothing very soon > Is it actually easier or better to write out a whole paragraph describing your query instead of clicking through a few drop-downs? We'll find out! I bet there will be some cases where a traditional UI actually is still more practical/efficient/intuitive. Ultimately it comes down to finding the most effective formats for getting different kinds of information to and from the computer. It'll be interesting to see where things land; lots of experimentation to be done
- rhacker 4y agoPlease let LLMs become the "next blockchain" (in terms of keeping our jobs). First off, yes blockchain was just horrible. I think generative AI is actually worth the time and energy because it's actually extremely useful. It's capable of all the things we wanted to program all these years. Secondly - its probably the one thing keeping the lights on right now. If nothing else, AI/GPT is going to be "powering" the digital economy for the next few years. Yes we'll all be writing apps that simply ordering, replace phone prompts (have you ordered from Applebees recently? - think that but way more accurate), generate splash pages, parse menus, parse _flat_ PDFs, make appointments, reservations, book travel (I mean just say where you want to go and uber->flight->uber without trying to work a UI, and as odd as it sounds a generative LLM can actually realize a long layover automatically and try to avoid it - simply because its coded in our language!). What was my last RBC count? (because my lab results are in a PDF on my desktop) This is a list I thought of in 4 minutes. What will millions of devs think of? So yes, I absolutely want to keep this gravy train rolling. If we stopped, the economy would absolutely break right now.
- jszymborski 4y agoIf the economy is being propped up by LLMs, I want this bubble to burst now and not in 5 years when I can't turn off my computer without prompt engineering a suitably precise goodbye.
- jackblemming 4y ago>So yes, I absolutely want to keep this gravy train rolling. If we stopped, the economy would absolutely break right now. I see humans are still #1 at hallucinating.
- rhacker 4y agoNothing useful, just an insult. ok. Can we talk to each other like we're friends or co-workers at least?
- lispisok 4y agoThis might be the best take I've seen so far and I cant believe I didnt think of it considering my job is frequently integrating AI into production software. The more things AI has been able to do the more things we integrate it into which has resulted in more work for software engineers. People are gonna want gpt features in everything and we'll be there to add it, probably assisted by a gpt programming assistant.
- safety1st 4y agoYes, in a conventional, form-based UI the output is a deterministic result of the input. In a LLM that will probably never be the case no matter how advanced they get. That's not the design. If an LLM's output can be called deterministic at all, it's not so in a way that a human can grok. Where LLMs are most interesting is the vast green field of nondeterministic applications, and coincidentally computers have been terrible at most of these up until now. The fuzziness is what's exciting, it is the advantage. For example this nondeterminism grants LLMs the potential to be great idea generators in a vast number of fields. LLMs will spit out ideas that are synthesized from a vast corpus of information far beyond what your own brain could ever store. They'll be great sometimes and spastic other times, it's up to you to determine which is which. This is why I'm of the view that LLMs will not be the job decimator some people are predicting, maybe they will be in a few applications like outsourced call centers... but I think the bigger phenomenon will be that someone who is creative and responsible for creative output, who also becomes good at operating a sophisticated LLM, has the potential to become really awe-inspiring in terms of their output.
- jszymborski 4y agoThis is largely my feeling as well.
- jp_monteiro 4y agoPeople usually perceive a trade-off between precision and ease of use. I think that, if done naively, natural language interfaces will indeed lead to imprecise and inconsistent answers. But it doesn't have to be like this. From my experience building Veezoo[1], natural language interfaces for data can be very powerful for business users as long as it explains back understandably what the query does, allows to modify them by clicking and it relies on a set of vetted dimensions/measures, e.g. in a semantic layer. Also, UX solutions[2] like Autocompletion (for discovery and disambiguation) are way more important for these more specific use cases of natural language interfaces than for an open-domain chatbot like ChatGPT. This usually helps a lot with the issues you've mentioned. There are many questions that are hard to write a query for but are simple to formulate in a relatively precise way (or allow the user to correct it by clicking). This is especially useful for the average business user that doesnt know SQL or struggles with "precise" tools for data analytics. [1] https://www.veezoo.com https://www.veezoo.com [2] https://www.veezoo.com/reliability-and-accuracy/ https://www.veezoo.com/reliability-and-accuracy/
- deleted 4y ago[deleted]
- monero-xmr 4y agoI have been trying to work GPT into my coding workflow, and it's more like an enhanced google. But lately I have just been using Google / Stack Overflow again because Google seems more able to return my intent based upon my short prompt than ChatGPT, which I have to coax to give what I want. LLMs are truly, truly amazing, but I don't think the "eliminates software engineering" is warranted. A productivity enhancement for sure, when used correctly and intelligently.
- graycat 4y ago> I have been trying to work GPT into my coding workflow, and it's more like an enhanced google. With one qualification, as in https://news.ycombinator.com/item?id=35431789 https://news.ycombinator.com/item?id=35431789 I agree: "My Response: For some queries Chat may be a little better than Bing or Google."
- kitsunesoba 4y agoChatGPT for me seems most useful for looking up things that are somewhat obscure or have documentation sparsely scattered across the web… the sort of thing you’d be less likely to even see asked about on SO, let alone answered. Its real value is in its (usually) intelligent synthesis of a coherent whole from many disparate parts that you would’ve been unlikely to come across all of on your own.
- Klaster_1 4y agoThis reflects my recent experience with ChatGPT, I've am writing a TypeScript plugin been and use ChatGPT to learn about the API surface. For my particular task, the documentation basically doesn't exist and Stack Overflow answers are way scarce, the next best thing to ChatGPT was GitHub searching method names across repos to serve as examples.
- autonomousErwin 4y agoSimilar case here - I've fallen into a personal rule of thumb: that if I'm after information that I can't easily verify or isn't on the tip of my tongue I'm likely to fall back to Google Search. This is either out of pure habit or an actual flaw in LLM's that in reality I'm not "surfing the internet", instead I'm "surfing the LLM" and I know this so eventually I'll hit an answer that's wrong (but the LLM has high confidence) and it's worth the extra couple of seconds on Google.
- la_fayette 4y agoYears ago i learnt about UML at university. The software engineering professor was researching the field named model driven development, i also wrote a thesis about it... the promise is to "draw" diagrams, rather than to write code. I tried many tools for doing that, but guess what, nothing really worked well. When it comes to writing the fine details of an algorithm, code is the most efficient way to do that. Using chatgpt to write code, feels to me like outsourcing, which requires so much explanations and so much testing at the receiving end, in the end the result is not that good and costs even more...
- danjc 4y agoYou've hit the nail on the head, it feels like outsourcing. That's what you do if you don't know how to code yourself. As an engineer, it's easy to miss how empowering this is for someone who isn't an engineer.
- graypegg 4y agoI’m don’t know… I kind of still hate natural language interfaces. > Perhaps the API will simply be a text prompt. You will in natural language simply ask for the data and then an AI that lives in your application will understand that, convert it into an SQL statement and then return the data to the UI. I know the benefit here is that you don’t need to understand how a relational database works. You just ask a question and it answers it with SQL as an intermediary. But now it’s just an ORM? But a weird one where if you frame the question with different pronouns or punctuation it might be different? I still feel like, if you want text as an input, a DSL is always going to be better than a natural language LLM input just for consistency’s sake. At least let me have a SQL input, and a helpful GPT-4 assistant I can ask for help writing SQL.
- qsort 4y agoNatural language to SQL is a classical AI task at this point. The goal is not to make something for developers, who will likely prefer SQL or a DSL regardless, but to craft tools that can be handed out to business people without developers having to fiddle with code for each request. (NL to SQL is actually one of my tasks at $work). Obviously, when you actually try to make such a system beyond a minimal demo to publish a paper, you start running into all kinds of issues, e.g. permissions for different users, performance, matching language to the concepts in the data. And that's not even taking into account adversarial prompts (injections, ddos, etc.) There's no chance in hell I'm hooking up my database to an undefined behavior generator! It's an interesting area that I follow closely, but the article is being a bit too optimistic.
- graypegg 4y agoThat’s cool that this is your field! It could just be the optimism in the article that’s getting to me here. I just feel like natural language as an interface has a bit too much slop in the controls, even if the controls are easier. I’d like to imagine the non technical folks using something like the dashboard example in the article would be ok with some extra work formatting their query to ensure what they think they want, is precisely what they’re asking for. Adding a little layer in there that was mostly trained on things unrelated to your query, feels more like driving-by-wire. Doesn’t mean it doesn’t work but that precision is lost? I’m also: completely out of my field for talking on this. Thanks for the interesting insight into it!
- Animats 4y agoWe now need to describe APIs in terms that a large language model can code to. That's going to be interesting.
- time0ut 4y agoThere are some interesting ideas here. I’ve had similar thoughts. For example one of applications I work on involves interpreting a response with possibly thousands of fields. It is used to answer many related questions. It has been impractical to tailor the way this data is presented to just the questions the user is interested at that moment. I think an LLM could help understand what the user is after and how to get the answer out of the pile of data in the response. Chat is pretty painful though. Maybe a suite of canned prompts with a fallback to chat could work. The idea of using an LLM to render a UI on the fly seems interesting as well. But I also imagine it’d be niche due to the cost of running an LLM. At least for the foreseeable future.
- metalrain 4y agoI think LLMs are great for exploration, but for repeated use efficiency matters and data structures matter. I can see that AI will compose UI and write reporting code for many analytical querying needs, but I can't imagine future where we would stop using predefined queries or static schemas. In the age of AI we can utilize even more data and we will.
- quickthrower2 4y agoIn the 3 things that make an application there should be a 4th: 4. Communication with other applications
- Barrin92 4y ago>For the past 31+ years I have been making applications in generally the same way. Hand-crafted some code for the UI, API and Data store, refine and repeat. I think this age is finally coming to an end. I find the perception about development history interesting. I don't think most people have been making applications the same way for 30+ years. GUI tooling has become increasingly better and more declarative for a long time. Just to pick one example, when I used Qt for the first time, that was a pretty big step up for me from writing UIs solely by hand. A good graphical UI building toolkit generates code just the same way a text based interface does. And I'm too young to have experienced the whole Visual Basic history and shifts in how UIs are made. Web development also has steadily seen higher levels of abstraction and tooling. I don't think many people build web-apps the same way they built websites in the early 2000s. Or just compare something like Unity to how people built games 30 years ago. LLMs are fine but generating code and moving away from handcrafting everything isn't as novel as the post makes it out to be. Development environments have driven productivity up continuously for a long time.
- mikeyseee 4y agoHi OP here, yes you are right, we have definately evolved the way we make apps over the years but fundamentally its just been a process of editing text, make sure its syntax is correct, make sure it compiles, run it, iterate. I probably should have elaborated more on this in the post but I didnt want to make it drag on too much ;)
- brundolf 4y agoI've done some thinking about what the "AI-ification" of apps might look like too, and I can think of a few situations where replacing rigid code/schemas with squishy AI logic may not fully work: - Contention: a formal logic and ruleset helps parties with conflicting motives to coordinate with each other, and prevents corruption/manipulation (think of law and treaties) - Extreme safety/reliability: AI cars never took off even though they were 90% of the way there. Thinking also of medical devices, financial ledgers, etc; things where you can't take chances, and you may even need to be able to produce an audit - Performance: I'm imagining that traditional code will always be faster and cheaper to run than AI inference. The classic tradeoff between development cost and runtime cost will come into play, and eg. realtime systems will probably always need to be "real code" (though maybe we'll just reach a point where AI is writing said code instead of responding in real time) I think it's going to change most of the landscape though. And to be honest - societal and career anxieties aside - part of me is ready for the world where computers aren't so fiddly anymore.
- noizejoy 4y agoI can't help but wonder, if user interfaces will actually be one of the last problems to be solved well by machine learning. That's because arguably user interfaces (and data visualizations) have been - and continue to be - a significant weakness of software as long as I can remember. If user interfaces were better, wouldn't grandmas around the world do better with computers? So if machine learning is effectively an aggregation of whatever has been done before, it would lead me to think, that the old adage of "garbage in ==> garbage out" would lead to ML generating some pretty mediocre user interfaces for a while to come. Data visualization in general is arguably also subject to the "lying with statistics" principle. So I can see ML "helping" to weaponize this lying with data, rather than illuminating the truth.
- auggierose 4y agoWe are getting there. https://www.youtube.com/watch?v=g6-rcIjKFFs https://www.youtube.com/watch?v=g6-rcIjKFFs
- vrglvrglvrgl 4y ago[dead]
- kkfx 4y agoThe real future of applications is the classic Desktop model, where the OS is just a single user-programmable application, where "apps" are just functions easy to combine and change, and the UI is a document, a dynamic document. Unfortunately for very few this means giving full-power to the end-user, a thing all business do reject and that's why they keep pushing crap since decades to keep their revenues models, a product before, a service now, always giving some crumbs to the user in exchange of money, always converging toward the old model ONLY after have found a way to do so keeping the users tied.