Britain knows it's selling out its national security to Huawei - <AUTHOR> https://foreignpolicy.com/2020/01/31/boris-johnson-britain-knows-its-selling-out-its-national-security-to-huawei/ <comment><USER2> You can control the security risk without following US lead.

US and Five Eyes countries following US are banning Huawei for strategic reasons, not for technical reasons. Telecom infrastructure is strategic industry and US want's to prevent Chinese getting ahead. US can't compete directly because US is out from 4G/LTE/5G game and US based companies are only component providers (Qualcomm and others).

>but nevertheless permitted it to compete for up to 35 percent market share in the country's access network—that is, its antennae and similar equipment.

There is magical thinking involved if someone thinks that base stations alone completely break national security. Mobile networks involve huge number of components. The components and the software in the mobile core network and services pose more risk than base stations. Interfaces are standardized and you can buy different components from different vendors.

European network operators (especially if they have government contracts) have silently limited what they buy from Huawei. Base stations and most hardware is OK. Operating services, network control, visitor and location registers, mobile switching centers, network monitoring, and rest of the software that deals with the core network can be bought from others. Many EU countries just "happen" to have one or two carriers with strategically shielded core networks without formally banning Huawei.

<comment> kube-system > US and Five Eyes countries following US are banning Huawei for strategic > reasons, not for technical reasons. Telecom infrastructure is strategic > industry and US want's to prevent Chinese getting ahead.

Despite the current president's personal crusades, this is _not_ about US protectionism. Companies in the US wouldn't benefit from a ban on Huawei equipment anyway, it would be Finland and Sweden who do.

Supply chain trust has always been a primary concern of _any kind_ of critical resource/infrastructure defensive strategy. Every time a country relies on another for a critical ongoing need, it introduces an inherent power imbalance that the supplying country can use as a leverage. This kind of stuff is centuries-old geopolitical strategy, and it's still in the news every day when we're talking about energy, food, minerals, etc. (e.g. Russian pipelines) Why is communications infrastructure any different? It's not.

<comment><USER3> Do you mean NOKIA and Ericsson?

<comment><USER4> Yes, those are the only cellular infrastructure companies besides Huawei. There was Alcatel-Lucent, but Nokia bought them a while back.

<comment><USER5> There's an emerging trend of service providers trying to virtualize their core network. Rakuten in Japan is a leading example.

"They have assembled a small army of suppliers to build a virtualized network built on x86 hardware. ... Rakuten has no dedicated hardware except in its antennas, ensuring the upgrade to 5G will be straightforward. ... Chief Architecture Officer Tareq Amin said the network has "virtualized everything," including radio access, core, transport, IP, billing and operational support systems."

I'm not sure who this army of suppliers is though.

</comment></comment></comment></comment></comment><comment><USER6> Whatever provider of 5G hardware the UK picked - it was always going to be open to foreign power abuse.

What they have done is take all three offerings and limit what percentage of the market they can have - effectively having the country 5G networks provided by a three supplies all having an equal amount of kit in the field.

They are also taking the approach of presuming it is potential bad-actor and proactively planning around that.

So a bit like putting an IDS/Firewall in place before you realise you need one, you could say.

Is it ideal - nope, but the lack of local offering make that impossible anyhow. So plan for the worst and hope for the best, is not a bad plan of action in this instance.

<comment><USER7> > Whatever provider of 5G hardware the UK picked - it was always going to be > open to foreign power abuse.

Wait, you think the Swedish secret service is going to coerce Ericsson into installing backdoors that let them spy in the UK?

I mean, sure, possible, but a bit further fetched than China doing exactly that, no?

<comment><USER8> Maybe the Swedes backdoored the Beam VM and are laughing now. Since everybody in Telecom uses it.

<comment><USER9> For what it's worth, backdoors have been discovered in Ericsson switches, see [1], it's fascinating reading. It's unclear who put them there. Wikipedia [2] alleges that the US embassy in Athens was behind the telephone intercepts. Naturally, Wikipedia is _n o t_ a reliable source in such matters.

I used to work in telecoms myself about 20 years ago, and at least at the time, much of infrastructure was insanely insecure -- I could have backdoored much of the internet's backbone as a lone programmer had I wanted to: our software was used by most big telcos. Not once was our code audited (at least openly). I very much hope that security is taken more seriously now.

