[neomutt-devel] New marching orders - reviving dead mailing list

Mike Marchywka marchywka at hotmail.com
Fri Feb 5 10:29:39 CET 2021

On Thu, Feb 04, 2021 at 10:10:31PM -0800, Ihor Antonov wrote:
> Hello everyone!
> This mailing list was dead for quite some time, and this is an attempt
> to bring it back to life. Today (Friday 2021-02-05) there will be a new
> release of NeoMutt and flatcap has announced on IRC a goal for the next
> one: 
>     de-globalise Index and Pager
> This is a result of our discussions on IRC that uncovered somewhat
> stagnant state of the project, caused by many factors, some of which
> are:
> - Large amount of technical debt that manifests itself in a web of
>   interconnected problems, that form cyclic graphs. Analysing these
>   chains of problems to find the best way to solve them all
>   takes an enormous amount of time and often lead to analysis-paralysis.
>   ( and is best described by this xkcd [1] comic )
> - Significant mental overhead required to evaluate code changes, caused by
>   the technical debt. Often even small code change have unexpected
>   consequences, and so requires exhaustive knowledge of the codebase to be
>   evaluated and implemented correctly. It takes a lot of time and focus
>   away from team members who have this knowledge, and creates a
>   significant challenge for those who want to become more proficient
>   with the codebase. 

I indicated earlier I'm using neomutt in something I'm by default
calling "mikemail" to describe a system for largely automated
communications by email. Right now, I'm using the neomutt
library I made with libetpan and a lot of bash scripts 
and c++ code to control and monitor a remote system
and envetually to distribute and update text data files.

The only write up I have is here whee "mikemail"
and neomutt are just incidental optional pieces of
a different system ( but one of potential interest
to other developers or maybe someone knows
a competing more complete system ), 


The front end needs to be broken up into functions- something
I did rather quickly. The biggest problem is it still sometimes
hangs waiting for a prompt although I think I have most of
those I'm still debugging one "hang" mode. 

I sent the code to someone but was not sure if anyone
would want to use it as-is. Besides hacking up the front
end, I wrote some additional headers to interface
to my c++ code where the neumutt so runs with
libetpan. I'm in the process of trying to replcae my
current fetchmail and script system with the c++
code now for remote monitor and control and fully expect
neomutt to remain part of that but not sure how to


> - Lack of contributors. Not only it is hard to find people interested
>   writing C code, it is also hard to find self-contained "good first
>   issue" due to issues described above.
> Even these high level problems form a self-reinforcing loop. Technical debt
> leads to mental overhead and low productivity, which creates entry barriers for
> contributors, and so remaining team members have less time and resources
> to deal with technical debt, and so they are often stuck dealing with
> "low hanging fruit" problems that do not change the high level picture:
>     NeoMutt is not mutt, but it is not something different either. 
> A proposed strategy to break out of this loop is to gather and focus on
> a high-risk, high-impact task, such as the one defined by flatcap above,
> without trying to analyze if this is the best approach or not.
> Refactoring of index and pager is  large chunk of work that aims to
> reduce the amount of technical debt, improve application architecture
> and open doors for future improvements. It can also introduce breaking
> changes, or instabilities.  But given the state of the project it is
> justified.
> The purpose of this email is spark a discussion to:
> - define what de-globalisation means, breaking the goal down into
>   milestones and tasks
> - define workflow, branch name, etc.
> - answer questions like below, that can be summarized as "how much focus
>   we divert away from the main goal?"
>   - what is the level of support fort the current release (do we try to fix
>     critical issues if reported?)
>   - do we try following upstream, merging mutt patches into
>     master/feature branch?
>   - do we take time to update roadmap page [2] that is currently 3 years
>     out of date
>   - ...
> - <your-item-here>
> Sorry for long rant :)
> [1] https://xkcd.com/1445/
> [2] https://neomutt.org/dev/roadmap 
> ----------
> ngortheone


mike marchywka
306 charles cox
canton GA 30115
USA, Earth 
marchywka at hotmail.com
ORCID: 0000-0001-9237-455X

More information about the neomutt-devel mailing list