Total Nightmare: USB-C and Thunderbolt 3 - <AUTHOR> http://blog.fosketts.net/2016/10/29/total-nightmare-usb-c-thunderbolt-3/ <comment><USER3> We will survive this. We survived having RJ45 jacks (which I just learned are not really RJ45 jacks, but 8P8C connectors) in walls. Is it a phone, a token ring, or an Ethernet? Cat 3, Cat 5, Cat 6? Did the installer unwrap the pairs too far? Are there crossed pairs? Does it have two pair or four (in days of old it was common to make single Cat 5 wire serve two devices since they only used two pairs)? Does it have a DC voltage supplied between some of the pairs? What voltage, what current capacity, which polarity, which pairs? What speed is the ethernet switch port? Maybe it is a VGA extender or an HDMI extender. Maybe it is a serial console. I had an office where one RJ45 went to an FM antenna above the steel roof, you _really_ are not supposed to do that. (I have installed or used all of these conditions except for token ring.)

USB has already had this problem for 16 years. When they went from USB 1.0 at 11mbps to USB 2.0 at 480mpbs they had to change the shielding. The only visible change on the connectors was a tiny + sign in the three branched USB tree molded on the end of the cable, which was apparently so useless to users that no one bothered to put them on. At least, my quick rummage of cables didn't find any. There is alleged to be a color code. The plastic inside the connector is white for 1.x, black or white for 2.0, blue for 3.0, and yellow or red for sleep/charge. My quick rummage of cables suggests this is not necessarily known to cable manufacturers. I think the ports on devices are more rigorous about this, at least, I think all my USB 3 ports are blue.

<comment><USER4> we survived wired home networks because they are expensive, and a superior IO solution (wifi) caught up quickly.

Re usb-c: good luck not using the (only) io port on your device.

<comment><USER5> Superior if your a laptop user sitting on the back deck. I run backups/bluray movies/etc between my NAS and assorted devices. I will assure you that my desktop PC's, which are connected via 10GbaseT have ~30x faster access to said NAS than the small business class AC WIFI AP's I use. The latency, throughput and most importantly the reliability of a decent wired network is still far superior to wifi, and I have a far cleaner/stronger wifi system than the vast majority of wifi networks I've seen. Even so, I still run wires to my home theater devices because I don't have to worry about dropouts in the middle of streaming a bluray, or more importantly the random driver/etc bugs that seem far more frequent on wifi than boring old ethernet. Plus, with the advent of reasonable speed internet accesses (thanks google!) the WiFi is frequently the bottleneck. One room away and that AC 1200 router is only actually delivering 200Mbits, or for that matter the 20 closest neighbors APs/wireless phones/airport radar/etc are messing up the spectrum.

<comment><USER4> I think people are forgetting that most people (in the usa or globally) don't have the disposable income to (re)wire a house with ethernet. From a "humanity" perspective I stand by my point.

Now for the average HN reader, sure I'm wrong. Enjoy your first world problems :)

<comment><USER6> It cost me $250 ($100 of which was 300m of Cat6) and a very tedious, insulation filled, Sunday to wire my house up with 1Gbit ports in every room.

Comparing that to the price of the current batch of AC WiFi access points (that look like stealth bombers) I don't think it's too unreasonable.

<comment><USER7> You are not counting the cost of your expertise in networking and DIY. Most people don't get that for free.

</comment></comment></comment></comment></comment></comment><comment><USER8> The spec [1] is a long read, but interesting. Misc. stuff that's not well known:

\- The 24 pin connector does not have symmetrical connections. The interface IC senses which way it is plugged in.

\- It's still a master/slave system, but either side can be the USB master or the power master. Those need not be the same.

\- Who powers whom is an interesting issue. It's up to the OS to decide. There's special support for the dead-battery case - what happens when you plug something with a dead battery into something else? Can you charge your phone from your laptop? Laptop from phone? Tablet from laptop? Phone from phone? It's complicated.

\- There's something called the "billboard device", which is the interface IC's mechanism for sending error messages when both ends are not in agreement about modes. The devices at each end are supposed to display this information. Hopefully they do. At least the designers thought about this.

\- Hubs are more restrictive. They don't pass through much more than USB mode and power. They don't pass any of the more exotic modes, like HDMI, since those are not multipoint protocols. It is supposed to be possible to pass power upstream through a hub, though.

\- Anything with a female USB-C connector has to talk USB-C. It is prohibited to have cables with a female USB-C on one end and some other USB connector on the the other. Male USB-C to other USB is permitted, and will provide backwards compatibility.

\- There are extensions defined for "proprietary charging methods" to allow higher current levels. (I wonder who wanted that?)

\- There's a mode called "Debug Accessory Mode". This is totally different than normal operation and requires a special cable as a security measure. (In a regular cable, pins A5 and B5 are connected together and there's only one wire in the cable for them. Debug Test devices use a cable where pins A5 and B5 have their own wires and there's a voltage difference between them.) Debug Accessory Mode, once entered, is vendor-specific. It may include JTAG low- level hardware access. Look for exploits based on this. If you find an public charger with an attached USB-C cable, worry. Always use your own cable.

