I'll certainly join in the choir to welcome Jesse, it will be great to
see a direction going forward, and though I'm not really too familiar
with the Erlang community, I understand that we've been fortunate! :-)

Thanks to Evan as well, of course, for all the effort put down into CB
and for pushing the project forward, even after going on to different
pastures. That's something to respect indeed!

I also have some comments below.

David Welton <[email protected]>
writes:

> Hello, and welcome aboard!
>
> Thanks for making this happen, guys.  I'm very glad to see such an
> experienced Erlang/web guy stepping in.
>
> Some comments on the future direction of CB, below:
>
> First of all, I think taking something of a "marketing" approach to
> development is not a bad idea.  Not in the sense of selling, but of
> thinking about where Chicago Boss shines and why people are interested
> and will be attracted to it.  Focus on that.  For instance, CB and
> Erlang kick ass for web socket type things, and also make good
> backends for REST-style Javascript heavy web apps, where they're going
> to suffer less from not having a zillion libraries like, say, Rails or
> PHP.  For just putting some dynamic content up... well.... Erlang is
> not going to easily compete with, say, PHP.

Well, there's little doubt that many things have a shorter learning
curve in PHP, and probably Rails, Django, node.js etc., but given the
rise of front-end frameworks like angular.js, backbone.js and the like,
and their increased adoption, given CB's and Erlang's great advantages,
I don't think it needs to be too hard to get something quick up and
running also using CB. I think the tides are moving in the right
direction. What lacks here, IMO, is documentation and examples,
something Jesse intends to focus on if I understand him correctly. If
it's comparatively easy to get something quick running using CB, then
its advantages come into play.

> In terms of development, I think something that is critical is nailing
> the code down with a test suite that makes it easy to make changes and
> see if they break things.  This makes it possible for more people to
> do more work with ChicagoBoss, without fear.

This is what I believe is vital for the community (at least parts of it,
me included) in terms of contributing to the project. I've always found
it difficult to get a good enough understanding of the consequences of
my changes without tests and sufficient knowledge about the architecture
and code base of CB.

When it comes to developer docs, a roadmap has been mentioned. We also
have the mailing list, and the IRC channel, so technically we should
have the required means of communication. I'm not entirely sure how to
improve this, but I feel there's something missing in terms of process.
Maybe a floating roadmap where if one wants to change or add something,
it could be put up for a vote (e.g. here on the mailing list) and
approved (or rejected, possibly with ideas for improvement or
modifications) by Jesse before being added to the roadmap. I think it's
important that changes or modifications are considered holistically, and
I don't think plain pull requests serve this purpose well enough.

My 2 cents, at least. :-)


- Fredrik

