How rel=nofollow Works - <AUTHOR> http://luigimontanez.com/2012/how-rel-nofollow-works/ <comment><USER2> The article is a bit wrong. nofollow does not mean that the crawlers must not follow the link, but means that the ranking algorithms must not consider the link for the ranking as the link could be dubious or spam.

As such, the relationship between the page linked and the page linking is not to be affected by the link. And _this_ is what makes the links not surfacing.

Basically, the current Twitter HTML says: We have no outbound links.

<comment><USER3> Google has said that it won't add a URL to its index of URLs to crawl as a result of seeing the URL in a rel=nofollow href [1]. This is over and above not weighting the link if the URL does otherwise make it onto its to crawl list.

[1] [http://googleblog.blogspot.com/2007/02/robots-exclusion- prot...](http://googleblog.blogspot.com/2007/02/robots-exclusion- protocol.html)

<comment><USER4> The post you're linking is discussing the META tag version of nofollow, not the hyperlink rel attribute which is detailed here: [http://googleblog.blogspot.com/2005/01/preventing-comment- sp...](http://googleblog.blogspot.com/2005/01/preventing-comment-spam.html)

This article doesn't say explicitly that it won't follow those links and I would suggest it often will as comments _are_ a rich source of pages to index. The nofollow on a link like this just indicates that the page owner can't vouch for the quality of the linked page (e.g. user submitted link) and therefore doesn't want to pass pagerank to it.

Edit: it's also implied in the parent's link that the META tag only prevents the following of links to pages within _your_ site. This sounds reasonable as who are you to tell Google they can't index a third party domain?

<comment><USER5> "who are you to tell Google they can't index a third party domain?"

No tweets link to third-party domains, since Twitter wraps all links in their own URL shortener (t.co). Even if you use an independent URL shortener, it will be wrapped by t.co.

(I suppose you could argue that there is no way for Google to determine this algorithmically, since "twitter.com" != "t.co", so it should go ahead with the crawl, but there's the question of how Twitter would respond to that.)

<comment><USER6> They could create a robots.txt for t.co and set it to noindex.

</comment></comment></comment></comment></comment><comment><USER3> The cited Danny Sullivan article has a little of his interview with Eric Schmidt:

sullivan> I countered that Google seemed to have all the permission it needed, in that they're not blocked from crawling pages.

schmidt>"That's your opinion," Schmidt said, then joked: "If you could arrange a letter from Facebook and Twitter to us, that would be helpful."

sullivan> I pushed back that both have effectively given those letters since their robots.txt files — a method of blocking search engines — weren't telling Google to go away.

Well, why stop there? Why shouldn't Google ignore the robots.txt file in its search for shareable nuggets for its search results, which they are equally not "blocked" from using? The answer for both rel=nofollow and robots.txt is that Google has explicitly promised webmasters that it will not do this. Sullivan knows this: this is bad journalism. I'd be curious to see more of the transcript of the interview.

<comment><USER7> > The answer for both rel=nofollow and robots.txt is that Google has > explicitly promised webmasters that it will not do this.

No, not for a/@rel="nofollow", the only promise Google does is that it will not transfer pagerank credit to the link's destination[0].

This does not prevent them from using that link as an outbound in order to discover new content, nor does it prevent Google from reversing the link for the "Shared On" feature. Google _specifically advocates_ [0] using a/@rel=nofollow for user-generated links in order to prevent rewarding spammers, Twitter's use of the attribute is not just sensible, it's necessary.

niyazpk's comment[1] looks far more sensible: "Shared On" is a specific feature for content producers and part of a special agreement and API access.

[0] [http://googleblog.blogspot.com/2005/01/preventing-comment- sp...](http://googleblog.blogspot.com/2005/01/preventing-comment-spam.html)

[1] <http://news.ycombinator.com/item?id=3456233>

<comment><USER8> > the only promise Google does is that it will not transfer pagerank credit to > the link's destination

Google is fairly clear about this:

[http://support.google.com/webmasters/bin/answer.py?hl=en&...](http://support.google.com/webmasters/bin/answer.py?hl=en&answer=96569)

"How does Google handle nofollowed links?

In general, we don't follow them. This means that Google does not transfer PageRank or anchor text across these links. _Essentially, using nofollow causes us to drop the target links from our overall graph of the web._ However, the target pages may still appear in our index if other sites link to them without using nofollow, or if the URLs are submitted to Google in a Sitemap. Also, it's important to note that other search engines may handle nofollow in slightly different ways."

So, if your tweet includes a link, they drop that link from the post as far as their graph is concerned. And that graph is what makes up their search.

It's not _just_ page rank.

<comment><USER7> Interesting, so their implementation has broadly expanded upon the original meaning of the attribute (and the one standardized as a microformat), and in recommending this be broadly used to fight against spam they've paved the way for an interesting time for everybody else?

<comment><USER8> Broadly expanded? Standardized? Please.

I think the nofollow attributes intent was fairly straight forward from the beginning: to designate links that should not be accorded attention in search results. In 2005, this was merely via PageRank. Today, it's recommendations in search results.

Why would I want to see search results that shouldn't be given weight in a search result in a search result? Explain that to me.

</comment></comment></comment></comment></comment><comment><USER9> But, MG Siegler is correct, is he not, that google have chosen not to link to artists twitter pages alongside their G+ pages, and that this could easily been seen as anti-competitive.

e.g. [https://www.google.com/search?&q=music](https://www.google.com/search?&q=music)

<comment><AUTHOR> That's a new sidebar feature that goes where ads have traditionally gone. Google has decided to literally promote G+ over ads, which is a story in itself, but a totally different one.

It doesn't change the search results in the main column.

<comment><USER10> How is it a "totally different" story when the two changes are launched at the same time under the same name ("Search Plus Your World") and both underplay the dominant social networks?

They seem rather related parts of the same story.

You make a big deal about not "ascribing evil motives to Google" but I think it's pretty clear that Google is going all in on G+ and both aspects of Search+ that Danny Sullivan has taken issue with are directly related to this.

I don't care for the word "evil" because I think Google may be perfectly within their rights to do this but it's also very unlike how Google has historically operated. Inasmuch as that historical behavior personified "don't be evil", well it's hard to be shocked when people call this new, tough negotiating Google "evil".

</comment></comment></comment><comment><USER11> This guy completely misread MG Siegler. MG's point is rel=nofollow has nothing to do with the twitter profile pages that google is refusing to include in their people & places feature. Nothing to do with outbound links.

This enitre debate over rel=nofollow is a red herring.

</comment><comment><USER12> I'm amazed really by how much FUD has be4en spread around by Twitter, and most reports of the story. This article clears it up perfectly.

<comment><USER7> It does not, a/@rel=nofollow has nothing to do with it, the only thing Google says it will do with these is break searchrank credit transference, and Google themselves recommends to set this attribute:

> anywhere that users can add links by themselves, including within comments, > trackbacks, and referrer lists

[http://googleblog.blogspot.com/2005/01/preventing-comment- sp...](http://googleblog.blogspot.com/2005/01/preventing-comment-spam.html)

In fact, _Google_ created this attribute _specifically and solely to combat comment/user spam_.

If _Google_ decided to expand the role of @rel="nofollow" as a gigantic "fuck you" to everybody that's a different issue, but the article still is not right.

<comment><USER8> You are repeating this misinformation. As I explained here: <http://news.ycombinator.com/item?id=3456404> Google makes this clear in this answer: [http://support.google.com/webmasters/bin/answer.py?hl=en&...](http://support.google.com/webmasters/bin/answer.py?hl=en&answer=96569)

</comment></comment></comment><comment><USER13> FWIW, bingbot basically DDOS'ed our site a few months ago by crawling links that were labeled nofollow/noindex in the hrefs. Adding a rule to robots.txt fixed the problem.

</comment><comment><USER14> "The hubbub is centered around a complaint by Twitter that links shared on Twitter are not surfacing in the search results."

I think this mischaracterizes this complaint. I don't think anyone is complaining that the LINKS themselves aren't surfacing. That complaint would imply that their ought to be some influence between links on Twitter and the search rank of those linked pages. And I don't think anyone wants to see spammy tweets on Twitter altering skewing search ranking.

Rather the complaint is that recommendations from Twitter are not APPEARING in the search results. And to that point: Why is it difficult for Google to index the fact that someone linked to a site (whether it be rel=nowfollow or not)? Why does this information need to be coupled with the passing of page rank?

</comment><comment><USER15> I don't think this is what they're complaining about. Twitter is saying why are they not linking to the @wwe Twitter account in the new social recommendations like the Google+ links to @wwe. They're not talking about links outbound of Twitter, rather links inbound to twitter, like the @wwe twitter or Facebook account pages.

</comment><comment><USER16> What would happen if twitter removed rel="nofollow"? Couldn't that open the possibility for more spam on twitter? I tend to agree with Google here, but maybe when it comes to social recommendation, Twitter could be recognized as special and specific algorithms could be written to figure out the worth of a recommendation.

<comment><USER17> I can't imagine _more_ spam on Twitter.

In all seriousness htough, you can probably analyze the Twitter "social graph" to weed out a lot of spam.

</comment></comment><comment><USER18> Brilliant article. I was starting to doubt Google for a minute, but this clears it up concisely.

</comment><comment><USER19> There seems to be some confusion about the different kinds of nofollow.

<a rel="nofollow"...> Means not to follow the link to which the nofollow belongs. It may still be indexed, however, if the page is found by a either an internal or external followed link.

The <meta name="robots" content="nofollow"> does not follow/crawl to any of the links on the page. These pages may be indexed, however if they are reached by either an internal or external followed link

To keep the page out of the index, "noindex" should be applied to the meta tag of the page that is to be removed from the index.

Further, a Robots.txt /disallow does not remove pages from the index. A noindex must be used on the page to remove it from the index. Or a request via Google's Webmaster Tools.

That said, it seems feasible that if Google wanted to, they could parse the external links from a Twitter stream without actually following them. This wouldn't necessitate Twitter removing nofollow from their links.

<comment><USER5> "if Google wanted to, they could parse the external links from a Twitter stream without actually following them"

The problem is that there are no external links in the tweets. All tweets point to t.co, which is run by Twitter. You can't find out the ultimate destination of the link without following it through Twitter's redirector.

</comment></comment><comment><USER20> Twitter does in fact implement rel=nofollow to external links on their site but this does not mean content (especially profiles) can not be indexed. Mentioning Twitter's use of rel=nofollow is a definite red herring.

<comment><USER21> Individual tweets will be indexed, but _google has no idea who's sharing what_. That's the issue at hand. Google's changes to Search will promote links that your social connections have shared. If googlebot is ignoring links in tweets, at Twitter's request, then Twitter has taken themselves out of the Search plus Your World game.

Again, the issue is not that googlebot doesn't index tweets. The issue is that it doesn't index any of the links in those tweets. Thus Google has no way of displaying "@Someone tweeted this" in their Search plus Your World results.

</comment></comment><comment><USER22> Personally I think it's dumb for Twitter to nofollow it's outbound links. If I were them I would let the links be followed and then let Google come up with an algorithm on how to rank the links from Twitter.

</comment><comment><USER23> Can someone please explain to me what nofollow has to do with Google indexing or displaying tweets in their serps. It's like saying Google discourages pages which may contain relevant/important information on the topic a user may be looking for because it contains nofollow links. What am i missing here?

</comment><comment><USER24> What have outbound links to do with this at all? Many tweets can and do have zero links. I don't see how that's relevant to this conversation where the topic is about searching the tweets themselves, which has nothing whatsoever to do with outbound links from those tweets.

</comment><comment><USER25> (I am new to this debate and so may be way off, but)

As far I understand, even this article is not very clear. It says:

 _Google is simply complying with Twitter.com's directive to not follow outbound links in tweets it crawls, and the consequence is that there will never be "… shared this on Twitter" in the search results._

Wrong.

You see, when I share some random link in my blog and then you search for that topic, Google will not say "niyazpk shared this in ...." in the search result. Why? Because Google probably considers shares from a few trusted sites/partners only.

Let us read Google's explanation again:

 _We are a bit surprised by Twitter's comments about Search plus Your World, because they chose not to renew their agreement with us last summer (<http://goo.gl/chKwi>), and since then we have observed their rel=nofollow instructions._

And this quote from Google[1]:

 _Since October of 2009, we have had an agreement with Twitter to include their updates in our search results through a special feed, and that agreement expired on July 2. While we will not have access to this special feed from Twitter, information on Twitter that's publicly available to our crawlers will still be searchable and discoverable on Google._

It is pretty clear what happened. Twitter did not renew the agreement with Google and Google stopped considering Twitter as a source for the "shared on" snippet. The "no-follow" attribute has nothing to do with except that it work exactly like it works for any other site.

[1] [http://searchengineland.com/as-deal-with-twitter-expires- goo...](http://searchengineland.com/as-deal-with-twitter-expires-google- realtime-search-goes-offline-84175)

<comment><USER26> > _new to this ... may be way off_

You are indeed "way off".

The article is factually and technically correct, while your "Because Google _probably_ considers" is speculation.

The "special" feed supported crawling efficiency, giving Google a real time firehouse of new tweets, instead of having to crawl Twitter as any visitor or spider would.

The "no follow" breaks the association between a tweeter and the shared content, exactly as the linked article states.

In Google's own words, "Essentially, using nofollow causes us to drop the target links from our overall graph of the web."</comment></comment>


PADL – Paddle Board Rentals – Paddle Share - <AUTHOR> Hi Everyone, I would love to get some feedback on our iOS and Android apps. We are launching soon and would love to get some opinions before we do. Also, if you are in South Florida, we would love to have you over to try our rental prototypes in either Vero Beach or Miami. Thank you!
iOS - https://apps.apple.com/us/app/padl/id1356699642?ls=1
Andres - https://play.google.com/store/apps/details?id=com.fakholdings.padl <comment><USER2> You probably should try Show HN.

[https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)</comment>


Verizon's LTE push is a lesson learned from Apple - <AUTHOR> http://untether.tv/2012/verizons-lte-push-is-a-lesson-learned-from-apple// <comment><USER2> Amusing that Apple has been avoiding the whole LTE rush themselves. Pundits claim this is due to it still needing a lot of room in the device and using a lot of power currently so makes for a worse user experience overall.

I'm not trying to refute or support the article's claim that Verizon picked LTE, a GSM technology, to move to so as not to miss another iPhone-like success. Just pointing out the amusing fact that the latest GSM technology hasn't been picked up by Apple yet.</comment>


Several SSDs with hardware encryption appear to be busted - <AUTHOR> https://twitter.com/matthew_d_green/status/1059435094421712896 <comment><USER2> Why would anyone be surprised about this?

If you can't read a whitepaper, and inspect the algorithm to a degree where you can create your own provably-compatible implementation, or easily inspect the vendors source code, then you should just assume it's implemented incompetently and is completely and utterly compromised.

The same goes for all cellular/mobile phone encryption standards, proprietary VPN solutions, proprietary DRM, crypto used in banking (Chip n Pin etc etc). All compromised. Period. Don't trust it. All crypto implementations should be guilty until proven innocent under serious peer review.

The same attitude should be taken with anything not encrypted. Yes your ISP is spying on your browsing habits, logging everything, and probably will one day sell that data. Yes your bank is analyzing your spending habits. Just assume it's happening. There's enough evidence out there now that this is the new reality.</comment>


Bluelet: simple async I/O and green threads w/ Python coroutines - <AUTHOR> https://github.com/sampsyo/bluelet/

<comment><USER2> How does Bluelet handle the case when a coroutine calls a function that itself needs to yield?

<comment><AUTHOR> You can just yield that invocation. So saying "yield something()" will invoke the "something" coroutine as a sub-thread of the current one, resuming the parent coroutine when it finishes -- exactly like calling a function.

PEP 380 will solve this in an official way. <http://www.python.org/dev/peps/pep-0380/></comment></comment>


10^100: Google calls for ideas to change the world by helping as many people as possible. - <AUTHOR> http://www.project10tothe100.com/how_it_works.html

<comment><USER2> Not to doubt the honesty of Google here, but independently from the altruistic considerations, this is very smart market research outsourcing.

Lots of people from different backgrounds will be eagerly giving the company ideas about things that (1) people want and (2) are massively scalable. Most will not be directly monetizable, but one or two gems could make this experiment pay off in very pragmatic, egotistical terms.

Not a criticism at all. It only brings hope when benevolence and business go by the hand.

<comment><AUTHOR> You make a great point.

The profit margin on the product may be very low, yet the developing world (which this effort seems to be targeting primarily) is a huge market, and the investment will pay off greatly. Plus, the product will be for a good cause. Win-win situation.

Secondly, Google is harvesting the wisdom of the crowds with this call. No doubt there will be several great gems from the fringes. I am looking forward to see the top 100 list. I am also confused a little. Google states that the Google employees will go over all the submissions and choose the top 100 list. Wouldn't that be incredibly tedious? I wonder what tools they will use to speed things up. I think this would make a great job to submit to the Mechanical Turk.

</comment></comment><comment><USER3> _Q: What do I get if my idea is chosen?

A: You get good karma and the satisfaction of knowing that your idea might truly help a lot of people._

I don't think I'm alone to say that I'll just develop my own ideas but thanks for the offer.

<comment><AUTHOR> Google is committing $10 million to implement these projects, so by just donating your idea you can truly help a lot of people. A big return for a small work. To me this is a great deal. I will be brainstorming with my friends in the next couple of weeks, and will try to make 5 high quality submissions.

</comment></comment><comment><AUTHOR> In a related effort, from the networking/systems perspective, Eric Brewer of Inktomi fame has been working on investigating the design and deployment of new technologies for emerging regions. <http://tier.cs.berkeley.edu/wiki/Home>

Below is wikipedia entry for Eric: Eric A. Brewer is a former billionaire and main inventor of a wireless networking scheme called WiLDNet which promises to bring low-cost connectivity to rural areas of the developing world. He also was made a tenured professor at UC Berkeley at the age of only 32. In 1996, Brewer co-founded Inktomi Corporation.

</comment><comment><USER4> It seems that helping people is more and more in the air. I have been working on such idea before google sent this appeal. I am wondering how they will handle the finalist. Do they give you 10 millions and let's say 50% of the shares or do you become somehow a google employee trading your best idea for a jumpstart in the startup area without guarantees of what you will own?

William</comment>


We're Excited About Alaska - <AUTHOR> https://medium.com/@johngedmark/why-were-excited-about-alaska-5d815ae348ce <comment><USER2> Can they cover the highest latitudes from an equatorial slot?

</comment><comment><USER3> There is another angle. Many alaskans are concerned about being overserved, and overdeveloped. many people, even those in the "railbelt" choose to live offgrid, many eschewing electricity, and goverment/corporate overreach into a very private lifestyle.

<comment><AUTHOR> Those folks will still have the opportunity to live off-grid if they choose.

</comment></comment><comment><USER4> the vast majority of attempts to develop the "un developed, underserved" parts of alaska in any way, will not be recieved with much more than consternation, and can go to the extent of physical violence. Thats the way that people here are. im not advocating it but it is an inconvenient truth for anyone wanting to invest here. Anyone wishing to invest in alaska needs to get an idea how the demographic will recieve it. We have a very hard time getting kids to go to school, let alone utilizing anything technical. We teach bush skills to such kids as part of daily life, but science math STEM in general is viewed as baggage the man wants to saddle us with. There is a big issue with return for investment.

The idea of a "lower 48" guy inserting the thin edge of a wedge into the alaskan lifestyle is a very itchy spot.

Now to flip the coin and provide a solution rather than herkening to a problem, a big issue of concern is connectivity and quality of mobile phone service. there is very little mobile competition here and little desire seemingly on the providers part to provide connectivity beyond the Anchorage to Fairbanks corridor.</comment>


Ask YC: Looking for a web 2.0 designer from Toronto, Canada - <AUTHOR>

Hello,
I am currently working on a website project and need to create a demo.  I have the structure of the site and also I know what goes where on each page.  I need someone with good design skills and also a good understanding of web 2.0 sites so s/he can do the interface design for the site.
At this point the goal is to make a demo of the product in order to show to VCs and others, so we need to make the pages first and then bring them to life with flash.  Hence, we either need to find someone with both design and flash skills or just one of the two.
We are located in Toronto, Canada.  Please let me know if you are interested to work on such a project or if you know anyone that would be.
Thank you, you can either email me at email@example.com or call me at 416-824-1404 <comment><USER2> I don't know if you've gotten any folks responding but, in case not, I thought I'd suggest craigslist. I'm not a huge fan of CL for finding employees but for this type of work it can't be beat.

<http://toronto.en.craigslist.ca/web/>

I'm sure you knew that already but, when I searched for "dineorwine" and didn't find anything there, I thought I would suggest it.

Good luck!

<comment><AUTHOR> thanks Scott .. I did look at CL and didn't find anything crazy, but you are right if I put up a post that might change things

</comment></comment><comment><USER3> True interface experts are hard to come by, especially when you have a budget, but another site you can try is <http://www.programmermeetdesigner.com>

<comment><AUTHOR> I agree and thanks for the link I'll see what I can find there</comment></comment>


How some websites know your Google search queries - <AUTHOR> Google Chrome is automatically prefetching the first Google result and therefore passing your IP address and search query (in the referrer) to that website's server.  It's called Google Chrome prefetch and it's turned on by default.
So while you may not have clicked on that person's LinkedIn or Facebook profile, Google Chrome has already done this for you.
To switch it off: - Chrome > Menu icon > Settings > Advanced > Privacy and security > "Use a prediction service to load pages more quickly", toggle off <comment><USER2> Interestingly, that setting was turned OFF for me my default because I have uBlock Origin installed.

</comment><comment><USER3> Surely this has massive security implications. A browser shouldn't be fetching arbitrary pages that I didn't ask it to. One of those pages might have an exploit on it...

<comment><USER4> Prefetch is not uncommon at all. Tons of browsers/apps do it.

<comment><USER3> Some messaging apps seem to prefetch thumbnails and article titles too, which doesn't work out well when you inevitably receive a spam/phishing link.

</comment></comment></comment><comment><USER5> Is just Google? I am on Firefox</comment>


Finding Unlicensed Repos on Github - <AUTHOR> http://aniggler.tumblr.com/post/48445125606/finding-unlicensed-repos-on-github

<comment><USER2> Your script is a great step in the right direction, but unfortunately, having a file specifically named "LICENSE" is not universal. It's almost as common to see a file named "COPYING" and plenty of other alternatives are used.

More importantly, any license stated in the actual source files supersedes the additional "LICENSE" file. There is also the headaches of binary files like images and similar where verifying the license is just painful.

I wish it was as easy as running a script. It would be a good idea if github enforced some convention to make sure the free repo's they provide for open source really are licensed under an OSI approved license.

<comment><AUTHOR> "It would be a good idea if github enforced some convention to make sure the free repo's they provide for open source really are licensed under an OSI approved license."

I wholeheartedly agree. Every once in a while you stumble upon a landmine: <https://github.com/stephen-hardy/xlsx.js/issues/8>

</comment></comment><comment><USER3> The license specified in a LICENSE or COPYING file may not match the rest of the source code. Debian's devscripts package has a utility called "licensecheck" that will scan a directory and report the license used by each file. Chromium has a wrapper called "checklicenses.py" that checks the output of licensecheck against a list of incompatible licenses. If someone were to take the next step of letting you point checklicenses.py at a remote repository the world would be a better place.

<comment> mh- is checklicenses.py suitably licensed for that? :)

</comment></comment><comment><USER4> The term you actually want is "license-free software": <http://en.wikipedia.org/wiki/License-free_software>

There's some more to be found regarding the terminology here: <http://ar.to/2010/12/licensing-and-unlicensing>

</comment><comment><USER5> This is a really important problem. I can't count the number of times I have seen something promising on GitHub only to notice on closer inspection that it has no license attached at all. Or, almost as bad, it just says "License: MIT" at the end of the readme with no link or actual license text, which I doubt (IANAL) is legally meaningful.

Sometimes I respond by filing an issue, titled "License?", where I gently suggest applying the MIT or Apache license or something similar. Usually that's what the authors intended, they just forgot, and are receptive to adding it. But I still kind of hate to be That Guy. Even though it's important, it feels like I am trying to correct someone's grammar. I wish more people would step up and be That Person so I wouldn't have to be.

I do generally use MIT-LICENSE.txt on my repos (and some other variations on older ones) so I agree that a slightly more general script would be nice if we are to solve this programmatically.

<comment><AUTHOR> "But I still kind of hate to be That Guy. Even though it's important, it feels like I am trying to correct someone's grammar. I wish more people would step up and be That Person so I wouldn't have to be."

I can assure you that this is probably worse than anything you've done: <https://github.com/stephen-hardy/DOCX.js/issues/1>

" Many people assume that code on github is open source, but that is far from the truth. In fact, the Microsoft Office Extensible File License exemplifies Open Source Trolling: each clause an insult to the diligent readers' intellect.

The real problem with all code under the license is that it muddies the water. Microsoft could use your code as a reason to take legal action against others who genuinely try to innovate and use DOCX as a data format. You hurt the community far more than you help by releasing pseudopen source code. Ever think that those lawyers might want you to do this so that they can go after others later on?

@stephen-hardy I think you are a reasonable person, and I might be niggling a bit, but neither of us want to see innovation stifled by myriads of lawsuits because one person's effort to release code created a miasma around a beloved software product. Let this be a clarion call, and please share with your coworkers and superiors: unless the code can be released in a proper open source format, it's better that you don't release it. "

</comment></comment><comment><USER6> We have this issue in the obj-c community for Cocoapods, one of the the best choices we've made lately is to refuse libraries that do not have a license. Definitely wish that github would make you put some kind of license on a repo if you are going to make it public.

<comment><AUTHOR> Is that an automated process or do people manually inspect proposed libraries?

<comment><USER6> We have a declarative ruby file that must include a license ( [https://github.com/CocoaPods/Specs/blob/master/ARAnalytics/1...](https://github.com/CocoaPods/Specs/blob/master/ARAnalytics/1.2/ARAnalytics.podspec) ) which doesn't have to be OSS ( because we support closed source libraries ) but is nearly always OSS.

So we have a CI linter that checks every library.

</comment></comment></comment><comment><USER7> I agree - GitHub being the great repository it is for Open Source projects, it really wouldn't be a bad idea to have some sort of reminder to users when creating a repo to add a file detailing the license the code is being released under.

</comment><comment><USER8> I really wish github had an automated tool to add a license file (by easily choosing from a list of existing licenses, of course). I always neglect to include a license on my projects ... and then procrastinate doing it afterwards.

<comment><AUTHOR> " automated tool to add a license file (by easily choosing from a list of existing licenses, of course)"

I see the merits of that (it would be nice to see that option in the "Add Repository" page), but I worry that licenses would then be set by autopilot (without actually considering whether the license is applicable), creating even more problems.

</comment></comment><comment><USER9> Cool stuff! But you forgot to license your code. ;)

<comment><AUTHOR> Added :) See, even for small things it's easy to forget. Hopefully someone makes a script to remind you for licensing gists.

<comment><USER9> If I had the energy for it today, I would add to your script so it fetches the repository's owner's e-mail address and sends them a reminder/or adds an issue to the project!

</comment></comment></comment><comment><USER10> Quick plug for License Audit: <http://licenseaudit.pivotallabs.com>

We developed that at Pivotal Labs since we need to pay attention to licenses while working w/ our clients. Just connect your repos, add licenses to your whitelist, and get updates if you're not in compliance. Feedback welcome!

</comment><comment><USER11> This is a great post and a good crack at addressing the problem. Your post raising awareness of the importance of clear licensing is probably a more valuable contribution than your script itself. I've lost track of how many times I had to pass up on a good project on Github because of an unclear licensing situation.

<comment><AUTHOR> "I've lost track of how many times I had to pass up on a good project on Github because of an unclear licensing situation."

A situation many of us have experienced. Until today, I thought I was alone in my concerns regarding licensing.

" your script itself"

It's a gist for a reason. If I truly thought it was the best starting point for a proper "license niggler", I would have made it a proper repo :) This fits my particular licensing scheme (only using a LICENSE file).

</comment></comment><comment><USER12> You should also check for the existence of a package.json file at the root, which is the Node.js style. These files can contain licensing information for Node modules and projects, and personally I think this is a better pattern than making a separate LICENSE file.

<comment><AUTHOR> I don't disagree, but that's only applicable for node.js code. There's no tradition of using package.json for fortran or C.

Although I do like the overall theme of developing a language-agnostic way of indicating licenses (because, as also mentioned by jcr, checking for LICENSE doesn't cut it)

</comment></comment><comment><USER13> You should check for any root level file with all caps LICENSE in it. Other common examples:

LICENSE.txt LICENSE.md MIT-LICENSE MIT-LICENSE.txt etc.

<comment><AUTHOR> A general tool would do that :) I try to use LICENSE for my projects.</comment></comment>


The Resurgent, Post-Windows Microsoft - <AUTHOR> http://techcrunch.com/2014/03/30/the-resurgent-post-windows-microsoft/

<comment><USER2> It's a good start but MSFT has a lot of cultural unlearning to do for it to really become the formidable force that it was .. Years of somber have crept into the culture - and shaking that up in going to be a challenge - good thing though is that they are able to attract great talent.

PS: I have spent a decade working @ MSFT</comment>


Show HN: Tired of mobile games with IAP and ads, I made No-Bullshit Games - <AUTHOR> https://nobsgames.stavros.io/ <comment><USER2> Here is my contribution (a webapp, a.k.a. a website) [http://lalo.li/lsd/](http://lalo.li/lsd/) coded it years ago mostly drunk on an island in Thailand, I now like to play it again on my iPad with iPencil.

Github: [https://github.com/franzenzenhofer/lsd](https://github.com/franzenzenhofer/lsd) (Warning: a single, dependency less CoffeeScript source file)

<comment><USER3> Reminds me a bit of Jezzball (old game that shipped with windows) [0]

[0] [https://www.youtube.com/watch?v=VD6GQJxHh7E](https://www.youtube.com/watch?v=VD6GQJxHh7E)

<comment><USER4> This style of gameplay goes all the way back to Qix from 1981:

[https://en.wikipedia.org/wiki/Qix](https://en.wikipedia.org/wiki/Qix)

<comment><USER3> Wow, never heard of this game (unsurprising as it came out a decade before I was born). I was able to play it here [0]. Arrows to move, spacebar to be able to leave the edge. Very cool!

[0] [https://playclassic.games/games/action-dos-games- online/play...](https://playclassic.games/games/action-dos-games-online/play- qix-online/play/)

<comment><USER4> That link is to an emulation of an _MS-DOS port_ of the original arcade. You can play the emulated _original_ stand-up arcade game here:

[https://archive.org/details/arcade_qix](https://archive.org/details/arcade_qix)

Press F3 to choose language, then use 5 to insert coins, 1 to start 1 player game. Use cursor keys to move along existing lines, use Ctrl+cursor keys to draw fast, use Alt+cursor keys to draw slowly.

<comment><USER3> Good catch! Thank you for posting this. It's really crazy to be playing games I played when I was a kid (Not this game but other MS-DOS or Arcade games) in the freaking browser...

</comment></comment></comment></comment></comment></comment><comment><USER5> Great idea. I really enjoyed Angry Birds when it first came out and when my children asked about to install it on their devices I said this was fine. I couldn't find the original Angry Birds so installed Angry Birds 2. What an awful convoluted mess it was. Instead of a simple, fun physics-based game it's full of lives, spells, bad level design and in-app purchases.

<comment><USER6> I played the original to death "back in the day" so I'm really sad to hear that they went down this route. Probably also explains why nobody talks about Angry Birds anymore.

<comment><USER7> There was an Angry Birds movie released within the last couple of years. It's still extremely popular.

<comment><USER8> it was legitimately a good movie. I would've gone to see the sequel despite never having played any of their games.

</comment></comment></comment></comment><comment><USER9> Top idea. Really really nice. I recently loaded up a blank Android phone with dozens and dozens of games, pretty much anything I could find for a 12h flight, only to realize most of them were an absolute horror show of IAPs and requiring internet connectivity for no apparent reason. So after you've grown this list (and it already looks amazing, excellent work!) maybe worthwhile considering to add an additional "works offline" flag, including the first start of the game. That would've been amazing to have. Either way — you've cracked the secret: make something people want (and saves them a lot of time).

<comment><AUTHOR> This is a great idea that lots of people have requested, and it's easy to add technically, the problem is in the messaging. The only way I get feedback now is through the "add new game" form, and in that you can tell me the reason for adding the game. However, "works offline" is a nice bit of info rather than a reason to add the game, so I don't exactly know where to ask for that...

<comment><USER10> Maybe just include a checkbox where people submit the info?

<comment><AUTHOR> Good idea, thanks! I'll add that soon.

</comment></comment></comment></comment><comment><USER11> Honestly, I wouldn't mind ads if they weren't so obtrusive. a simple ad on a loading screen isn't the end of the world to me. What's annoying is trying to tap a tiny 'x', unskippable video ads, ads that try to fingerprint my device, ads that slow down my machine, ads with volume, time limiting play unless you buy an IAP (when there's no option for just buying unlimited time for a reasonable price)

I want game devs to be able to make a living, but there's a difference between game devs who responsibly put in monetization and game devs just trying to squeeze every last cent through deceit and manipulation.

<comment><USER12> Why not just charge money for games? Seems like a reasonable way for them to make money...

<comment><USER13> Then you create a soft ceiling and miss out on the whales that will spend $1K a month to have a shinier hat.

<comment><USER14> Yes many of those games litterly throw their freemium players as cannon fodder to those whales.

Few get the balance right and many will always tip one way on the odd patch, pandering to the whales - who after all - spend money.

Though the games that just offer hats and other cosmetics, well, you have to love those and certainly a solution that appeases all and rich fools are not to be scoffed at in such games as they are paying for it to carry on.

</comment></comment></comment></comment><comment><USER15> I echo the others here, Thanks! I have young kids and we let them use tablets on long trips, vacations, airplane rides. Finding games for them is impossible. They are too young to understand when characters, levels, items are locked. It seems like every 2 minutes they get stuck on some ad screen with a hidden X. I just want a game that when I pay $4, I get the full game. It doesn't even have to be a big, intensive game. My kids would be happy with a finger painting game, as long as all the colouring sheets and paint brushes are available.

<comment><USER16> If you're in the Apple ecosystem, Apple Arcade is pretty great for this. Every game on it is an actual game, no IAP or ads.

<comment><USER17> Sorry to be snarky, but if they were on the "Apple ecosystem" they wouldn't call a tablet "a tablet"...

<comment><USER18> On Android, Google recently launched their own version of Apple Arcade: [https://play.google.com/about/play-pass/](https://play.google.com/about/play- pass/)

I haven't personally tried it, but it claims there are no ads or in-app purchases, and the catalog includes a bunch of classic kids' games.

</comment></comment></comment></comment><comment><USER19> I would like to build an app that's a series of games, that are all related. I want to use the freemium model, with a one-time payment. No ads, no subscriptions; once you pay, you own the entire game.

What's a better model for this? A single app with a one-time IAP; or two apps, where one is free with no ads or IAPs, but there's a link to a separate paid app with no IAPs?

It seems there's no way to distinguish easily when you're looking at the App Store whether IAP means a reasonable one time purchase for the full game, or a series of predatory IAPs. So having any IAP at all seems to turn off a lot of people. But I'm not sure two separate apps is the best approach either.

<comment><USER20> Thats actually just old school selling a game. For cash, once, no DLCs, no running costs.

Which is actually awesome.

My first games were Quake, and Quake2. I enjoyed shilling out the cash just once. Bought expansions as budget allowed and was always excited to.

More power to you honestly.

Edit: duck ads.

<comment><USER21> The question was how to implement the freemium/shareware model in apps. It's important to understand that this model can make a lot of sense, for example in the case of weird and experimental games, where it avoids people wasting their money on something they won't like and leaving disgruntled reviews. It also encourages people to try something new. One approach is to have a single IAP and make the pricing obvious.

<comment><USER20> I honestly don't think freemium/Ads are a good model.

I understand what you mean, and i think the model pursued by old games was less toxic. They simply released shareware ... just 10% of the game for anyone to try.

Freemium/Ads works well for addicting things, and im not sure how the negative effects of what's done there can be honestly counter acted.

So its not that i don't think that the model generates less money, its just burning down the house.

</comment></comment></comment></comment><comment><USER22> I built a site that's adjacent to this idea (www.darkpattern.games). It catalogs the dark patterns found in mobile games. Premium currency and ads are two of them but there are many more. The idea is that you could educate yourself so the dark patterns have less power over you and also you can browse the site to find good games that don't have dark patterns.

<comment><USER23> That's a pretty well done site, thanks for taking the time to make it.

I don't think that all 'dark patterns' are necessarily always bad, especially after seeing everything that made your list, as you have "Complete the Collection" as an example.

While I think that it can definitely be abused and does belong on the list, I do think collecting things can be part of the fun of games for people, and that's been in games pretty much since games moved from the arcades into the home consoles.

Like platform games are often 'Collectathons', and one of my favorite games of all time, Yoshi's Island on Super Nintendo, has 5 collectible flowers and 20 red coins (and you have to do it with full health at the end of the level) to get up to 100 points for every single level. One of the things I love to do in that game is try to get the full 100 points in as many levels as possible.

Another one is Badges, which is similar to Collections, but you're collecting the completion of goals instead. Personally I loved when Xbox 360 introduced Achievements, and I still wish the Switch offered them. When done right, it can leave a lasting demonstration of how much I enjoyed the game. Of course there's some stupid, grindy, super time consuming garbage that borderlines on player abuse for them, so I agree they qualify as a dark pattern, but I don't think they're inherently or always a bad thing and something game developers should always avoid if they want to make a game that wouldn't make the bad side of your list.

A lot of these dark patterns I do think are probably always annoying and a bad experience, though, like "Wait to Play".

<comment><USER24> I don't know how I feel about labeling achievements, grinding, and leveling up as dark patterns

I guess they do technically exploit people's psychological weaknesses to make games more addictive than they'd be otherwise.. if you take all of those out, though, the classic Final Fantasy SNES games are basically just pixel art comic books

<comment><USER25> I mean, I don't like all types of games. What may feel grinding to me, might be fun for somebody else?

In fact, I sometimes enjoy watching other people have fun, even if it would be grinding for me. Also helps that they're usually just better at it :)

</comment></comment></comment></comment><comment><USER26> Haven't had time to look through the list, but this is exactly what I've been looking for. While I don't play mobile games myself, my (older) relatives do a lot, but since something like the 10th time a scam ad almost got my grandmother to lose 300€, I no longer install anything with ads on their devices. It took me almost an hour to find a bullshit-free solitaire game in the Play Store. It took exactly 3 seconds here.

<comment><AUTHOR> Thanks, I'm glad you like it! I was expecting to have to curate this list myself and that people wouldn't submit much, but I've found a bunch of amazing games just by reviewing the submissions (including the Solitaire game you're talking about, if I'm not mistaken).

</comment></comment><comment><USER27> This is awesome, but I'm _going_ to forget it exists, so: please take my email address and feed me notifications about when new games get added. (I might want to be notified immediately, weekly, or every N months.)

Besides that, some minor nitpicks:

\- Infinite scrolling would be very nice to have

\- The ability to sort the columns by clicking the headers (eg, reviews) might be useful

\- I have some, uh, _really_ old devices here that I continue to use. One is on Android 5. There are probably only like 4 people out there that will appreciate seeing a game's minimum Android version, but they'll _really_ appreciate it

\- I kind of think surfacing screenshots or description info _might_ be interesting, but that's probably because I'm on 256k slowed internet right now and am loathe to click links (lol) but want to compare/get more info about each game

Also: something interesting is going on with the rating filtering. If I type in "4.8" and select Free under Android, I see 3 items; trying "4.7" gets me a total of 6 4.8-rated items.

<comment><AUTHOR> Thank you!

> please take my email address and feed me notifications about when new games > get added

Hmm, that might be a bit spammy, do you have an RSS reader? Maybe I could add a feed.

> Infinite scrolling would be very nice to have

I had something similar before but people complained that they lost their place when clicking on apps to go to the store. Maybe that's fine now that they open in a new tab, I'll rethink that.

> The ability to sort the columns by clicking the headers (eg, reviews) might > be useful

Yep, that's something I removed when I added the filtering system and that I need to add back, thanks.

> something interesting is going on with the rating filtering. If I type in > "4.8" and select Free under Android, I see 3 items

Hmm, that's odd. I will investigate, thanks!

<comment><USER27> I never ended up using RSS, but it seems a lot of others do, so perhaps this is a good idea. As for email, considering the general "success" (???) of signup boxes on websites, I get the impression (not having added such a box anywhere yet) that maybe this is the lowest common denominator solution for notifications in non- to semi-technical situations. Maybe a free email solution could be used to test the waters here, with the send rate options limited to every 1-2 months.

And perhaps infinite scrolling could be combined with history.replaceState() ([https://developer.mozilla.org/en- US/docs/Web/API/History/rep...](https://developer.mozilla.org/en- US/docs/Web/API/History/replaceState)) to keep the URL in sync.

</comment></comment></comment><comment><USER28> This is why I've embraced Apple Arcade... it's inexpensive and no games have in app purchases or ads it's great

<comment><USER29> Too bad it's not targeted towards gamers :)

<comment><USER30> What do you mean?

<comment><USER29> I've taken a look at their launch list and it's 90% casual stuff with very simple mechanics that I'm not interested in.

My main entertainment has been video games for more than 30 years so I either need a story, complex systems i can mess with or maybe a reflex challenge.

Edit: Say, where can I find a complete list of the games they offer? I just checked their page and they seem very secretive about it. Another sign that it's targeted at parents buying something for the kids to shut them up :)

<comment><USER30> So by "not targeted at gamers" you just mean that they don't have games you are interested in?

I've really enjoyed my time with Apple Arcade. Before it launched, it was becoming difficult to find a decent mobile game that wasn't 100% supported by ad's. I haven't loved all the games they offered, but I've played about 5 so far that I would have paid full price for if they weren't offered in the service.

</comment></comment></comment></comment></comment><comment><USER31> Strong suggestion: define "IAP"

I'm always amazed how many sites like this make wild assumptions about the domain knowledege of all the people that might come across the site. I _think_ "IAP" is "in-app purchases", but just make that clear. And a better statement about what constitutes "bullshit" and whis is the correct definition would help a lot.

Also, why not also include mobile web games like 2048?

<comment><AUTHOR> Done, thanks! Mobile web games are harder to include because there's no app store to get data from.

</comment></comment><comment><USER32> I would request you to consider web apps as well. I tried submitting [http://arcadejack.com](http://arcadejack.com) but no luck. Here is what I had entered as comment: "Consider this no-bullshit math game to help kids practice math. Free, no iap, no login. Everything is stored locally."

Edit: Still super early in dev and pin for "grown up" tab is 1222

<comment><AUTHOR> I'm afraid that's next to impossible as it would require too much manual work, but thanks for the recommendation!

</comment></comment><comment><USER33> Thanks for making this, really. Phone games seem to be a sort of gateway drug for video games and it's a shame that most of them are so laden with microtransactions and attention-hacks. Anything that can steer people away from heroin-adjacent mobile games toward games with substance is a great product in my book. Nice job.

<comment><USER34> I think it would make a fascinating study on how mobile gaming turned into this, when PC and console gaming (while suffering from _some_ of this) is still viable for people who just want to buy a game and play it without shenanigans.

<comment><USER35> I recall hearing back in the day iPhones were newer and dedicated mobile webpages were a functional matter, and the iPhone lacked serious competitors some web storefronts would abuse browser charge higher prices for iPhone browsers because they read it as a signal for more disposable income/willingness to pay more.

The "luxury start" for a non-dedicated game device combined with the payment platform intergration of an app store was likely the original sin which turned the mobile game development culture that particular flavor of toxic. Of course that was also probably partly what got them developer buy in to their niche platform - the money.

</comment></comment></comment><comment><USER29> Sometimes I hate that I can give only one upvote to a story.

Back when the iPad 1 was new, I was actually playing games on mine. Then everything turned into a mess of IAP bullshit and now I don't even _look_ at mobile game releases any more. Hopefully this site will help me find something to play.

</comment><comment><USER36> Cool list!

I'll throw in one I made for myself and never really showed to anyone. It's a clone of Unblock Me/Rush Hour, but with no ads and undo+redo support. It's only a website since I don't want to bother with app stores (I just save the page to my home screen).

[https://zwegner.github.io/slidey-blocky- thingy/base.html](https://zwegner.github.io/slidey-blocky-thingy/base.html)

The puzzle variety isn't great, my generation method sorta sucks. I had started to build an exhaustive generator after reading Michael Fogleman's article[1] on it, but haven't finished.

[https://www.michaelfogleman.com/rush/](https://www.michaelfogleman.com/rush/)

<comment><USER17> What's the objective of the game? I haven't played Unblock Me or Rush Hour.

<comment><USER36> Ah yes, this would be kind of confusing in that case :)

Simply put, it's to move the blue-greenish block off the right side of the grid. You clear the path by moving all the other pieces around as necessary. Each piece can only slide horizontally or vertically, depending on its orientation (they move along their longer dimension).

<comment><USER17> Haha cool! I'm on puzzle 5 with a lousy record, thanks for the fun.

<comment><USER17> Puzzle 10, 5 elevens :)

</comment></comment></comment></comment></comment><comment><USER37> Any reason why the Genre filter field is a text input rather than a dropdown? I went to look at the Genres available to see which ones I might like but the only way I can see to do this is by scrolling through the pages to look at the available options.

<comment><AUTHOR> Yes, Apple games can belong in multiple genres and it was easier to do it this way, but I'm probably going to make it a dropdown since it's more usable.

<comment><USER38> Possibly make it a tag selector for easy multiple selection. You could then leave it a text input that sort of auto completes a tag name and adds it to the search filter

<comment><AUTHOR> That's a good idea, but then I worry that it would narrow the results too much. Not that big a deal, since you can just remove a tag again, but I'll have to play around with it and see.

</comment></comment></comment></comment><comment><USER39> I feel this is a google/apple problem. They need to celebrate and advertise premium games more. Instead, we're stuck in a world where most games are fremium with tons of ads or IAPs, or subscriptions..... It sucks to be a gamer.

I've seen some games that are on both Switch and Android. The Android one has ridiculous IAPs, and Switch is a one-time purchase. I get that it isn't the developer's fault. Premium games don't sell well on Android. But it sucks none the less.

Remember how Angry birds and Cut the Rope used to be good? Now they're a disgrace, full of video ads. And for most of them you cannot pay a single fee to remove.

<comment><USER40> Some games like Churchill Solitaire require you to pay $5 for the game, but then it doesn't unlock all of the campaign, you have to pay $1 for every 25 after that, then you have to pay to UNDO A MOVE or even get a hint. Then daily games are another $5 a month. So much BS even if you want to buy the game.

</comment></comment><comment><USER41> Would you be open to adding other Genre's of applications in there? iPad has no built in Calculater application and it has been a beyond infuriating experience simply finding a non-bullshit one without any adds or anything.

</comment><comment><USER42> Thanks! Awesome idea. My son and I have started our own "game studio" for iOS, and I've submitted our first game, Barrel of DNA: [https://apps.apple.com/us/app/barrel-of- dna/id1460483070?ls=...](https://apps.apple.com/us/app/barrel-of- dna/id1460483070?ls=1)

One of our main design principles is to charge a fair price and never do any ads, tracking or IAP's. The idea is to be contrary to the vast swathes of crap that is out there...

</comment><comment><USER43> Its awesome to see kitten game[0] on here! I had no idea it was released as an app. For stuff like this, I'll buy it even if I never plan to play it on the device, to support the creator for the time I've spent on the free version.

[https://play.google.com/store/apps/details?id=com.nuclearuni...](https://play.google.com/store/apps/details?id=com.nuclearunicorn.kittensgame)

</comment><comment><USER44> I recently changed my relation with video games. I used to play a lot of FIFA (or Football Manager), which are games who are just here to entertain yourself, but there is no backstory at all. Now I see video games as reading a book, or watching a great movie: focus on the story, the art design, the sound design, and the experience in general.

I still play a bit of FIFA, but I reserve it to my social time (even though I find that FIFA create a lot of tensions, while Mario Kart is funnier to play, and the level to be competent is lower).

The problem with most of IAP games are that they are in the same category than FIFA or FM. There is little backstory. While paying upfront for a game (on mobile, a dozen of great games exists, and you can play some of them during short period of time like Limbo...) create a sense of connection with the game, because you invest money in it, and you are ready to really invest time in it. On the opposite, IAP are games where the goal is to make you play as much as possible, to pay as much as possible.

<comment><AUTHOR> There are different kinds of IAP, some are free demos and you unlock the full game with an IAP, some let you buy extra content in the form of DLC, some remove ads, and some just want to get thousands of dollars out of you. I call the latter "bullshit" to differentiate from the former, which are OK to me.

<comment><USER45> Games that follow the old shareware model (free to try out, choose whether or not to pay for full game/disable ads) are my preference for sure.

I don't mind paying $5 (or more) for a good mobile game, but with so much crap out there, it's tough to justify unless I am lucky enough to run across a trusted review or it's something from a developer that has earned my trust through previous offerings.

Looking back, the games I buy/unlock tend to be the ones where I get to try them out first. If I play the first 10 levels or 1/5th of the story and really enjoy it, I'm eager to pay in-app to continue the game.

</comment></comment></comment><comment><USER46> I feel dumb so I don't know if it's a UI thing or just my weird brain, but I loaded this page on my phone, on Firefox and and Chrome, and I incorrectly assumed it was just broken. Where was the list of games?!

Finally I read "choose your platform" and realized it was saying that not for adding games or any other reason, but to see one of the lists! D'oh!

<comment><AUTHOR> Hmm, I might have to do something about that, yes. Currently it's too much text on that page.

</comment></comment><comment><USER47> Shameless plug: I also made some games built with TypeScript/Phaser: [https://xojoc.pw/games2d/](https://xojoc.pw/games2d/)

The code is on GitHub: [https://github.com/xojoc/games2d](https://github.com/xojoc/games2d)

It's a PWA[1] too, so it can be installed on some OSes. I wrote about the experience here: [https://xojoc.pw/blog/experience- pwa](https://xojoc.pw/blog/experience-pwa)

[1]: [https://developer.mozilla.org/en- US/docs/Web/Progressive_web...](https://developer.mozilla.org/en- US/docs/Web/Progressive_web_apps)

<comment><USER24> Hey dude, your games look pretty fun, sorry you're getting downvoted here

I miss the simple, fun, free linux games of the 90s/00s. And other apps, for that matter. Somehow nowadays everyone thinks that cobbling together an RSS reader or a Solitaire game should entitle them to a permanent passive income or make them into a millionaire CEO

</comment></comment><comment><USER48> I like this a lot.

For a few years now I've wanted something like "No-Bullshit Podcasts" which does the same thing - lists podcasts that are either ad-free or that can be made ad-free via purchase, and that don't require a proprietary player.

<comment><USER49> All the BBC podcasts are ad-free, but I get them from within the UK. I am not sure if they have ads if served in other countries.

<comment><USER50> Hmm, at what point do all the trailers for other shows tip in to the advert category?

I wouldn't want to try counting how many times I heard a trailer about 13 Minutes to the Moon last year, which I'm picking on specifically because I actually enjoyed it to make the point that the bucket choice can be _very_ subjective.

<comment><USER49> The Brexitcast doesn't have ads. The Infinite Monkey Cage has a 10-15seconds clip in the end where they promote other science-y podcasts (which I always fast-forward anyway).

I also listen to the weekly "SecurityNow", in which out of the 2h there should be at least 10-15mins where Leo reads out his ads. Leo also tries to push SpinRite, but since SR has saved many disks in my lifetime, I gladly listen to that bit (finally we'll have a faster performing version soon-ish).

<comment><USER50> I don't know. Katya pimps nail polish, and Adam pushes pastries disguised as tales of street meetings with prominent leaders. Either that or I'm getting the wrong message from brexitcast.

In all seriousness though. You've described excellent examples of what I was trying to get at: it isn't always obvious where to draw the line; useful promotions, acceptable [to the listener] ads, and the point where it becomes just _too much_.

<comment><USER49> Even on SecurityNow, majority of ads are irrelevant to me. But thanks to SN add I found out about CrashPlan, Lastpass, and some other useful services. I cannot remember the razor as that Leo used to have every-week-for-months (the one that was acquired by Gillette some months ago)(Harry's or something) it was boring and irrelevant for a cybersecurity audience, I guess they were aiming for the "males with money" attributes of the audience.

</comment></comment></comment></comment></comment></comment><comment><USER51> Really nice idea! I added a few.

But one that I added didn't make it to the list and I don't know why: Spaceteam [https://play.google.com/store/apps/details?id=com.sleepingbe...](https://play.google.com/store/apps/details?id=com.sleepingbeastgames.spaceteam)

It has no ads. The IAP it has seems to fit your definition of acceptable: it's only cosmetic and goes to support the developer.

So my suggestion would be this: include another list of rejected games, which some reason why they didn't meet the criteria for the No-BS list.

<comment><AUTHOR> Oooh I love Spaceteam, thanks for the submission. Basically, the way it works is that games are automatically added once an hour if they have no ads or iap and are semi-popular, otherwise if you leave a comment telling me why the IAP they have is fine, they go into a review queue.

I then eventually review the queue and whitelist the games accordingly. Spaceteam should be up in a few minutes, thanks again!

</comment></comment><comment><USER52> I really, really like this idea 'StavrosK, so thanks for making this site.

I contributed the iOS version of Seedship: I played it a few weeks ago, and it had no IAP or in-game currency to speak of [0]. I only have an iPhone, so I cannot test the Android version [1]. I strongly suspect that the answer is no given that the two web versions do not have those things [2][3].

This project did give me follow on idea though that others here mentioned and/or alluded to in this this thread: content blockers for the App Store/Play Store. Apple and Google only check for a number of things when reviewing app submissions: malware checks, conformance with local laws, major performance issues, certain security issues etc. What if a user could download content blockers to block apps that they don't want to see? Apple and Google get to free themselves of having to break ties between content curation and being a censor. Users who want use apps that are vetted by a third-party of their choosing to achieve some purpose would be able to do so e.g. apps for children. I'm not sure exactly what Apple or Google would have to accomplish this, but I think they could some of their organization app policy logic combined with a few other things e.g. forbidding side-loading, or adding additional content-blocker specific app signatures that an app could optionally have. There is a good chance that this would hurt advertising, so there would be the appropriate and proportional pushback. However, I consider that to be an expression of what the market wants.

[0] [https://apps.apple.com/us/app/seedship/id1340497640](https://apps.apple.com/us/app/seedship/id1340497640)

[1] [https://play.google.com/store/apps/details?id=com.johnayliff...](https://play.google.com/store/apps/details?id=com.johnayliff.seedship&hl=en_US)

[2] [https://johnayliff.itch.io/seedship](https://johnayliff.itch.io/seedship)

[3] [https://philome.la/johnayliff/seedship/play/index.html](https://philome.la/johnayliff/seedship/play/index.html)

</comment><comment><USER53> My contribution is a tower defense I've been working on over the last 7 years and that I'm still regularily playing myself: [https://mazebert.com/](https://mazebert.com/) The graphics are pretty bad (I'm drawing them myself, heh), but there's a lot of depth and content to it.

There are three optional, one-time in app purchases, where you can tip me with a cookie, beer or whisky and get a cosmetic card in return.

</comment><comment><USER54> Are there more options for a Solitaire game that fit on this list?

My retired father could use something familiar (more like the Windows 95 solitaire, minesweeper, and 'mahjong solitaire' tile matching) games that probably still occupy some floorspace in that grey-matter.

I'd also like some games that might help both younger kids and the elderly by exercising memory matching, pattern deduction, and basic math skills. It wasn't clear how to pick such titles out of the list.

</comment><comment><USER55> Columns can only be sorted descending.

[https://nobsgames.stavros.io/ios/?s=price](https://nobsgames.stavros.io/ios/?s=price)

<comment><AUTHOR> They're actually only sorted in one way, descending or ascending, depending on the column. I aim to fix that soon.

</comment></comment><comment><USER56> Great idea... I don't mind paying for good games, but what i do mind is games that try to squeeze as much money out of you for just playing it, which fits your definition of bullshit games.

So unlockable DLC and removable ads are fine, but endless pay-to-win consumables aren't.

Sorting by number of reviews would be great - it's a better indicator of popularity than the review score

</comment><comment><USER57> Those are games I might actually try! When I see "in app purchases" in an app description, I don't install the app.

</comment><comment><USER58> Measuring popularity is potentially an issue here, since:

\- Every game's popularity measure is competing against all other games in stores, which definitely includes all the "bullshit" games (and there are probably way more of those).

\- One form of "bullshit" is gaming the review system itself, e.g. finding ways to generate thousands of "reviews".

\- It is very difficult to get users to submit reviews.

</comment><comment> GuB-42 I see many games on the list are free with "One-time purchase".

I find these to be pretty annoying, at least on the Android Play Store. The concept is good: free demo, you pay for the full game. The problem is that it hides the actual price of the game.

Maybe an "actual price" field could be added to the site.

</comment><comment><USER59> Joining the chorus of this being a wonderful idea. Maybe link to Metacritic or other respected reviewers?

Thank you very much for this!

<comment><AUTHOR> Thank you! Is there a way to find the Metacritic review automatically from the app ID?

<comment><USER59> Doesn't look like it at first glance, if I absolutely had to I'd screen-scrape the advanced search page for the link, which is a less than great way to do it. I donno.

</comment></comment></comment><comment><USER60> Are my games eligible? I own a game company named Kidoteca, our target market is small kids so we never put ads or IAP.

The closest thing to ads is a section to see our other apps, but it is hidden (requires reading, to figure out how to get to it, while we expect most of our users are kids that can't read).

<comment><AUTHOR> Sure, if they have no ads or IAP, check out the guidelines and add them.

</comment></comment><comment><USER61> The table that has the game list in it doesn't work very well on my iPhone. I have to scroll horizontally.

</comment><comment><USER62> Would a game with ads that can be turned off for free count? Its called Snowpounce and here is a video about its development [https://youtu.be/7ZYkCOmF0yc](https://youtu.be/7ZYkCOmF0yc)

Disclaimer: the game is not mine

<comment><AUTHOR> Yes, if you can turn them off completely forever, certainly.

</comment></comment><comment><USER63> You should set up your own game store with only the listed games on it. Would be great.

</comment><comment><USER64> I've found in most cases putting the phone into airplane mode before loading the game makes them playable.

Sometimes you miss out on hints and whatnot but overall it lets me play the game with my kids without worrying about inappropriate ads.

</comment><comment><USER65> Good coverage, well done! At least for the iOS games. Few more to add:

Tiny Bang

PDTA (please don't touch anything) <\- absolutely awesome btw!

Carcassone

Tokaido

Miracle Merchant

Alchemy 2

Supertype

Ordinary puzzles

Auralux, Auralux 2

<comment><AUTHOR> Thank you! Could you add them via the form? That way I can keep the feedback in one place.

<comment><USER65> Ah, found the form... but it was on the landing page that serves no other purpose but to forward people to the iOS or Android sections. So there's no real reason to ever go back to it. Perhaps link the form from the actual listing pages?

<comment><AUTHOR> Yes, I need to split it off to another page and add an "Add a game" button.

</comment></comment></comment></comment><comment><USER66> Do you have a way to filter duplicates? I just took a look at the iOS list and there are a few games that are on all 3 of the first 3 pages.

I love the idea, and will use this to help find games for our family iPad.

<comment><AUTHOR> Hmm, there should be no duplicates, something is iffy. Do you know which games?

<comment><USER67> I see The Room series of games multiple times.

<comment><AUTHOR> Oops, that seems to be a pagination problem (they're only in the database once, as you can see here: [https://nobsgames.stavros.io/ios/?name=room](https://nobsgames.stavros.io/ios/?name=room)). I will investigate, thank you.

EDIT: iOS games have a rating that's quantized 0.5 apart, so all the 5-star games were sorting unstably. Sorting by "-rating, -reviews" seems to have fixed that (and is more useful), thanks.

<comment><USER68> Are you sure about that? You report Bacon the Game as a 5, but [https://apps.apple.com/us/app/bacon-the- game/id1413085106](https://apps.apple.com/us/app/bacon-the-game/id1413085106) lists it as 4.8 out of 5.

<comment><AUTHOR> Unfortunately, yes:

[https://itunes.apple.com/lookup?id=1413085106](https://itunes.apple.com/lookup?id=1413085106)

However, since that API is very barebones and I'm scraping the page anyway, I'll scrape the rating as well, thank you for the heads up.

</comment></comment></comment></comment></comment></comment><comment><USER69> No IAP and no ads? How does a game studio should earn money then? Knowing the fact that business model of games are moving to free to play and than players are now reluctant more than ever to pay a decent price for a game but prefer spend 5x more little by little? Do you intend to reverse the trend? Real question, no trolling.

How a game studio can make money with a F2P game? Or how can we make money from a free 2 play NoBullshit™ game.

Disclaimer: I'm a game developer, I make a MMO F2P mobile game with IAP and ads.

EDIT: I'm not trying to discuss why a F2P with IAP and ads is not always a Bullshit game, you guess that I'm trying to do things well.

<comment><USER70> Just charge for the game. Most of the games listed here are $2-$5 dollars.

I imagine the lowest-bullshit way to sustain an MMO would be a normal subscription. Though I'm not sure this is the list for you, regardless.

<comment><USER69> Well if mandatory subscription is not bullshit then why not. But i do prefer to offer the game for free so everybody can enjoy it. Mandatory sub is a huge toll in term of marketing. If you are not Blizzard then it's really harder to market fit with less players. Another argument against sub (for me) is that the game will be much more fun with more players.

<comment><USER59> Being able to pay to remove adds is OK according to the site, he refers to it as a demo or trial.

So long as you can pay to get rid of ads and the IAP aren't pay-to-win (Warframe does this pretty well) I'd argue it's not Bullshit.

<comment><USER71> I agree Warframe is a "No-Bullshit" game but you still need real money to buy slots for weapons and Warframes. This is a game where you are supposed to acquire as many of those as possible to complete your collection kinda like Pokemon. It's more of a pay-as-you-go model.

</comment></comment></comment></comment></comment><comment><USER72> This is great! As a parent I try to screen for good apps but I definitely prefer a database.

I'd love to share this with my kids but would prefer a profanity-free site to share...

</comment><comment><USER73> Huge huge upvote from me. So dead tired of IAP for my 7 year old daughter.. The amount of money wasted on crap in Toca world or similar.. Thank you!

<comment><USER73> Please add an "added date" and ability to sort by that date to only see new entries. I've just looked through 10 pages of games. When I come back next time, I want to view only the ones added recently, so I don't have to look at all the same ones again. :-)

<comment><AUTHOR> It's not in the UI yet (because I can't spare a column), but you can get it if you change the URL:

[https://nobsgames.stavros.io/android/?s=added](https://nobsgames.stavros.io/android/?s=added)

</comment></comment></comment><comment><USER74> I like the list! I wish it was more usable on my actual mobile, though. There's lots of inefficient use of space and strange word wrapping.

Good start in any case!

</comment><comment><USER75> Wow, I was thinking about why its still impossible to find honest games on android! This is just what I need!

</comment><comment><USER76> I think you should broaden your categorization logic. One app idea I've never had time to start was to make (basically your project) but with also the intent to help filter by specific attributes like:

\- offline play

\- ads

\- ads removable by IAP

\- no gambling via IAP

\- multiplayer

\- 2 player online (1v1)

\- 2 player online (co op)

\- 2 player same device

\- asynchronous multiplayer (like modern play by email, e.g. words with friends)

\- not a farmville clone (almost all games trying to catch simcity SEO on android are actually farmville clone shitware).

\- no paywalls

\- no pay to win

\- native of html5

\- turn based

\- real time

\- board game

\- 2d

\- 3d

The problem is it's really hard to find good games in the android store because every search result is littered with child gambling addiction shitware, or the specific detail isn't isn't indexed at all anywhere.

</comment><comment><USER77> I love seeing this become a project after seeing the tweet that (maybe?) started it. Good job SK!

<comment><AUTHOR> Thanks! If I remember correctly, that tweet was probably nearer the end, though my threshold for building something after complaining about it is rather low these days

<comment><USER78> Stavros you read my mind with this app. <3

<comment><AUTHOR> <3

</comment></comment></comment></comment><comment><USER79> Awesome website! Great work, it would be nice to have a sort parameter to sort by score or price.

<comment><AUTHOR> Thanks! Yes, I really need to add sorting... I'll do that next, thank you.

</comment></comment><comment><USER14> The ability to sort by rating alone is a gesture Google lacks, that alone makes this a joy.

</comment><comment><USER80> I made something similar a few years ago although for Android only.

playworthy.io

</comment><comment><USER81> Man, I miss the days of simple tabled listing, relevant information and scroll.

thanks for this!

</comment><comment><USER82> A bit of ui advice — you can tell what phone I'm browsing on from user agent screen. You should default to showing me the right games right on the landing page.

<comment><AUTHOR> Thanks for the feedback, I think it would be better if I let the user choose since I personally want to look at both lists sometimes (or I'm on the PC). Besides, it's very easy to just bookmark the platform you want and go there, but I will consider it.

</comment></comment><comment><USER83> Cool!

Sorting by release time would be nice to see new stuff.

</comment><comment><USER84> Reminds me of Honest Android Games.

</comment><comment><USER85> Nice job. This is awesome.

</comment><comment><USER86> Nice idea, thanks!

</comment><comment><USER23> Clever idea. I'm curious why you decided to allow games with DLC though. That's technically an In-App Purchase. I get it's not a Consumable IAP, but it's still IAP.

Also you can probably add just about any modern (i.e. non-Hasbro) board game conversion to this list. Almost all of them charge a fee up front and won't have anything more than some DLC for their expansions. Like Ticket to Ride, Carcassonne, Through the Ages, etc.

I'm actually working on a mobile game in my spare time right now, and while I normally like to charge money for them I thought I'd try the IAP route this time, but I wasn't planning on making it anywhere near as obnoxious as most IAP games.

Ads you can pay a few bucks to remove, then a couple of consumables that are optional and you can earn during a game anyway if you're lucky, but can buy more if you want (it's a push your luck game, so luck is part of the design), that's about it.

I'm not looking to make all of the money in the world like these big companies are, just hopefully enough to make some side income and maybe eventually switch to making games full time.

I tried playing a Jeopardy game recently, and it just bombards you with screens of crap constantly. Here's a screen where you can pay to add an item for a round! Use your items to help you answer a question slightly easier! Oh you won! Let's update your win streak! (or Oh no! you lost, you're about to go to 0 on your win streak, but if you pay, you can keep it up, and you'll get a reward if you keep it going enough!), then here's some special event that earns you some random nonsense for getting a question right! here's a level up screen! here's a screen that pesters you about something else (I don't know, I lost track after awhile). Just on and on, and in your face. I can't believe people will spend money for these stupid win streaks and whatnot.

So yeah, I'm hoping mine doesn't come across as obnoxious (obviously it wouldn't qualify for the No-Bullshit list, though). And if it doesn't do well, at least it helped me get back in the swing of making mobile games again (it's been like 6 years).

Good luck with your website, it looks nice! If you can add a few extra filters to it, you might have better discoverability than the Apple App Store, which has been too "Winner-Take-All because we refuse to highlight more than a handful of games or give proper filtering options" for forever.

<comment><AUTHOR> > Clever idea. I'm curious why you decided to allow games with DLC though. > That's technically an In-App Purchase. I get it's not a Consumable IAP, but > it's still IAP.

That's why I called it "No-Bullshit Games" instead of "No-IAP games" :P

> Ads you can pay a few bucks to remove

That's fine by me.

> then a couple of consumables that are optional and you can earn during a > game anyway if you're lucky, but can buy more if you want (it's a push your > luck game, so luck is part of the design)

That's where I kind of start to consider the game "bullshit", I want to play and enjoy myself, not have constant FOMO of what could be if only I'd spent some more money. That said, it doesn't sound nearly as annoying as some of the crap I've installed.

> yeah, I'm hoping mine doesn't come across as obnoxious (obviously it > wouldn't qualify for the No-Bullshit list, though).

Oh, I didn't read this far before starting the reply :P I hope so too, and yeah, it probably wouldn't qualify.

Good luck with the game, I hope it goes well!

<comment><USER23> > That's where I kind of start to consider the game "bullshit", I want to play > and enjoy myself, not have constant FOMO of what could be if only I'd spent > some more money.

It probably won't be too much of a FOMO thing really. The game is mainly just a "see how far you get" game, kind of like a Flappy Bird or Temple Run type game, but choice based, not dexterity based.

If you choose poorly you can lose pretty quickly, but then you can just start the game over again if you want. But if you're like "wow, this is the furthest I've been, let's go for it this time!" or whatever, and you burned through the items that you earned during the course of the game, well you could just see if you get lucky and get farther, or you can spend money to get a bundle of items help ensure you survive a bit longer.

But the game is designed that if you keep making the right choices you can continue indefinitely (in practice, though, you will almost certainly pick wrong enough times at some point... I've simulated it, and with 100,000+ simulations, it doesn't get further than a certain point, and it's super rare to get that high).

Personally it's not something I ever spend money on in these things, but I'm pretty anti-IAP for my own personal use and have rarely spent money on IAP in general, but I enjoy playing the game just to see how far I can get just with the items I earn during the game, so I'm hoping even some players that are anti-IAP will enjoy the game anyway.

Because ultimately I'm trying to make a fun game, just add some way to make some money while not charging up front for it.

<comment><USER29> > If you choose poorly you can lose pretty quickly, but then you can just > start the game over again if you want. But if you're like "wow, this is the > furthest I've been, let's go for it this time!" or whatever, and you burned > through the items that you earned during the course of the game, well you > could just see if you get lucky and get farther, or you can spend money to > get a bundle of items help ensure you survive a bit longer.

... actually, my assumption will be that you designed the game to require purchasing those items, and I won't even install it :)

It's not only that I have to believe you when you say they're not required, but even if i do, I have to believe you won't sneakily - or not so sneakily - change things in the next update.

It was bad enough when EA bought Popcap and my paid for Plants vs Zombies turned into some bullshit with IAPs.

<comment><USER23> Yeah, that sucks. Plants vs Zombies should have never gone IAP.

It's fine that you don't trust that it won't change. That's probably a good thing overall to have that skepticism.

This is my first real experiment with designing a free game that isn't just a free flash game with zero monetization that I just put out there and let millions of people play without getting any income for it (what I used to do 15+ years ago...basically just gave a lot of free money to flash game websites that did have ads).

I've worked on a F2P game before at a video game company and it did all those terrible tricks and I didn't feel to happy working on it, was always hoping we'd get a new client for more interesting and fun games, but it never ended up happening before they had to do major layoffs.

I'm not claiming I won't ever do something that you personally won't like, this is mainly just what I'm thinking now. But I'm hoping that being less obnoxious will earn me some more good will than trying to squeeze every last dime out of players like big companies do. I'm just one guy making games outside of my day job, here.</comment></comment></comment></comment></comment>


Team Morale: Myths and Reality - <AUTHOR> http://www.yegor256.com/2015/03/02/team-morale-myths-and-reality.html?2015-09 <comment><USER2> The first point about firing fast reminded me of this quote:

"One irresponsible programmer can keep any five top-notch programmers busy." — Eric Evans

<comment><AUTHOR> Yes and no :) If they are really top-notch, they won't allow him/her to keep them busy for nothing. They will find right mechanisms to protect their work and their quality against random mistakes.</comment></comment>


Block Helpers in Rails 3 - <AUTHOR> http://timeless.judofyr.net/block-helpers-in-rails3 <comment><USER2> Perhaps a better way to implement this would be to use Ruby's string interpolation, which I'm pretty sure allows arbitrary expressions and unlimited levels of nesting. For example, this ERB document:

      <html>
      <%= form_for @stuff do |f| %>
        <%= f.text_field :things %>
      <% end %>
      </html>

would be transformed into this Ruby:

      _buffer << "
      <html>
      #{ form_for @stuff do |f|
        _buffer << " #{ f.text_field :things } "
      end }
      </html>
      "

So, ERB goes back to being a very simple transformation with no special cases and you can use any partial syntax in <%= %> blocks that would make sense.

EDIT: Ok, I'm pretty much giving up on this as I can't think of a good enough solution. The two best options I came up with are:

1\. Feed the embedded code to Ripper as it comes in and use that to keep track of the lexical context. Ripper is pretty fast so it might not be a significant performance hit, but it only works in Ruby 1.9 and I don't know if a comparable parser for 1.8 exists.

2\. Use a setter method like _buf= to append to the output buffer, and don't wrap the embedded expressions in parens. Because the = operator has such low precendence, the generated code will almost always behave as intended, but there are a few lower precendence operators that will break like "and", "or", and postfix "if", "unless", "while" and "until".

<comment><USER3> Sure, any optimizing template engine _would_ use Ruby's string interpolation, but it would still end up with this:

        _buffer << "<html>
        #{ form_for @stuff do |f| }
          #{ f.text_field :things }
        #{ end }
        </html>"

How are ERB going to figure out there's an opening of a block unless it actually parses the expression? ERB only sees this:

        * "<html>"
        * Output: form_for @stuff do |f|
        * Output: f.text_field :things
        * Block:  end
        * "</html>"

Just a plain list, not a tree.

<comment><USER2> Indeed, I'm hacking on it now and it seems like there is no way to avoid detecting complete vs incomplete expressions. I guess the question then becomes, can the expressions be classified in a way that is both fast and correct? Let's see if I can find a way.

</comment></comment></comment><comment><USER4> The author seems to be unfamiliar with the "expression" and "statement" conventions used by imperative languages. An expression is something which has a value, whereas a statement describes an action that doesn't (necessarily) have a result. <%= %> expects an _expression_ ie something that has a value. <% %> expects a _statement_ (or series of statements), which don't necessarily have a value.

<comment><USER2> What makes you think the author is unfamiliar with this?

<comment><USER4> Since the author admittedly made up the term "complete expression" whose definition mirrors what I would expect for just "expression". He also used the word "subexpression" to describe parts of something that would otherwise be called a "statement".

Though I think his vocabulary is a little confusing, after re-reading I think I get what he's actually complaining about. It is really awkward for a <%= %> tag to not actually be a self-contained, parse-able expression. On the other hand, you'd really rather have things like form_for _return_ the text to print, not just print it (thus allowing the use of the <%= %> instead of <% %>). It's just one of those annoying situations where attempting to be pure and elegant results in an ugly kludge in the real world.

</comment></comment></comment><comment><USER5> well, thankfully lots of us use haml, not erb, so we don't care all that much</comment>


OnHollywood Top 100 Companies (Heyzap and OMGPOP) - <AUTHOR> http://alwayson.goingon.com/permalink/post/31890

<comment><USER2> Congratulations!

</comment><comment><USER3> Yea, next to all the good names in the industry, good stuff!

</comment><comment><USER4> That's great!</comment>


Christmas Invented the Secular World–and They've Been at Odds Ever Since - <AUTHOR> https://www.wsj.com/articles/christmas-invented-the-secular-worldand-is-now-besieged-by-it-11576857485 <comment><USER2> Per peave: Christmas did not do anything.

I sure wish this writing form would see less use.

<comment><AUTHOR> "Personification is an anthropomorphic metaphor in which a thing or abstraction is represented as a person."

[https://en.wikipedia.org/wiki/Personification?wprov=sfti1](https://en.wikipedia.org/wiki/Personification?wprov=sfti1)

<comment><USER2> Yup. I didn't say it was invalid. Just that it would be used less.

Some discussions would benefit from more direct expression. Who did, why they did, etc...</comment></comment></comment>


Interview with Evan You of Vue.js [audio] - <AUTHOR> https://www.indiehackers.com/podcast/078-evan-you-of-vue <comment><USER2> Scala</comment>


Generate command-line completions using a simple DSL - <AUTHOR> https://github.com/mbrubeck/compleat <comment><USER2> Sweet! Similar to docopt. It's humbling to see how short this can be in Haskell, compared to my C++ code [https://github.com/ridiculousfish/docopt_fish](https://github.com/ridiculousfish/docopt_fish) (though in my defense the C++ version is more featureful, with better error messages).

We're likely to build this sort of thing in directly to the fish shell: [https://github.com/fish-shell/fish-shell/issues/478](https://github.com/fish- shell/fish-shell/issues/478) . From a usage spec, you get tab-completions, syntax highlighting, argument parsing and validation, and user help.

It's sort of silly that there is no machine-parseable usage spec for common Unix commands. Once the docopt support is integrated, I hope to create a repository of usage specs that anyone can contribute to, similar to explainshell.com

<comment><USER3> > It's sort of silly that there is no machine-parseable usage spec for common > Unix commands

man pages can qualify for a usage spec. Projects like explainshell.com[1] parse these quite successfully.

[1][http://explainshell.com](http://explainshell.com)

</comment></comment><comment><USER4> I prefer to read the options directly from the commands and feed them into the auto completions, some examples: [https://github.com/chilicuil/learn/tree/master/autocp/comple...](https://github.com/chilicuil/learn/tree/master/autocp/completions)

</comment><comment><USER5> This has come at a good time. I've been using git, composer and Laravel's artisan thinking that this sort of thing would improve my productivity massively.

File name completions are great but option/sub-command completions could really speed up my workflow.

</comment><comment><USER6> Nice to see tools make tasks easier, but I do not like the trend of using every other new (I know Haskell is not new) language for it. I don't need the large download and compile time for a simple tool.

But great work!</comment>