[1] V. Prevelakis, D. Spinellis, The Athens Affair. [https://web.archive.org/web/20070704193410/http://www.spectr...](https://web.archive.org/web/20070704193410/http://www.spectrum.ieee.org/jul07/5280) The pdf is also available through Spinellis' Google Scholar page.

[2] [https://en.wikipedia.org/wiki/Greek_wiretapping_case_2004%E2...](https://en.wikipedia.org/wiki/Greek_wiretapping_case_2004%E2%80%9305)

<comment><USER10> > _I very much hope that security is taken more seriously now._

I've got some bad news ...

</comment></comment></comment></comment></comment><comment><USER11> As someone who works in retail, a large number of the UK population support this decision, as they also buy Huawei phones. Huawei phones are incredibly popular and customers tell me they're very angry at the current anti- Huawei/China feeling at the moment. For those who don't have a lot of money, they really appreciate that Huawei makes phones for all kinds of incomes, not just £40,000+ a year. A lot of them (rightly imho) perceive the US action against Huawei to be out of fear that the US may not be topdog in an area of technology.

>If the British government was truly concerned about market failures, it would not reward Huawei, which profits from unfair support by Chinese state capitalism, giving it advantages over its competitors from market economies.

Is this not outrageous? That we're so intolerant of other kinds of economies that we must try and band and block so that people don't realise the disadvantages of our own system? If your system is so superior, let it compete on its own merits.

<comment><USER12> > Is this not outrageous? That we're so intolerant of other kinds of economies > that we must try and band and block so that people don't realise the > disadvantages of our own system? If your system is so superior, let it > compete on its own merits.

Is this a criticism of the West or China? Because China does this currently with _multiple_ Western companies.

</comment></comment><comment><USER13> If the UK is limiting a vendor because it believes it to be malign, or more likely to be malign, or more susceptible to being turned malign by its Government, then limiting it to 30% or 3% isn't going to help much. One fox in the henhouse is enough.

As for being able to mitigate a "man in the vendor", whether the "man" is acting according to the vendor or whether the vendor themselves have been coercively controlled or infiltrated matters very little. Mobile operators generally don't even run their own networks today, they outsource the management of the critical platforms to the vendors themselves who often finance the deal too.

UK dropped the ball on this, but it dropped it 10-20 years ago, and now this kind of problem is going to keep coming up again and again.

Some of you might enjoy this examination I made of the topic and the context for all this. [https://blog.eutopian.io/huawei-5g/](https://blog.eutopian.io/huawei-5g/)

<comment><USER14> From the NCSC themselves:

 _The cap at 35% ensures the UK will not become nationally dependent on a high risk vendor while retaining competition in the market and allowing operators to continue to use two Radio Access Network (RAN) vendors._

In other words, the limit isn't there to mitigate the risk of Huawei being malign (there are other mitigations in place for that risk, such as keeping them away from sensitive network functions). The limit is there to prevent the operator from becoming entirely beholden to Huawei.

<comment><USER15> In general no single supplier should provide more than 35% of any source. Anyone beholden to a single supplier is opening themselves up to be ripped off at best.

Problems of course come when suppliers merge. I have contracts with 8 different supplier for my business, one goes bust, or jacks up prices, and I simply increase supplies of the other 7.

Then those 8 companies start merging, and before long you're left with a single supplier, or at best a cartel.

</comment></comment></comment><comment><USER16> Can't we just buy Chinese stuff... and copy it?

I'm only half joking. History teaches us that any technological shortfall can be remedied fairly quickly if you have a clear priority and the audacity to steal.

5G doesn't require imploding plutonium.

<comment><USER17> > 5G doesn't require imploding plutonium.

Reading HN, I was under the impression that we didn't need 5G anyway (except for people streaming videos in stadium, which I haven't really understood why yet).

<comment><USER8> I can stream Netflix on my 25mbit/s. For personal use I absolutely don't care about 5G. For professional use it might give me better picture quality when I remote into work, but I think my work's VPN server is more of a bottleneck currently.

<comment><USER18> > _"I can stream Netflix on my 25mbit /s. For personal use I absolutely don't > care about 5G."_

I can stream at 25 Mbps just fine on 4G+/LTE too. At off-peak times. I've even seen it hit 70, 80, 90 Mbps occasionally.

The problem happens at _peak_ times, usually starting around 6pm, when the network slows to a crawl and I can't stream things reliably despite having 5/5 signal strength, because my carrier (Three UK) has sold too many cheap unlimited data plans and their 4G network is highly congested.

5G is needed because it greatly improves the data carrying capacity of given blocks of spectrum, meaning more users and higher speeds in areas that currently suffer capacity constraints.

And honestly, 5G's 200 Mbit+ speeds would just be nice to have to speed up things like downloading multi-GB OS updates and the like.

<comment><USER19> That might be less to do with your carrier's cellular edge capacity (are you in a densely populated area with lots of people on the same cell station as you?) and more to do with your carrier's intenet edge capacity (3 has lots of customers using a lot of internet)

If it's the former, 5G helps you. If it's the latter, 5G makes zero difference to you.

<comment><USER18> Yes, I can't say for sure but I assume it's the former. It's certainly a dense area (Central London) and there are certainly many people around here with 3 unlimited data plans.

If I monitor my router's status page I can see it start to bounce between several different Cell IDs when the congestion hits, and the SINR drops to low single digits (from 16-20dB when it's fastest).

In any case, as I understand it, backhaul upgrades will be a part of 3's 5G rollout anyway.

</comment></comment></comment></comment></comment></comment><comment><USER20> This is a really good article, worth reading all the way through. For me, this was the line that sums it up:

> After Brexit, London sees itself as dependent on Beijing's goodwill.

<comment><USER21> Having more freedom to adjust regulations and needing new business/investments while still being part of Europe post-Brexit Britain can possibly find its future as the Chinese base and tunnel into Europe .

</comment></comment><comment><USER14> There's a lot of speculation in the comments here around exactly what the UK is or isn't doing, and why. The NCSC's Technical Director has laid it out in detail: [https://www.ncsc.gov.uk/blog-post/the-future-of-telecoms- in-...](https://www.ncsc.gov.uk/blog-post/the-future-of-telecoms-in-the-uk). The linked article points to the blog post, but then largely ignores the points it makes.

</comment><comment><USER22> Telecom equipment should be free as in freedom if we're going to give it exclusive use of portions of the spectrum. Proprietary wireless equipment is harmful surf-like enslavement of the people.

<comment><USER23> > _telecom equipment should be free as in freedom_

The author agrees with you:

"The U.K., for example, could force providers to work with open coding standards ("OpenRAN") that would ensure interoperability between providers, thus lowering market entry barriers to future market entrants and disadvantaging Huawei, which has heavily bet on closed proprietary solutions."

</comment></comment><comment><USER24> Where is the part that explains why using Huawei equipment sells out national security? I have heard zero satisfying arguments. What is the proposed attack? How does it not apply to the penetration of Chinese made chips everywhere. Why should we trust US made chips and their companies' obligations to US national security apparatus any more? Or other countries? If strong trust in certain hardware is the requirement for some level of trust in the network then I think we are already lost.

</comment><comment><USER25> The truth is that if China wants to hack the UK, it will. It might possibly be easier when 5G is built on Huawei equipment, however, other suppliers will inadvertentlg introduce security weaknesses which can be exploited by China as well.

</comment><comment><USER26> From what I understand, using Ericcson(european) instead would delay it by around a year and £4B.

It is guaranteed the CCP will wage information warfare against the UK in the future. If there's a global war, China is the most powerful country based on current politics that will be the UK's adversary. Ability to limit or interfere with public communicarion infrasructure is an invaluable war-time advantage.

For those that say this is just edge gear, I say that makes it even worse. Redundancy and access control is easier at the core than at the edge which lives in the field and direcrly interfaces with possibly hostile end devices. Even just a dumb antenna can be built in a way that makes it easier tl cripple or help with jamming/DOS.

<comment><USER27> Thanks, you triggered an interesting thought: is the U.K. really likely to be an adversary of China? Based on reading James Rickard's Aftermath and also Gaft Luft's and Anne Klein's De-Dollarization, I can list out how different the UK's and the USA's situations are re: China:

China and Russia (with many smaller countries who are growing more resentful of the advantage we get having the dollar as the world reserve currency) are actively trying to undermine the dollar (let's hope they fail, or that it takes a long time!) but they probably view the U.K. as a trading partner and as much as possible be cordial with.

England is done with being the world mono polar superpower so they don't show up strategically as a real adversary.

For financial and ego reasons, the USA is trying to hold on to its status (although by over using tariffs and sanctions, we are being incredibly clumsy - we need to get our act together!)

<comment><USER26> UK is the US's closest ally,it will likely be something about taiwan,HK or elswhere outside mainland. And it will probably slowly escalate if I had to guess to where in one shape or form China attacks SK ,US military bases,hawaii or western US as a retaliation ,after which the UK will be presurred to join ,except the public would be divided and that's when comms will have issues: is it US or China hacking brits?

China does not care for the west as a trading partner much more than as a stepping stone to reach elsewhere. The west uses economic advantages to arm twist domestic Chinese policy. If they have their grip on Africa, Asia and S. America who cares about the fading west?

And the USA right now is vital for continued world peace and stability as a superpower. There many many nations that owe their geopolitical stability right now to the US being the sole super power.

China has sheer volume but being maybe a third at most their population size the US dominates many things still. Technologically they're still behind in military appllications. The US woud squash China in a heartbeat in both conventional and Nuke warfare. And you have to undetstand how much SK and Japan (both important UK allies btw) are important to the US. Their loss too China will happen only after losing WW3. These are one ot many reasons why both China and Russia are working hard to dismantle the US and UK from the inside out as well as sow discord between them. UK fought with US in both Iraq and Afghanistan!!! Many brits died in America's wars already.

</comment></comment></comment><comment><USER28> Dumb question: why is Huawei the only available provider of 5G technology? Are all other companies too far away?

<comment><USER29> They are not. From the article:

 _> Yet Europe is home to two of the world's leading vendors, Ericsson and Nokia; Samsung offers yet another alternative from a trustworthy democracy._

<comment><USER30> Why are there no US vendors?

It is rare to see a cutting-edge sector without the US.

<comment><USER31> Cisco and Motorola are not interested in this market, and Lucent is no longer American. To answer your question: maximizing shareholder value is why there are no US vendors (that in turn, might be because of lack of competition behavior between Verizon and AT&T leading to lowered investment in infrastructure)

</comment></comment></comment></comment><comment><USER32> Serious question, as an European why would I trust say Cisco more than Huawei?

<comment><USER33> Surrounding culture the company is embedded in. As an European I'd always favor an US company over a Chinese one that's linked to a dictatorship.

<comment><USER32> I just saw this story regarding Afghanistan:

[https://www.commondreams.org/news/2020/01/28/admission- colos...](https://www.commondreams.org/news/2020/01/28/admission-colossal- failure-us-dropped-record-number-bombs-afghanistan-2019)

Were any of the war criminals that lied us into Iraq prosecuted? Nope. Did the NSA modify Cisco routers and tap the phones of its EU allies? Yes.

Is Guantanamo Bay still open? Did the U.S. just commit an international crime by assassinating a top Iranian diplomat?

Am asking all these questions, because while the U.S. is still better domestically, (be it with huge cracks, even on that front), I'd say that internationally it isn't as clear cut as I'd once have agreed with you it is.

<comment><USER33> But it wont get any better if people keep supporting dictatorships. Dictatorships are like cheatcodes for economic growth, countries like China can move much faster because of that, and put pressure on other countries that aren't dictatorships to become more dictatorship like to be able to keep up. You make things worse in your own country by supporting them and giving them even more power.

<comment><USER32> You know there's a 3rd option right?

I do not support China, but neither do I 'support' the U.S. That's a false choice.

I have a bit more nuanced view of things. For example I do not support the government of Iran, but I also think the U.S. does not have any right to vilify it 24/7 like it does, as long as they're so closely buddy, buddy with Saudi Arabia, since Iran is, for all its faults, more democratic than KSA is.

So if anything, I'd support the EU becoming more independent of U.S. influence and providing a proper counter-balance on the international stage to both the U.S. and China.

</comment></comment></comment></comment></comment><comment><USER34> I imagine the UK weighs Huawei equipment with potential Chinese introduced backdoors vs Cisco equipment with potential US introduced backdoors. Probably cases exist where Huawei is the safer choice. [https://arstechnica.com/tech- policy/2014/05/photos-of-an-nsa...](https://arstechnica.com/tech- policy/2014/05/photos-of-an-nsa-upgrade-factory-show-cisco-router-getting- implant/)

Feels like there's a niche market for a UK, French, German, Australian, etc, line of equipment.

<comment><USER35> This is only true if you naively believe that being compromised by the US carries even remotely similar risk to being compromised by the CCP.

One key difference: China is an adversary to the US and UK. The US is not an adversary to the UK. This strategic relativism is tired and indefensible in any version of reality.

<comment><USER34> _" The US is not an adversary to the ...UK."_

Not generally, but there are cases where they are. Ask Assange, for example. Surely the UK has information they would rather not share with the US in some cases.

<comment><USER35> Not tactically aligned 100% of the time != an adversary.

To act otherwise - or to act like China ought to enjoy a similar relationship - is downright dangerous in the face of escalating geopolitical tensions.

<comment><USER34> That just sounds very black and white to me. Why would the UK blindly follow the US in all cases? Surely there's room for their own interests.

<comment><USER35> I don't believe I proposed that the UK "blindly follow" the US, nor did I even say it's a-okay that the US might engage in espionage against allies. I said that the US-UK relationship is absolutely nothing like the UK-CCP relationship, and therefore US efforts to project power are in no way comparable to Chinese efforts (as far as the UK is concerned).

However, if you really want an answer, there are two reasons that the UK ought to align itself with the US (and vice versa). Those two reasons are Russia and China. We are fortunate to be living in an era of widespread peace, but that is not guaranteed indefinitely. Should, god forbid, widespread warfare break out once again (as it has since tribal days up until the last 80 years or so), any westerner with a modicum of understanding of Putin's or Xi's ideal world ought to be on the side of the US/UK.

<comment><USER36> > US efforts to project power are in no way comparable to Chinese efforts (as > far as the UK is concerned).

The UK conducts extensive trade with both the US and China, so the potential for trade disputes with either country is there. At the moment, I think it's fair to say that a major trade dispute with the US is more likely than a trade dispute with China.

> Should, god forbid, widespread warfare break out once again (as it has since > tribal days up until the last 80 years or so), any westerner with a modicum > of understanding of Putin's or Xi's ideal world ought to be on the side of > the US/UK.

Whatever you think of China, you can't claim that it's been more belligerent than the US in the past several decades. Blindly backing the US and giving in to its demands (backed by sanctions against its own allies, as in the case of Germany) to cut off ties with China and Russia might not be the best way to promote global peace.

<comment><USER35> It seems like you're missing my point. A trade dispute with China (or the US) is not the primary risk we should have in mind when thinking about this.

Becoming technologically dependent upon China puts the western world at strategic risk, which we have every reason to believe China will eventually cash in on when the time is right. When they cash in on it, it will _not_ be for the advancement of liberal democracy or basic human dignity. As reckless and shameful as American policy has been of late, it continues to be the most powerful benefactor of liberal democracy the world over. I do not believe that China is belligerent. I _know_ that it is ideologically opposed to liberal democracy. It's apparently hard for many westerners to believe that there are those who truly do not believe in democratic ideals, but there are and they are growing in power and ambition.

It is naive to believe that our current state of affairs is guaranteed and one need only worry about maximizing the economic prosperity of a society that they see as guaranteed to be democratic. Do you think that millions of people died in WW2 in the name of trade regimes? Or was there a more substantial threat that was being addressed? Is that threat wholly eradicated, and will it always be so?

<comment><USER36> > When they cash in on it, it will not be for the advancement of liberal > democracy or basic human dignity. As reckless and shameful as American > policy has been of late, it continues to be the most powerful benefactor of > liberal democracy the world over.

I don't see any evidence of that.

> I _know_ that it is ideologically opposed to liberal democracy.

The Chinese government doesn't care about the existence or nonexistence of liberal democracy in the UK, US, or really anywhere other than in China itself. They're not out to destroy democracy in the UK. They care about their interests, which in regards to the UK are mostly economic.

> Do you think that millions of people died in WW2 in the name of trade > regimes?

The CCP fought on the same side as the US and UK in WWII.

> Is that threat wholly eradicated, and will it always be so?

It was largely eradicated for a long time, though the far right is making a comeback in many countries. The major threat I see now, however, is the increasing conflict between the US and China, and the extreme recklessness of American foreign policy.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER37> isn't huawei already powering every country's 4g/lte offering?

<comment><USER38> Yes and it's not that 5G is completely different from 4G anyway. Very much hyped up.

<comment><USER39> >> _Yes and it 's not that 5G is completely different from 4G anyway. Very much hyped up._

5G RAN (access) is very different.

I'd agree that 5G Core not be that different at the most abstract levels compared to 4G LTE packet core, but the reality on the ground is that they are still sufficiently different enough that network operators are using 5G as a strong reason to re-evaluate suppliers and put major network components up for tender.

</comment></comment></comment><comment><USER40> Britain is sending a signal to the US that is time to negotiate trade.

<comment><USER41> I don't thank anyone anywhere disagrees that now is the time for UK and US to work on trade. You could be the most strict "remainer" there is and have to accept this - regardless of 5G.

</comment></comment><comment><USER42> > London sees itself as dependent on Beijing's goodwill.

If only Britan could join together with others perhaps in a supra-national group of nations so that collectively they'd have more strength to resist large economies like China's.

</comment><comment><USER43> I would have thought for any communications that you are worried about the security off you'd encrypt them with https or similar. I've never really given thought as to whether there is a chinese bit of equipment in the chain of not when I do a bank transfer or such like and along those lines, as a brit I'm not that worried that some bit of the network may have a back door from Huawei or whoever. Is this really a problem?

</comment><comment><USER44> It all really comes down to being the cheapest option. Huawei has no monopoly on 5G technology. It just has the means (and government support) to make big R&D investments.

This Twitter thread discussed that point of a view a few days ago:[https://twitter.com/mikebutcher/status/1221842546881679360?s...](https://twitter.com/mikebutcher/status/1221842546881679360?s=19)

</comment><comment><USER45> I'm wondering if this is a negotiation tactic post Brexit as they're about to enter trade negotiations with the US. Just a bluff bargaining chip to concede.

<comment><USER46> I think it's not a neogiting tactic but an indicator that post-Brexit the UK will permanently seek to increase open trade with all parties. I also think in a zero trust environment one has to assume everything is compromised and deal accordingly. Finally I think UK has stronger ties than its peers due to its history in Hong Kong and it will seek to leverage that as the belt and road initiative develops to ensure it is not left out by a revengeful EU.

<comment><USER45> I would imagine the UK would like to have its cake and eat it too, but the US will make them choose.

</comment></comment></comment><comment><USER47> I don't know whether this is technologically sound but a few things to bear in mind:

* Before they took this decision, the govt consulted with the UK's Cyber Security Centre (these guys are not meek civil servants...GCHQ end up owning every Home Secretary, they are powerful).

* The distinction they made was between allowing Huawei into the "core" part of the UK's networks.

* Because Huawei won't provide "core" infrastructure, there is no risk.

Tbh, I am not an expert but this sounded very wrong to me. 5G is going to require building out a dense blanket of receivers...if you let them do this, then they are in...it doesn't matter.

The suggestion was that sensitive data is only carried through certain infrastructure...I don't really buy this because it doesn't really protect 5G which is obviously a component of the network anyway, and I don't really believe that there is some kind of parallel internet out there for GCHQ only...but I don't know.

To me, this sounded a lot like cheapness. The issue with lack of competition was brought up in the Parliamentary debate...that is a problem that exists but the way to solve that is not to buy equipment from unsafe providers (the Foreign Secretary seemed to accept btw, that Huawei was controlled by the Chinese govt).

</comment><comment><USER48> Here's my biggest question of the whole thing:

      * Can governments not inspect the hardware themselves to see if there are physical backdoors?

      * Could they not, as a precondition for any provider, demand to see the source code of the radios?

      * If the ISPs tunnel the backbone traffic combined with more/most Internet traffic being secured anyway,
     wouldn't that minimize data leaks?

      * If you admit that the previous point isn't valid because of metadata concerns, doesn't that invalidate the US
     national security establishment's position on metadata towards the public?
     They have previously scoffed at such concerns ("It's only a phone number") but now it matters.

      * Wouldn't rogue equipment exfiltrating data be rather obvious?

<comment><USER49> For points 1 and 2 at least, the UK has the Huawei Cyber Security Evaluation Centre where GCHQ can inspect all Huawei hardware as well as the source code, although it is run by former Huawei employees (overseen by GCHQ) so its independence is questionable.

<comment><USER50> I believe the centre cannot satisfy itself that the code they inspect is the code that is built into the hardware.

<comment><USER14> Yes.

 _...it is not possible to be confident that the source code examined by HCSEC is precisely that used to build the binaries running in the UK networks._

\-- [https://assets.publishing.service.gov.uk/government/uploads/...](https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/790270/HCSEC_OversightBoardReport-2019.pdf)

</comment></comment></comment></comment><comment><USER51> Good for Britain for standing on its own and not letting itself being used as another puppet in the economic war between U.S. and China.

<comment><USER52> Something tells me you don't do business is China. There is no material difference between Huawei and the Chinese Government.

<comment><USER37> > There is no material difference between Huawei and the Chinese Government.

this is false.

<comment><USER53> > There is no material difference between Cisco and the United States > government.

Agree?

Edit: This isn't intended as a rude or rhetorical question. I'm really interested in your answer.

</comment></comment></comment></comment><comment><USER54> Chinese government criticized UK's recent decision.

\- hard cap on the market share (35%)

\- no Huawei parts in core part of network

\- no Huawei in sensitive locations (military, energy)

\- Huawei declared as the only provider that poses national security to the UK

It's not a complete ban but it sure is a blow to Huawei who has been expanding globally unopposed in the past decade.

</comment><comment><USER55> Yup, and as a Canadian the worst part about this is it gives the government here an easy out to sell out our own national security, because we're just followng Britain's lead after all. They already broke up the Five Eyes.

<comment><USER56> In my experience, our Canadian government sells us out to China even more readily than the UK government has; but at least we're not Australia, which is (no joke) basically on the edge of becoming a dependent territory of the PRC. To me, as a dual citizen, it is mystifying that the U.S. is allowing this to happen; if the PRC compromises half of the commonwealth, that seems like a serious threat to the United States, and to human rights as a concept and reality.

<comment><USER55> I agree, but I had hope the Liberals would be under such intense pressure to ban Huawei that they'd be forced to, politically.

Eg With the liberals being just a minority, the majority of the Canadian parliament got together and recently passed legislation for and subsequently set up a committee to review Canada-China relations, on the backdrop of China holding our citizens hostage and extraordinary Chinese intervention into Canadian governments (federal, provincial and municipal).

But realistically I know better than to bet against a Trudeau selling out Canada.</comment></comment></comment>


Intel's 14nm Technology in Detail - <AUTHOR> http://anandtech.com/show/8367/intels-14nm-technology-in-detail <comment><USER2> > Intel for their part is nothing short of extremely proud over what > advancements they have made over the last several years to make their 14nm > process a reality

And so they should be. From the outside looking it, this slow creep of progress might seem inevitable, but it's anything but. Every new process node they hit is a huge achievement, and I greatly admire Intel not just for managing it, but doing it on a timetable planned years in advance too. The fact they're only missing their goals by a few months here and there is nothing short of incredible (in my personal opinion).

To put it another way, some things you can put a price tag on, but fundamental research isn't usually one of them. Pouring billions in and getting steady results out is something that sounds easy, but really isn't, from what I've seen of it.

<comment><USER3> Completely agreed, and it's hitting a dangerous point where not enough companies are putting in the necessary investment. I studied quite a bit of both VLSI/chip design and economics in college, but I never fully understood what was behind Moore's Law until I read this quora comment: [http://www.quora.com/Moores-Law/For-how-long-will-Moores- Law...](http://www.quora.com/Moores-Law/For-how-long-will-Moores-Law-continue- to-hold/answer/David-Crawley-1)

Here's a snippet:

>The limits of Moore's Law is not driven by current technology, after all if we knew how to go smaller we probably would have done it. The limits of Moore's Law are really a matter of cost. Each new node shrink increases the technology development cost in a fairly predictable way by about 40%. The result is that Moore's Law is limited by economics.

> ...

> When [Intel] figures out that they don't have invest so heavily to stay > ahead then Moore's Law will slow

Moore's Law doesn't exist in a vacuum - the cost to keep Moore's Law going has been increasing exponentially, and fewer and fewer companies have been able to keep up.

<comment><USER4> The semiconductor industry is that - an industry with numerous companies providing the materials, equipment, operations etc needed for Intel, TSMC, Samsung to build and run their fabs.

In order for this to work, there is a need for coordination. The manufacturers of steppers for example must be able to deliver a stepper that can draw features with the needed resolution at a given time. Since the development takes time, they and everybody else needs to communicate and decide how fast Moores law progress.

Moores law thus represents what all parties agree to are what can be achieved and can meet the end user requirements over time. The industry organisation responsible for this is ITRS - The International Technology Roadmap for Semiconductors:

[http://www.itrs.net/](http://www.itrs.net/)

If one wants to see the predictions for Moores law, ITRS have documents available that are well worth studying. When I worked on ASIC design for mobile handsets we looked at these documents for product roadmaps since we could predict the power consumption, gate density etc for future process nodes.

Intel can to a higher degree than many others move forward at their on pacing. But they don't make their own fab from scratch nor produce their materials all by themselves. This means that even if Intel is able to develop a process in the lab that provides smaller feature size, efficiency and whatnot than what is agreed upon. But they can't move that much faster than the rest of the industry if they want to manufacture chips in commercial quantities.

<comment><USER5> > But they can't move that much faster than the rest of the industry if they > want to manufacture chips in commercial quantities.

Maybe not, but on the other hand Intel began mass-producing 22nm CPUs in 2011, while TSMC has began volume production on their 20nm process this year.

</comment></comment></comment></comment><comment><USER6> Oh hey, that's my job.

I work in the Failure Analysis division; my job is to take an electron microscope and look for defects in wafers that come out of the fab. Our results get sent to the engineers, who make the changes in the fab and make more wafers for us to tear apart. I don't think I'm allowed to say much about it, but it's a pretty cool process, and I'm happy that I decided to move up to Hillsboro to work for them.

<comment><USER7> I worked on Broadwell and other 14nm projects and would be interested in chatting with you. My IDSID is dwilli2, please drop me a note.

</comment></comment><comment><USER8> Webcast( recorded ):

[http://intelstudios.edgesuite.net/140811_intel/event.html](http://intelstudios.edgesuite.net/140811_intel/event.html)

[http://www.intc.com/eventdetail.cfm?eventid=149021](http://www.intc.com/eventdetail.cfm?eventid=149021)

</comment><comment><USER9> "The end result is that while Intel's cost per transistor is not decreasing as quickly as the area per transistor, the cost is still decreasing and significantly so."

Maybe... The problem is, is Intel saying this as (honest) engineers or as (somewhat less honest) business people? Every IP business has enormous flexibility in how it defines costs and where it places them. nV's complaint reflects the cost it pays, which ultimately reflects some sort of aggregated cost for TSMC over not just per-wafer manufacturing costs, but the costs of R&D, of equipment, of financing, of various salaries, etc etc. Intel, in a graph like this, has the flexibility to define basically whatever it likes as "$/transistor". On the one hand, it could be an honest reckoning (basically the TSMC price), but on the other, it could be a bare "cost of materials and processing", omitting everything from capital expenditures to prior R&D.

</comment><comment><USER10> Hopefully Intel 14nm SoCs will be competitive in handsets at last. And open GPU drivers will enable native Linux + Wayland on them.

<comment><USER11> _open GPU drivers will enable native Linux + Wayland on them._

I too would like a personal handheld unicorn, but I don't think it's likely to happen.

<comment><USER10> libhybris + Wayland have already happened (in Jolla handset). So having Linux + Wayland on native drivers would be even better.

</comment></comment></comment><comment><USER12> Anyone got a reference for the number of atoms in the pitch of 14nm transistors? I recall it was pretty low for 22nm and it's surprisingly hard to find this information.

<comment><USER5> Wikipedia says the following:

> Silicon, like carbon and germanium, crystallizes in a diamond cubic crystal > structure, with a lattice spacing of 0.5430710 nm

So I suppose that means 14nm feature would be 26 atoms?

<comment><USER13> The order of magnitude is correct. The interconnect pitch being 52 nm means that the width of a wire plus the isolation to the neighboring wire is just under 100 atoms.

</comment></comment></comment><comment><USER14> Very low on details...but I guess that is to be expected.</comment>


Modeling Agents with Probabilistic Programs - <AUTHOR> http://agentmodels.org/ <comment><USER2> A great source, but was creating a subset of Javascript really necessary?

<comment><USER3> WebPPL was not created specifically for this book. For example, this other one also uses it: Probabilistic Models of Cognition ([https://probmods.org/](https://probmods.org/))</comment></comment>


Algorithms Course Materials - <AUTHOR> http://compgeom.cs.uiuc.edu/~jeffe/teaching/algorithms/

<comment><USER2> This is Jeff Erickson's free textbook (really a set of detailed lecture notes) on Algorithms, a course that Jeff teaches at UIUC and routinely wins teaching awards for. Definitely worth your time. Jeff is working on a similar set of notes for Computational Topology: [http://www.cs.uiuc.edu/~jeffe/teaching/comptop/schedule.html](http://www.cs.uiuc.edu/~jeffe/teaching/comptop/schedule.html). These are not as developed yet. He's also written an interesting piece about getting into a graduate school with low grades: [http://3dpancakes.typepad.com/ernie/2005/03/re_phd_with_low....](http://3dpancakes.typepad.com/ernie/2005/03/re_phd_with_low.html).

</comment><comment><USER3> Concise, elegantly simple, and precisely measured for student consumption over one semester (16-17 weeks).

Masterfully hidden from view are the edits, re-edits, discussions, Tex/Latex tutorials, file conversions, hand-written notes, lecture preps, student questions and a hundred other details that end in an 814 page treatise for humans to enjoy via that "other thing" they did at UIUC.

Well done Jeff Erickson, et.al.

</comment><comment><USER4> For computer science course notes available on the Internet, these seem to be relatively well written. It looks like there needs to be a lot of thanks to at least D. Knuth's TeX and some graphics packages and maybe also LaTeX.

Cute: By the time computing got powerful enough so that everyone could have TeX, LaTeX, and something to write the output to PDF to create Knuth's "beautiful books", computing also enabled the Internet and wide use of PDF so that the days of tree killer "books" are nearly over!

Reading through the book quickly and mostly just looking at the topics, he has a lot there. E.g., he includes some on the fast Fourier transform (FFT).

So, there is a question about selection of content: Of course the FFT is a darned cute, powerful, and valuable _algorithm_ (actually, it is awash in closely related but still significantly different versions -- can find more than one whole book describing a collection of just some of the more popular versions). And to some extent can look at that algorithm as a source of how to do an algorithm and also as an application of some somewhat more general techniques in algorithms. But treating the FFT as mostly just an _algorithm_ is a bit of a strain: Why? Because as soon as the original Cooley-Tukey paper came out in the 1960s (yes, with some ideas that to one extent or another had been published before going back decades or so), there was a big splash in military sonar, radar, and more. We're talking a _huge_ splash. It bought me a nice high end Camaro!. I used to drive home going south on Route 29 just south of the JHU/APL in Howard County, Maryland and going up one particular hill try to get to 100 MPH in second gear in the Turbo 400 automatic transmission! Nice car!

So, with the FFT could do a wide range of digital filtering. It also got used in X-ray crystalography. At least for a while, Texas Instruments was going to make a 'radio' receiver that would have no local oscillator circuit and, instead, would feed the antenna signal directly to a very sensitive, very fast, high resolution analog-digital converter and then run that digital output through the FFT as the means of 'tuning' to particular frequencies. Then, of course, could 'listen' to several different frequencies at once, do _spread spectrum_ tricks, etc. Big splash.

But what's in the OP on the FFT is essentially just the _algorithm_. That's a little like making cake batter but leaving out the cake, icing, soaking with syrup with _Kirschwasser_ , whipped cream, coffee, etc.! Really, the FFT mostly belongs in an electronic engineering course in signal processing.

Then the book does quite a lot with some discrete optimization. There is a whole stream of such work going back to Ford and Fulkerson, the _Hungarian_ method, algorithms of Dijkstra and Bellman, applications of the network simplex algorithm, etc. So, there is maximum matching, minimum spanning tree, shortest paths, maximum network flows, least cost network flows, etc.

There is some question about teaching this material, especially as _computer science_ : Really, originally the material was mostly optimization in operations research. I know, operations research is nearly a dead field, and optimization is not far behind. So, just why should computer science raise these topics from the dead?

One old reason for studying these topics was, at first glance, some of those problems look like would need an exponential algorithm that enumerated all combinations to get an optimal solution yet there are algorithms that are worst case polynomial or average case polynomial. So, these problems and the associated algorithms are a stake in the ground of combinatorial optimization problems that do have polynomial solutions. So, maybe from this stake in the ground, we can get some guidance in our search to resolve P versus NP. Maybe. And, yes, there are some selected applications, maybe to IP routing! Still, dragging all UI CS students through this material seems a bit questionable.

Then the book also does the simplex algorithm of linear programming. Okay, it's an _algorithm_ , but really it's the core technique in _optimization_ in operations research and is not really discrete. His treatment looks good for being so short, but, again, there is some question about calling simplex part of computer science and dragging all UI CS undergraduates through it. Besides, the UI operations research, applied math, or math departments could charge the UI CS department with academic theft! So, next, UI CS will be teaching calculus? Linear algebra? Art history?

Yes, in each case, the course is teaching an _algorithm_ , but not all of the ones it is teaching are really of the same _kind_ as quicksort, heap sort, merge sort, AVL trees, red-black trees, extendible hashing, perfect hashing, etc. The difference in "kind"? When you've studied, learned, programmed, timed, and used quicksort and thought about how it does well with virtual memory locality of reference, divide and conquer, recursion, and an opportunity to exploit multi-core processors, then you are done with it. But for the FFT, simplex, matroids (which it also touches on), are just getting a peak into what in each case is often a whole book or a whole shelf of books and significant part of a whole field, e.g., electronic engineering, operations research, combinatorial optimization research, etc. Sounds like a way to keep some UI CS undergraduates really busy and sober and doing homework seven nights a week!

<comment><USER5> You just got me REALLY interested in the Fast Fourier Transform.

<comment><USER4> Have fun:

E.g., there is

Enders A. Robinson, 'Multichannel Time Series Analysis with Digital Computer Programs', Holden-Day, San Francisco.

So, the main application here is finding oil! So, go "boom" and send a sound wave into the earth. At each different layer, get back a reflection of part of the energy. So, to get back just the layers, just use the FFT.

Also have fun with X-ray diffraction, holography, etc.

For signal processing, the core foundational point is that a 'time-invariant linear system' can be fully described by Fourier theory. Basically the output is a convolution of the input, and the fast way to do a convolution is with the FFT.

The impact of the FFT on signal processing was enormous.

Have fun!

</comment></comment></comment><comment><USER6> "Describe and analyze an algorithm that determines, given a legal arrangement of standard pieces on a standard chess board, which player will win at chess from the given starting position if both players play perfectly"

Ok, but _[Hint: There is a one-line solution!]_

Am I missing something obvious like "it's always a draw"?

<comment><USER7> You're missing that there is no need for the algorithm to be anywhere close to efficient. Just searching the whole game tree recursively will do it. Remember the draw rules in chess: if no one eats a figure for 50 turns or so, the game ends. Therefore, the game tree is actually of finite height, and the naive algorithm will eventually terminate.

</comment></comment><comment><USER8> I am so excited to take this class. JeffE, from all accounts, is an amazing professor.

<comment><USER9> Took this with Erickson back in Fall 2002 - go to all the lectures, they're worth it! And find a good study group, some of these homeworks are hard when learning them for the first time.

have fun!

</comment></comment><comment><USER10> Coursera is starting an Algorithm course July 1st if anyone wants to join: [https://www.coursera.org/course/algo](https://www.coursera.org/course/algo)

</comment><comment><USER11> This is fantastic, thanks for this link!

</comment><comment><USER12> Nice materials! I just need this.</comment>


Is Apple Using Swift? - <AUTHOR> https://medium.com/@ryanolsonk/is-apple-using-swift-4a6c80f74599 <comment><USER2> A little backstory - I was working at Apple on the team that helped bring Swift to life.

The big roadblock (especially for things like frameworks) is 32-bit support. There's no 32-bit runtime for Swift. When that requirement is lifted I'm certain we'll see a flood of Apple apps built with Swift. There was (and still is) a huge amount of enthusiasm for the language internally. Many teams were working with it and plenty of internal tools where built with it. So yes, Apple is absolutely using Swift.

<comment><USER3> So how do Swift apps work on 32-bit hardware like iPhone 5/4s if there is no 32-bit runtime?

<comment><USER4> What makes you think they do?

<comment><USER3> The fact that I'm writing Swift apps, releasing them to App Store and testing those apps on iPhone 5/4s and having zero problems with that?

<comment><USER5> The "32 bit Runtime" is a misnomer. Its a difference between the modern and legacy runtime. iOS (and iPhoneOS) never supported the legacy runtime.

The name comes from it being the only runtime for 32 bit OSX apps.

[https://developer.apple.com/library/mac/documentation/Cocoa/...](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtVersionsPlatforms.html)

<comment><USER6> the legacy runtime before the `non-fragile` one?

</comment></comment></comment></comment></comment></comment><comment><USER7> Craig Federighi (Apple's SVP of software) discussed this topic on this episode of the talk show ([https://daringfireball.net/thetalkshow/2015/12/14/ep-139](https://daringfireball.net/thetalkshow/2015/12/14/ep-139)) a few weeks ago.

IIRC many teams within apple are using swift as much as they can, either for app/framework code, or test code. one example he gave was that the dock in El Capitan had been rewritten in swift. He also mentioned that the lack of 32 bit support for swift was a major pain point blocking more widespread adoption internally due to many frameworks still needing to support 32 bit macs.

Reading between the lines, it wouldn't surprise me if 32 bit support is dropped with the next version of OSX to allow more teams with Apple to start using no swift.

<comment><USER8> Mac OS X has been 64-but only for some time now. The last 32-bit Mac shipped almost a decade ago.

<comment><USER9> The 32 bit runtime (commonly used but misleading name, it should be called legacy) is still supported, but it's not compatible with Swift. iOS had the modern runtime from the start, way before 64 bit.

[https://developer.apple.com/library/mac/documentation/Cocoa/...](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtVersionsPlatforms.html)

</comment></comment></comment><comment><USER10> It might be useful to look at Microsoft and their history with C#. C# was announced in 2000, the first really useful version C# 2.0 came out in 2005 and even today Microsoft apps written in pure C# are few and far in between (just UIs for visual studio, sql server etc.). So, I wouldn't be surprised if the Apple to transition to Swift doesn't happen for five years or more. There is absolutely no point for Microsoft or Apple to use C# or Swift when 95% of their legacy code is another language like C/C++/Objective-C. These guys have so much money they can pay people to hyper specialize in old technologies, I'm sure MS has some guys who work exclusively in COM/C++ or Apple with some guys who work exclusively in C89/BSD.

Having said that, pretty much everyone developing for the Microsoft ecosystem (native) uses C#. That has been true for almost a decade now. I suspect the same will happen with Swift and Apple and rather rapidly because the Apple ecosystem doesn't have enterprise customers holding it back. Most of people commenting here seem to already know Objective-C. However, consider someone new to the platform. Would you spend 1 year learning iOS programming using Obj-C or learn it via Swift? Apart from Swift being a nicer language to learn, the reality is almost all tutorials/books etc have shifted to Swift. Good luck to the poor sap learning iOS programming via iOS 6 tutorials and Obj-C and migrating to iOS 9.

I think the Swift 1.0 to 2.0 journey was quite painful, pretty surprised that Apple made so many breaking changes with poor tools support, but I feel 2.0 is where it feels just about solid to build all new apps. Sure there will be changes, I mean Obj-C had ARC and blocks twenty years later! but that's the nature of software nowadays.

<comment><USER11> I think the difference here is that C# (and the .NET platform) was never meant to completely replace C/C++ Win32 development; it was a higher-level solution for a certain class of Windows applications.

I might be wrong, but I thought Swift was designed as an eventual replacement for Objective-C (with its seamless interoperability, and the fact that it uses the same runtime as Objective-C, it doesn't seem that far-fetched). If it _is_ meant to be Objective-C's successor, then Apple should really be preaching by example at this point.

<comment><USER12> > I think the difference here is that C# (and the .NET platform) was never > meant to completely replace C/C++ Win32 development

Oh no, it _was_ meant to replace them. Win32 was going to be deprecated, all new stuff would be on native .NET APIs, there'd be a Windows Presentation Foundation and a Windows Filesystem and it'd all be great.

The thing is that Longhorn fell apart, and with it the dream of replacing Win32 died forever.

Now we have WinRT, but unlike the plans for Longhorn, WinRT actually sits on top of Win32.

<comment><USER11> Right! Longhorn; totally forgot about that and WinFS. Talk about a failed endeavour...

WinRT however is definitely not a replacement for Win32. It's way too sandboxy (last time I checked, you couldn't even pull up a list of fonts installed on the host system using the WinRT APIs only).

</comment></comment></comment></comment><comment><USER13> It's pretty naive to think that Apple would somehow direct all their work towards re-writing existing code into Swift. There is literally no use case to do that wholesale.

Firstly, there is no question that it would generate bugs. Appkit and even iOS is old enough that you couldn't replace it completely without the behaviour changing. Even if it's fixing a weird behaviour, that would be a problem for many existing apps build on that framework.

Second of all, it would mean they wouldn't be moving forward with new features, which, basically nobody (customers even) wants.

I'm sure more and more new code will be Swift, and possibly non-framework apps can be re-written. But they won't start announcing a swap out in the next WWDC.

<comment><USER14> There's one massive use case: to demonstrate to developers that it's advantageous and ready for prime-time.

<comment><USER15> That statement demonstrates a rather naiive understanding of the software development life cycle. As well as how successful businesses in general behave.

<comment><USER14> Wrong on both counts.

<comment><USER16> ...how exactly? Companies shouldn't and don't waste time rewriting things for no reason, just to use a new language.

Swift is already production ready and Apple has plenty of examples, beyond that there's nothing to "prove".

</comment></comment></comment></comment></comment><comment><USER17> It is hard and costly to rewrite an app, even for Apple. In this case it means learning new skills (or hiring new devs). This is huge and will probably take years to be adopted. They could also force it at some point by releasing new APIs with only Swift support.

It's worrying for Swift. If it really adds value compared to Objective-c then why is Apple so slow on jumping on the bandwagon? They need to show the way. Other companies usually talk with their fans through dev blog posts but Apple secrecy tradition and very tightly controlled communication does not help.

<comment><USER18> [https://developer.apple.com/swift/blog/](https://developer.apple.com/swift/blog/), or any Swift developer twitter account, really...

Everything surrounding Swift has been the most open Apple has been in a very long time

Edit: [https://swift.org/blog](https://swift.org/blog) (the current blog)

<comment><USER17> Yes thanks. This looks more like a documentation than a blog. I meant there is nothing more personal like here is how we migrated our app x to Swift (real world examples) with:

\- What was challenging ?

\- Lessons learned

\- Performance measured before/after

\- In general what was the gain ? Why should I bother except for the hype ?

<comment><USER19> I think the gain is mostly that Swift allows you write code which more resistant to bugs than its ObjC counterpart would be.

In Yaron Minsky's "Effective ML" talk, he mentions the idea of "Make illegal states unrepresentable": [https://vimeo.com/14313378](https://vimeo.com/14313378)

The combination of enums and non-optional variables allows you to get much closer to this ideal than you could with ObjC.

A great place to start would be the Functional Swift talks from 2014 and 2015: [http://2014.funswiftconf.com/](http://2014.funswiftconf.com/) [http://2015.funswiftconf.com/](http://2015.funswiftconf.com/)

If you want to challenge yourself, try reading through the RxSwift codebase: [https://github.com/ReactiveX/RxSwift](https://github.com/ReactiveX/RxSwift)

</comment></comment></comment></comment><comment><USER20> When I interviewed at Apple I talked about Objective-C vs Swift with multiple developers. Most seemed to indicate that due to the millions of lines of code already written in Objective-C that they, at least personally, were highly unlikely to rewrite them in Swift because it currently works and it's not worth the change over from a product standpoint. In fact a couple of time seemed hesitant that Swift was the future when I talked to them about it.

I understand not wanting to rewrite millions of lines of code but I feel like they should at least want to make a slow transition of at least many of their apps to Swift (since it can bind with Objective-C it's not like it has to be done all at once; it could be something where they spend a small percentage of time doing off and on). After my interview though I got the impression, at least from the developers I talked to, that they will probably never use Swift unless they have to.

Edit: I would like to point out, in case it's not obvious, that my case is purely anecdotal. Reading responses here and searching around Google is seems many inside Apple are excited about it which could very well be more than the people not excited about it. Still, I'd like to see some more platform support as it appears small at least to me looking from the outside.

<comment><USER21> I don't like Swift and I like Objective C much more. I learned Swift, so I can read it, but I'll use Objective C whenever I can. May be there are more people out there with similar point of view.

<comment><USER22> Yeah as nice as Swift is, Cocoa was designed for Objective-C.

e.g. -[NSBezierPath setLineDash:count:phase:] takes a C array in Objective-C, but an UnsafePointer<CGFloat> in Swift.

Apple needs new API interfaces for their new language, and that will take time.

<comment><USER23> If you use this API very often from Swift you can introduce nice wrapper around it. It would be better to see these issues by Apple but I think they are minor and Swift overweights with its benefits.

</comment></comment></comment></comment><comment><USER24> We tried using Swift for a new app but the language isn't ready for prime time. It's an impressive language by itself, but the support for it just isn't there yet. Since it's still in infancy things change too much and documentation/stackoverflow is pretty weak. Our app was simple but we spent more time trying to make it work than actually programming and ended up doing an obj-c rewrite in less time. I'm sure this scenario won't be the case for long, but it's the case for now.

<comment><USER25> I wrote an iOS app around the iOS9 release and did it purely in Swift. It's a great language and easy to grasp. I liked the if let pattern for example.

The hard part is using the frameworks and not getting annoyed of XCode slow downs, the language itself is very friendly.

Documentation is good too. Worked through the Stanford course which gives you a great introduction and a book about iOS design with Swift implementation.

</comment></comment><comment><USER26> For reference, it would be prudent to review the swift-evolution Github repo:

* Swift 3.0 goals[1] -- 3.0 is scheduled for late 2016 and it will bring a wealth of ABI and language stability improvements, and significant documentation improvements

* Commonly rejected changes[2] -- significant whitespace, "and" keyword vs && (et al), closure literals, and semicolon removal are not on the table and that doesn't seem to be changing anytime soon

Swift is great and all but it will probably _not_ reach critical mass until 2018.

[1] [https://github.com/apple/swift-evolution#development- major-v...](https://github.com/apple/swift-evolution#development-major-version --swift-30)

[2] [https://github.com/apple/swift- evolution/blob/master/commonl...](https://github.com/apple/swift- evolution/blob/master/commonly_proposed.md)

</comment><comment><USER27> I think this somewhat addresses the issue, at least from Federighi's perspective:

[https://medium.com/@Klehmann79/see-https-daringfireball- net-...](https://medium.com/@Klehmann79/see-https-daringfireball-net- thetalkshow-139-federighi-gruber-transcript-ed1e36761b1#.ilkx675vl)

<comment><USER28> Agreed. Federighi and his team are seasoned vets in building and delivering software to millions.

They aren't naive and know they need to balance end-user benefit with engineering's wishes for maintainability etc. Is the user going to see a vast difference in experience if they re-wrote the Settings.app? Swift is a language, not framework, so it doesn't offer the end-user anything worth caring about.

Swift will probably cost them more than it gains them in the immediate term, but the long-term is what Apple is all about, so I don't think they are concerned about this.

</comment></comment><comment><USER29> "Swift has quickly gained popularity among many third party developers"

Where Swift has really gained traction is with bloggers and book authors. I past 3000 urls in my Swift Resources database over the weekend. I wrote this blog last night:

[https://h4labs.wordpress.com/2016/01/18/3000-swift- urls/](https://h4labs.wordpress.com/2016/01/18/3000-swift-urls/)

Here's a direct link to the resources: [http://www.h4labs.com/dev/ios/swift.html](http://www.h4labs.com/dev/ios/swift.html)

</comment><comment><USER30> Slightly related : like many Android engineers, I fell in love with Kotlin. It is a very pragmatic language which solves many big issues with java 6.5 we use on mobile.

However, getting it adopted in a big project with a dozen of engineers of various levels and a massive 300k LOC repo is a daunting task.

Even though it is a undoubtedly a better language, making such a switch is too frightening for the lead dev. Of course, Kotlin has the additional disadvantage of not being officially sponsored by Google on Android.

<comment><USER31> If you want to retain compatibility with legacy code, use Xtend ([http://xtend-lang.org](http://xtend-lang.org)), which compiles down to Java 5.

<comment><USER30> Kotlin is already entirely interop with java : it compiles to bytecode compatible with jvm 6.

The problem is an unwillingness to switch to a new language ("we do just fine with java") coupled with the fact that ideally everyone in the team should get familiar with it.

<comment><USER32> > "we do just fine with java"

Yeah, except they write 2-5 times more code in Java, than they would in Kotlin. I think it's unprofessional to reject a new language, that will make code smaller and easier to understand, just because somebody is afraid to step out of his comfort zone for a moment, and not because of some potential real problems.

I think you can justify anything with that stupid line of thinking: "I don't use for-loops, because a while-loop can do the same, and it's too hard for me to learn it." Sounds the same to me. Learning Kotlin is a must for any Android developer, unless he really likes to give handjobs to the Java compiler: "Oh, let my type the name of the type twice, even if it's quite long for clarity and you know it already from the right hand of the assignment. You want me to write 23 lines of boilerplate in a separate file for a POJO with 2 fields? Oh, you dirty boy!"

<comment><USER30> >I don't use for-loops, because a while-loop can do the same, and it's too hard for me to learn.

Pretty much. Older engineer. He remembers the transition from blackberry to Android and is not ready for another one. He almost advocates for the use of Vectors ...

Unfortunately he is also Lead Engineer, which makes matters complicated. Kotlin is far from the only subject where we butt heads. I also had to put his nose on all the leaks created by his atrocious 'architecture' in order to start working on a fix.

I don't think there is a good solution for that kind of problems other than throwing the towel and move to another company. I plan to emigrate anyway, so there is that.

There are true reasons to avoid Kotlin at the moment though :

-slower compilation (we have a huge codebase and dexing is already an issue).

-the whole team needs to move to it and since we are more than a dozen, it is a significant task.

-Kotlin does not support Android Lint, so common issues like using an API 21 method with minApiLvl = 17 can occur unnoticed.

</comment></comment></comment></comment></comment><comment><USER33> I'm curious how exactly the OP can tell whether an app uses Swift, e.g., what command-line program is able to give that info.

<comment><USER34> Heres a list of the top 100 apps and what language they use. [https://medium.com/@ryanolsonk/are-the-top-apps-using- swift-...](https://medium.com/@ryanolsonk/are-the-top-apps-using- swift-42e880e7727f#.vtjwnstaa)

Generally you can tell from the downloaded ipa files. Apple is also allowing devs to delete default apps on iOS now - meaning they can also be sourced from the app store and you can check their ipa.

<comment> k-mcgrady >> "Apple is also allowing devs to delete default apps on iOS now"

I hadn't heard about this. Do you mean I can delete things like the Stocks app? If so, how?

<comment><USER34> I heard in the news this morning: [http://www.independent.ie/business/technology/you-can- finall...](http://www.independent.ie/business/technology/you-can-finally- disable-the-iphones-default-apps-34373045.html)

<comment> k-mcgrady Interesting. Bit hacky but hopefully this leads to them actually introducing the option as a simple on/off switch setting.

</comment></comment></comment></comment></comment><comment><USER35> I would not be surprised if the percentage of Apple's code that is in Swift is more or less the same percentage of Google's code using Golang (with Golang having a slight advantage maturity wise). I'm sure Dart is even less. Of course this is just anecdotal from talking with a few people from Google so I'm probably off. That being said C++ has a huge advantage in that it keeps improving where as Objective C from my ignorant understanding has little plans of being improved (google has a large C++ codebase).

<comment><USER36> _I would not be surprised if the percentage of Apple 's code that is in Swift is more or less the same percentage of Google's code using Golang (with Golang having a slight advantage maturity wise)._

That could be true, but what it's being used for is perhaps more important than the percentage. Not to underestimate the importance of a calculator, but it is known that Google uses Go in:

\- dl.google.com

\- Kubernetes

\- Youtube's MySQL scaling infrastructure (Vitess)

\- Google's mobile data compression proxy (Flywheel)

Of course, Go's first stable release was in 2012, so Swift still has some time to catch up ;).

<comment><USER37> Google uses Kubernetes? I thought it was _just_ inspired by Borg and a 20% project.

<comment><USER26> I was under the impression that they intend on moving everything over to Kubernetes, in massive multi-thousand-host clusters.

Granted, the last I heard they had trouble scaling it up to hundreds of hosts, but there it is.

</comment></comment></comment></comment><comment><USER38> Im not sure why Apple would just arbitrarily re-write proven code because there is a new language. This makes no sense. Should a technical/business case arise to rewrite something, then sure do it in Swift. Is there some subtext here that he is trying to prove that apple doesnt believe in their own language?

</comment><comment><USER39> Why rewrite code if it isn't broken?

<comment><USER40> Shows dedication to the platform.

Currently, Swift is being hurt by incompatible changes between 1.x and 2.x. There are expected more incompatible changes between 2.x and 3.x.

If Apple had significant investment in Swift apps, they would not be making breaking changes so lightly. Because they don't, breaking changes are expected and why should be you the one, who is constantly rewriting the app you have?

TL;DR: it hurts the adoption of the language.

<comment><USER41> Is it really mature enough that they shouldn't be making breaking changes?

<comment><USER42> If it isn't, they shouldn't be advising people to build on it.

<comment><USER43> I'm not sure what exactly you mean. These breaking changes have not been surprises. They've clearly state their intention to evolve the language in public since it was first shown.

</comment></comment></comment></comment></comment><comment> k-mcgrady I'd say this is more that they don't have time to rewrite current apps and they don't want to mix Swift and Objective-c code so new features in those apps are still written in Objective-c. Maybe they also decided to wait for it to stabilise with Swift 2.0. Updating Swift code when the language is updated is a big time suck.

<comment><USER34> I think it's more to do with company/dev size. The bigger companies take longer to migrate than smaller startups and lone devs. I'm in a small startup and it was trivial for me to change over to Swift as I'm the only iOS dev. Facebooks SDK is still being written in Objective-C so I guess it's simply harder for them to jump over because it's a much bigger project.

<comment><USER44> Facebook shouldn't be the reference to point when it comes to their SDK.

</comment></comment></comment><comment><USER15> > The choice to use Swift comes with some tradeoffs, and it appears that Apple > has decided it's generally not worth it for their apps or frameworks yet.

Really, that's your take-away?

> However, there could be a very different story building for iOS 10. Since > most of iOS is only dropped once per year, we'll just have to wait and see > in June.

AHHH! You almost get it.

Apple needs time to make the change (and they'll most likely never completely change over to all Swift) for most of the apps they decide to change. They want a nice fluid experience for their customers. Product cycles aren't short, iOS/OS X are at once per year, but that doesn't mean that some changes to them aren't planned out for much longer than a year.

</comment><comment><USER45> One thing that will not be rewritten in Swift any time soon. [https://twitter.com/clattner_llvm/status/613906970890801152](https://twitter.com/clattner_llvm/status/613906970890801152)

</comment><comment><USER46> LinkedIn built its new iOS app completely in Swift. Only with Swift 2/Xcode 7 it seemed to be feasible, and then still required Mac Pros to compile everything

[http://www.slideshare.net/KyleSherman/swift-at- linkedin](http://www.slideshare.net/KyleSherman/swift-at-linkedin)

</comment><comment><USER47> I'm porting my app to swift. I started to feel the pain. admittedly I haven't studied the language systematically.

the biggest pain I think is the error messages. some doesn't make sense. I also don't appreciate the ! and ?.

In my opinion, checking whether a variable is null or not is easier than using ? and ! everywhere.

<comment><USER48> > In my opinion, checking whether a variable is null or not is easier than > using ? and ! everywhere.

Which is why you can do exactly that.

        if let checked = blah { /* checked does not need ! or ? */ }

<comment><USER47> I'm curious, if my variable "a" is indeed null, and when I say a!, what will happen?

will it be a runtime error? like a memory access violation in c++?

what's the benefit of adding !? if it generates the same access violation runtime error?

<comment><USER49> yes, it is a runtime error. given the code

let foo = bar!

If bar is nil, you'll get a runtime error "unexpectedly found nil when unwrapping bar"

in my opinion, the benefit of optionals in general is that it allows you to guarantee at compile time that certain variables (non optionals) will _never_ be nil, which enables all kinds of compiler optimizations.

</comment></comment></comment></comment><comment><USER50> Interesting look. Although I will point out that not all classes are equal. Lines of code would be a little more meaningful to me, but kudos to the author for researching what was available.

</comment><comment><USER51> I would say that new apps are being written in Swift, while the old ones will stay with Obj-C. It's too complex to mix Obj-c and Swift, so why go through the trouble?

<comment><USER29> It's trivial to add Swift to an Objective C project. Create a bridging file then either create a new Swift class or extend an existing Objective C class.

extension MyViewController {

      func myFirstSwiftFunc() -> Bool {
         return true
      }
    }

<comment><USER52> Mixing both adds complexity to the codebase, though. Might as well stick to Objective-C for legacy projects and Swift for new projects.

<comment><USER29> I think you're overstating the complexity. The real problem is once you see how visually noisy Objective C is compared to Swift, you'll get the urge to translate your ObjC code.

        NSString *s = @"Swift is the future";
        UIViewController *vc = [[UIViewController alloc] init];
        NSArray *names =  @[@"John", @"Paul", @"George", @"Ringo"];

vs

        let s = "Swift is the future"
        let vc = UIViewController()
        let names = ["John", "Paul", "George", "Ringo"]

<comment><USER53> But the "noise" also reduces ambiguity. For example, you can search the code and see s is a NSString in Objective C. You can't do this in Swift.

<comment><USER29> Can't say that I see the value in that but you do have the option of adding types the old fashion way.

        let s = "Swift is the future"
        let s:String = "Swift is the future"

It's just a matter of making a coding convention.

</comment></comment></comment></comment></comment></comment><comment><USER54> I think majority of these articles are being written by developers who always assumed that Apple would never move away from Objective C. By introducing Swift Apple has now directly threatened their unique skill set. In my opinion Apple recognized the threat from React Native / Cordova / RoboVM and had long term vision to introduce a new programming language that would allow Python/C++/Java developers to easily develop for iOS.

If you are interested in getting into Swift programming, don't let these article fool you into getting discouraged. This article is simply spreading Fear, Uncertainty and Doubt.

</comment><comment><USER55> I don't think Apple ever intended to phase out Objective-C in favor of Swift. Swift is just another option for developers, in the same way that C# is an easier option for Windows developers. Objective-C, just like its predecessor C, can be used in a huge array of environments, ranging from servers to clients and everything in between. It would be impractical and close to impossible to support Swift in all these environments. As a result, Apple is much better served by code written in Objective-C, especially in areas such as the operating system and closely related system code.

<comment><USER4> Totally false: dynamic dispatch in performance critical code like the OS ?

<comment><USER55> The operating system is not just the kernel. Even since the time of NexT, Objective-C was used to implemente some of the foundational libraries provided by the operating system, in the areas of graphics, window management, and file access, for example.

</comment></comment></comment><comment><USER12> The title is one of those Betteridge's Law ones ("Any headline that ends in a question mark can be answered by the word _no_."), where a story that doesn't give the answer the author wants or is inconclusive has a title framed as a question. But in this case, it's one where the answer is "Yes", not "No", because usually a Betteridge's Law title asks if an unlikely proposition is true, rather than if a likely proposition is false.

Of course Apple are using Swift, but they're not going to rewrite everything in it overnight. Heck, they probably aren't ever going to rewrite. Swift will only be used for new stuff.

</comment><comment><USER14> "Apple has decided it's generally not worth it for their apps or frameworks yet"..

...to RE-WRITE them in Swift.

</comment><comment><USER56> The OS and built-in apps have tighter performance requirements than third party apps. I'm guessing Swift needs to catch up to Objective-C in heap and CPU usage before it's considered.

<comment><USER44> Who module optimisation for generic code. Getting rid of dynamic dispatch when setting classes as final can do a amazing things when it comes to performance. Obj-C would have to dispatch out to C/Obj-c++ for that, now you can use Swift.

Although Objective-C got nullable arguments, it still isn't as safe as Swift. You're always a null pointer away from a crash... or unexpected behaviour as calling shit on nil doesn't matter

</comment></comment><comment><USER57> May be or not?</comment>


Show HN: Finally shipped it - iOS App for finding daily deal offers - <AUTHOR> http://www.pennypincherapp.com/

<comment><AUTHOR> I finally shipped it! PennyPincher2 is a complete rewrite of an app I've had sitting on the app store for a while. A blog post is forthcoming, but the idea is the same, but I have completely changed the interface from a tab-based design (old and moldy) to a new design centered around an almost full-screen map.</comment>


What is the most confusing thing to you in Python? - <AUTHOR> https://dev.to/r0f1/what-is-the-most-confusing-thing-to-you-in-python <comment><USER2> () is an empty tuple (1,) is a tuple with one element

Most small numbers are Singleton's, hardcoded or single character strings are Singletons as well.

</comment><comment><USER3> Why they aggressively don't support braces in favor of indenting.

</comment><comment><USER4> Why there are two versions.</comment>


Introduction to Avail: A Groundbreaking Articulate Programming Language - <AUTHOR> https://www.availlang.org/about-avail/introduction/index.html

<comment><USER2> [https://news.ycombinator.com/item?id=9043561](https://news.ycombinator.com/item?id=9043561)</comment>


Show HN: Moments.yt – Share and discover awesome YouTube clips - <AUTHOR> https://moments.yt/?hn <comment><AUTHOR> Hi HN. I made this and I think it's cool, and my friends say so. So here it is.

It's my first time sharing any of my projects with strangers. I'm using all my courage here. Plus, HN seems to be a good place to get constructive feedback.

Any kind of feedback would be awesome: design-wise, bugs, features missing, etc. But here is what you should know before : 1) You'll need a YouTube account to log in (if you want to). You don't need to be logged to post a clip, but your clip will not be shown in the homepage and will be deleted after 6 hours. (I figured that people might just want to use it to make private jokes with friends). 1.b) I plan on adding Twitter/Facebook logins, no worries

2) It's made with NodeJS, and I'm a beginner at NodeJS. So if something goes wrong, please let me know.

3) I made a premium plan for 0.99€/month for people that want to support me and the project. (And also want to make clips that last more than 15 secondes). What do you think?

4) But I'd like to monetize this with native ads for YouTube content creators or maybe premium plan for content creators. I think it's better to charge creators than users. I don't know. What's best?

5) It's like GIFs, but with sounds. What's not to like?</comment>