Google+ as your blog (using G+ API) - <AUTHOR> http://www.minimali.se/

<comment><USER2> I think it's a bad idea hosting your blog on Google+.

It kind of depends on what type of blog you have of course - if you're hosting a blog of opinions that are a little longer that what you'd write on Twitter, then sure, Google+ is all you need.

Otherwise you need control.

Did you know for instance that Wordpress.com does not allow advertising of any kind without profit sharing with them? And many of us don't expect any profits from our blog, but it is sure nice to throw an Amazon link to a book that you'd really like to recommend anyway, and get a month worth of hosting back.

And sure, Google+ is not Wordpress.com, but IMHO they are worse as their primary business is not hosting blogs. Even if the product is new it already has a history of blocked accounts (WTF is that all about?). If Google blocks you, your identity is gone.

This is not how the web should work. You can host your blog in GitHub pages, static content is all you ever need. You're a developer, so you don't need a stupid WYSIWYG interface that never works as you expect it to. You can write Markdown or Textile or plain HTML and keep it in a Git repository.

For comments you can just use Facebook or Disqus, or implement your own quick and dirty solution in PHP or something cheap for starters, like GAE or Heroku. Well, Heroku is not cheap, but you can host 250MB worth of comments in CouchDB for free by installing an add-on.

Personally I have my own $20 Linode. I host there 2 blogs and a personal app I'm working on. Nginx is a very light process, it's easy to setup and can withstand an HN-effect on only a small instance. It's also good enough for a Wordpress install if I wanted that, but I just don't bother with Wordpress.

Don't host your blog content on third-party providers. Get your own domain, host static content for free or pay for a small instance - make sure you can rebuild that blog if banned from the service provider - and only submit the links to Google+ or Facebook or whatever, otherwise you'll later regret it.

<comment><USER3> Someone should just create a script to backup the content of Google+ posts on your blog. Could just save it the first time its loaded on the blog via the API with an option to manually trigger a resave on a post.

Sure Google could ban me, delete my content, or delete my account. But a competent hacker could write some code that did what I suggested and post it to Github for others. It would probably be less work (ok maybe slightly more) than setting up and managing your own Wordpress install.

Maybe I've found a new weekend project.

<comment><USER2> You don't get it - it's not only about content, it's also about identity.

It's about owning your own domain such that links spread through the web (that also added to your ranking in search engines) will not be invalidated when shit happens.

Your content should be your property, including the URL as that's an important part of said content and comments too.

<comment><USER3> How is it that I don't get it? I can own my own domain and still use Google+ to power my blog just fine. I can automatically backup and store my Google+ posts in case Google goes nuts. In the process of backing up those posts, I can also store the Google+ ID so I can ensure that I can always keep my back- links intact.

Whats the problem?

</comment></comment></comment></comment><comment><USER4> G+, as Wave did, supports more vectors of communication than other tools, and this may be an achilles heel. Regular social media consumers, as much as we bitch about Facebook and Twitter and co, in truth find it convenient to be constrained to certain patterns; simply because the mental and temporal expense of making a communication pattern decision (along with the associated weighing of privacy risks etc) is greater than the perceived (low) value of each microblog entry / sharable communication.

Perhaps I'm just saying "not enough people care enough".

<comment><USER5> Could you expand on that? Isn't twitter's big "thing" that it created an ecosystem of apps and sites all using the service in their own unique ways?

</comment></comment><comment><USER6> @antimatter15 did preliminary work to do exactly this with wave and wordpress, comments and all. it never took off. i actually used some of @antimatter15's work to use wave as a draft management system, and i can publish from wave to my blog in one click.

This has value to me for various reasons, namely I blog a lot more since the wave client is awesome for draft management. I'll probably move to wordpress soon because i don't want to maintain my own blogging software.

I'm exploring possibilities for incorporating plus into my online identity. But, it's not going to host a programming blog until I can embed snippets. I hear rich text or HTML is coming soon. Google obviously sees the potential, and is good at learning from experience, I don't think they will screw it up this time.

</comment><comment><USER7> I like thus idea, especially if comments can be pulled across to the Web site version of the blog. I think it's become clear to me that "something" is going to happen to the traditional blog, a pro version of a G+ profile just might be it.

Will have to chew on this, thanks for the nudge.

<comment><USER8> Comments are being pulled to the website. Just that you can post a comment on the website as of now, because of G+ API limitation.

</comment></comment><comment><USER9> I think Google+ is supposed to be a medium for sharing content, not for creating content. And while we've seen some blog-like posts there, sharing a link to your blog/tumblr/.. looks like a better option. Why? Because When you post it on google+, you don't have the many extras you can get in a dedicated blog. Especially the sharing buttons "tweet", "like", "digg", "stumble", etc. You only get a +1. In short - it takes a lot of control and a lot of options, and gives you nothing back.

</comment><comment><USER10> I would happily use G+ as my blog for programming related things, but I would need to be able to make posts public and not spam my non-technical circles. Is that possible?

<comment><USER11> I'd like the same feature but I don't think it's possible right now. FWIW, I asked whether this was possible on Quora awhile back and got a negative response: [http://www.quora.com/Is-there-a-way-to-make-a- Google+-post-p...](http://www.quora.com/Is-there-a-way-to-make-a-Google+-post- public-without-pushing-it-to-everyone-in-my-circles)

</comment></comment><comment><USER12> I hope G+ will evolve into a nice blogging tool by itself. The amount of G+ posts linked to from HN and other aggregators indicate the potential is there. I wish it were able to format code nicely and posts' urls included a title instead of a meaningless id (for SEO as well as humans).

</comment><comment><USER13> I'm glad this has created a bit of discussion surrounding the possibility of using G+ as a primary blogging platform. I put together minimali.se over a couple of nights just as a concept, but many people seem quite drawn to the idea.

Personally I don't believe by itself Google+ offers enough to totally forfeit your current blog, but what it does do it does well. An implementation like this allows you to have the best of both worlds. I'm hoping in time the API will allow writes (in the form of comments at least) to make it possible to comment from external sources (like a blog), yet keep the actual engagement in one place.

</comment><comment><USER14> I tried to do the same. When G+ made the first ever public release of the G+ API, My first thought was to create a nice blog out of the G+ public posts.

But, it didn't go well as I felt it wouldn't be better to compromise with the limitations.

</comment><comment><USER15> This looks rather cool, and I'd be willing to outsource the guts of my bog to Google+, leaving me with just the UI. But it looks to me like there's still no way to post to Google+ via the API, which makes this a non-starter for me.

</comment><comment><USER16> Sounds like G+ is settling for competing with tumblr instead of facebook.

<comment><USER17> This isn't G+ "settling" for anything. This is a user's clever way of using the G+ API to present G+ posts on his outside blog.

</comment></comment><comment><USER18> On a semi-unrelated note, that blog design is _beautiful_!

<comment><USER6> looks like shit in xp/chrome. moral of this story: test your damn designs.

<comment><USER19> Maybe the moral of the story is that you should upgrade your OS.

<comment><USER6> i was at my mother's house. -50</comment></comment></comment></comment>


Ask HN: How do you track business expenses? - <AUTHOR>

Hey People,<p>I was curious to see what other startups are using to track their business expenses, accounting, ect.  Is there a service out there like Mint.com that can read your paypal info and chop it up into categories for easy accounting? <comment><USER2> <http://www.indinero.com> \- mint.com for small businesses

<comment><AUTHOR> Looks awesome and see that Ycomb uses is too - I'll def take a look, thx!

<comment><USER2> indinero is a ycombinator company :)

<comment><AUTHOR> Figured, haha

</comment></comment></comment></comment><comment><USER3> I tried a ton of things and settled on xero.com it works well. It also has a ton of documentation which explains both how and why. Reading the docs and using the app, teaches you accounting. Pretty neat trick.

If you're not based in the US, then no US based accounting tool will work for you. The americans don't get VAT or multicurrency accounting. Since it's not there from the start, it gets added eventually as a clunky after thought. US companies also very heavily on Yodlee, if your bank isn't in there, you're out of luck. With xero we wrote our own bridge to the bank because they provided an api.

I've got no association with xero, other than being a customer.

<comment><AUTHOR> Xero definitely looks interesting - another one I need to take a look at in depth, thx!

</comment></comment><comment><AUTHOR> Update:

I've checked out the suggested sites. I started with Xero, but midway through the beginning of the process of attaching my accounts, I felt like they weren't going to achieve exactly what I wanted. I switched over to indinero and I've just finished attaching my accounts.

Indinero is pretty cool. It's what I wanted, but it has a lot of growing up to do. I'll have to send some feedback over to the guys and suggest some small shortcuts to kill my impatience.

Edit: Double thumbs up though - awesome service you guys have over there!

</comment><comment><USER4> I use Quickbooks 2011 desktop. It's pretty 1995 when it comes to user interface, but it actually does everything I need and want, and I wouldn't move without very good reason. It has the online connecting stuff that you're talking about, but I've heard from a lot of CPAs that using that feature correctly is more difficult than it sounds.

