Apple's China Problem - <AUTHOR> https://stratechery.com/2017/apples-china-problem/ <comment><USER2> This seems to confuse some people, the author is not saying Apple have a monopoly on smartphones. What the author is talking about is the locked-in ecosystem that Apple owns, iOS and macOS (watchOS/tvOS).

> Moreover, the advantages go beyond margins: the best way to understand both > Apple's profits and many of its choices is to understand that the company > has a monopoly on not just MacOS but even more importantly iOS. That means > Apple can not only capture consumer surplus on hardware, but developer > surplus when it comes to app sales; that some apps are not made is > deadweight loss that Apple has chosen to bear to ensure total control.

The problem that Apple is having in China is that WeChat is the driving "platform" ecosystem, not the OS or the brand.

In other words, people aren't buying iPhones for its integration with Apple services in China, which could lead to an increase in growth due to the halo effects. Instead, they run WeChat and they buy things through there, which leads to no growth in Apple's services and revenue. Which also means, the customers have no desire to buy another Apple device. They can do the same on any device that can run WeChat.

If Microsoft sells a Windows Phone with WeChat as the default app for everything, they may have a hit in China but it would not be a sustainable hit because again, WeChat can run on iPhone or Android or any other OS.

<comment><USER3> How wild is it that it took less than 10 years for a platform spanning killer- app to emerge in the largest smartphone market in the world?

To put it in perspective, this is like what the web did to Windows circa '99 - '05\. Lesser examples might be spreadsheets or Adobe Photoshop.

<comment><USER4> > _" How wild is it that it took less than 10 years for a platform spanning > killer-app to emerge in the largest smartphone market in the world?"_

It's not that wild considering that the iPhone hasn't even existed for quite a decade yet and Android has been around for an even shorter time.

</comment></comment></comment><comment><USER5> Chinese people want the Apple brand they don't care about iOS. If iOS was the status symbol it would get pirated and installed elsewhere. Apple has a strong brand because of it's history as a premium device company internationally, that's all. Their brand was their first mover advantage in China but now Chinese companies are closing that brand gap and since WeChat rules the software side Apple is going to have a hard time being a big player until it can differentiate itself on something other than brand.

<comment><USER6> Other than the brand factor, iPhone is actually a better phone. Before the current iPhone I have, I had always been an Android user. I used entry-level Android phones, high-end Android phones such as Samsung Galaxy, iPhone is clearly a better phone. iOS feels more smooth, reliable, battery-efficient in many ways than Android phones. Honestly, I have not looked back since the switch.

<comment><USER7> Without wading into a my-anecdotes-against yours battle, I think most would agree that at this point Chinese smartphone shoppers have options from Xiaomi and Huawei among others[1] that are of equal quality to Apple hardware (and may be better designed for their market).

1: [http://time.com/4547129/china-smartphone-market-oppo-vivo- xi...](http://time.com/4547129/china-smartphone-market-oppo-vivo-xiaomi- huawei-leeco/)

<comment><USER8> The world has access to phones from Xiaomi and Huawei.

If they were equal to iPhones they would be selling out in Ireland, Australia, Cambodia - everywhere. Guess what ? They aren't equal to iPhones.

<comment><USER9> Xiaomi are not available for sale outside of China. (Well, not without jumping through hoops and weird resellers).

They have zero name recognition worldwide and the platform is fitted to the china market. There are some minor localisation and translation work to go global. Most important of all: They lack the brand recognition (westerner are very sensitive to branding and associate china with cheap shit).

Outside of that, they do S6/iphone7 equivalents for half the price.

They could blow away every single android manufacturers single handedly if they went global.

</comment></comment></comment></comment></comment><comment><USER10> The problem with many tech analysts is that they are Apple fanboys without even knowing that they are. Stating that Microsoft Surface and Samsung S8 are not competitors of Apple just because their products don't run Mac OS/iOS is pure fanaticism at the very least.

Nevertheless, I find that the main point of the article is right. But Apple's China problem is also a very important problem for Google (actually, it's worse for Google).

<comment><USER11> The fanboyism is strong on this one.

> iPhone users very rarely switch to Android, while a fair number of Android > users switch to iPhone

> this is the point that was forgotten the last time Samsung was held up as an > iPhone threat — a Samsung smartphone does not run iOS. That has always been > Apple's trump card

Considering this is a stats blog these bold claims are both made without any proof. And Android being a far cry from iOS is an antiquated position to take in 2017. They caught up quite some time ago.

The core difference is usually lock-in from using the Apple eco-system. But on a UX/hardware value level Apple doesn't have a significant advantage over companies like Samsung anymore.

But agreed re: the china problem, I wish he focused more on that over making sweeping statements about Apple's (imaginary) unmatched competitive advantage.

<comment><USER12> Various third party firms have said for years that the amount of switchers from iPhone to Android pales in comparison to the switchers to iPhone.

Also Apple usually says it themselves on their earnings calls.

</comment></comment></comment><comment><USER13> There's a question under which people discuss what would happen if WeChat is blocked from AppStore on a Chinese quora like Q&A site Zhihu.[1] Tencent removed a tipping the author feature from WeChat because Apple wanted a share from the tips, which made the blocking worries more realistic than many people may think.

The people on Zhihu, possibly the richer and more knowledgeable among the Chinese internet users, supported WeChat, which is a vital tool for work as well as everyday life. It's an IM, and when every relative and friend uses it, it's not possible to switch overnight if Apple actually blocks it. What's more, its only competitor in China is another product of Tencent, QQ.

So, Apple is facing a huge China problem, and it's trying to solve it. However, it is yet unclear if it can solve it, or be solved by it. I think the walled garden policy actually backfires in China. Android, as an open platform, is not that easy to kill, even though all Google services are blocked here. However, iOS can. Without a big enough market share, it will die like IE6, without Chinese developers willing to write apps for it.