[1] [http://www.usb.org/developers/docs/](http://www.usb.org/developers/docs/)

<comment><USER9> \- Who powers whom is an interesting issue. <...> It's complicated.

Yeah... I have a battery bank from Anker with two plugs: USB-A and USB-C. If I connect my Nexus 6p with USB-C/USB-C cable, everything is good, phone gets power. But if the only cable I have at the moment is USB-A/USB-C, then phone starts to charge the battery bank.

<comment><USER10> That has to be a spec violation of at least one part of the system. How can a USB-A port possibly ever receive power? Does it actually charge the battery or does the phone just think it's delivering power - perhaps because of a non- compliant cable?

<comment><USER11> That's a problem I've seen with cheap Chinese powered USB hubs. You plug them into the wall and your Raspberry Pi and all of a sudden your Pi turns on (even though its power is unplugged) but doesn't boot.

<comment><USER8> That may be a Raspberry Pi problem. The Pi's non-power USB ports are "On the go" ports, and potentially bi-directional. But they don't have the proper power circuitry and protection on the power side. The Pi's power USB port doesn't do power negotiation, so if connected to a power source that demands negotiation, it may only get the default per-negotiation 100mA, which isn't enough.

(I've been designing a board that gets power from USB, and had to read up on all this. The USB power system is complex but well designed, and if all the devices comply with the standards, immune to user mis-plugging. The problem is that doing it right usually requires an extra IC at each USB port just to manage power.[1] A lot of low-end devices don't do all this right.)

[1] [http://www.linear.com/product/LTC4085](http://www.linear.com/product/LTC4085)

</comment></comment></comment></comment></comment><comment><USER12> Personally, I am rather sad to see the Magsafe connector go, and having to sacrifice IO for charging while mobile seems like quite the headscratcher.

It's somewhat funny that not only will you have to carry dongles for everything for a few years time, but also make sure you carry the right USB-C cables, as your friend's might not work. Yay we have superlight laptops, but need to carry a backpack full of spaghettied cables.

<comment><USER13> >having to sacrifice IO for charging while mobile

You're not sacrificing anything. The old MBP had two usb ports and the new one has 3 available while charging. The only thing that has changed is now you can use the charging port for IO when not charging. Framing this as a "sacrifice" doesn't make any sense.

>make sure you carry the right USB-C cables, as your friend's might not work

With the old Magsafe chargers, and for laptop chargers in general, it's the same deal. If you want to charge your laptop, you have to bring your charger. The fact that the charger is USB-C doesn't make the situation worse.

<comment><USER14> But the old MBP had two thunderbolts and an HDMI connector, on top of the two USB. You could plug in 3 displays, charge it and still have room for a mouse and a keyboard. Now it's always a trade-off, so on top of DVI/HDMI/DP dongles, you'll have to carry a USB hub.

<comment><USER15> Where could you possibly go where (a) there are three monitors, a mouse, and keyboard waiting for you, and (b) none of those devices have a built-in USB hub, and you did not think to keep a USB hub there?

Either you're mobile and need the USB ports, or stationary and there's a hub there. What use case am I missing?

<comment><USER16> > Where could you possibly go where (a) there are three monitors, a mouse, and > keyboard waiting for you, and (b) none of those devices have a built-in USB > hub

That describes my workplace. (But with two rather than three monitors.) Standard monitors that operate over HDMI/DVI/etc don't have USB hubs without a separate USB connection, most keyboards are the same way.

> Either you're mobile and need the USB ports, or stationary and there's a hub > there. What use case am I missing?

Sure, you can work around the lack of IO by buying a hub, but the point was that previously you would not have needed yet another dongle.

<comment><USER15> So buy the USB-C hub/dock/whatever and _leave it at work_. No need to carry it around with you. This isn't really any different than the case of a traditional laptop with a dock, except instead of some weird giant proprietary connector, you have a small standardized connector.

<comment><USER17> > USB-C hub/dock/whatever

There aren't that many good one's. What I would need would be one which handle's at least, 4-6 USB, two HDMI, Ethernet and charging would be a bonus.

<comment><USER18> Can I tempt you over to the Microsoft side? The Surface Dock has exactly those connections - I leave everything connected to the dock as my "workstation", and carry my Surface Book travelling when need be.

<comment><USER19> If you're being tempted over to the Microsoft side, you might as well just buy a Dell or HP or Thinkpad or whatever, and get Mac-level specs at half the price, and usually a good collection of today's standard ports.

<comment><USER18> It's hard to match the Surface Book on specs, at least if you care about the size and weight and resolution and touchscreen. I went shopping 6 months ago with requirements of: thin and light (13" or smaller), available in the UK, NVidia graphics, 12gb or more of RAM, reasonable processor, and touchscreen; I wasn't expecting to walk out with Microsoft hardware but the Surface Book was the only laptop I saw that (more-or-less - it's 13.5") matched up to that.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> I liked when we just had USB2 and all you had to do was try to plug it in once, flip it over, try to plug it in again, flip it over once more, now it plugs in, and now you're reasonably sure it'll work.

And now the near-future seems to be full of dongles, shame.

<comment><USER15> You forgot the step where you realize it's in an Ethernet jack.

<comment><USER21> At least if you tried to plug a USB cable into an ethernet jack it would be immediately obvious that it wouldn't work. In today's world the wrong cable will plug in to the wrong port just fine, and you can be scratching your head for a long time trying to figure out why it's not working. And, if you are particularly unlucky, while you are puzzling it out your device can fry.

[UPDATE] Well, I stand corrected. It is actually possible to stuff a USB A connector into an ethernet socket. (You learn something new every day.) But come on, folks, telling the difference between a USB socket and an ethernet socket is really not that hard. You don't even have to look, you can do it by feel. But all these different USB-C/Thunderbolt ports are physically identical. They are literally and by design impossible to distinguish.

<comment><USER22> > At least if you tried to plug a USB cable into an ethernet jack it would be > immediately obvious that it wouldn't work.

Not necessarily. Ethernet jacks are often wide enough that a USB-A plug can be partially inserted, and it's pretty common to stack the two types of ports. If one isn't looking directly at the connector (common when dealing with the back side of a tower or docking station), it's a surprisingly easy mistake to make.

<comment><USER23> That's a problem that can be solved instantly with a visual inspection. Not necessarily the same for a protocol mismatch.

</comment></comment></comment></comment></comment><comment><USER24> It is not easy to see, but we ARE on a converging path, instead of the other way around. Current high-speed off-board point-to-point data links (SATA, USB3, DisplayPort, PCIe, etc.) have converged onto some sort of 8b/10b differential signaling. We used to have totally separate OSI stacks, but now we are seeing potential to leverage the same physical layer (i.e. USB Type-C). Sure, we would have to carry different protocols, but I am optimistic --- eventually ASIC makers roll out adaptive chips (just like the cross-wire RJ45 @jws mentioned was solved by Auto MDI-X) that are smart enough to negotiate the correct protocol (MAC layer upwards) between the two sides.

<comment><USER25> I dunno... I've been meaning to write a post about multi-protocols on the same connector for a while.

Thunderbolt can run across DisplayPort and now both can run over USB-C. M.2 NGFF sockets can run mSATA, PCIe SSDs (either in AHCI or NVME), but not every M.2 or mini-PCIe Wi-Fi card will work in every laptop because of blacklisting (wtf?) even though they both attach to the exact same PCIe bus. Some M.2 sockets are only mSATA and can't take pcie/nvme drives. I'm pretty sure any M.2 drive can attach to the mSATA controller via an mPCIe adapter, but I'm willing to be there are some board that don't support that.

Why the hell are we doing multiple protocols on the same wire? It's beyond confusing. I thought with USB3.1, at least there'd be a universal cable, and I didn't realize until reading this article that the cables themselves are different per protocol!

I agree with what the writer is getting at. This is really confusing and it all feels like weird questionable design decisions.

<comment><USER24> > the cables themselves are different per protocol

I feel this is a transient rather than inherent problem of running different stacks over the same physical layer. If the physical layer can "miss pairs" then I agree we lose the whole point.

One way is to have some sort of official certificate system enforced by USB.org and adopted by major manufacturers. Basically "guaranteed to support a few pre-defined subsets of protocols".

<comment><USER26> > If the physical layer can "miss pairs" then I agree we lose the whole point.

It's not about missing pairs, Thunderbolt 3 cables are active in the sense that they contain electronics. That's why a Thunderbolt USB-C cable has much larger plugs than a regular USB-C cable.

<comment><USER24> Having never used Thunderbolt myself, I feel this "cable chip" is an intentionally retarded design that violates the end-to-end principle. Is there anything technical that prevents it from being absorbed into interface controller chips inside devices?

<comment><USER26> I'm not a Thunderbolt expert, but I think the reason is twofold.

Thunderbolt was originally designed as an optical link and optical connectors are highly problematic. Misalign the fiber just a tiny bit and you have considerable losses. So they went with a hybrid design where the converter is in the plugs and the connector is electrical. Later it was changed to all electrical but the design where the connection between the two plugs and the plugs and the devices are two separate things was retained.

The second reason is that this design still makes sense. With traditional designs the driver in the end device is always a compromise. For example the Ethernet driver has to be able to drive lines up to 100m long, but how many Ethernet lines are really that long? For Thunderbolt they dis-coupled the physical characteristics of the line driver from the driver in the end device. They basically move all the problems of the physical connection (line length, EMV and so on) form the end device to the cable.

</comment></comment></comment></comment></comment></comment><comment><USER27> And then there's this: [http://www.macrumors.com/2016/10/28/macbook-pro- tb3-reduced-...](http://www.macrumors.com/2016/10/28/macbook-pro-tb3-reduced- pci-express-bandwidth/)

"MacBook Pro (13-inch, Late 2016, Four Thunderbolt 3 Ports) The two right-hand ports deliver Thunderbolt 3 functionality, but have reduced PCI Express bandwidth."

<comment><USER28> Yes, because the PCIe root complex in the CPU can only connect one other device besides the southbridge, and that's used for the Thunderbolt controller on the left handside. The second Thunderbolt controller is connected to the southbridge (as are all the other PCIe peripherals), so it doesn't have the same number of PCIe lanes available as the one directly connected to the root complex.

Apple could have solved this by connecting a PCIe switch to the root complex and attaching both Thunderbolt controllers below it, but that would have consumed additional energy. Alternatively they could have used a beefier CPU with more PCIe root ports on the CPU, but I guess those available would have been too energy hungry. Which kind of means this is Intel's fault for not providing a low-energy chip with enough PCIe root ports on the CPU.

I'm wondering what the situation is like on the 15" version with discrete graphics. This would require 3 root ports directly on the CPU to drive both Thunderbolt controllers and the GPU with full speed, I assume that's indeed the case since it's not mentioned in the document.

Another thing not mentioned in the document is that energy consumption will be suboptimal if one device is attached on both sides of the machine because it prevents one of the Thunderbolt controllers from powering down. One should connect both devices on one side to improve battery life.

Edit: On Skylake the PCH is apparently optional, the functionality is mostly integrated into the CPU, so the limitation is really the number of lanes provided by the CPU, and this wasn't sufficient to connect both Thunderbolt controllers with 4x. The CPUs used in the 13" model all have 12 lanes, the ones in the 15" model have 16 lanes. So for the top-of-the-line model this could be 4x for each of the Thunderbolt controllers, 4x for the GPU, 2x for the SSD, 1x for Wifi, 1x for HD Audio?

<comment><USER29> Full Thunderbolt 3 for all four ports on the 15"?

I mean, I'm not sure how you can get 40 GBit/s with 4x PCIE 3.0 in the first place, every quote I find says 32 GBit/s. Maybe there is that much overhead in Thunderbolt.

But surely 4x40 Gbit/s would require 16 lanes at least. I don't think Intel makes any consumer CPUs with more than 16.

<comment><USER30> The 40 GBit/s is definitely confusing.

My understanding is that that's total bandwidth across all protocols. So the mix of Displayport and PCIe 3.0 can't exceed 40 GBit/s. The 4x PCIe 3.0 on it's own is 32 Gbit/s, as you mentioned.

Each controller provides two Thunderbolt ports, which share bandwidth. For the 15", 4x PCIe to the left side Thunderbolt controller, 4x PCIe to the right side Thunderbolt controller, and 8x to the GPU would be a sensible configuration. Though who knows if Apple took this approach.

</comment></comment></comment></comment><comment><USER31> And some vendors are apparently not having all ports do all things, so two USB-C ports, one can charge at high power and one can't, but from the outside they look identical, plugging into either can charge, but the low power one will take forever.

While I'm a big fan of backward compatibility, I feel that at some point it is better to start fresh rather than try to wedge another solution into the same mechanical configuration. And while I get that people didn't appreciate motherboards that went ISA->PCI->AGP->PCI_e, it saved people from the frustration of plugging cards in that wouldn't work.

<comment><USER32> So one of the things I wonder here is, if I plug all 4 ports into chargers, will it charge faster? I know the onboard battery is current limited, but I wonder how it works in practice.

<comment><USER33> Since there will be many occasions where power is being passed in on more than one of the USB-C connectors, the new Macs are designed to take power from the ONE charger that offers the highest power (capped at some limit) and reject power from all others. So, plugging in all four will NOT charge faster than plugging in just the one offering the highest power. This is a very explicit, intentional design decision, not some hidden side effect of something else.

<comment><USER32> That also makes me wonder whether devices that both charge and provide power get confused. Is there a hierarchy of charging beyond simple amperes provided? Otherwise I could see plugging in a spec-max 100w portable battery and draining it prior to pulling from the wall charger.

</comment></comment></comment></comment><comment><USER34> I once had a large plastic tub, full of SCSI cables, there were around 10 kinds of connectors, in both male and female configurations and about 10 different kinds of cables. Disk drives would have one kind of connector and often computers would have a different style connector necessitating lots of A to B connection issues. And the cables were expensive, often over $100. It was an absolute mess.

It seems that the USB-C connector, finally, represents a small, robust, easy to use connector that is capable of high data bandwidths.

It wouldn't make anything any better to have different connectors _and_ different cables for charging, mice, keyboards, disk drives, monitors, etc. I just hope that I'll be able to get by with a handful of different lengths of the highest end cables (e.g. the thunderbolt 3) and use them for everything.

<comment><USER35> Read the article. That's crux of the complaint -- that there _isn 't_ just one type of cable for USB-C. Heck, the USB-C power cable that comes with the the new MBPs can only do power and USB2 data. See for yourself: [http://www.apple.com/shop/product/MLL82AM/A/usb-c-charge- cab...](http://www.apple.com/shop/product/MLL82AM/A/usb-c-charge- cable-2-m?fnode=8b)

<comment><USER34> Yes, maybe I wasn't clear. The USB-C connectors look like they will simplify the end points so that's an improvement. We should need fewer cables.

I'm hoping that by buying the more capable cables (the Thunderbolt 3 versions) that I will be able to use them on all of my devices, even the ones that don't require Thunderbolt 3 like my 12" MB where I only use the USB-C connector for charging, USB3, and sometimes an external monitor (not at Thunderbolt 3 speed).

<comment><USER36> Yeah but, I think the point is you will never be able to do this. There is no "ultimate" USB C cable that can just do everything. You have to use the cable that ships with your device, or risk, not only getting the correct performance, but actually damaging your hardware.

</comment></comment></comment></comment><comment><USER37> There's actually a semi-legit reason to make a usb2-only c-c cable: because it can get away with not having the high-(super)speed differential pairs, it can be thinner, lighter and cheaper than a full-function cable. Compare to charge- only microusb cables - they are indistinguishable from real cables, but lack critical functionality. If they were easily distinguishable, this would not be nearly as much of a problem.

One really major (to me at least) concern with moving from USB to thunderbolt is that thunderbolt is a PCIe connection, with the same security issues as firewire (a device can basically access all your RAM, extract keys and passwords, plant exploits etc). By bundling that into the same form factor as the (by comparison) far safer USB and hdmi/displayport we're putting users at risk.

<comment><USER38> Recent MacBook pros use the IOMMU for isolating PCI devices. With that, the devices can't read arbitrary ram (if Apple configures it correctly).

</comment></comment><comment><USER39> Back when we had different connectors for different things, we knew one thing: if it fit, it worked. But the proliferation of incompatible connectors, driven by the advancement of technology, meant that nothing fit! So we created one connector to rule them all: USB-C. Now everything fits, but nothing works.

<comment><USER40> I say establish matched color coded ends for both the cables and rings around the plug ports.

<comment><USER41> I think that's too subtle for many consumers and it has been hard for manufacturers to stick to that, especially when selling cords in specific shades of colors is good product differentiation.

<comment><USER18> It worked for PS/2 keyboards and mice. When Microsoft first introduced PC'97 everyone mocked it, saying that even if the computer had coloured ports you never had a coloured keyboard and mouse or vice versa - but eventually after a few years the standard became established enough. And that standard relied on some truly nasty shades of purple and green.

</comment></comment></comment></comment><comment><USER35> Food for thought: will USB-C be the "last" standard connector? Speaking in terms of the physical connector, not the data protocol. I'm sure it will eventually prove not to be, but it's got a lot going for it and I suspect it will last for a very long time. If USB-A was the dominant connector for nearly 20 years I think C could see a run of 50 years or more. RJ45 connectors are around 40 years old and aren't going anywhere soon. I wonder what the qualities would be of a connector to replace USB-C.

<comment><USER42> Well, Lightning (which is older) is already significantly thinner than USB-C, 1.5mm rather than 2.6mm, though it has fewer pins. Looking at this visual comparison, I'm a little concerned that USB-C will start being too thick if the phone thinness war ever starts up again:

[http://josh-ua.co/blog/2015/3/15/usb-c-dimensions-size-compa...](http://josh- ua.co/blog/2015/3/15/usb-c-dimensions-size-comparison-with-the-lightning-port- and-usb-type-a)

Lightning also differs in not being hollow on the male side, which, aside from reducing thickness, apparently has both advantages and disadvantages for durability.

</comment></comment><comment><USER43> Why doesn't the USB consortium standardize (and, ideally, enforce) labeling of ports and cables by capabilities? Kind of like washing instructions labels on clothes, only printed on the cable.

The ports on a laptop wouldn't have to be physically labeled if the OS could display a list of their capabilities in a user-friendly manner. Or, perhaps, they should have the most important label (e.g. thunderbolt or not). Something the committee would decide.

<comment><USER44> How would a consortium force you to print stuff on the cables you produce/sell?

<comment><USER43> By making it one of the conditions for licensing the specification and permission to use the USB trademark to you.

</comment></comment></comment><comment><USER45> USB3 ports and cables are (when spec compliant) easily distinguishable from USB2 due to them being blue. Why was the same not done for USB-C (black for USB3, red for Thunderbolt)?

<comment><USER46> How is it going to help to a regular user? I doubt regular users even know what those colors are for, adding more colors just brings more complexion

<comment><USER47> At least you (or technical support) can look up the difference. If the cables all look the same then you need to physically test the cables to know their capabilities, which is a waste of time and resources.

</comment></comment></comment><comment><USER48> Very interesting article.

Can here anybody maybe even explain a little bit more about the video (Displayport) alternate mode? As far as I understand now both USB3 and Thunderbolt support it, but they support it with a different Displayport standard. How will that work if I plug in a future monitor with USB-C? Will there first be some negotiation in which both devices clarify whether to use USB oder Thunderbolt. And then another one in which the alternate mode is set? Or is displayport directly available on some dedicated pins of the cable and if yes, would it be the same for both cases? Or is displayport somehow modulated/multiplexed on the remaining data stream, and in a different fashion for USB3 than for Thunderbolt?

<comment><AUTHOR> "Alternate Mode" means "using the same USB Type-C pins for other protocols". That protocol can be HDMI or DisplayPort or Thunderbolt or even analog audio!

The USB consortium specifies using HDMI 1.4b and DisplayPort 1.3 (and MHL 3.0) on the Type-C port. So non-Thunderbolt machines have these specs as a maximum.

Thunderbolt 3 can also pass video signals, and Intel specifies different versions of the protocols: HDMI 2.0 and DisplayPort 1.2. Again, these are the maximums.

So if you have a USB Type-C monitor (not Thunderbolt) or a native USB Type-C to video cable, you're limited to HDMI 1.4b (1x4K at 30 Hz) but instead you might be able to use DisplayPort 1.3 (1x 4K at 120 Hz). If your video card, connector, cable, and display supports it, of course.

If you have a Thunderbolt-native monitor, you might be able to do 2x DisplayPort 1.2 (4K at 75 Hz or 5K at 30 Hz) or 2x HDMI 2.0 (4K at 60 Hz and much more). If your video card, cable, and the Thunderbolt controller support it.

Essentially, you can pass video directly over the port (in USB Alternate Mode) or over Thunderbolt. Then there are external video adapters that use USB or Thunderbolt data. But that's not in scope of your question.

<comment><USER48> Thanks for the answer. Also to fragmede.

That means from USB-C I would either go to thunderbolt or directly to displayport AM. But how would it go on from Thunderbolt mode to video (displayport 1.2 version that intel specified)? Would Thunderbolt again dedicate some pins for it or is the signal somehow multiplexed into a big thunderbolt stream which carries everything?

<comment><USER49> Thunderbolt multiplexes that in, yes.

Although, more accurately, it's actually just a PCIe connection – you can even connect a GPU via thunderbolt via USB-C

</comment></comment></comment></comment><comment><USER50> Color-coding would have helped solve the cable mess, especially for users who are not tech-savvy. Imagine if USB-C were green, Thunderbolt were blue, Lightning was yellow, and DisplayPort red. If you have a rat's nest of cables behind your desk, it becomes easier to tell what's what, which makes it more manageable and less frustrating.

Also easier to guide non-tech-savvy family and friends on the phone: "See the red cable? Is one end plugged into the monitor?" "Yes" "Good, now plug the other end into the laptop."

is a better conversation than:

"There are a dozen cables here, all alike!"

<comment><USER51> I'm sure that would be great for everyone except Apple. Even blue ports (probably the least offensive color) are too ugly for Apple hardware :)

</comment></comment><comment><USER52> I think I can answer at least one of the questions, on why make 2.0 only C cables.

When I got my Nexus 5X, I bought some assorted A to C cables to go with it. I noticed that the 3.0-capable cables are awfully thick and heavy, and not so convenient to carry around with a mobile device. I bought some 2.0-only A to C cables that are much thinner, lighter, and more flexible, and use those instead. Considering that I will basically never need the extra 3.0 speed for connection to my phone, I'll take the cheaper, lighter, more flexible cable every time.

</comment><comment><USER53> Is the long term dongle free? C to C everywhere? My TV could have USB-C instead of HDMI ports. I could use the same cable I use for charging my phone to hook my laptop up to the TV.

This solves the cable problem (every cable should support the full spec) but it doesn't quite solve the support question. Just because I have a cable that works between my phone and TV doesn't mean it will actually do anything.

<comment><USER54> I hope so. It also solves the hub or dock problem in one go. I just get back to my desk, plug in one USB-C cable and I now have all of my devices plugged in.

<comment><USER55> There are Thunderbolt (2) hubs that allow you to do just that even now, bit pricey though.

Also I don't think USB-C is the deciding factor here, it'll still have to use Tunderbolt to provide the hub functionality.

</comment></comment></comment><comment><USER56> >The core issue with USB-C is confusion: Not every USB-C cable, port, device, and power supply will be compatible

Not every USB-A port, device, cable, and power supply are compatible. I'm not sure I understand what his point is. That people who refuse to do research are going to occasionally run into incompatibility problems? Like they have since the dawn of the computing age? And?

<comment><USER57> The consequence of this incompatibility is damage to the host device; that's what's new. Never an issue with RS232!

<comment><USER58> As far as I'm aware it is only out-of-spec cables that can cause damage. If everything is in spec then the worst case is just reduced performance or the connection not working. I'd add that – IMO – if an out of spec cable causes damage, then the cable manufacturer should be held responsible.

I'm sure that an out of spec USB 2 cable can cause damage as well.

<comment><USER59> Right -- it's cables that do not comply with the USB-C spec that can cause damage. It's not as if plugging a Thunderbolt 3 device into a laptop that doesn't support Thunderbolt will damage the laptop. It just won't work.

<comment><USER60> and trying to argue that out-of-spec cables causing damage to your computer is a deficiency in the spec makes about as much sense as saying the etherkiller demonstrates a problem with the RJ45 spec.

([http://etherkiller.org/](http://etherkiller.org/))

</comment></comment></comment></comment></comment><comment><USER61> A meta comment. There are many other threads lamenting that this is not a "Pro" machine, but all this cable discussion is not foreign to audio, video and IT professionals and prosumers. If you want to get the max of your pro computer's IO you will need to learn your cable specs and protocols.

It does look that the future will require some rebuilding of our cabling. I have a thunderbolt hub that connects to my screen, my external thunderbolt drive, and a plethora of USB devices. I only use a single Thunderbolt port on my laptop. I like this Future. With these bandwidths I can see us connecting more interesting devices to our laptops

</comment><comment><USER62> This strikes me as being the same situation as hdmi cabling. Anyone who has bought a 1080p tv then a 3D tv then a 4K tv then an hdr tv knows that not all hdmi cables are made equally. This is not great, but it's very far from a nightmare.

<comment><USER63> I was going to post this very same thing, the upside is it'll be easier with USB-C because it'll appear in far more devices over time than HDMI.

</comment></comment><comment><USER64> Is it possible to make one Type-C cable that supports every possible protocol that can go over Type-C and works as long as the devices are compatible? I.e., if the two devices can talk over Type-C, then the cable will work?

<comment><USER65> Type C cables only come in two types: USB 2.0 and 3.0/3.1. USB 2.0 cables have fewer wires and only support USB 2.0 data and power. USB 3.1 cables have all the wires (and are expensive) and support higher speeds and alternate modes.

Finally, Thunderbolt 3 requires active cables for longer lengths and higher speeds. It can only do 40 Gbps with 0.5m passive cable, and 20 Gbps with 2m passive cable. Anything longer requires active Thunderbolt 3 cables.

</comment></comment><comment><USER66> One interesting thing is that when the port is the same for everything, the port itself (the shape, size, look and whether it matches the other thing you're looking at) ceases to be a useful interface for connecting things together physically. Instead we need other indicators, labels, and on-screen error messages to tell us those things, which is a much more indirect and less clear way of understanding connectivity.

Did anyone ever stop to ask if we really wanted everything to go through one port, even if everything wasn't really inter-compatible? I think we had it pretty right before, with a mix of ports, some of which were exclusive to a purpose (like HDMI, power, audio), some of which were generic (like USB, FireWire, Thunderbolt). Now we've removed clarity for what exactly? Aesthetics? "Simplicity?" The technological advancement of a single standard? There could be good reasons, but we should be aware of the usability tradeoff.

</comment><comment><USER67> The USB 3.1 gen1 and gen2 thing still really boggles my mind. It's almost as if the USB-IF was trying to confuse people. Who retroactively renames a standard?

<comment><USER68> They should have just named things this way:

USB 3.1 gen1 => USB 3.1, USB 3.1 gen2 => USB 3.2

I don't know why they would do differently.

<comment><USER69> Agreed, 3 levels of versioning is too much for most users. Even 2 levels isn't ideal when dealing with a novice user.

      - Good: Thunderbolt 1, 2, 3
      - Good: USB, USB-2, USB-3
      - OK: DisplayPort 1.2, 1.3
      - OK: HDMI 1.2, 1.3a, 1.4, 2.0
      - Bad: USB Hi-Speed, SuperSpeed, SuperSpeed+
      - Bad: USB-3.1 gen 1, USB-3.1 gen 2, ...
      - Bad: LEV, ULEV, SULEV, PZEV, AT-PZEV

</comment></comment></comment><comment><USER70> I'm a bit confused. The ports on the computers themselves can have different protocols- that makes sense. But the cables themselves can _also_ support different protocols? Maybe I'm just naive, but can someone explain how a "dumb" cable supports different specs?

<comment><USER71> Specifically, different cables support different bitrates and Wattages. This is due to the number and thickness of the wires in the cable.

I think Monoprices's labeling of a 5Gbps or 10Gbps USB-C to USB-C is false, however. There is nothing about the USB 3.1 Gen2 (10Gbps) spec that requires anything more than a regular USB3 cable. I think the "5Gbps" version is just an older product description from when 5Gbps was the fastest USB available.

<comment><AUTHOR> Plus, as noted by lee_s2, the higher-cost/higher-protocol cables are "active" with chips in them.

</comment></comment></comment><comment><USER72> USB standard bodies can borrow a page from the Ethernet port and signal standards. 10-mbps to Gbps evolution does not have to be painful for users.

<comment><USER35> Start getting involved with 10Gb Ethernet and it is no longer trivial. You've got Cat 6, 6A, and 7, and all sorts of different length and shielding considerations and often don't get anywhere close to 10Gb.

<comment><USER73> At least for most Ethernet cables I buy, the category is actually printed on the cable itself. I don't see that happening on USB cables.

<comment><USER74> It would be nice to see something like #lanes@XGhz + 1 .

</comment></comment></comment></comment><comment><USER75> Generally the cable hasn't mattered in consumer devices - as long as the device and cable are good and you plug it in to the right port, it'll work. A cable's a cable, after all, right? Unfortunately, that's not true, hasn't been true for a bit, and Apple's only partially to blame. DVI-A, anyone?

Some of Apple's dongles have a microcontroller inside in order to do the signal conversion, so it's a wonder they're only $30. That lighting-to-3.5mm jack that comes with the iPhone 7? Tiiiiny DAC - [http://www.macrumors.com/2016/09/20/lightning-earpods- teardo...](http://www.macrumors.com/2016/09/20/lightning-earpods-teardown- confirms-dac/) (The other option being dumb signaling with the iPhone itself doing the DAC and passing the signal, as USB-C allows with alternate mode).

Past Apple's dongle madness though, the bleeding edge of technology has always had a few edges. Despite the connector at the end fitting, HDMI 1.0 cables won't work where HDMI High Speed cables are necessary (though monster cables are still a rip off). High-end 4k TVs need the proper cables or else it won't work, just like a random cable with RJ-45s on the end won't necessarily support gigabit connection speed (or even support ethernet, for that matter).

If Monoprice listing all the possible variations of USB-C cables seems frustrating, and you're allergic to details, only buy the expensive Apple cables and certified Apple accessories and you'll be fine, same as it's always been.

If you need to venture outside their walled garden, yeah, there are some details to know about that the article doesn't go into, but I'm quite excited for what's become known as the USB-C connector to become the global consumer connector standard. Once that's true, the fewer weird dongles we'll all need, and you'll always be able to charge your phone-that-has-usb-c (we'll see if the iPhone 8 picks up USB-C).

What the author glosses over in the article is actually an interesting part of USB Type-C spec, which is Alternate Mode. This allows a device and host to negotiate to speak something other than USB on the pins, be it video, networking, or in Apple's case Thunderbolt 3.

Apple's definitely gone and made things confusing with Thunderbolt 3 - <USER2> everyone else. Buying only Apple stuff is going to "just work" as long as you keep buying their newest shiniest gadget, and, well, they're in the business of selling gadgets.

<comment><AUTHOR> I agree that it's exciting to have a durable/flippable cable that can be used for all sorts of things. The issue is that the nomenclature is unclear, with everyone just saying "USB-C" when that can mean all sorts of things.

I actually spent quite a lot of time talking about "Alternate Mode", I just didn't call it that all the way through.

</comment></comment><comment><USER76> The proliferation of various ports and interfaces has been disturbing, even in the PC arena where Thunderbolt is rather hypothetical.

Displays alone drive me insane these days. Twenty years ago, you had a VGA connector, and that was it. Then came DVI, which allegedly worked better with TFT panels. Then came HDMI, but there is also DisplayPort which appears to be similar, yet different. I have not seen a display or beamer that will accept DisplayPort input. Does such a thing even exist?

And laptops have, of course, the "mini" version of these, so there is mini- DisplayPort (which looks suspiciously like ThunderBolt) and there is mini-HDMI (which looks suspiciously like USB-C).

I am still telling myself this is a transition, and in five years everything will be USB-C. Once we are there, that sounds like a nice future, but I am not certain we'll get there in time. (Plus, a tea leaf got stuck my Galaxy Tab's USB-C port while riding the train - it took me an hour to scrape and shake everything out before that thing could be charged again. Something that never happened to me with good old USB ports for some reason, even though they were much larger.)

<comment><USER19> Plus, we have all the old devices that still work just fine using the old ports. I've been using some LCD monitors for five or six years that are VGA- only, and they are still going strong, with no need or reason to replace them.

DisplayPort vs HDMI is one of the real bafflers. Graphics cards always seem to have one HDMI out, and two or three DPs, yet I have never encountered a monitor that have DP-in ports, just VGA or HDMI.

<comment><USER77> Wow VGA... even 13-14 years ago my monitors were on DVI.

As for DP, you've never seen a 27 or 30" monitor? All high resolution (QHD, UHD, 4K, 5K) or high refresh (120/144 Hz) or G-sync/FreeSync monitors use DP as their main input source.

<comment><USER76> Okay, for higher resolutions that may be a thing. I have only seen one 27" display, and it was "only" 1920x1080, with one VGA, one DVI and one HDMI input. :-/

(Also, I have seen many PCs with builtin graphics that have no DVI output, only VGA and HDMI (and sometimes DisplayPort).)

</comment></comment></comment></comment><comment> vladimir-y Thunderbolt 3 is a great thing (really), though some time is needed for the transition period.

</comment><comment><USER29> That's just the start of it. So the new MBP has what, four USB-C ports.

Can I put power into all of them? What if I try to do 4xHDMI for all of them? Surely I can't connect four external graphics cards over Thunderbolt 3? Can I chain Thunderbolt devices?

The author also missed the "audio accessory mode". That's right, in some unique star constellation, some of these USB-C pins can be repurposed for pumping out analog audio! Supported? Who knows.

I think before long every USB-C accessory will have to come with some sort of EEPROM that the host reads first to figure out 1) what is this you are plugging in and 2) is this going to work. So that there is at least some user feedback instead of "plain doesn't work" or "oopsie now the port is dead".

<comment><USER78> The answers to all of the questions in your second paragraph are easily available and in most cases the answer is yes (you can do 4x HDMI if they're 4K or less on the 15", 2k on the 13" \- video card limitation, not port limitation).

[1] [http://www.apple.com/macbook-pro/specs/](http://www.apple.com/macbook- pro/specs/)

<comment><USER29> It says two displays for both, so the answer is no. I'm not sure a user is particularly interested in the video vs port distinction.

Also says nothing on the four external graphic cards, but frankly the answer is probably going to be no as well.

That's the principal problem here: there is now a port for things that the underlying hardware can't even offer.

</comment></comment></comment><comment><USER79> It is a pity that they didn't introduce a common color coding for USB-C connector cables.

<comment><USER54> How many color bands would you have to have one each end? The point of USB-C is that it can support many, many protocols. Labeling that is legitimately hard without a massive book.

<comment><USER79> At least some basic coloring would be nice. Let's say (For the sake of discussion) blue for USB-C (maybe a different shade for 5 ws 10GBits if you want), a black one for a Thunderbolt 3 connection, a white one that only has charging pins (hello Macbok Air cable). Still better than the mess we have now.

</comment></comment></comment><comment><USER80> There is a real evolutionary fight going on with connectors at the moment.

        > Apple's fastest growing product category.

This tweet highlights the Apple problem right now [0] What is damaging to users is the cost / availability of connectors. What was the last time this connector nightmare played out? Token/Ethernet, Serial/DBX/USB? It pays to be a bit conservative in hardware choice at this moment.

[0] [https://twitter.com/dbreunig/status/792034409788518401](https://twitter.com/dbreunig/status/792034409788518401)

</comment><comment><USER81> The fact that certain devices cab be damaged by the wrong cable is inexcusable.

<comment><USER82> This is like complaining "mv ~ /dev/null" does what it is meant to do.

I know

\- "Keep It Simple, Stupid"

is a thing, but so is

\- "UNIX was not designed to stop its users from doing stupid things, as that would also stop them from doing clever things."

<comment><USER83> Disagree. This is an engineering failure. You have to look at reality; it's often not easy to tell what kind of cable you are planning to use. Any command line interaction is decidedly more involved than the typical user plugging in a cable. This type of interaction should have been planned for and mitigated.

This also has nothing to do with UNIX.

<comment><USER82> It has to do with designing a system to be used by people. UNIX is a system designed to be used by people.

\- "Any command line interaction is decidedly more involved than the typical user plugging in a cable."

Right. "The typical user plugging a cable". I expect the user to become a "typical user" after learning how to choose and use a cable, and getting acquainted with his hardware and software. One is not born a typical user, as you seem to imply (plugging a cable is not a complex task). It is. Everything is complex. Using the command line is complex, and then you factor your "typical uses" into aliases or scripts.

Or maybe you curl | bash scripts from the web, and then cry when they fail / your box catches internet aids.

Or you use an ipad for all the computing you do, and expect things to just work.

See: a typical everyday usecase: [https://github.com/alex/what-happens- when](https://github.com/alex/what-happens-when)

Did the user write "oogle.com" instead of google, and got malware? ....Inexcusable, as you said? Should it just work?

I say: "why did the user write oogle.com? Did he want malware?"

Simple stuff.

</comment></comment></comment></comment><comment><USER84> The article is pretty good, but this amount of hyperbole is really unforgivable: "If you're not careful, you can neuter or even damage your devices by using the wrong cable." First of all, the linked post says that C to C cables _do not_ have this problem at all. The issue comes about in relation to how older standards report allowable power draw via resistor configuration. This is a problem that can only occur with USB A to USB C and also USB A to USB B.

<comment><AUTHOR> No you can damage your devices with C-to-C cables. [https://plus.google.com/u/0/+BensonLeung/posts/HakwCMmd346](https://plus.google.com/u/0/+BensonLeung/posts/HakwCMmd346)

<comment><USER85>
      Q: Do C to C cables have the same problem?
      No. C to C cables do not have the same problem because they are required to be straight pass through

</comment></comment></comment><comment><USER86> I think this understates the number of ways you can connect a monitor over USB-C if anything. Let's see, there's Alternate Mode DisplayPort, Alternate Mode HDMI, Alternate Mode Thunderbolt's video support, Thunderbolt to an external GPU, USB 3.0 graphics, possibly more, most or all of which can be converted to HDMI with different compatibility and performance tradeoffs.

<comment><AUTHOR> ...and most of which won't work with a given display. SO you have to figure out which of the dozen or so possibilities works with your monitor and computer and buy the right cable to go between them.

</comment></comment><comment><USER87> The politics behind standard committees is horrible. Just call the new standard USB 4.0 which supports alternate mode, power delivery ...

<comment><USER88> 4 is unlucky some places. They'd probably go to 5.0 next.

<comment><USER85> _Tetraphobia is the practice of avoiding instances of the number 4. It is a superstition most common in East Asian nations. … The Chinese word for four sounds quite similar to the word for death in many varieties of Chinese. Similarly, the Sino-Japanese, Sino-Korean, and Sino-Vietnamese words for four sound similar or identical to death in each language._

Wikipedia's "Examples of sensitivity to tetraphobia applied" section is interesting:

[https://en.wikipedia.org/wiki/Tetraphobia](https://en.wikipedia.org/wiki/Tetraphobia)

<comment><USER89> Sounds appropriate for this mess.

</comment></comment></comment></comment><comment><USER90> I was in shenzhen a couple of days ago, and faced with the prospect of having different types of USB-C cables, I bought one of each standard (thunderbolt, USB3.0 and 3.1).

I now have a problem because I don't remember which colour is which. Is there a way to find out without having to break the nicely braided cables?

<comment><AUTHOR> You could try them with appropriate peripherals and see if they connect at max throughput... But that's going to be very hard since there are pretty much no Thunderbolt 3 peripherals out there.

</comment></comment><comment><USER91> And here I am wishing HD-BaseT would catch on, but I don't think the people behind that (and USB-C) have any intention of actually making our lives easier -- it's just to having something new to sell :(

[http://hdbaset.org/](http://hdbaset.org/)

</comment><comment><USER92> This makes my brain hurt:

 _Thunderbolt 3 is really an "Alternate Mode" use of the Type-C port /cable, just like HDMI. But in practice, Thunderbolt 3 is a super-set of USB 3.1 for USB-C since no implementation of Thunderbolt 3 will be USB 2.0 only._

Anybody care to explain?

<comment><AUTHOR> "Alternate Mode" means "use these same pins for something other than USB". So Thunderbolt 3 uses the same connector but re-purposes the pins and wires to carry 2 or 4 PCIe 3.0 lanes rather than USB. HDMI similarly repurposes these pins to carry traditional HDMI signals.

Anyone implementing Thunderbolt 3 will also be implementing the full USB 3.1 stack in the same chipset. Intel, for example. It would be silly to implement just Alternate Mode Thunderbolt and skip the USB 3.1. That's all I meant.

</comment></comment><comment><USER93> Here's a slightly unrelated question -

What happens if you plug in 4 power cords into the new MacBooks ?

<comment><USER94> In Apple's documentation, it mentioned that if you plug in multiple power sources, the MBP would choose only one at a time.

</comment></comment><comment><USER95> Well, a similar situation exists with UTP cables, where cat5 offers 100 Mbps, cat5e offers 1000 Mbps, and cat6 offers 10000 Mbps. They all look exactly the same unless you go and read the label on the cable and are familiar with this.

<comment><USER35> It's even worse: getting consistent 10Gb on Cat 6 depends on cable length and electrical interference. Cat 6A and 7 also start coming into play for long cable runs and make the situation even more complicated.

<comment><USER95> Yes, though cable crosstalk and interference is an issue with most cables. There is STP (shielded rather than unshielded), which protects against external interference.

</comment></comment></comment><comment><USER96> Such mixed feelings about this. Really nice content, but misleading title. :(

I already knew all that, but I appreciate the write up for others who don't already know all those details. I'm an enthusiast and obsessed with these details of ports, protocols and cables. I predicted this a year ago [0] and I'm very happy with this outcome. Yes, it's a transition period, which is unpleasant every time, but we will be in a fantastic state in a few years.

[0] [https://twitter.com/shurcool/status/607351368387469312](https://twitter.com/shurcool/status/607351368387469312)

</comment><comment><USER36> What is so crazy about this is, if you can't risk just using any cable that fits in a socket, becuase you could damage your hardware, end users would be better off with a completely unique shape for every cable.

This is a giant leap backwards.

<comment><USER74> Where does it say you would damage your hardware? Alt modes are negotiated with a standardized protocol as is power transfer. The defaults should be electrically compatible with all devices, though not necessarily functional.

<comment><USER36>
        "If you're not careful, you can neuter or even damage your devices by using the wrong cable. Seriously: Using the wrong cable can damage your machine! This should not be possible, but there it is."

<comment><USER97> This refers to out of spec cables, not the incorrect type of cable. As long as your cable is within spec, you wont have issues.

</comment></comment></comment></comment><comment><USER98> The mistake this article makes is thinking that the typical person will interact with many different USB-C ports and cables than his or her own. The reality, is that people will get to know their own ports, buy their own cables and devices, and things will work 99% of the time.

Only occasionally they'll need to use a friend or coworker's device or cable and then there could be confusion. Although, even then, assuming the friend also has one of the most popular computers/phones/cables, it'll probably still work.

<comment><USER99> Ah for a world where you never have to go and make a presentation in another office.

</comment></comment><comment><USER100> > Thunderbolt 3 requires a special cable

Apparently this isn't quite right. You can use normal passive USB 3 cables to get 40Gbps at very short lengths and 20Gbps at medium lengths.

Unless they're too low quality.

</comment><comment><USER101> It would be nice if calling things "Total Nightmare" did not become a trend.

I've seen more of this negative rhetoric lately and I suspect it's influenced by Trump's speech patterns of describing everything as a "Total Disaster, Sad!"

It's not a constructive way of speaking, and it's hurtful and discouraging to whatever or whomever it is criticizing. That's likely why Trump does it.

How about changing the title to "USB-C adapter confusion: what can we do to improve this?"

</comment><comment><USER102> This just sounds like the same whining people did when the Mac went to USB back in 1998. "You mean I need an ADAPTER for my SCSI device?!"

</comment><comment><USER103> Tim Cook is the Steve Balmer of Apple. Balmer lead Microsoft to near oblivion. Really nice to see Microsoft change into a more open company... I'm getting more and more impressed with things like the Linux subsystem.

I haven't bought a Mac or an iPhone in awhile because their hardware is terrible compared to their competitors. Gimmicky features like 3d touch (haven't used it once, intentionally), unnatural scrolling, and this touch bar are things I'll probably use once or twice. Literally the only reason I stick with OSX is because it's a commercially supported Unix system with a nice user interface.

What I don't understand is the "pro" in the name. Doesn't a "pro"fessional need to do things with their computer outside of a coffee shop; usable I/O, gigabit ethernet, slots for interfacing with their other professional equipment, etc. I can totally understand these features in a consumer edition laptop. But there is no longer a reason to call these "pro" laptops.

The silver lining I guess is maybe Apple drives a new wave of people to desktop Linux and we can finally get a nice, modern, desktop environment. Either that or another project to get OSX running on [superior] non-Apple hardware.

Anyway, just my opinions. I wonder if anyone has similar thoughts.

<comment><USER104> Rather off-topic don't you think?

<comment><USER105> Pointless Mac vs PC debates are never off topic on internet forums :-)

</comment></comment></comment><comment><USER106> Does anybody know how the protocol/mode gets negotiated? Its unbelievable what capabilities such a small port has.

<comment><USER86> Well, that depends on the protocol being negotiated and the connectors and devices on either end, of course. Having just one or two methods of protocol negotiation would be too simple.

<comment><USER106> Well, i would expect that. But how is the detection done? i don't think USB was designed with an alternate mode/thunderbolt in mind. I would expect some tricky solution to play nice with legacy USB-devices, or not?

<comment><USER86> I think legacy USB 2 has dedicated pins and devices are expected to deal with all of the old legacy signalling methods in addition to the new ones.

</comment></comment></comment></comment><comment><USER107> You know whenever there is a bad press about Apple product they start to black list those reporting websites. Blacklisted company don't get any pre-released news or products for reviews. I wonder how many websites have been blacklisted.

</comment><comment><USER108> So am I right in understanding that… (i) When my new MacBook Pro arrives, I need to learn which is the Thunderbolt port. (ii) I can simplify matters by always buying the top-spec leads. If so, how do I know which to buy?

<comment><USER109> Answer for (i): They're all Thunderbolt.

<comment><USER73> But some might be slower than others. [https://support.apple.com/en- us/HT207256](https://support.apple.com/en-us/HT207256)

</comment></comment></comment><comment><USER50> Is the article correct in claiming that the CABLES are backward-compatible?

I have a Nexus 5x, which uses USB-C. I want to buy a cable to charge it and connect it to my computer. Would a Thunderbolt 3 cable work?

<comment><USER18> Yes - thunderbolt 3 cables are required to support the full 100W of power. It sounds like there are only really four types of USB-C cable, at least for the time being - USB2, USB3 without power, USB3 with power and thunderbolt 3.

</comment></comment><comment><USER80> interesting read on the technical details of the ports b/w 13"/15" and port placement: _" Thunderbolt 3 Ports on Right Side of 13-Inch MacBook Pro Have Reduced PCI Express Bandwidth"_ ~ [http://www.macrumors.com/2016/10/28/macbook-pro- tb3-reduced-...](http://www.macrumors.com/2016/10/28/macbook-pro-tb3-reduced- pci-express-bandwidth/)

</comment><comment><USER110> USB needs to go back to being "universal". The USB spec has been getting progressively more complicated over the years; it's time to cut back.

<comment><USER111> Has it ever been "universal"?

<comment><USER110> Yes, hence the name. It's quite easy to implement a USB 1 controller, and there was very little difference across implementations.

<comment><USER111> I'm reasonably certain there have always been differences in power delivery and connectors.

</comment></comment></comment></comment><comment><USER112> What a bunch of alarmist BS. Drop all the exclamation points. No one takes you seriously if you end every damn sentence that way.

</comment><comment><USER113> Table nightmare:

[http://i.imgur.com/52zh3Ki.jpg](http://i.imgur.com/52zh3Ki.jpg)

</comment><comment><USER114> I think the nightmare is if we give up and go back to separate ports and cables for various things.

</comment><comment><USER115> What happened to Thunderbolt 3 over USB 3.1 Alternate Mode?

<comment><AUTHOR> It's in there.

</comment></comment><comment><USER116> Anyone have a mirror?

<comment><USER117> google has one [http://webcache.googleusercontent.com/search?q=cache:8O__73q...](http://webcache.googleusercontent.com/search?q=cache:8O__73qyoS0J:blog.fosketts.net/2016/10/29/total- nightmare-usb-c-thunderbolt-3/+&cd=1&hl=en&ct=clnk&gl=br&client=firefox-b)

</comment></comment><comment><USER118> I love

</comment><comment><USER119> > Although it looks exactly the same as a regular USB-C cable, you need a > special Thunderbolt 3 cable to use Thunderbolt 3 devices!

They're clearly putting a lot of lead in the water in Cupertino lately.

<comment><USER69> Intel's headquarters are in Santa Clara. [https://en.m.wikipedia.org/wiki/Thunderbolt_(interface)](https://en.m.wikipedia.org/wiki/Thunderbolt_\(interface\))

</comment></comment><comment><USER120> Worse case scenario: USB-C is gonna ruin the entire PC/Mac industry due to confusion and potential damage.

<comment><USER121> huge overreaction</comment></comment>


Investing Is More Luck Than Talent (2017) - <AUTHOR> http://nautil.us/issue/44/luck/investing-is-more-luck-than-talent <comment><USER2> When Jobs was brought back to Apple, the company was on its deathbed. It wasn't just a 1% talent differential that made him successful.</comment>


Apple's Advertising Budget Is Bigger Than Microsoft Vista's - <AUTHOR> http://www.techcrunch.com/2008/11/21/yup-apples-advertising-budget-is-bigger-than-microsoft-vistas/

<comment><USER2> Microsoft's expenditure is known to be $300 million for Vista. But the article is comparing this to Apple's _total_ budget.

Apple still has iPod commercials, for instance. The portion spent on the Mac probably isn't "bigger" than Vista's.

</comment><comment><AUTHOR> Exceeding what I was guesstimating over here: <http://news.ycombinator.com/item?id=338862>

</comment><comment><USER3> Perhaps one should compare the sophistication of the two ad campaigns?</comment>


Prometheus on Raspberry Pi - <AUTHOR> http://5pi.de/2015/02/10/prometheus-on-raspberry-pi/ <comment><USER2> _> "Cross-compiling this for Raspberry Pi is a pain. ARM != ARM, there are several variants and when I tried to cross-compiling Prometheus with CGO, it just lead to segfaults or invalid instructions."_

I'm pretty sure I had similar issues on the original model B and found I was missing specifying which ARM version it was:

        export GOARCH="arm"
        export GOARM="5"

I don't know if the same is required for the Raspberry Pi 2 nor even which ARM chipset version it is (the same I'm going to assume since Raspbian / Arch / etc still run) but it might be worth checking you have your GOARM environmental variable set

<comment><AUTHOR> Just for completeness, my answer to the same Q on the blog: \---

his doesn't solve cross compilation CGO. For that, you need the gcc cross compiler for the raspberry pi. I've tried to build it with CGO enabled like this:

CC=arm-linux-gnueabihf-gcc GOARCH=arm CGO_ENABLED=1 go build -ldflags="-extld=$CC"

But the binary still segfaulted on the raspberry pi. I also tried the cc from [https://github.com/raspberrypi..](https://github.com/raspberrypi..). but with the same result.

<comment><USER2> Ah ok. Shame.

Thanks for the update though :)

</comment></comment></comment><comment><USER3> First time I heard about Prometheus (by Soundcloud). I wonder how it compares to InfluxDB as a time-series DB (ignoring the monitoring things).

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

Previous discussion here, with both Prometheus and InfluxDB developers chiming in.

Short version from memory: Prometheus is more efficient for datasets were series have metadata, not so much individual points, since InfluxDB stores metadata per point, but InfluxDB will optimize this case in the next version.

</comment></comment><comment><USER5> Can someone tell me why someone would want to write a database in Go/Python/...? Or is Go just a wrapper in this case?

I am looking to store small time series data (only 100 points), but millions of them. I currently use sqlite. Any other suggestions that I could use?

<comment><USER6> I suppose for the same argument that can be made for single-language-but- inefficient configuration systems.

When you're doing a basic process, reliability >> efficiency.

And sometimes more pieces in your stack just decrease reliability of the entire system. (Admittedly! Rolling your own version of an already well- implemented stack component is not without its peril as well)

</comment></comment><comment><USER7> I'm intrigued. I collect real-time machine performance data using a UDP multicast daemon (written in C). It's fallible on some network topologies, etc., but it's extremely light and efficient.

I wonder if that could be plugged in to Prometheus without the overhead of HTTP collection...

<comment><USER8> HTTP collection doesn't really add a lot of overhead.

You might be interested in the [https://github.com/prometheus/collectd_exporter](https://github.com/prometheus/collectd_exporter) as collectd works in a similar way.

For machine monitoring [http://www.boxever.com/monitoring-your-machines-with- prometh...](http://www.boxever.com/monitoring-your-machines-with-prometheus) covers how to set it up with Prometheus - it's pretty easy to get working.

<comment><USER7> It does in the sense that an HTTP connection (either on the server or the client side) will expend roughly 20 times the CPU and buffers than generating or handling a single UDP packet. It all adds up on small systems.

<comment><USER8> You'd usually transfer many metrics in a single HTTP request, so the cost is amortized in most cases.

<comment><USER7> I can pack a lot on a UDP packet as well...

<comment><USER9> Not sure if this is what you're comparing it to, but be aware that Prometheus' approach is fundamentally different from StatsD-like approaches where you send every event or a subsampling thereof to a monitoring server.

Prometheus is state-based, not event-based. It only stops by your monitored instances once every couple of seconds and gathers their current state. E.g. for counting events, clients simply expose cumulative counters over their lifetime which they can increment locally in memory, and Prometheus comes by for example every 15 or 30 seconds and stores the current counter state.

The HTTP traffic incurred in this case is not really a problem and you'll usually run into bottlenecks at other places (like storage sample ingestion) before you run into network transfer bottlenecks.</comment></comment></comment></comment></comment></comment>


Chilling Effect, Next Steps, Final Steps, Hope - <AUTHOR> http://www.popehat.com/2014/03/21/chilling-effect-next-steps-final-steps-hope/

<comment><AUTHOR> Original paper here:

[http://warrantless.org/wp- content/uploads/2014/03/Surveillan...](http://warrantless.org/wp- content/uploads/2014/03/Surveillance_Search.pdf)

(curiously, the linked article's link to the abstract says it cannot be found.)</comment>


MongoDB 2.4 Released: Text Search, Security, Hash-based Sharding  - <AUTHOR> http://blog.mongodb.org/post/45754637343/mongodb-2-4-released

<comment><USER3> Using the new working set analyser is going to make figuring out how much memory you need significantly easier. Giving MongoDB enough memory for your working set is the easiest way to get performance but it was quite difficult to figure it out: you had to know both data and index sizes across your most common usage patterns.

<comment><USER4> Do you know of any resources that give some info on this topic in general? I've been looking but I haven't found anything that's sufficiently plainly- spoken that I fully grasp the contents.

<comment><USER5> from: <http://docs.mongodb.org/manual/reference/server-status/>

serverStatus.workingSet.pagesInMemory

pagesInMemory contains a count of the total number of pages accessed by mongod over the period displayed in overSeconds. The default page size is 4 kilobytes: to convert this value to the amount of data in memory multiply this value by 4 kilobytes.

If your total working set is less than the size of physical memory, over time the value of pagesInMemory will reflect your data size. Conversely, if your data set is greater than the size of the physical RAM, this number will reflect the total size of physical RAM.

Use pagesInMemory in conjunction with overSeconds to help estimate the actual size of the working set.

Also, there's a discussion of working set in this guide starting on page 9: [http://info.10gen.com/rs/10gen/images/10gen- MongoDB_Operatio...](http://info.10gen.com/rs/10gen/images/10gen- MongoDB_Operations_Best_Practices.pdf)

</comment></comment></comment><comment><USER6> Great to see the Pick database reinvented bit by bit. Takes me back to 1980. Forget the past, doomed to repeat, etc.

<comment><USER7> Can you elaborate for those of use who weren't around in 1980?

<comment><USER8> Basically the guys from MongoDB are rebuilding databases as they existed in the 1980s with the motto "we will do better than relational databases!" or "Sybase, Oracle, prepare to die!".

It's not clear which problem MongoDB is trying to solve or if it is an improvement over existing technology (this is my personal opinion).

<comment><USER9> I think it's pretty clear to anyone who's used it. It allows for rapid, low overhead changes to your data model in the very early stages of building something new. Of course, the further along you get those changes are no longer low overhead, but at the start of the new project it's very easy to get up and running.

<comment><USER10> At the start of a project it's also really easy to change an SQL schema.

<comment><USER9> It's not easier than nothing. You don't have to do __ANYTHING __in mongo. In any reasonable sized web app with a well designed ERD changing is going to result in you stopping coding and doing some ALTER TABLE, DROP INDEX, etc commands before you can start back with the coding.

Also when you want to create a report you can just write a script aggregates the data and fills another collection on the fly without creating the table first. You can even try out 6 different reports at the same time, without issuing separate create table statements.

<comment><USER6> QED.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> I was hoping for collection-level locking to be a part of the 2.4 release. I didn't see any mention of it in the release notes. Last I heard they were going to implement collection-level locking and then begin work on document- level locking. I'm still hoping document-level locking isn't too far off.

<comment><USER12> Collection level locking isn't in 2.4. Working on more granular locking for 2.6/2.8. May skip collection level entirely for something more granular. More details can be found in the collection level locking ticket <https://jira.mongodb.org/browse/SERVER-1240>

<comment><USER11> Skipping collection level locking and going for something more granular (like document level) would be awesome.

<comment><USER13> Don't you pretty much get document level locking by using multiple $<update> modifiers in a single query?

<comment><USER14> From an atomicity perspective, yes. From a performance perspective, no; other concurrent operations affecting anything else on the whole database wait on your write.

</comment></comment></comment></comment></comment><comment><USER15> It is great to have a stable version with fast count indexes see <https://jira.mongodb.org/browse/SERVER-1752>

Best feature for me

<comment><USER16> They are not fast, they are "normal speed" now. They were slow before. That was one of the problems which made me question the competency of the Mongo team.

Best feature for me too anyway.

</comment></comment><comment> c-oreills "db.killOp() Can Now Kill Foreground Index Builds"

That's going to save a lot of accidental "shit-the-whole-db-is-locked" pain.

</comment><comment><USER17> I am curious to play with the text searching. I wonder how it stacks up to Lucerne or Solr in the text indexing space

<comment><USER18> I am quite sure it will not come close to Lucene/Solr in terms of performance or capabilities.

<comment><USER19> Only one thing to do - <USER2>

<comment><USER20> Or just read the blog post:

tl;dr: use it, if a simple reverse index fits your needs, use Lucene for the grown-up stuff

> MongoDB text search is still in its infancy and we encourage you to try it > out on your datasets. Many applications use both MongoDB and Solr/Lucene, > but realize that there is still a feature gap. For some applications, the > basic text search that we are introducing may be sufficient. As you get to > know text search, you can determine when MongoDB has crossed the threshold > for what you need.

</comment></comment></comment></comment><comment><USER21> According to the upgrade instructions [1], the only supported upgrade path from sharded 2.0 clusters is via 2.2.

[1] [http://docs.mongodb.org/manual/release- notes/2.4-upgrade/#up...](http://docs.mongodb.org/manual/release- notes/2.4-upgrade/#upgrade-a-sharded-cluster-from-mongodb-2-2-to-mongodb-2-4)

<comment> c-oreills And infact you can't have a mix of 2.2 and 2.4 boxes in the same cluster, you have to go via 2.2.1

</comment></comment><comment><USER22> I was hoping the security enhancements would include SSL certificate validation. Anyone know why they don't do that, or how a user should approach that limitation?

<comment><USER23> We'll be moving away from MongoDB because it doesn't support certificate validation. What is the point of SSL connections if you don't validate the certificate? It seems that you get all the drawbacks of encryption (overhead, throughput) with none of the benefits (security).

I'd love to see a solution.

<comment><USER5> [http://docs.mongodb.org/manual/administration/ssl/#ssl- confi...](http://docs.mongodb.org/manual/administration/ssl/#ssl- configuration-for-clients)

</comment></comment></comment><comment><USER24> Whoop! Multithreaded javascript with V8 JavaScript engine!

<comment><USER14> I can't actually find any details about how this works in practice. Are multiple maps and reduces in a map-reduce executed simultaneously within a single mongod process? If so, how many? Is it based on the number of cores in the server?

Edit: not asking you specifically, just generally curious.

<comment><USER25> Each map reduce job can still only use one thread.

Before, under spider monkey, only one job could be executed per mongod instance. Now you can have many jobs executing in parallel on a single server instance but each one of them still only uses a single core.

<comment><USER14> Do you know if this is likely to be permanent? In an application I work on, I do map-reduces on Mongo data using a third-party framework at the moment specifically to work around the inability to easily parallelize map-reduce jobs on a single machine.

</comment></comment></comment></comment><comment><USER26> Love seeing the text indexing!

</comment><comment><USER27> V8 is another important change that isn't really touted much in this release.

<comment><USER25> Yeah, this is a big deal. It enables very interesting opportunities to create a map reduce engine that isn't awful or which requires Java.

People use Hadoop because they have to, not because it is great. Isn't it time for a better alternative now that the toothpaste is out of the tube re: map/reduce?

Java doesn't even have hash literal syntax! Why would you ever want to query document oriented data with it as your language of expression?

<comment><USER28> It's not hard to write Hadoop map/reduce queries in other languages: mrjob for python is particularly nice.

It's also not relevant that SpiderMonkey is being replaced with V8.

Mongo's map/reduce is also just a toy, not at all comparable with Hadoop's and being deprecated in favour of the aggregation framework.

Also, there already are decent alternative map/reduce implementations. Disco is a good example, with a similar design to Hadoop.

<comment><USER5> MongoDB's MapReduce implementation is not being deprecated. The primary beneficiary of the V8 implementation is MapReduce, so it should be seen as further investment in this area.

You can also run Hadoop MapReduce over data in MongoDB directly (24 - 29): <http://www.slideshare.net/spf13/mongodb-and-hadoop>

</comment></comment></comment></comment><comment><USER29> I'm glad this is out. I'm really going to enjoy plugging fractal trees in under FTS.

</comment><comment><USER30> any row-level locking?)

</comment><comment><USER31> [Comment about supporting only one master]</comment>


Which web technology[ies] should I learn? - <AUTHOR>

Hey guys,
I have never done any web development but am very interested in learning some web technologies. I believe I have a fairly solid understanding about programming, so I think picking up different languages/technologies shouldn't be too difficult. I am a junior in college, majoring in CS, and would like to work on a couple of small projects on the side. One of the first ideas I'd like to work on is a web app (game), where you join a room and play a simple game (roll a dice, do something, wait till your next turn -- repeat until there is a winner). Basically, my question is what technologies should I learn that will help me implement this idea in the best and most easy way?
Thanks! <comment><USER2> Hi there,

It's good you've got some web app ideas to work towards, that makes learning a lot easier I think.

Firstly you'll want to learn HTML so you can make your pages.

Next you want to decide what language you'll use in the web server - do you know any languages already? I would be biased in this case and suggest Python. But there are other languages that will suit you just as well - Java, Ruby, PHP and so on.

The above would be enough to get you going and write your web games.

Then later on I would recommend:

CSS - To style your web pages.

Javascript - To add more interactivity/functionality to the browser.

SQL - Initially you can just use plain text files or simple key-value stores that most languages have bindings for (I'm thinking of the shelve module in Python for example). But eventually you'll want to store more data or query it in interesting ways.</comment>


Show HN: Tech Insigt – Awesome blogs on technology, startup and innovation - <AUTHOR> https://github.com/cqcn1991/Tech-Insight <comment><AUTHOR> Hi, This is an awesome list of blogs on technology, startup, and innnovation. I put the blogs I enjoy most on this list. If you like Paul Graham, Andrew Chen, then you may also find some other blogs that interest you here.

Addtionally, this list is also the sources of my small website ([http://productchaseapp.herokuapp.com/tech2pocket](http://productchaseapp.herokuapp.com/tech2pocket)), where I collect the articles and then prioritize them using some simple data analysis.</comment>


Ask HN: Recommendations, guidelines for talking to children about online privacy - <AUTHOR> Hello, Does anyone know of any good sites or documents that help to talk to children between 4-10 about being online. Focusing on being safe, privacy and maybe about advertising. <comment><USER2> "Teaching python with Kelly and Sean" recently had an episode where this came up. They interviewed a young brother and sister about what they had learned in school with respect to technology and being a digital citizen

You might be able to reach out to the authors of that podcast

"Pythonic parenting with the shaw family" [https://www.teachingpython.fm/41](https://www.teachingpython.fm/41)

</comment><comment><USER3> There's the great open source project "Datenklaus" that uses an app to teach children about data literacy and privacy, sadly it's only available in German: [https://datenklaus.org/](https://datenklaus.org/)

It's completely open-source though, maybe you can help to translate it to English?

</comment><comment><USER4> [random advice from the internet]

Just talk about your concerns honestly. Being honest has more impact than anything else. Talking to kids is just talking. Good luck.

</comment><comment><USER5> TLDR Being burned lets you put things into perspective more easily.

I will just tell you how I personally learned those things at around 10-12 years old, you could act this out in a safe environment, but that depends on your standards I guess.

As a kid I wanted to buy a game online, but my family and friends parents where wary of purchasing something online at the time, so I had no way to obtain the game the 'regular' way.

A friend and I found some guy online that claimed he'd buy a license in exchange for a PaySafeCard of the same value. Lots of people saying that it worked for them, so this must absolutely be legit.

Of course we did the naive thing and contacted the guy.

Long story short, I lost a months worth of pocket money to him.

From that point on I swore to myself to always assess the risk of actions I take on the internet (and by now on everything) and to consider other peoples agenda's in decisions.

A useful lesson learned for "just" 15€ in my opinion.</comment>


Hitchins: North Korea is even weirder and more despicable than you thought - <AUTHOR> http://www.slate.com/id/2243112/pagenum/all/ <comment><USER2> Christopher Hitchens: Even wierder and more despicable than you thought.

This self-promoting buffoon should be exposed for the what he is. He went to Lebanon last year to film his one-man crusade to impose Liberal Democracy on the "unwashed Arab masses", he made a fuss about being attacked by Nazis in _Lebanon_! In reality, him and his photographer went to certain Beirut neighborhoods and provoked the locals until he was slapped around by teenagers.

Let me say that again: Hitchens went to the Middle East to pick fist fights. Yeah, very intellectual.

<http://www.google.com/search?q=Hitchens+Lebanon+brawl>

:-|

I value his take on North Korea as much as I value Octomom's opinion on Cuba.

</comment><comment><USER3> Most countries that have limited interaction with outsiders are often very racist. We are very lucky to live in an open society and in addition we are a country of immigrants that is why we don't see too much of that. In fact, we are the exception and not the norm.

<comment><USER4> I assume that by "we" you mean Americans. It sounds a lot like you are saying that America hasn't seen much demagogy, racism or xenophobia which sounds like a delusion of the type that might disprove your point.

<comment><USER3> Some part of the country, i.e. the red states are still having this problem but overall, we are much better then we were. The bottom line, we are a working progress.

<comment><USER5> I'd actually disagree, I think overall America is very tolerant of immigrants as long as they make some effort to integrate into society.

Also, can we stop with this red/blue state madness -- it's very hard to generalize the views of a given state, especially large populous states.

<comment><USER6> How about wording it like this: the density of racists in a red state is statistically significantly higher than that of a blue state.

But I'd agree, considering America is a salad bowl of cultures, it's probably more tolerant than most homogenous countries out there. Of course being a salad bowl, you'll get more _collisions_ too which is why it may _seem_ like America is less tolerant of different cultures. More homogenous countries simply have less foreigners to be racist towards.

<comment><USER5> Here's a map of hate groups: [http://www.splcenter.org/intel/map/images/splc_hategroups.pd...](http://www.splcenter.org/intel/map/images/splc_hategroups.pdf)

As you can see the blue states and the red states are fairly well represented, with CA having the most. The southern states which are typically red have a significant amount. But the western states that are red have less than the western blue, so as I said before I don't think you can draw any conclusions. Also the majority of the southern red states used to be blue, so that's something else to consider.

<comment><USER7> This is totally meaningless though. The existence of a hate group is just a geographically local group of people who are racist AND like forming clubs.

A map of the per-capita hate crimes committed would be more educational, but again it would not be a measure of racism. To have hate crimes you need 2 things, people who hate some group, and members of that group they can act against. In the areas that were most heavily racist they chased out all hated minorities 50+ years ago.

The town I grew up in had 5000 residents and no black families (actually, some have moved there, but only when I was in about 3rd grade did that start). I didn't see any racism at all in that town, but how could I? Driving 30 minutes away to the nearest sizeable black population center and you see tons of it. Look at the school zones and you see tons of it. Hate crimes were non-existent however, just because you can't hit someone who isn't around. Finally, if one did happen, how would it get reported? In areas where hate crimes are super rare I would assume they would also be under reported since the justice system would be unfamiliar with recording and prosecuting them.

Finally, saying one area (red states) is 'more racist' than another is the exact same in-group out-group dynamic that feeds racism in the first place. Due to the stuff I listed above, I would expect blue states to have far more racist acts, just because there are more cross-race interactions and boundaries (which are the only 'opportunity' people have to commit racist actions). There is no discrimination against minorities for jobs if there are no minority applicants, and there is no discriminatory school zones or public service allocation if there are no minority communities in a city. The unanswerable question is, "Would there be if there were minorities there", but that can't be captured in these sorts of statistics.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Author's name is "Hitchens". The original title refers to the North Korean _regime_. Among the 382096 reasons not to make up your own titles.

<comment><USER9> I don't think a reasonable person who knows anything about NK and its regime would take away from the title that Hitchens is calling the North Korean people crazy and despicable.

<comment><USER8> The point is, there's no good reason, most of the time, to leave it to the interpretations of a 'reasonable person'. An equally reasonable person can just leave the original title alone - problem solved. Oh and spell the author's name correctly.

<comment><USER9> I think it's pretty fair to write using some assumptions about the audience (ie that they are 'reasonable').

<comment><USER8> I think it's pretty fair (and easy) to write accurate, correct titles. We can dance all night about what's 'reasonable' and what assumptions and on and on. The article was poorly retitled. No getting around that.

</comment></comment></comment></comment></comment><comment><USER10> I just started reading this, but I want to add something immediately: It's my understanding that South Koreans are also very racist. So I'm not sure if the regime is at fault for that one.

...

Yeah, I dunno. It's Hitchens and he seems to be writing a sideglance apologia for Communism. (As in, "See these shrunken slaves: It's _nationalism_ that made them this way, not Marxism.") Nothing new really. China is doing something very similar actually, and they have been replacing Communist rhetoric in schools with nationalistic rhetoric, and for them it seems to be not a problem.

<comment><USER11> The difference between China's democides/labor camps/external aggression and North Korea's democides/labor camps/external aggression is largely that China got rich doing it and North Korea got poor. (Well, "rich", at any rate. About 10% of China is a fast growing dynamic economy which has eventual aspirations of being a world power -- and the other 90% lives in grinding poverty.)

Anyhow, since China is rich, it is considered sort of impolite to say "China, please stop committing genocide" or "Hey, China, working people to death in your laogai camps is sort of uncool." (This is sort of related to how it was tres gauche to mention that Soviet Russia was a brutal, genocidal dictatorship and how a huge portion of the American and European intelligensia supported that model and wanted it for their own countries. Which is itself related to it earlier being quite undiplomatic to talk about what the Austrian chap was doing in addition to his economic reforms.)

Be that as it may, reluctance to confront evil in China should not lead to reluctance to confront evil in North Korea.

<comment><USER12> That's a very japanese point of view you have there. Why does nobody speak of the exploitation of china (nanjing massacre, etc) as part of what made Japan rich.

<comment><USER11> People do discuss Japanese wartime atrocities. Frequently.

It would have been a bad example for the above post, though, because people actually opposed Japan's conduct in Manchuria _contemporaneously_ (whereas China's conduct in the status quo, the Soviet Union's conduct for its entire existence, and the first few years of German fascism were/are dealt with limp- wristedly when they were not actively applauded).

For example, the United States hit Japan with a steel/oil embargo after Japanese refused to withdraw from Manchuria, which was the proximate cause of Japan deciding to go to war with the United States. (Funny little historical note: the US didn't actually intend the embargo to be a total embargo. When it was conceived in Washington it was as a temporary cutback to force Japan to the negotiating table. A minor bureaucrat misfiled something, though, and the planned periodic review never happened, which turned it into a total embargo. "Whoops.")

As an aside, essentially none of Japan's present economic prosperity is owed to wealth stolen from China. Most of that got very comprehensively burned, along with the rest of the country. Japan was pretty desperately poor postwar prior to the US' Korean war buildup, which they largely sourced in Japan, re- laying the industrial base which ignited the Period of High Economic Growth (高度成長期) that brought Japan from "substantially poorer than Mexico" to "really freaking rich".

Apologies for the lecture.

</comment></comment></comment></comment><comment><USER13> Hitchens' central claim thesis is that North Korea is really right-wing since it's racist and militaristic. In making that claim, his problem is that N.K. is a communist dictatorship, and he can't find any way to spin that as right- wing. The problem then reduces to showing that it's not really communist.

He does this by saying that, since one recent government document doesn't mention the word communism, the country's not really communist at all. No mention about whether actions count more than words, or how that worked in years past, when there was plenty of racism and plenty of mentions of communism.

A few notes: _All_ dictatorships are militaristic in some important sense. That's because all dictatorships crush dissent, and sometimes you need a tank when all else fails.

As for racism: Stalin launched numerous pogroms against the Jews (and, in a nice Stalinist touch, put a jew in charge of the operations). The Soviet Union had only one non-Russian on the Central Committee, despite a large number of ethnic minorities in the USSR.

A guess on the Deeper Subtext behind this mess: "Yeah, I supported the war in Iraq, and I've lost readers like crazy. But I'm really a leftie. Here, watch me establish my _bona fides_."

<comment><USER14> > No mention about whether actions count more than words, or how that worked > in years past, when there was plenty of racism and plenty of mentions of > communism.

Good then you agree that North Korea was never a proper communist state since it never really showed any of the classic characteristics of communism.

</comment></comment><comment><USER15> I watched this documentary some time ago, [http://www.vbs.tv/watch/the-vice- guide-to-travel/vice-guide-...](http://www.vbs.tv/watch/the-vice-guide-to- travel/vice-guide-to-north-korea-1-of-3). Pretty cool, strange country.

<comment><USER16> The one on Liberia was great too: [http://www.vbs.tv/watch/the-vice-guide-to- travel/the-vice-gu...](http://www.vbs.tv/watch/the-vice-guide-to-travel/the- vice-guide-to-liberia)

</comment></comment><comment><USER17> Those curious about North Korea may also find the story of Joe Dresnok, the last American defector to-North-Korea still residing there, interesting.

<http://en.wikipedia.org/wiki/James_Joseph_Dresnok>

CBS's report, with video:

[http://www.cbsnews.com/stories/2007/01/25/60minutes/main2398...](http://www.cbsnews.com/stories/2007/01/25/60minutes/main2398580.shtml)

Some may also remember from the news a few years ago another Korean War defector, Charles Robert Jenkins, who was able to move to Japan with his wife in 2004 during a period of Japanese-North Korean rapprochement:

<http://en.wikipedia.org/wiki/Charles_Robert_Jenkins>

His wife had been shanghai'd from the shores of Japan by North Korean agents to help train their spies.

</comment><comment><USER18> This seems kind of OT for hacker news.

</comment><comment><USER19> But so is South Korea.

</comment><comment><USER20> This author holds an air of bias about him. Even in the title "...more despicable than you thought" suggests this is more of a tabloid than anything factual.

I'm interested in knowing what's going on in North Korea, and he does have some facts in here, but on the whole I'd prefer something a little more informative.

<comment><USER11> Alright, here's some factual discussion for you. I'm about to make claims which you may not think I mean literally. I mean them literally.

1) North Korea runs concentration camps, in which inmates are worked to death in mines and factories to increase industrial production.

2) North Korea is a military dictatorship which has used democide via famine against its own people to make it impossible to resist its dictatorship. If you're on the winning side with the army, your family gets to eat better than grass. In the late 90s a famine killed about 3 million people. That's the regime's estimate, incidentally. (Communists tend to have rosy accounting about such things.) The population of North Korea is about 23 million.

3) North Koreans are some of the most desperately poor people on earth. They don't have much, and what they do have gets forcibly expropriated to maintain one of the largest standing armies in the world. Its number one enemy is its own people, though if you believe the propaganda it has crushed the imperialist Yankee under its boot and exacts tribute from him, which explains all the bags of rice bearing American flags without which the population would again starve.

4) The regime is supported by a personality cult of Kim Jong-Il and his father, Kim Il-sung, who has been essentially deified. That is not an exaggeration -- North Korean propaganda has attributed the creation of the world to him.

Any educated person should know the above four facts already. If you know them, "Wait, hold on a second, let's not rush to judgement or use overly emotional language when discussing this country" sounds like you're so open- minded your brain has fallen out.

<comment><USER14> You forgot to mention the national religion/ideology of Juche (in support of your #4 point).

<http://en.wikipedia.org/wiki/Juche></comment></comment></comment>