You’re right, this should certainly not be a one way street. Part of what we have been discussing is that we as developers want to be able to interact more freely with the community without fearing that what we say will be taken as an official statement from MDG. Although people rightfully expect some sort of guidance from us, the truth is that often we are still figuring out things ourselves and haven’t decided on a course of action. But at least we could explain where we stand and what our current reasoning is. I believe having these conversations in the open will benefit the project, because we can involve more people and get input sooner, but some balance is also required. Too much uncertainty can destabilize a community, and ultimately decisions will have to be made.
Part of what we have been discussing is that we as developers want to be able to interact more freely with the community without fearing that what we say will be taken as an official statement from MDG.
I think that this is one of the many hurdles when you become a celebrity. I sincerely respect you and your fellow MDG crew for being open and willing to think in public as you are doing now. If we make steps and decisions for a temporarily solution, we can break also that barrier. Together it can work.
That is, I believe, also true with the IRC channel. Decisions are made and suddenly things die. Good transition is a practice often forgotten.
Just to add some cents from a user. I also think that there could be more insights into what is happening with Meteor. Using it, reading about it, but not having it as a core focus maybe cluttering my view a bit. But all I can see is a lot of gray’s. As an outsider I see a package system having problems (everything feels outdated), no clear direction in what is still valid practice and what isn’t, initiatives that look really cool (sql support) and seem to be started but no idea how well it is going or when it is coming, etc.
It feels like MDG went into stealth mode just to focus on Galaxy and left Meteor itself to… well… just “be”. Even the big 1.2 update feels just… irrelevant (sorry, it’s surely just my limited view of things). It might be that a lot of people are working really hard to making things better, but there is no way for me to tell? The Trello roadmap seems helpfull, but it could just as well be that the least voted on feature will be picked up first and the most voted (sql?) might be years away (no idea). This makes it hard for me to plan.
Taking the SQL example further, I didn’t like Mongo for my solution. Started to use it because I loved Meteor’s core principles. Forced myself Now it seems that SQL support is around the corner and I would love to switch to that. But as I said, it might be that this is months (years?) away. That makes it hard to invest in, since the “right” way is not in the least clear.
Another example is the thread about creating a better Blaze. I saw a big thread with upcoming features a long time ago by @Slava, but I have no idea what happened to it. No idea if it is still under development and no idea if certain parts of it have been scrapped. I know parts of it have been used in 1.2… I think. And how does this relate to the big Hackpad about the future of Blaze? Seeing it mentioned a lot, but “Blaze 2”, “Blaze +”, etc. as well. No idea where to look
The 1.2 update left me with the feeling that the current package system is completely broken. A lot is dependant on the hard work of package maintainers. But that seems to be the case for the most fundemental packages. When the maintainer is busy… nothing get’s done (which I “get”). The hard part is not only this, but that other packages outside the Meteor world are going at lightning speed and I just feel… stuck…or slow. And there is no discussion, talks, etc. if this still is the right way to go. All I hear is a lot of other people talking about how it doesn’t cut the cake anymore. No idea if MDG still believes in it.
I know MDG can’t manage everything by itself and I respect all the effort that everybody inside and outside of MDG is putting into the framework a lot. But if this is the state that Meteor will be in for a long time to come, that’s something I would like to know as well. It just feels… shaky. If afterwards Galaxy turns out to be better than sliced bread, that’s all great. But it’ll still feel shaky on an application level.
My 0,02. Don’t let it discourage anyone
I keep coming back to the idea that architecture diagrams and flow charts are one of the missing pieces of communication between MDG and the community. When I was an Oracle Database Admin working with Cerner Corp (40,000+ employees), we had manuals and manuals of flow charts and architecture diagrams. That’s how we kept tens of thousands of developers, testers, users, etc working together.
When I arrived to Meteor in 0.5 days, there was a clear sense of Architecture. Meteor was the only pure-javascript Data Visualization stack on the market, and had worked out the Mongo-to-D3 pipeline. It was beautiful, but short-lived. The introduction of Npm integration in 0.6.5 was a big step forward for embracing the ecosystem, and a big step backwards with regard to having a clear architecture.
And since the architecture was never flow-charted and documented at an architecture level, people wound up getting caught up in the shiny bits (the reactivity and UI layer); rather than understanding that Meteor’s success has been equally dependent on build tools, data caching, removing the ORM layer complexity, and so forth.
But it’s difficult to communicate how all those pieces work together. Flow charts are one of the few tools for communicating such ideas; but they’ve been conspicuously absent.
i feel that since the introduction of meteor 1.0
we dont get any information about whats going on at MDG
last year in august i finished my thesis about meteor.
so at that time i was researching how meteor was working and what they wanted todo with meteor.
i found nice talks about how the meteor security works by emily stark and how blaze works by david greenspan.
i miss talks like that and i would suggest that the first 10 minutes of every devshop one core dev gives a short talk about what he is doing and why.
Meteor 1.2 was a really big update but it felt a little bit like dropping it over the fence and leaving the community with it.
I think what is now missing is a clear direction what will happen next. We know that galaxy is coming and its important to get it running but what will happen after galaxy ?
What is with routing ?
Will Blaze be neglected in favor of angular/reactjs ?
Whats with SQL Support ?
Whats with better form support ?
And some other big questions are not answered in a way where i think we as a community know what the future will bring and if. You can see that in that thread: The future of Meteor
I think this thread and the other thread i just linked are just 2 different questions which have the same background.
I came from the Laravel (php) framework, which I loved for its simplicity, power and community. When I saw it and its documentation - I immediately fell in love with it. After some time I decided to try full-stack Javascript, I tried many frameworks like Sails, Ember, etc. But I didn’t have that easy feeling, when you know, you would like to stay with this framework, discover more and get fully involved. This was until I discovered Meteor. I immediately fell in love with its beauty and power, from the first lines of coding I understood - this is what I want to use everyday. I even made myself use Mongo, which I am not a fan at all. Time has passed and I still love Meteor and its community.
First, it was clear, what most users use (blaze, iron-router, etc), what is the preferred directory structure, I had a clear vision of how everything should be done. But from version to version, from the topics here and on crater I started to feel, that we are drowning and falling apart.
There are so many topics and we don’t have answers from the core devs. And the number of topics is growing every day. I’ll just name some of them again:
Blaze. We have a nice Blaze package, which almost everyone used - now we have a huge impact of React and Angular. The last thing I was amazed by - the todo example didn’t get the ES2015 update, but we have a shiny new React version of it. Really? Blaze seems to be forgotten. But I love Blaze for its syntax, simplicity and I don’t want to use React. Will I be forced to use React as it happened with Mongo?..
SQL (first most voted on Trello). You know, it is almost 2016 and we officially support only Mongo. I can’t remember any other framework with only one DB option. I asked this question many times, waited in silence. I don’t have the answer and no one in the community does. This is especially sad for me. And when we will have it, we will probably need ORM in core. But when…
SSR (second most voted on Trello). Seems that there are no news or no development in this direction. People use React for that. Really, this is the solution?
Router. I’ve experienced so much pain with Iron Router and its bugs, I can’t even tell. Flow Router was the one (if not the most) of the best packages lately for me. So we are getting a new core router? I don’t know, if this is a sad or a happy topic, and again I don’t know when. The router should be in core long time ago.
Galaxy. No news, no updates, nothing. Like it is dead. I really don’t get why. If more time will pass and if there will be no cool features\opportunities when it will be finally released - people will be very upset.
NPM. There is definitely some movement in this direction, to be able to use packages directly from npm. What will be with the existing packages and Atmosphere…
React. What is going on with this thing? Everyone is obsessed with it, people in dev talks use it almost in half of projects. WHY? Why can’t we have this features in Blaze…
Packages and package system. There are so many old packages, duplicates, with 1.2 even more packages stopped working. We can’t somehow mark good and bad ones, can’t leave comments on Atmosphere. And now we have mirror packages for Blaze, React, Angular. What a mess…
And there are other questions like incremental loading, orm, sass and autoprefixer, etc. I just named the most needed for me and for the most of the community. Why the MDG is not focusing on the most needed things on Trello? Why we get React instead of Blaze upgrades or SQL/SSR? Why none of the above questions are answered so that we will not have even more questions?
The MDG should man up and tell us about all this things, if you don’t plan some features like SSR or SQL - you should tell us not to expect this till mid 2016 or even 2017. We have no news from the core devs about really important things.
In Laravel we have a leader, who leads the whole community, show the best practices, etc. And the MDG says, that ‘we still haven’t decided / have no vision / maybe later’ - really? You are leading the whole community and you need to make choices, not to wait until the community will figure everything out, how it must be done (routing, sql, etc).
I also want to thank @slava (left), @aliceyu (left) and @sashko, who answered my and many questions before. I fear, if @sashko will also leave, there will be no one to answer this questions. Huge thanks to the community and I really appreciate the packages done by many awesome people. I hope, we will finally get the answers to this questions soon.
Collaborating with the community would be really nice of course, but I understand how this would be difficult for MDG to handle. I think what most people would already be very happy with is just some (one-way) communication about your way of thinking, some guidelines, best practices etc. This would give us an idea where Meteor is headed, and thus where best to invest our time. I guess we’re just looking for some more leadership at this point.
I agree more leadership would be a good start.
This thread is a good example of what is going wrong: David Glasser starts to share concerns about the publish mechanism and how it could be improved in the future. But he suddenly stops and never answers the last question about how to start something about it.
Liquid democracy? Yea, there is http://liquidfeedback.org/, but it is not for document authoring. I compare various approaches here.
One option is - David Glasser doesn’t currently know an obvious way to fix it, or doesn’t think it’s a top priority compared to other issues. For every bug like that there are a lot of other things that could be improved. I wouldn’t ascribe that to malice.
I’m planning on starting a big project very soon to build a “Meteor Guide” that will outline MDG’s and the community’s ideas about best practices, mental models, and use cases for Meteor. I’m hoping to develop it completely in the open. I’m not sure on the order of days when this will start, but I expect it to be in the next week or two.
What can we do to help you?
Actually, I find Meteor to be quite open and communicative.
It’s only a few months since I really started to work professionally with Meteor, and I keep my comments and discussions mostly on github. But IMO the communication there is much better than with some projects I’ve worked with in the past.
Okay, it is a bit limited to a handful of developers (actually its been 99% sashko the last few weeks), but I guess that’s because the framework hasn’t gotten enough attention in favor of galaxy?
Don’t forget the amount of Meteor users is growing a lot faster than the amount of MDG members, so they probably cannot be involved with every question the way they used to be.
I do think that from time to time an AMA, like what Slava did a few weeks ago, would be something highly appreciated. Even better would be a video conference where users can ask questions directly to developers for an hour or two. It would take only 2 hours of developers time (not a lot compared to reading through the forums and typing answers) and users would feel much more connected to MDG.
The problem with something like a video chat is that it’s not efficient - you can’t Google for it, and only certain people will know that information exists.
I’d much much prefer talking on the forums or GitHub above all else.
I’m having a few final discussions with coworkers about guide stuff, going to post more soon.
I wouldn’t either, obviously. But acknowledged design problems should go somewhere and be prioritized. Even with “won’t be fixed”. There is a communication problem here, nothing more. Silence causes frustration.
I can’t imagine the work load that MDG has faced over the past months with 1.2 release and Galaxy etc.
Im sure now Galaxy is out of the door, MDG can start spending more resources on getting back to the basics.
I look forward to MDG becoming more opinionated on patterns and practices and think this is very much needed to stop too much fragmentation and give developers more confidence.
Atmosphere becoming a mess is a big concern and more involvement from MDG to maintain and keep order here is surely needed.
You can have that…through a developer subscription.