[1] [https://www.zhihu.com/question/58776977](https://www.zhihu.com/question/58776977)

<comment><USER13> And in China, many iPhone buyers are among the students and blue collar workers who buy it because it's subtly expensive, coming from a foreign country (though assembled in China), and was used by richer people. They don't buy it because it's a good phone, but because it's a luxury.

This is beginning to change, as some Android phones are actually getting more expensive to appeal to their vanity (well, being more expensive is so much easier than the reverse), and they're working on a very appealing feature for the those who mainly use the phone to take selfies and photos of their food: automatically beautification.

Also, it boosts China's computer vision technology as a side effect, which is good for us as well.

</comment></comment><comment><USER14> In the US at least, most of the phone is paid for by monthly installments as part of the plan so a phone which might sell for nearly $1K elsewhere appears to cost only $200 here. That has helped Apple immensely.

For my needs living in NYC with tall buildings, with need for good signal, voice quality, I use yearly iPhone upgrade on Verizon network. Verizon buys the $1K iPhone and I pay them back at less than $1.50 per day.

iPhone platforms have greater security than Android based ones and that is important to me as well.

The iPhone - Mac integration is great and minimizes complexity making my daily life easier.

Also, where I live, there are many Apple stores including a 24/365 for service for a device which is essential for my work.

I've had iPhones for 4.5 years and in that time period I've had to replace the phone 3 times for various reasons. Walking into the store for replacement is great.

But other people use phones for different reasons and most don't have the same constraints that I have.

Apparently WeChat in China makes the platform generic for most.

<comment><USER15> > I use yearly iPhone upgrade on Verizon network. Verizon buys the $1K iPhone > and I pay them back at less than $1.50 per day

The math here doesn't work. One year ("yearly upgrade") at $1.50 / day means you're paying Verizon back less than $600 for a $1000 phone. Assuming, of course, that a year is less than 400 days.

</comment></comment><comment><USER16> There should also be an article entitled, "China's Apple Problem." The article could go many different directions, but I like the contrast between the titles.

One thought is that it could investigate the impact of big tech firms capitalizing on the Chinese market from the top down and bottom up. Utilizing cheap labor and manufacturing facilities to develop extremely expensive products which are then sold almost exclusively and at a higher relative price to the upper echelons of Chinese society.

It could also focus on intellectual property concerns which are acting as a catalyst for overhauling the Chinese intellectual property system, court system, and marketplace.

</comment><comment><USER17> In India, dual SIM support is the best advantage Android has over iPhone. That holds many people away. People are not letting ONE of their number go away.

<comment><USER18> What do they use the second phone number for?

<comment><USER19> (1) It's often cheaper/free to call numbers on the same network.

(2) Business phone/family phone.

Edit: speaking from my experience in Eastern Europe. I assume it's similar in India.

<comment><USER20> In Brazil that would be 90% about (1) and 10% about (2).

If you run a small business, you'll also want to connect on all networks, so your clients will have one less reason not to talk to you. (But watsapp has made this point moot recently.)

</comment></comment></comment></comment><comment><USER21> One thing Apple has totally messed up in the Chinese market is localization. When I read Apple advertisements or texts on macOS or iOS UI, I always feel it's some foreigners who just learned to speak Chinese, yet trying to use Chinese in creative ways. They are totally understandable, but just that.

I think this at least partially affects Apple's brand building in China.

</comment><comment><USER22> Switched to Pixel XL when iPhone 7 came out and killed headphone jack. Last thing I want on a phone, more things to charge and worry about.

Quality takes may forms. Pixel camera is reviewed to be better and screen is legit sRGB and it charges in 15min and lasts 1.5 days vs iPhone 7.

I also think iOS is a steaming turd. As an app dev for both platforms, I'm amazed people don't see the integration Android has with Pixel and others.

Let's see them "innovate" no home button in iPhone 8 along with a curved screen.

For the record this is being typed on my iPad...

</comment><comment><USER23> If the situation in China is similar to the situation in Brazil, then it is not a surprise Apple products aren't successful there. Apple services here are very poorly supported and localized, and Apple products are too expensive compared to the relative benefit we would receive.

Why would you purchase a significantly more expensive device, with worse features, that sometimes don't work at all?

We still haven't gotten turn by turn directions in Apple Maps, for example.

<comment><USER24> But you can install Google Maps or Waze on an iPhone.

I like my iPhone because it's the fastest phone in the market. Pixel costs the same, and Galaxy S8 costs more than iPhone.

<comment><USER23> You're comparing the prices of only 2 android phones, when there are a lot more models available. None of these two phones are very popular in my country or in China.

The most popular devices here are mid-end Android phones, like the Moto G series phones.

Furthermore, what is supposed to differentiate Apple is its software, because hardware is a commodity.

Being "the fastest" doesn't appeal much to costumers as compared to price, and to the default software experience.

<comment><USER24> Yeah I guess it makes sense for people who are not rich.

Mid-end phones don't appeal to me at all.

</comment></comment></comment></comment><comment><USER25> The blog post completely misses the near total influence of the Chinese government. Yes, China is a different ecosystem and that has second order effects. But it's still important to get the direction of causality right.

In nearly every country around the world, Android phones are dependent on and dominated by the Google ecosystem. They aren't in China. Why? Because Google services are banned. So is Facebook. So are some of Apple's services. Even back when Google was cooperating with the PRC and trying hard for the local market, executives rightly or wrongly claimed that whenever their marketshare passed 30% regulators turned nasty.

Many, many foreign companies have poured resources into China and the few that have succeeded have generally done so on the strength of a global brand—such as Coke, LV or Apple. That doesn't mean that Apple's challenges in China are simply due to market forces though. China's decision to ban _all K-pop, K-dramas and other Korean media_ over their recent missile defense system shows that much.

Simply put, WeChat violated multiple rules on Apple's App Store on its way up that have enabled it to act like the platform it does today. In any other country Apple would have simply refused to push non-compliant updates, but in China Apple faced the risk of being barred from the market entirely. Years later, WeChat is now so dominant that Apple would have to capitulate for market reasons alone.

> _" WeChat is that, but it is also for reading news, for hailing taxis, for > paying for lunch (try and pay with cash for lunch, and you'll look like a > luddite)"_

That's just not true. Most lunches in China are not bought via WeChat. Even inside the 2nd ring road in Beijing, cash is very common.

</comment><comment><USER26> > None of that lock-in exists in China: Apple may be a de facto monopolist for > most of the world, but in China the company is simply another smartphone > vendor, and being simply another smartphone vendor is a hazardous place to > be.

Don't get that part. I live in Europe and sure a lot of people has an iPhone but I believe strongly that more people have an Android.

Doesn't Android have like 80% or more of the world market?

[http://www.idc.com/promo/smartphone-market- share/os](http://www.idc.com/promo/smartphone-market-share/os)

<comment><USER27> "Apple may be a de facto monopolist for most of the world"

May this is how some peoples from USA see Apple ?

But here in EU Apple is just another smartphone vendor and most peoples are using Android.

<comment><USER28> AFAICT they're not a monopoly here either; most of the numbers I see are in the neighborhood of 40%.

<comment><USER29> Monopoly isn't defined by marketshare in some descriptive category, it's defined by market (pricing) power. If you have that's you have a monopoly (which makes sense, because that means that even if there are participants in the same descriptive category, you empirically _are not competing with them_ for sales.)

</comment></comment></comment></comment><comment><USER30> I don't know if most people really consider the OS to be that important anymore, as the author strongly believes. The Windows Surface Laptop is no threat to Apple because it doesn't run macOS. Samsung's smartphones are no threat to Apple because the phones don't run iOS.

Then he continues with the WeChat factor to explain the shrinking market share of Apple in China. If you consider China the trendsetter in tech, that doesn't bode well for Apple in the rest of the world. It's a clear example that an OS isn't that important anymore.

If, or better when, a platform similar to WeChat emerges in Europe or the US, Apple can't rely anymore on it's OS to sell high margin hardware like the iPhone or Mac. It's not just a China problem.

<comment> rm_-rf_slash Are you kidding? It's like every other day we hear about a new Android exploit or security flaw. At least Apple is committed to strong encryption and privacy. The OS - and the hardware integration - is an enormous selling point to me. As much as I oppose Apple's direction as of late for many business decisions (iPhone 7 headphone jack for example), the reasons stated above are why I still cannot see myself switching.

<comment><USER31> Android enables you to install apps from 3rd party stores and specifically warns people about being careful about doing this. It is not so much that Android has more exploits, but that it is more exploitable if you choose it to be.

</comment></comment></comment><comment><USER32> >Unsurprisingly, in stark contrast to the rest of the world, according to a report earlier this year only 50% of iPhone users who bought another phone in 2016 stayed with Apple:

At first, I was confused by this graphic. Then I realized that the author is dramatically misinterpreting it: the graphic actually means that 66.85% of phones purchased in 2015 were made by Apple and 50% of phones purchased in 2016 were made by Apple. So we actually have literally no information about Apple's customer retention in China from that graphic at all. (Unless I'm really reading it wrong?)

I wish journalism majors were required to take a stats class in college. Sigh...

<comment><USER33> Somehow you didn't notice the graph added up to 250%, and you snark that the author needs to brush up on statistics?

Please explain how 50 of 250 is actually 50% of everything. Especially when the author writes iPhone sales are only 9.6% of the chinese market.

<comment><USER32> Good point. I guess I should have gotten a little more sleep last night...

So I guess these ARE customer retention rates? Following his link brings me here: [https://mp.weixin.qq.com/s?__biz=MjM5ODEyOTAyMA==&mid=266190...](https://mp.weixin.qq.com/s?__biz=MjM5ODEyOTAyMA==&mid=2661906770&idx=2&sn=73662bbef300beda9237d30adaf374fa&chksm=bd92a5418ae52c57eb1c238a34b9f8a6418993d3384ec331758b4ae102351a4e04d2ed878336&mpshare=1&scene=1&srcid=0504Q1KjS8LTXMPois1oL3yP&key=c84baf55e7d27452d7d25e8d4216f3083fd387d19f1c1a67737c24d1dd9b45dae04bc0e728d03eada93643c901672625aa3e51158cc3bfff1934908b5c0229bee273701f7cf7b5d3c55a6dfefacb6747&ascene=0&uin=MTY1ODQwOTc0MA%3D%3D&devicetype=iMac+MacBookAir6%2C2+OSX+OSX+10.11.6+build\(15G1421\)&version=12020610&nettype=WIFI&fontScale=100&pass_ticket=txq8pNJOZPQCgr2USCGKoo4Q6ywoGnIyfwIIr0PTnlFp6hwHmmCF%2FvRWzEnCnVY2) (god, what a ridiculously lengthy URL). Looks like Apple only captured 33 and 25% of the market each year, respectively- not 66 and 50%, as I thought before. In which case I think the author should at least mention the fact that Apple's picking up a lot of their competitor's customers YoY as well- that's hardly a bad thing. Maybe the Chinese market simply has less brand loyalty.

</comment></comment></comment><comment><USER34> So WeChat did what Java couldn't do: Build an abstraction that made OS irrelevant client side. I guess you could say that the browser has done this too, but not fully, I guess.

<comment><USER35> The browser absolutely did this -- just compare the importance and dominance of MS Windows in the late 90's / early 00's to today.

</comment></comment><comment><USER36> _In China, the most important layer of the mobile software stack is WeChat, not the operating system._

If true, then the next "killer app" is already here. Connie Chan's 2015 article lays out a very convincing case for this claim ([http://a16z.com/2015/08/06/wechat-china-mobile- first/](http://a16z.com/2015/08/06/wechat-china-mobile-first/)). WeChat, or something like it, will soon spread to other markets. Surely, Apple executives understand this and are busy working on an Apple equivalent.

</comment><comment><USER37> The most interesting part of this article is how big incumbent companies fail. Not by direct competition, but by a new product category/service that makes the current one a pure or irrelevant commodity.

</comment><comment><USER38> Meta question: is there a "Hacker News of China" forum where I can find this article discussed from the Chinese perspective?

<comment><USER39> Try zhihu.com. Though I don't think the quality is anywhere close to here.

</comment></comment><comment><USER40> The author's explanation for Apple's "China problem" is unconvincing to say the least:

> [...]behind local Chinese brands like Oppo, Huawei and Vivo. All of those > companies sold high-end phones of their own; the issue isn't that Apple was > too expensive, it's that the iPhone 6S and 7 were simply too boring.

 _Boring_ \- that's the explanation for a significant dip in sales? I would have expected a list of exciting design or features that Oppo, Huawei and Vivo are putting into their phones to steal customers from Apple, because historically their flagships have been equally 'boring'.

The "China Problem" is at the crux of the matter (title of the post), and the explanation is too hand-wavy for my taste. My default attitude to tech industry analysts is cynicism; I do wonder who exactly pays for such superficial analyses and what value do they get from them?

<comment><USER41> The idea is pretty clear, I think. Apple's problem is WeChat. It's more important than the phone OS, which is different to most other countries. The effect of WeChat combined with China's sheer size is a problem for the iPhone business.

<comment><USER40> WeChat is available on iPhones _and_ its competitors. Since it is a common factor, WeChat alone cannot explain the decline in iPhone sales.

</comment></comment></comment><comment><USER42> What's the situation in China with WeChat's competitors?

Why can't WeChat copy any product in a week, if FB does?

</comment><comment><USER43> Don't forget that China has biggest and most competitive smartphone market in the world, both in specs and price. iPhone is kinda underwhelming in the past year.

<comment><USER16> Too bad the phones from ZTE, Huawei, OnePlus, Xiaomi, etc generally suffer from horrendous build quality. From my experience, even their flagship devices feel more like a toy and less like an actual phone. The iPhone and Galaxy, and perhaps a few one offs from other companies, set build quality and craft benchmarks.

<comment><USER31> I've been very impressed with the OnePlus 3T. Cannot fault it at the price (£400).

<comment><USER44> £400? I got mine for £330 last year (was £300 before GBP tanked).

</comment></comment></comment></comment><comment><USER45> The real problem for Apple in China is that their brand simply isn't as strong as it is in the US. It has nothing to do with WeChat.

<comment><USER21> I agree with the first part, but the article has a point on WeChat. It is a very good example of how app vendors have stronger brands while smartphones are seen as commodities in China.

<comment><USER45> No, the article contradicts itself and makes an incorrect claim. First, it says that iPhones are bought as statement pieces, ie their hardware. Then, it says iPhones aren't as popular in China because Androids can use WeChat too. These are incompatible claims.

<comment><USER46> They are not incompatible claims.

People buy things for multiple reasons. The point of the article is Apple has a problem, one of the reasons, iOS, isn't applicable in China due to WeChat being the dominate platform (and works on all devices).

The author circles back to mention that it doesn't mean Apple is eliminated from that market since they still have other differentiators (status symbol).

</comment></comment></comment></comment><comment><USER47> _> Unsurprisingly, in stark contrast to the rest of the world, according to a report earlier this year only 50% of iPhone users who bought another phone in 2016 stayed with Apple_

Interesting. This shows that Apple don't compete properly and only achieve high sales through monopoly. That probably explains their general nasty attitude to many things, and really sick lock-in mentality.

 _> None of that lock-in exists in China: Apple may be a de facto monopolist for most of the world, but in China the company is simply another smartphone vendor, and being simply another smartphone vendor is a hazardous place to be. To be clear, it's not all bad_

Why is it bad? Being "simply another smartphone vendor" is the right situation. What's bad are monopolistic markets.

</comment><comment><USER48> > hardware differentiated by software such that said hardware can be sold with > a margin much greater than nominal competitors running a commodity operating > system.

Apple's hardware is not differentiated by software. Their creaking software is an ancillary requirement to use their excellent hardware. If their software was their differentiator then Hackintosh's would be more widely used. Secondly, OSX _is_ a commodity operating system. Non-commodity operating systems would be things like VOS.

> The functionality is mostly the same, and if users value a sustainable > advantage in the user experience Apple deserves the profits — and power — > that follow.

Sorry to be a dickhead but you shouldn't throw terms like "sustainable advantage" around like they're literal terms, when they have a very precise meaning in literature and research going back nearly half a century. Sustained Advantage specifically relates to Corporate Strategy and industry competition and is completely unrelated to user experience and whether or not a company "deserves" profits; advantage in an industry implies value accrual regardless of whether it's deserved or not. Nice UX might arise from functional level strategies, which arise from business level strategies, but otherwise they're unrelated concepts and it's not something the user should be aware of.

Misuse of terms leads to them being confusing and meaningless (e.g. Disruption).

<comment><USER49> While you may find it creaking, myself and many other people find the experience of using Apple software far better than any competing systems. I wouldn't work somewhere that asked me to use Windows. For me, and maybe I'm overly aesthetically sensitive, it would make my day to day life much worse. This is just to say that the authority with which you dismiss Apple's software as a point of differentiation is probably misplaced.

<comment><USER48> Differentiation also has a precise meaning in literature, and just feeling that software which comes free with Apple hardware is better than other software doesn't indicate product differentiation or a differentiation strategy. That's just personal preference.

I'm not saying that you don't/shouldn't genuinely and rightly prefer Apple software, I use Apple devices every day myself. That being said, I'd hazard a guess that you wouldn't use OSX on a Dell as your primary machine? Or iOS on a cheap Android if that were possible?

<comment><USER33> Yea, you don't understand the definition of product differentiation or differentiation strategy, because iOS and MacOS are poster children for both.

You also don't understand that MacOS isn't designed to be a commodity OS that runs on any hardware. It doesn't install with a huge database of video drivers for every possible PC out there. Running MacOS on generic hardware is problematic and not worthwhile, especially when the vast majority of Mac users can get good Mac hardware for less than a fraction of 1% of their billable rate.

<comment><USER48> Yeah, I understand exactly what the definitions of them are in detail, and somebody saying "It's differentiated because I like it better", which is what the person I replied to wrote, doesn't fit under the definitions.

I never said that attributes of Apple's product lines can't be classed as 'differentiated'.</comment></comment></comment></comment></comment>


How brain waves guide memory formation - <AUTHOR> http://newsoffice.mit.edu/2015/brain-waves-guide-memory-formation-0223

<comment><USER2> Interesting. This could be used to reinforce brainwashing.</comment>


Hundreds join line at NYC ATM to access unemployment benefits - <AUTHOR> https://nypost.com/2020/05/30/hundreds-join-massive-line-at-nyc-atm-for-unemployment-benefits/ <comment><USER3> > customers baked in 79-degree temperatures as they waited

Bit dramatic? With summer temperatures of 96+ in Texas, 79 sounds delightful. Is this a common discomfort up North, like the heat wave episode of Seinfeld? I'm fascinated with how we acclimate to different climates.

<comment><USER4> Yes this is hot. In direct sunlight I would find it uncomfortably hot, and would hopefully have some water if I was to wait around for half an hour or more.

Conversely I think nothing of going out in shorts and a t-shirt in 45-degrees.

<comment><USER5> 79 is not hot for outdoor conditions in NYC. The "baking in the heat" bit works in August when it's in the 90s and swampy.

</comment></comment></comment><comment><USER6> _"There are more than 1,000 ATMs in New York City that KeyBank debit cardholders can use for free, including over 100 in each borough, and it is entirely unacceptable that the bank failed to communicate those options to unemployed New Yorkers," said state Department of Labor spokeswoman Deanna Cohen._

I'm kind of amazed that the bank didn't at least put a sign up in the window listing the nearest fee-free alternatives for the sanity of its own employees and the continued operation of the ATM at that location. How many transactions can one machine manage before it runs out of cash or requires maintenance?

</comment><comment><USER7> > A KeyBank spokeswoman said they will be adding signage at the East 22nd > Street branch "to remind of the importance of social distancing."

What? Why not a sign with a map of all those 1000+ ATMs they can use for free? This seems like the wrong takeaway.

</comment><comment><USER8> Why wasn't it paid in to bank accounts?

<comment><USER9> It was explained better in the (otherwise less informative) BoingBoing article that this originally linked to: Direct deposit is an option, but not everyone takes that option.

There are a _lot_ more unbanked people than I think most folks who occupy the more stable corners of the economy realize. All those private businesses that prominently advertise check cashing services littered about major cities? Those signs aren't archaic leftovers from the 1970s; that's still a useful service that a lot of people use.

<comment><USER10> Why is that? I assume operating a bank account can't be that expensive for banks. If they don't let customers withdraw past zero, they don't really have risks, but they could still take a fee. Is there some regulation that makes it unprofitable? Are people okay not having a bank account and don't bother getting one because paying rent in cash is accepted?

<comment><USER11> People are unbanked for various reasons. Banks are not well optimized for those of lower socioeconomic conditions (and in fact don't really want them as customers). Here are a few examples where banks fail them:

1\. Speedy access to money When you deposit a check into a bank account, you have to wait a few days before the cash is accessible. Many people live paycheck to paycheck and they cannot wait. Hence check-cashing services.

2\. Overdraft fees These are incredibly regressive - punishing those who have low funds. Some banks were caught with predatory behavior - <USER2> transactions in a day so the largest hit first and they could trigger multiple overdraft fees (since it is per-transaction) until laws were passed to prevent this behavior.

3\. Other hidden fees (low-balance, etc) that aren't very transparent and really painful when every dollar counts.

Not to mention cultural issues etc. Long-story short, there is a reason people use check-cashing services even though at face value they seem a worse deal than traditional banks.

(Source: was VP of ENG at Credit Karma)

<comment><USER10> Those and other reasons make absolute sense, but I would imagine somebody to offer basic banking to the unbanked with a reasonable fee structure etc and just take the market. Germany's banking system is terribly customer hostile, but we've got that covered. The US is the motherland of disrupting old industries, why is it that it's not sorted out yet?

I get why some old self-important bank does not want to deal with the poor and makes faces if you suggest it, but somebody has to yell _pecunia non olet_ and jump int.

</comment></comment></comment></comment></comment><comment><USER12> why did they not elect for direct deposit?

<comment><USER13> If it's anything like California unemployment last time I used it (for paid family leave, not traditional UI), you can't actually "elect for direct deposit" in the simple sense; you get an ATM card and after benefits are first loaded you can go through a process to transfer the balance to your bank, and only then set up future deposits to be transferred automatically to your bank. The bank transfer is not instant, either, it's a 2-3 business day process.

The quickest way to get benefits out if you need it the first time is to withdraw the limit from the card at an issuing-bank ATM.

And, of course, the people.that are least employment-secure overlap significantly with the unbanked. Can't elect direct deposit if you don't have a bank in the first place.

<comment><USER14> At the end of the article, it states that 80% of the New Yorkers that receive unemployment benefits chose to receive them via direct deposit, and the 20% that didn't received them in the form of a debit card.

<comment><USER13> Right, what I'm saying, using California UI as an example, is that it's possible that there are implementation-detail-based reasons that people do not choose direct deposit, especially the large surge of new filers in the present predicament who often also had delayed benefits and thus were more likely to have urgent immediate need.

The 30,000 foot view of a program often obscures important details; information on California UI I've seen also refers to how many choose direct deposit vs. choosing an ATM card, glossing over the details of the mechanics of how that works which is actually that everyone gets an ATM card, and some people, after getting it, redirect the funds to their bank, which only happens as direct deposit _after_ the first time (and not really even then, IIRC, it still goes into the account tied to the card and then is immediately automatically transferred.)

</comment></comment></comment></comment><comment><USER15> "NYC has only one Keybank Branch leading to queues for unemployment benefits"

would be a less clickbaity title</comment>


Asshole driven development (2007) - <AUTHOR> http://scottberkun.com/2007/asshole-driven-development/ <comment><USER2> SODD: Stack Overflow Driven Development.

The entire code base must be comprised of purely copy-and-pasted code examples from SO. No typing allowed. This _actually_ may be an interesting challenge!

MIJDD: Machete In Jungle Driven Development.

Start down an initial path to solve the problem, and then never back-track, turn around, or admit it may be the wrong way despite how many swamps, cliffs or deadly bugs you run into. Also known as "BAWM", or "Burke And Wills Methodology".

PEPDD: Prototype Equals Production Driven Development.

If an initial attempt at writing the code compiles and seems to do the job, don't worry about debugging or refactoring, just ship it, start charging the customers, and start bolting on new features ASAP. Also known as "Additively Deployed House Of Cards", or "ADHOC".

<comment><USER3> SODD is not such a bad thing.

If it's been written by someone smart and has a lot of upvotes, it's probably better than most code.

There's an idea there ...

<comment><USER4> It might give you good code, but by piecing together snippets of good code, you're somewhat more likely to wind up with a lousy architecture...

</comment></comment></comment><comment><USER5> Fuckit Driven Development; when you're tired of your manager making nonsense decisions and not respecting your expertise so you give up caring and blindly do what they ask in order to avoid arguments.

<comment><USER6> SNADWFYGDA (smile, nod, agree then do whatever the fuck you were going to do anyway); when you're tired of your manager making nonsense decisions and not respecting your expertise so you give up caring and do whatever the fuck you want as he won't read the code anyway.

<comment><USER7> I've done this in the past. I doesn't work very well, but it works better than trying to implement something you know isn't going to work.

</comment></comment></comment><comment><USER8> How about:

Despair Driven Development - It's clear the project/company is going to fail anyway, so hack on anything you want, it doesn't really matter.

<comment><USER9> Related to the IGA (I'm Gone Anyway) Methodology.

Where you know that you'll leave the company by the end of the month and don't give a shit.

<comment><USER10> IDGAFDD, or Not-Driven-Development

</comment></comment></comment><comment><USER11> I work in a monolith driven development environment.

The application is now so huge, that rather than reuse code, team members just add new but very similar methods for new features, because you can no longer identify the code you should be reusing/tweaking for that new feature, because it's lost in a sea of shit code and complexity, maintained by multiple developers (some good, some bad, some awful) over the last ten years.

Closely tied to Customer Driven Development, where be features get developed because customers are willing to pay for the development, even if the change doesn't make much sense, or is being used to mimic a bad manual customer business process.

<comment><USER3> CDD is not a bad way to write software at all.

In fact, companies that do this are probably more successful than not.

Your customers are your source of revenue, 'what they want' is good for your business :)

In the early stages of a company, before mass market adoption, it makes sense for companies to please whoever they can before 'lift off' into broader adoption.

So many companies got their start this way. Microsoft, Oracle etc..

From an architectural standpoint, it may sometimes seem 'impure' but then you really do have to ask yourself what you are building and why :).

<comment><USER12> CDD is when a customer is convinced to buy very expensive software that amounts to nothing more than a cosmetic upgrade to their existing broken process.

<comment><USER3> Don't devalue yourself.

What you perceive as 'cosmetic' might be some really minor thing ... but it may be absolutely critical to your customers operational needs. Remember if you have zero IT ability than the smallest process change can be a huge pain.

Example: Customer Service may be a great chance for customers to give a heads up about things that are broken or needed features. CS Reps might hear about it all the time. But they have no way to log that information, or for it to be refined. Product leaders therefore are screwed: there most important feedback is lost.

With a small change to CSR, staffers can make note of things, put priorities, now if there is a 'blow up' in a release, product can know about it right away.

Very small change can mean big impact.

</comment></comment></comment></comment><comment><USER3> RPD - 'Random Push Development' \- no vision, no roadmap, no plan, just a constant rush to some new feature ...

<comment><USER13> Yeah, I've seen that. It goes along with the attitude that we won't deal with any problem, no matter how bad, unless an important-enough client screams loudly enough.

</comment></comment><comment><USER14> And how about Fear Driven Development.

It essentially a fear of trying out best technology, or best practices or fear of visibility. situation where organization does not support a progressive environment instead everyone has been kept under some kind of fear or pressure to create shitty code.

<comment><USER13> Or when you have a large, old codebase, Fear Driven Development means touching the code as little as possible for fear of breaking something that's huge, complex, 10 years old and largely undocumented, which nobody understands. This often results in the kludges becoming the majority of the code, and any actual knowledge of the system existing only in corrupted form in gray matter.

It's also similar to the one described above where every time someone needs a piece of functionality, he just writes it, instead of searching for what already exists because, again, no one understands it.

It also goes hand-in-hand with SWDD, Squeaky Wheel Driven Development, where no matter how bad the code is, or how slow or unstable it is, nothing gets fixed unless an important-enough customer complains loudly enough.

It also goes well with the Fire Ready Aim Development where the teams spend 3 months developing new features and 9 months fixing them. Agile is supposed to help with this, but if you don't have a robust automated testing infrastructure, good documentation and at least a little coding discipline, it won't. It's not hard for Agile to become nothing more than taking your huge bug-fixing and hardening phases and breaking them down into two-week-long chunks.

Then there's ITWWSTD, It's Done When We Stop Testing Development, where you plant a stake in the ground and shop what you have because you've run out of time before you've run out of bugs.

</comment></comment><comment><USER15> ARDD: Ayn Rand Driven Development.

Every class does only what's best for itself with no thought or concern given to any other class, any objects created are held on to privately forever and any object that needs something is considered a parasite.

<comment><USER12> addendum: every class is a singleton.

</comment></comment><comment><USER4> Random Walk Development - The project has no direction, it just veers off in various directions and winds up... somewhere.

</comment><comment><USER16> JITD (Just in time development): where you know that you aren't going to get specs that match the data you'll eventually need to parse, so instead of writing the code to do it you just wait until you get the actual data file and then bang out the code to parse it an hour before you're supposed to demo.

</comment><comment><USER17> TDD (timecard driven development) - hack on shit for a while. commit at 4 PM. you may not be able to separate features, but you can back code out to the most recent "runs" commit before the rollback you need!

</comment><comment><USER18> Imagine a framework/compiler that just detects hacks and refuses to compile hacked together projects.

<comment><USER19> Imagine a world with no compiled computer code ;)

<comment><USER18> Imagine there's no compilers, It's easy if you try{it()} No stack below us Above us only jit, Imagine all the hacked source Living for today... Aha-ah...

Imagine there's no compiler It isn't hard to do Nothing to wait or segfault for And no undefined behavior, too Imagine all the users Running code sandboxed...

You may say I'm a dreamer But I'm not the only one I hope someday you'll join us And the world will be as one

Imagine no possessions</comment></comment></comment>


Ghost Army Haunts Michigan Library - <AUTHOR> http://blog.seattlepi.com/bookpatrol/archives/197656.asp?from=blog_last3 <comment><USER2> Sounds like a great low level compliment to this superbly written and exhaustive 1170 page book: _The Deceivers: Allied Military Deception in the Second World War_ [http://www.amazon.com/Deceivers-Allied-Military-Deception- Se...](http://www.amazon.com/Deceivers-Allied-Military-Deception- Second/dp/1616080795/)

Used copies of the book became a bit hard to find after _The Wall Street Journal_ recommended it, but it looks like it will get a reprinting in October.

</comment><comment><USER3> Here is the follow-up post, mentioned at the end of the article, about the three Ghost Army alumni artists:

<http://blog.seattlepi.com/bookpatrol/archives/198123.asp>

</comment><comment><USER4> Sun Tzu would have been proud.

</comment><comment><USER5> Misdirection. The most sublime tactic of war, football, and chess.</comment>


Inversion: The Crucial Thinking Skill Nobody Ever Taught You - <AUTHOR> http://jamesclear.com/inversion <comment><USER2> This is related to something that I try to teach junior devs: solve the problem, then figure out what problem your solution is solving and re-solve for that more general problem; only once because:

If you continue this chain of thought you conclude that most software is solving communication. Uber? Communication between a rider and a taxi. Facebook? Communication between friends. Etherium? Communication between an investor and a developer. Business process management? Communication between employees. This is probably the basis of Zawinski's law.

</comment><comment><USER3> So this is like when Elon Musk calculated that in the worst case he could live on hotdogs and peanut butter for about $1.50 per day :)</comment>


