[Announcement] Eve is growing up!

424 views
Skip to first unread message

Josh Cole

unread,
Apr 26, 2017, 2:58:45 AM4/26/17
to Eve talk

Hey everyone! We have some exciting news to share about the future of Eve. Eve turned three last month, and in that time we produced over 30 separate prototypes in our quest to find a better programming. We learned more than we could possibly have hoped for, in no small part thanks to our tireless community. Now that we've landed on “the one,” it’s time to start building a product instead of prototypes. We need a stabler, more polished Eve along with the same openness and communication you've come to expect from us.


In the past, we didn't prioritize usability because the prototypes weren't useful enough to build anything real. Starting with 0.3, we’re changing that. With the greatly improved performance, new watcher system, growing test suite, and a cleaner codebase, eve is in better shape than it's ever been. But it doesn't matter how good Eve is if people can’t figure out how to use it. To fix that we need to start at the beginning. From first learning about Eve to writing your first program, the experience must be clean, helpful, and straightforward. To that end, here are the changes we’re planning to make in the next few weeks.


We need to tell new users what Eve is and why they should care about it, regardless of where they came from.


At the moment we don’t provide new users with much context. We're revamping the homepage and editor flow to address this, but we still need to answer one very important question. How do you sell Eve in a single sentence? A user’s first impression sets the tone of the whole language, and more than anything it's what people will remember when they leave the page. We've come up with a preliminary description, but we want to know your thoughts.


Eve is a modern relational language for writing data-driven programs without the boilerplate.

We need to teach users how to use Eve before we drop them in the editor.


In the current flow, the quickstart is pretty easy to miss. Even when users find it, it doesn’t necessarily match their pace. We need to give new users a true 5-10 minute quickstart that's easy to follow and easy to find. Part of making the quickstart simpler is making the language simpler. Replacing databases with namespaced tags is one of several small changes we've made to reduce our cognitive overhead. Even then, a one page language reference is a huge benefit to users of all skill levels, since it removes the overhead of memorizing the syntax.


We need to provide an editing experience which is bug-free and pleasant.


No software is perfect, but the online editor in 0.2 had some pretty egregious bugs that made working with Eve pretty difficult. We tried to explore too many features at once, and consequently made it hard to complete any of them well. In 0.3, we're going to pare that back for a guaranteed stable experience that feels good to use. If there are features you really miss from 0.2 when the new editor comes out, please let us know in the mailing list! We'll look into reimplementing things the community relied on. As we mentioned last week, the Eve syntax from 0.2 is on the shortlist to be reimplemented. We've also acknowledged that not everyone is going to want to use our editor. Using the JS DSL, you don't need a syntax mode or any other special features to work with Eve (Of course, if you do choose to implement one, let us know about it! I have a packet of stickers for whoever makes a nice Emacs major mode for Eve).


We need to make the docs easy to find and intuitive to search or explore.


In the past, we've focused on depth rather than breadth in our documentation. If you happened to need docs on a feature you know about and we'd written about, you were good to go. Otherwise, we weren't much help. With 0.3 we're turning that on its head. To help you hit the ground running, we'll provide a better quickstart, a glanceable language reference, an overview of the entire standard library and first party watchers, and example-based documentation on extending Eve with your own watchers. We'll add depth as it's needed by the community--and we're always happy to work with you on PRs if there's a subject you feel passionate about documenting! We're also looking to make the docs searchable and available directly from the editor to remove the overhead of scanning for details on a subject you already know.


We need to start getting feedback on Eve from more users.


The community helps us shape the future of Eve, and the mailing list is its voice. While our most dedicated users have found their way here (hi guys!), we need to start hearing the opinions of a wider slice of our users. We'll start directing new users here to get help with their programs and to share their thoughts on Eve with us. Given how kind and helpful the community has been so far, we're positive they'll be in good hands. We also want to show the world the exciting things you’re working on. We'll be building a program gallery where you can choose to publicly share your work (along with the private links from 0.2).


We need to keep users up to date.


Right now, the mailing list is the best way to keep up with the latest news. We're looking to make sure everything important and exciting hits the blog as well. The blog is fairly widely read, but we post pretty sporadically. Moving forward we're looking to post at least once a week. Monthly devblogs and release posts will remain the same as ever, but we'll be supplementing them with more frequent examples, community spotlights, and more.



We're going to keep a close eye on the usage metrics from our sites as an indicator of success, but numbers don't tell the whole story. We hold your opinions in high regard; so let us know what you love, what you hate, and what needs our attention. Together, we'll build an Eve for everyone.


thornto...@gmail.com

