Live data from Hacker News

Developing with GitHub Copilot Agent Mode and MCP

austen.info

51–60 of 71 posts

Re: Developing with GitHub Copilot Agent Mode and MCP

#51

Earlier quoted context omitted.

OP's comment also seems to be firmly stuck in 2023 when you'd prompt ChatGPT or whatever. The fact that LLMs today, when strapped into an agentic harness, can do or help with all of these things (ideation, architecture, use linters, validate code, evaluate outputs, and a million other things) seems to elude them.

Dothey do requirement gatherings? Like talking to stakeholder and getting their input of what the feature should, translating business jargon to domain terms? No. Do they do the analysis? Removing specs that conflict with each other, validating what's possible in the technical domain and in the business domain? No. Do they help with design? Helping coming up with the changes that impact the current software the least…

Why do you think any of these should be a challenge for, say, O3/O3 pro?

You pretty much just have to ask and give them access for these things. Talking to a stakeholder and translating jargon and domain terms? Trivial. They can churn through specs and find issues, none of that seems particularly odd to ask of a decent LLM.

> Do they help with testing? Coming up with tests plan, writing test code, running them, analysing the output of the various tools and producing a cohesive report of the defects?

This is pretty standard in agentic coding setups. They'll fix up broken tests, and fix up code when it doesn't pass the test. They can add debug statements & run to find issues, break down code to minimal examples to see what works and then build back up from there.

> Do they help with maintenance? Taking the same software and making changes to keep it churning on new platforms, through dependencies updates and bug fixes?

Yes - dependency updates is probably the easiest. Have it read the changelogs, new api docs and look at failing tests, iterate to have it pass.

These things are progressing surprisingly quickly so if your experience of them is from 2024 then it's quite out of date.

Re: Developing with GitHub Copilot Agent Mode and MCP

#52

Earlier quoted context omitted.

Chill Winston! Artists in residency are not know for being technical. They are not divas demanding support but individuals who are supposed to have access to resources, space, and support that allows them to develop as artists. The spaces they are working with often benefit from having talented creatives but this isn't a performance gig we're talking about.

I think it was just an example. The real meat behind the example is what someone said today and that I'm now stealing: AI helps with a faster tech debt generation. Having $anyone asking for $anything in a hurry it's probably the #1 cause of tech debt. If now with AI all the answers are going to be "yes, sure!" well, tech debt will go up.

That's a good way of putting it. Especially in inexperienced users' hands.

I'm working with a bunch of autonomy guys (think PHD algorithms people) and ChatGPT lets them write code. Which is good.

Except the code is hot garbage. It works for the thing they're trying to do, but it doesn't handle errors, it's not extendable, it's not maintainable, and they'll fight you when you tell them how to make it any of the above because they didn't write it and don't really understand how it works.

There's no management buy-in--startup, so velocity matters more than anything--so I've resorted to letting them have their working garbage patch and I just let them deal with the consequences. Frustrating, but quality doesn't matter sometimes.

Re: Developing with GitHub Copilot Agent Mode and MCP

#53
Not sure how things are with Copilot, but with Claude Code a good alternative for MCP is in some cases old fashioned command line tools.

GitHub has gh, there's open source jira-cli, Cloudflare has wrangler and so on. No configuration needed, just mention on the agent doc that this kind of tool is available. Likely it will figure out the rest.

And if you have more complicated needs, then you can combine the commands, add some jq magic, put to package.json and tell agent to use npm run to execute it. Can be faster than doing it via multiple MCP calls.

Re: Developing with GitHub Copilot Agent Mode and MCP

#54
Really cool article. Personally I think the really cool bit about MCP is that you can very easily write your own server which can talk to the db or call various APIs. That server can run locally and be used by GitHub Copilot for answering questions and executing tasks. I also find it useful in a tight corporate environment where it’s more difficult to get a dedicated LLM API key. You can easily do POCa with what every dev has access to.

Re: Developing with GitHub Copilot Agent Mode and MCP

#55

Earlier quoted context omitted.

> The goal of software engineering is not to write code faster That just really depends on your situation. Here's a case I had just last week: we had artists in residency who suddenly showed up with a new, expensive camera that didn't have any easy to use driver but requires the use of their huge and bulky custom SDK. Claude whipped a basic working c++ proprietary-camera-sdk-to-open-video-sharing-protocol in, what, 2…

“The goal of software engineering is not to write code faster” Writing proper code including tests and refactorings takes substantial time. It is definitely worth it to do this faster, if only to get faster feedback to go back to the first phase; requirements and analysis. I have experienced this myself, using CC it took me a few hours less to realise i was on the wrong track.

Requirements are filters for the set of implementations. The only feedback is the count and the nature of the results. And what you usually do is to either abandoning it or restricting it further. Because the source of the requirements is the business domain which exist outside the technical domain.

Selecting one of the implementation over the other is design, aka making decisions. Sometimes you have to prototype it out to where which parameters is the best. And sometimes a decision can revert an earlier one and you have to investigate the impact radius of that change.

But coding is straightforward translation. The illusion of going faster is that we forego making decisions. Instead we're hoping that the agent makes the correct ones based on some general direction, forgetting than an inch deviation can easily turn into a mile error. The hopeful things would have been an iteration, adding the correct decisions and highlighting the bad ones to avoid. But no one have that kind of patience. And those that use LLMs often finish with a "LGTM" patch.

The normal engineering is to attain a critical mass of decisions and turns that immediately to formal notation which is unambiguous. Then we validate with testing if that abrupt transformation was done properly. But all the decisions were made with proper information.

Re: Developing with GitHub Copilot Agent Mode and MCP