Walter Russell Mead: The Higher Education Bubble - <AUTHOR> http://blogs.the-american-interest.com/wrm/2010/08/31/back-to-school/

<comment><USER2> The irony is this author never once questions why American degrees aren't paying off. If I was a professor at a University and I acknowledged the fact that degrees aren't paying off I'd be looking for a solution. Not shrugging my shoulders and telling future students to accept the inevitability of their useless education.

It amazes me that he can make a point of mentioning the tough competition from China and India (where degrees are more "skill oriented") and then go on to suggest students spend their college years pursuing a "liberal education" as he calls it.

Don't get me wrong. I'm all for General Education classes that introduce students to basic ideas of philosophy, other cultures and so on. But the University system needs to realize that those classes are the gravy and not the main course. The focus of college is to get a usable skill that will make you a productive member of society. I'm continually amazed by people in my professional life who have gone through 6 years of college (MBAs) and seemingly have no useful skills to show for it.

I think it's time for University teachers to take ownership of the problem and start creating curriculums that are designed to fix it.

<comment><USER3> That wasn't the thrust of this essay, though. I think you're assuming to much and jumping to conclusions. This was just a simple essay to future students, that doesn't mean this is all he has to say on the subject.

 _It amazes me that he can make a point of mentioning the tough competition from China and India (where degrees are more "skill oriented") and then go on to suggest students spend their college years pursuing a "liberal education" as he calls it._

