Mindstorm:Revamping default plugins and scripts

From GIMP Developer Wiki
Jump to: navigation, search

Where we stand

  • we are shipping outdated stuff
  • we are shipping stuff that relies on things not in the bundle (fonts)
  • we are not shipping stuff people actually need a lot

Outdated stuff

Problem statement

We are shipping a lot of stuff that follows a visual trend that died in late 90s and renders cheap looking graphics. It makes GIMP look like a joke.

Examples:

  • most of Create > … > …
  • some/most of the brushes, gradients, swatches/palettes, patterns

What to look for

  • analyze if it’s contemporary
  • see if it heavily relies on fonts/resources nobody really has
  • see what default scripts and plug-ins use outdated resources

Taking action

  1. Ransack the current set of stuff and find out what assets match this list above
  2. Make a list of that outdated stuff
  3. Find out what kind of impact removal of outdated stuff will have on 3rd party scripts and plug-ins
  4. Move the movable stuff to a separate project, say, gimp-leftovers to quiet down the Occupy GIMP Resources crowds, or maybe just kill it with fire

Subsitution

Some of the outdated stuff is presumably kept in hope that it helps someone getting a grasp of Whatever-Fu. We need to figure out whether we need simple scripts written specifically for educational purposes. Criteria to be met:

  • they should be actually useful
  • they should be well documented

Missing stuff

Problem statement

Our set of plug-ins hasn't been revised since early 2000s, yet the world has moved on.

The long-term goal is still to provide an easy Firefox/Chrome-like way to install extensions, but we are far from getting there, so we can do a better job with what we have.

Figuring out what people really need is rather a job for the UX folks at gui.gimp.org, but here is just a quick list:

  • more control over guides, see Advanced ways to create guides in GIMP
  • more contemporary photographic stuff
    • sharpening (wavelets, highpass etc.)
    • blurring (focus blur, surface blur etc)
    • denoising (wavelets again)
    • operations in frequency domain
    • recomposition (liquid rescale, resynthesizer)
    • various lens related fixes (CA, distorsions etc.)
  • more contemporary web design stuff
    • more CSS output (web sprites, buttons, css image filters etc.)
  • better brushes

Most of those photography related tasks listed above are covered by existing 3rd party plug-ins in C/C++. They need porting to GEGL anyway (Liquid Rescale already is, unofficially). Some lens distorsions stuff is already in GEGL.

For the missing stuff

  • analyze what’s in professional use/demand, avoid cheap effects
  • when possible, use a script in Python rather than Script-Fu (preview is possible if GSoC2009 project is given another chance)
  • make sure that UI/code quality meets our requirements
  • make sure that each plug-in/script is in line with product vision and doesn't contribute to making GIMP look (even more) like a patchwork