Business accounting is one of the most non-modern fields I've ever seen.

<comment><AUTHOR> I use Quickbooks currently and it is great. But, it's robust, unnecessary, and I'm thinking that there are others that are overwhelmed and could use an easy service - especially for startups. I'm not an accountant or in that field, so I hardly pay attention. I was hoping to flush out some hidden gem I wasn't aware of, otherwise, quickbooks gets the job done.

</comment></comment><comment><USER5> _(Shameless Plug)_ We are working on a service that might interest you: <http://costjar.com>

<comment><AUTHOR> No worries on the plug, I'm asking for sites in this area :) I'll def check it out, thx.</comment></comment>


WHO says video games are "digital heroin" - <AUTHOR> http://rss.cnn.com/~r/rss/cnn_topstories/~3/TWkVIk5hMRI/index.html <comment><USER2> Hey now. The title is absolute clickbait. WHO does not say video games are "digital heroin". There is a single reference to heroin in the beginning of the article: "Watching as a video game ensnares their child, many a parent has grumbled about "digital heroin," likening the flashing images to one of the world's most addictive substances."

The article is about WHO including videogame addiction in ICD as a mental health state, and the submission title should reflect that.

</comment><comment><USER3> As crazy as these articles have been about gaming being a medical condition, I believe it. I'm in my early 20s, ever since I was in my mid teens I was addicted to video games. All through grade school and in college now, I struggle to put the controller down. I routinely don't get enough sleep because I can't stop playing. As soon as I come home I am on, and I won't get off until the early hours of the morning. It's a mixture of reasons why I guess; it keeps my mind off of reality, I enjoy the satisfaction of winning frequently, and it fulfills my desire of being in a progression based system. Achievements, knowing that my actions will eventually unlock achievements and level-ups, it keeps me going. I can't play games that don't have progression systems of some sort because I feel like without progression, it's a waste of time. Sure you can kind of get that in the real world, but it's harder and takes so much longer. Why do that when I have an easy alternative sitting on my desk? I really want to break my addiction to gaming as it really does affect some parts of my life, especially academic.

</comment><comment><USER4> Personally I agree with the WHO and think that gaming addiction is a much larger problem than we currently think it is.

There are a lot of aspects to it but I think the biggest one is just that video games are _ridiculously_ stimulating compared to other activities. I have similar issues with TV shows now that binge watching entire seasons or shows at a time is easy, and with browsing certain parts of the internet like Reddit and HN.

Going from having your brain being heavily stimulated to being less stimulated or not stimulated at all is hard. It doesn't feel good. That's why it's hard to not "just watch one more episode" or "just play one more game" even though I _know_ it's not going to be just one more.

The desire to avoid understimulation bleeds over into many aspects of your life. It's hard to writing the next part of your CRUD app when you could be scrolling through Reddit comments. It's even hard to read a book or play guitar, which I know I will enjoy, when I could be doing something more stimulating instead.

<comment><USER5> Based on market size and broadness of appeal, I think that video games in general are significantly less addictive than social media or gambling, which have much wider appeal and greater impact. _some_ video games exploit gambling addictions, and are easily regulated (via bans on unlimited microtransactions for example, which remove the incentive for game designers to generate "whales")

</comment></comment><comment><USER6> Im assuming they are referring specifically to exploitative games like the mobile idle genre where you always have to do something and you really cant leave the game alone if you want to "maximize" everything.

Im playing Bloodborne right now and its 2-4 hours a day just because of how the game is made. I will die horribly and just put the game away for the day.

Other games, like Minecraft, is just a co-op sandbox. A social hangout. All it needs is a treadmill, and its good enough for me.

<comment><USER4> The three most addictive categories in my opinion, and in no particular order, are mobile games, competitive games (League of Legends, DOTA, Overwatch), and MMOs (World of Warcraft, EVE, Guild Wars, RuneScape).

You are correct that games like Bloodborne and Minecraft won't be a problem for most people, but for some they certainly will be. Any game that can be described as fun for some segment of the population will also be addictive to a small subset, because the same qualities that make it fun make it addictive to some people.

</comment></comment><comment><USER7> Pete Townsend really needs to stop with this social commentary.</comment>


U.S. government taps Cray to build supercomputer to manage nuclear weapons - <AUTHOR> http://www.techtimes.com/articles/10205/20140711/u-s-government-taps-cray-to-build-trinity-supercomputer-to-manage-nuclear-weapons.htm

<comment><AUTHOR> Here's the press release [http://investors.cray.com/phoenix.zhtml?c=98390&p=irol- newsA...](http://investors.cray.com/phoenix.zhtml?c=98390&p=irol- newsArticle&ID=1946457&highlight=)

</comment><comment><AUTHOR> I so wanted to edit the title of this post to development of SkyNet begins.</comment>


The Pinterest Paradox: Cupcakes and Toxicity - <AUTHOR> https://medium.com/@francoise_93266/the-pinterest-paradox-cupcakes-and-toxicity-57ed6bd76960 <comment><USER2> It's pretty demoralizing to see these kinds of stories come out so often at so many different companies.

I agree with the author that companies should start looking harder at retention; so much of the attention/effort right now is to spent on the beginning of the pipeline, but it's not effective if everyone quits in 10 years.

</comment><comment><USER3> This is a well-written account of the author's experience as COO. I hope her next bosses/colleagues don't shortchange her like Pinterest did.

</comment><comment><USER4> Even though I empathize Francoise Brougher's experience, I don't think this has much to do with gender bias. First, reading the article again, one can completely replace the gender points and the entire argument still holds. This is just typical company politics and employees vs founders vs senior leadership fights. I doubt the author may also know this but just use gender bias to catch eyes and align with the main stream discussion about gender inequality. Second, how do you know Ben and the other two executives are men? They could be LGBTQ. What if Ben and the other two men stood out and declared themselves as female? Did the author have gender bias?

</comment><comment><USER5> I empathize so deeply. My selfish (and imperfect) solution has been to seek out pockets of equity and support and proactively leave toxic environments behind - but this also means forgoing opportunities (that I shouldn't have to give up).

Let's all pledge to speak up, so we can at least start creating visibility for systemic change!</comment>


David Foster Wallace's Pen Pal - <AUTHOR> https://www.theparisreview.org/blog/2019/08/09/david-foster-wallaces-pen-pal/ <comment><USER2> Beautiful piece. What a lucky person to be able to correspond with DFW. Now I wish letters would be more common still.

</comment><comment><USER3> How do others feel about her decision to sell the letters? Personally I'm a bit perturbed by it, but in the same position, I'd have a hard time turning down $75,000.

<comment><USER4> If I look at it reasonably, I share being slightly perturbed though like you, I don't know that I would turn down $75k. If I look at it with my romantic, fictional eye it almost seems like a DFW plot device. You've got a talented letter writer who adopted an unending stream of identities in college, found herself in a difficult marriage and began writing an author in the midst of his struggles with powerful demons. They never met and the author terminated their relationship about a year before killing himself.

Years later, her house burns, her husband finds the letters intact and they sell them. Heck, if she bought a sailboat with the money and toured the Mediterranean, it would be a hell of a pitch...

</comment></comment><comment><USER5> Is infinite jest good?

<comment><USER6> There is a certain amount of absurdism that you need to buy into, but once you do there is so much to the book (it's also quite funny). DFW dives into themes of addiction, mental health, modernism, etc. He clearly struggled with a lot of these ideas in his own life, and he captures it so well in the cast of characters he creates. I personally found the first 250 pages a little tough, but once I got through that it became hard to put it down.

<comment><USER7> It's a book that really needs to be read twice, if only to fully appreciate those first 250 pages. They go from not making sense at all to being quite good.</comment></comment></comment>


Ask HN:  What's the datastore behind HN? - <AUTHOR>

I've noticed that the front page loads significantly faster than the threaded comments page.
I'd be interested in a discussion as to what causes the relative slowness of the discussions.
Is it just homepage caching? <comment><USER2> S-expressions stored in files, lazily loaded, and occasionally gced.

There are many levels of caching, but it could simply be that the homepage has 30 things on it while a threads page might have hundreds.

<comment><USER3> PG, may I distribute my scrape of HN?

<comment><USER2> I don't personally have any objection to it but it sounds like some users do.</comment></comment></comment>


Cheating in Atlanta: A Teachable Moment - <AUTHOR> http://www.wsj.com/articles/cheating-in-atlanta-a-teachable-moment-1428521500

<comment><USER2> Standard WSJ hit piece. It's all the fault of unions.

In spite of the fact that out of 178 people the _superintendent_ and _34_ principals were in on it. People very much _NOT_ in the teacher's union and generally hostile to it.

But, hey, an actual conversation about education, socioeconomics, and achievement? Can't have that--people might actually figure out that testing is a gigantic Republican boondoggle.

Just blame the unions--it's what our readership want.

<comment><USER3> Okay, let's have that "actual conversation" \-- if testing is just a giant boondoggle, what method(s) do you favor for measuring education and achievement in a socioeconomic-neutral fashion?

<comment><USER2> The problem isn't testing. Testing is fine and is actually necessary. Even testing with socioeconomic bias is okay since you can norm to historic values to see trends.

The problem occurs at two points:

1) when you then use the results of those tests more broadly than applicable.

Comparing results in the same school year on year is generally valid (although you have to watch out for events like a big employer closing). Comparing two different schools close in location requires a bit of finesse. Comparing schools in completely different locations with completely different demographics is generally useless--yet NCLB effectively tries to lump all schools together with the same tests.

2) when you apply those tests to provide punitive measures

