139 karma · joined July 11, 2018
Following this idea, what do people think "backend" work will involve? Building and tweaking models, and the infra around them? Obviously everyone will shift more into architecture and strategy, but in terms of hands-on technical work I'm interested in where people see this going.
Most people I've seen espousing LLMs and agentic workflows as a silver bullet have limited experience with the frameworks and languages they use with these workflows.
My view currently is one of cautious optimism; that LLM workflows will get to a more stable point whereby they ARE close to what the hype suggests. For now, that quote that "LLMs raise the floor, not the ceiling" I think is very apt.
LinkedIn is full of BS posturing, ignore it.
Here’s just one source: “After the age of 30 years, glomerular filtration rate (GFR) progressively declines at an average rate of 8 mL/min/1.73 m² per decade.4”
https://www.racgp.org.au/afp/2012/december/ckd-in-the-elderl...
Instead, it reverted to what it has seen before (in the training data), hence the overfit.
My augmented workflow is to “chat” with GPT because it’s free and powerful, to refine my ideas and surface things I hadn’t thought about. Then I start writing code to get in to the flow of things. I’ve found if I use the LLM straight away, I disengage, become lazy and lose context and understanding over the code. In these situations, I’ve had to redo the code more often than not. Lack of understanding is one part of why, but more importantly, disengaged prompting leads to vague and incorrect outcomes.
When I’m very clear in my head about my goal, I create a prompt either directly from my cursor, or if the changes are larger, I ask the LLM to not apply the changes but instead show them to me. I do both these things within the IDE in the chat window. I review the code and sometimes I’m happy applying it as is, other times I copy and paste it and tweak it manually.
I’ve got barebones rules set up; I haven’t felt the need to go overboard. Jetbrains Assistant does a good job of passing relevant context to the model.
I keep my prompts top-down (https://en.wikipedia.org/wiki/BLUF_(communication)) and explicit. Sometimes I’m much more detailed than others, and I’ve found that extra detail isn’t always necessary for a good result.
It’s also interesting that at the heart of the skill set evolving around efficient LLM use, is communication. Engineers and technical people have been the first to admit for decades that they struggle with effective communication. Now everyone’s an expert orator, capable of describing in phenomenal detail to the LLM what they need from it?
Not worrying about all this feels so much better!
This week I saw a video of a robot assembling PCBs at lightning speed. This reminded me a lot of an LLM coding for us, but there are still numerous people in the production line to design, oversee and manage this kind of production. Software engineering is changing but not going.
I'm surprised, but know I shouldn't be, that we're at this point already.
I’ve found Anytype to be more streamlined. I’m highly familiar with Notion though, so adapted easily.
I reckon there’s a lot to be said for fixing or tweaking the underlying UX of things, as opposed to brute forcing things with an expensive LLM.
Have been using it to build a DSL in JS. Greenfield. I’ve followed the commonly touted “plan, act, evaluate” approach; I’ve got it to generate a clear project vision, scope, and feature checklist. Then told it to refer to that for context. I’ve been descriptive and explicit in my prompting, way more so than previously.
It has gotten the broad strokes right, I’ve got an exceptionally barebones DSL, made up of 5 entities, working…just.
It has now started to spin its wheels on small issues and can’t fix them without breaking something else. The codebase isn’t even big (~8 main functions across a few files). Troubleshooting the code is difficult because it’s convoluted and I lack the same intuition for it I would have had I written it myself. I’ve decided to rewrite everything with less control ceded to the LLM.
When it works, it feels great. When it doesn’t, which is often, the spell is broken and I feel I’ve wasted a bunch of time and have not much to show for it.
I think something like "Hypertopological Constriction-Expansion Dynamics in Quasistatic R^n-Ball Conglomeration" would be even more apt.
If LLMs could handle determinism better, I’d say having a single chat-based entrypoint into a plethora of services makes sense. But as they stand, it doesn’t make sense. Simpler control flow and constraining the number and type of downstream services that sit behind a single interface I think is the way to go.
That said, I agree we should keep the ambition to move to the one size fits all approach.
I started the holiday super jaded with the idea of working in tech forever. I spent my time on everything but tech. Recently my passion has been reignited and I’ve got more clarity around what it is about tech and my career I enjoy, and what I want from my future.
Now, I’m working on a healthcare service for chronic disease.