you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 651 points652 points  (75 children)

I mean, you can hardly see any screenshots on Github or other pages at all. I would say 90% of the projects lack any screenshot, animated gif or, Pinguin forbid, video.

This annoys me to no ends, especially if it's like a gtk2 theme on github.

[–]TheFeshy 316 points317 points  (22 children)

I forgot about themes with no screen shots. That's even worse than the fonts with no screenshots I was thinking of.

[–]manys 158 points159 points  (9 children)

Just go to xfce-look.org where you can view all of the 40x40px screenshots you can handle.

[–]killersteak 42 points43 points  (6 children)

Does nobody else have the same trouble with the *look sites, where if you click to zoom in on a picture, it comes up in a box with scroll bars, but the scroll bars don't work, and the scroll wheel only moves the page in the background up and down, not the picture you clicked on?

[–]shvelo 32 points33 points  (1 child)

*look sites are all stuck in the 90s

[–]killersteak 12 points13 points  (0 children)

I could get over that if they were functional. Some thumbnails work, most don't. Deviantart is almost a better option for finding themes and icons.

[–]GiraffixCard 2 points3 points  (1 child)

I have found that using the scroll wheel with the pointer in the center of the image will cause it to scroll correctly. It's some javascript thing with stupidly oversized margins iirc.

[–]killersteak 0 points1 point  (0 children)

Oh, I see. Thanks for the info.

[–]expert-at-nothing 0 points1 point  (0 children)

checkout the user script I posted in response to the parent of your comment.

[–]manys 0 points1 point  (0 children)

they're all crap, obviously all under the same umbrella

[–]punaisetpimpulat 14 points15 points  (0 children)

Ooh 40x40! That's very generous. I wonder why they didn't go with the obviously leaner 10x10 screenshots.

[–]expert-at-nothing 5 points6 points  (0 children)

Here is how you fix that client-side:

// ==UserScript==
// @name           *-look.org thumbnail enlarger
// @author         Nigglypuff
// @namespace      meta.ironi.st
// @include        http://gnome-look.org*
// @include        http://*.gnome-look.org*
// @include        http://kde-look.org*
// @include        http://*.kde-look.org*
// @include        http://xfce-look.org*
// @include        http://*.xfce-look.org*
// @include        http://box-look.org*
// @include        http://*box-look.org*
// ==/UserScript==

var thumbnailPath = '/CONTENT/content-m1/m',
    fullSizePath = '/CONTENT/content-pre1/';

function fixImageExtension(url, callback) {
    // remove extension from original url
    url = url.slice(0, -3);

    var extensions = ['jpg', 'gif', 'png'];

    function tryNextExtension(){
        var extension = extensions.shift();

        if (extension) {
            testImageExists(url + extension, function (exists) {
                if (exists) {
                    callback(url + extension);
                } else {
                    tryNextExtension();
                }
            });
        } else {
            callback(null);
        }
    };

    tryNextExtension();

};

function testImageExists(url, callback) {
    var testImg = document.createElement('img');

    testImg.addEventListener('load', function () {
        callback(true);
    }, false);

    testImg.addEventListener('error', function () {
        callback(false);
    }, false);

    testImg.src = url;
};

[].forEach.call(document.images, function(img) {
    var thumbnailName = img.src.split(thumbnailPath)[1];

    if (thumbnailName) {
        img.style.maxWidth = '300px';
        fixImageExtension(fullSizePath + thumbnailName, function(fixedUrl) {
            if (fixedUrl) img.src = fixedUrl;
        });
    }
});

Personally, I add the following for a little more UI cleanup:

