I think we all have been working on our own bespoke CLI tools.
MCPs are bloated, insecure token hogs.
CLIs are easy to write and you can cut it down to only what you need, saving thousands of tokens per prompt.
This is another one I'll add to my repertoire of claude CLIs to replace the MCP.
I'm having a problem like this now.
I have a library that handles very complex hardware drivers and linkages.
I want people in the company to use it, but it's big and complicated (lots of chipsets and Bluetooth to boot).
I'm trying to design the library so the MCP can tell the LLM
to pull it from our repo, read the prompt file for instructions and automatically integrate with the code.
I can't get it to do it consistenlty.
There is a big gap in the current LLM tech where there is no standard/consistent way to tell an LLM how to interface with a library (C/Python/Java/etc.)
The LLM more often than not will read the library and then start writing duplicate code.
That's part of the idea behind https://llmstxt.org/ - even if you ignore the "/llms.txt" URL there's a bunch of thinking around that to help write explanations of things like libraries that can be used to "teach" a model to use it by injecting that into a prompt.
I'm still not clear on what the best patterns for this are myself. I've been experimenting with dumping my entire documentation into the model as a single file - see https://github.com/simonw/docs-for-llms and https://github.com/simonw/llm-docs - but I'd like to produce shorter, optimized documentation (probably with a whole bunch of illustrative examples) that use fewer tokens and get better results.
Doing the work to effectively prepare those docs for an LLM probably does involve "learning the library", but once one person has done that (and published the results) many other people can benefit from it.
I'm a library author myself, so publishing LLM-enhanced versions of the docs to help other people use my library more effectively feels like a sensible use of my time.
Sorry about that! Next time I work on my blog I'll take that into account and find a better theme/color palette. In the meantime you can change it to light mode (clicking on the top right button) and there you have black text on white background.
Idiotic article with horrible conclusions.
I stopped searching for COVID because I don't have to.
Every page I visit, every news site I load, has COVID numbers and news at the top of the page.
It's thrown in our face every where. Even the google home page has a COVID link.
I'm not apathetic at all, idiot. I'm overloaded with COVID info and numbers and death,
I can't escape it.
While interesting, I think an equally relevant question is retention rates.
When I was taking my BS the freshman class was packed. While the failure rate was probably on par with this report, many more of the students dropped CS not because of grades and I never saw them again.
Whether it was out of lack of interest or because it wasn't what they through it was (all I wanted to do was build a cooler Halo game) would have been interesting to know.
The effect was even more pronounced after Sophomore year.
I suspect Data Structures and Algorithms, which I loved, but could be difficult to digest and may have disillusioned people with that CS or SE actually was.
I think a lot of people did not really know what they were signing up for - I dont have any data or evidence but from half-remembered chats and gossiping I think a lot of those that simply disappeared/switched courses/dropped-out did not really understand what they were getting in to and thought that computer science was more about using computers rather than proper computer science. Like how to write wicked-complex spreadsheets or something, or make a webpage maybe (it was the early-mid 2000s afterall).
Even a year or two in I remember some people complaining bitterly about having to learn databases/normalisation and SQL "When are we ever going to use this? Why are we wasting our time learning all this SQL nonsense?!"
Amazing really.
...but then these were the exact same people who blamed the teaching when they dont get good grades in the exams. YMMV.
I was one of the people who didn't want to learn SQL/database stuff. What do you know, after a few years in the industry my interests lay heavily in serverside. I'd kick the old me if I could.
Might as well kick the old you, it's just as likely to have an affect as kicking that young kid next to you, 'cuz she ain't gonna listen, either.
I don't know, that attitude always struck me as an equivalent to a mechanic that refuses to learn how an internal combustion engine works. Yeah, sure, you could probably get away with being an suspension/alignment specialist. But everything you work on has one of those engine thingies, why not expand those horizons and learn how they work? Know a little C, know how to create a SELECT beyond "* FROM myTable", know the basics of getting a web server up, running and serving simple pages; we need a programmer's equivalent to Heinlein's list of things every man should know.
There was a notorious course in my graduate program on Image Synthesis taught by seasoned professionals who really knew what they were talking about. And from the outside, it had really high pass rates, too.
Student interest was high, so when I enrolled in the course, we were around 25 students. By the mid-term it became obvious that most of us were interested, but couldn't put in the required 200% effort (compared to the credits we would receive).
Many (including me) dropped the course, and in the end, I think around 10 people sat the final - who did of course pass, since they were selected that way throughout the year.
In a similar way many opt-in courses were difficult but almost everyone passed. That's because only interested and motivated students took them. For example Graph Theory, Advanced Linear Algebra and a course in advanced algorithmic problem solving (basically competitive programming competitions).
from the outside, it had really high pass rates, too.
[...] Many (including me) dropped the course,
The survey in the article actually divides students into four groups for this reason. They count those dropping the course; those not attending the exam; those attending the exam and failing; and those attending the exam and passing.
Which is also why I'm not sure that picking CS1 was a good choice for study.
Surely failing CS1 is highly correlated with dropping out of a CS degree completely - or rather, it would be interesting to see if indeed failing CS1 was anticorrelated with failing other first-year CS courses.
I don't know how many students of my semester dropped out.
One professor said they had a drop-out rate of 40%, most of them in the first two semesters and that's not counting the people who just changed their major.
I studied "computer science and media," and many students had the impression it should be some mix of graphic design and a bit programming, but in the end, it was basic computer science with most of the examples from "media" (computer graphic, web development, printing, etc.)
When I was at the end of my degree, they also created a new degree called "mobile media," which was like "computer science and media," but with iOS and Android examples.
Since the name was so catchy, "mobile media" was filled with people who never in their right mind would have studied CS, only a hand full of them survived the first semester.