Philippines tops world internet usage index with an average 10 hours a day - <AUTHOR> https://www.theguardian.com/technology/2019/feb/01/world-internet-usage-index-philippines-10-hours-a-day <comment><USER3> I think there's a fundamental difference between mobile vs computers. Using a smartphone is almost always consumption. While using a desktop/laptop isn't necessarily production, it seems much more likely.

If I just had a smartphone and no computer growing up, I wouldn't have learned how to program. I think it's vitally important to provide access to computers and internet, not just the internet with smartphones.

I live in Tanzania and I teach at a school my wife founded and when teaching my computer class I asked my students (15-19) what the internet was. And swear to god, most of my students thought the internet _was_ Facebook. Others thought it was Instagram, Google, or Facebook. They had no concept of a website.

</comment><comment><USER4> This is mostly Facebook since it's zero-rated where most Filipino mobile users are prepaid.

Young and old, rich and poor Filipinos are glued to their phones like zombies all day browsing Facebook.

<comment><USER5> Filipino here. I blame carriers here for making Facebook free-of-charge. Yes, good thing that Messenger let's us send messages for free. But the thing is, we can't see images nor visit links unless you get a data pack/promo or connect to a Wi-Fi.

Especially news, people can't see thumbnails or click links so they directly jump to wrong assumptions based on what they see and hear from the comments. Some people just lost the time to click articles as time goes by.

