Platform Dev Priorities Discussion

75 views
Skip to first unread message

Lyre Calliope

unread,
Dec 28, 2019, 3:45:15 PM12/28/19
to Sandstorm Development
Hey ya'll! I wanted to pick up the priorities discussion from the Reviving Sandstorm thread. A number of things were discussed as potential priorities, and I'd like to pull them out for consideration.

I hope this thread can help us come to some shared understanding of what the next stage of development could look like.

Below is a list of the platform level projects/features that were discussed. Included are the names of people from that thread who expressed any kind of interest in each one.

Note, I didn't include work on the Sandstorm Shell in this list because developers and end-users have very different needs and I think it would be good practice to discuss Sandstorm the developer product and Sandstorm the end-user product separately.

  • Modernizing Sandstorm's codebase
    • Kenton Varda
    • Ian Denhardt
  • Network access

    • Ian Denhardt
    • Nolan Darilek
  • Tightening the sandbox

    • Kenton Varda
    • Ian Denhardt
    • Nolan Darilek
  • DNS and certificate issuance
    • Kenton Varda
  • Email support
    • Kenton Varda
  • Cron API

    • Jacob Weisz
    • Ian Denhardt
  • Powerbox
    • Jacob Weisz
    • Ian Denhardt
    • Tim McCormack
Some guiding questions around this list:
  • Does this list represent priority projects resources should be devoted to? (If not, what does this list represent?)
  • Are there any projects missing from this list, or prerequisites that should be substituted in?
  • Do any of these cluster together because of common prerequisites or implementation details within the code base?
  • How would we rank these in terms of priority and difficulty?
If it seems like we're getting too far down into the implementation detail weeds, consider starting a breakout thread so we can maintain some focus on higher level questions here.

-Lyre

Ian Denhardt

unread,
Dec 28, 2019, 4:57:15 PM12/28/19
to Lyre Calliope, Sandstorm Development
Hey Lyre,

Thanks for pushing on the organizing front.

Quoting Lyre Calliope (2019-12-28 15:45:15)

> * Do any of these cluster together because of common prerequisites or
> implementation details within the code base?

The powerbox stuff probably is a prereq/has to go hand-in-hand with
network access (since the powerbox is the mechanism via which apps gain
access to things) and tightening the sandbox (the powerbox will have to
replace the functionality that will be removed by closing the holes).

> * How would we rank these in terms of priority and difficulty?

My own take:

* The cron API has an open PR (#3172) and it seems like that may land
"soon." I need to write a few tests, Kenton needs to review it, and it
should be good. There are a few follow-up things that could be added,
but the core functionality will be in place.
* "Modernizing the codebase" is something we should be doing on an
as-needed basis, as we hit things that are actually slowing us down
or that would make future work easier.
- Personally, I think moving the JS side of things over to typescript
would really help me be productive, and this could be done
incrementally -- start by updating to a version of meteor that
supports it, and then `meteor add typescript` and update things as
we go.
- I don't think this is the sort of thing where it makes sense to
spend a ton of time brainstorming (looking for problems) and there's
a danger of this becoming a distraction.
* Some of these are in different stages wrt. What *kind* of work needs
to be done. The cron API is in the midst of being actually built. The
Powerbox has a mix of concrete things we could start working on and
open problems that need some thought. For others (e.g. Email), I think
Network access it seems like there's been some active thought applied
to, but it's actually a hard problem and in many ways we still don't
know what to actually build here. Others we still need to get the ball
rolling on design ideas.

> If it seems like we're getting too far down into the implementation
> detail weeds, consider starting a breakout thread so we can maintain
> some focus on higher level questions here.

I think the issue tracker is a good place to discuss concrete issues
individually.

Lyre Calliope

unread,
Jan 1, 2020, 9:59:29 PM1/1/20
to Sandstorm Development
Two more items came out of the Office Hours call yesterday that I want to add to this list:
  • Features to enable fundraising within the app ecosystem
  • Backup workflow and tooling
Ian, would you be willing to fish out links to issues for each of the project items in this thread?

Also, would it make sense to start an issue around using Typescript? Or does this require more discussion first?

Ian Denhardt

unread,
Jan 1, 2020, 10:52:10 PM1/1/20
to Lyre Calliope, Sandstorm Development
Quoting Lyre Calliope (2020-01-01 21:59:29)
> Ian, would you be willing to fish out links to issues for each of
> the project items in this thread?

> Tightening the sandbox:

- https://github.com/sandstorm-io/sandstorm/issues/2906

> Cron API

- https://github.com/sandstorm-io/sandstorm/pull/3172

> * Features to enable fundraising within the app ecosystem

- https://github.com/sandstorm-io/sandstorm/issues/1741

> * Backup workflow and tooling

- https://github.com/sandstorm-io/sandstorm/issues/1324
- https://github.com/sandstorm-io/sandstorm/issues/1647

I don't know of specific issues for the other things on this list.

Jake W

unread,
Jan 17, 2020, 3:54:18 PM1/17/20
to Sandstorm Development
Since I came across it again, I am curious whether or not the search API would end up high on anyone's list. It's one of the things Kenton has already provided a draft spec for in a pull request, so, some of the work is done. But it is probably a very large project. https://github.com/sandstorm-io/sandstorm/pull/2868

There's a few other things in the PR folder in that partial state that I imagine may be worth looking at, in part due to the fact that some of the work is already done. Another PR in progress was supporting range requests, which there are a number of issues open about problems with when interacting with very large files both from Sandstorm itself and from Sandstorm apps. https://github.com/sandstorm-io/sandstorm/pull/2887

I think a conversation we need to look at as we pick some priorities is how we address the pain points that Sandstorm introduces compared to more conventional/less secure platforms. Things like being able to make dynamic grains accessible at well-known URLs in cases where a user is willingly interested in sharing that grain with the public, for instance. I think app network access and packaging difficulties definitely fall into one of these pain points as people ask about updated apps all the time, but I think that is already on the list here. We known Sandstorm is better than the alternatives, but standing up a bunch of subdomains on a cPanel or using a Docker-based solution like Cloudron feels easier. For Sandstorm to get a wider base of support, making better solutions to the "I want to just let it do X" stories is going to be really important.

Dan Krol

unread,
Jan 18, 2020, 4:32:04 PM1/18/20
to Jake W, Sandstorm Development
It seems like we have a handful of these pain points. With our limited resources we should probably put them in a list and pick the most painful one or two to tackle. (Unless that's already been done?)

--
You received this message because you are subscribed to the Google Groups "Sandstorm Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sandstorm-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sandstorm-dev/b11fb6b7-22d8-4a65-9b87-0e3ae152fed5%40googlegroups.com.

Adam Bliss

unread,
Jan 21, 2020, 12:14:54 PM1/21/20
to Dan Krol, Jake W, Sandstorm Development

On Sat, Jan 18, 2020, 16:32 Dan Krol <orbl...@gmail.com> wrote:
It seems like we have a handful of these pain points. With our limited resources we should probably put them in a list and pick the most painful one or two to tackle. (Unless that's already been done?)

I agree. I started this wiki page as one possible forum: 


Lyre Calliope

unread,
Mar 15, 2020, 1:09:52 PM3/15/20
to Sandstorm Development
I want to revisit this thread. It's been a number of months and things have been happening. Are the priorities we discussed in January still applicable today? Have some of these been accomplished? Are there new priorities we're working on, want to work on, or that are now possible to work on because of the past few months of work?

My aim is to use this conversation to inform budgeting conversations coming up.

-Lyre

Dan Krol

unread,
Mar 15, 2020, 1:25:20 PM3/15/20
to Lyre Calliope, Sandstorm Development
And whatever we end up with, they should be reflected in our milestones, right? (Per our last office hours: https://github.com/sandstorm-io/sandstorm/wiki/Office-hour-notes:-2020.03.08#mid-term-roadmapgoals)

--
You received this message because you are subscribed to the Google Groups "Sandstorm Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sandstorm-de...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages