From: Mike Mattie <codermattie@gmail.com>
To: emacs-devel@gnu.org
Subject: Re: What a modern collaboration toolkit looks like
Date: Mon, 31 Dec 2007 19:00:34 -0800 [thread overview]
Message-ID: <20071231190034.12b0ed4a@reforged> (raw)
In-Reply-To: <200801010027.m010R74P025484@oogie-boogie.ics.uci.edu>
[-- Attachment #1.1: Type: text/plain, Size: 5207 bytes --]
On Mon, 31 Dec 2007 16:27:07 -0800
Dan Nicolaescu <dann@ics.uci.edu> wrote:
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > > Date: Mon, 31 Dec 2007 16:41:08 -0500
> > > From: "Eric S. Raymond" <esr@thyrsus.com>
> > > Cc: esr@snark.thyrsus.com, emacs-devel@gnu.org
> > >
> > > I proudly mentioned my work on VC-mode, and got majorly dumped
> > > on for bothering with Emacs at all. The kids out there think
> > > we're a stagnant backwater, an old-boys club of bearded
> > > grognards that has learned nothing and forgotten nothing for
> > > the last decade.
> >
> > Curiously enough, I'm having an opposite experience these days: a
> > bunch of extremely able developers who work for years with MS
> > Visual Studio came to respect Emacs, as a viable and powerful
> > alternative to the bloated and dog-slow Studio, even on Windows,
> > to say nothing of GNU/Linux (this is a dual-platform project,
> > where software is developed to run on both systems). All I
> > needed to do is introduce them to some optional features, such as
> > Speedbar, ebrowse, and gdb-ui, and craft a simple .emacs to bind
> > the various Fn keys to compile/run/debug commands they were used
> > to have. After that, I never again heard anyone of them laughing
> > at "stagnant backwater" that is Emacs.
>
> Care to post an example of such .emacs?
> Maybe it can be used as a skeleton for a package for such users, or
> maybe we can change some defaults to match such users' expectations.
I have tried to do something like this but I have constantly run into
what I think is the true issue facing Emacs, the fact that it is forked
almost to death.
There are three forks of Emacs for Mac OS X, cedet is maintained outside
of the mainline, the Ohio Lisp archive died ages ago, slime is third party,
and icicles distributes through the emacs wiki.
Why does Emacs branch, until the branches become so old that you are forced
to admit they are a fork ?
It may be that Emacs simply tries to set a higher standard for merging, a standard
that the current tools and practices do not support well. Or there may be an
artificial barrier.
As long as assembling a modern, slick Emacs consists of scavenging various
pieces scattered across the net with unreliable hosting, and uncertain maintainer-ship,
it's extremely hard to build a cross-platform Emacs.
I have found the Emacs community to be one of the most responsive and skilled
group of developers in open-source, but trying to straddle all the schisms to
support users is really hard.
Here is a code example of how I am trying to solve this problem. When I have a part
of the emacs setup that is only distributed with some of the emacs forks, or none
I split the setup into a separate file.
I have a macro that traps errors on load.
(defmacro load-guard ( file error )
"Trap errors from loading a file for robustness while initializing."
`(condition-case nil
(load (concat my-emacs-dir ,file))
(error (progn
;; duplicate the message to both *Messages* as a log
;; and to the *scratch* buffer where it is highly visible.
(message "initialization failed %s" ,error)
(with-current-buffer "*scratch*"
(goto-char (point-max))
(insert (format "; !degraded configuration! %s\n" ,error)))
))
))
Inside the file for spelling support I start it with something like this:
(defun install-flyspell ()
"install or update flyspell"
(interactive)
(dl-elisp "http://www-sop.inria.fr/mimosa/Manuel.Serrano/flyspell/flyspell-1.7n.el" "flyspell"))
(require 'flyspell)
config....
The idea is that if require fails then it raises an error, and the user has a function to install
the functionality. They can then re-execute the configuration once the necessary elisp is installed.
Each of the files must have all of the features required as require forms to ensure that it does not
configure features that are not installed.
This could be made into a much slicker macro that would generate the check,install defuns from a
nice syntax.
This scheme in practice really doesn't work all that well, because you need reliable hosting for the
packages, and you need the last 5 or 10 versions with the version encoded in the URL/path so you can
lock a config to a known good version tested against the other components. The provide/require
lacks version information. That is another killer. Emacs.app provides flyspell, but what version ?
I am not proposing this sort of lightweight package management as a solution, rather as an example
of the reality of trying to create an Emacs setup that includes all of the wonderful creativity
and innovation that is the hallmark of Emacs.
So why do Emacs branches last for years instead of months ? Why is Emacs forked to death ?
These are not rhetorical punctuations of a vision, but rather real questions.
>
> _______________________________________________
> Emacs-devel mailing list
> Emacs-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-devel
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 142 bytes --]
_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel
next prev parent reply other threads:[~2008-01-01 3:00 UTC|newest]
Thread overview: 277+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-30 12:22 What a modern collaboration toolkit looks like Eric S. Raymond
2007-12-30 15:32 ` Thien-Thi Nguyen
2007-12-30 15:42 ` Richard Stallman
2007-12-30 17:22 ` Eric S. Raymond
2007-12-30 20:25 ` Robert J. Chassell
2007-12-30 21:55 ` Nick Roberts
2007-12-30 22:25 ` Lennart Borgman (gmail)
2007-12-30 22:58 ` Richard Stallman
2007-12-30 22:58 ` Richard Stallman
2007-12-31 2:58 ` Eric S. Raymond
2007-12-31 12:14 ` Thien-Thi Nguyen
2008-01-01 23:57 ` John S. Yates, Jr.
2008-01-02 1:46 ` Thien-Thi Nguyen
2007-12-31 22:29 ` Richard Stallman
2008-01-01 0:19 ` Leo
2007-12-31 4:31 ` Eli Zaretskii
2007-12-31 13:07 ` Eric S. Raymond
2007-12-31 20:57 ` Eli Zaretskii
2007-12-31 21:41 ` Eric S. Raymond
2007-12-31 23:00 ` Nick Roberts
2008-01-01 0:50 ` Eric S. Raymond
2008-01-01 4:22 ` Eli Zaretskii
2008-01-01 6:20 ` Eric S. Raymond
2007-12-31 23:12 ` Eli Zaretskii
2008-01-01 0:27 ` Dan Nicolaescu
2008-01-01 3:00 ` Mike Mattie [this message]
2008-01-01 7:57 ` Drew Adams
2008-01-02 19:28 ` Agustin Martin
2008-01-03 9:50 ` Richard Stallman
2008-01-05 3:34 ` Mike Mattie
2008-01-06 8:09 ` Richard Stallman
2008-01-03 9:50 ` Richard Stallman
2008-01-01 20:44 ` Eli Zaretskii
2008-01-02 4:17 ` Dan Nicolaescu
2008-01-05 10:48 ` Eli Zaretskii
2008-01-01 0:57 ` Eric S. Raymond
2008-01-01 4:21 ` Eli Zaretskii
2008-01-01 0:10 ` Miles Bader
2008-01-01 1:06 ` Eric S. Raymond
2008-01-01 1:41 ` Miles Bader
2008-01-01 2:16 ` Eric S. Raymond
2008-01-01 19:43 ` Tom Tromey
2008-01-01 21:11 ` Nick Roberts
2008-01-02 0:25 ` Miles Bader
2008-01-02 1:12 ` Tom Tromey
2008-01-02 17:19 ` On-the-fly compiling (was Re: What a modern collaboration toolkit looks like) Mark A. Hershberger
2008-01-02 20:57 ` On-the-fly compiling Stefan Monnier
2008-01-02 22:33 ` Lennart Borgman (gmail)
2008-01-02 23:09 ` Tom Tromey
2008-01-02 9:53 ` What a modern collaboration toolkit looks like Richard Stallman
2008-01-01 11:28 ` Tassilo Horn
2008-01-01 20:36 ` Eli Zaretskii
2008-01-02 0:29 ` Miles Bader
2008-01-02 4:14 ` Eli Zaretskii
2008-01-02 4:33 ` Miles Bader
2008-01-02 8:24 ` Werner LEMBERG
2008-01-02 8:20 ` Tassilo Horn
2008-01-03 9:50 ` Richard Stallman
2008-01-03 13:15 ` Ævar Arnfjörð Bjarmason
2008-01-04 13:56 ` Stefan Monnier
2008-01-02 8:41 ` tomas
2008-01-03 9:50 ` Richard Stallman
2008-01-03 10:16 ` Miles Bader
2008-01-05 5:55 ` Richard Stallman
2008-01-05 6:59 ` Óscar Fuentes
2008-01-05 15:29 ` Eli Zaretskii
2008-01-05 19:53 ` Óscar Fuentes
2008-01-06 8:09 ` Richard Stallman
2008-01-05 8:55 ` David Kastrup
2008-01-05 9:55 ` Werner LEMBERG
2008-01-05 15:23 ` Eli Zaretskii
2008-01-05 15:31 ` Lars Magne Ingebrigtsen
2008-01-05 15:39 ` David Kastrup
2008-01-06 8:09 ` Richard Stallman
2008-01-06 9:51 ` tomas
2008-01-06 11:02 ` David Kastrup
2008-01-06 12:05 ` Robert J. Chassell
2008-01-06 12:40 ` David Kastrup
2008-01-06 16:51 ` Robert J. Chassell
2008-01-06 17:03 ` David Kastrup
2008-01-07 4:18 ` Richard Stallman
2008-01-05 22:46 ` Stefan Monnier
2008-01-06 18:09 ` Richard Stallman
2008-01-07 17:17 ` Gregory Collins
2008-01-07 23:21 ` Stephen J. Turnbull
2008-01-08 0:25 ` Gregory Collins
2008-01-08 0:51 ` David Kastrup
2008-01-08 2:43 ` Mike Mattie
2008-01-08 3:03 ` YAMAMOTO Mitsuharu
2008-01-08 4:25 ` Mike Mattie
2008-01-08 19:07 ` Richard Stallman
2008-01-03 10:32 ` David Kastrup
2008-01-01 17:11 ` Alan Mackenzie
2008-01-01 18:05 ` Werner LEMBERG
2008-01-01 18:27 ` Alan Mackenzie
2008-01-01 18:28 ` Werner LEMBERG
2008-01-02 9:53 ` Richard Stallman
2008-01-02 10:36 ` Werner LEMBERG
2008-01-02 12:23 ` Eric S. Raymond
2008-01-04 5:27 ` Richard Stallman
2008-01-02 11:27 ` Thien-Thi Nguyen
2008-01-02 12:17 ` Eric S. Raymond
2008-01-03 1:26 ` Stephen J. Turnbull
2008-01-03 2:49 ` Eric S. Raymond
2008-01-04 5:27 ` Richard Stallman
2008-01-04 5:35 ` Miles Bader
2008-01-04 12:47 ` Eric S. Raymond
2008-01-05 14:30 ` Richard Stallman
2008-01-06 1:10 ` Miles Bader
2008-01-04 12:45 ` Eric S. Raymond
2008-01-05 14:30 ` Richard Stallman
2008-01-05 15:29 ` Eric S. Raymond
2008-01-05 15:59 ` Andreas Schwab
2008-01-06 2:14 ` Mike Mattie
2008-01-03 1:08 ` Giorgos Keramidas
2008-01-03 2:56 ` Eric S. Raymond
2008-01-03 3:18 ` Giorgos Keramidas
2008-01-04 5:27 ` Richard Stallman
2008-01-04 8:51 ` David Kastrup
2008-01-05 14:30 ` Richard Stallman
2008-01-05 15:28 ` David Kastrup
2008-01-06 10:46 ` Richard Stallman
2008-01-06 11:10 ` David Kastrup
2008-01-07 4:18 ` Richard Stallman
2008-01-07 4:36 ` dhruva
2008-01-07 4:52 ` Sam Steingold
2008-01-07 5:09 ` dhruva
2008-01-07 8:17 ` David Kastrup
2008-01-07 15:37 ` Stefan Monnier
2008-01-07 15:47 ` David Kastrup
2008-01-07 16:22 ` Stefan Monnier
2008-01-07 17:09 ` David Kastrup
2008-01-07 15:40 ` CHENG Gao
2008-01-07 23:36 ` Stephen J. Turnbull
2008-01-08 4:31 ` CHENG Gao
2008-01-08 5:07 ` Mike Mattie
2008-01-08 2:56 ` Mike Mattie
2008-01-08 9:37 ` Andreas Schwab
2008-01-07 5:16 ` Jason Earl
2008-01-07 17:16 ` Richard Stallman
2008-01-07 17:45 ` Gregory Collins
2008-01-08 19:07 ` Richard Stallman
2008-01-08 19:50 ` Miles Bader
2008-01-13 20:06 ` Giorgos Keramidas
2008-01-14 11:28 ` Richard Stallman
2008-01-07 21:28 ` Jason Earl
2008-01-07 8:15 ` David Kastrup
2008-01-07 8:33 ` Giorgos Keramidas
2008-01-07 23:50 ` Stephen J. Turnbull
2008-01-05 21:11 ` Stephen J. Turnbull
2008-01-06 18:08 ` Richard Stallman
2008-01-07 9:35 ` Piet van Oostrum
2008-01-01 20:53 ` Nick Roberts
2008-01-02 9:53 ` Richard Stallman
2008-01-02 12:24 ` Eric S. Raymond
2008-01-02 15:19 ` David Kastrup
2008-01-02 20:35 ` Karl Fogel
2008-01-02 19:19 ` Andreas Schwab
2008-01-02 19:23 ` Romain Francoise
2008-01-03 1:18 ` Giorgos Keramidas
2008-01-03 7:55 ` David Kastrup
2008-01-02 9:53 ` Richard Stallman
2008-01-02 10:03 ` David Kastrup
2008-01-02 10:05 ` Tassilo Horn
2008-01-02 11:31 ` Alan Mackenzie
2008-01-02 11:28 ` Tassilo Horn
2008-01-02 14:26 ` Óscar Fuentes
2008-01-02 19:48 ` Karl Fogel
2008-01-02 18:43 ` Andreas Schwab
2008-01-02 22:10 ` Alfred M. Szmidt
2008-01-03 2:58 ` Karl Fogel
2008-01-03 1:21 ` Giorgos Keramidas
2008-01-03 9:14 ` Andreas Schwab
2008-01-03 10:57 ` Giorgos Keramidas
2008-01-01 19:37 ` Eric S. Raymond
2008-01-01 21:46 ` Alan Mackenzie
2008-01-01 22:49 ` Eric S. Raymond
2008-01-02 17:05 ` Mark A. Hershberger
2008-01-03 9:49 ` Richard Stallman
2008-01-02 8:35 ` Tassilo Horn
2008-01-02 5:54 ` John S. Yates, Jr.
2008-01-02 11:52 ` Eric S. Raymond
2008-01-03 9:50 ` Richard Stallman
2008-01-02 8:51 ` tomas
2008-01-02 9:53 ` Richard Stallman
2008-01-01 22:01 ` Romain Francoise
2007-12-31 13:11 ` Alan Mackenzie
2007-12-31 13:24 ` Miles Bader
2007-12-31 13:44 ` Alan Mackenzie
2007-12-31 15:45 ` Eric S. Raymond
2007-12-31 15:14 ` Juanma Barranquero
2007-12-31 15:31 ` Eric S. Raymond
2007-12-31 15:25 ` Eric S. Raymond
2008-01-01 20:34 ` Alan Mackenzie
2008-01-01 20:57 ` Eric S. Raymond
2008-01-02 9:53 ` Richard Stallman
2008-01-02 12:29 ` Eric S. Raymond
2008-01-02 12:59 ` dhruva
2008-01-02 13:11 ` Miles Bader
2008-01-02 13:17 ` Tassilo Horn
2008-01-02 13:49 ` David Kastrup
2008-01-04 5:28 ` Richard Stallman
2008-01-04 7:03 ` John S. Yates, Jr.
2008-01-05 14:29 ` Richard Stallman
2008-01-02 13:48 ` Werner LEMBERG
2008-01-02 13:56 ` dhruva
2008-01-02 14:55 ` Eric S. Raymond
2008-01-03 1:13 ` Giorgos Keramidas
2008-01-02 14:50 ` Eric S. Raymond
2008-01-19 17:45 ` Jari Aalto
2008-01-20 2:59 ` dhruva
2008-01-20 5:10 ` Miles Bader
2008-01-20 5:36 ` Juanma Barranquero
2008-01-20 6:03 ` Miles Bader
2008-01-20 19:28 ` Eli Zaretskii
2008-01-20 20:42 ` Juanma Barranquero
2008-01-20 20:17 ` Juanma Barranquero
2008-01-20 20:28 ` Juanma Barranquero
2008-01-21 2:11 ` Miles Bader
2008-01-21 2:38 ` Karl Fogel
2008-01-21 2:49 ` Miles Bader
2008-01-21 3:06 ` Nick Roberts
2008-01-21 3:17 ` Miles Bader
2008-01-21 3:26 ` Stephen J. Turnbull
2008-01-21 3:16 ` Glenn Morris
2008-01-21 4:11 ` Nick Roberts
2008-01-21 10:00 ` Thien-Thi Nguyen
2008-01-21 2:41 ` Juanma Barranquero
2008-01-21 3:01 ` Nick Roberts
2008-01-21 9:07 ` Richard Stallman
2008-01-21 15:51 ` Dan Nicolaescu
2008-01-21 17:37 ` Miles Bader
2008-01-21 17:53 ` Tom Tromey
2008-01-21 20:06 ` Stefan Monnier
2008-01-21 19:50 ` Tom Tromey
2008-01-22 0:33 ` Dan Nicolaescu
2008-01-24 14:43 ` Mark A. Hershberger
2008-01-24 15:00 ` Juanma Barranquero
2008-01-24 15:34 ` dhruva
2008-01-24 19:52 ` Stephen J. Turnbull
2008-01-25 0:43 ` Juanma Barranquero
2008-01-25 22:47 ` Richard Stallman
2008-01-25 23:13 ` Alfred M. Szmidt
2008-01-25 23:36 ` Miles Bader
2008-01-27 0:45 ` Richard Stallman
2008-01-27 17:39 ` David Kastrup
2008-01-27 20:06 ` Nick Roberts
2008-01-27 22:21 ` David Kastrup
2008-01-27 23:58 ` Johan Bockgård
2008-01-28 7:17 ` Richard Stallman
2008-01-28 7:17 ` Richard Stallman
2008-01-28 7:57 ` GNU Project [was: Re: What a modern collaboration toolkit looks like] Nick Roberts
2008-01-28 21:32 ` Richard Stallman
2008-01-28 7:18 ` What a modern collaboration toolkit looks like Richard Stallman
2008-01-28 7:30 ` David Kastrup
2008-01-28 9:18 ` Stephen J. Turnbull
2008-01-28 21:32 ` Richard Stallman
2008-01-26 1:23 ` Thomas Lord
-- strict thread matches above, loose matches on Subject: below --
2008-01-01 3:09 Nick Roberts
2008-01-01 6:24 ` Eric S. Raymond
2008-01-03 20:32 Trey Jackson
2008-01-04 9:46 ` dhruva
2008-01-05 13:36 ` Eli Zaretskii
2008-01-05 15:04 ` dhruva
2008-01-05 15:13 ` Eli Zaretskii
2008-01-06 1:17 ` Miles Bader
2008-01-04 13:43 ` Gianluca Della Vedova
2008-01-05 14:30 ` Richard Stallman
2008-01-06 5:03 ` Trey Jackson
2008-01-06 6:58 ` Nick Roberts
2008-01-07 4:57 ` Trey Jackson
2008-01-07 5:54 ` Nick Roberts
2008-01-06 18:09 ` Richard Stallman
2008-01-07 5:16 ` Trey Jackson
2008-01-07 6:15 ` Nick Roberts
2008-01-07 15:41 ` Stefan Monnier
2008-01-29 5:43 Werner LEMBERG
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071231190034.12b0ed4a@reforged \
--to=codermattie@gmail.com \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).