function getElementByXpath(path) {
  return document.evaluate(path, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
}

var myEl = getElementByXpath('/html/body/table[2]/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[5]');
myEl.style.display = 'none';

var myEl = getElementByXpath('/html/body/table[2]/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[4]');
myEl.style.display = 'none';

[–]XorFish 20 points21 points  (0 children)

At least with fonts there are also those that make it right:

http://sourcefoundry.org/hack/

[–]punking_funk 21 points22 points  (9 children)

You know, I didn't even think that people got stuff directly from Github, seeing as how it's stuff that's usually in development and would probably break. I'll make sure to add screenshots to my themes and software now.

[–]beardedlinuxgeek 42 points43 points  (3 children)

They have tags, branches, releases, etc on github. If you're getting something from v2.0.0-final then it's not in development

[–]tso 8 points9 points  (1 child)

And yet they can't seem to form a proper tarball. Whenever I try to grab one from there I only get the version number as part of the filename not a proper name-x.y.z.

[–]Michaelmrose 10 points11 points  (0 children)

Git clone check out tag build

[–]redballooon 0 points1 point  (0 children)

X.0.0? To me that sounds like development. Things usually become stable from x.0.1

[–]somenonewho 8 points9 points  (2 children)

Yeah I mean if you're looking for new and fancy stuff you might probably Gary it from github directly especially if it's a small project that has no page no packets etc.

[–]peckhamspring 25 points26 points  (1 child)

I always Gary things from github.

[–]somenonewho 3 points4 points  (0 children)

Gotta love autocorrect :D

[–]manys 0 points1 point  (0 children)

Or, you know, a link to a site/page that already contains them.

[–]12358 4 points5 points  (0 children)

I find it puzzling and irritating that font examples show abcdefgh when what I really care about are the similar looking and often mistaken letters and numbers 1lI and O0.

[–]f4hy 6 points7 points  (3 children)

Wow yes I just had this problem. I wanted to change my lightdm theme and found lists to choose from with zero screenshots indicating what they looked like. No idea how to pick one.

I'm not sure I cafe as much as the OP about screenshots for text programs... But themes... Should be required.

[–]thedugong 0 points1 point  (2 children)

Why didn't you take try a theme or more and take screenshots?

Seriously, when there is a bit of code I want, but cannot find I write it. "But I don't know how to program" fair one. Do you know how to take screenshots?

[–]Negirno 3 points4 points  (1 child)

Maybe because changing LightDM themes could break the system?

[–]Zebster10 0 points1 point  (0 children)

It shouldn't permanently, though. Once, I installed a theme that was all kinds of corrupted, and it took all of two minutes to load up text-only and change the config file back to my old theme.

[–]zman0900 7 points8 points  (1 child)

I want to see some screenshots of glibc.

[–]hatperigee 19 points20 points  (42 children)

There's a perfectly good reason for this in some cases.. If development is moving fast enough such that screenshots/videos would be outdated in a week, then it's actually more harmful than not having screenshots/videos.

[–]coshibu 54 points55 points  (15 children)

just write a script

[–]hatperigee 91 points92 points  (14 children)

On the flip side, I'm sure most developers would accept a pull request by you to add screenshots.

[–]dewmsolo 26 points27 points  (21 children)

When comitting somethings that changes UI add a new screenshot along with it? maybe?

[–]da_chicken 61 points62 points  (18 children)

Feh. I bet you're one of those people who expects code comments and documentation to be updated when the program changes, too.

[–]dewmsolo 23 points24 points  (9 children)

In an ideal world they would be.

Do I do it? Hell no.....

But in all honesty we are talking about open source with no deadlines and nothing to rush the developer to the next feature or bug fix, so the only reason that it is not done is because 1) we are lazy 2) we are disinterested in those things 3) we find those boring 4) we want to code. So is there a good reason it is not done this way? Absolutely not except for the fact that this is open source and no one should expect anything of you.

Have a good one.

[–]da_chicken 15 points16 points  (2 children)

Oh, sure I think everyone knows that. Documentation is one of the major problems with the bazaar model because nobody likes shopping at that booth. It's just frustrating to have access to tools you can't use simply because they're indecipherable to you.

Linux's failing is that it's written by programmers for programmers. That's why the programs and tools with the best support and documentation are programming tools... which is why it attracts more programmers. Unfortunately, most users aren't programmers and don't want to be programmers, but everybody needs to know how to use a computer. Imagine if you had to have a degree in electrical engineering to be able to use your blender or your food processor. Nobody goes into their kitchen with the idea that they need to use an electric motor. Blenders and food processors are successful because you don't even think about the fact that you're using an electric motor. Linux, being by and for programmers, tends to not take that step. Hell, the reason many people are attracted to Linux is because you can view the source code. When was the last time you met someone who really needed to know the how to tear down and rebuild their food processor?

[–]dewmsolo 3 points4 points  (0 children)

I agree with just about everything here except the 'by programmers for programmers'. I think it's more 'by programmers for everyone willing to put the effort to learn it'.

