News for hackers. Stuff that matters.
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @04:33PM (#11956781)
Hi everyone, Corey here from Eve. We've been in the trenches for a while, so I've been working to document a backlog of progress.

A lot has changed even in the ~3 months since the work in this post occurred, so it's not reflective of where we are now. But I'll stick around here to answer any questions relevant to this post or Eve in general.

Edit: I wasn't anticipating this would be on HN today, but it is, so here is part 2 with the rest of the story: http://incidentalcomplexity.com/2016/06/22/mar2/

Re:Eve Developer Diary, March — Part 1: UI by zubairq on Wednesday June 22, 2016 @04:48PM (#11956885)
Will it be possible To upload aN existing spreadsheet with formulae from excel and then gradually Add eve specific functionality?
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @04:54PM (#11956942)
Eve is only as useful as the data in it, so we really want to make it easy to import data from a variety of sources. You bring up a really good point though, that if our interface is grid-based, then there should be a simple mapping from Excel -> Eve. We support a superset of Excel functionality, so theoretically it should be possible, but as always the devil is in the details.
Re:Eve Developer Diary, March — Part 1: UI by _pmf_ on Thursday June 23, 2016 @05:56AM (#11959833)
> We support a superset of Excel functionality

I doubt that.

Re:Eve Developer Diary, March — Part 1: UI by spraak on Thursday June 23, 2016 @06:29AM (#11959937)
Um, why?
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Thursday June 23, 2016 @01:22PM (#11962753)
I would guess his/her skepticism comes from the fact that Excel has about a billion + 1 features. Even Google and Open Office have trouble supporting everything. In that sense, I was too loose with my comment of supporting a superset. There's the old adage that everyone uses 20% of the features in Office, but it's a different 20% for every person.

Instead of "superset of Excel functionality" I should have said "superset of Excel semantics".

Re:Eve Developer Diary, March — Part 1: UI by rocky1138 on Wednesday June 22, 2016 @04:47PM (#11956878)
What is Eve?
Re:Eve Developer Diary, March — Part 1: UI by tremblane on Wednesday June 22, 2016 @04:57PM (#11956964)
At first I thought they were talking about the game, EVE Online. And then the example on the page reference "moons per planet", which confirmed to me they were talking about that space game.
Re:Eve Developer Diary, March — Part 1: UI by jschwartzi on Wednesday June 22, 2016 @06:48PM (#11957647)
The fact that it seems to be about some kind of spreadsheet doesn't fundamentally affect the misunderstanding either.
Re:Eve Developer Diary, March — Part 1: UI by Joof on Thursday June 23, 2016 @05:29AM (#11959754)
Read the comments first. I assumed they had finally just given EvE a full excel interface and allowed imports/exports until about halfway through the comments.
Re:Eve Developer Diary, March — Part 1: UI by jschwartzi on Thursday June 23, 2016 @01:43PM (#11962944)
This was a joke.
Re:Eve Developer Diary, March — Part 1: UI by azeirah on Wednesday June 22, 2016 @05:01PM (#11956993)
It's not about that game though :p
Re:Eve Developer Diary, March — Part 1: UI by baq on Wednesday June 22, 2016 @05:22PM (#11957133)
which is exactly why the post is confusing.
Re:Eve Developer Diary, March — Part 1: UI by cjslep on Wednesday June 22, 2016 @06:01PM (#11957377)
Count me in as one of the thoroughly confused. I was expecting more Citadel content.
Re:Eve Developer Diary, March — Part 1: UI by Ntrails on Thursday June 23, 2016 @04:09AM (#11959495)
I mean, it started with moons so I was hoping for some neat updates to reaction chains and maybe POS mechanics...
Re:Eve Developer Diary, March — Part 1: UI by lagadu on Thursday June 23, 2016 @07:54AM (#11960267)
Same here, particularly because the Eve Online devs are also known for posting interesting dev blogs[0][1]

[0] https://community.eveonline.com/news/dev-blogs/behind-the-sc...

[1] https://community.eveonline.com/news/dev-blogs/tranquility-t...

Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @06:31PM (#11957563)
I think in the future, I will be using dinosaurs in my examples :P
Re:Eve Developer Diary, March — Part 1: UI by stephengillie on Wednesday June 22, 2016 @08:48PM (#11958171)
Then we'll confuse it with ARK.
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @04:51PM (#11956919)
Yeah, there is no context to this post, so I appreciate your confusion. Eve is a programming platform we are designing to bring the power of programming to non-programmers. You can read a little more about our mission here: http://witheve.com/

Incidental Complexity is our dev blog, which we've been using to update people about our work. We are developing in the open, so you can see what we're up to on our GitHub: https://github.com/witheve/lueve

Re:Eve Developer Diary, March — Part 1: UI by kovek on Wednesday June 22, 2016 @08:37PM (#11958128)
This video shows some of the ideas and work that lead up to Eve:

https://www.youtube.com/watch?v=VZQoAKJPbh8

Re:Eve Developer Diary, March — Part 1: UI by zubairq on Wednesday June 22, 2016 @04:07PM (#11956596)
Its great to see the regular updates om Eve now. I hope these posts get enough exposure as they used to get when Chris Granger posted them to hacker news himself
Re:Eve Developer Diary, March — Part 1: UI by danso on Wednesday June 22, 2016 @05:46PM (#11957277)
I was a little confused with the two posts when read together...I get that the GUI isn't yet complete, so I don't think I'm meant to understand what the grid demo is showing or how it connects to the backend...but in the second section, a lot of attention is given to the REPL...is one of the foreseen use cases that users will be entering data via REPL?
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @06:06PM (#11957408)
I wrote a little about this is a previous dev diary [1]. The short answer is we wanted to decouple our GUI from the programming platform. We had a syntax for the language at one point in 2014. But we also believed in dogfooding; if we are creating a programming language for non-programmers, we should be using it as they would i.e. without a syntax.

Unfortunately, this led to the situation where our platform couldn't progress past our GUI. This might have been okay, except we didn't know what the GUI should look like. We've tried grids, graphs, wikis, madlibs, and everything else. The GUI was kept in a constant state of flux, so our entire platform was.

So we wised up and made a protocol and a text syntax to interface with the Eve server. By loosely coupling the platform and the GUI, we can now progress them at different rates.

To be clear, we don't intend that the language will be exposed to non-programmers through the REPL. However we've always expected that developers will be our first users, and we want to have some tools they're familiar with. At the same time, we are still developing UI concepts for non-programmers, trying to hone in on what works.

[1] http://incidentalcomplexity.com/2016/06/10/jan-feb/

Re:Eve Developer Diary, March — Part 1: UI by c-smile on Wednesday June 22, 2016 @06:17PM (#11957472)
So it is always to be a client/server thing, right? Cloudy? Is this a strict requirement? Like users to work cooperatively on the same document (a.k.a. Google Wave, sic transit gloria mundi).
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @06:30PM (#11957553)
An Eve server can run locally in its own instance, separate and isolated from anything else. It would be no different than Java requiring the JVM.

But one of the nice things about Eve is that it effortlessly distributes to multiple nodes/users. So yes, we support the case where users are working cooperatively on the same document.

For example, that's the way the REPL works. Let's say my team is making a website about dinosaurs. On my machine, I add a stegosaurus entity to the database with several attributes: discovered, average length, average height, etc.

Now my colleagues have immediate access to this information. If one of them had a query open asking "What dinosaurs are in the system?" then their view would update with stegosaurus immediately.

In turn, I could use her list in another way e.g. to render it in a browser with links to each dinosaur's Wikipedia page.

Re:Eve Developer Diary, March — Part 1: UI by c-smile on Wednesday June 22, 2016 @08:11PM (#11958022)
I am not sure I understand how REPL (https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93prin...) is related to client/server.

As of collaboration ... it could be clients/single-server or fleet of apps synchronizing with each other. Gut feeling: later one has greater potential. Can work in standalone and team modes, no?

Re:Eve Developer Diary, March — Part 1: UI by cmontella on Wednesday June 22, 2016 @08:19PM (#11958055)
In this case, the REPL is just a client like any other. Its behavior is what makes it a REPL (i.e. you type, press enter, get a result, rinse, repeat). It conforms to the same protocol as any other interface we plan on making. This REPL goes a step beyond typical REPLs because the backend is networked, thus its state is shared with other clients. These other clients don't even have to be another REPL. In this way, a developer using a syntax interface could work directly with Steve from accounting, who is using some visual programming interface.

Imagine a developer and a designer working together on an app. The developer is writing the backend code for the app in the syntax he is comfortable with, and the designer is making the UI in something like Sketch. With Eve, this workflow will blend together seamlessly.

Re:Eve Developer Diary, March — Part 1: UI by c-smile on Wednesday June 22, 2016 @08:49PM (#11958174)
"... you type ..." am I correct in my understanding that this will cause each character press to be sent to the server? And the same for the counter() function that you have there, right? Actually where will such timers run? On server or client? I am trying to mentally visualize computational graph and data model...
Re:Eve Developer Diary, March — Part 1: UI by cmontella on Thursday June 23, 2016 @01:28PM (#11962805)
The REPL as it stands submits the query on enter, just like sending a text message. But I have written it in a way where each keystroke is sent.

The counter() function you're referring to was implemented in GridEve, which was an experiment on the UI. It was written in C# and used a different (and abandoned) backend. It was a local-only app, so the timer ran on the local machine.

Time in the client/server architecture is something we have to give a little more thought to, since we're still trying to get things working in a timeless world.

Re:Eve Developer Diary, March — Part 1: UI by c-smile on Thursday June 23, 2016 @04:48PM (#11964205)
Corey, I have sent question to you, could you check your e-mail?
Re:Eve Developer Diary, March — Part 1: UI by _pmf_ on Thursday June 23, 2016 @05:50AM (#11959815)
The MS Access is strong with this one.

But actually, while it's completely useless on a PC, a usable graphical environment is clearly needed for the tablet market, so I don't understand why they are so insistent on pushing the 4GL / application builder approach from the early 90ies.

Re:Eve Developer Diary, March — Part 1: UI by coldtea on Thursday June 23, 2016 @07:51AM (#11960258)
>The MS Access is strong with this one.

Actually not much about Access in that. Their stated goal, OTOH, is to make an Excel like tool.

>But actually, while it's completely useless on a PC

Huh? If done right, it will be extremely useful on a PC, the same way Excel is, but as an avenue for far more programmability than Excel.

>so I don't understand why they are so insistent on pushing the 4GL / application builder approach from the early 90ies.

Because that approach is also of the 21st century and onwards.

It's rather us, programmers, who insist on dragging the conventional approach (not to mention crude text-based tools like Emacs and Vim) against the times. Besides the 4GL/application builder space left unexplored, Lisp Machines and Smalltalk environment were more advanced than what we use today in a lot of ways.

Re:Eve Developer Diary, March — Part 1: UI by _pmf_ on Thursday June 23, 2016 @08:11AM (#11960328)
> Huh? If done right, it will be extremely useful on a PC, the same way Excel is, but as an avenue for far more programmability than Excel.

You cannot be more programmable than Excel, because VBA is deeply integrated and it already is fully programmable. The question is: how will Eve solve the GUI vs. scripting dichotomy that, in my opinion, is pervasive throughout all "innovative" programming environments.

> Besides the 4GL/application builder space left unexplored, Lisp Machines and Smalltalk environment were more advanced than what we use today in a lot of ways.

I completely agree with this.

Re:Eve Developer Diary, March — Part 1: UI by coldtea on Thursday June 23, 2016 @10:40AM (#11961208)
>You cannot be more programmable than Excel, because VBA is deeply integrated and it already is fully programmable.

Well, Excel itself, just the cells, are already "turing complete" so, in once sense you cannot get "more programmable" than that either.

But I meant that Eve aims to "give better expressive power for programming compared Excel using a same-ish cell model" (so, without VBA required).

Re:Eve Developer Diary, March — Part 1: UI by teej on Wednesday June 22, 2016 @04:03PM (#11956569)
For those confused like myself, this is about Eve, an excel-like development environment from the person who brought you LightTable. This is not about Eve Online.
Re:Eve Developer Diary, March — Part 1: UI by niij on Wednesday June 22, 2016 @04:07PM (#11956593)
> excel-like development environment

Not to be confused with the Space themed excel-simulator that is Eve Online.

Re:Eve Developer Diary, March — Part 1: UI by cryptoz on Wednesday June 22, 2016 @04:29PM (#11956743)
Someone made a parody web game once that was basically a database view of user and game state. You could insert rows and get points and things, it was a hilarious jab at the whole class of games where the gameplay feels like you're just updating cells in a database. I searched for it but couldn't find it just now, anybody know what I mean?
Re:Eve Developer Diary, March — Part 1: UI by Fuzzwah on Wednesday June 22, 2016 @07:28PM (#11957864)
You triggered my memory of playing this. I also attempted to search for it, but the name won't surface in my mind.

I suspect that I'll recall it at 2am tomorrow.

Thanks.

Re:Eve Developer Diary, March — Part 1: UI by stcredzero on Wednesday June 22, 2016 @04:27PM (#11956721)
I detect confusion. It's Excel that excels at simulating Eve Online. It sounds like Eve would make an even better simulator of Eve Online than Excel, however.
Re:Eve Developer Diary, March — Part 1: UI by Duelist on Wednesday June 22, 2016 @04:04PM (#11956578)
Thanks. It didn't help that they were talking about moons and planets.
Re:Eve Developer Diary, March — Part 1: UI by zubairq on Wednesday June 22, 2016 @04:10PM (#11956606)
Yes I can see how the moons and planets could be confusing. They have a bigger range of examples now and also the ui has changed a lot As well
Re:Eve Developer Diary, March — Part 1: UI by stcredzero on Wednesday June 22, 2016 @04:31PM (#11956765)
The more pressing question: Are there any systems with good agents that won't immediately be overrun by a large alliance?
Re:Eve Developer Diary, March — Part 1: UI by coldtea on Wednesday June 22, 2016 @05:01PM (#11956996)
Or from the person who got bored and abandoned LightTable as a mere proof of concept compared to the initial grand ambitions.
Re:Eve Developer Diary, March — Part 1: UI by huhtenberg on Wednesday June 22, 2016 @04:27PM (#11956719)
Yep, same here. An Eve Online developer's diary would've made for a very interesting read indeed.
Re:Eve Developer Diary, March — Part 1: UI by outworlder on Wednesday June 22, 2016 @04:31PM (#11956768)
But they do have those. https://community.eveonline.com/news/dev-blogs/

Some are technical, some are not. But the ones around the time of major tech changes are the most interesting. For instance, when they implemented "time dilation" a few years back.

Re:Eve Developer Diary, March — Part 1: UI by ry_ry on Wednesday June 22, 2016 @04:48PM (#11956883)
Time dilation is, and remains, the single most beautifully elegant piece of problem solving I think I've seen applied to spaghetti legacy codebase like Eve's, and saved the game from a slow descent into unplayability.

Not played for a year or two, but that's coming off the back of a 10 year eve-habit. It always makes me smile when I see it randomly mentioned on HN and suchlike.

PS. Free Larkonis Trassler.

Re:Eve Developer Diary, March — Part 1: UI by asimov42 on Wednesday June 22, 2016 @05:05PM (#11957021)
What is also quite interesting about their platform is that they use Stackless Python for the game logic (https://community.eveonline.com/news/dev-blogs/stackless-pyt...). Their whole architecture is quite amazing for how old their tech is and what they have managed to achieve.