[Glass] What the heck is going on?
Tobias Pape
Das.Linux at gmx.de
Tue Aug 26 10:19:50 PDT 2014
Dear Dale
On 26.08.2014, at 14:14, Dale Henrichs <dale.henrichs at gemtalksystems.com> wrote:
> A lot of the pain that all of you have been suffering recently is because I have been making a concerted effort to transition the GLASS infrastructure from a loosely organized collection of blog posts, wikis, and monticello repositories to a focussed structure for installation and management of GemStone, documentation and related projects based on using git/github for collaboration.
>
> Collaboration has always been a sticking point for me ... from the very beginning of the GLASS project I have always seemed to be the bottleneck for getting anything done ... there are lots of reasons why that was the case and over the years I have tried a number of different things to make collaboration easier and to make things less dependent upon me.
>
> I invented Metacello so that I would not be the only person who knew how to load a project ...
>
> Metacello went a long way, but for me but I never saw the level of contribution to maintaining the projects that I wanted ... I have received lots of bug reports and complaints about how things are not working over the years but I have seen very little in the way of actual contributed bugfixes or improved scripts or improved documentation from the community itself ... putting some code in an email does not update the package files and does not test the fix against all of the supported platforms...
>
> At the time that Otto introduced me to the very earliest versions of FileTree, I had been studying git and trying to work out a plan to make it possible integrate some features of git into Metacello to make Metacello a more complete tool..... But Otto's pioneering effort there made it possible to actually use git instead of re-implementing git ...
>
> Working on FileTree gave me the opportunity to learn about GitHub and I saw that GitHub providing collaboration tools that far exceeded anything we had available in the Smalltalk community ... 100's of developers routinely contribute to projects on GitHub and in Smalltalk it is danged difficult to get 3 developers to work together and contribute to the same project ...
>
> On github one contributes updates for scripts/code documenation by issuing a pull request. Before integration of the pull request, tests are run against the supported platforms If the tests pass and there are no issues uncovered during a code review (yes code reviews are very eeay to do on github these days) one of the core developers can merge the code into the master project with the press of a button on a web page.
>
> It was very obvious to me that if I wanted to realize my goal of getting off of the critical path for GLASS, I needed to find a way move the GLASS project to git/github ...
>
> This work started back in 2012 and the work involve major revisions for Metacello (Metacello Preview), FileTree, GLASS and a new development environment designed to work in a disk-based world (tODE).
>
> BTW over these last view years I have used github to successfully collaborate with a number of different folks on several different projects and I have seen how smooth things can be ... Johan is moving to git/github in his own internal development process as well ...
>
> The work is nearly complete, but we have entered the painful transition phase.
>
> I understand that folks are not going to be able to move overnight to these new systems and tools, but the transitions have started Seaside3.1 and Zinc have been been transitioned to depend upon GLASS1 which means that before trying out these projects you will need to upgrade to GLASS 1.0-beta9.3
>
> So to avoid future hassles everyone should at least make a plan to get themselves up to GLASS 1.0-beta9.3.
>
> Besides GLASS 1.0-beta.9.3, I think that folks should understand what is going on with the MetacelloPreview and GLASS1.
>
> In a nutshell, the MetacelloPreview project is required to use projects hosted on github and is itself hosted on github and GLASS1 is the GitHub hosted version of GLASS.
>
> These two projects differ from other projects because they are pre-loaded in your system and the configurations for Metacello and GLASS must be loadable in the very oldest of supported versions of GemStone and the most recent (2.4.x to 3.2.2). So ConfigurationOfMetacello and ConfigurationOfGLASS cannot use the constructs required for loading projects directly from github. Consequently I have had to create separate configurations.
>
> These two projects are bridge projects spanning the old and new ways of doing things so it will be a while before I can completely eliminate the old projects completely.
>
> As I have stated elsewhere, tODE has built-in git/github support and tools support for git/github is absolutely required.
>
> The final piece in the puzzle is GsDevKit ... GsDevKit provides the framework for managing GemStone instances as well as the primary location for documentation and references to projects that have been ported to GemStone ...
>
> In order to survive this transition period we are going to have to work together ... if we continue the patterns of the past where folks send me email telling me about problems instead of contributing solutions to problems then the process will be a prolonged one, because I only have so many things that I do in a day and I truly am trying to do my best and I know that at times that has not been enough ...
>
> To me collaboration means that you have start taking ownership and responsibility for these projects ... I have made decisions because decisions had to be made ... I have built tools because tools had to be made ... I hope that GsDevKit provides a starting point for an evolutionary process and I do not want to be the arbiter of evolution ... I have visions and Ideas but these are general visions and ideas that without active and productive contributions from the community will not survive ... In my experience someone has to go around putting flags in the ground in order to stimulate action, but please don't consider these flags in the ground as being set in concrete.
>
> If you do not have the time to contribute then have patience ... but please try to make the time to contribute.
>
> I don't expect anyone to read my mind so if you want to contribute drop me an email and tell me what area you might be interested in. If you have questions let's share those in public so I don't have to answer the same questions over and over.
>
> Can you write documentation? Do you want to fix bugs? Do you want to help improve the Squeak/Pharo compat library? Do you want to learn and improve about tODE? Do you want to learn about Metacello? Do you want to port the latest XML support to GemStone?
>
> There are hundreds of things that need to be done from little to large. Every piece is important ...
>
First and foremost, I have to say that your effort enabled me and subsequently over a hundred students
to successfully work in class and develop projects. This alone is a reason to say Thank You a lot.
Your effort made it possible for us to have all of our class project automatically travis-tested
and well defined in terms of dependencies.
Furthermore, for me and a lot of people around me, you have become the Face of GLASS and sometimes
the face of GemStone even.
Where I can help, I will[1].
> I guess I've rambled long enough...
Not at all; you typically speak truth, why less of it.
Best
-Tobias
[1] I guess, a SqueakSource->GitHub bridge/helper is due long enough :D
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 1625 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20140826/08f9e950/attachment.pgp>
More information about the Glass
mailing list