Why don't people get that doing this is going distort the system? Software people wail continuously about "you can't judge my craft with objective measures." Practically any measure in software I can dream up: number of bugs fixed, number of bugs found, number of commits, number of lines of code written, etc. will be met with cries of "that doesn't measure my ability" _AND_ "if you promote on those measures, people will start gaming the measures". And they will be right.

Why can't people see that the _exact_ same thing will occur in teaching?

The standard complaint is that only programmers can judge programmers and that non-programmer managers can't judge correctly. Yet, with respect to teaching, we magically think that any moron can judge teaching ability and that non- teaching managers are well equipped to judge teachers.

This is one of my hot buttons. Tech folks are so very quick to defend their own area with "you can't objectively judge and punish me" and so quick to apply "but I can objectively judge and punish you."

And, even when a school is doing things right, it's _really_ hard to keep it going. Positive results take years to show up unequivocally while negative results can appear almost immediately.

See: [http://www.thisamericanlife.org/radio- archives/episode/275/t...](http://www.thisamericanlife.org/radio- archives/episode/275/transcript)

The bit about how quickly things dropped one year when they didn't have parents come in 3-times-a-year to review report cards is particularly enlightening. Achievement is getting a _lot_ of little things right, and only the teachers can see when they're right and when they're wrong.

By contrast, it took 10 _years_ to move from 15% passing reading and math to 66%. That's roughly 5% a year, and I suspect the first years were slower than that. 5% is statistical noise to a test--which means that all of the things that were occurring in the first years would have been filtered out by a test. Not the result you wanted.

So, given that achievement at that school is now dropping, what does the test tell us to do? Where does the test say: "Whoops. The teachers are the same, so A) either the children got worse or B) we need to unroll every single change made by administrators in the last year." Where is _THAT_ application of the test?

Now do you see the problem with testing?

<comment><USER3> > Practically any measure in software I can dream up ... will be met with > cries of "that doesn't measure my ability" AND "if you promote on those > measures, people will start gaming the measures". And they will be right.

Sure, any measurement system will fail, but there are means to make them more robust. One way is to make it so that what is measured is what is desired: gaming the system results in more of the desired behavior. Consider a support desk measured not by time-to-resolution or call volume, but post-resolution surveys: in order to 'game' the measurement, the agents must actively seek to promote customer satisfaction.

Another, more controversial, means for more robust measurements might be an overt, active gamification. Using your example of LoC: instead of unilaterally praising large (or small) work efforts, LoC is used as the measurement in a bid war. I'm not envisioning a particular bid process (silent auction? Liar's dice style round-robin?) but anybody can call BS on the latest bid ... which then holds that bidder to implement. Beat your own estimate for praise, but for punishment you would have to exceed the prior (non-BS) wager. Couple a second bid value (deadline, for example) and the complexities of actively "gaming the system" becomes nigh on impossible.

Between this article about the Atlanta cheating scandal and the NPR story you linked, I wholeheartedly believe that the "standardized test" regimen is currently broken. However, I was hopeful that you might have some suggestions on alternative measurements or ways we could better apply the current ones.

<comment><USER2> Using tests for an "objective measure" is doomed on its face. That's gigantic sign that the people involved are more interested in blame transfer than in progress.

You can use tests for trends. That's a good use of tests. You can use tests for feedback to the individuals directly involved. That's also a good use of tests.

This corresponds to my "software metrics" points. If I suddenly see an uptick in average lines of code committed, I should take a look. If I start seeing a big increase in bugs filed, I should take a look and see what just happened. Most of the time, there's a good explanation. Sometimes, someone is doing something stupid and I need to go fix that. And, rarely, someone is doing something malicious and needs to be fired.

Tests should be used as an indicator to a human to "look here!" However, test results are simply an indicator to a human to exercise judgment--not an objective measure to remove humans from the loop.

The problem with education is that people really don't _want_ to use the tests as "indicators". As in the article I pointed out, that particular school now is having a _decrease_ in results--the tests are indicating with a big, red klaxon that something is going wrong. People should be examining the situation with a magnifying glass to figure out the issues and fix them.

The problem is that "something going wrong" is very clear--a new principal and new directives from the head bureaucrats. Do you think that they will look at the test results and say "Oh, we need to undo these policies and get a new principal?" Unlikely.

Would you like a metric that only ever gets used against you but that your management gets to ignore? Of course not. It's why the complaints by programmers about management are legion.

And that's why teachers hate all this stuff. Somehow, it only ever gets used against the teachers. When the evidence points at the administrators, school board or politicians, it gets ignored.

This isn't even limited to teachers. Physicians oppose the collection of this kind of data about outcomes for the sames reasons--it will very quickly get turned into a ranking system that gets used against doctors rather than for improving outcomes.

</comment></comment></comment></comment></comment><comment><USER4> >> If the environment that produced this horrific behavior in Atlanta is "toxic," blame the people who control that environment, not the testing regime that attempts to hold those people accountable. The teachers unions that run our schools view public education, first and foremost, as a jobs program for adults. That is why the unions fight so hard to keep open failing schools and want seniority—rather than teaching ability—to determine layoffs.

I don't think the author of this piece manages to back up his argument very well. The teachers' union says that the testing regime is flawed, and that the toxic environment is created by it; the author says that the testing regime is "flawed" but not "fatally" so, without substantitively adressing that concern. The "people in charge" of this environment are in turn governed by No Child Left Behind and state/federal regulation and laws -- there's a chain of authority here, and the brokenness of the system can rightly be argued to flow down from the highest policy levels all the way to local middle-management.

>> Would you want your child taught by someone who flunked the certification test five times, let alone 10?

This is a silly argument. How many people take multiple tries to get a driving license? The test either ceritifies you or it doesn't.

>> And would that instructor be more or less likely to resort to changing student test scores to hide his own incompetence?

Absolutely no logical connection, other than a wild assertion by an author clearly hostile to the teachers' union, and it seems to me, teachers in general.

Like it or not, public school teachers in the US are vastly underpaid and overworked (especially in urban school districts with low budgets), and have their ability to teach severely hampered by testing requirements that may or may not be beneficial to their students. The whole system is broken, but demonizing the people that are attempting to educate in these conditions without trying to understand the pressures at play isn't very constructive.

Further reading: [http://www.thisamericanlife.org/radio- archives/episode/275/t...](http://www.thisamericanlife.org/radio- archives/episode/275/transcript)

<comment><USER5> First, the environment was toxic because the school administration was corrupt at the top and the school system had too much influence over the testing. To prevent further such abuse all testing should be done by accredited third party groups.

Second, get off this silly mantra that they are underpaid. In some areas yes, but in Atlanta that is not the case. A simple query of various counties here produces results and for the number of days worked their pay is actually quite good; that and anecdotal being friend with a 10 year teacher who makes good money and who berates the system(which includes the union) for the problems. They cannot fix what they are not allowed too.

<comment><USER6> > all testing should be done by accredited third party groups.

These 'accredited third party groups' would need to be a) accredited, b) be paid. And it's already happening here in the US[0]. What you have now is an overhead of bureaucracy that 'accredits' and outsources the testing to these private companies, who pay call center wages to mark high school exams based on shoddy metrics that are aimed at maximising profits. All the markers are temps/contract, and this accreditation system is essentially a cartel of companies that lobby to ensure their business remains. I cannot see the logic how this can end up benefiting the students.

Secondly, teachers being underpaid is not a mantra - it is a fact [1]. In the US, the worth society places on a job is strongly correlated to the pay. The accreditation and pay, resources and social respect that teachers (do not) receive I wager is directly correlated with the quality of the education students receive. The system is so broken as to rely on standardized testing as to further punish 'under-performing' schools by limiting availability to funding based on scores.