unread,
Apr 26, 2017, 3:29:36 PM4/26/17
to Eve talk
Hi, I read an interesting article by the developer of a current language, he was asking 'HOW DO LANGUAGES GET WIDELY ADOPTED?' He looked at the history of languages - from Assembler, C, Java - through to JavaScript - He was measuring 'Accessibility against Maintainability'. He was looking for reason why functional languages tend to stay niche' often with 'fan boys' maniacally striving for perfection. He stated that JavaScript was very accessible but scored low on the maintainability and for a language to succeed (be widely adopted), it had to be balanced in the graph. I have tried some functional languages that are potentially wonderful - offering 'full stack' development - yet maintainability can be an issue and the developers re-invent core functionality over and over again and miss the 'accessibility target all together, very little work is done to allow developers to use the toolchain quickly (days) and be able to create LOB (Line of business) applications. Once the core language and framework are effective - all focus should be put to creating accessibility - including real world functionality. If you're heading this way with EVE now - I'll be on board !!!  

co...@kodowa.com

unread,
Apr 26, 2017, 3:50:40 PM4/26/17
to Eve talk
Steve,

Do you have a link to the article? I'd be interested to read it!

Corey

Steven Thornton

unread,
Apr 26, 2017, 4:21:36 PM4/26/17
to co...@kodowa.com, Eve talk
Hi Corey, yes I'll find it.

Regards
Steve

Steven Thornton

--
You received this message because you are subscribed to a topic in the Google Groups "Eve talk" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/eve-talk/HsDz2LQsCH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to eve-talk+unsubscribe@googlegroups.com.
To post to this group, send email to eve-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/eve-talk/dde743ad-af7a-4590-aea0-68cf003cd79c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Daniel García

unread,
Apr 27, 2017, 3:28:01 PM4/27/17
to Eve talk
Hi Josh,

Is the new editor being developed in a separate branch ? Can you share a link to the WIP repo ?
This new editor includes the graphical query builder being mentioned in other posts ?

Thanks in advance !!

Josh Cole

unread,
Apr 27, 2017, 5:11:35 PM4/27/17
to Eve talk
@Daniel:

We want to focus on providing a stable and trustworthy text editing experience before we dive back into the graphical query builder. We're committed to making our current feature set rock solid and reliable before we continue adding new features. We'll make sure to post news about the query builder prototypes here and on the blog when we return to it next month.
Message has been deleted

Dave Morehouse

unread,
Apr 27, 2017, 7:37:03 PM4/27/17
to Eve talk
I'm really excited about this clearly communicated direction.  While I'm no marketer, to grow Eve by word of mouth you need a single sentence (or short collection of words) for your messaging so that it's easy to pass along by word of mouth.  In that vain, a couple product with great short value statements are: iPod (1,000 songs in your pocket), Uber (Push a Button, Get a Ride).  Your current statement resonates with techies but I suspect not as much with the broader target user base.  Relational language is rather unapproachable and data-drive programs is not unique (give me an example of a useful non-data drive program).  Here's my best attempts to convey the value of using Eve.

Software creation for all
Software building for all
BYOS - Build Your Own Software
Sane Programming
Easy Programming (easy does NOT mean not-powerful (see LISP ;-)  ))
The Excel for Software (probably way to over simplified but everyone gets what Excel is)

I suspect the answer lies unfortunately not in your current community but beyond in the general public.  Don't ask what people would build if they could program, instead ask regular people "How would your life be different".  Someone in there lies your over-simplified core feature   :-)

co...@kodowa.com

unread,
Apr 27, 2017, 8:03:29 PM4/27/17
to Eve talk
Dave,

> Your current statement resonates with techies but I suspect not as much with the broader target user base.

You're probably right, but this was by design. Everything about Eve right now is focused toward techies, especially given that we're still only shipping with a text syntax. Given what he have at this date, we need to get techies on board more than anyone else. Since we're trying to make Eve more product like, we feel like it's better to sit firmly in one camp than to straddle the two and try to be everything to everyone.

We arrived at the line we did by looking at how other programming languages describe themselves (rust clojure python elm etc), and then adapting that to Eve. I can break down the parts and explain why we felt they warranted inclusion in such a prominent place:

- relational language: we wanted to get the idea across right out of the gate that Eve is different from other languages. Many people haven't heard of a relational language, so we hope that will engender at least curiosity to learn more. Further, "relational" generally has recognition in terms of a "relational database" which isn't far from the truth for Eve.

- dat-driven: it's true that almost any program and programming language uses data, but what we wanted to get across here is that with Eve, data drives the program. This is in contrast to traditional imperative languages, where program consumes data. These are mirroring views of the same problem.

- without the boiler plate: this is included to get an emotional reaction from the reader. Everyone hates boilerplate, and most programming languages have a ton of it. Eve programs are shorter and easier to write than others because we avoid that mess.

> Here's my best attempts to convey the value of using Eve

I actually like some of these! I think your suggestions convey a broad sense of what Eve is about, and the ideas that Eve embodies, but we want to be very specific with this sentence, so that after reading it, you come away with at least a better picture of what's important in Eve (relations, data, no boiler plate).


