

Github is making me feel stupid(er) - bos
http://www.serpentine.com/blog/2012/04/08/github-is-making-me-feel-stupider/

======
apinstein
I totally agree. We use GitHub a ton, but every time I load the first page
when trying to do something, my eyes dart across the screen, then a feeling of
over-stimulation and weariness sets in. I take a deep breath, relax, and then
try to deconstruct their interface so I can figure out what to click next. It
definitely taxes the mind to use GitHub on a daily basis.

I understand it's a tough problem domain, but there is definitely room for
massive improvement in the UX.

~~~
bcjordan
I've started using the address bar to get to most things. I usually only need
to get to /issues, /commits, /tree/master/filename

~~~
maaku
Github devs: this is a sign that pretty though it may be, something is wrong.

~~~
cpach
I agree that this should spur the Github developers to re-consider their
current design, but I see nothing wrong with the general concept of using
URL:s for navigating, just as I prefer the Unix shell over GUI:s for many
tasks.

Jakob Nielsen wrote about that over ten years ago:
<http://www.useit.com/alertbox/990321.html> \- I think the gist of his article
still holds true.

------
Groxx
Now I'm wondering if I'm alone in saying that this _completely_ goes against
my experience with Github.

The layout at the top of the page is roughly hierarchical with a header for
your account (which is standard). You have (edit: my numbers do not match the
ones in the article):

    
    
      1. where you are (project)
      2. what you want to see (code, issues, etc) (within that project)
      3. branches, commits, etc (associated with the code in the project)
      4. latest commit (to the code in the branch in the project)
      5. code
    

There's a clear progression from "project" to "code", with only minor hiccups
along the way (the description has to do with the whole project, but then it's
pointless to have it at the top of _every_ page, so it's beneath a single
tab). And the latest commit seems arbitrary, IMO - it doesn't convey much
useful information, aside from the 'freshness' of the project.

On the issues page, the 'new' button is next to the search field _because they
want you to search first_. If you look for a search bar (standard in the top-
right corner), because you should be doing so anyway rather than duplicating
reports, you would find the new issue button immediately. This is relatively
standard UI for a publicly-accessible bug-report-like system.

There are rough parts of Github's UI, definitely. After seeing a mention that
it was hard to find how to change to an organization, I tried - very strange
and non-obvious that it's only on the root page (that I've seen). And the
different layouts between the main tabs for a project could be a lot more
consistent. And commits could use a --graph display.

But the main project page? I've always found that to be the single _least_
confusing part of the entire site, and the most immediately-useful. I've used
nearly every control on the page multiple times, and hiding them behind more
layers of access would only impede normal use of the site.

~~~
knewter
> it doesn't convey much useful information, aside from the 'freshness' of the
> project.

But that's one of the most useful bits of information imo. When I'm reviewing
projects to see which I will use, that is one of the two most important
determining factors (the other being tests, all other things being equal)

~~~
Groxx
There is that, yeah. But that's a lot of screen real-estate for viewing the
last-updated-at date for a project, and it's in a different color than other
things on the page so it draws your eye. Probably intentionally for this
reason.

Do you mostly value the commit's _date_ , or any of the other information in
that block? I've only ever cared about the date, personally.

------
zalew
That's another thing where BitBucket got it right and clean.

One thing both services suck at is the dashboard full of irrelevant noise.

~~~
msbarnett
> That's another thing where BitBucket got it right and clean.

I'm kind of surprised that some people feel this way. GitHub has some
confusing UI papercuts, but every time I find myself on a BitBucket project
page I spend several second in total bafflement while my mind tries to parse
their UI.

Something about the way various parts of the BitBucket UI are insufficiently
distinguished makes it hard for me to tell where one part ends and another
part begins.

I'm not a heavy user and I'd probably acclimate with enough exposure, but I've
always thought BitBucket's general fit-and-finish has suffered in comparison
to GitHub.

~~~
gbog
From my sparse usage of both I'd say that where bitbucket got it wrong is when
they try to copy github. I would love a code host with a fast but bare HTML
interface, no effects, plain links, code content on the pedestal.

~~~
zalew
google code?

~~~
msbarnett
It takes far too many clicks to get to the code or lists of commits.

Code is the last thing Google Code puts on a pedestal. It's barely a step
forward from Sourceforge.

------
tallowen
Though I agree that there are probably too many things going on in the
interface, I don't see many buttons where I immediately think "I never use
that".

Github seems to be in the tough situation of trying to reproduce a command
line interface and all its flexibility in one simple / easy to visualize
dashboard.

------
saurik
Once you actually get to the commit page it is nearly useless anyway... what I
really need out of a visualization is the moral equivalent of 'git log
--graph' (which is what many of the better commit visualizers support), not
just 'git log'. GitHub is interesting as they are one of these projects that
everyone likes to claim is awesome, but where not even a single component of
the site is "best of breed".

------
mybuddymichael
I agree. I feel that their project page has severely declined in usability
from a couple years ago. I wish they would hire a UX and/or IA expert to sort
that page out.

------
cmagahern
Personally, I've never found Github's interface to be overwhelming at all.
Sure they have a lot of content on every page, but I think it's well-designed
enough where I can easily find what I'm looking for very quickly. For example,
when I want to switch branches, looking for the drop down menu with the
branching icon is all I have to do and I usually find it right away.

