-
Notifications
You must be signed in to change notification settings - Fork 4
Become a Seco Developer
Seco is a project in search for programmers to push it forward. A lot has been accomplished and I find myself pleasantly amazed how this (by now old) piece of software turned out even more relevant in today's development trends than 10 years ago when we started it. Agile development combined with dynamic languages, small increments, distributed teams, all those are aspects that we anticipated and they will get even more prominent, with processes and tools chasing each others' tails.
I think now more and more people will get it, especially since "competitors" have emerged (see Similar Projects). Seco must be an open community effort, not a commercial effort because Seco must be a laboratory for ideas. My hopes have always been that Seco will be to the modern era of programming what Emacs was back in the day. It has to be self-evolving, but it also has the much larger ambition to create end-user products, to be the dynamic, contextualized IDE that major players try to create in a top-down, via coarse grained, rigid convoluted plugin architectures. Foundations of all that have been laid and the core is solid. But all of details and some major architectural decisions remain to be resolved.
The project has been staling for the past 5 years because funding stopped and it is high time for it to be revived. If you are a capable Java programmer, like where the tool is heading, share the vision, please land a hand. There are of course bugs and features in the issues tracker here at Github, but overall the development themes are:
- Adding support for more languages (relatively easy).
- Supporting latest versions of currently supported languages (even easier).
- Getting the P2P model to the finish line so it's actually usable in practice. Lots of details to get right here, including UI/usability issues. The basics of beaming cells & notebooks form one place to another is there, but it's a bit sloppy the way it currently works (moderately hard).
- Add support for editing and compiling Java, thus making this into a Java IDE as well (moderately hard).
- Auto-import projects from various build systems and other IDEs such as Eclipse, Maven (relatively easy).
- Redo the zoomable interface in JavaFX (probably pretty difficult).
- Revisit HyperGraphDB type synthesizing - this is basically an attempt to make a better Java serialization that handles class changes in the persistence layer (quite hard).
- Improve the runtime evaluation model as a full cell dependency graph. The graph is implicit in the cell groupings, but there is no evaluation engine smart enough to propagate changes automatically, let alone continuously (probably hard).
- Make it pretty, create nice icons, create nice web site, make it sexy. I'm tired of seeing crappy software presented well and seducing potential users with sheer, superficial beauty. In other words, please the Apple card (relatively easy if you are a good designer).
- Overall UI experience. Currently, we have an archaic set of menus and options in dialog boxes. We don't even have a smooth window docking mechanism (it's even worse that Netbeans's) (only moderately hard, if you have a knack for usability).
Write to the google group or email me at borislav.iordanov@gmail.com if you are interested. I work on the codebase sporadically though I actually use the software almost daily.