9 ms·
GitHub Says ‘No Thanks’ to Bots — Even if They’re Nice
- tocomment 14y agoI personally would use gists a lot more if they were indexed by google. As it is I feel like I'm putting code down a black hole when I create a gist.
- jQueryIsAwesome 14y agoGood idea; but maybe only the ones with a title and description; to index the ones that have a clear purpose and not some random code without any idea how to use it or what is for.
- lukeholder 14y agoI do think bots can be a great part of software development. I love the likes of travisci and codeclimate integrating with GitHub - GitHub just need to build a better app to deal with them. I assume private repos don't have bots bothering them, but maybe they want to allow some? Checkboxes for types of bot services you would like to allow per project?
- technoweenie 14y agoWe have GitHub Services: https://github.com/github/github-services https://github.com/github/github-services. Anyone can submit one. We'll probably accept it as long as the code is decent, is tested and documented, and is for a stable service. If you're running some custom build on a personal hosting account, use the web hooks. You can attach web hooks or services to any of these events: http://developer.github.com/v3/activity/events/types/ http://developer.github.com/v3/activity/events/types/
- philfreo 14y agoA bot which does lossless compression on images in open source projects and only submits a pull request (with all the relevant details) if there was a > X percent filesize savings? That's not spam, that's just helpful...
- rossy 14y agoAs article says, I wouldn't want hundreds of them. Imagine uploading a simple website, only to have your issue tracker harassed by JSLint bots, HTML validators and pull requests correcting your indentation, replacing <b>s with <em>s etc.
- Strilanc 14y agoHonestly? That sounds amazing (as long as there's a way to manage the noise).
- rossy 14y agoI'd much rather use those tools at my own discretion than have them clutter an area of the site where I expect to see feedback from my human users. It would also make GitHub a much more intimidating place to submit code. I don't want those things for my smaller projects.
- jevinskie 14y agoSo some sort of "plugin" interface where you can opt in to certain bots on a per-repo basis? I could really get behind that! 100% automated and unsolicited? No thank you!
- technoweenie 14y agoHey, check the Service Hooks tab of your Repository Settings.
- justincormack 14y agoIt would be really helpful if each had a short summary when you hover over them as its an awful lot of names which don't mean much. I came across Travis from elsewhere but never would have guessed it was CI from this list.
- 14y ago
- StavrosK 14y ago> But here was a pull request from a GitBot. Bots don’t debate. “It’s like the first time you see a self-driving car on the road,” Michaels-Ober says. Good thing he likened it to something we can all relate to.
- badgar 14y agoI've been annoyed by GitHub bots and enjoyed their contributions. IMO, GitHub could/should have taken this opportunity to solve a problem and (once again!) change how people code for the better through collaboration. Perhaps now that they've taken money, they aren't as interested in tackling new problems. Perhaps that's reasonable, since they'll need a lot of that money to hire and keep operations folks who can keep the site up.
- technoweenie 14y agoWe got a lot of angry feedback about the whitespace bot that was roaming GitHub for a while. We tried to sit back and let people deal with it themselves (e.g. send feedback/patches to the bot owner). We're not opposed to bots or services. We encourage it, and use one ourselves. The key is making it opt-in so it doesn't bother people that don't want it. Travis CI is a popular addon, but they don't have a bot that runs tests and tries to get you to setup their service. They just focus on providing a bad ass service that you _want_ to setup. Edit: You 'opt' in to a bot one of two ways: 1. You add their GitHub Service to your repository (see the Service Hooks tab of your Repository Settings). This is how Travis CI started out. 2. You setup an OAuth token with the service. Travis does this now, and provides a single button to enable CI builds for one of my repositories.
- 3pt14159 14y agoHow do I opt in? I'm curious to see what will come up.
- hughlomas 14y agoAs some have pointed out many of the requests they provide are quite helpful and it could be useful to have an interface to browse a selection of optimizations that have been offered up by bots. What about splitting them off into a separate interaction lane to eliminate the noise they create elsewhere? A "Bot pull requests" tab. Make it passive, so it does not trigger notifications, emails or other active communication, but is available and streamlined.
- deleted 14y ago[deleted]
- Ragnis 14y agoSo I would have to add another file to my repository that has nothing to do with my repository's content? Thanks, but no, I think we have enough of those already.
- bhickey 14y agoThe whitespace bot was written by someone I know. He's an incorrigible troll and did not do it to be helpful.
- lazyjones 14y agoI wouldn't mind bots that fix spelling mistakes in comments or even actual bugs in code. But why not let github projects be configured to allow certain kinds of bots?
- jevinskie 14y agoConsider bots as "plugins" that you activate on a per-repo basis. I like this idea!
- masklinn 14y agoIsn't that exactly what Service Hooks or OAuth-authed systems provide?
- uxp 14y agoI think that's what jevinskie was implying, as in this is a non issue since service hooks are already established so there is no reason bots should be allowed, they should plug into the correct API.
- masklinn 14y ago> I think that's what jevinskie was implying I'm not sure he'd have written that he "likes the idea" and would have failed to mention Service Hooks if he did.
- uxp 14y agoI read his comment as either sarcasm or passive aggressiveness. "Wouldn't it be a great idea if there was a 'hook' mechanism you could opt into that provides a way to add additional functionality to their site from third parties?" Or maybe not. I don't know, text doesn't convey emotion and body language.
- briandoll 14y agoI'm quoted in the article and I wanted to clear one thing up that was missing from it. When bots get reported to us by people using GitHub our support folks reach out to the bot account owner and encourage them to build a GitHub service[1] instead. As a service, the same functionality would still be available to everyone using GitHub, but it would be opt-in instead. A few months ago we heard from some developers of service integrations that beyond the existing API features, it would be handy to be able to provide a form of "status" for commits. We added the commit status API [2] in September to accommodate that. We're always open to feedback on how the API and service integrations can improve. The point is, GitHub services are a much better way to build integrations on GitHub. [1] https://github.com/github/github-services https://github.com/github/github-services [2] https://github.com/blog/1227-commit-status-api https://github.com/blog/1227-commit-status-api
- sillysaurus 14y agoWell, devs are always going to create bots. They're a fact of life. Why not establish an opt-out convention similar to robots.txt? The idea is that people who want to opt-out would create a ".robots" file in their repo, with "none" in it. Any bot that doesn't respect the .robots file is hellbanned. The problem with opt-in is that people won't use it unless they (a) know it's available, (b) know how to get it, and (c) actually go get it. So people don't really do that. But establishing an opt-out convention like this solves the problem entirely, and it's simple.
- deleted 14y ago[deleted]
- atsaloli 14y agoI'd like to optimise my images. (The images on my website.) I looked at https://github.com/imageoptimiser https://github.com/imageoptimiser but didn't see which tool would do that, or any way to contact the author. Is there an image optimisation tool in there somewhere?
- nwh 14y agoIf you're on a Mac, ImageOptim is the perfect tool that combines a bunch of open projects to crush down images. I use it daily, it's an incredible (free) tool. http://imageoptim.com/ http://imageoptim.com/ If you're not on a Mac, the individual tools are still quite usable. Here's some of them. http://advsys.net/ken/utils.htm http://advsys.net/ken/utils.htm (pngOUT) http://optipng.sourceforge.net/ http://optipng.sourceforge.net/ http://pmt.sourceforge.net/pngcrush/ http://pmt.sourceforge.net/pngcrush/ https://github.com/kud/jpegrescan https://github.com/kud/jpegrescan http://freecode.com/projects/jpegoptim http://freecode.com/projects/jpegoptim http://www.lcdf.org/gifsicle/ http://www.lcdf.org/gifsicle/
- skattyadz 14y agoI'm the guy who made the bot. I'm looking at relaunching this in a way that GitHub are happy with so that you can at least request an optimisation on your repos. In the meantime, check out http://imageoptim.com/ http://imageoptim.com/
- toobulkeh 14y agoSounds like a debate between opt-in and opt-out. Why not both? Do an AB test of a Bot vs. a Service. In some cases, opt-in is good (see: organ donors), in other cases it's bad (see: Internet Explorer). What if there was a community-vote that turned a bot and a particular version of said bot from Opt-Out (app style) to Opt-In (bot style)? I, for one, welcome our bot-coding overlords that clean up my code and optimize it on each commit. Might save me a lot of time and a lot of power and thought... if it's peer reviewed, like all open source software.
- malandrew 14y agoRight now they can be an annoyance, but this is something that could easily become a great feature of github, the same way that @tweets and #hashtags innovations came from the twitter community. I would love for github to make bots something that you can subscribe to on a "bot subscription page". I think they can be incredibly useful so long as they aren't promiscuous, unwelcome and frequent enough to be seen as spam. You should be able to handle these the same way you handle permissions for third-party apps on Facebook or Twitter. The subscription page could also provide bot ratings and suggest bots that are likely to be useful for your project. This approach would also create a way where these apps could be useful for private repos as well.
- avivo 14y agoGit bots may not be that impressive right now. But imagine a future where an incredibly knowledgeable "programmer" is working with you on every project, doing lots of the busy work, and even code reviewing every commit you push. Except that programmer is a bot. This future is possible - but we need to encourage it, and not shut down the precursor at the first "sign of life". If someone has a good track record of useful pull requests, would you mind if they contributed to your project? Would you care if it was really easy for them to write that helpful code because they've crafted the ultimate development environment that practically writes the code for them? So why do you care if the editor actually writes all the code for them? That's essentially what's happening when someone writes a bot and it makes a pull request. Sure, it sucks if there are unhelpful bots or people spamming up a storm of pull requests. But the solution to this problem is not to ban all bots or all people - it's to develop a system that filters the helpful "entities" from the unhelpful ones. This might be hard in some fields like politics and education, but in software development this is tractable, right now. I sincerely hope that this is what actually happens. This is one of the first steps towards a world where common vulnerabilities are a thing of the past because whenever one is committed, it is noticed and fixed by the "army of robots". When an API is deprecated, projects can be automatically transitioned to the new version by a helpful bot. Where slow code can be automatically analyzed and replaced. There are details to be figured out, an ecosystem to be constructed, perhaps more granular rating systems to be made for code producing entities (human or bot). Because it's "easier" for a bot to send a pull request, the standard of helpfulness could perhaps be higher. Communication channels need to be built between coding entities, and spam detection will become more important. But simple blocking and a cumbersome opt-in system is not a good solution. This might be a stopgap until better systems are built, but it is not something we should be content with.
- nnq 14y agoYou need to clearly make the difference between: 1. real people (they can make regular pull requests) 2. bots advertising you a code/assets improvement service (this should never be in the form of pull requests you should see this as adds and you should have the opportunity to disable them and github could try to get some revenue by taxing the guys advertising through this) 3. smart "code bots" that could actually do what you say: maybe at first start by doing code reviews, then static code analysis, then even start refactoring your code or writing new code, who knows... but you would have these in a different tab, like "robots pull requests", at least until we have human level general AI :) ...for the same reason that you have different play/work-spaces for adults and children and animals (you don't want your son and your neighbors' pets running around your office or bumping into you in the smoking lounge of a strip-club!). EDIT+: What the bot owner did in this case was to advertise without paying the guy on whose land he placed the billboard (and on whose land he himself stays without paying rent), except that it's much more intrusive than a regular billboard you can ignore!
- rsyncinside 14y agoI heard that Google is a "bot". Do they say "No Thanks" to themselves? Maybe the title should read: Google Says "No Thanks" to Other Bots
- caf 14y agoThe title has nothing to do with Google.
- calpaterson 14y agoIn case any github people are reading this: you also have an annoying approach to web crawling "robots". Your /robots.txt is based on a white-list of user agents with a human readable comment telling the robot where to request to be whitelisted. Using robots.txt to guide whitelisted robots (like Google and Bing) is against the spirit of the convention. This practice encourages robot authors to ignore the robots.txt and will eventually reduce the utility of the whole convention. Please stop doing this!
- sbierwagen 14y agoRobots.txt is a suicide note. http://www.archiveteam.org/index.php?title=Robots.txt http://www.archiveteam.org/index.php?title=Robots.txt My personal server returns a 410 to robots.txt requests.
- tomjen3 14y agoI have no clue as to why the author of that shit is as angry as he is, but I have zero interest in his opinion until such time as he learns to show me the issues, and not just blindly assume that anybody who is not as enlightened as him is a blind idiot.
- sbierwagen 14y agoOkay.
- orangethirty 14y agoQuestion to the Github team: Nuuton is currently crawling the web. The plans include crawling Github (actually, Github has a specific and exclisive crawler built for it). Is that permitted? If so, what are the rules? If not, to whom may I speak regarding it? I know DuckDuckGo does it, but I don't know if they are crawlin gyour site or just using what the Bing index currently has.