How To Build Great Things
You want to know how to paint a perfect painting? It’s easy. Make yourself perfect and then just paint naturally.
— Zen and the Art of Motorcycle Maintenance, Robert Pirsig.
2021 posts on Thien Le
Perfection is not attainable, but if we chase perfection, we can catch excellence.
― Vince Lombardi
★When you plant lettuce, if it does not grow well, you don’t blame the lettuce. You look for reasons it is not doing well. It may need fertilizer, or more water, or less sun. You never blame the lettuce. Yet if we have problems with our friends or family, we blame the other person. But if we know how to take care of them, they will grow well, like the lettuce. Blaming has no positive effect at all, nor does trying to persuade using reason and argument. That is my experience. No blaming, no reasoning, no argument, just understanding. If you understand, and you show that you understand, you can love, and the situation will change.
― Thich Nhat Hanh
★That shipping feeling | David Heinemeier Hansson:
★there are worse things to be addicted to than shipping quality goods.
You want to know how to paint a perfect painting? It’s easy. Make yourself perfect and then just paint naturally.
— Zen and the Art of Motorcycle Maintenance, Robert Pirsig.
Nam sinh khuyết tật rửa bát thuê, đổi cơm ba bữa | VnExpress:
Hùng vốn khuyết tật từ nhỏ, lên 6-7 tuổi vẫn chưa thể đi lại. Bố nghiện ma túy, mẹ bỏ đi nên anh em Hùng sống cùng ông bà nội ở bản Xàn, xã Hữu Khuông, huyện Tương Dương. Hàng ngày, ông bà thay nhau cõng cháu đến trường.
"Đi làm nhưng em vẫn nhớ đến học. Học là con đường dẫn đến thành công sớm nhất", Hùng nói.
Nhiều lúc mặc cảm vì hoàn cảnh gia đình và cơ thể không lành lặn như các bạn, Hùng nằm khóc một mình.
Hùng nhớ như in ngày mẹ bỏ đi năm em sáu tuổi. Hai anh em khóc, gọi theo bóng mẹ khuất dần. Người bố từ đó đâm chán nản, vướng thêm rượu chè. Hùng nói cuộc sống của em "chưa bao giờ ổn" nhưng càng trải qua khó khăn, em càng muốn đi học để sau này đỡ vất vả.
"Quán của tôi có hai người phụ và Hùng ra với tôi khoảng hai tiếng mỗi ngày. Em ấy không chịu lấy tiền, chỉ mong được hỗ trợ bữa ăn".
Em có nguyện vọng học công nghệ thông tin.
Anh rất vui nếu có thể có một người đồng nghiệp giống như em. Cố lên Hùng nhé!
Xem thêm: Những người tử tế
ThoughtWorks Technology Radar Volume 25 is now available! Go check it out, and don’t forget to read the themes too.
★Tristan Harris — Facebook & Rethinking Big Tech | The Daily Show:
Man, I wish I was at that table so bad. Such a great conversation.
★Marcos Alonso and the Genius of Thomas Tuchel - The New York Times:
There is, as ever, no such thing as a good or a bad player, only one in the right or wrong system.
His is not so much a triumph of making square pegs fit in round holes, but of changing the location of the holes so that the dodecahedrons can work, too, taking all of the raw materials he was handled — all of the players who might have thought their time was up, who might have been written off, who might have gone another way — and turned them into a purring, smooth-running machine.
The truest test of a manager, though, is to find that system, regardless of the players.
The more I look at it, the more I see the similarities between football and software engineering.
★How to Shoot on iPhone - Apple:
This is the easiest thing you can watch and practice to level up your photography skill. Highly recommended.
★Ship / Show / Ask — Rouan Wilsenach | Martin Fowler:
When talking about patterns for managing source code branches, I used to think as a team, we can either be a “Continuous Integration team” (good) or a “Pull Request Team” (evil).
After reading this great article written by Rouan Wilsenach, I realized there are more nuances in that (or in life frankly), and we don’t have to pick any side. He also went ahead and suggest this Ship/Show/Ask model for anyone to use for communication with our teammates, see where we are at, and working on ways to improve (if needed).
My teams are “Mostly Asking” teams. I will try to nudge ourselves to “Showing more”. I hope to document my experience doing that here as well.
Trevor Noah Responds to Criticism from the French Ambassador | The Daily Show:
Now, I’m not trying to be an asshole, but I think it’s more a reflection of France’s colonialism.
I love them, Paul Pogba, N’Golo Kante, I’ve watched all of them. Like, I love those players and I love how African they are and how French they are. I don’t take their Frenchness away, but I also don’t think you need to take their Africaness away.
In the comment section:
If I remember correctly, Einstein said something similar. “If my theory is correct, Germany will call me a German and France will call me a citizen of the world. If my theory is wrong, Germany will call me a Jew and France will call me a German.”
Mesut Özil:
In the eyes of (some people) I am German when we win, but I am an immigrant when we lose.
I think those some people should go travel more, it will give them more perspectives by forcing them to strengthen their System 2s.
★Beth (@bethcodes) via Twitter:
If my code doesn’t work for the changes someone needs to make, I am delighted when they refactor the shit out of it.
It means I wrote code that a random person some time in the future felt safe and confident modifying. That is always my goal.
Some managers wrote me when I am leaving the company saying: “You left behind big shoes to fill for anyone to take over your tasks”. I hope not.
★Apple’s Software Chief Explains ‘Misunderstood’ iPhone Child-Protection Features | WSJ:
I don’t trust Apple, but I do trust Craig. Joanna Stern did a terrific job as always.
★Why is this interesting? - The Technical Debt Edition:
Very interesting article about technical debt, with a classic lesson from Evernote.
★Winners of the 2021 iPhone Photography Awards
Great photos, taken with great camera systems.
★Toyota Led on Clean Cars. Now Critics Say It Works to Delay Them | The New York Times:
Together with other automakers, Toyota also sided with the Trump administration in a battle with California over the Clean Air Act and sued Mexico over fuel efficiency rules. In Japan, Toyota officials argued against carbon taxes.
Toyota was the largest corporate donor by far this year to Republicans in Congress who disputed the 2020 presidential election result.
Toyota initially defended its contributions, then changed course, saying it would halt its donations.
Toyota, it’s time to eliminate some waste inside your organization and on the street.
It Doesn’t Have to Be Crazy at Work - Jason Fried:
The answer isn’t more hours, it’s less bullshit.
See also: How to go fast
★The Existential Crisis Playlist by Kurzgesagt:
They know.
See also: What Are You Doing With Your Life? The Tail End
★I know a lot of people will hate me for this, but I’m thinking about hosting two talks:
Or should I find another organization where there would be fewer people hating me for giving those talks?
The Talk Show Remote From WWDC 2021 - Daring Fireball:
Recently I have been lying to potential employers that I want to become a software engineer like Martin Fowler or DHH. Watching this video reminded me that I want to become a software engineer like Craig.
Sorry folks.
★Hiring future perfects - Jason Fried:
Some people have the potential, but they haven’t had the opportunities. Their portfolios are full of mediocre work, but it’s not because they’re mediocre designers. It’s because they’ve been given mediocre opportunities.
I think I know what Jason is referring to. Here is an alternative explanation for football fans: There are people like Kante and Mendy, eight years ago they may be unemployed, but given the right opportunity, they can become Champions League winners. Heck, for Kante, he can even win this year Ballon d’Or.
Tấm vé cuối ngày của chàng trai về thăm bố | VnExpress:
Sau khi anh Trí lo xong giấy tờ hỗ trợ bay, đến lượt Thu Thảo làm thủ tục xuất vé thì chàng trai khựng lại, hỏi: "Vé bây giờ nhiều tiền không?".
Thảo báo giá vé thấp nhất cho chuyến bay cuối cùng lúc 17h50 về sân bay Nội Bài, Hà Nội là 900.000 đồng. Phương móc trong chiếc túi đựng vé số cũ mèm ra một xấp tiền lẻ và nói đây là toàn bộ "gia tài" của mình. Chị Thảo đếm được tổng cộng 350.000 đồng.
Chàng trai tần ngần rồi nhờ chị Thảo giữ hộ số tiền còn mình định bắt xe ôm về quận 7 vay tiền của bạn rồi quay lại mua vé.
Biết thiếu nhưng ảnh không hề hỏi hay nhờ ai ủng hộ mà định quay về đi vay tiền. Tôi thấy rất đáng quý nên cùng mọi người quyết định giúp", Thu Thảo nói.
Sau khi nhận vé và lên phòng chờ, anh Phương bịn rịn nói lời cám ơn nhiều lần và hỏi tên mọi người.
Câu chuyện về không những một mà nhiều người tử tế. Không những tử tế mà còn tự trọng.
Testing in the Twenties - Tim Bray:
- Unit tests are an essential investment in your software’s future.
- Test coverage data is useful and you should keep an eye on it.
- Untested legacy code bases can and should be improved incrementally
- Unit tests need to run very quickly with a single IDE key-combo, and it’s perfectly OK to run them every few seconds like a nervous tic.
- There’s no room for testing religions; do what works.
- Unit tests empower code reviewers.
- Integration tests are super important and super hard, particularly in a microservices context.
- Integration tests need to pass 100%, it’s not OK for there to be failures that are ignored.
- Integration tests need to run “fast enough“.
- It’s good for tests to include benchmarks.
I think we’ve just had a new Testing manifesto. Agree with most of the explanations to those ten points too.
Update: There is a great comment from Jim:
I’ve noticed that (the more reasonable of) those of us that are, treat TDD mostly as a design exercise, not a testing one. We just get tests as a bonus. And of course, sometimes the tests need to change, and some I throw away.
I also do “exploratory testing” when trying out new libraries, techniques etc, especially in spikes. I find it helps to keep the crap tests then, as a warning for later :-)
Secondly, I think needing to make private methods public in order to test them is a code smell. Almost all the time, there is another class trying to get out. Somewhat more rarely, there is code in private methods that cannot be exercised by calling the public ones, which means there is unnecessary code in the private ones, and it can safely be removed.
I have very similar thoughts to Jim’s while reading this article.
We should think of TDD as a helpful practice (for some people) to create well-designed, well-tested code instead of considering it “the best and only way to attain self-testing code.”
I do make private methods/properties internal to test their internal state sometimes because it’s easier that way. However, I have to think about those cases a lot and also consider them code smells.
Thanks a lot folks.
Another update: Very quickly, Mr. Fowler himself steps up and publish his take on the subject.
And as usual, he points out the exact problem - very clearly with pictures. Please go ahead and read the whole thing since quoting his entire post would be weird.
Thanks again, folks!
Roman Abramovich: See? This sacking thing really works!
The Tragedy in Small-Town China by The New York Times:
Every once in a while, I stumble upon a great story. A very long time ago is Fanboys by The Verge1. Now is this piece from the Times.
Both of them are great for similar reasons, the visuals are eye-opening, the reportings are phenomenal, and the problems they reported are real.
Try jumping between captures to see the article effect. ↩︎
What Are You Doing With Your Life? The Tail End - Kurzgesagt:
I have a small number of videos in my Favorites playlist on YouTube, but two of them are from Kurzgesagt already. Moreover, both of them seem to have a common theme…
See also: The Egg - A Short Story by Andy Weir
★The Making of a Goal Machine - The New York Times:
Robert Lewandowski scored his 41st goal of the season, breaking the Bundesliga record, in the 90th minute of Bayern’s final game, a win against Augsburg on May 22.
Extraordinary story from The New York Times on the making of Robert Lewandowski. I wish all members of the Vietnamese national team could read it before playing in the upcoming World cup qualification, heck, the U22 team too.
In that fraction of a second, the 32-year-old Lewandowski still noticed the following things: where Marwin Hitz, the Dortmund goalkeeper, was positioned on his line; when and how Hitz set himself to react to his shot; which of Dortmund’s defenders closed him down and which backed away; and the complex interplay of angles that accompanied their movements.
He took all that in, computed it and reached a conclusion. “I thought that next time, maybe it would be possible to score either between the legs or to go for the far post,” he said. He logged it for later.
Continuous learning is his recipe for success, as with many other successful people. Try to be great by sucking less everyday.
--pink: #b72c31;
--orange: #e36942;
--yellow: #d48207;
--green: #10505b;
--blue: #25476d;
--purple: #353a71;
--silver: #c7c8ca;
--pink-light: #eeb8b0;
--orange-light: #e9aa95;
--yellow-light: #eaca96;
--green-light: #a4beb2;
--blue-light: #a8bed2;
--purple-light: #abacca;
Source: Apple
Active? Away? How about neither - Jason Fried:
Everyone’s status should be implicit: I’m trying to do my job, please respect my time and attention.
For me it is very simple:
In general, if you treat someone like a 13 years old, she will behave like a 13 years old; if you treat a 13 years old like an adult, she will try her best to behave like an adult.
Just finished reading REWORK by Basecamp’s founders Jason Fried & David Heinemeier Hansson (DHH), Don’t scar on the first cut is the part that stuck with me for some reason:
The second something goes wrong, the nature tendency is to create a policy. “Someone’s wearing shorts!? We need a dress code!” No, you don’t. You just need to tell John to not to wear shorts again.
Policies are organizational scar tissue. They are codified overreactions to situations that are unlikely to happen again. They are collective punishment for the misdeeds of an individual.
By the way, what’s wrong with wearing shorts to work?
Thống nhất lòng người - Hoàng Anh Sướng:
Ai đến đây dường như cũng đang ôm ấp những nỗi khổ, niềm đau.
Có những nỗi đau bắt nguồn từ đời sống đương đại như đổ vỡ gia đình, làm ăn thất bại. Song có những tổn thương dằng dai từ mấy chục năm trước, trên những chiếc thuyền lênh đênh vượt biển.
Có người chứng kiến con thuyền chở vợ và mấy đứa con bị sóng nhận chìm vào lòng đại dương. Có người không thể quên cảnh hải tắc giết chồng mình, cướp tiền vàng, vứt xác xuống biển rồi bị chúng thay nhau hãm hiếp. Khi đến nước Mỹ, họ bị mang thai rồi sinh con. Bi kịch ở chỗ, càng lớn, khuôn mặt đứa con lại càng giống kẻ đã hãm hiếp mình. Người mẹ nào không thương đứa con rứt ruột đẻ đau. Nhưng nhìn mặt con là họ lại nhớ đến mặt tên hải tặc. Cả đời, trái tim người mẹ ấy cứ giằng xé.
Hãy cố gắng đối xử tử tế với tất cả mọi người, nếu nhìn bằng Tâm thì ai cũng đang có những cơn bão trong lòng.
Hiểu được vậy nhưng đôi khi Trí, Dục lại nhởn nhơ làm ta lạc đường.
Đi thỉnh kinh thì Đường Tăng phải làm sư phụ là vì lẽ ấy.
LOVE DEATH + ROBOTS Volume 2 Official Trailer:
The NSFW animated anthology returns with a vengeance. Naked giants, Christmas demons, and robots-gone-wild… Consume irresponsibly. Volume 2 coming May 14.
It’s just what I wanted ❤️☠️🤖
★Bad software sent postal workers to jail, because no one wanted to admit it could be wrong:
Janet Skinner said that she was taken away from her two kids for nine months when she was imprisoned, after the software showed a £59,000 shortfall. She also says she lost a job offer because of her criminal conviction. The time she and others like her spent in jail can’t be bought back, and it happened because software was taken at its word.
[…] another woman, who swore she was innocent, was sent to prison for theft while she was pregnant.
One man reportedly died by suicide after the computer system showed that he had lost almost £100,000. Within a few months, his replacement also faced losses due to discrepancies from the software.
Horizon (the software) was made by Japanese company Fujitsu.
Probably out-sourced too.
This is a programmer’s worst nightmare, but it’s not. This is real life, and we are making software that can cause catastrophic consequences like this for real people everyday.
The least you can do?
Test Your Software.
★How the Super League Fell Apart:
Fantastic storytelling from The New York Times on the event. One thing I suggest them to change though:
The inside story of how a billion-dollar European soccer superleague was born, and then collapsed, in less than a week.
Corrected:
The inside story of how a billion-dollar American-style soccer superleague was born, and then collapsed, in 48 hours.
See also: JPMorgan Apologizes for Its Role in Super League
★Kevin Bongart (@KevinBongart):
After 10+ years of using Markdown, it finally clicked that web links usually look like rectangles (on mouse hover), so the text is in brackets. The URL, as an additional detail to what you’re reading, is in parentheses.
This is so useful for anyone trying to write for the web. Mr. Gruber sure put a lot of thoughts and real life experience into designing the Markdown syntax.
Kyle Starr in the thread also thinks the image syntax 
looks like an old press camera.
Thank you folks.
I have been a Chelsea supporter for a decade, but since they are one of the “founding clubs” of the Super League, even though they withdrew, I’m done with them and any of their sponsors.
The same with the remain 11 clubs:
I know for FIFA and UEFA it’s about money too, FIFA is the dictionary definition of corruption, but at least they are being investigated and under their ruling the poor get a dime or two.
The Super League: Last Week Tonight with John Oliver (HBO)
In the meantime: UEFA Champions League theme song (acapella)
HAGL - Hà Nội FC: Bầu Hiển hay Bầu Đức sẽ thắng ở cuộc chiến của những “Mãnh Hổ?":
Những chia sẻ của chú Huy về trận HAGL - Hà Nội.
Với Hà Nội FC, đây là cơ hội cuối để họ vào top 6. Mới thắng bốn trận, đội bóng của bầu Hiển cần ít nhất ba chiến thắng nữa mới chắc chỗ vào tốp 6, trong khi bốn vòng đấu còn lại của họ đều không còn bóng dáng “người quen”, để Hà Nội FC có thể đạt mục tiêu dễ dàng như hôm hạ Quảng Ninh.
— Khúc quanh quyết định của V-League 2021 | VnExpress
How Red Bull Makes Money là một trong những lí do khiến tôi cảm nhận HAGL có thể làm nên chuyện mùa này.
Xếp hàng từ 4h mua vé HAGL - Hà Nội:
Ban tổ chức sân Pleiku cho biết, để phục vụ nhu cầu của khán giả không có vé vào sân, CLB HAGL lắp đặt màn hình lớn bên ngoài sân để cho khán giả xem trận đấu.
Cùng đón chờ trận “derby Việt Nam”.
Xem thêm:
Daring Fireball: Least Vaccinated U.S. Counties Have Something In Common: Trump Voters:
Think about how many lives Donald Trump could save if he barnstormed the states where he’s most popular to encourage everyone to get vaccinated. He could do it Trump style, taking personal credit for the existence of the vaccines, and I’d gladly thank him for it. He could save tens of thousands of lives and keep millions, perhaps, from getting sick.
The thing is, in order to save people, you have to care about people other than yourself.
That is what separates heroes from ordinary people, or worse - villains.
Apple vs. Facebook: Why iOS 14.5 Started a Big Tech Fight:
Very informative and well produced by Joanna Stern and her team on iOS 14.5 App Tracking Transparency (ATT), and did I mention it also hilarious? Can’t wait to see her name in the slide of Apple’s next events.
One more thing, her column Personal Technology With Joanna Stern is just amazing, be sure to watch all of it, you will be a better person after each episode.
See also:
Tạo không gian trong lành cho nhà ở:
Những bài quảng cáo trá hình (native advertising) chất lượng thấp như thế này làm giảm uy tín cũng như mức độ thiện cảm của VnExpress (và cả Daikin) một cách ghê gớm.
Xem thêm: Native Advertising: Last Week Tonight with John Oliver (HBO)
★The lack of a price tag seems almost criminal - inessential by Brent Simmons:
I should explain: (NetNewsWire) is better — much better — than it would be if it were a for-pay app. If it were a for-pay app, it would be just me working on it instead of this great team of volunteers. There probably wouldn’t be an iOS version at all: it would be Mac-only. The kind of features I don’t enjoy doing, such as the Twitter and Reddit integration (and others), wouldn’t even exist.
And it would be slow going. NetNewsWire 5 would have shipped much later than it did, and NetNewsWire 6 would not have shipped until next year, probably.
Instead, because it’s open source, we have this amazing team of people willing to work on it in their spare time. During a pandemic and everything. They’re bringing you something great out of love, with the goal of writing an app of the highest quality.
We don’t have to rush and Ship Right Now in order to make our revenue numbers. We don’t have to pick feature X over feature Y because we think it will bring in more conversions. We can care about performance and efficiency; we can say no to things that might have made money but that are outside our vision.
There’s nothing wrong with commercial software — NetNewsWire was commercial software for many, many years — but it’s also a great freedom to us that it’s not. And it allows us to make something much greater than I would have made all on my own.
I have a feeling that this is the exact situation that the great text editor TextMate is in, and they are going in this direction as well.
The sad part is:
(Why all on my own? Because, these days, a Mac and iOS RSS reader is not going to bring in enough revenue to pay for a team greater than one. And even paying one full salary plus health insurance would have been a hell of a longshot.)
Anyway, let’s support NetNewsWire. (Don’t send money!)
Ngọn gió V-League đã đảo chiều - Song Việt:
Gia Lai của bầu Đức dưới thời Sắc đã chuyển từ “đá cho vui” sang “thắng cho vui” rồi.
Mà Đà Nẵng cũng chẳng có gì phải buồn ở trận này cả, thầy trò chú Đức đã đá rất quân tử. Điều “muối mặt” duy nhất ở đây là công tác phân phối vé và đặc biệt là mặt sân Hoà Xuân - sân vận động được xây mới gần nhất của Việt Nam. Nên nhớ trong mùa giải cứ mỗi tháng khán giả cả nước sẽ được thấy hình ảnh thành phố Đà Nẵng khoảng 90 phút qua TV, và mặt sân chính là “bộ mặt” của thành phố.
Bầu Đức nói chuyện với U19 Việt Nam:
Tui quyết chứng minh cho họ thấy là […] ở đâu cũng có anh hùng, Gia Lai cũng có thằng khùng, thằng điên.
Cái này tôi gọi là “nói chuyện nâng tầm”.
Công Phượng vào sân trong trận gặp Viettel:
Người ta chỉ nói tới pha đi bóng và ghi bàn tuyệt đẹp của Công Phượng mà quên mất chính Phượng là người khởi đầu pha bóng này bằng một cú đẩy bóng thoát pressing đỉnh cao. Đây là một tình huống chuyển trạng thái tuyệt vời đúng theo ý đồ của HLV Kiatisuk - Phượng thoát pressing, bóng được đẩy nhanh lên cho Toàn, Toàn dạt biên phải, trả lại cho Phượng và…chờ ăn mừng. Sau trận Phượng cũng chia sẻ là em đã tập đi tập lại tư thế sút bóng trái chân này rất nhiều lần.
Về phía Viettel, người hâm mộ và ban lãnh đạo nên xem lại về đội bóng của mình, là đương kim vô địch V-league nhưng tên đội bóng là tên nhà tài trợ, trên áo đấu có 2 logo hoàn toàn giống nhau, chỉ khác nhau về kích thước. Marketing như vậy liệu có thực sự hiệu quả?
Cập nhật: Theo như trang tin đội bóng của VPF thì Viettel đã thay đổi logo, hi vọng họ sẽ sớm đưa thay đổi này vào áo đấu.
Why you can’t compare Covid-19 vaccines - Vox:
Great explanation about COVID-19 vaccines that everyone needs to know.
★John Oliver on Racism in America:
John is right (as usual) - there is nothing “un-American“ about this.
inessential: How NetNewsWire Handles Threading:
Some developers I’ve known seem to think that being good at concurrency makes them badass. Others seem to think that senior developers must be great at concurrency, and so they should be too.
But what senior developers are good it is eliminating concurrency as much as possible by developing a simple, easy, consistent model to follow for the app and its components.
Transparency is the best policy.
I’m gonna need more popcorn.
See also: Apple in China: Privacy, principles, purses, and pickles
Apple in China: Privacy, principles, purses, and pickles:
No, the test is China. Patrick McGee at FT broke the story that Tencent and ByteDance, along with the state-backed China Advertising Association, have devised a workaround to the changes in iOS 14.5, such that they can continue to track users across apps without triggering the new permission dialog.
Oh okay I didn’t know about this until now! I will join DHH with my own Vietnamese style popcorn and 333 beers.
I’m sure some other countries are watching closely as well.
★A new manifesto from the folks behind HEY 👋
See also: Datensparsamkeit - Martin Fowler
★Meatpacking: Last Week Tonight with John Oliver (HBO):
Watching this somehow makes me want to play the Bioshock series again.
★Ori And The Will of the Wisps Switch Analysis: Inside An ‘Impossible’ Port:
It must be amazing working on this whole thing, the devs making this sensational port, the folks from Digital Foundry making this video - which is the best video from them so far.
The Next Pandemic: Last Week Tonight with John Oliver (HBO):
No governments will fix this. Maybe that’s why we need more people like Bill Gates?
But one thing is for sure. We need more people like John Oliver.
★Why is Facebook so afraid of this simple opt-in panel Apple will soon build into its devices for every app (not just Facebook)? If tracking people all over the web is harmless or beneficial, shouldn’t they be able to convince people to allow it?
Very well said by Mr. Mossberg. The only reason why Facebook so afraid is because they are lying, the very same reason Google is still not pushing any updates to their iOS apps (except for YouTube - but very quietly).