Corey

Steven Thornton

unread,
Apr 27, 2017, 11:33:32 PM4/27/17
to co...@kodowa.com, Eve talk
#whatWillYouDevelopToday?

😉

Steven Thornton

--
You received this message because you are subscribed to a topic in the Google Groups "Eve talk" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/eve-talk/HsDz2LQsCH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to eve-talk+unsubscribe@googlegroups.com.
To post to this group, send email to eve-...@googlegroups.com.

Zubair Quraishi

unread,
Apr 28, 2017, 9:01:24 AM4/28/17
to Eve talk, co...@kodowa.com
Some of the top of my head:

Draw your software
Draw your app in 5 minutes
Point and click coding
Build your software in 5 minutes
Share your ideas in 5 minutes
Development without the pain
Development without thinking
Effortless development
#whatWillYouDevelopToday?

😉

Steven Thornton

To unsubscribe from this group and all its topics, send an email to eve-talk+u...@googlegroups.com.

Steven Thornton

unread,
Apr 28, 2017, 11:59:16 AM4/28/17
to co...@kodowa.com, Eve talk

On 26 Apr 2017 8:50 pm, <co...@kodowa.com> wrote:
--
You received this message because you are subscribed to a topic in the Google Groups "Eve talk" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/eve-talk/HsDz2LQsCH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to eve-talk+unsubscribe@googlegroups.com.

To post to this group, send email to eve-...@googlegroups.com.

Daniel García

unread,
Apr 28, 2017, 12:11:29 PM4/28/17
to Eve talk
@Josh
I am more interested in the process of development. I really appreciate if you could post a link to the code when you start to develop it, so I could follow along.

co...@kodowa.com

unread,
Apr 28, 2017, 1:00:08 PM4/28/17
to Eve talk
@zubair

I like some of your suggestions, especially drawing.... we had some ideas a while ago when the ipad pro came out that related to actually drawing a graph that would become a program. I would still be interested in trying that out someday. Although I think that "Development without thinking" could backfire on us :)

@steve

Thanks for the article, I agree with many of the points. I think Eve is on this path, especially when we make a push on our second phase, the world scale computer. This will handle the bullet points of being serverless, scalable, and distributed.

Corey

ni...@freshrealm.co

unread,
Apr 28, 2017, 3:21:17 PM4/28/17
to Eve talk
EVE is a programming language that gives you a unified way to access data and operate on it.


On Tuesday, April 25, 2017 at 11:58:45 PM UTC-7, Josh Cole wrote:
Message has been deleted

ni...@freshrealm.co

unread,
Apr 28, 2017, 3:41:06 PM4/28/17
to Eve talk
EVE is a programming language built to empower people with a unified programming environment.

Jeff Bone

unread,
Apr 28, 2017, 3:54:22 PM4/28/17
to ni...@freshrealm.co, Eve talk

EVE lets real people build cool apps with no hassle.

Zubair Quraishi

unread,
Apr 29, 2017, 10:13:55 AM4/29/17
to Eve talk, ni...@freshrealm.co
I like this. I actually experimented with Meetup titles to see what people understood... so far, "Eve, Programming made easy" did the best, but I will try "EVE lets real people build cool apps with no hassle" for my next meetup event, thanks

Jeff Bone

unread,
Apr 29, 2017, 1:15:32 PM4/29/17
to Zubair Quraishi, Eve talk, ni...@freshrealm.co

Glad you like it.  :-)

I have a tendency to be one of those annoying guys that obsesses over naming, use of language (both natural and programming) and even syntax and implied semantics — more than is healthy, probably.  However, sometimes it comes in handy.  


jb


--
You received this message because you are subscribed to the Google Groups "Eve talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eve-talk+u...@googlegroups.com.

To post to this group, send email to eve-...@googlegroups.com.

Josh Cole

unread,
May 1, 2017, 5:27:54 PM5/1/17
to Eve talk, zub...@gmail.com, ni...@freshrealm.co
These are some catchy lines! We're hoping to find a good elevator pitch -- something that tells a stranger enough about what Eve specifically is that they don't think "Well, I already use X tool or Y framework that makes programming easy for me." What specific features of Eve are really attention-grabbing for you?

Jeff Bone

unread,
May 2, 2017, 2:52:07 PM5/2/17
to Josh Cole, Eve talk, Zubair Quraishi, ni...@freshrealm.co
On May 1, 2017, at 4:27 PM, Josh Cole <joshu...@gmail.com> wrote:

These are some catchy lines! We're hoping to find a good elevator pitch -- something that tells a stranger enough about what Eve specifically is that they don't think "Well, I already use X tool or Y framework that makes programming easy for me." What specific features of Eve are really attention-grabbing for you?