It doesn't surprise me at all. The classics are probably the best place to discover a philosophy of work and strategy that is useful in this environment (and any future environment).

Also, people in developing countries work like hell because they have to to survive. They were given nothing. We were given everything. We're not facing nearly the same risks. You can't just tell these students "Hey! You will have to work hard because those other guys are." and expect them to jump. You have to change the way their mind works, and the classics have the material to do so. Otherwise, people who have grown up with an easy life have a tendency to squander what they have and become fat and lazy.

</comment></comment><comment><USER4> Solid article. This problem is painfully evident in the UK, where we're aiming at 50% university attendance, when we have quality courses available for about 10% of students. The result: 3 more years of high-school quality education - quantitatively more education, but qualitatively these 'graduates' have just crammed, parroted and forgotten a little more.

The most important skill to take from HE is the ability and desire to continue to learn: the only skill that'll never be obsolete (I'd better keep telling myself that, since I'm a history graduate :) ).</comment>


Urine, Phosphorus, and the Philosopher's Stone - <AUTHOR> https://resobscura.blogspot.com/2017/06/urine-phosphorus-and-philosophers-stone.html <comment><USER2> Just read The Baroque Cycle - you can learn all this and more in much more entertaining form.

</comment><comment><USER3> The article touches on the relationship between Phosphorus and Lucifer, it's also noteworthy that Phosphorus was the name given to Venus when appearing as the Morning Star (as the Evening Star it was Hesperus)</comment>


