Live data from Hacker News

Try emergent coding

codevalley.com

41–50 of 59 posts

Re: Try emergent coding

#41
post #8

I'm reminded of what Richard Dawkins had to say about the Bicameral Mind book: "either complete rubbish or a work of consummate genius, nothing in between!" This website is really rough, the writing is dense and the first rule of video club is don't get one of the founders to narrate the video unless your CTO is Morgan Freeman. That said, I think this is just so unbelievably audacious that it's worth a look anyway. T…

"Either complete rubbish or a work of consummate genius, nothing in between!" It's very kind of you, but this is clearly the former. Can some try to have built a simple 'online calculator' - you know, with buttons, square-roots, logs. etc. Anybody? No? A practical demo?

We (the Code Valley team and the emergent coding community) are still hard at work building the UI-designing agents, but you can build a 'Fibonacci calculator' right this moment, if you like.

You can build it to run on Linux (https://marketplace.codevalley.com/pilot.html#linux-fibonacc...), or to run in a browser (https://marketplace.codevalley.com/pilot.html#browser-fibona...). You will need to pay a few satoshis (to the agents you will be contracting), and if you don't have a bitcoin wallet, just shoot me an email (julie@codevalley.com) and I'll foot the 50c for you :).

edit: added clarification

Re: Try emergent coding

#42

Earlier quoted context omitted.

it's like having functions, but with someone to write the function for you. The thing with the market is that you'd know that the code you get is verifiably accurate and thus, your software will have no bugs.

That function might be accurate, but its usage might not be. It's a bold (and possibly incorrect) claim that the software composed of accurate units will not have any bugs.

We don't maintain that this system makes bugs impossible. Rather, the system provides an environment in which bugs are highly unlikely to emerge.

In this system, developers are incentivised with the prospect of direct payment to deliver a correct fragment. If we assume that game theory's rationality will prevail, I'm sure you can see how (in a perfect world), all fragments will be correct. However, we know the world isn't perfect and that there will always be an irrational player who is motivated by things other than direct remuneration... a player who has malicious or duplicitous intent.

There are three pieces of good news regarding how the system deals with these players: (1) The first is that it is actually a good deal more difficult for a bad actor to actually produce, well... bad (binary) code, compared with current methods. In this system, every agent provides its service by contracting other agents. There is no glue code in between; no opportunity for a developer to 'write' additional (malicious) code. If a developer wanted to create an agent that 'injects' malicious code, he would have to do so by contracting agents to design and 'inject' that code. Then, the developer would have to deploy that agent to the network where it would try and directly compete with other legitimate agents, agents with good reputations and a solid history of successfully completed contracts.

(2) The second piece of good news is that although these irrational players technically can enter the system and build an agent, their time will be extremely short-lived. Because of the recursive nature of the system, it has near-perfect accountability. Malicious players are easily spotted and basically ostracised by the wider compiler community. (Who would want to contract an agent that is known to return faulty/malicious fragments?)

(3) The third piece of good news is that the system itself only becomes more resilient and hostile to bad actors the longer it is operational. 'Honest' players (better yet, efficient players who cleverly optimise their agent's designs) are just as easily identified and even more handsomely rewarded. Remember how an agent achieves its service of compilation? By cleverly contracting other compile-as-a-service agents. Since these 'supplier' agents will return the smaller fragments that make up the larger fragment the agent itself returns, an agent's livelihood is dependent upon the reputation of its suppliers. This means the developer will choose its agent's suppliers very carefully, likely vetting them prior to building the agent itself. Over time, as suppliers become a known and reliable quantity, the ties between client and supplier agents are strengthened and it becomes even more difficult for a bad actor to find any kind of footing.

It is a strange concept indeed to ask someone to trust a binary that has no 'source code' to inspect! But when you know and trust the compiler of that binary, it is a no-brainer.

Re: Try emergent coding

#43
post #12

"Code Valley envisions a world where all software projects are designed and built using a collective effort of developers across the globe, by automatically pulling in their expertise anew for every project" Right...like...open source?

Like automated open source.

Re: Try emergent coding

#44
post #32

Earlier quoted context omitted.

I've been waiting to be automated out of my job for a while now. I also think this is rubbish but great that they are trying. I'm sure it will deliver some value to someone.

Cheers - thanks for giving us the benefit of the doubt. The technology still has a long way to go before it can cater to the end-users of the world, but it is at least at the stage where other developers can join and build their own agents in preparation.

so, basically you're looking for free labor to make your product viable?

Re: Try emergent coding

#45

Earlier quoted context omitted.

"Either complete rubbish or a work of consummate genius, nothing in between!" It's very kind of you, but this is clearly the former. Can some try to have built a simple 'online calculator' - you know, with buttons, square-roots, logs. etc. Anybody? No? A practical demo?

We (the Code Valley team and the emergent coding community) are still hard at work building the UI-designing agents, but you can build a 'Fibonacci calculator' right this moment, if you like. You can build it to run on Linux ( https://marketplace.codevalley.com/pilot.html#linux-fibonacc... ), or to run in a browser ( https://marketplace.codevalley.com/pilot.html#browser-fibona... ). You will need to pay a few satoshi…

it's a bit disingenuous as a founder to claim you're a member of the community.

Re: Try emergent coding

#46
post #32

Earlier quoted context omitted.

Cheers - thanks for giving us the benefit of the doubt. The technology still has a long way to go before it can cater to the end-users of the world, but it is at least at the stage where other developers can join and build their own agents in preparation.

so, basically you're looking for free labor to make your product viable?

Hell no! Any agent a developer builds is owned and managed by them, and collects a payment for that developer every time it is contracted.

Re: Try emergent coding

#47

Earlier quoted context omitted.

We (the Code Valley team and the emergent coding community) are still hard at work building the UI-designing agents, but you can build a 'Fibonacci calculator' right this moment, if you like. You can build it to run on Linux ( https://marketplace.codevalley.com/pilot.html#linux-fibonacc... ), or to run in a browser ( https://marketplace.codevalley.com/pilot.html#browser-fibona... ). You will need to pay a few satoshi…

it's a bit disingenuous as a founder to claim you're a member of the community.

Apologies, that was not my intention. I have clarified the comment.

Re: Try emergent coding

#48
post #12

"Code Valley envisions a world where all software projects are designed and built using a collective effort of developers across the globe, by automatically pulling in their expertise anew for every project" Right...like...open source?

Like automated open source.

like npm?

Re: Try emergent coding

#49
post #34

That site needs an "Explain it to me like I'm 5" section. And a little more detail than "Oh my god! where are your parents?"

Did you get a chance to check out this "How it works" ( https://codevalley.com/documentation#howdoescodevalleywork ) section?

At a short read, I still don't understand what the source code of an agent looks like. Do you have an example?

Re: Try emergent coding

#50
post #30

Earlier quoted context omitted.

it's like having functions, but with someone to write the function for you. The thing with the market is that you'd know that the code you get is verifiably accurate and thus, your software will have no bugs.

OK, I have to walk back my (lightly jerkish) snark, I think. ;) Do you mean "someone" as in the author of the template? Or as in the template itself? What are the specific limitations of agents? What can they do? How are they written?

It's not a problem at all - no need to walk back :).

I mean "someone" as in the author of the template (to use your phrasing), yes.

> What are the specific limitations of agents? What can they do?

What each agent does, not matter where they sit in the network layers, is the same; they request information from their clients, they make some decisions and then they contract other agents. In this system, everything is a (compiling) supplier. A developer creates an agent to build on and inherit the knowledge of its suppliers, adding a little knowledge himself in the process, and ensuring that his agent returns compiled code.

Have you had a chance to check out this video (https://www.youtube.com/watch?v=qTl-V58cG1w)? It sheds a bit more light on how the service an agent performs is that agent doing its own part in a distributed compiler.

A developer can only build an agent if its suppliers exist, and if the compile-time interface protocols have been defined. Are they the sorts of limitations you meant?

> How are they written?

This system bootstrapped itself (and achieved PoC at the same time) back in 2013. Agents are built by agents. There is a special agent that sits on top of this hierarchy of agents that is designed to specifically capture a developer's requirements for their agent (what it should ask its client, what decisions it should make, and who it should contract) and translate these requirements to contracts to agents which will ultimately build that developer his agent. (The recursion is a killer sometimes, isn't it?)

This special agent that sits on top of the hierarchy is called the 'Agent-builder' and will feel to a developer like an IDE or visual programming language (designed specifically to design agents).

Post reply on HN