Repository Next
github.com
github.com
Not a huge one, but it was nicer to have my most frequent points of interaction at the top. I deal with the code itself in my local repo. I don't need to know how many commits/branches/tags/contributors there are -- that is the redundant info for me, and that should have been shoved to the side.
If I'm using github's UI, it's because I'm managing a project. Might be nice to have a separate "management" interface you can opt into?
tldr: They moved all the "extra" stuff to the side, while keeping the info directly related to the git repo in the center. But the whole point of using github is the value they add, not the core functionality that I can already get through my commandline!
I think the sidebars are a step back for me. I preferred some useful content at the top, now having it on a sidebar just moves that content to the right side, away from my focus.
One positive thing about the change is that "network" and "graphs" are now not co-mingled with main workflow items like Issues and Pull Requests.
Because of that I've been maintaining my personal fix for this: https://github.com/danielribeiro/github-diff-highlight
It would definitely be nice to see it supported natively by GitHub.
The highlihght is pretty much constrained to diff (on pull requests, commits and compares[1]), but it could work on any page. I've mentioned[2] how I used jquery-syntaxhighlighter to do it, which itself is a fork of Google's Prettify in order to do the heavy lifting of syntax discovery and actual highlight.
[1] https://github.com/danielribeiro/github-diff-highlight/blob/...
[2] https://github.com/danielribeiro/github-diff-highlight#hacki...
Instead of trying to highlight the diff directly.
This is the same problem I had with a Gmail redesign a while back. Using icons looks nice and allows for slimmer navigation but it decreases ease of use for me. I can find things much quicker with text labels.
I've even turned on whatever Gmail lab puts the words back into the buttons.
That said, Github looks to be mitigating this issue by having full text on the root screen for the repo. Compare the sidebar here: https://f.cloud.github.com/assets/1354/660756/cc8cad9c-d714-... and here: https://f.cloud.github.com/assets/1354/660769/fe4a1a0e-d714-...
Maybe that will train my brain with positional data a little better than Gmail managed to.
Oh, that's a great point. It pretty much solves my main concerns.
When I first started using github it was straightforward as I only had to learn what the words meant (i.e 'fork', pull-request, etc). Now a new user is supposed to learn those concepts and their associated symbols. The cognitive overhead just increased.
It was pretty common during the 90s when screen resolutions were really low and preserving space was a big deal. We're seeing it again now because of mobile friendly responsive designs dealing with the same issue.
Unfortunately, while I bet almost all designers would recognize that mystery meat is bad in the classic 90's context of using it on a homepage, its become acceptable with these sorts of interior toolbars.
So while github is not using it on the project homepage - probably because they recognize it would be MM and be awful - they are using it deeper down.
What would you recommend they did here?
You shouldn't have to click on icons to find out what they do. There isn't even alt text.
They should have set with devs in a room and asked them - "What do these mean to you?"
UPDATE: hover seems to work now to figure out what the button does. Not sure if this was just my browser or they literally fixed it in the past hour.
Home
Alerts
Merging
Documentation
Interactive Heartbeat Sensor, presumably using my webcam, to notify authorities when I'm having a heart attack
Graphs
Branching
Settings
How close was I?
By the way, alt text is absolutely essential for screen readers to function. Don't exclude the blind if they have reason to use your site! Blind people definitely use Github.
The icons for pull requests and branches are far too similar to each other, in my opinion.
<> - code ! - warning / danger |7 - merge a fork (or accept a pull) E]E] - I think that might be a dictionary. Look something up? _|^\_ - Heartbeat to let you know how active a project is. |+. - Charts to see activity. 4 - Fork >< - settings. Funny that it's a wrench and screw driver. Although I guess a keyboard and mouse would be a little less telling.
These seem bad because you can't get information about them before you interact. The icons are small, and kind of hard to make out (I had to turn my screen brightness up to see what was going on with that book one). But, once you get a little bit of experience with them (click them once), you'll have that icon (or just the order) ingrained in your brain. It sucks for people who aren't technical, or who are thrown into Github, but it's not bad for experienced users.
That is until next week when they decide they got the ordering wrong, and some of the icons wrong, and randomly swap and replace icons.
This kind of reminds me of the very challenging 'Is this thing I made hard to use for people who don't know what's going on?' It's a very hard problem - you, the creator, are designing and fabricating something that you want other people to use. You think you found a good way there, and you obviously found the best way because that's the way that you're going to build it. The path was obvious, we went from A to B to C back to B then to D, detoured to S for a while, didn't like the color sceheme, went back to D, then decided B was the best one. You have a lot of experience with alternate configurations, and have innate knowledge of how they work on the inside. Someone who comes up and uses D without any primer might be a little confused. Why do the colors matter here? Well, it's obvious, we went from A-B-C-B-D, it's a natural design evolution, ARE YOU TOO STUPID TO SEE IT!?!? You won't be one of my users... It's hard to distance yourself from what you're working on to see the flaws in your own design. It's very hard. It's easy to assume the knowledge you have, or the knowledge you as an organization have, will be present outside your group a priori. You don't know what they don't know, but you know what you know.
Regardless of whether or not you like the changes, Github has probably been following this 'design evolution' for a while, and they like where they're at, and assume you're smart enough to know beforehand what the icons do. Or, at the very least, smart enough to associate an icon with a topic related to git.
Finding the right balance between casual consumers of github and developers who live in it all day must be challenging, though.
EDIT: I didn't realize that the front page for a given repo shows text in the sidebar. Good on them, I like that compromise.
I believe studies have repeatedly shown that users can find things with icons faster than text labels. Icons are less discoverable than text, but once you know what you're looking for, icons are faster.
Then I thought how awesome GitHub was and it really understood users. It always had the big repo url on front and top where one can never miss it.
In this new design, GitHub has pushed it on to bottom right and reduced the input size. Bad Decision IMHO.
Github needs to start fixing things rather than constantly making them worse. Whoever is in charge of their UX-design needs to be replaced.
Now, Github's pushing it even further out of view than Bitbucket's location.
Statement of opinion: It seems to me that Github is the leader of online code hosting. However, this position could be disrupted because, and I could be wrong, Github focuses on items not directly related to git and/or code.
I dream of a time when the average person making manuals or Stand Operating Procedures in an office environment can see the benefits of source control and has tools that make git easy.
The company that truly focuses on making Git itself dead simple and powerful will win. I pay github every month, but I am starting to lose my patience. I am actively looking to support a company that focuses on abstracting the completely unforgiving nature of git.
In my opinion, you shouldn't need to be a command line virtuoso nor need to grok the entirety of the git code base to use git. Eventually, everyone gets dirty with git and thats when the lack thought in usability exposes itself. Github could focus on this, but it seems like they have other priorities which is fine. I have mine too.
Github for Windows is also disappointingly lacking in functionality that is necessary in my workgroup. For example, it does not support Git submodules or two-origin configurations. When I work in repositories we have configured in that fashion, the command line is my option of choice. And let me be frank: there are scarcely any tools I use that have a worse user interface than the Git command line tool.
I agree with the grandparent that there remains a market under-served: to provide a decent user interface on top of Git. Github for Windows is amazing for a free tool and I give the development team a great deal of respect for what they have provided users like myself (people who want their source control and build tools to just do their job simply and get the heck out of the way). But there is a lot of room for improvement. I for one would pay good money for a Github for Windows "Professional" version.
Atlassian also has a good, friendly set of tutorials for using Git.[2] The order in which they introduce the concepts and the commands encourages a clear understanding of the whole system.
[1]http://www.sourcetreeapp.com/ [2]http://www.atlassian.com/git/tutorial
Now, try to explain to your Chief or supervisor about how awesome Git is.. that is easy and I've done it. Then comes the part where you explain how to use it; The problem is the interface on both the CLI and GUI require a TON of "other" domain knowledge to use effectively. Abstract all that away at the same price point of Github and you will win a HUGE market.
We don't have IT budget to pay anyone to do this... nor buy the extremely expensive solutions that already exist. So we rely on email and ad hoc training to make sure everyone can stay abreast. Now, how many businesses not related to software development could benefit from Git or a similar DVCS?
I'd be really interested in hearing more about the problems you face, personally and within the firestation. If you'd like you can email me at my username [at] gmail.
Have you all tried using some of the features built in to the editors like revision tracking or history a la google docs?
I know I'm starting to go apples to oranges here- but just tossing that out since those features are sometimes overlooked or forgotten about.
Their suggested course of action is to fork on github and then clone to your local filesystem. You then push changes to your fork on github, and open a pull request from within their system.
The default workflow is designed to play nice with their issue tracker/etc.
Before I clicked "Enable Repository Next" there was also a "Git Read-Only" option.
The "other methods" text points to https://help.github.com/articles/which-remote-url-should-i-u... which lists HTTPS read-only & read-write and SSH read/write. Last time I looked that page also listed Git read-only (with the description "All git:// URLs are anonymous, public and read-only. Private repositories do not have this URL type. // Use these URLs when cloning someone else's repository (where you don't have write access) and for submodules that point at public repositories.").
There was no explanation in the "Repository Next" blog posting that git:// URLs were being disappeared...
- Current/Old https://github.com/etsy/skyline
- New/Redsigned https://f.cloud.github.com/assets/1354/660756/cc8cad9c-d714-...
EDIT: typo
Am I the only one wishing the readme was above the file list? In my case, I often read the readme and rarely look at the files, and as a landing page standpoint it seems logical that the readme would be front facing instead of hidden at the bottom. I'm curious what's the reasoning behind that order, since it's been that way forever and GitHub seems to be fairly dedicated to elegant and thoughtful design while being open to change, I imagine there must be a good explanation.
edit: It's for pull requests. When you enable the new design, you get a quick explanation of the green button and where the clone URL has moved to. So far I'm really liking the new design!
I don't mind the navigation being on the right, but the clone url doesn't appear on most repositories which is one of the most important elements of the repo.
It's especially scary because there's no rollback. At least I still have gnome desktop, for now...
You can host a copy of your repo on github, another on, say, bitbucket, and another on gitorious, and as long as you take care of syncing between them, you should be alright, right?
I just get this queasy feeling that this might be one of those over-thought reworkings, where they do everything they thought they would do years ago before the site took off. Sometimes that works, but usually it's a disaster. Incremental changes, with lots of feedback from real users, seems to be the better way for a site with a solid core of happy users to evolve.
Though--and I hate to sound ungrateful--Github has always seemed slow and unfortunately this new design doesn't help as much as I hoped it would when I read about it. I acknowledge that the new design is quicker, and removing the animation makes the wait for a response considerably less annoying, but Github remains a slow site to navigate. Put as positively as I can: thank you for working on performance, and please continue to do so.
I have to use an external review tool like Reitveld to get side-by-side diffs and better comment and patch-set management.
There is two click quick demo link in the toolbar.
Sorry to be negative. I appreciate work to improve things, some of these changes just aren't. Hope they keep working on it.
It's unnecessary noise and what would be far more useful is how many files and folders that folder actually contained.
To be honest I don't really see the point of putting the comments next to the file name either.
Also, I wish for the love of god that they put the file size there.
Then again my primary use case of github is reading code to learn and having a nosey at how good a coder someone is, so I'm generally looking for the bulk of a program, hence the usefulness of file size and the uselessness of commit comments.
Why do you really care about the file size and amount of files btw?
So often you're looking for the files which contain the majority of the code and you're just having to open random files trying to find it. How big the file is shows roughly how many LOC it contains.
This is actually becoming more common in javascript as well as more people unbundle their code, it'd be useful seeing if the file you're about to open is meat or chaff.
I'm fine with showing the last commit time, that is useful information, the comment itself though is invariably noise to everyone but the committer or team.
Or rather, it's the commit message from the most recent commit in that directory (it's not so much about files at all).
I find it quite useful, to see if there have been any recent changes in that directory (and specifically when and what) or if it hasn't been changed in years.
If you find the number of days since last change useful... why wouldn't you also find it useful to know what was changed in that last change? That's what the commit message tells you, right?
(and the commit message is also the place you click on in the github ui to see the full commit with diff etc)
I'm looking forward to digging more into the redesign in my usage of it today. Glad to see GitHub continuing to improve and happy to re-think the current state of the app.
Steve Jobs' "stay hungry. stay foolish" applies perfectly to GitHub's attitude.
Keep up the great work!
And really... do we need to make everything about something Jobs said? The only part I'd agree with here is that "foolish" might apply if they drop the ball by making the UI less usable/intuitive, in which case "stay foolish" is horrible advice and will negatively effect a whole lot of users.
I just think that the alignment of the right vertical icon bar is a bit off, I think it'd be better off-canvas.
The emphasis on speed is great. I hope they'll improve keyboard navigation with this release as well.
I wish they'd make a responsive design that would make use of my 24" monitor. Right now I've resorted to writing a Chrome plugin to widen the code viewing area via CSS.
Doesn't look like it[1].
I'm not sure that a much wider github would be of use to me. Most projects usually place some kind of limitation on the number of characters per line and even in the file browser I don't find filenames long enough to take that kind of space. Maybe you have some other use cases worth sharing?
[1] https://f.cloud.github.com/assets/1354/660780/2e217312-d715-...
I can't tell you how many times I have had a github tab open and then popped open another and my layout has slightly changed (like shrinking a font or changing colors). They don't stop with UI tweaks until they think things are perfect.
Expect this to continue to evolve even without another major release from them.
1.) You cannot make a PR from the main repo page anymore, you must go to a branch.
2.) The number of commits is emphasized over the number of pull requests, WTF? This one just blows me away.
3.) The whole PR process itself is largely more complicated and requires many more clicks (e.g. trying to swich repos is a bitch, and you have to click just to see the drop down, which then disappears after you select one).
4.) The right hand navigation bar is more or less worthless and too small.
5.) Moving the link to clone/co to the bottom right of the page is silly and totally makes it harder to find/use. I still don't see how this can be less important than the number of commits...
I still love github, it looks nice, it's just totally unusable. Feels like an April Fool's day joke come early with bad taste.
1. For people visiting their own repositories, the viewing the code itself has little to no value. They more than likely already have it open in their editor / IDE in another window. These folks probably want the issues, PRs and other accompanying features. Collaboration is now the key - not the code itself.
2. For other people (non-committers) looking at a repo, this is different. When I visit other codebases I do actually look at the code to check certain things - what style it is, what frameworks have been used, how complicated the code is, if tests are present etc. Then I check to see what kind of (any how many) issues have been raised.
It might actually make sense to show a different view depending on whether you have commit permissions to the repo or not.
Photoshop: http://i.imgur.com/MR9nzmH.png
Based on the negative comments below, just updating the top navigation (solely) seems like it would have appeased everyone.
I feel like it takes me a minute to figure out what page I'm on now though, due to less navigational context. Perhaps something like this would help:
[disclaimer: Tixef is my project so I may be a bit over the top about it]
I'd be more interested in keeping my hosting on GitHub but using more sophisticated code review/workflow tools than they offer.
Have you considered targeting this use case? Their API is robust and includes sufficient access controls. I'm surprised no one is doing this yet.
However Git being the beautiful distributed system as it is, you don't have to move your hosting. In fact you can push to multiple Git remotes, or use one for backup, or just for reviews.
You can also push to multiple remotes at the same time by adding two urls for the origin. So if you like the idea of your source files residing on a particular provider then you can keep it there as well.
Heroku works in a similar way, you may store your repo elsewhere but deploys happen when you push to their remote.
The true API here is Git itself not some silly and constantly changing REST protocol over something as stable the Git Object Model.
so in short: no. :)
(FYI, their API provides access to all the git objects and would also allow you to add additional keys so you could clone it.)
A layout that provides less space than your average text editor or IDE will lead to unnecessary line breaks.
But thank goodness, that is gone!
Now, if they could solve that nasty problem wherein the issues list seems to revert to an earlier revision when you use the browser button I would be a happy camper.
Since time is a small field, before I was able to read
file__time_comment__________ without any problem
now I see
file__comment________________time
I'm disoriented :(
That said, it doesn't look like they did that here...