Why did I get so many emails from sites regarding Privacy Policy changes today? - <AUTHOR> <comment><USER2> GDPR has to be in effect by May 25th and so companies are changing their privacy policies to comply with it.

It's probably a coincidence that it all happened the same day for you.

</comment><comment><USER3> GDPR is going into effect so tons of companies are changing privacy policies.</comment>


Appropriate Uses for SQLite - <AUTHOR> https://sqlite.org/whentouse.html <comment><USER3> This is one of my favourite technical sites. It is very clear and to the point about its good use cases while being clear where an alternative would be a better choice.

In a similar vein, VueJS has a comprehensive exploration/comparison of itself compared to other frameworks[0].

I really appreciate open source maintainers that have the humility to compare their work fairly with others within the domain while still taking pride in their own acheivements.

[0]: [https://vuejs.org/v2/guide/comparison.html](https://vuejs.org/v2/guide/comparison.html)

<comment><USER4> I'm trying to make a habit of adding a "Do NOT use if..." section near the top of my projects' READMEs whenever there are simple exclusion criteria.

For example [https://github.com/sapcc/swift-http-import#do-not-use- if](https://github.com/sapcc/swift-http-import#do-not-use-if) \-- This particular instance was born out of watching users bending over backwards to use the software even though standard software does the job just fine or better in their concrete case.

</comment></comment><comment><USER5> Well, actually it is very simple when you understand the why SQLite performs differently than other database systems. The major difference is that 'normal' database systems have a process which receives and processes SQL queries and has the exclusive access to the database file.

SQlite on the other hand doesn't have such a process so, every client has to open the database file itself, process the SQL and close/write the file again.

So the biggest difference is, that if you want to use SQLite, you will have to limit your database operation to one or fewer ;-) processes to not get into a situation where one process has to wait until the other finished writing the database file to the filesystem just to read it again in the next moment. Otherwise your filesystem and the continuing reading and writing of the database file will make the whole thing very slow.

But as long as you have only one process using the SQLite file and keep it open for a while you will see a comparable performance to other database systems. Actually, SQLite can be very fast if you do use it in a sane way.

<comment><USER6> SQLite is fine with multiple processes as long as they are read mostly. And if you switch journal to WAL mode, it is as good any multiprocess DB without MVCC (which, depending on access patterns might be as good as it gets - <USER2> mist patterns do benefit immensely from MVCC)

<comment><USER7> Not really.

In a usual quassel (irc bouncer that can, optionally, store logs in SQLite) setup, you'll have between 1 and 10 writers, constantly writing hundreds of IRC messages a second to SQLite, while you'll also have readers that need to respond with low latency for queries loading hundredthousands of messages, including those that were just written.

The result is that SQLite gets so slow that the writers queue up so much work that the IRC connection times out.

SQLite is absolutely useless for multiple writers.

<comment><USER8> > SQLite is absolutely useless for multiple writers.

I don't really quite agree with this, but would say that with SQLite it's more important be be aware of how concurrency is being used with regards to the database, in comparison to something like MySQL or PostgreSQL. As far as IRC logs, I think the important thing (that would almost certainly hamstring any SQL database that's actually being ACID) is to not use autocommit on inserts, and to not use a transaction for every single insert (which is possibly what's happening). I wrote a plugin for ZNC to do exactly what you're doing above, and by batching my writes (either waiting 15 seconds or until n (where n is maybe 1000 or more) messages are queued), I've gotten superb performance out of SQLite3 running with a WAL journal, with the trade off being a little bit of data might be lost if your bouncer happens to fall down in an unhandled way. I was also able to get really good read performance without hurting raw write performance by leveraging partial indices, which something like MySQL doesn't give you.

<comment><USER7> Well, with PostgreSQL everything works just fine. Read and write performance is amazing, and full text search returns instantaneous results.

With SQLite, it's basically useless.

<comment><USER9> It really depends... I've worked on systems that PostgreSQL (or any SQL rdbms) wouldn't be able to keep up with. I've seen many others that would do fine with SQLite. It depends.

In the end, it's a matter of testing. Also, with faster drive options (Optane and whatever is next), it could very well be a decent option. It all depends.

Frankly, for logging, I'd lean towards elasticsearch (ELK) these days, which is about the most write heavy situation you're likely to see. Depending on the scaling Mongo, RethinkDB, ElasticSearch and Cassandra can all be better solutions than RDBMS. I'd still reach for SQLite or PostgreSQL first depending on the situation though.

<comment><USER7> Sure, with optane it may work — but the usual usecase for SQLite is on the slowest SD cards or spinning HDDs you can imagine, where the user didn't want to spend time configuring postgres

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> One of my favorite points about SQLite which hasn't been addressed yet in the comment thread is that its databases are just single flat files. Need to copy data from a server to a local dev machine? No need to log into the server, make a dump, copy the dump file to the local machine, and import the dump. Just copy the database file as you would any other file. That's it.

Making a backup before trying something risky (and then restoring the backup when something screws up) is similarly trivial.

Maybe to some of you it's not worth that much, but it's a legitimate timesaver in my opinion.

<comment><USER11> That's why it is sql "lite". It's great for certain things because it's generally lightweight and manageable.

But you wouldn't want a single file format on enterprise level systems where enterprise level performance and stability is required. At the very least, you'd want your data and transaction log files to be different files on different disks. Especially when IO throughput is important.

Also, since DBs tend to have important data on them, being able to copy a file (db) and move it anywhere you want isn't much of a selling point on serious systems.

Having said that, sqlite is great for application/client side storage.

</comment></comment><comment><USER12> Sadly, in the browser SQLite has been kicked to the curb, replaced by IndexedDB.

It's deeply disappointing to not be able to use SQL on both client and server. Yes, there's Lovefield, which employs its own DSL that has nothing to do with SQL, so you can scrap everything on the server and redo it on the client.

Or just give up and go with NoSQL on client and server, that seems to be what the browser vendors are implicitly pushing developers toward.

<comment><USER13> > Sadly, in the browser SQLite has been kicked to the curb, replaced by > IndexedDB

Are you thinking of WebSQL? I don't remember a SQLite interface client-side in any browser. I might be wrong, but I thought IndexedDB was originally implemented on top of SQLite in both Chrome and Firefox. I think Chrome moved to a different backing store, but that has no bearing on the API.

<comment><USER14> SQLite has been ported to the browser via Emscripten. I've seen it used in a couple niche projects (generally those that revolve around the SQL language), but I don't remember it being a standard or even a primary use of SQLite.

[0]: [https://github.com/kripken/sql.js/](https://github.com/kripken/sql.js/)

<comment><USER12> I'm aware of it, nice project, but 2.6MB + in memory only storage, no thanks.

<comment><USER15> It shouldn't be super difficult to backup/restore your db from localstorage using a dataURL.

[https://hacks.mozilla.org/2012/02/saving-images-and-files- in...](https://hacks.mozilla.org/2012/02/saving-images-and-files-in- localstorage/)

<comment><USER16> At that point, why wouldn't you just look for some SQL to LocalStorage API/shim, since it's bound to be faster than (and likely more stable with regard to page resets than) putting a full SQL engine in place that just serializes to a LocalStorage object anyway?

</comment></comment></comment></comment></comment></comment><comment><USER17> I find this page to be somewhat vague. For example, any data that revolves around dates or time may require some addition hoops to jump through since, as [https://www.sqlite.org/datatype3.html](https://www.sqlite.org/datatype3.html) points out, "SQLite does not have a storage class set aside for storing dates and/or times."

As much as I love SQLite, I find this little issue always adding an extra bit of work to deal with. Not a blocker, but useful to know. I've found that in some (rare) cases, H2 became a better solution (horrendous start time, slow data load, but ability to use real date and time types reduced errors and improved analyses).

Finally, knowing that SQLite is not right for a situation is great, but it wouldn't hurt for them to mention a potential alternative, if the devs or community know of one.

<comment><USER18> Not as lightweight as sqllite. But I always wonder why firebird embedded-able server[0] does not get more love? The 32-bit so library just under 7MB and then you have a full rdbms available to your application.

[0] [https://www.firebirdsql.org/pdfmanual/html/fbmetasecur- embed...](https://www.firebirdsql.org/pdfmanual/html/fbmetasecur- embedded.html)

<comment><USER19> Well, for one, SQLite's 32-bit dll is only 858KiB :)

<comment><USER18> Feature richness comparable to oracle, mysql, postgres, comes at a price.

Another perspective; embeddable py 10MB, electron app 50MB[0], free pascal exe 1.5MB.

So 7MB for a RDBMS seems reasonable, but not comparable to SQLite as you pointed out.

[0]: [https://github.com/electron/electron/issues/2003#issuecommen...](https://github.com/electron/electron/issues/2003#issuecomment-135592382)

</comment></comment></comment></comment><comment><USER20> I wish SQLite was used for data exports from web-sites instead of CSV files. It would work better especially when the exported data is a some kind of star schema. I wrote about it here: [http://bi- review.blogspot.com/2017/04/websites-should-offer-...](http://bi- review.blogspot.com/2017/04/websites-should-offer-micromodels.html)

<comment><USER21> That will happen as soon as Excel implements an SQLite import feature.

<comment><USER22> Maybe when it gets Python support! :)

[https://excel.uservoice.com/forums/304921/suggestions/105490...](https://excel.uservoice.com/forums/304921/suggestions/10549005)

</comment></comment></comment><comment><USER23> > Dynamic content uses about 200 SQL statements per webpage.

Genuinely curious, what kind of page would require 200 queries? I've written plenty of moderately-complex applications and don't think I've come close to 10% of that on a single (non-crazy dashboard) page.

<comment><USER24> Worst I've seen is a CMS site which, with caching disabled, used upwards of 40,000 queries to load the homepage.

<comment><USER25> When the app is being dumb, people put caching in to hide the data flow problems. When the data flow problems are hidden, they multiply, and then turning it off again is highly improbable.

Caching has sucked all the fun out of too many projects I've been associated with.

Do cache headers and cache busting first. You can always put a transparent cache in front of your REST endpoints in prod. After debugging the browser caching. Don't write your own caching implementation. Please.

</comment></comment></comment><comment><USER26> Bulk loading a CSV or similar into SQLite for analysis with SQL statements is an incredibly productive technique. With a few lines of code you can load any log file, load and merge multiple logs by timestamp, whatever you like

<comment><USER27> The amazing but criminally under-appreciated 'lnav' ([https://lnav.org](https://lnav.org)) facilitates exactly this approach. SQLite under the hood.

<comment><USER28> Oh, I hope there is a Windows-compatible way to use this (i.e.: in a .NET dev environment), if not now, then in the future.

<comment><USER9> Would probably work under the Windows Subsystem for Linux (WSL), in Win10, or via Docker for Windows.

I've done similar with node.js streams pretty easily.

</comment></comment></comment></comment><comment><USER29> I use SQLite for logging data from a bunch of distributed sensors. The server (RPi) sends a measurement request over MQTT, the sensors reply and the server logs each response grouped by the request timestamp. Seems to work very well for 25 sensors on the same WLAN and for continuous monitoring (about 100 measurements per minute).

This can then be displayed to the user via a web server which has read-only access to the measurement db.

</comment><comment><USER30> I run a complex CRM that handles 1.2 million USD in transactions every year. It is running sqlite with a simple in-memory cache (just a dict) that gets purged when a mutating query (INSERT, UPDATE or DELETE) is executed. It is simple _and_ fast enough.

<comment><USER31> Tell us more! How many transactions per second do you process? Do you use multiple databases?

<comment><USER32> If you assume each of these transactions is a dollar, you get a bit under 0.04 transactions/sec on average. If peak load is 25x average, that would come out to 1/sec.

</comment></comment></comment><comment><USER33> I may have gone a bit beyond what SQLite is useful for, but I just wanted to try this. I built an experimental application-level file system (so not FUSE- like, you can't mount this, it's just within an application).

[https://github.com/kokes/sqlfs](https://github.com/kokes/sqlfs)

Haven't had much time to finish it, but it's been fun to play with.

</comment><comment><USER34> > SQLite works great as the database engine for most low to medium traffic > websites (which is to say, most websites).

I appreciate that there's just a hint of snark there. YAGNI, after all, is one of the most often-forgotten important principles in this industry.

</comment><comment><USER35> I've recently used SQLite to store some metadata for a FUSE filesystem that pretends all your data is available but that just keeps a local cache and fetches it from the server on demand[1]. Initially performance was atrocious because INSERT is really slow if you don't batch several into transactions. I've worked around it with some application caching but there does seem to be a large gap between what the postgres engine can do and what sqlite can do. I definitely don't want to depend on a postgres setup for this application but it would be nice to have an SQL database for app use that had a bit more write performance. It seems that when you want that you end up going to LevelDB or LMDB and losing the niceness of an SQL interface.

[1] [https://github.com/pedrocr/syncer](https://github.com/pedrocr/syncer)

<comment><USER36> A lesson I've learned the hard way, from using Sqlite in many apps I've written, is that if you need any kind of insert performance you can't abstract away the transaction model, and retrofitting transactions onto an application which previously ignored them is not easy either. You really have to design for it up front.

Mainly this is because there is at most one, global transaction per Sqlite database (in other words you can't nest transactions), but also because the optimum window to gather up inserts for a bulk transaction might not match up well with the logical function call structure of you program. I recently learned about the Sqlite SAVEPOINT feature; this might help implement nested- transactions, but cannot help with the second problem.

For example, what if you made a "logging.db" file for a GUI application, and you're grouping writes to a log table in batches of 50 for each INSERT transaction. What happens if your GUI app gets to 48 inserts but then stops receiving user interaction events? You'd probably still want those 48 inserts to show up (eventually) in the logging.db rather than just being "lost" if the app subsequently crashes. So what do you do? Register a timer event to create a watchdog to flush the transaction if enough time goes by? OTOH what if a subroutine of your app is actually at that moment performing a lengthy "real" (logical) transaction and wouldn't want it flushed? Or maybe the application should use different database files for logging versus data where consistency is vital (so that a database can be opened either in "accumulate INSERTs" mode or "real logical transactions" mode)?

My point is not the detail of how to answer those questions; it is just to highlight that these are questions which have to be thought about at a whole- application architecture level.

</comment></comment><comment><USER37> Sadly the lack of a decimal type complicates monetary calculations sufficiently for me to stay with postgresql even for small projects that could easily be done with SQLite.

<comment><USER38> You could just store decimal strings and use application-language decimal functions to operate on them, even in queries, since it's fairly trivial to use application-language functions as SQLite (scalar or aggregate) database functions, at least in most decent SQLite drivers I've seen. It's one of the advantages of an in-process database.

<comment><USER39> Strings don't work well with numeric aggregate SQL functions like SUM or MAX. Also, won't work well with comparisons or sorting: "111.00" is less than "9.99" string-wise (unless you store all numerics with a bunch of leading "0"; but then that takes a lot more space).

</comment></comment></comment><comment><USER40> I've used sqlite as an index for S3 objects ..and stored the DB file in S3 itself. It was very practical to use, and a handy pattern to apply to object storage where the number of objects to be indexed for a given time frame was reasonable for sqlite (I had in 100k range).

Also - easy to dump the sqlite db into a SQL text file then import into something like postgres :)

</comment><comment><USER41> I love SQLite and am currently working on a project that makes extensive use of it. In the book "The Definitive Guide to SQLite" it says that SQLite can scale to __2TB of data Looking at the website it says

      An SQLite database is limited in size to 140 terabytes (247 bytes, 128 tibibytes).

That's ludicrous. I wonder if anyone has come close to that in day to day use.

<comment><USER42> Almost certainly not seeing as the single hw largest device is currently 12TB. Someone would have to pool together 10+ (and more for redundancy) just to store the single file.

<comment><USER43> I have heard of people running ZFS pools that were hundreds of TB in size. Not sure if they were using those for huge SQLite databases. ;-)

</comment></comment></comment><comment><USER44> What would be a bottleneck / limit for SQLite? If you have to many SELECT query because your site is too busy, what would happen?

<comment><USER45> While not strictly related to computation, sqlite is a non-starter for deploying to PaaS without a persistent file system.

"SQLite on Heroku" [1], essentially: don't do it, switch to postgres.

I suppose it would work with AWS Beanstalk and EBS.

[1] [https://devcenter.heroku.com/articles/sqlite3](https://devcenter.heroku.com/articles/sqlite3)

<comment><USER9> If you're already in that environment RDS is probably a safer bet though.

</comment></comment></comment><comment><USER46> Could anyone using SQLite FTS share their opinion/story? I'm especially interested in indexing hundreds of gigabytes.

</comment><comment><USER47> Every once in a while I have sqlite eat it, and end up with a corrupt db file. About as often as mysql really. I wish I had some more serious automatic recovery in sqlite. I have to have a boot script check the db, export everything to an sql file if the db is corrupt then create a new file.

<comment><USER48> That does not mirror my experience, I hate to be the guy suggesting this but have you considered the fact that you're using it wrong?

What I mean by that is that SQLite really is a replacement for open() and as such is not multi-thread compatible. If you're doing a lot of work that's corrupting you can also turn up the level of binary logging until recovery becomes easy enough.

I'm using SQLite effectively on a few thousand multi-threaded windows machines and I've encountered corruption exactly once- which was when a hardware raid had degraded non-gracefully.

<comment><USER49> My understanding is that using SQLite is completely fine in a multithreaded architecture, but you have to ensure that the simultaneous database operations match the correct threading mode:

[https://sqlite.org/threadsafe.html](https://sqlite.org/threadsafe.html)

I also believe that the common way of gaining performance while protecting safety is to use multi-thread mode with connection pooling. The idea being that your application can use different database connections to achieve multiple writes without relying on the overhead of additional locking required within SQLite itself for serialized mode.

Would be interesting if anybody has performance metrics that backs up what I said with data converging on an optimum number of database connections.

<comment><USER48> that's exactly the case; make sure only one thread writes, but how you feed data to that thread is up to you.</comment></comment></comment></comment>


Hydrothermal vent models and the origins of life - <AUTHOR> http://nautil.us/issue/37/currents/the-fly-in-the-primordial-soup <comment><USER2> I can't access the original article at present, but just finished reading"The Vital Question" by Nick Lane which covers some of the same topic.

Highly recommended. Dense. Thought provoking. It really made me think about first principles of life, and how one gets from inorganic to organic systems by bootstrapping, slowly. It seems complex life was really a stroke of luck, at least according to his hypothesis.

He does make a lot of pronouncements that o wasn't qualified to judge. And name drops often enough that I found it tedious.

Seems like this is an area of ongoing research and I will be interested to read following on articles/books in a few years.</comment>


YC alum VoteAmerica launches tech to help voters register online and by fax - <AUTHOR> https://techcrunch.com/2020/05/13/voteamerica-launch-debra-cleaver-vote-org/ <comment><AUTHOR> "By using fax and email APIs, VoteAmerica is building out a system that allows voters to request a vote-by-mail application just by taking a photo of their signature. VoteAmerica's tool then uses code to put the signature in the right spot on the form and then programmatically faxes it to the relevant local election official."

This uses some very slick computer vision techniques to do the signature extraction in variable lighting, and runs on AWS lambda for easy scalability. We'll be sending text messages to 300k Georgia voters on Monday (the first state where this is live), and will extend to 14 more states over the next month.

Check it out at [https://VoteAmerica.com](https://VoteAmerica.com), or the backend code at [https://github.com/vote/turnout](https://github.com/vote/turnout)

\- disclaimer, I'm product director at VoteAmerica.com</comment>


Show HN: Simple Weather a Chrome Extension - <AUTHOR> https://github.com/timleland/WeatherCE

<comment><USER2> Very clean and appetizing design!

What will happen once each API key has reached one thousand requests in a day?

<comment><USER3> In fact, there are 4 keys randomly chosen, so 4000 requests are available. Nice clean design, my code always ends up as pile of mess of files, comments and code...

<comment><USER2> 4000 requests doesn't seem like a lot if this extension gets popular, but let's see if it's gonna be a problem at all.</comment></comment></comment>


The NoScript Misnomer - <AUTHOR> http://thehackerblog.com/the-noscript-misnomer-why-should-i-trust-vjs-zendcdn-net/ <comment><USER2> It seems both NoScript and AdBlock Plus have become really permissive as of late regarding their whitelists. While ABP is a bit shady with their 'acceptable ads' deals, I believe in NoScript's case it's probably due to not wanting to break things too badly for less technically minded users.

Regardless, I've replaced both extensions with uBlock Origin. While UB in default deny mode is not as fine grained as NS, it does the job and doesn't compromise on default whitelists at the expense of a little breakage (gorhill is very adamant on this point).

<comment><USER3> My approach was to start by combining SomeoneWhoCares' and MVPS' hosts files with `uniq`, which rendered such browser addons largely, though not entirely, unnecessary. The down side is you can only do that on machines where you have root access.

<comment><USER4> Hosts files only work for redirecting _known_ bad actors down the memory hole. A noscript style blocker is needed to catch malicious js from new sources not tracked in a hosts database.

<comment><USER3> That's why I said "largely, but not entirely". I still use them.

</comment></comment></comment></comment><comment><USER5> Buying a stale entry on the NoScript whitelist for $10 is a cute trick, but the important point this post makes is that you basically can't trust NoScript to protect you from browser vulnerabilities. Many of the zillion scripts it effectively whitelists will themselves have DOM corruption flaws. Compared to the effort it takes to build a reliable drive-by browser exploit, evading NoScript is not a meaningful challenge.

<comment><USER6> > "you basically can't trust NoScript to protect you from browser > vulnerabilities"

You make it sound like NoScript should not be trusted. In reality, nothing is secure but NoScript is one of the better security options (perhaps best?) for helping to prevent a specific set of attacks that use js to enable.

A flaw was found - and promptly fixed. You are (inadvertently I believe) leading people to drop NoScript and possibly go with something else. Another less mature security tool will have its own share of flaws - likely months or years until they will reach relatively similar ground as NoScript.

<comment><USER5> No, you've misread the story. They fixed the stale entry that allowed this guy to pay $10 to whitelist all his Javascript. But any flaw in any of the thousands of Javascript files on all the other default-whitelisted CDNs will also allow attackers to evade NoScript. The CDNs won't be evil. The authors of those Javascript files won't be evil. But attackers will mine them for flaws they can use to evade NoScript, and those flaws will be easy to find (especially compared to reliable browser vulnerabilities).

No, NoScript does not protect against JS browser vulnerabilities.

<comment><USER6> It's all relative. ~3/4 of the default whitelist is google, yahoo, mozilla, microsoft, cloudflare. While technically, your "thousands of javascript files" is true, in reality, it's making the problem sound bigger than it is.

Those 5 organizations have easier ways to attack you than rely a relatively little used extension to a relatively little used web browser. And attacking any of those 5 organizations is no easy feat.

Firefox + NoScript is still one of the best bang for the buck security improvements any ordinary user can make. Is it foolproof? heck no. Will it stop even a brainless script kiddie intent on hacking you? Not necessarily. But it will eliminate a number of drive by attacks.

Readers should keep converting their moms and dads and grandmas to Firefox + NoScript. Simple and great bang for the buck security.

<comment><USER5> You are still missing my point, which is frustrating, because I tried to make it clearer last comment. I am not saying Google will try to screw you. I am not even saying the author of the specific Javascript that provides an easy NoScript evasion will be trying to screw you. I am saying that it is not uncommon to find DOM corruption flaws in clientside JS libraries, and if those libraries are hosted on whitelisted CDNs, those flaws are all NoScript evasions.

Two things that may not be intuitively clear to every reader:

1\. No way do all of those sites actually do full security audits for every .js file on their domain. (Google comes close.)

2\. The specific kind of security flaw we're talking about is not necessarily "interesting" outside the context of NoScript. There are plenty of clientside DOM corruption bugs that don't even get documented, let alone fixed, because they can't easily be used to compromise a user session. But they will work fine for getting the right chunk of malicious JS delivered to end-users.

I'm not anti-NoScript. But don't kid yourself about its utility against browser JS vulns. Before you get your dad to install NoScript, make sure he's patched. Try to get him to switch to Chrome while you're at it.

</comment></comment></comment></comment></comment><comment><USER7> NoScript doesn't have a public source control repository, which makes it hard to follow what changed between releases. A while ago I made an automatically updated GitHub repository that contains all public releases.

[https://github.com/avian2/noscript](https://github.com/avian2/noscript)

For example, this seems to be the change that was pushed as a response to this discovery:

[https://github.com/avian2/noscript/commit/398ae6eadd2f40c8b7...](https://github.com/avian2/noscript/commit/398ae6eadd2f40c8b7bc4ed68cb382e22b6d73e9#diff-1787e3e469a52da28084e1d781c11ac5L33)

</comment><comment><USER8> It's a typo, the actual URL is vjs.zencdn.net. No wonder the domain was available.

<comment><USER9> The URL in the thread he shows is zendcdn though:

[https://forums.informaction.com/viewtopic.php?f=10&t=17066](https://forums.informaction.com/viewtopic.php?f=10&t=17066)

<comment><USER10> This is consistent with it being a typo. Typo's just in the forum post now.

<comment><USER11> Wait, so a domain typoed in the forums was added to the NoScript default whitelist without even being checked?

Oh dear.

<comment><USER12> That should have been the takeaway of the story, it's certainly the most alarming part. I'd certainly _assume_ there'd be a thorough vetting process.

<comment><USER9> Wow... That is definitely alarming and should be reported...

Edit:

I reported it on the same thread since it's still active.

Edit: Someone else reported it, it seems.

</comment></comment></comment></comment></comment></comment><comment><USER13> I think NoScript works best as an additional defence line and not as a primary protection mechanism. As such, I would of course still install all regular security updates. It does reduce my attack surface, though, even if it won't stand against dedicated attacks. At the moment it benefits from its rare use (compared to browser users in general) and if it became more widespread and targeted by mainstream attacks, I'm optimistic that the whitelist issue would sort itself out over time (by iteratively removing vulnerable or untrustworthy sites).

Btw., like a few others have noted for theirs, my whitelist does not contain those entries in question. It might be because my installation is relatively old and they weren't pushed retroactively.

<comment><USER9> Having installed it today I believe the whitelist only affects fresh installations.

</comment></comment><comment><USER14> I'm not sure I agree that trusting subdomains "greatly expands the default trust surface". That's part of the premise of the domain hierarchy: the owner of a domain owns all the subdomains. If you don't trust the policy by which they grant subdomain control to others, then you don't trust the domain. This is the same policy that all browsers use; it might be surprising to folks unfamiliar with URLs, but the article's tone suggests that it's crazy and weird, which definitely isn't the case.

</comment><comment><USER15> Wow, a domain for sale that's in the whitelist of an addon as popular as NoScript is pretty surprising to me. I immediately assumed it was a CDN by Zend, which seemed like a reasonably trustworthy domain.

</comment><comment><USER16> Strange considering the general opinion about whitelisting in the original forum thread.

>Giorgio doesn't generally add CDNs to the default whitelist. I'm not sure why he added googleapis.com, except that google.com is already on the default whitelist (so people can use GMail to get support), and googleapis.com is controlled by Google anyway.

My whitelist did not contain this domain, possibly because updates don't change the whitelist retroactively. Which is a good thing if it is part of a policy to never update a users whitelist without them knowing.

Until I see a real audit that looks at bypassing noscript code, I will continue using and promoting noscript as a great tool for safe browsing. No one can deny that a large majority of web exploits use javascript to launch, even when the exploit is in another media or protocol like MS Office or Adobe flash.

Noscript is powerful but it was also never aimed at the general public. In my opinion the general public can benefit from it but only as a shield against unwanted website loading from unknown domains. Because anyone who is not very experienced in the web and able to tie domains to website features will simply use the "allow this page temporarily" feature.

Which in my opinion is fine, it's better protection than not having noscript. But it's not the way noscript was designed to be used.

<comment><USER17> Could you please elaborate on what is the preferable alternative to temporarily allowing a page? You often do not know which one of the blocked scripts provides the functionality you are looking for. So you unblock them one by one, I guess? But then, when you unblock the offending script the damage is done.

<comment><USER18> Obviously, not the parent, but one doesn't need to enable things like newrelic, scorecardresearch, xignite, adroll, etc. in order for a website to function (if so, it's not worth it). I think the basic rule is not to allow any scripting from any domain that isn't directly related to the main domain one is on. Things like ytimg will have to be enabled in order to use youtube, for example, while googleadservices and googletagservices will not.

<comment><USER17> All right, yes, I do that. I thought the OP was alluding to something more sophisticated :)

</comment></comment></comment></comment><comment><USER19> Sounds like a legitimate concern but my install of NoScript on Firefox (Ubuntu) which hasn't been customized in any way, shows only a bunch of local ('about:') pages in the "Whitelist" section and nothing else:

[http://i.imgur.com/10bBvEq.png](http://i.imgur.com/10bBvEq.png)

</comment><comment><USER20> I'm surprised NoScript actually contains a whitelist, I didn't expect it to.

I personally switched to Policeman ([https://addons.mozilla.org/en- US/firefox/addon/policeman/](https://addons.mozilla.org/en- US/firefox/addon/policeman/)) a while ago, and there it's pretty clear that you can remove the built-in rule set.

I actually like it better than uMatrix: policeman shows you the full url of the blocked resource that you can inspect before allowing, and cross-domain request are very easy to follow.

The only thing I wished is per-domain control of most modern browser extensions, like, for example: disable CSS animations _everywhere_ except when I allow it to. Likewise for <audio>, <media>, GL, and whatever useless feature I don't need 99.99% of the time.

uMatrix has already per-domain boolean control of "agent spoofing" and related settings, it would be awesome if the above would be included there.

NoScript was a bit more forward thinking in that regard: you can disable media/GL globally except for whitelisted sites, but then again without cross- domain control you end-up whitelisting everything.

</comment><comment><USER9> To my understanding the white list had to be enabled though? I haven't used NoScript in ages but I thought that was what the white list was for?

As for the claim of any subdomain on any website it depends on your settings. Again I haven't used it in a while, but I do know that it was definitely highly configurable.

<comment><USER21> You're right, it's right under Settings -> General, the very first tab. If that's not obvious then I don't know what is; obviously a tool like NoScript has to be configured and this is the first place anyone would normally go after the FAQ.

<comment><USER9> Just for the sake of checking, I installed NoScript from their website (not from Mozilla Addons or whatever) and indeed there is a white list, sad it doesn't tell you this, I think the very least they could do is tell you the fact they've added a default whitelist set, and maybe a description explaining why each domain / subdomain has been added.

Edit:

Didn't finish my thought but: It's not too hard to remove links you don't trust from the list since it's not so big, I actually have to say I find the majority of URL's on the list to be quite helpful, especially when trying to figure out how to safelist hotmail with all the numerous domains they use.

</comment></comment></comment><comment><USER22> treating noscript (or adblock, or ublock) as security seems misguided. None of them are audited in any real way, or even designed to be security tools. They're nuisance blockers. If they make your web browsing experience slightly less annoying, they're doing their job. Expecting security from them is only going to lower your guard to actual potential threats.

</comment><comment><USER23> It seems that there should be some kind of automatic sanity check for whitelisted domains. That is, the domain should be registered and should resolve to something. It would also probably make sense to throw up a warning to the NoScript developers if the domain registration ever changes from what was previously approved.

<comment><USER24> It should probably only whitelist HTTPS as well.

</comment></comment><comment><USER25> Whats the point of NoScript if its not going to stop tracking from large corps like Google?

I thought that was the reason you installed NoScript?

<comment><USER26> This article was a little startle to me - I never really thought to use NoScript as a security measure for myself. I use it to make the web 'quieter': no more pop-ups, pop-acrosses, popovers, pop-from-wherevers, plus a few other obnoxious behaviours are beaten into submission as well.

Stopping javascript isn't going to stop tracking anyway - the big players still track who's loading their button images, for example.

<comment><USER27> I use Privacy Badger by EFF for blocking third-party cookies([https://www.eff.org/privacybadge](https://www.eff.org/privacybadge)). It works incredibly well but does have a whitelist which includes lot of CDNs ([https://github.com/EFForg/privacybadgerchrome/blob/master/do...](https://github.com/EFForg/privacybadgerchrome/blob/master/doc/sample_cookieblocklist.txt)) to prevent websites from breaking.

</comment></comment></comment><comment><USER28> I don't think NoScript should have any whitelist entries by default, since the whole idea behind it is to let the user determine what to allow.

Also, CDNs are quite problematic since they are often hosting many different scripts of which you only want to allow _some_. A finer-grained path/subdomain matching would be ideal here - you could allow * .example.com, example.com/*, or example.com/script.js.

<comment><USER29> It has to have a default whitelist to expand beyond the userbase of hardcore tech people, so that when Kim Komando endorses it, people don't find that their Facebook, Google, and Gmail are suddenly broken.

</comment></comment><comment><USER30> Yeah yeah, and not only that I allow scripts from various CDNs all the time. I call bullshit on anyone who claims they don't do the same. It's still worth running for no other reason than reducing the overall resources my browser uses and extending the time required between restarts.

</comment><comment><USER31> I think author using fake image

[http://who.is/whois/zendcdn.net](http://who.is/whois/zendcdn.net)

Domain had registered on June 12, 2015

</comment><comment><USER32> Isn't the simple solution to not use the whitelist?

<comment><USER33> Yes, but you would need to remember to empty the default whitelist before you start using the extension and start whitelisting the sites you trust.

<comment><USER32> That's not hard at all in NoScript. It might seem hard for non-technical users, but I doubt they could manage NoScript well anyway.

<comment><USER33> Yeah, it's a trivial operation, but if you forget and start populating the whitelist it quickly becomes hard to spot the entries that don't belong.

</comment></comment></comment></comment><comment><USER34> I'm using YesScript (and Greasemonkey) to 'fix bad-behaving' sites. NoScript is to intrusive imho.

</comment><comment><USER35> Is anyone else curious what he'd have found if he'd continued and actually done the planned testing.

</comment><comment><USER36> Where did you get that whitelist from? My allowed sites only list the dozen or so I have added.

</comment><comment><USER37> while noscript is awesome it doesnt mean you can turn your brain off while browsing:)

<comment><USER38> Having your 'brain turned on' while browsing wouldn't really change the efficacy of this exploit.

A site is on the default whitelist of the addon that can contain a malicious payload. Any site on the internet could therefor have a link to this payload. Granted, I'm not sure what sort of malicious JS payloads there are, other than crashing a browser, that doesn't involve some XSS.

<comment><USER33> If you browse with NoScript in default-deny mode, you're probably also the type to use RequestPolicy which would prevent irrelevant sites from running a script off vjs.zendcdn.net

NoScript isn't a comprehensive security/privacy suite. It's just a crucial component.

<comment><USER39> RequestPolicy won't save you if the link is to a subdomain of vjs.zendcdn.net which is whitelisted, but also the site you're visiting.

<comment><USER33> Right, if you get tricked into visiting the site then first-party scripts can run. But with XSS protection intact and RequestPolicy preventing any third- party access, the scope of possible attacks is pretty narrow.

</comment></comment></comment></comment></comment><comment><USER40> Y U no ship legible typography? This is awful. If I couldn't one-click reskin the CSS with Readability I would never read any articles on this site.

<comment><USER41> oddly enough, because i have noscipt installed, the site's typography looked fine to me.</comment></comment>


Hangouts, The Next Crowdsourcing Space for Startups - <AUTHOR> http://pricetaghq.com/blog/google-hangouts-next-crowdsourcing-space-startups

<comment><USER2> I dig your post, but honestly didn't really believe the message would sound as professional as you described... so I called the number on your site to listened to it, and whatdya know, it's pretty darn good! Nicely played Andres!

</comment><comment><USER3> Sounds awesome, I have used a similar kind of help from random online people but I hadn't thought of using Google Hangouts in this way :O.

Long live Google! :)

</comment><comment><USER4> This is where the world is leading now. Spaces are moving to the network and they are becoming virtual. Hangouts are one of the ways to do this. Great article.

</comment><comment><USER5> I wonder how often this kind of thing works like it did this time. Does anybody have a similar success (or horror) story involving crowdsourcing?

<comment><USER6> Facebook does <http://www.msnbc.msn.com/id/24205912>

</comment></comment><comment><USER6> You found a great solution.. I know what you mean, I also like simple outside- the-box solutions, and we have so many resources nowadays!

</comment><comment><USER7> Interesting, I am definitely going to look more into this google tool

</comment><comment><USER8> Not sure where did you post the message for help?

</comment><comment><USER9> Great blog post!

</comment><comment><USER10> Great idea!</comment>


Ubuntu 10.10 (Maverick Meerkat) Alpha 3 Released - <AUTHOR> http://www.ubuntu.com/testing/maverick/alpha3

<comment><USER2> I am a long time user of Xfce and I am glad that there are more and more "native" Xfce applications being built and included in Xubuntu. Definitely a nice alternative to the more bloated Gnome.

</comment><comment><USER3> Karmic was such a disaster, and Lucid has been so stable, I like the theme, and I've just gotten Lucid all my machines. I don't see anything here that makes me want to leave a LTS release any time soon.

</comment><comment><USER4> I hope they fix the problem with RecordMyDesktop (or its codecs) in this release. That bug has been quite irritating for people producing YouTube videos.

<comment> mkr-hn Has whatever this problem is been reported on Launchpad?</comment></comment>


Fiat launches in-car espresso maker  - <AUTHOR> http://news.blogs.cnn.com/2012/07/16/debate-brews-around-espresso-machines-in-new-fiat/?hpt=hp_t2

<comment><USER2> Cool. Despite what the naysayers may think, Fiat is taking a very 'smartphone' approach to the car. Instead of viewing a phone as just a phone, OEMs realize that with innovation, it can be a device that meets many common, everyday needs at once...camera, music player, etc.

One of the core rituals millions commuting in their cars perform every single day is the morning cup of coffee. It's literally _one of the things you just do in a car_.

This saves me time, and it meets a core need for behavior in a vehicle. It probably saves me money too if I am used to going to Starbucks or some other overpriced coffee shop.

Definitely cool imho.

<comment><AUTHOR> UI/UX is one of the most critical parts of customer engagement in a car, so it's a great analogy with the smartphone.

</comment></comment><comment><AUTHOR> Software has been innovating in cars since they started putting in chips and aftermarket stereos. Since every car has this now, or at least most drivers have smartphones, is the next wave of auto innovation going back to hardware like this?

I feel like such a sucker for wanting one. Good promotion.</comment>