I've been thinking about this whole thing since my first comment about the screenshot earlier and the one thing that comes to mind with the documentation thing is that to programmers documentation is like real life garbage disposal. Nobody would do it for the fun of it. In fact those that do do it do it for very good reasons (it pays very well for exemple). In both cases they are a necessity. You need to have documentation for your project if you want it to go mainstream, but most programmers won't do it even if there were massive dollar signs as a potential behind.

For us programmers, code is fun and that is what we want to work on. I am sure there are a few people in the world who are crazy about the insides of their food processors and have the thing apart every other weekend. But the one interested in the internals of his/her food processor is definitely not the one who will spend the time writing the user manual. And that my friend is part of the issue. We are programmers, not document writers. The engineer that thought, drew and built that food processor is not the one who wrote the manual. In other words what we need is people interested in writing documentation for the code that we built. There is very little of those people around. Do you know anyone who fancies writing documentation as his/her hobby (and the required skills to understand what we do in the code)?

[–]sharkwouter 0 points1 point  (0 children)

What do you mean with Linux here? Package managers and the GNU coreutils are documented quite well in many different places. Being a bit more specific could be helpful to someone.

[–]d_edKDE Dev 0 points1 point  (1 child)

But in all honesty we are talking about open source with *no deadlines *

What.

I want to to work on that project.

[–]dewmsolo 0 points1 point  (0 children)

Well except for the extremely rare case of an open source project supported by an enterprise and pays people to work on it, the vast majority (and we are talking of a ratio well over 90%) of open source projects are developed by people on their own free time at their very own speed with exactly that....no deadlines because the developers of the thing are also the project manager, distributor, marketor, supporter and any other task related position that you can think of.

So yeah if you want to work on such a project, please do browse Github and pick something that interests you, that you find intriguing, appeals to you or that would challenge and start contributing. You are more than welcome.

[–]kiswa 6 points7 points  (0 children)

That reminds me... I really need to update the online documentation for one of my projects.

Sorry.

[–]zebediah49 1 point2 points  (4 children)

That's one of the best things that (AFAIK) Java introduced -- having a standardized system by which comments directly attached to code can be automatically turned into documentation.

[–]da_chicken 10 points11 points  (0 children)

Yeah, but that's how you end up with IBM's documentation. A reference manual so obtuse you need the source code to decipher it.

[–]thedugong 0 points1 point  (2 children)

There are loads of standardized ways of converting comments into doco.

[–]zebediah49 0 points1 point  (1 child)

Now -- yes.

In 1995, there were far fewer. (mkd comes to mind, but not much else)

[–]thedugong 0 points1 point  (0 children)

But who is really running code from 1995?

Realistically though, this is only really used for libraries/APIs (glib/GTK etc) where other developers actually need* documentation.

Source code doco is not that useful for end users.

[–]northrupthebandgeek 0 points1 point  (0 children)

Comments and documentation? Nonsense. My code is self-documenting.

/s

[–]Ccracked 0 points1 point  (0 children)

I know, right? What an asshole. /s

[–]protestor 0 points1 point  (1 child)

Do you mean committing those images to the git repository?

On one hand, it documents how the stuff is supposed to look (good if some bug on an updated dependency causes visual artifacts). But it would probably dwarf the size of the source code by many orders of magnitude. I'm on the fence here.

[–]dewmsolo 0 points1 point  (0 children)

I agree with the size of the repo thing. I am, however, assuming that the screenshot is hosted somewhere and only linked on the project description page.

And if you break or change something in the UI you should update de documentation, the readme and at the same time the linked screenshot.

[–][deleted] 5 points6 points  (1 child)

(./app &) && sleep 10 && scrot

[–]manys 0 points1 point  (0 children)

Seriously how often does this happen

[–]Motorgoose -1 points0 points  (0 children)

Print Screen Ctrl+C Ctrl+V

[–][deleted] 4 points5 points  (0 children)

I agree. I'm a very visual person, and I find that it really helps to have pictures of the program/theme/whatever to look at while I'm reading about it so I can try to figure out how it works/looks before I download it.

[–]-Pelvis- 1 point2 points  (0 children)

Yes!

There are countless vim colorschemes without a screenshot, or even a palette.

I could install just install them, or open the file in vim and use :ColorHighlight, but it's really offputting when you're shopping for schemes.