Okay, what I like:

- small number of primitives used uniformly for everything
- unifying concept of records and the state model (i.e., enabling time-travel, etc.)
- proof of expressive power:  Flappy Bird in <small number> of lines!
- interactivity / “live coding”

All of these are very important, but — the most significant thing that’s missing these days in most programming environments is the latter:  the ability to sit down and just start writing code, poking around in an exploratory fashion.  The need for teetering towers of Jenga to be installed “just so” before getting going is something we as developers just live with, but for a novice it’s an insurmountable obstacle.  (I feel this viscerally as I’ve been teaching my twin 7 year-olds to code. :-)  As long as this remains hard, *most* users of computing devices are primarily *consumers* of canned content.  Enabling a much larger part of the population to be *programmers* / creators opens up possibilities that have been mostly closed since the early days of computing.

I’m not entirely convinced that the “unification” paradigm and implicit iteration to a fixed point is “THE” answer but it’s as good a candidate for “AN” answer as I’ve seen anywhere.  And there’s proof to some extent that this (implicit flow control / evaluation) is something ordinary people can understand:  spreadsheets do this, effectively.  So:  fingers crossed, I think Eve could be HUGELY important.


jb




On Saturday, April 29, 2017 at 10:15:32 AM UTC-7, Jeff Bone wrote:

Glad you like it.  :-)

I have a tendency to be one of those annoying guys that obsesses over naming, use of language (both natural and programming) and even syntax and implied semantics — more than is healthy, probably.  However, sometimes it comes in handy.  


jb


On Apr 29, 2017, at 9:13 AM, Zubair Quraishi <zub...@gmail.com> wrote:

I like this. I actually experimented with Meetup titles to see what people understood... so far, "Eve, Programming made easy" did the best, but I will try "EVE lets real people build cool apps with no hassle" for my next meetup event, thanks

On Friday, April 28, 2017 at 9:54:22 PM UTC+2, Jeff Bone wrote:

EVE lets real people build cool apps with no hassle.

> On Apr 28, 2017, at 14:41, ni...@freshrealm.co wrote:
>
> EVE is a programming language built to empower people with a unified programming environment.

--
You received this message because you are subscribed to the Google Groups "Eve talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eve-talk+u...@googlegroups.com.
To post to this group, send email to eve-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/eve-talk/6fd210f5-e649-48b3-8eb7-43e811eb321c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Eve talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eve-talk+u...@googlegroups.com.
To post to this group, send email to eve-...@googlegroups.com.

Zubair Quraishi

unread,
May 4, 2017, 1:43:06 AM5/4/17
to Eve talk
Also how about "eve, development made easy"

co...@kodowa.com

unread,
May 9, 2017, 2:11:50 PM5/9/17
to Eve talk, joshu...@gmail.com, zub...@gmail.com, ni...@freshrealm.co
@Jeff,

I used some of your suggestions for the features on the new homepage. I'm curious if you think they do a good job selling the features you describe.

Corey

Jeff Bone

unread,
May 9, 2017, 2:29:24 PM5/9/17
to co...@kodowa.com, Eve talk, joshu...@gmail.com, zub...@gmail.com, ni...@freshrealm.co

The new site looks great!  I’m just now taking a look at it in more depth, i.e. content;  will send any feedback I come up with.  It surely is an improvement (though it wasn’t bad before, by any stretch of the imagination.)  

The “X is a Y for Z with characteristic M” pattern for taglines tends to work really well, IME.  It also provides the simplest version of an elevator pitch.  When { X, Y, Z, M } are chosen well, they will directly lead to the followup questions you *want* to be asked.  It also sets the tone for “vision” — i.e., how big is this?

If anything I said helped with the effort, glad to contribute.  I think Eve is one of the most exciting things that’s going on in the intersection of programming language and usability “research” today!


jb


PS - one initial bit of feedback:  it would be useful to put the current Eve version number somewhere prominently on the front page and / or wherever there are links to code, docs, examples, etc.  Since things are changing fairly rapidly, it would be good to instill confidence in folks that the examples, etc. that they’re reading and potentially trying out for themselves work w/ the current release.  Also, I like it when the creation (i.e. authoring / deploy / whatever) date is put on pages or at least in their <head/> metadata — but that’s more of a personal preference driven by having written a gazillion bits of crawling / scraping / tracking / etc., there are good arguments either way.

William Taysom

unread,
May 9, 2017, 9:24:42 PM5/9/17
to Eve talk, co...@kodowa.com, joshu...@gmail.com, zub...@gmail.com, ni...@freshrealm.co
 be useful to put the current Eve version number somewhere prominently on the front page and / or wherever there are links to code, docs, examples, etc.

More useful is a date, and the answer to the real question "is this information still fresh or has it changed"?
Reply all
Reply to author
Forward
0 new messages