------
nsomething
I spent a half an hour trying to figure out how to switch my dashboard to my
organization and find the button to create a new repository for the
organization. Who knew it was in the News Feed Tab. That needs to change.
Clear links for organization management gotta be there.

~~~
mutru
I also spent a lot of time trying to figure this out.

When you can finally find the New Repository link from the News Feed page, it
doesn't have an option for choosing the account for the repository. You need
to do that before going to the New Repository page...

------
googletron
If you are having problems like this I am working on getting a cli interface
with Github. Look at things like issues and commits.
<https://github.com/myusuf3/octogit>

~~~
dasil003
You are aware there is a quite mature CLI interface already available right?

<https://github.com/defunkt/github-gem>

------
pooriaazimi
The lack of a 'star/bookmark' button on projects is the single, most annoying
problem I have with Github... I hate 'watching' projects I really don't care
about, but am afraid I would forget in a few weeks...

------
egor83
I was a bit confused at first when I was just starting to use GitHub, but got
accustomed to it by now. Though making configurable menu or at least a
lightweight option would indeed be nice, that would help people get used to
the site.

Seth Godin had a good piece on UI and information density the other day:
[http://sethgodin.typepad.com/seths_blog/2012/03/information-...](http://sethgodin.typepad.com/seths_blog/2012/03/information-
density.html)

------
goblin89
I dunno, I find interface very convenient. It was horrible before (bitbucket
was actually better), but things are changing.

On the first project page, header part clearly contains “GitHub stuff”
(issues, stats, network), and next goes ”git stuff“ (files, commits,
branches). I can quickly clone or download the project. Issues page also
becomes better.

Can't speak for organizations functionality, but it looks OK for usual tasks
of most users.

------
EToS
I agree, i was thinking possibly two views could be used.. A repository front-
page with readmes, download and forking etc (possibly some social side) and
then break away a second page with more of a control panel feel for viewing
branch diagrams, commits, diffs etc

~~~
ianstormtaylor
This could be a really good solution. They could even play with bringing you
straight to the "Code" tab if you were the repo's owner/contributor.

------
secure
I agree, too. Maybe the less-often used features could rather go to the bottom
of the page?

~~~
attractivechaos
I agree. In particular I am not sure why "Clone in Mac" is put at an obvious
place. I never tried it until a minute ago. I would rather see a "Download"
button there. Perhaps only I have the minor complaint.

------
TeamAqua
Agreed.

I feel that there is too much stuff "above the fold" in newspaper parlance.
It's fine for main project pages, but for subsections, such as the project
wikis, I wish Github would move the content far higher on the page.

------
cantbecool
One thing that aggravates me to no end is when I option click the github logo
on the upper right hand corner to open an additional screen on a new tab, I
get greeted with a modal window of 'Looking for the github logo'.

------
senthilnayagam
Github search is not granular enough, full text search and sorting, search by
filename could make things easy

Search within a project would be a awesome option

~~~
joksnet
Just press <t> within a project.

~~~
smokey_the_bear
Wow! This solves my major complaint about GitHub. I wish I'd known that two
years ago.

------
g-garron
Maybe they can create an alternate dashboard, more minimalistic. There is
always room for improvement.

------
drivebyacct2
I couldn't agree more and I got mocked just this past Thursday for saying so.

The awkward treatment of organizations doesn't help either. I'm constantly
having to context switch, and it's even worse because I have an organization
with one project, so if I click the organization, I have an "Issues" button.
If I click it, I'm seeing issues for that one single project, but there is no
"New Issue" button because I'm at the org level instead of the project level.
:/

------
iamgilesbowkett
here's how I solve this problem. (ironically Chris Wanstrath, GitHub co-
founder, created the technology my solution uses, and apparently did it in
response to a random comment by GitHub engineer Ryan Tomayko.)

the tech is called dotjs. you can check it out at <http://defunkt.io/dotjs>.
if you use Chrome as your web browser, it runs arbitrary JavaScript you define
for any domain in your ~/.js directory.

my ~/.js/github.com.js looks like this:

$("div.news").hide();

you can check the full file for a couple other hacks:
[https://github.com/gilesbowkett/dotjsfiles/blob/master/githu...](https://github.com/gilesbowkett/dotjsfiles/blob/master/github.com.js)

but that's the gist of it (no pun intended).

I also created a Minimal GitHub Dashboard mini-app, built in Node against the
GitHub API, but when they changed the API, I didn't bother to update it. I
think it was really cool though so I'll link it up anyway. it just pulled a
list of your public repos and put links to them in a very readable, very
minimal UI.

[http://gilesbowkett.blogspot.com/2010/10/node-miniapp-
minima...](http://gilesbowkett.blogspot.com/2010/10/node-miniapp-minimal-
github-dashboard.html)

~~~
fingerprinter
Does anyone know why dotjs would be OSX only? Would love to use this in Ubuntu
as well.

~~~
badboy
It's not. It's just a simple Ruby server script. Works just fine on *nix
machines.

------
Jebus
I still don't know why people use github instead of bitbucket.