> Another specific thing that I hope you have time for soon is to
> reintegrate my forks of ChicagoBoss, boss_db, and mochicow.  There
> aren't too many outstanding changes and I'd be happy to work with you
> to get them integrated.
>
> More comments below:
>
> On Fri, Mar 7, 2014 at 3:19 AM, Jesse Gumm <[email protected]> wrote:
>> Thanks for the kind intro, Evan! (and the BracketPal plug!)
>>
>> I'm happy to be here!
>>
>> While my knowledge with ChicagoBoss is still very basic, I do have a
>> few things I'd like to do from the get-go: goals that I have set for the
>> future of ChicagoBoss:
>
>> 1) SimpleBridge 2.0, which is still in alpha, supports a websocket
>> abstraction layer over Yaws, Cowboy, and all other Erlang web servers,
>> even if those servers don't natively support Websockets (Inets,
>> Mochiweb prior to a few months ago, Webmachine). Further, it
>> simplifies the configuration and API thus allowing us to do away any
>> server-specific code currently in CB (such as initializing
>> cowboy/mochiweb). This is something that I had been planning on adding
>> to SimpleBridge, and with Evan regularly prodding me to finally do it,
>> it's mostly done. My goal will be to replace the cowboy-specific
>> websocket support in CB with SimpleBridge websocket bridge, allowing CB
>> to run websockets on any webserver.
>
> To me this looks "nice to have", but, using the project I'm involved
> with as an example, we've already picked Cowboy, are happy with it,
> and don't foresee changing.  It's actively developed, the developer is
> friendly and available, and the code is good.  My guess would be that
> most CB users or potential CB users are in a similar situation.  I
> suppose something like this might pick up a few Yaws users, but to me
> one of the big promises of CB is that it's capable of picking up
> non-Erlang users, and there are tons more of those than people using
> Yaws.
>
>> SimpleBridge 2.0 Alpha Branch: 
>> https://github.com/nitrogen/simple_bridge/tree/ws
>>
>> 2) Rework ChicagoBoss.org to actually run on ChicagoBoss, including
>> live examples with the full code samples for each demo. Personally, I
>> tend to learn much faster from demos with code - and seeing the
>> underlying code for each component in the MVC for a page would be, I
>> think, highly illuminating, and provide excellent context for new and
>> veteran users alike.
>
>> Providing byte-sized examples (see what I did there?) makes for easy
>> digestion of new material, so long as the code is short enough and
>> commented well enough to be reasoned through. CB's powerful backend
>> functionality can definitely provide some interesting examples, such
>> as (oh, I don't know) viewing emails sent to the a demo email like
>> "[email protected]" in realtime with comet/websockets,
>> demonstrating BossMQ. Miscellaneous examples like that would help
>> illuminate just how much can be done with so little code when using
>> CB/Erlang.  They then serve as both a learning tool and as effective
>> propaganda.
>
>> Being able to say "The homepage for our framework actually runs our
>> framework, and here are some cool things you can see it do" helps lend
>> it more credibility, in my opinion.
>
> Excellent!  This is a great idea.
>
>> N) I do have a freak long-term idea of trying to get ChicagoBoss
>> optionally supporting the Nitrogen rendering, wiring, and postback
>> engine. Maybe this is a Frankenstein monster of an idea that should be
>> shot on sight, but I want to do it anyway "because science" (and
>> because writing HTML and Javascript with Erlang strings sucks).
>
> I don't know this well enough to comment.  I'd value "opinionated"
> over "trying to support a lot of choices" though.  Ruby on Rails got a
> lot of mileage out of that.
>
>> Ultimately, my main goal here is to help accelerate us toward a
>> stable 1.0 release and to make CB as approachable as possible.
>> Erlang is incredibly well suited for web development (preaching to the
>> choir here, I'm sure), and I want to do everything I can to make it more
>> appealing to new developers and businesses alike.
>
> Part of what I meant with the 'marketing' commentary above is that CB
> can get out and preach to the non-choir by showing that Erlang is good
> at web stuff.
>
>> For now, though, I'm learning the ropes, and taking in as much as I
>> can as quickly as I can, so bear with me as I learn and possibly ask
>> noob questions.
>>
>> I'm idling in #chicagoboss, my username is "chops". Feel free to ping
>> me. I use IRCCloud, so I'm always connected, and (usually) get mobile
>> notifications if you ping me directly.
>
> Cool, thanks!
>
>> So anyways, it's nice to meet you all, and I look forward to working
>> with you to make CB the best it can be.  And take solace in knowing
>> that if do something stupid, I'm in Chicago frequently enough that Evan
>> can easily find me and punch me in the face.
>
> I wonder if, once you see some of the compiler magic, the animosity
> won't run in the other direction? :-)
>
> Once again, very glad to have you on board!
> -- 
> David N. Welton
>
> http://www.welton.it/davidw/
>
> http://www.dedasys.com/

-- 
You received this message because you are subscribed to the Google Groups 
"ChicagoBoss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
Visit this group at http://groups.google.com/group/chicagoboss.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/chicagoboss/ygnmob1iuwl7.fsf%40rubin.ifi.uio.no.
For more options, visit https://groups.google.com/d/optout.

Reply via email to