[0] [http://www.theatlantic.com/features/archive/2014/07/why- poor...](http://www.theatlantic.com/features/archive/2014/07/why-poor-schools- cant-win-at-standardized-testing/374287/)

[1] [http://www.nea.org/home/2012-2013-average-starting- teacher-s...](http://www.nea.org/home/2012-2013-average-starting-teacher- salary.html)

<comment><USER5> Neither source you give is reliable, both are heavily biased.

I prefer actual charts from counties that pay, given 190 days of work [http://www.dekalb.k12.ga.us/human-resources/teacher- salary-s...](http://www.dekalb.k12.ga.us/human-resources/teacher-salary- schedule) in a respectable county in Georgia this isn't what I would called underpaid. This is before benefits. Its not hard to find these charts for most counties.

The areas that need attention is all the money spent on administrative people other than teachers. The US has spent increasing amounts of money on education with near zero results.

</comment></comment></comment></comment><comment><USER7> This article is behind a paywall. Previous HN commenters have pointed out that you can get the full text of the article if Google is your referrer. (I.E. you google the article title and click on the result).

</comment><comment><USER8> This is not new, nor is it unexpected[1]. If you incentivize an outcome, people will try to get to that outcome. The problem with No Child Left Behind, is that they (foolishly) presumed that everyone would take the most difficult path to that outcome.

If they wanted to stay with the testing metric framework, they would have been much better off with external testers. However, that still would have teachers "teaching the test" instead of teaching the subject.

[http://www.nydailynews.com/new-york/report-shows-cheating- te...](http://www.nydailynews.com/new-york/report-shows-cheating-teachers- article-1.1249570)</comment>


Show HN: I mixed selling t-shirts with a little bit of game theory - <AUTHOR> http://getnifty.com I had this idea rolling around in my head for the last couple of years, and I finally decided to build the damned thing just to get idea relief.
The backend is a typical LAMP stack with the Symfony2 framework backing the P.  Varnish sits in front of all the Chef managed Linode boxes.  The site will work without Javascript (up until the checkout), and the style degrades really nicely depending on your viewport (try it out by resizing your browser).
I'm open to all comments and critiques, so let me hear them.  And if you are into graphic t-shirts, here is a code for a Hacker News 20% discount: 4803-7940-0816-5604! <comment><AUTHOR> I had this idea rolling around in my head for the last couple of years, and I finally decided to build the damned thing just to get idea relief.

The backend is a typical LAMP stack with the Symfony2 framework backing the P. Varnish sits in front of all the Chef managed Linode boxes. The site will work without Javascript (up until the checkout), and the style degrades really nicely depending on your viewport (try it out by resizing your browser).

I'm open to all comments and critiques, so let me hear them. And if you are into graphic t-shirts, here is a code for a Hacker News 20% discount: 4803-7940-0816-5604!

<comment><USER2> Nice site, just wanted to say I really like the phrase "style degrades" instead of "responsive design." It's much more accurate and I will be using it from now on, thanks.

<comment><USER3> The full idiom is "graceful degradation". It's been common on the web since the 90s, but I think it actually came from networking jargon.

It's not the same as responsive design. Graceful degradation implies a sort of hierarchy, where you subtract features on platforms that don't support them. So if you're using an supercool advanced browser feature, like colored text, you don't break the site for older browsers.

The responsive design idea is really more about _different_ use cases than adapting to a more primitive environment.

<comment><USER2> I know what graceful degradation is.

I'm actually disagreeing with what you are saying: responsive design is such a poor solution to the problem of providing a mobile or tablet site, that it is actually _more_ accurate to refer to it as graceful degradation, rather than as addressing a new use case.

</comment></comment></comment></comment><comment><USER4> I like the idea, but I have the feeling your t-shirts are overpriced.

I had what you could call a t-shirt problem, I purchased over 150 in the space of a year, anyway one common thing I noticed is that a _brand_ (eg: Threadless, Bustedtees) that sold based on merit and not gimmick could sell at a much higher price than somewhere that was relatively unknown or sold based on some sort of gimmick. For example teefury.com is a site that does a sort of similar thing to you with time based sales, they sell at around $10 each but would never do well at $25 each.

My (anecdotal -- myself and friends) understanding of why people aren't comfortable spending $25 on a time-sale t-shirt is that you're selling selling based on 2 things, the t-shirt itself and the idea that it's time-exclusive, this adds pressure. If I purchase a t-shirt from somewhere like Threadless I know it's likely if I wait 2 weeks it's going to be there still, so I don't feel like "I must buy now!" and then I don't feel like I'm paying for something I might not want in a week, whereas if I see a t-shirt on your site with 1 day to go: "That t-shirt is cool! Hmm, but I have to buy it right now... and $25 is a premium t-shirt price... I might not like it in a few days... I'll skip". This behaviour is especially so with the added idea that I'm possibly buying a t-shirt nobody else likes, it makes me think maybe it's just a crappy t-shirt.

Your site is a site that customers would constantly be coming back to, so while you might not make such a good margin on a $12.50 shirt vs. a $25 shirt, it would be made up for in the average customer purchasing 20 shirts a year vs. 5 if they had to be considerate about their purchases.

I'm not sure if I explained that well, if not I can try and re-word it.

<comment><AUTHOR> As a very frequent t-shirt purchaser myself, the reason sites like TeeFury (which I love) do not sell at $25 is because their t-shirt quality, design, and printing style is not anywhere near as nice as Threadless or DesignByHumans. I am hoping Nifty will earn a reputation more like the latter sites than the former.

With that in mind, I will definitely test price points and appreciate the perspective from a fellow t-shirt buyer.

<comment><USER4> That's true (re: quality), I've spent $50 on a few t-shirts from my favourite quality companies (<http://jinx.com> t-shirts wear like a dream)

An idea that might fit with your site would be to offer a shirt of the month deal (bustedtees example: <http://www.bustedtees.com/shirtofthemonth>).

$200 upfront for 12 months of shirts (works out at about $13/m), every third week of the month you generate a random shirt for me from that weeks shirts and if that shirt matches the least popular I also get a bonus shirt (fits with the theme of the main weekly sale) or maybe if I am a subscriber I get double the chance of a bonus shirt (maybe least popular and most popular or least popular and second least popular) or something.

You could even do it like a loss leader type deal, have a yearly subscription for $100 (which would be ridiculously low and pull lots of people in) and then use the marketing from that (people telling their friends about the cool shirt that just arrived, tweeting about it etc. every month).

Although I guess as you're doing t-shirts on demand there's probably not much financial outlay so cash up front might not be worth potentially losing profits.

If your shirt quality is good (I'm going to order a shirt later to find out) then I'd sign up to that sort of deal ($200, or $100) without a second thought because there's nothing better than getting a surprise t-shirt.

<comment><AUTHOR> The t-shirts are of quality, I promise :)

The subscription suggestion is great and might be a better fit for Nifty. I'll have to give some thought.

Another direction I am thinking of going is more clearly separating the purchase from the pick. So you pick your shirt to buy and then make a separate pick for the least popular. I worry the additional UI may complicate things, but it is probably worth testing.

<comment><USER5> No, regardless of UI, I think the dilemma of having to buy yourself the least popular one to get an extra t-shirt is important. And what would happen to your buisness model if everybody liked (and ordered) t-shirt A but nominated t-shirt B? You would have to ship two t-shirts to everybobdy, whereas your current plan guarantees that no more than 20% of customers get a free t-shirt --- which also makes it more challenging to play the game.

</comment></comment></comment></comment></comment><comment><USER6> I really like this. I found myself with a gradually widening smile as I realized the ramifications of the whole concept. The brilliance from the commerce standpoint is that the freebie is by definition minimized by the number of shirts sold, and a typical loser product will see more activity than usual. From a customer standpoint, you have effectively 20% chance of getting a freebie, making the perceived purchase price 80% of $25, or $20, a very reasonable price for a graphic t-shirt. However, since it's the least purchased number getting freebies, I'd expect your actual revenue to be more like $21 per shirt, thus creating profit out of thin air. Customer pays a decent marginal price (for a hopefully quality product), you get a built-in profit from the mechanics, and the game mechanics nearly guarantee a larger volume of purchases than normal. Overall, a great strategy!

</comment><comment><USER7> I saw this site last week or maybe the week before, and to be honest, I was put-off by the obnoxiousness of trying to get people to buy the "least popular" t-shirt. To me, it came across as you trying to unload your shittiest product through some clever trick. It had a Zynga-esque feel to it, and I didn't like it at all. The fact you give a clue like "this was the worst selling t-shirt in the last hour" makes me feel like you're tricking me, and I'd rather do business with someone else than risk getting played or ripped off. Sorry, but that's the feeling I get when I see this site.

If you want some additional feedback:

Instead of the gimmicky "you lose I win", I think you need to make it some sort of win-win type gimmick. Like the price goes down the more people buy it, and whoever buys it earlier will get some money back on their next purchase.

You need to make the "game" shorter, I don't have patience to wait a week until I know if I "won".

$25 is something I would pay if the t-shirts were good quality, like American Apparel, but you didn't list the manufacturer.

You need a lot more designs. I was looking for the button for additional designs, but I finally figured out you only have those 5. If I hate all 5 of them, then I won't likely remember your site, and won't come back.

<comment><AUTHOR> Below in the comments, I mention I am very curious to find out if people will take buying the least popular t-shirt as a positive (I'm unique) or negative (Why would I want a trash shirt). You clearly fall in the latter category, which is very reasonable. I am very open to tweaking the game mechanics so it is perceived as a win win by everybody while still a sustainable site.

The shirt and printing style are of high quality. I need to do a better job on the site emphasizing that.

Sorry you did not like this week's designs. Maybe next week (or not based on your comment =p)

<comment><USER7> The fact that you only reveal the last hourly sales, which really has zero relevance to total sales and whether or not you "win", makes it feel like a game of 3-card monte, as I mentioned in another comment.

Maybe you need to be more transparent and show the total sales or the ranking. This might help show you're not trying to scam anyone. Then, it turns into something more where people can decide "do I want to buy this t-shirt in a 2-for-1 sale" since they get the next shirt free.

<comment><USER8> Except that the changes you propose would take all of the fun out of the game for those of us who -do- like the idea.

Though in fact, if there was UK shipping I have a feeling I might've bought the Graphic Love T-shirt just because it's clever.

However, it seems to me very much like you really don't find the concept entertaining and thereby end up feeling like it's trying to rip you off rather than entertain you; I don't think the site's owner can solve that without destroying the things that make it potentially interesting to other people.

</comment></comment></comment></comment><comment><USER9> I love the idea. It's really great to see something innovative here. I was almost going to say a little bit of genius, but i have a few more reservations now i have thought the idea over-- mainly that i don't think i'd see value in the 'game' (that is, saving potential) unless i really liked all the tees on offer. So that sets the proposition to me[1] as very close to any other online t-shirt retailer (would anyone suspect their favourite was going to be least liked?).

BUT in the very worst case scenario, you have a fantastic marketing gimmick to drive people to the site, and keep many of them coming back perhaps. I really wish there was a 'control' to compare this to, to see what effect this has on sales- it seems it will be hard to know how much the game is driving sales vs people just liking the tees. My current feeling is the idea might function better slightly tweaked.. eg. offer the shirts at $18 normally, or $20 with the freebie game.. only count the $20 sales toward the totals.. might offer some balance-- for example, the 'better' (popular) one won't currently have a lot of appeal WRT. the game, because most will rightly assume it wouldn't be least popular. Add the tweak and there is an element of double-guessing that might make more people believe they have a chance of 'winning'? Hope that made sense.. it's not a fully worked out idea, but worth thinking about perhaps.

Also, consider following OKcupid and having an onsite blog.

[1] perhaps not everyone is like me (or us here), though

</comment><comment><USER10> Adding some type of effect to show that the shirts are actively being bought (I imagine every few seconds half a shirt 'flash') would give the sale more of an active-feeling. Right now I don't feel strongly urged to make a decision right now, but rather that I could come back later.

Second comment: Rather than giving away the least popular shirt, you could apply some type of variable pricing depending on when a user purchased a shirt given its popularity?

<comment><USER11> Increases and Decreases like some T-Shirt Market.

</comment></comment><comment><USER12> After you do this for a while, please please release your data. I'd love to see what kind of influence the star has on things, and the variation between least popular and most popular.

<comment><AUTHOR> If I have data worth releasing (i.e. sales volume), I most certainly will. I'm very curious myself!

</comment></comment><comment><USER13> I like the game mechanics.

A story that comes to my mind is: there was a grocery store in London in the 1950s who didn't have the best of locations. They ran a contest: They would randomly select a half an hour time period (eg: 2.20 to 2.50pm). People who had shopped during that time on the previous day could come back with their time stamped receipts and get cash back.

The store tripled their number of customers per day.

This however worked because people didn't go out of their way to buy new things. They just went out of their way to buy the things they needed at a different store to get a chance to get cash back.

So my suggestion is this: source out the "winning" designs on threadless etc in the past 3 months. And list those t-shirts on your website only. Don't ask your audience to submit their designs.

And announce this fact. Re-assure people that they are buying the same "hot" stuff they would buy on other t-shirt sites. But they could just earn a free t-shirt too.

Take away the neg that comes with the "least popular tshirt" tag.

</comment><comment><USER14> Cool idea, agree with the comment about regrettable purchases so I think you need to figure something out for that.

I think there's a lot of space to apply game theory / gamification in e-commerce. Still need to get a clear understanding on the regulatory framework for this.

Also, which fulfillment service are you using?

Good luck!

<comment><AUTHOR> I am fulfilling the orders myself (with help) via USPS and FedEx until it gets out of hand.

<comment><USER15> How are you handling the printing on these? Do you plan to buy in bulk and ship out once it ends or screen print the tees yourself?

<comment><AUTHOR> The shirts are being water/discharged printed by <http://forwardprinting.com>. A very high quality and award winning printer.

</comment></comment></comment></comment><comment><USER16> Shouldn't that be "I mixed selling t-shirts with a little bit of _gamification_ "? I don't really get the game theory angle (as in <http://en.wikipedia.org/wiki/Game_theory>). Very clever idea in any case!

<comment><USER17> It actually is an interesting game (in the game theory sense). I make no claims about whether or not it is a good business idea, or how people will actually play, but a quick and incomplete theoretical analysis follows.

First, some simplifications: * an infinite number of players * everyone agrees on the ordering (quality, utility, etc) of shirts * only look for symmetric equilibria (where everyone plays the same strategy)

Some notation:

Let there be N shirts (N=5 for this application). Order the shirts by their utility (that everyone agrees on). x1 < x2 < ... < xN. Let the utility from the bonus shirt be z, where z > xN.

The most simple strategy is for everyone to randomize and put equal probability on each shirt. If everyone plays according to that strategy, then the expected payoff for any given player is avg(x1, ... , xN) + z/N. But this can't be a Nash equilibrium because an individual player could deviate and choose xN with probability 1 and get payoff xN + z/N.

The (maybe not the only) Nash equilibrium is probabilities p1, p2, ..., pN such that sum(p1, p2, ..., pN)=1 and x1+p1z = x2+p2z = ... = xN+pNz. These probabilities make a player indifferent between choosing each shirt with certainty.

I haven't spent the time to see if there is a nice formula for the probabilities, but for the case of N=2, you get

p1=(x2-x1+z)/2z and p2=1-(x2-x1+z)/2z

This doesn't take into account that people have different tastes, or the sequential information that the star creates. The game gets very complicated with these added in.

</comment></comment><comment><USER18> I'm friends with seekely, and we have gone back and forth about the idea of framing the "winner" as the "least popular", which as a negative connotation, vs. using terminology like "unique", which has a more positive connotation. It could be that by using the more negative language, people would believe that the free t-shirt is a consolation prize for having bad taste, as opposed to being excited about being special somehow. However, it's a completely subjective assessment in either direction. What did you all get as a first impression (or did it even register with you in that way)?

<comment><USER9> My take would be that i DGAF if other people on the internet/US share my taste in t-shirts. My sole concern in that area would be geared towards wanting a free one. Personally, I wouldn't buy one I wouldn't be happy to pay the full price for, and of course my brain sees it as very unlikely that this would be the least popular. Also, it seems a poor gamble to go for one I like less on the hope that I might get another free. So if i picked the least popular, my reaction would just be 'bonus, free tee!' (i wouldn't have any feeling of 'special unique little flower', either).

As for the language specifically, firstly, 'least popular' is functional. It tells me exactly what you are talking about. If i read 'most unique' i would have no idea how you were measuring that, and would probably feel uneasy about it-- like you were using the phrase as cover to pick whatever you wanted to. (Which is funny, since 'least popular' is already the best financial option for yous!). Secondly, it doesn't seem too negative to me (compare 'least awesome' vs 'worst'). That is for the landing page (and if any commiseration email), anyway. As far as congratulatory email, I would probably agree to frame it as 'most unique'.

Hope that helps!.. I know how difficult it can be to get basic perspective when you are too involved with something.

</comment></comment><comment><USER19> On first glance, I feel like people would simply choose the shirt that they think looks the least fashionable, which just leads to regrettable purchases.

<comment><AUTHOR> I do not want people making regrettable purchases, so I will play around with the concept if that's the impression I get from buyers.

I am very curious to find out if people will take buying the least popular t-shirt as a positive 'i'm unique' or negative 'i suck'.

<comment><USER19> It would be very interesting to see how people use the site.

</comment></comment></comment><comment><USER20> One slightly annoying thing I noticed. If I select a t-shirt ie: <http://getnifty.com/market/1001/product/1002> the sizes appear

      0S 0M 0L 0XL

which for a second till I ran the mouse over them realised it was a form selection. Can you pre-populate or add spacing?

<comment><AUTHOR> I have had the damnedest time getting the size right on those buttons. Can you tell me your device/browser/screen size?

<comment><USER20> Ubuntu, x86, unity / Moz Firefox 14.0.1 / Running at 1280x1024 (low rez).

</comment></comment></comment><comment><USER21> Interesting, but I'm not sure I buy the "I'm unique" logic. It reminds me of "big-choosers" from the Toilet Paper Problem: [http://gi.cebitec.uni- bielefeld.de/teaching/2007summer/jclub...](http://gi.cebitec.uni- bielefeld.de/teaching/2007summer/jclub/papers/toiletPaper.pdf)

If everyone was a big-chooser, you get into a dangerous situation because rolls are being emptied at roughly the same rate.

Similarly, I am led to wonder what percentage of your users will be making their choice based solely on the coupon (i.e. least popular shirt at the moment). If it's a high percentage, then each shirt should approach 20% of sales. Hardly unique at all.

By the way, "Virgin" is an awesome design. Reminds me of Dali. I can't imagine opting for any of the other shirts in order to try to win a coupon.

</comment><comment><USER22> I so wanted to buy the bicycle one for my girlfriend.

When checking out my cart, it didn't allow me to choose another country than US, and I'm in Europe. Too bad for me (and for her) (and also for you, who lost a sale ;) )

Great post, great idea, though ! Keep it up !

<comment><AUTHOR> Bummer :(

I would really really like to ship to Europe (and everywhere), but as a 1 man show right now, I can't logistically make that happen for some time.

<comment><USER23> I would easily pay $5-$10 extra for shipping.

</comment></comment></comment><comment><USER24> There are quite a few sources in this thread for quality t-shirts, but I don't wear cotton anymore.

Curious if there are any t-shirt sites that sell on Nike dri-fit, Under Armour style shirts. You know the kind, moisture wicking etc. They tend to be polyester or even bamboo.

My favorite at the moment is this one I got from Lids. It is AWESOME. <http://www.lids.com/NCAA/Hawaii-Warriors/20304981>

I just wish I could find more! Anyone know of any sites like that? And I of course I know I'd pay a premium for that, so no worries there.

<comment><USER15> Why don't you wear cotton anymore? Allergies?

<comment><USER24> Honestly, because I don't like 1. that they wrinkle 2. that they shrink and 3. they tend to be more uncomfortable than the others.

<comment><USER25> And 4: they also fade.

I've been wearing the same seven solid black polyester tees for the past year or so and I'm sold on them.

</comment></comment></comment></comment><comment><USER26> Interesting idea! Graphic tees are a great market to do an idea like this, as well.

People who have the disposition to wear a lot of graphic tees seem like the same people who would spend $25 on some generic tees just for the game aspect. Personally, id rather bargain hunt on Gilt or something for some high quality, well designed t-shirts, but im not your target audience.

</comment><comment><USER27> Interesting, but my reaction is, I'll just pick my favorite (if any) and not worry about getting the special. It's not worth buying one I don't really like just because it _might_ turn out to be free.

On another note -- would really like to be able to pull up some much larger images of the shirts.

<comment><USER28> Perhaps the gimmick is not intended for you. It's for people who always buy as cheaply as possible.

</comment></comment><comment><USER29> This reminds me of the game mechanic in Puerto Rico ( <http://boardgamegeek.com/boardgame/3076/puerto-rico> ) where money accumulates on roles not chosen to incentivize people to pick that role.

</comment><comment><USER30> My hands are itching to write a scraper that checks the site every 30 minutes or so and tells me just before the countdown ends which shirt was the least popular.. What's stopping me from doing so other than not being a jerk?

<comment><USER31> The star only tells you the least popular in the last hour. The least popular overall wouldn't necessarily be the one that received the most stars, as all the shirts are likely to be more popular at some times than others.

</comment></comment><comment><USER32> What a fantastic idea, I am a long time customer of Threadless, TeeFury etc. You see a lot of clones springing up but you have done something really interesting and unique, will defiantly give it a go!

</comment><comment><USER33> You sick bastard!!!! Now I had to buy 5 shirts just to make sure I get my free one. How dare you! KHAAAAAAN!!!!

edit: set self destruct code: kirk0001 <\-- lol at complexity.

</comment><comment><USER34> The game theory stuff is neat but to me inconsequential.

I just went to buy a really cool shirt but can't - USA shipping only :(

Pity! I doubt I'll ever come back to this site.

</comment><comment><USER35> Does this count as a Keynesian Ugly Contest?

</comment><comment><USER36> Uber cool concept. Time limits + freebies = good bag of tricks and sorcery. +1 for your logo.

</comment><comment><USER37> It might be just me, but I can't see what the shirts look like in Chrome.

</comment><comment><USER23> I would really love international shipping for the tshirts.</comment>


On "On Asm.js" - <AUTHOR> http://calculist.org/blog/2013/11/27/on-on-asm-js/ <comment><USER2> In this exchange UTF-8 got dragged into list of ugly hacks, but it is a _beautiful_ hack.

Endian-independent, more efficient than UTF-16 for most languages (often _including_ CJK web pages: halved cost of HTML & URLs makes up for 33% extra text cost), supports easy and safe substring search, can detect cut characters, and all that with ASCII and C-string backwards-compatibility.

If I could redesign entire computing platform from scratch UTF-8 is one thing I wouldn't change.

<comment><USER3> The disadvantage of utf-8 is that it's a variable length encoding. This means that certain operations which are usually O(1) are O(n) with UTF-8: one is finding the n-th character in a string, the other is finding the length in characters (though that's also true for null terminated C strings)

Another problem is that swapping a character in a string might cause the (byte) length of the string to change, which might force a reallocation (also slow) and if you're doing it in a loop over the string, your loop-ending condition might now have changed because the string (byte) length has changed.

In-fact, iterating over a UTF-8 strings characters is not something you can use a simple for loop any more, but something that requires at least one, possibly two function calls per character (one to find the next character, one for finding the end of the string which might just have moved due to your modification).

Finally, efficiency: For English texts, UTF8 is the most efficient Unicode encoding, but for other languages, that isn't true. A Chinese text would require three to four bytes per character, as opposed to just two in UCS-2 (which is what most OSes and languages use, even though it doesn't support encoding all of Unicode)

For these reasons, dealing with a fixed-length encoding is much more convenient (and speedier) while the string is loaded into memory. UTF8 is great for i/o and storage on disk, but in memory, it's inconvenient.

UCS-2 or UTF-16 is the reverse: it's very inconvenient on disk and for i/o (need I say more than BOM), but in-memory UCS-2 is very convenient, even though it doesn't support all of Unicode. It's in-fact so convenient that it's used by most programming environments (see yesterday's discussion about strings being broken)

Take python 3.3 and later for example: even though they now have full support for Unicode, also for characters outside of the BMP and thus requiring more than two bytes of storage, they didn't go with a variable length in-memory encoding, but they now chose the shortest width possible fixed length encoding that can be used for a particular string.

This seems like an awful lot of work to me, but they decided the fixed- lengthness was still worth it.

<comment><USER4> Umm, is there any unicode encoding where finding n-th character (not codepoint) in string is O(1) ? In any encoding you can have a single 'composite character' that consists of dozens of bytes, but needs to be counted as a single character for the purposes of string length, n-th symbol, and cutting substrings.

This is not a disadvantage of UTF-8 but of unicode (or natural language complexity) as such.

<comment><USER5> "UTF-32 (or UCS-4) is a protocol to encode Unicode characters that uses exactly 32 bits per Unicode code point. All other Unicode transformation formats use variable-length encodings. The UTF-32 form of a character is a direct representation of its codepoint." ([http://en.wikipedia.org/wiki/UTF-32](http://en.wikipedia.org/wiki/UTF-32))

Of course, the problem of combining marks and CJK ideographs remains.

<comment><USER4> That's the point - you get O(1) functions that work on codepoints. Since for pretty much all practical purposes you don't want to work on codepoints but on characters, then codepoint-function efficiency is pretty much irrelevant.

I'm actually hard-pressed to find any example where I'd want to use a function that works on codepoints. Text editor internals and direct implementation of keyboard input? For what I'd say 99% of usecases, if codepoint-level functions are used then that's simply a bug (the code would break on valid text that has composite characters, say, a foreign surname) that's not yet discovered.

If a programmer doesn't want to go into detail of encodings, then I'd much prefer for the default option for string functions to be 'safe but less efficient' instead of 'faster but gives wrong results on some valid data'.

<comment><USER6> For a lot of usecases, you're just dealing with ASCII though (hello HTML). Wouldn't it be possible, in a string implementation, to have a flag indicating that the string is pure ASCII (set by the language internals), thereby indicating that fast, O(1) operations are safe to use?

<comment><USER4> What you say is done with UTF-8 + such a flag - if the string is pure ASCII (codes under 127) then the UTF8 representation is identical. IIRC latest python does exactly that, sending utf-8 to C functions that expect ascii, if they are 'clean'.

But for common what usecases you're just dealing with ASCII? Unless your data comes from a cobol mainframe, you're going to get non-ascii input at random places.

Html is a prime example of that - the default encoding is utf8, html pages very often include unescaped non-ascii content, and even if you're us-english only, your page content can include things such as accented proper names or the various non-ascii characters for quotation marks - such as '»' used in NYTimes frontpage.

<comment><USER6> It really depends on what kind of thing you are doing. Say you're processing financial data from a big CSV. Sure, you may run into non-ASCII characters on some lines. So what? As long as you're streaming the data line-by-line, it's still a big win. You could say the same for HTML - you're going to pay the Unicode price on accented content, but not with all your DOM manipulations which only involve element names (though I don't know by how much something like == takes a hit when dealing with non-ASCII), or when dealing with text nodes which don't have special characters.

I'm happy not to pay a performance price for things I don't use :)

<comment><USER4> The scenarios you mention would actually have significantly higher performance in UTF8 (identical to ASCII) rather than in multibyte encodings with fixed character size such as UCS2 or UTF32 that were recommended above. That's why utf-8 is the recommended encoding for html content.

Streaming, 'dealing with text nodes' while ignoring their meaning, and equality operations are byte operations that mostly depend on size of the text after encoding.

<comment><USER6> I think we're actually in agreement :)

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Naive question: is there a reason why we cannot just compile programs to both native/bytecode and javascript and have browsers automatically fetch the version they support? If it turns out that native/bytecode universally runs (say) 20% faster and loads in half the time, the javascript target will eventually die a natural death of obsolescence without compatibility ever being sacrificed. If it turns out that the javascript target can keep up with the performance native/bytecode, then we can just stop compiling to anything but javascript, and nothing will be lost. The attitude that we should not even try to do better than compiling to javascript just seems odd.

<comment><USER8> Well, that seems to be what Google is doing with PNaCl and pepper.js. Pepper.js uses emscripten to compile PNaCl apps so they run in JS (specifically asm.js). In Chrome the PNaCl version can run, and everywhere else it runs in JS. That sounds like what you are proposing?

You can try that approach out right now,

[http://www.flohofwoe.net/demos.html](http://www.flohofwoe.net/demos.html)

[http://trypepperjs.appspot.com/examples.html](http://trypepperjs.appspot.com/examples.html)

Those two sites have the same codebases built for both PNaCl and asm.js. Overall they run pretty well in both, so this doesn't seem to show a clear advantage to either JS or a non-JS bytecode. PNaCl starts more slowly, but then runs more quickly, but even those differences are not that big. And surely both PNaCl will get faster to start up, and JS get faster to run, because there is no reason they both cannot get pretty much to native speed in both startup and execution.

Note though that there are risks to this approach. No one enforces that everyone create dual builds of this nature, and there is no guarantee that the dual builds will be equivalent. So while this is interesting to do, it does open up a whole set of compatibility risks, which could fragment the web.

<comment><USER9> Except for the fact that you can not compile threaded programs to javascript I am pretty sure while you can to PNaCl and this is my problem with this talk of asm.js, until it supports threads I don't really consider it an acceptable solution.

<comment><USER10> And people keep mentioning those 'Web Workers' as if Emscripten is capable of generating them from LLVM thread abstractions.

<comment><USER11> Nope, it's a better idea to create a higher level thread-pool-based parallel- task-system which abstracts away the differences between pthreads and WebWorkers. I think that at least most game engines have such a system in place anyway, and can be relatively easily adopted. YMMV because it may be more overhead to get data in and out of WebWorkers since they don't have a shared address space (so in that regard they are more like processes).

</comment></comment></comment></comment></comment><comment><USER12> "On a shared medium like the web, where content has to run across all OSes, platforms, and browsers, backwards-compatible strategies are far more likely to succeed than discrete jumps."

This is a valid point, but hits on something that constantly grates with me. We already have something massively more cross platform and performance focused than JavaScript - C. The problem is that the standard library for C is utterly lacking, and there is a lack of focus on developing mechanisms to deploy native code /directly/ across the web.

Don't kid yourself either - all the data being thrown around at the moment is always (always, always, always otherwise it wouldn't even work!) translated into native code in some way - we are already throwing native code around the web, just in a horribly inefficient way. In todays world of sandboxing and virtualisation all of the security arguments that used to be completely reasonable are quite thoroughly invalidated.

I really do believe that fixing this from the technical perspective is not an impossible or even hard problem to solve - I can not stress this point enough. Game developers are constantly re-solving this problem in limited, optimisation focused ways. JavaScript implementations themselves are ultimately built on top of this technology or other technologies built on top of it. The standard libraries of modern scripting languages are possible to use from within the constraints of C. We have already solved all of these problems and there are myriad examples.

On the other hand, the political problem could be intractable... and thats sad.

Worst of all perhaps, C can be made better for performance without much thought or effort, and none of the new languages I see actually tackle this problem, which is quite real and measurable and impacts everything from productivity to the environment - they (quite rightly in many ways) focus utterly on ease of use and massive standard libraries. Why can't we focus this effort on fixing C, or providing a better alternative?

Why are we trying to catchup with native code performance instead of using just native code? Why aren't we improving native code performance in a serious way?

<comment><USER13> Native code is, at the bottom of its ladder of abstraction, always held at the behest of some vendor's platform or another. Microsoft, Apple, and Google will never agree on a set of standard C libraries that could be used to build rich, modern graphical applications. If they could, we'd never have needed the web for anything other than the ideas of hyperlinks and intents--everything else could be done with URL-specified zero-install applications. (This was the future portended by Hypercard.)

But things didn't go that way. Instead, each vendor built its own walled garden, with its own platform-specific libraries to do the same things.

The web, in this reality, is simply our attempt at encapsulating away the entirety of the OS, along with all its platform-specific libraries, as a sort of really-big-BIOS, and then building vendor-neutral platform on top with APIs that will work on _every_ computer, running _every_ OS.

But the fun thing is, once we get this web platform nailed down, and it can do everything? Once the OS beneath it is redundant in every respect? We can "molt" the outer layer away.

The future of Operating Systems will be the lineage of today's ChromeOS and FirefoxOS, not Windows or OSX.

<comment><USER12> "Microsoft, Apple, and Google will never agree on a set of standard C libraries that could be used to build rich, modern graphical applications."

this is probably very true, but it isn't even a real problem. the standard library can be expanded to encompass rendering, audio, networking and co. regardless as to platform nitty gritties we can implement a layer over the top (lots of people do this to make games already).

when i look at the web as an approach to being platform independent i see something which is truly quite poorly constructed. the kinds of bugs and problems in the webstack are utterly alien in my world... libraries to work around browser bugs? laying out objects on a screen 'complicated'? its just shoddy all over... especially the browser implementations and the myriad frameworks piled on top of javascript and CSS.

coupled with the staggering loss of performance and increase in complexity I have no desire to use web tech to develop my cross platform products - and my native development moves at an extremely rapid pace.

i qualify this very heavily with "i know how to do this and have done it alone and in teams many times more often than once"

a great example of this is everything already in the C standard library which - whilst it seems simple today now its done - hides a great deal of OS and platform specific details which vendors still disagree on but programmers in that environment are largely (and rightly) unaware of. a quick look into the Win32 apis, X11, BSD socket implementations or the Cocoa/Objective-C stack on OSX will show up just how different the platforms can be in their 'low level' interface for many things.

<comment><USER14> > laying out objects on a screen 'complicated'?

As jwz said in 1998 [1]:

"Convenient though it would be if it were true, Mozilla is not big because it's full of useless crap. Mozilla is big because your needs are big. Your needs are big because the Internet is big."

I think any document and application layout system that handles all the use cases of CSS is going to be about as complex as CSS. Certainly PDF and Microsoft Word .DOC are up there in terms of complexity.

[1]: [http://www.jwz.org/doc/easter-eggs.html](http://www.jwz.org/doc/easter- eggs.html)

</comment></comment></comment></comment><comment><USER15> I see the point; but I don't think it has enough justification. Something evolutionary successful isn't always globally perfect - rather it's most probable along the path from there to here.

JavaScript may stay long with us. Or - as sometimes happens - it could be eclipsed in few years, as happened with technologies and paradigms before. Say, guessing correctly on technologies in use in 2000, sitting in 1990, would be quite hard.

Not that "more direct approach" of defining bytecode and standardizing should always be better. With ideas disruptive enough many bets are off.

<comment><USER13> But it seems to me that "evolving into" the use of other languages _through_ Javascript, will allow us to start ignoring the fact that it's Javascript in particular that we're targeting--such that, one day soon, the browser-makers will just give us a "shortcut" to doing the things that have already evolved, without all the Javascript-y mess in-between.

But something has to _get_ popular _first_ as a new "open web-scripting language", before the browser-makers will be willing to all go in on supporting it. (Otherwise you get the reactions you see by, e.g., Mozilla to Google's NaCl.)

And that was a chicken-and-egg problem until now, because you can't really create _and force universal adoption of_ an "open web-scripting language" (or framework, or platform, or bytecode, etc.) if you're just one company. But now, with asm.js, you can--and the rest of the steps will follow soon after.

</comment></comment><comment><USER16> > _On his impossibly beautiful blog_

I found the parallax background incredibly distracting. Maybe I just lack focusing skills, but I would much rather read a plain text file than have a slightly laggy background change every time I scroll.

<comment><USER17> I'm more than happy to make the effort to read a blog that pushes the limits with JS/CSS/HTML the way acko's blog does, even if it marginally decreases readability. I spend more time reading the source than the articles anyway. Think of acko.net as a tech demo first, blog second.

</comment></comment><comment><USER18> > I see plenty of reason to keep betting on evolution

So why Mozilla helped to kill WebSQL? Because NoSQL (IndexedDB) is so much better than SQLite?

Mozilla is too much focused on Brendan Eich baby. They should really move forward because JavaScript is becoming new IE6.

<comment><USER8> WebSQL was a completely separate debate, if I recall correctly, the issues there had to do with WebSQL being heavily dependent on SQLite, a single implementation. So it was hard to spec in a vendor-independent way like web standards require.

IndexedDB is much less capable than SQLite, no doubt about it, but still very useful, and far far simpler and feasible to spec and standardize (which it has been).

<comment> iso-8859-1 But SQL is already standardized! They just have to determine a reasonable subset of the existing standard.

<comment><USER8> SQLite is not identical to any of the SQL standards. For example it is typeless

[http://www.sqlite.org/datatypes.html](http://www.sqlite.org/datatypes.html)

which is different than most RDBMSes.

</comment></comment></comment></comment><comment><USER19> Onanism?

</comment><comment><USER20> Damn that site is gorgeous yo</comment>


Scientists make a touch tablet that rolls and scrolls - <AUTHOR> https://techcrunch.com/2018/08/31/scientists-make-a-prototype-touch-tablet-that-rolls-and-scrolls/ <comment><USER2> The actual engineering behind this is neat. The prototype nor demo video seemed very alluring.

Perhaps someone will take this idea and do something interesting with it. At the moment I don't see it improving upon the current smartphone.

<comment><USER3> Yeah what I want is a smart phone that has something similar that I can pull out more of the screen (or a Tablet) but the line in the middle kind of ruins it, if there can be a hard to see line in an end product it would be impressive as hell. I love the idea of having a smartphone and then extending it into a tablet format to consume video from Netflix or whatever service. Same with a Tablet, turn a 7 inch tablet to a slightly larger form factor to see even more detail.

I think one phone manufacturer had a decent idea to have it where you had a "flip touchscreen phone" but my guess is it hasn't taken off since I rarely see anything about it since, it's an interesting concept though, not necessarily wrong.

<comment><USER4> My absolute dream phone is something like the size of the new Samsung Note, and it would fold out to double the screen size for watching videos, and run desktop Linux/Win10. I could then use a Bluetooth keyboard and mouse like I can now on Android, and it could be my only device I own.

<comment><USER5> Sounds like you want the Samsung Galaxy X[0]. If it runs Dex (unclear right now) you'll get desktop Linux in a foldable phone with bluetooth capabilities. I believe the screen is going to be 7.3" but not sure if that's unfolded or folded.

[0] [https://www.techradar.com/news/samsung-galaxy-x-the-story- of...](https://www.techradar.com/news/samsung-galaxy-x-the-story-of-samsungs- foldable-phone-so-far)

<comment><USER4> Sounds pretty awesome. I'm keen to see what it ends up being. Not sure why they would need a curved battery. I'm imagining it like a book, with just a normal flat battery each side. Maybe they're thinking like a loosely folded piece of paper before it creases.

</comment></comment></comment></comment></comment><comment><USER6> When is it okay to say something is engineering vs science?

Personally I would classify this as engineering. Not so sure...

<comment><USER7> I think you'll get as many answers as there are opinions.

FWIW, to me the line in the sand is drawn where you need to build it in a reasonably cost efficient manner. (Which is to say, most science involves engineering to some degree. NASA and the LHC need to try to make what they do fit in some budget at the end of the day.)

</comment></comment><comment><USER8> While it's dangerous to make predictions about the future of technology, I don't foresee any mobile product coming out that isn't "flat." How is anyone supposed to fit that into a pocket? Even in a purse or messenger bag it would be unwieldy.

<comment><USER9> I'm going to purchase this and make every intern have one, using it to run and read out information to me, so I can finally start my quest to become a technomongolian warlord

</comment></comment><comment><USER10> What would be the killer application for this technique?

I don't see the advantages, because the thing is clunkier than a smartphone and handling it seems odd.

What I want is a smartphone the size of a credit-card, that can project a bigger screen on a flat surface (e.g. table or sheet of paper).

<comment><USER11> > What I want is a smartphone the size of a credit-card, that can project a > bigger screen on a flat surface (e.g. table or sheet of paper).

That also sounds very clunky to me. Projection requires a white, yet unlit surface to work well. People are unlikely to have one of these handy while out and about. Added to which, it makes touch control impractical, except in the case of back-projection.

<comment><USER12> What I want is a smartphone the size of a credit card that can project any size virtual screen anywhere in any direction—no surface required.

</comment></comment></comment><comment><USER13> The technology is cool, and I can see the flexible displays being used for putting displays on oddly shaped surfaces, and for other applications where you have somewhere a screen can roll into.

But the concept video feels like an April fools joke, or something you would see from the 90s before they came up with better UX. It just doesn't seem as useable or robust as a simple flat surface. Perhaps this technology will allow phones to be even thinner.

</comment><comment><USER14> Reminds me of N-Gage, innovation that wasn't quite there. I'm wondering how would touching upper part of screen feel like, is it too flappy?

</comment><comment><USER15> Still waiting for Caprica Paper

[http://www.inventinginteractive.com/2010/02/25/caprica- paper...](http://www.inventinginteractive.com/2010/02/25/caprica-paper/)

</comment><comment><USER16> Interesting, but how do you carry it? It's too big for your pocket, will it have a strap so you can hang it from your shoulder, or what?

</comment><comment><USER17> [https://www.youtube.com/watch?v=oieoQYlchMg](https://www.youtube.com/watch?v=oieoQYlchMg)

</comment><comment><USER18> That's it, they've finally found it: the worlds worst form factor.

<comment><USER19> "Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something."

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

</comment></comment><comment><USER20> Since when is 'iPad' the generic word for tablets?

<comment><USER21> That's the video's fault, the article refers to it properly. Also I think it's fair to say that for some time iPad was pretty much the only usable tablet, so it just became synonymous

<comment><USER20> Yeah, I should have been more clear in my previous comment about that. But I just think it's strange logic. Like, no one is using 'Android' referring to any smartphone, or 'Toyota' when talking about cars, just because they have the largest shares within their fields.

<comment><USER21> I don't know enough about tablet sale history, but I am under the impression that a few years back iPad was really the only tablet device embracing the format strengths you could get, and the sales hugely reflected that. Android equivalents were just larger smartphones.

As for the logic part, I think it's not as uncommon -> q-tips are just a brand of cotton swabs, hoovers are just vacuum cleaners etc.

</comment></comment></comment></comment><comment><USER22> Wasn't there a fiber that stiffens under load?</comment>


Bootstrap Xtra extends Bootstrap - <AUTHOR> http://lightglitch.github.com/bootstrap-xtra/

<comment><USER3>
      "Xtra Features: Icon Buttons."

Is this all it adds? Bootstrap already supports adding icons to buttons..

edit: Actually, the Github page for Bootstrap Xtra[1] says "DEPRECATED - <USER2> Font-Awesome or Font-Awesome-More"

[1] <https://github.com/lightglitch/bootstrap-xtra>

</comment><comment><USER4> what benefits does this provide vs the latest bootstrap 2? I couldn't find any besides some more icons, which you can get with font awesome

</comment><comment><USER5> Looks pretty old, this may be a dead project</comment>


Extracting Structured Data from Templatic Documents - <AUTHOR> http://ai.googleblog.com/2020/06/extracting-structured-data-from.html <comment><USER2> This reminds me of some of Sergey Brin's research papers ([https://scholar.google.com/scholar?q=sergey+brin](https://scholar.google.com/scholar?q=sergey+brin)), like "What Can You Do with the Web in Your Pocket?" ([https://www.cs.princeton.edu/courses/archive/fall02/cs597A/p...](https://www.cs.princeton.edu/courses/archive/fall02/cs597A/papers/brin98what.pdf))

</comment><comment><USER3> Years ago I tried hacking something together like this - primarily to read labels on packaged food products - but the primary roadblock I hit was with the FOSS OCR solutions not being anywhere near good enough to be reliable.

Mind you this was a few years ago and I was primarily testing with pytesseract. I would be curious if this team actually used the Google OCR API or an internally tuned one that isn't GA, and how that differs FOSS Tesseract.

</comment><comment><USER4> Good to remember blog posts like this for all those who claim Google isn't innovating or investing in search. This is the type of infrastructure that goes in to extracting useful information from the web.

</comment><comment><USER5> Google will be able to provide us with a lot more information extracted from our mails. Like it currently does for delivery tracking and reservations.

</comment><comment><USER6> The trained model doesn't seem to be available? Does anyone know if this or a similar model is available somewhere?</comment>