#57
post #27
post #14

Earlier quoted context omitted.

This is the crypto discussion again. "All our critics are clueless morons who haven't realised the one true meaning of things". Have you once considered that critics have tried these tools in all these combinations and found them lacking in more ways than one?

The huge gap between the people who claim "It helps me some/most of the time" and the other people who claim "I've tried everything and it's all bad" is really interesting to me. Is it a problem of knowledge? Is it a problem of hype that makes people over-estimate their productivity? Is it a problem of UX, where it's hard to figure out how to use these tools correctly? Is it a problem of the user's skills, where low-…

> The experiences seem so different, that I'm having a hard time wrapping my mind around it.

Because we only see very disjointed descriptions, with no attempt to quantify what we're talking about.

For every description of how LLMs work or don't work we know only some, but not all of the following:

- Do we know which projects people work on? No

- Do we know which codebases (greenfield, mature, proprietary etc.) people work on? No

- Do we know the level of expertise the people have? Is the expertise in the same domain, codebase, language that they apply LLMs to?

- How much additional work did they have reviewing, fixing, deploying, finishing etc.?

Even if you have one person describing all of the above, you will not be able to compare their experience to anyone else's because you have no idea what others answer for any of those bullet points.

And that's before we get into how all these systems and agents are completely non-deterministic, and works now may not work even 1 minute from now for the exact same problem.

And that's before we ask the question of how a senior engineer's experience with a greenfield project in React with one agent and model can even be compared to a bon-coding designer in a closed-source proprietary codebase in OCaml with a different agent and model (or even the same, because of non-determinism).

Re: Developing with GitHub Copilot Agent Mode and MCP

#58
post #31

Earlier quoted context omitted.

Dothey do requirement gatherings? Like talking to stakeholder and getting their input of what the feature should, translating business jargon to domain terms? No. Do they do the analysis? Removing specs that conflict with each other, validating what's possible in the technical domain and in the business domain? No. Do they help with design? Helping coming up with the changes that impact the current software the least…

> Do they do requirement gatherings? Like talking to stakeholder and getting their input of what the feature should, translating business jargon to domain terms? No. Why not? This is a translation problem so right up its alley. Give it tool access to communicate directly with stakeholders (via email or chat) and put it in a loop to work with them until the goal is reached (stakeholders are happy). Same as a human wou…

> Why not? This is a translation problem so right up its alley.

Translating a sign can be done with a dictionary. Translating a document is often a huge amount of work due to cultural difference, so you can not make a literal translation of sentences. And sometimes terms don't map to each other. That's when you start to use metaphors (and footnotes).

Even in the same organization, the same term can mean different things. As humans we don't mind when terms have several definitions and the correct one is contextual. But software is always context free. Meaning everything is fixed at its inception and the variables govern flow, not the instruction themselves ("eval" instruction (data as code) is dangerous for a reason).

So the whole process is going from something ambiguous and context dependent, to something that isn't. And we do this by eliminating incorrect definitions. Tell me how LLMs is going to help with that when it has no sense of what correct and what it is not (aka judging truthness).

Re: Developing with GitHub Copilot Agent Mode and MCP

#59
post #31

Earlier quoted context omitted.

> Do they do requirement gatherings? Like talking to stakeholder and getting their input of what the feature should, translating business jargon to domain terms? No. Why not? This is a translation problem so right up its alley. Give it tool access to communicate directly with stakeholders (via email or chat) and put it in a loop to work with them until the goal is reached (stakeholders are happy). Same as a human wou…

> Why not? This is a translation problem so right up its alley. Translating a sign can be done with a dictionary. Translating a document is often a huge amount of work due to cultural difference, so you can not make a literal translation of sentences. And sometimes terms don't map to each other. That's when you start to use metaphors (and footnotes). Even in the same organization, the same term can mean different thi…

> Tell me how LLMs is going to help with that when it has no sense of what correct and what it is not (aka judging truthness).

Same way it works with humans: someone tells it what "correct" means until it gets it right.

Re: Developing with GitHub Copilot Agent Mode and MCP

#60
post #57
post #27

Earlier quoted context omitted.

The huge gap between the people who claim "It helps me some/most of the time" and the other people who claim "I've tried everything and it's all bad" is really interesting to me. Is it a problem of knowledge? Is it a problem of hype that makes people over-estimate their productivity? Is it a problem of UX, where it's hard to figure out how to use these tools correctly? Is it a problem of the user's skills, where low-…

> The experiences seem so different, that I'm having a hard time wrapping my mind around it. Because we only see very disjointed descriptions, with no attempt to quantify what we're talking about. For every description of how LLMs work or don't work we know only some, but not all of the following: - Do we know which projects people work on? No - Do we know which codebases (greenfield, mature, proprietary etc.) people…

> And that's before we get into how all these systems and agents are completely non-deterministic,

And that is the main issue. For some the value is reproducible results, for others, as long as they got a good result, it's fine.

It's like coin tossing. You may want tail all the time, because that's your chosen bet. You may prefer tail, but don't mind losing money if it's head. You may not interested in either, but you're doing the tossing and wants to know the techniques that works best for getting tail. Or you're just trying and if it's tail, your reaction is only "That's interesting".

The coin itself does not matter and the tossing is just an action. The output is what get judged. And the judgment will vary based on the person doing it.

So software engineering used to be the pursuit of tail of the time (by putting the coin on the ground, not tossing it). Then LLMs users say it's fine to toss the coin, because you'll get tail eventually. And companies are now pursuing the best coin tossing techniques to get tail. And for some, when the coin tossing gives tail, they only say "that's a nice toss".

Post reply on HN