I wish they made the plan's cheaper but this is the Philippines where internet sucks and PLDT (PH's largest internet provider) and Smart (PLDT's carrier) are the worst.

<comment><USER6> Can you really blame the carriers, at what point does personal responsibility take over?

<comment><USER7> > at what point does personal responsibility take over?

Maybe a good approach can be:

\- When there are millions of people with otherwise functional lives falling for unhealthy behaviour then you blame the carriers.

\- When there is a very small percentage of the population engaging in that behaviour, then is personal responsibility.

For example, personal responsibility cannot be asked for when people lack education.

<comment><USER8> It's incredible how condescending people here are. Since you see no value in Facebook, those who use it a lot must be uneducated barbarians who are not willing to spend their time on [thing you enjoy]

<comment><USER3> Economists talk about "revealed preference," that is, people enjoy the things that they do. But I don't think that's actually true. FB, like drugs, short- circuits your brain and just because your reward system is hacked and you spend all day doing it doesn't mean you actually are getting real value from it.

<comment><USER9> Like people retired people who will spend all day and most of their disposable income sitting in front of a slot machine pushing a button. I imagine that is not what most of them wish they were doing with their lives.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Another impressive stat on Internet usage in PH is the sex ratio, Female Internet users are equal (or more) to the male users[1]. In India female users account for 30% overall & 64:36 (Male:Female) in rural India[2].

This is an important metric to note if one is running a non-geographically bound dating platform; the female users from PH grew exponentially when compared to other countries in our platform.

[1]:[https://news.abs-cbn.com/business/12/04/18/41-percent-of- fil...](https://news.abs-cbn.com/business/12/04/18/41-percent-of-filipinos- are-internet-users-sws-survey)

[2]:[https://timesofindia.indiatimes.com/business/india- business/...](https://timesofindia.indiatimes.com/business/india- business/number-indian-internet-users-will-reach-500-million-by- june-2018-iamai-says/articleshow/62998642.cms)

</comment><comment><USER11> Data is cheaper than calls. I don't even bother with call or text plans when I'm in the Phils. It costs a reasonable $8/mo to get 8GB of data if you use the right refillable promos.

With that said, internet is so darn slow and unreliable it must be messaging services. It's hard to get real work done from the Phils as a remote software developer. Thank goodness for Tmux and SSH.

<comment><USER12> I have intermittent connectivity issues, and [mosh]([https://mosh.org/](https://mosh.org/)) has been super helpful with typing lag, reconnecting.

<comment><USER13> +1 for mosh - life changing on spotty connections. I can tether in the back of a car in rural side streets and still keep a ssh session going strong with no disconnects on mosh. The mosh client is also available for chrome / chrome OS, which as saved me a few times.

<comment><USER14> I'm using Eternal Terminal which also supports scrollback.

[https://mistertea.github.io/EternalTerminal/](https://mistertea.github.io/EternalTerminal/)

</comment></comment></comment></comment><comment><USER15> I'm from Philippines and Facebook is huge here. Very huge and a bit of concerning because telcos (which are a monopoly here) has free mobile data for users and tons of fake news get reposted. Facebook has also been used as a political tool here.

</comment><comment><USER16> Higest daily usage, and some of the lowest speeds[1]

Maybe they're on the internet for longer periods of time because the speeds are so low and quality is so inconsistent that they _have_ to stay on the internet longer to get anything done! Having lived in PH off-and-on for about a year I know the pain first hand...

[1] [https://www.rappler.com/technology/news/178792-philippines-r...](https://www.rappler.com/technology/news/178792-philippines- rank-speedtest-global-index)

</comment><comment><USER17> >most time spent online is done via mobile devices, with the greatest portion of that time spent on social media

A lot of people in Phils seem to have a FB-connected mobile plan where they can chat on FB but not see the pictures on there, although you can send them pictures in the chat. And it only seems to connect them to FB, not the whole internet. Just a messenger app I guess. (Most of my close friends are in the Philippines, we chat on FB.)

<comment><USER18> How would a mobile provider block pictures and other attachments inside a chat system? See a large transfer and kill the connection?

Also, in this scenario what would stop users from using domain fronting or encrypted SNI to access other Facebook services?

<comment><USER19> Facebook itself subsidizes a specific 'facebook data plan' with mobile providers. It loads free.facebook.com which specifically does things to keep data down also.

<comment><USER17> Yeah, that's it I think. They've said they're on the free plan or something. (I've never had a mobile phone so not up on the jargon!)

</comment></comment></comment></comment><comment><USER20> I spend all day on the computer but mostly I am reading, writing, or scripting that I'm not actually surfing the web. Then again spotify uses the internet.. I wonder how much 'internet usage' is a direct replacement for something that is analog but has the same effect, like reading newspaper.

</comment><comment><USER21> Filipino internet user here. Can at least say that 10 hours a day for most Filipinos seem accurate enough—most people here are connected to FB Messenger via telcos' free FB promos. And a lot of Filipinos use Facebook like a realtime social lobby, replying to comments and status updates almost instantly.

Sadly though, most of the data probably applies to Filipinos in Metro Manila and developed cities, and there's still a huge part of the population that do not have access to the internet or even basic services like 24-hour electricity.

<comment><USER22> I visited the Philippines recently, and was shocked at how non-neutral it was. ISPs have promotions like "free half an hour of YouTube per day". It is like the nightmare scenario that we in the rest of the world were warned about.

Worse, someone told me that in 2012, internet service was way better, but then they realized they could just throttle everyone down and jack the prices up.

And I also had to have a Globe and Smart SIM cards, since the two cellphone companies have a cartel.

I loved it there, but it is a shame about the infrastructure.

<comment><USER23> You're right, but it's not about throttling, it's about subsidies. Regardless, data is about a dollar a gig, which is among the cheapest in the world. The fact is, folks don't want to or more likely, can't afford it, so the subsidized plans are more popular.

<comment><USER22> Really?? Because I and my companions had a huge problem with data. The only plans we could find were for things like 700M for "general use data", and the remaining for different websites. It was expensive and slow. We weren't in Manilla we were in rural areas mostly.

<comment><USER23> Yeah, I've been there a lot over the past few years. The problem to me is that there's too many different 'promos' at any given time, much like what you mentioned. But there's always been a 1 gig, 3 day load for 50 pesos from smart and globe.

</comment></comment></comment></comment></comment><comment><USER24> I can say I am one of the people that made this "achievement" possible. I spend most of my day starting at a monitor.

Kidding aside, I would not put much trust on an online statistic. Specially since they did not even have the decency to tell us where and how they got that info

</comment><comment><USER25> Unsurprising Philippines is at top of list. World leader in adoption of tech that enables social interaction.

From 2007:

[https://www.reuters.com/article/us-philippines- textmessages/...](https://www.reuters.com/article/us-philippines- textmessages/filipinos-sent-1-billion-text-messages-daily- in-2007-idUSMAN29726320080304)

Another. Undated. Avg sms per month per subscriber = 600. Or 20 a day. Which seems low, I'm sure I've seen figures alot higher than this.

[https://www.techwalla.com/articles/how-to-send-a-text-to- the...](https://www.techwalla.com/articles/how-to-send-a-text-to-the- philippines)

<comment><USER26> Filipino here, gonna have to agree. Its not really tech adoption but more 'new modes of communication' adoption. We adopted SMS like wildfire and now its the same with Facebook/Messenger. Gonna be a good bet that those 10hrs are disproportionately spent on FB properties. Lack of net neutrality also helps build a bigger FB wall - for most telcos its free to use messenger and facebook.

</comment></comment><comment><USER27> A bit surprised, I just got back from South Korea, and Instagram is beyond huge there. I thought American's spent a lot of time on their phones, until I spent a month in South Korea.

<comment><USER28> if your only comparison point is USA then that is the issue. (I am American living in Asia 5+ years)

And yes, IG is huuuuuuuuuge in SK.

</comment></comment><comment><USER29> I remember reading a newspaper for hours after school. Now I barely read news for more than 30 mins a day. I am more connected but my satisfaction of the quality of news I am consuming has gone really down.

I wonder what similar changes Philippines is seeing. People are obviously replacing some offline activity with something similar they do online. For example spending time with friends our neighbors in real life has now been replaced with FB or Whatsapp. Probably because it is more convenient? Is it better though?

<comment> barry-cotter > I remember reading a newspaper for hours after school. Now I barely read > news for more than 30 mins a day. I am more connected but my satisfaction of > the quality of news I am consuming has gone really down.

Before you wasted multiple hours a day on ephemera when you could have read something lasting or done something more fun, now you waste less than an hour. Before you had no information sources to provide alternative viewpoints or later, more in depth reporting after the initial flurry of news reporting. Now you realise journalists are often ignorant, writing under really tight deadlines and have no incentive to fix mistakes unless someone can sue them or has their own media platform. Journalism was always awful, you just didn't know.

</comment></comment><comment><USER30> There was a PBS documentary not too long ago about workers in the Phillipines tasked with reviewing all content that is posted to websites like Facebook, Instagram, Twitter, etc.

By the looks of it, they may easily match or exceed the daily usage of any internet-addicted person in any country. What is the total number of people employed in that industry there?

Would these types of industries affect the numbers?

<comment><USER31> Any chance you are talking about The Cleaners [0]? Because that was also my first thought when reading this.

Tho it's not actually by PBS, it was originally produced by the cooperation of French and German public broadcasting.

But I'm glad it's finally available somewhere again. The original, publicly funded release was depublished after 3 weeks due to specialties of the public broadcasting agreements. They have to depublish a lot of media after only a few weeks or else it's considered an "unfair disadvantage" for private media companies.

[0] [http://www.pbs.org/independentlens/films/the- cleaners/](http://www.pbs.org/independentlens/films/the-cleaners/)

</comment></comment><comment><USER32> How did they measure this? What qualifies as "online"? Does leaving Skype on and open while I go about my day count me in the statistic?

<comment><USER33> Probably, using the average of facebook users spent scrolling to their feeds..

<comment><USER34> It's not even just scrolling, a lot of my relatives who are still in the Philippines tend to comment on or interact with just about everything that pops up on their feed. I think it's mostly because of the widespread diaspora and desire to stay in touch with the many people they know back home and abroad.

</comment></comment></comment><comment><USER35> Interesting thing I saw just today was the 2nd largest (after English) wikipedia was Cebuano with only about 400,000 less article. And Waray-Waray is 11th! Clearly it's not all facebook.

<comment><USER36> Well, that sounded suspicious, so I looked it up.

Apparently, 80-90% of the content on the Cebuano and Waray Wikipedias is generated by Lsjbot[1].

I'm thinking of using a similar approach to bump up the number of Arabic Wikipedia articles, but it seems like cheating to me...

[1]: [https://en.m.wikipedia.org/wiki/Lsjbot](https://en.m.wikipedia.org/wiki/Lsjbot)

<comment><USER31> Woah that bot seems to be single-handedly responsible for pushing the number of Cebuano and Swedish Wikipedia articles past the, usual, second placed German Wikipedia?

At least I remember the German wiki being firmly placed in second place a while ago, the numbers for active users of these wikis [0] also reinforces that notion.

[0] [https://en.wikipedia.org/wiki/List_of_Wikipedias#Detailed_li...](https://en.wikipedia.org/wiki/List_of_Wikipedias#Detailed_list)

</comment></comment></comment><comment><USER37> A prime feature of the developing world is how full of bs a regular day is and how much time one has to waste just doing regular stuff.

Browsing FB would be a godsend.

<comment><USER38> Because most first-world ubermensch spend filling and productive days doing menial tasks for a living wage. I'm surprised how prejudicial and borderline racist comments like this are upvoted here.

<comment><USER37> I'm from a developing country with strong family ties to my country of origin (I am not white).

Systemic efficiency is really high in the west. Almost top quality in successful countries like Singapore.

A trip to some of the not so successful countries in Asia and Africa and it is an eye-opener how much is taken for granted in a rich society.

<comment><USER39> Yeah, I think he misunderstood your top-level comment in the thread. I'm in the Philippines and I understood exactly what you are saying even though it might sound negative to woke, politically-correct Western ears. There is a lot I take for granted because I happen to have a USA passport (same could be said for someone from Canada, UK, western Europe, AUS, NZ, etc).

The biggest among these things is infrastructure. In a lot of places in the developing world, it just isn't there. And if it is there, it's a fairly slapdash, ad hoc affair. Probably patched together from whatever they could find. No real professional urban planning, either. Likely to be incredibly compromised by political corruption and therefore working only some of the time, since contracts are given to the local warlord's cronies and sycophants.

Look at the power grid in the Philippines. If you live anywhere in the provinces, you'll experience constant "brownouts" where the power is redirected or there is no failover capacity. And without that, of course, there is no internet connectivity...

</comment></comment></comment></comment><comment><USER40> Anyone remember "Pinoy-grams" in "Cryptonomicon"? Facebook have built Neal Stephenson's "Data Haven"

</comment><comment><USER41> I'm willing to bet that our traffic situation here contributes heavily to that metric. It's common to see commutes taking more than a couple of hours and doubling that if you're living away from the metro.

<comment><USER42> Somehow I don't buy that if everyone had fiber speed internet they would all spend 10x less time on Facebook. They would consume 10x more content.

</comment></comment><comment><USER43> After observations, I have a theory that the poorest and boring places are potentially the ones that most use the Internet. The lack of activities makes people look for cheap entertainment and the Internet is full of it. This happens in small cities of Brazil. When the city doesn't have parks and outdoor activities, people stay at games and on the Internet, because there aren't activities to do, and get hooked. A repeated behavior became a habit.

<comment><USER44> I was borned and raised in the Philippines and visit there frequently. I wouldn't call it "boring". In fact far from it..

Heck, I would trade living there (currently in the U.S.) if it wasn't for the lack of high paying tech jobs for all of the outdoor and aquatic activities that are closely within reach after a relatively short drive.

<comment><USER43> I am sorry, but you did not get the point. Do all small cities of Philippines have aquatic activities and parks and outdoor activities? Why people are trading it to stay on the Internet?

PS: I am not saying that the Philippines is not good. I am saying that the Internet is cheap entertainment and fills a gap in places where you do not have entertainment.

</comment></comment></comment><comment><USER45> Around a decade or so ago I did a report on the top SMS/Texting use - <USER2> Philippines was far-and-away number one.</comment>


DogeCoin and Dystopia - Jackson Palmer leaving - <AUTHOR> http://www.thedrinkingrecord.com/2014/06/26/dogecoin-and-dystopia/

<comment><USER2> Shibes be culting.</comment>


JavaScript Training Sucks - <AUTHOR> https://medium.com/javascript-scene/javascript-training-sucks-284b53666245

<comment><USER2> Yup, education could definitely improve.

Something else I would really like to see added to curriculums is a focus on npm and modularity. Even just the basics like semver, common unit testing practices, etc.</comment>


Why Do Schools Stigmatize "Gifted Children"? - <AUTHOR> http://educhatter.wordpress.com/2010/11/26/smart-kids-why-do-schools-stigmatize-gifted-children/

<comment><USER2> In the US, there is a lot of emphasis placed on "closing achievement gaps"

It's easier to slow the smart kids down than make the slow/non-responsive kids perform better.

I don't think there is an active conspiracy or anything, just neglect. In the state of NJ, the only categories on standardized tests given to all K-12 students are Advanced Proficient, Proficient, and Partially Proficient. Advanced Proficient is really what you would just call normal. There is no recognition for high performers. Schools spend almost all of their time on getting kids above the Proficient mark because this is ultimately how funding will be allocated. Also, if you have too many kids below Proficient, the state can take over administration of your district.

</comment><comment><USER3> The article seems a bit vague, after reading it I still don't really get how schools `stigmatize gifted children`, besides of the perception that `gifted children schools` are elitist, a perception not from the schools but from the general population.

<comment><USER4> I was also in a 'Gifted Program' that had me out 1 day of every week. I was told that I was expected to keep up with ALL of the normal assignments, plus the Gifted Program assignments as well. I managed, easily, but some teachers weren't satisfied with that.

One of them decided that because I was in Gifted, I'd have to make sentences with my spelling words. Nobody else had to do this, and it wasn't part of the program. When that proved no problem, then I had to stand up and read them out loud to the class. I even got bored with that and started writing stories with the words. When I got bored with that, I started writing stories with the words, using the order they were given to me.

Right from the time I had to stand up and read, and I was the only one, the trouble started. I was bullied for years, and it only stopped when I started fighting back.

So yeah, they turned a peaceful, gifted child in to a violent child because they couldn't handle the situation.

There are definitely problems with how they handle the whole thing.

Having said that, having the class was still a LOT better than not having it. If I could go back and skip the class and miss out on the bullying, I wouldn't. I'd keep things as they were.

</comment></comment><comment><USER5> I've been educated in two different countries and the obsession that the US schools have at every level with segregating and separating students never ceases to surprise me. Administrators are so obsessed with the metrics used to perform this separation that they are no longer doing any real educating and are instead developing more and more arbitrary rules for separating students. If you don't believe me then I point you to the profits being made in making standardized tests. The solution is simple but it leaves a lot of educational pundits and standardized test makers out in the cold. Everyone is held to the same standards gifted or not with the caveat that special education still chugs along as it does today.

<comment><USER6> What of the students who can pass the 12th grade standards in 7th grade? Do they take the next 5 years off?

<comment><USER5> I didn't say anything about penalizing people. If you are so gifted that you can take college courses in 7th grade then be my guest but you'd be surprised to know that in most other nations what people learn in 6th and 7th grades is what the US students learn in 11th and 12th grades. The point is that educators should be focused on educating instead of providing a custom tailored product to suit the prevailing political climate in order to funnel more dollars to their school's districts. Removing all the testing and separation and holding everyone to the same standards makes it much easier to apportion tax dollars in a fair way. Currently there are so many bureaucratic layers and so many constantly changing rules that by the time textbooks are published they are already out of date and new ones have to be ordered for the next school year. Obviously this only benefits the book publishers who are more than happy to reprint materials sometimes even different materials for adjoining states and get paid for it.

<comment><USER7> It's not enough to just let students take the classes at their level; you also have to offer them classes at their pace. The 5th grader who's ready for algebra is probably capable of finishing the course in a third of the time that it would take a 9th grader who is taking algebra at the usual age for US students (at least, that was the case for me and the cohort of segregated gifted students I was in).

Offering special classes for gifted students can also help solve a lot of problems stemming from disparities in emotional and academic maturity, or offer instructors the chance to provide greater depth or branch out beyond the standard curriculum.

<comment><USER5> How far are you going to atomize the students? Grade level, proper pacing, emotional development, what else? The logistics of what you are suggesting is simply impossible. I have been involved in the education space and I know people that are still in it. If we had more resources and a lot more teachers then providing a customized education experience for students would be possible but the system is simply not there and won't be there for a very long time because everyone is focused on making the system more and more convoluted. There is no push to simplify and streamline standards and processes because there is more money to be gained from making things convoluted. The problem is that politicians treat it as a business and consider tax dollars spent on it as an investment and naturally they want to see a return on this investment so they start to measure things which almost always ends up being the wrong way to approach the problem because an education is a holistic process and treating it in six month chunks makes no sense whatsoever.

<comment><USER8> Well, it's going to have to be something other than "Keep doing the same thing but throw more money at it."

What about scrapping about 80% of the curriculum and returning to an apprentice system as a serious career path? Does teaching "item A" in the curriculum really _matter_ if the resulting system still churns out 90% of its graduates who don't know or can't do A? What about really deeply integrating computers, in a way that isn't just "Keep doing what we're doing, but throw more computers at it?" What about any of these things but different for different children?

I don't really know what the answer is, but I observe that it simply can't be "keep doing what we're doing". The entire world has changed a lot in the past few decades and schools are starting to look distinctly 19th century. Not a typo. And I don't mean that the answer is "add lots of shiny technology" necessarily, but this factory mentality has got to go and I don't know that we can get there by incremental change.

"How far am I going to atomize the students?" Why, until they are what they actually are again: Individuals.

<comment><USER5> Who are you quoting? Is it me? If it is how did you infer I propose doing the same thing but with more money? In fact I'm advocating the opposite. Currently the move is towards more and more customized education and it's not working out well at all. The whole thing is so convoluted that whenever a student ends up learning something people have no idea if it was because of their efforts or some other factor so moving towards even more customized education is going to make things worse not better. Also, in the future please refrain from putting words in my mouth if you were indeed quoting me.

<comment><USER8> Obviously I wasn't quoting you. Your text was right there and clearly did not include those phrases. Quotes can also be used grammatically to turn a phrase into something that can then be commented on as a phrase, rather than as direct speech of the speaker. This is why the Lisp quote operator is called what it is, for instance, it is doing the same thing.

I may overuse it, but, well, I'm just very comfortable with that usage. Sometimes it's just what is called for.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> The whole idea of levels where each kid should be at certain ages forces achievement down. While some kids are sufficiently challenged, others are bored and those with different learning styles are left behind.

Wouldn't it be better if children learned topics that they care about about and at their own pace? How long must the development of the mind be hampered by bad ideas?

Wouldn't it be the best possible outcome if children grew to love the learning process instead of learning to sit and regurgitate?

<comment><USER10> Several points:

First, children aren't the best judges of the topics they should be learning.

Second, children aren't the best judges of how to most effectively spend their time and judge their own pace, nor should they be: They're children. If I were given a choice in high school, I would have skipped all literature and English classes, played videogames all day, or something else that would be equally destructive to my future.

        > Wouldn't it be the best possible outcome if children grew to love the learning process instead of learning to sit and regurgitate?

You're knocking down a straw man: Allowing children absolute freedom isn't necessarily going to lead to them love the learning process, nor is the current system completely about regurgitating facts.

<comment><USER9> Yeah, those are the two choices. learning or playing video games. straw man, you say?

<comment><USER4> He gave an example, not a false dichotomy.

</comment></comment></comment></comment><comment><USER11> Gifted education doesn't encourage entrepreneurship and is likely to lead to careers that are less enjoyable.

</comment><comment><USER12> TL;DR: School sucks</comment>


Ask HN: Service that negotiates and switches between companies on your behalf. - <AUTHOR>

My phone contract period has expired. I have a feeling that if I ring my phone provider up and let slip that I'm thinking of moving to another provider they'll offer me a deal. I don't want to do this myself. Is there a service which would do this for me, or could it viably be created? If not, why?<p>Critique the viability of this idea. <comment><USER2> It seems like a valuable service and has a built in revenue model in that users could pay a fee based on the actual savings that they realize. There are two questions/issues that come to mind:

1) How wold the negotiations be facilitated? My guess is that this would have to be actual human-to-human contact, which seems expensive. One way to keep the costs down may be to develop a filtering system that only accepts users with bills that have a high likelihood of being eligible for some discount. That way your resources would only be spent on the users most likely to generate revenue for you.

2) Do service providers like cell phone companies discuss account details with a third party who is not the account holder? It seems like the type of thing that a big company wouldn't want to allow for any number of reasons (i.e. privacy concerns, preventing an "agent" from negotiating on behalf of the user).

Some aspects of your idea are topically similar to BillShrink.com although they aren't doing any negotiating on behalf of individual users. They are doing quite well.

</comment><comment><AUTHOR> Users would have to share their authentication details with the negotiator, which would be a security risk but would mean the negotiator would be indistinguishable from the user.

The service providers certainly wouldn't like it but I'm not sure there's much they can do.

<comment><USER3> Totally - and not just little details like passwords but big details like multiple security question answers and social security numbers (when negotiating bigger ticket items).

</comment></comment><comment><USER4> I like the idea. It's a non-stop negotiating service. It could be outsourced. And, unlike some outsourced personal assistants, it could be done passively by monitoring your credit card statements.

I think the basic economics for a specialized negotiating call center work out easily with people making $10/hour. One of the big costs of negotiating with providers is waiting on hold. But your call center software can recognize when an operator comes on the line and automatically route the call to a currently available negotiating specialist.

<comment><USER3> I like the idea as well but I can imagine that $10/hr employees are not trained/educated/{whatever adjective you pick} enough to do the negotiations. The proof is there: they are working for $10/hr. If they had quality skills like that, they wouldn't be making $10/hr in a call center. This means they would require extensive training (which would up the overall cost, particularly the upfront cost to get started).

Now as to the idea, I think it falls into the, "I'd use that" category from a user perspective and would have a B2C model; in my view of it, you would sell directly to consumers or partner with companies to sell at a discount to their members/userbase.

* How do you bill? Do you bill differently for monthly bills (i.e. utilities, car loans) vs. one-time expenses (i.e. jewelry purchase)?

* Is this an unbiased service or will your company step in at "just the right time" and say, "You can save $100 on car insurance right now with our preferred provider!"

* What is the average amount to be negotiated? If it is $100/month bill, then you should be able to negotiate down to $85-$89.99/month. That means you save the customer, on average, $12/month in that scenario. How do you convince me, the customer, that your price is worth my saving $12 a month?

* How much did it cost you, the entrepreneur, to save your customer that money? I'd assume it cost a minimum of $7 in raw time on the phone/logging the call and then another $10-$100 in training/software/"misc" costs depending on what they were negotiating.

Anyway, just random thoughts. This is one of those, "Cool idea but I can't figure out how to actually make money with it" ideas to me.

<comment><USER4> My experience negotiating repeating bills is that it's not rocket science. I renegotiated with Server Beach by sending a single email ("Hey, can you lower my server prices to match what you're advertising on your website?"). I renegotiated with my credit card by calling and saying ("Hey, can you lower my interest rate?"). The advanced credit card negotiation skill is to say "That's it? I need you to do more."

These are all things that can be done for $10/hour. The trickier negotiations are things like what you would do with Comcast, where there are deals to be had, but they often involve slight changes to your service. That either requires some judgment or someone who can take notes and get confirmation from you.

<comment><USER5> I think most people would be amazed at what you can get by paying the slightest attention to what a company offers, and asking nicely.

It shouldn't take that much time... every few months just make a list of what you pay per month to each service, and go and check their websites for any cheaper prices or deals. If there are any, call up and ask NICELY to have them lower your rate. I'd bet most are going to be willing to do that.</comment></comment></comment></comment>


Are you (programming) in your comfort zone? Please don't - <AUTHOR> https://dev.to/agazaboklicka/are-you-programming-in-your-comfort-zone-please-dont-69i <comment><USER2> I appreciate the note of caution about the panic zone. Is your project closing in on a crucial, game-ending deadline? Don't pick up a brand new library that promises to save your life, do your dishes, write your code for you, and walk your dog. Save that for later and just buckle down to the drudgery of doing the predictable thing, until the urgency is over.</comment>


Chartbeat gets $3m from Index, Calacanis, Conway, Clavier, Sacca - <AUTHOR> http://techcrunch.com/2010/08/31/chartbeat-3-million/

<comment><USER2> Chartbeat is very cool, but I wonderful how useful it actually is.

Is the idea to modify content on the fly as it gains traction? I just don't really see how this service adds value (read: increases my revenue, pageviews, xxx), besides some nice live updating charts to look at.

<comment><USER3> I've used it for several months. It's not a replacement for Google Analytics as some have implied. However, it is useful for getting early feedback on your marketing spend. For example, if you turn on an expensive Google SEM campaign, you can start watching the visitors in real time. I've used this to find negative keywords and block them instantly, without waiting for Google Analytics reports to catch up.

</comment></comment><comment><USER4> Chartbeat was uber powerful for Mahalo. I'm not surprised that Jason Calacanis invested in it.

Mahalo lives-and-dies in grabbing headline traffic and monopolizing on both short and long-tail trends. Chartbeat shows exactly which pages are hitting. It's an easy to follow formula for updating pages on Mahalo. The system not only shows which pages are hot, but which pages are talked about on Twitter and shows very early trends from the SE's.

Jason would regularly encourage folks to use it before his investment. Seems like a good snag for him.

<comment><USER5> You are 100% correct.

Last year we would see trends like StarCraft 2 come out, so we made pages like this:

[http://www.mahalo.com/starcraft-2-wings-of-liberty- walkthrou...](http://www.mahalo.com/starcraft-2-wings-of-liberty-walkthrough)

Which we spend and make thousands of dollar on, and then double down by making videos on our Youtube channel:

<http://www.youtube.com/watch?v=5YzhojCvUYA>

Some SEO folks claim we "spam" search engines, but the truth is we identify any page that gets over 1,000 views a month on Mahalo and we then spend $500 to $5,000 building it out.

The reason we are the #170th largest site on the web (and profitable), is because we use Chartbeat to find our winner and we DOUBLE DOWN on original content.

After we double down you know what we do?

We _double down_ again! :-)

I love Chartbeat. It rocks. It's also helping us build out vertical Q&A sites like www.ipad-answers.com. We have three or four pages that break out on a site this every month, and we send amazing talent to those page and blow out amazing answers. Again, double down and double down again.

When you got the nuts you pound it.

<comment><USER6> Is any of this related to Chartbeats USP of it being real time? Sounds like any analytic package would show you which areas are receiving the most traffic in a time period.

It isn't like seeing trends _now_ is different to seeing trends _in a few hours_ given that you have to spend resources and time doubling down ...

<comment><USER4> For Mahalo, the difference was immediacy. Mahalo had a lot of existing pages that did not provide adequate information. Remember that the vast majority of Mahalo pages were created automatically by a bot or by using outsourced labor that didn't do a very good job. They were ranked but crappy.

So, when a trend hit or for whatever reason, a page started to receive traffic, you could see it right away, add a bunch of content to it and then almost magically, push up it's search engine result position to snowball the page. For topics such as "Tiger Woods Affair", recall notices, etc, it worked really well.

Generating pages with inadequate information is in the same vein as throwing crap at a wall to see what would stick. It could be thought of as SE spam, but when quickly and carefully built out it was just the way that Mahalo worked.

</comment></comment></comment></comment><comment><USER7> The market for these kinds of services is going to be great over the next years. If you want to make a startup, do it off those principles:

We have all this unstructured data and information - make sense of it, and give it to me in a useful instantly understandable format.

<comment><USER8> Can you expand on this? I had blogged about how I would like future of web analytics to be: [http://www.wingify.com/conversion-blog/what-web-analytics- sh...](http://www.wingify.com/conversion-blog/what-web-analytics-should- actually-be/)

Hearing your thoughts on this will be interesting.

</comment></comment><comment><USER9> I think chartbeat on a cool factor is high but on a useful factor it's low and therefore I passed. What web analytics needs is to go beyond just showing the data (real-time or not) into helping you understand WHAT NEEDS TO CHANGE in order to IMPROVE your website objectives.

To be more specific: Tying in a/b testing with user flows and analytics like \- ranking pages by abandon rate so you can see where your loosing people \- tracking funnel processes like sign up and shopping cart to identify problem areas \- ranking links based on clicks to show what users really care about and what is just taking up space on a page \- enabling exit interviews and real-time chat with users to collect feedback \- and on top of identifying problems it would be really useful for it to present suggestions to help solve the problems.

Analytics are just a means to an end but for some reason analytics companies think analytics are the end. Big disconnect here as most of their customers don't have the sophistication to take the analytics and know how to improve their site from them. The analytics company that provides an idiots guide to fixing problem areas and optimizing your site will be a game changer.

<comment><AUTHOR> Hey Jon, I'm the GM of chartbeat and totally appreciate your point. Everything you say is super appropriate for the traditional role of static analytics which was to look at usual behaviour on fairly persistent architectures over time and optimize that.

However, real-time analytics is almost the antithesis of this. It's focused on exploiting unusual behaviour _now_ often across transient content. With this kind of content and the kind of user flows we are seeing more of across the sites we track (more spikes and troughs than ever before) you can seriously boost your traffic by reflecting user behaviour in the site and (as Jason suggested above) doubling down on what's got the edge in that moment. The page that's driving the majority of your traffic today might not have existed yesterday and might not be looked at tomorrow so purely trying to apply traditional analytics methods to it has diminished utility.

So you should totally continue to use traditional analytics for optimising the persistent architecture of your site (I'd highly recommend Kiss Metrics), but think about chartbeat as a complement to that, helping you adapt the transient content on your site to the flows of user behaviour.

There's a reason almost every major publisher has integrated chartbeat, some spending thousands of dollars on us a month, and it ain't just because we're pretty ;)

<comment><USER9> Hey Arctictony, Thanks for the clarification. I agree your guys solution is perfect for media companies or any company that has fresh content coming in and needs to know which content is working. I think Jason's strategy is right on. I guess I'm just bitching because I can't find a "smart analytics" company, one that goes beyond the numbers to recommend solutions for companies like mine.

My company is <http://www.MojoPages.com> and we are constantly iterating the site to improve the user experience. Analytics companies like Kiss Metrics don't show the level of detail that we need to really understand the smartest improvement. We're forced to test, test, test and hope we're smart enough to figure out the problem and the optimal solution.

Imagine if an analytics company used the data from 1000's of clients to be able to suggest problem areas on your site. An example is if it could analyse your sign up flow and tell you if the location or color of your button or the amount of fields you had etc. was hurting your conversions and the data shows that if you made x,y and z change it would improve 20%. It would make life at a start-up a little easier and whoever creates this magical analytics company a little richer.

</comment></comment></comment><comment><USER8> This is an interesting announcement. Chartbeat may have $300k annual revenues (2500 * 10 * 12), 5 employees and a ton of competitors (GA, Clicky, and tons of other web analytics tools). And they raise $3m. Probably they have interesting plans ahead.

</comment><comment><USER10> Khan Academy on Chartbeat

[http://chartbeat.com/dashboard2/?url=khanacademy.org&k=0...](http://chartbeat.com/dashboard2/?url=khanacademy.org&k=032eb5f1ea0b68a948634d6af8a6ee8e#)

</comment><comment><USER11> "Real-time analytics" is a contradiction in terms, imo. Analytics isn't day trading. Who takes action in response to data in "real time"? What does that even mean? Even Jason Calacanis says "...the truth is we identify any page that gets over 1,000 views _a month_..." (my emphasis). There's a lot of novelty value in blinking stats, but I concur with the general sentiment here that we need better analytics that makes sense of the data, not "real time" analytics that just pumps it out faster.

<comment><USER5> Sorry, I didn't explain clear enough.

Chartbeat acts as an early warning system as to what those pages will be. so, if we are watching out big winners and suddenly see a new page jump into the top 50 pages we can double down on that THE MOMENT it spikes.

this is uber-powerful.

</comment></comment><comment><USER5> I've been a fan of Chartbeat since day one, and I've been a consultant to the company for a year. I was thrilled to be invited as the first investor into the company, and the sky is limit for this startup.

ChartBeat is Google Analytics on crack. :-)

</comment><comment><USER12> I've been using chartbeat for the past few weeks. It's absolutely awesome and I recommend it to anyone here. FYI, I have no affiliation with their team + don't even know the team there.

</comment><comment><USER13> I really love chartbeat. It's very useful and addicting, so you have to be careful to not waste loads of times watching it.

</comment><comment><USER14> These guys will get snatched up by Google. It would be a perfect complement to Google Analytics.

<comment><USER4> It sure seems like a good fit... Charbeat focuses on real-time analytics while Google delays stats. Adding Chartbeat's real time capabilities would be interesting.

I don't know if Google would take the performance hit of Charbeat's code though. It would make more sense to me for Google to simply build in Chartbeat's real-time block of popular pages into a new section. Add in "conversation" options to track Twitter, Facebook, etc and they'd have a new interesting social aspect.

Chartbeat has a way to go if they really want to be bought by Google. My money is on Google simply recreating the best parts of it with an eye toward performance over features.</comment></comment>


Ask HN: Groupon meets oDesk - <AUTHOR>

Does the HN community see a market for a groupon site for software development. Someone posts a project idea, people pledge to fund the development of the project, bids for the project are accepted, once project is accepted source is available for users. A more complicated use case for software/website is the code is hosted and users split up marketing. <comment><USER2> Can't you do something like that on Kickstarter?

<comment><AUTHOR> yes that would be the idea. But you can outsource the work and the output is shared in some kind of licensing arrangement which might havea resell component to it.

</comment></comment><comment><AUTHOR> contact me via email on my profile if anyone would be interested in using this platform.</comment>


Cocktail recipe startup GarnishBar launches - <AUTHOR> http://www.garnishbar.com/

<comment><USER2> Hey guys, this is Ben from GarnishBar. Those are great points Xinsight and JessMartin. We have a bunch of ideas for the site in future releases that will start to differentiate us from other cocktail sites and of course If you have any ideas we'd love to hear them.

<comment><USER3> A search box can be so... uninspiring.

Here's a site that I just stumbled across. I want to try almost every single drink on this page.

<http://www.liqurious.com/>

You gave me a search box. I had to pause and think. I typed in "sake", because I tried a root beer and sake drink once that was surprisingly delicious. No results. Ok, so you're building your database, but what should I have typed in there? Why not just show me the best/newest/most-interesting drinks in the db?

<comment><USER2> Fair enough.

Showing a short list of the "best" recipes on the main page is something we're currently considering. Once we develop the ability for users to submit, comment, and rate on recipes we'll have the data to list the "Best" recipes (based on community rating) on the home page.

However you did point out a few other things that we should address. Such as what more can we give the user when their search doesn't return any results?

And how can we make the experience better for someone like yourself who wasn't searching for something specific but rather was just browsing our database for something interesting.

FYI, Liquorious.com is a great site for browsing, but not so when searching for a specific recipe.

Thanks for the feedback. This has been very enlightening.

Best, Ben

</comment></comment></comment><comment><AUTHOR> It will be interesting to see if this site gets traction. Particularly because they are competing against SkinnyCorp, the folks behind Threadless, and their site ExtraTasty.

The site looks good, and navigation feels well thought out.

</comment><comment><USER3> It's a read-only database of cocktails. Hasn't this been done to death? Is there an angle to the concept that i'm missing?</comment>


Delivery Drones Use Bird-Inspired Legs to Jump into the Air - <AUTHOR> https://spectrum.ieee.org/automaton/robotics/drones/delivery-drones-use-birdinspired-legs-to-jump-into-the-air <comment><USER2> Where I come from, we call them ornithopters.

<comment><USER3> Doesn't flap</comment></comment>


AddressSanitizer: a fast memory error detector - <AUTHOR> https://code.google.com/p/address-sanitizer/wiki/AddressSanitizer

<comment><USER2> It would have been nice to have a small paragraph at the beginning saying what this tool actually does. That helps people who want to quickly evaluate whether they want to read more about this tool.

I only see "a fast memory error detector" at the top.</comment>


Why our agency helped a client open source the web app we wrote in Elm - <AUTHOR> http://futurice.com/blog/open-sourcing-a-client-project <comment><USER2> I look forward to learning more about Elm by digging into a decent-sized Elm application.</comment>


Steve Jobs wanted to 'further lock customers' into Apple's 'ecosystem' - chestnut-tree http://www.cnet.com/uk/news/steve-jobs-wanted-to-further-lock-customers-into-apples-ecosystem/

<comment><AUTHOR> All the more reason to Boycott Apple!</comment>


Redesigning The Netflix API - <AUTHOR> http://www.slideshare.net/danieljacobson/redesigning-the-netflix-api-oscon

<comment><AUTHOR> I have a feeling that a lot of businesses will start looking like the device- centric "Netflix API requests by audience" pie graph in the near future</comment>


Show HN: ElasticSearch for Images – demo with shoe images - <AUTHOR> https://featuresearch.co/demo/demo.html <comment><AUTHOR> Similar to the approach for Pinterest visual search, but compares the feature outputs of a CNN directly without creating a 'visual vocabulary'. The search strategy is k approximate nearest neighbors, with k as a search parameter, allowing for a speed/accuracy tradeoff. Currently, I'm exploring offering this as a service, and am working on customer/product development and open to any and all input and suggestions.</comment>


To Grow, Netflix Must Learn From the Quietly Brilliant UI of Regular TVs - <AUTHOR> http://www.wired.com/design/2014/02/regular-old-tv-still-has-the-best-ui-around-netflix-should-copy-it/

<comment><USER2> Yes, yes and yes. I've been saying that for years now :)

[https://news.ycombinator.com/item?id=5115839](https://news.ycombinator.com/item?id=5115839)

That, and live sports, should totally obliterate "traditional" cable tv.</comment>


Ask HN: What to look out for when looking for a new apartment? - <AUTHOR> I'm looking a new apartment, what should I look out for to don't fall in a money pitfall? <comment><USER2> • How much is rent on 6 month lease vs 12 month or M2M.

• 1 time Fees (Application, security deposit, etc.)

• Reoccurring Fees (Parking, Trash etc.)

• What utilities are included

• What utilities are not included and who to go through to get them set up

• What furniture/appliances are included if any

• Anything else that is included or valuable to know

• Method of payment (Do they do online re-occurring payments)

• If you have pets make sure they are pet friendly, find out how much it costs and if they do damage the apartment does it effect the one time fee, security deposit or both.

• Always check out the apartments in person, like Facebook profile pictures, pictures of apartments are always inflated to look better.

These are just some things I would personally find out before moving based on past experiences. I am not a housing professional.</comment>


PhantomJS 1.5 released (headless WebKit with JavaScript API) - <AUTHOR> http://code.google.com/p/phantomjs/wiki/ReleaseNotes <comment><USER2> Wow. Congrats on finally going completely headless on Linux. That's a big deal.

This makes it the first modern browser replacement for our old moz-headless- screenshot branch, which is effectively Firefox 3.6. It's really a shame no- one's picked up that work for modern FF builds. Couldn't even find someone to hire for it...

<comment><USER3> Could you explain what this means exactly, going "headless"?

<comment><USER4> That you can operate the software without the normal i/o devices (monitor/screen, mouse, keyboard etc).

With browsers, it's commonly used to programmatically take screenshots of web sites.

</comment></comment></comment><comment><USER5> _No more support for Flash and other plugins_

So sad to hear this. That was my main motivation for using PhantomJS. Fortunately 1.4 still supports it.

<comment><USER6> What do you use it for?

<comment><USER7> I use to get a daily overview of ads on a bunch of publisher's sites, fortunately the older version with flash support will continue to work just fine for this case.

<comment><USER8> We're doing this at scale at MixRank-- it'd be interesting to chat. Mind shooting me an email? (scott at mixrank.com)

</comment></comment></comment></comment><comment><USER9> When I use Selenium, I know the browser supports everything that the end user will and that includes, javascript evaluation, plugin loading, whatever.

To make a comparison for our heavy Selenium use, I can't clearly see what is lacking in PhantomJS that would be a show stopper.

Does anybody know if other than lack of Flash support, it covers all aspects of what the end user would experience ?

<comment><USER10> The main advantage of Selenium is that it allows you to test cross-platform compatibility, since it can be configured to run on pretty much every major browser/OS combo.

For everything other than that, though, PhantomJS is fantastic. It's infinitely more pleasant to deal with than Selenium.

</comment></comment><comment><USER11> If you're looking for a great PhantomJS based testing library, check out CasperJS. It's awesome. <http://casperjs.org/>

</comment><comment><USER12> Congrats to PhantomJS!

CasperJS is built on top of PhantomJS and adds some cool assertions: <http://casperjs.org/>

</comment><comment><USER13> This looks incredibly useful for browser based unit testing.

<comment><USER14> And screen scraping!

</comment></comment><comment><USER15> If you are currently using Rhino to run Javascript then PhantomJS makes for an excellent and more functional replacement.

In addition to running library unit tests in a 'real' browser environment it can also be used to test apis and visual components, and then save results as files and screenshots for use with other systems such as Hudson.

I use it extensively for our web app build and test cycle at work (Causata.com) and to save time for anyone interested in rolling their own have made the code available on Github at <https://github.com/metafeather/phantomjs-yuitest>

</comment><comment><USER16> I have been surprised that this project has seemed to fly under the radar for so long. It's extremely useful in a variety of scenarios, and as far as I know, it is unique in its capabilities.

I've used it to allow modern applications to interface with legacy systems that have no mechanism of extension, and no API other than their web interfaces. Just about anything you can control via a web interface, you (or your software) can control using PhantomJS.

<comment><USER17> Could you give some examples? I'm very curious about these types of uses..

<comment><USER18> We're currently using it to generate static map images for a powerpoint export feature we introduced a little while ago. We initially were going to use Google's static maps API but quickly ran into limits (only 5 custom markers, needing a different set of code to actually generate the maps) and decided to take screenshots of the map in our existing application. Besides actually being able to generate maps the way we want them, the other big advantage is that since it's sharing the same code base as our web product it's much easier to catch issues if they crop up. Being able to run headless on linux is amazing (on OS X you download the binary and it just works, getting 1.4 to run cleanly took a little bit of playing around to get Xvfb to play nice).

<comment><USER17> Awesome; thanks for the feedback.

</comment></comment></comment></comment><comment><USER19> Anyone have a cheat sheet on using phantomjs as a drop-in replacement for wkhtmltopdf? <http://code.google.com/p/wkhtmltopdf/>

For the superior completely headless qualities? There was a post on HN almost 400 days ago where someone claimed wkhtmltopdf's PDF output quality was superior to phantomjs - anyone know if that's changed with this release?

<comment><USER20> It is there in the linked page

<http://code.google.com/p/phantomjs/wiki/ReleaseNotes>

Search for "rasterization"

</comment></comment><comment><USER21> I need to do some web crawling, how does this compare to jsdom on node.js? I'm using node.js of course.

<comment><USER10> In my experience, using jsdom (and other similar node.js DOM libraries) is fine for scraping static content, but tends to fall down when you're dealing with anything that requires executing client-side JS. That's a big deal if you're scraping sites that load in content via XHR, or manipulate CSRF tokens in JS specifically to throw off static scrapers. Both of these are use cases that PhantomJS has handled beautifully for me in the past.

</comment></comment><comment><USER22> After having read the installation guide on Windows for Phantom.js and WebServer, that is embedded in it, apparently installing the first to use the second is a lot simpler!

</comment><comment><USER23> So has anyone successfully deployed this on Heroku?

<comment><USER24> I had the same question, and it looks like you need to roll your own buildpack. This looks promising (although it's for phantom v1.4): [https://github.com/jessefulton/heroku-buildpack-nodejs- phant...](https://github.com/jessefulton/heroku-buildpack-nodejs-phantomjs).

</comment></comment><comment><USER25> Awesome. Was just looking for something like this yesterday to facilitate screenshots for an uptime script.

</comment><comment><USER26> we're upgrading to 1.5 now; be sure to read the build notes for linux, specifically: "do not simply copy the executable as it won't work."

<comment><USER26> also, if you had built from the source previously, be sure to do a `git clean -xfd .` before running the ./build.sh

</comment></comment><comment><USER20> Can phantomJS be run as a daemon?

<comment><USER27> I don't think it works like that. You write scripts for it and can use it to excersize web pages. I have used it extensively to test web sites.

<comment><USER20> Yeah. That's how I have used it. But it would be great if phantomjs can be launched as a daemon and then you pass a script for it to process. Or launch it with a script which runs forever and accepts input (phantomjs has an inbuilt web server).

I think it ay be possible but wanted to know for sure.

<comment><USER28> I've been building a wrapper to enable PhantomJS as a "remote testing library" for RobotFramework (to do exactly what you described): <https://github.com/datakurre/phantomrobot> (and <http://code.google.com/p/robotframework/> for info about robot framework).

<comment><USER20> From a cursory look, it seems you use websocket to communicate with phantom. Neat!!

Is there a minimal program available that shows this interaction?

<comment><USER28> Yes, it uses xmlrpc (node-xmlrpc) for communication between RobotFramework and Node, and websockets (socket.io) for communication between Node and PhantomJS (which didn't bundle http-server when I started).

I'm sorry to not have a separate websockets-example, but there's really nothing special in using websockets with phantom.</comment></comment></comment></comment></comment></comment>


Brian Aker explains Memcached - <AUTHOR> http://radar.oreilly.com/print/2011/04/brian-aker-memcached.html <comment><USER2> Pretty basic overview and not very techy, but the last paragraph is worth the read:

"A question I'll often hear is, "How do I dump the data back out of Memcached?" If you're asking that question it usually means you're not thinking about Memcached correctly."

<comment><USER3> Right. And then he doesn't explain what the right way is.

<comment><USER4> The right way doesn't involving asking this question because you shouldn't be putting anything in memcached that you can't reconstruct from a canonical source. Here's what you do with memcached:

Find places where a result set or computed value takes 500 milliseconds to get out of the database (or to compute in your expensive Apache worker that could be setting up for a new request instead). Wrap the calls that get these values in a caching layer that first polls memcached to see if the result is there, gets the data from the database if it isn't, and then stores it in memcached before returning it. There are plenty of libraries that will just about automate this for you -- you call the fetcher function with the cache key and a callback to use in the event it isn't there, and it does the right thing.

<comment><USER4> "doesn't involving". That'll teach me to comment on HN at 8 AM.</comment></comment></comment></comment>


The High Price of Efficiency - <AUTHOR> https://hbr.org/2019/01/rethinking-efficiency <comment><USER2> Another parable:

People often think that 100% utilization of stations in a factory is a good goal.

Actually a factory that has 100% utilization at all stations is a factory that doesn't produce anything because each piece of work which isn't make work is waiting for the make work to get finished.

You can convince neurotypicals of this after a long conversation and then they come in the next day and you have to do it all over again, and then the day after that, and then the day after that...</comment>


What Programming is Like - <AUTHOR> http://blog.samstokes.co.uk/blog/2014/05/01/what-programming-is-like/ <comment><USER3> How I describe programming to non-programmers:

Imagine you have a set of mentally handicapped employees. They are capable of following instructions perfectly every time, but are completely unable to intuit how to do something without very explicit instructions. That is, they don't know how to scramble eggs without explicitly stating every single minute step (including how to get an egg from the carton (in different positions every time!), what to do if the carton is empty, how to order more cartons of eggs, how to identify spoiled eggs, etc).

Now imagine that you are using these employees to staff a restaurant. You have to write detailed, explicit instructions in a way which will give you a constantly working restaurant given that the customers, stock, and equipment will change parameters minute over minute, day after day.

Now, imagine expanding your restaurant into a chain. How will the programming have to change to work in a building with a different configuration? With different operational hours? With different recipies?

Now, imagine your boss wants to change the menu slightly EVERY BLOODY DAY!

That is what we do.

<comment><USER4> Not bad, except that these employees are superhuman in one crucial way: You only ever have to give them a procedure once, and they've got it for good, and you can then build on that procedure to define more complex ones.

<comment><USER3> True, but procedures can be coded as "go to page 5, do instructions 2 to 55, and move to instruction 3 on this page."

Of course page 5 was probably written by someone else, because it's probably a very basic instruction. But that just adds to our fun as programmers!

<comment><USER5> And by page 5, we really mean the 6th page of the book.

Oh, and instruction 2? It was the third instruction, and mentioned that you should switch books.

</comment></comment></comment></comment><comment><USER6> Nice to see a reference to "The Joys of the Craft" by Fred Brooks (from The Mythical Man-Month). He actually lists 5 really good reasons why programming is so much fun:

1\. The sheer joy of making things.

2\. The pleasure of making things that are useful to other people.

3\. The fascination of fashioning complex puzzle-like objects of interlocking moving parts, and watching them work in subtle cycles, playing out the consequences of principles built in from the beginning.

4\. The joy of always learning, which springs from the nonrepeating nature of the task.

5\. The delight of working in such a tractable medium. The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of imagination.

All excellent points, and great reasons why I still love to code (I've been coding professionally for 25 years so far). I wrote a bit more in "Why I Love Coding": [http://henrikwarne.com/2012/06/02/why-i-love- coding/](http://henrikwarne.com/2012/06/02/why-i-love-coding/)

</comment><comment><USER7> For the average person, programming is simply sorcery.

"How did this iPhone app get built?"

"Um, someone was on a computer, and typed things on a keyboard… uh…"

is not that different from

"How did this otherworldly vortex open and begin spewing demons?"

"Um, this guy was waving his arms, and then it just appeared…"

In the past, this was treated as the inscrutable dark art it is for most people, but now it's blasé.

"That's Peggy, she's HR… Tony, he raises the dead… that's Jim, sales…"

It's therefore unsurprising that the average person could not care less if a given program uses all the best wizarding standard practices, unless it has some horrible side effect--and even then, probably not.

"The wand has a low risk of incinerating the person who uses it."

"How low?"

"Probably 1 in 1000."

"We'll add a disclaimer. Ship it."

The average person has no desire to learn about it beyond the surface trappings. It's hard, you have to learn a lot, and it's boring reading spell books all the time. Sure, necromancers use a lot of garlic, but as to why…? Who cares? Get back in the black spire and finish the undead army already.

<comment><USER8> _" How did this iPhone app get built?"

"Um, someone was on a computer, and typed things on a keyboard… uh…"_

I'm not so sure.

"How did that child get taught?"

"Um, someone stood up in front of them, talked to them and got them to do exercises... uh..."

I think most professions have a dark art to them that the average layperson does not understand.

<comment><USER9> However, in your example, most people have been on at least one side of that equation, if not (at least informally) both sides.

I mean, it's true that I have no clue how to run the machine that mounts a tire on an automobile wheel, but I've at least put a bicycle tire on a wheel so I have at least a little idea of what might make it complicated.

The idea that there is perhaps a larger gap between casual users of technology and the people implementing that technology has some merit to it.

I wonder if, in a sense, what defines "technology" is that size of that gap: it seems like there could be a scale along which we could measure how much we need a techne in order to comprehend the working of something. Although that really would probably be overstating it, I do think that some kinds of work require a lot more technical understanding to appreciate/do... but I could be wrong about that.

</comment></comment></comment><comment><USER10> The difference between my experience and some expressed in the article (and here in some of the comments) is interesting. I'm in my first programming job. I am the lead (and only) programmer and lead game design for a very small new games startup. I'm basically doing what I have been doing by myself in my bedroom for a while, and I dont have to deal with other people.

So, I think of programming like carpentry. Working on a game project I feel like a master carpenter, an artisan, who designs _and_ builds. If I had been tasked with building a nice desk say, I am free to design it, choose my tools and materials and build it how I see fit. If the finished product is fit for purpose and built on time my boss will be happy.

Also, in a former life I used to be an architect (with real life buildings) the bridge metaphor in the article reminds me of that. Perhaps the phenomena described in it are simply inherent to any _large_ project that requires multiple people to cooperate in order to design it.

<comment><USER11> Programming is very much like carpentry. You have your tools you're familiar with, shiny new tools you just bought and learning to use, and some tools you've heard about that might be better but meh, and you have a vision of what to build ... now start cutting some wood and see what happens.

Just like in carpentry you're busy thinking of several things at once: Where did I put my hammer? How will I clamp this to that? Wouldn't it be easier if I cut all these pieces together? I know I should glue this here but screws are good enough ... make a big mess then stand back and admire it all.

It's a practiced art of using tools to make something, it's just the end result appears on a computer screen.

It's not hard to learn either, just start simple. Put a word on the screen. Now draw circle on the screen. Now try to make the circle bounce. Now find shortest path between N number of cities in constant time.

</comment></comment><comment><USER12> We can make or own tools, sure, but there are two ways, it seems, most of them are made:

1\. Commercial companies make tools they need. 2\. Private individuals make tools they think are interesting.

The problem with this approach? There's no democracy. There's no way to know, currently, what the community actually wants or needs tools-wise.

If I could donate a couple bucks to get some small tool I need made and put on Github with some basic standards (can download from maven central, for example), I most certainly would. There's just no obvious/easy way to do that right now.

<comment><USER13> With open source projects there is often a page of feature requests that anyone can contribute to. [0, 1] The problem is that often these are buried deep in a website, and the user has to dig through to find it. The up-side to this is that project maintainers are not buried in a dearth of feature requests. Though for popular projects I don't think it would be hard to find someone to volunteer to sort through the requests acting as a filter or curator.

What if you could put bounties on specific accepted feature requests, like a targeted, more user-friendly BitHub?[2] You could even offer small bounties for submitting a feature request that is accepted and implemented. I think that this would be reasonable because the "idea person" is adding some value to the product.

[0] [http://dev.deluge- torrent.org/wiki/Development/PluginIdeas](http://dev.deluge- torrent.org/wiki/Development/PluginIdeas)

[1] [https://github.com/WhisperSystems/TextSecure/issues?labels=f...](https://github.com/WhisperSystems/TextSecure/issues?labels=feature&page=1&state=open)

[2] [http://bithub.com/earnpoints](http://bithub.com/earnpoints)

</comment></comment><comment><USER14> A coworker described programming as a one minute long repetitive kick in the balls followed by 59 minutes of enlightening lucid euphoric acid trip but most of that was wasted working out how to avoid being kicked in the balls again and that he didn't know if he was enjoying it or not yet (after 20 years of doing it).

</comment><comment><USER15> I read "Programming Sucks" last night. While that essay stands well on its own (and is utterly hilarious, in a painful sort of way), it is, as Stokes mentions, a bit one-sided, and this is precisely the counterpoint it needed.

</comment><comment><USER16> I agree that programming is amazing, but only when you're building something that you personally want and have the freedom to do it the way you want to.

Most "real-world" programming is actually pretty lousy.

</comment><comment><USER17> Responding to the article's first two paragraphs: I'm about to state a controversial opinion, in the sense that I can't verify it formally. But through my work, volunteering and social interactions, I am slowly believing in it more and more (and I'd love to hear counter-arguments to it).

I think the reason why the average citizen has no idea of what programming entails, by contrast to a doctor or a lawyer or a fireman etc., is that programming mainly involves abstract reasoning to a level which most adult people simply can't grasp. Not because of their intellectual capacities, but because it's never been properly fostered or developed through their education.

A fireman puts out fires and assists in emergencies, a teacher teaches a classroom of students, a salesman tries to sell whatever he's selling - <USER2> those professions have a fairly obvious mapping to the outcomes they produce.

But programmers are much harder to intuit: on one end of the chain you have guys wearing tee shirts and flip flops sitting in front of their computer all day wearing headphones; on the other end you get websites and iPhone apps and GPS software (and those are only the things with which the average citizen is familiar). Understanding the link between the workers and the outcomes they produce requires some familiarity with the symbolic manipulation that's involved. Given this, it's fairly understandable why if one weren't familiar with this process, it'd seem reasonable that a computer programmer could just as easily stop nuclear terrorists or put a curse on their enemies with 3 keystrokes.

Abstract and logical reasoning are crucially missing in the modern education we give to our kids (witness the way math is now taught in the US, in ways that make mathematics become some kind of weird automatisms, stripping them away from everything that makes mathematics, mathematics). Repeat this over years and years, permeate the culture with it, and you get citizens who not only don't get this entire world of symbolic reasoning, but also for whom bridging that gap has become near impossible.

I've actually gotten in great conversations with the non-scientific type at house parties, conveying basic computing and logical reasoning concepts. I once met a girl who was a textiles worker - we got in a great conversation about Jacquard looms, which she had studied in college - and from there I was able to get her to play with the ideas that lead to computation and all that fun stuff.

What would be cool is a TV show which would do to computing what Cosmos did/does to science (I have non-scientific friends who deeply resonated with the new Cosmos and loved it, and the ideas it presented, pushing them to seek more). I wonder who we should pick for our Carl Sagan/Neil deGrasse Tyson.

<comment><USER4> So how do we programmers acquire the abstract reasoning skills that you say most people don't have? It came naturally to me; I started programming when I was 8 years old (in BASIC on an Apple II), and I don't think there was anything exceptional about my education up to that point.

<comment><USER18> I think getting exposed to things early is a big part of it. Young minds are very malleable. Of course you're not able to understand things completely at a young age (or any age), but those things you can understand and continue to be exposed to become very ingrained in your mental processes and how you understand the world.

<comment><USER19> This is both a response to GuiA and dpeck. GuiA's comment was right on from my perspective. When I was about 10-11, my class was in our school's computer lab full of new Apple II machines. We were supposed to be writing an essay on the computer so we could print it and turn it in. Computers were so new to us and our teachers that we were still taught to double space after end punctuation.

I noticed a classmate messing around in a totally different program, and asked what he was doing. He said, "Come here, check this out." He hit enter, and on the screen appeared the prompt, "What is your name?" He said, "Go ahead. Answer it." I typed in my name and hit enter. Almost immediately the computer responded with another question, but this time it addressed me by my name. My first thought was that, somehow, this machine consciously knew it was communicating with me.

I had to know how this kid made the computer act like that. He showed me the BASIC code he used to store my input in variables and reference it later. I understood what he taught right away, but it certainly didn't come naturally to me. I was fascinated by programming, and wanted to know what was possible with all of the stuff I hadn't learned yet. I was lucky to have been exposed to it so early. If we had been doing what we were supposed to, I wouldn't have had that opportunity.

dpeck, you mentioned that young minds are very malleable. I completely agree. I inferred (possibly inaccurately) from that statement that older minds are not as malleable. I would word it differently (and probably flawed). Minds that have not yet submitted to the authority of the status quo and thus accepted the limitations therein are still open to and actively seek discoveries which may influence their perspective. Many adults, hackers in particular, continue to explore even when they're explicitly told not to.

So, I would argue that all minds are very malleable. Some who desire control aggressively act to corral many minds into spaces that restrict curiosity and exploration. Until a mind has been corralled into one of those spaces, it remains very malleable. I believe that early exposure is certainly a great benefit, but there are many adults who could become great programmers who have not yet started.

Having a perspective that is likely foreign to HN, I can offer some insight from a beginner's point of view. I am fortunate that the projects I have been interested in until now have been profitable enough to support my family. While many of those projects required a strong understanding of what's going on behind the scenes of a program, I didn't really have to code very much. I did learn whatever programming ability I needed in order to make my programs meet their objectives without error.

During tough financial times and in between projects that interested me I'd curiously browse job listings for programmers. From a beginner's perspective, even a beginner who's willing to learn, they're daunting as hell; BS required, MS preferred, 10+ years experience in programming, 5+ years experience in a language that was released 3 years ago, etc.

All you seem to hear about are these self-proclaimed prodigies who taught themselves to code just after kindergarten.[1] Educational resources are taught by the types of programmers those jobs seem to be targeting. So programmers at your instructor's level will be your direct competition for employment. If you're an expert at anything, then you realize how much you still have to learn and the beginners are so much farther behind that. So a programmer with 10 years of experience who's still improving seems tough to compete with when you're getting started.

I understand that it's relatively simple for a beginner to become a good programmer in just a year or so. But from a beginner's perspective, jumping into it doesn't look as easy as it actually is.

I apologize for the long response. Thank you for your time.

[1] I'm not implying that everyone who learned to code young thinks they're a prodigy. I learned young, and I admit I'm still a novice.

</comment></comment></comment></comment><comment><USER20> Fred Brooks statements are like 40 years old and it's important what he said :)

I am on the things sucks side. IT seems to be in it's dark age

And it's negative that teams don't scale ;)

And the single one genius (that he proclaimes to be 10 times more productive) leads to a lot of trouble

Everyone thinks he is the one

<comment><USER12> Most of my coworkers don't claim to be brilliant programmers, but I would say they're pretty good.

I'd like to think I'm productive but it's for a simple, stupid reason:

I like to use libraries to write as little code as possible. I re-architect my code when it gets too complex and I test my code locally. I only re-invent the wheel when it's absolutely necessary and even then, I try to make it a small, re-useable package that only requires one or two lines of code to use.

Management and QA don't bother me. My integration phase lasts about an hour, compared to weeks for others.

That's what a real "10x" programmer is: someone who follows practices, cares about re-use and doesn't need to re-invent the wheel. If a cowboy coder claims to be a 10x programmer, he's probably the reason everyone else is only a 1x programmer.

<comment><USER20> So, just as a reference:

"Google I/O 2009 - The Myth of the Genius Programmer": [http://m.youtube.com/watch?v=0SARbwvhupQ](http://m.youtube.com/watch?v=0SARbwvhupQ)

There are quite a couple of possible views in IT, which makes it hard for us

</comment></comment></comment><comment><USER21> > Yet the program construct, unlike the poet's words, is real in the sense > that it moves and works, producing visible outputs separate from the > construct itself. It prints results, draws pictures, produces sounds, moves > arms.

This is true of poetry as well. The pattern with which you arrange words in sentences, and sentences in paragraphs, can summon up an infinite number of visuals in someone's head. Words are brilliant in that they are literally the bridge between two people's minds.

The poet is the programmer of the imagination. There is value in both the words themselves and images that the poet/programmer elicits.

</comment><comment><USER22> Programming as a craft is awesome, it is fun and challenging. Programming as a business is usually a depressing "shitshow". This is the most important distinction for me personally.

</comment><comment><USER23> >> Imagine joining an engineering team […] for a bridge in a major metropolitan area.

> Programming is like building structures out of Lego, but I never run out of > Lego bricks

Nice two articles. One says programming sucks, reply says programming is amazing.

I would say programming is like building stuff out of Lego bricks. If you are building bridge (or anything people depend on) and have some sort of engineering self integrity, than it pretty sucks.

</comment><comment><USER24> > We can make more visual, interactive, intuitive tools for understanding the > behaviour of programs

Just curious what the HN pulse is on this topic:

 _Does anyone think text-based programming will eventually fade out as sub- optimal, or is text the epitome of efficacy?_

(let's ignore the likelihood that after the singularity all _good_ programs will be written by AI)

</comment><comment><USER25> I always explain it to people like this:

It's as close as I can get in the real world to being a wizard. I will never be able to shoot fireballs from my hands or cause a couch to fly across the room with my mind. But with programming you can cause things to happen with only thoughts and words.

<comment><USER26> Don't sell yourself short. By following links from programmer-oriented websites and weblogs, I have seen home hobbyists constructing their own button-triggered pyrotechnics gloves, as one might use for an illusionist's stage flourish. And I have seen remarkable advances in robotic flight, transcranial magnetic sensing and stimulation, and bizarre couch, loveseat, and recliner modifications.

A programmer's gift is taking an impossible dream and systematically disassembling it until it is a giant pile of tiny possibilities.

But first, let's define the requirements. Does the couch need to fly across the room more than once? This room specifically, or any room the couch happens to be in? Does the couch need to be intact after it lands? How much payload weight should the couch be able to carry? Does the payload need to be intact after the couch lands? To what extent will the couch be expected to change its course mid-flight? Should the couch be upholstered in top-grain leather, suede, natural fiber cloth, synthetic cloth, or plastic? When you say "cause a couch to fly across the room with your mind", do you mean that your mind should be invested into the couch in some way, or that your mind would be causing the flight? Is the "or" you use to join the flying-couch requirement with the hand-fireball requirement exclusive or inclusive?

This is why people don't understand programmers. They say "why all these questions? I just want to be like the Chesterfield-flinging version of Magneto, from X-Men!" And then we just nod, cross off the potential requirement about uploading a human brain into a couch, and try to guess what else they really wanted, but cannot adequately explain.

</comment></comment><comment><USER27> I think the Lego analogy is correct only if you remind people of just how many Lego are needed to build even a decently sized application. Assuming one line of code equals 3 or 4 lego pieces eg. x = func(y), then a decently sized application would require 100,000 Lego pieces.

</comment><comment><USER28> It's great that you can build tools to help you with programming, but until you make a tool that hits stupid clients in the face and electrocutes incompetent managers, programming will still suck.</comment>


Ask HN: How should browser API be dropped? - <AUTHOR> Recently we have been hit by Chrome dropping API, which is part of SVG 1.1 specification. The reason: low usage and it is not part of the SVG 2.0 draft: https://code.google.com/p/chromium/issues/detail?id=553672 . Fortunately we test against Canary and as part of the quoted bug, a polyfill was provided, so we can live with that. But I'm really surprised firstly that part of current standard is just dropped, secondly that there was not a single warning in Chrome console saying we use some depreciated API. So this bring to the question:
How should the browser API depreciation look like?
I would expect there is at least some messaging around that. That there is some known upfront date, when it will stop working, at lest few months in advance, so that applications can adjust.
What are your thoughts? <comment><USER2> You have to factor in whether or not you want developers to use your APIs in the future. If you do, and they have to guess whether or not other developers will build on it, they might decide not to go for it.

So maybe you don't really want to do APIs at all??

Deprecate them before you start! :-)

I was just writing about this re Dropbox. People always say about the idea I want to see them do "That's a third party opportunity." Well, I would never bet on a mission-critical feature that depended on the continuing support of an API by a platform vendor. What happens to the users when the API breaks? I might not have a lot of users from their point of view, but from my point of view, my community will die if they break the API.

<comment><AUTHOR> Well, I'm not sure if we talk about the same thing here. It is not my API, but API defined by W3C and implemented by Chrome browser. It was just dropped without any notice.

<comment><USER2> Seems like the same question to me.

An API is an API. Google is part of the W3C, probably a very important part of it.

I used to be a W3C member, and remember how this worked. The big companies drove the process. They met privately and hashed things out between themselves. Then it was "debated" but somehow the decision that was arrived at was always the ones they wanted to make.

It's a way of making it look like an open process when it really isn't.

In any case, the problem for a developer is the same no matter who is doing the deprecating. You just built on something that's going away. You have some users. Not enough to matter to the big companies. You're burned. So now next time will you just go ahead and implement the API they want you to. Not unless you're an idiot! ;-)

Speaking as an idiot of this kind myself. I've been burned many times by this process.

</comment></comment></comment><comment><AUTHOR> Just to add sugar to it - check the list of usage statistics and scroll down, to see how many APIs is endangered by distinction:

[https://www.chromestatus.com/metrics/feature/popularity](https://www.chromestatus.com/metrics/feature/popularity)</comment>


Ask HN: Now that Cyanogen is dead, should I buy OnePlus 3T? - <AUTHOR> On one hand, it has great specs., but will its ROM still get updates? if so, by whom? <comment><USER2> The OnePlus 3T doesn't come with Cyanogenmod, so official updates will only come from its manufacturer, and the end of cyanogen inc shouldn't change a thing.

If you planned to run cyanogenmod on it you'll have to see what the community around it will do.

<comment><AUTHOR> right. wasn't aware they switched (long ago!) to Oxygen. I'll remove the post to avoid the downvotes</comment></comment>


Apple store down. Product refresh coming? - <AUTHOR> https://apple.com

<comment><USER2> Looks like nothing came out of it. At least as far as I can tell. The MacBooks which are the most likely thing to receive a silent update push are unchanged as far as I can tell.

</comment><comment><AUTHOR> confirmed to be down [http://www.downforeveryoneorjustme.com/store.apple.com/us](http://www.downforeveryoneorjustme.com/store.apple.com/us)

</comment><comment><USER3> Looks like it's back up.

<comment><USER4> Yeah it isn't down for me in Australia

<comment><AUTHOR> It's definitely down in the US: [https://store.apple.com/us](https://store.apple.com/us)

<comment><USER5> Not for me. The site is up; the store is closed ("we're busy updating the Apple Store")

I think they have the money to pay for a second server park and seamlessly switch to it, and it isn't that hard, technically, so I assume they do things this way for other reasons (marketing, but maybe also because they do not want customers to have the experience of 'if I had logged in a second later, I would have seen the new product/the lower price on the old product")</comment></comment></comment></comment>