Open Letter to Tim Cook - <AUTHOR> https://petersphilo.org/2016/10/29/open-letter-to-tim-cook/ <comment><USER3> Best comment [1] I read a couple of days ago:

>One thing constantly said to founders here is "don't let a vocal minority come in, tell you they love your product, and then turn into bullies that tell you how you should make said product. You never made it for them; they aren't your market. Don't get confused into thinking they are, just because they're loud." I think that about sums up the relationship between Apple and software developers who use their hardware.

Which is good advice for Tim Cook and all of Apple. You don't want to end up making the MBP version of this [2].

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

[2] [https://www.geekculture.com/joyoftech/joyarchives/2236.html](https://www.geekculture.com/joyoftech/joyarchives/2236.html)

<comment><USER4> Are professional users really a "vocal minority" of the MacBook _Pro_?

I'm not a developer. I run an online business and use a MacBook Pro for video recording, editing, and general website admin.

I needed the extra processing power, and the ports. The new model has me apprehensive, though I'll certainly look at it.

What's the target demographic this new MBP is serving, though?

<comment><USER5> > What's the target demographic this new MBP is serving, though?

I've been thinking about this a lot lately.

I think the new MBPs are, well... not good, considering the price. I really like my 2012 MacBook Air. It's still going strong, although I wish I had went for the 8GB of RAM instead of just 4.

But when I was talking about the new models with my friends and coworkers, a lot of us shared one thought: We don't think it's worth the money, but we can't spend $2000 on a laptop anyway, so whatever.

So we're not the target market.

It seems that people here don't really want one either, so 'Developers who frequent Hacker News' also doesn't seem to be the target...

It seems like maybe it's just 'wealthy people who want a sleek-looking, well made piece of hardware', which it is. Maybe it includes businesses that will provide one to their employees, and will buy the extra dongles and whatnot. There's probably a lot of them in each group. If I had the money, and didn't care that it didn't have the fastest processor, the ability to have a crazy amount of RAM, and would need an extra damn cable just to connect my iPhone, I would love to buy one too.

One thing seems pretty certain, and it's that there is room for a competitor to jump in and make a great laptop for the people who are looking for something different. I really hope someone can make it work.

<comment><USER6> I really wish I agreed with you. Unfortunately, there's literally nobody who can step in here and make a truly competitive product, since it won't run the same OS.

I mean, I develop for the web, so I could very well switch to Windows or Linux at this point, and after some pain points, I'd probably be back up and running and around 90% as happy as I was before. But that last 10%, where things don't work _quite like_ I want them to, well, that would grate. And over time, I'm probably going to grow to hate that machine.

Plus, what about people who make iOS apps? Or heck, even just develop for the Mac? There's literally no other option than a Mac.

This is a big part of why people are so upset, is because we _can 't_ just wait for a competitor to jump in and save us. We've let ourselves become dependant on Apple, and -- like you put it -- we seem not to be the target market anymore. As much our fault as theirs maybe, I'm not one to judge, but it still sucks.

<comment><USER7> There's also a 10% that works better on Windows than on Macs and you're not currently aware of it. I've switched between Macs and Windows and Linux as my daily driver several times and there's always an annoyance when you switch and everything doesn't work the way you want t. But it goes away quickly, within days. And then the next time you switch you're again annoyed that things don't work the way the new way you're used to. Actually, I've been mostly using Macs for the last 4 years and I still think window management and the Finder are inferior to Windows'.

<comment><USER8> I agree re: win > macOS on window management but why do you prefer the file explorer? The lack of tab support is a major pain point for me on the windows explorer, that combined with the great file preview support that Finder has makes it much more useful to me.

There may be some features I'm missing though, I only use Win10 for gaming.

<comment><USER7> Hmm, you're right, Finder has a lot of good things over Explorer, also search is mostly superior. I get annoyed by things like forced hidden system folders, fewer fields available for file sorting (I've been annoyed by being unable to sort images by resolution), how they try to hide the path of files which is especially annoying for search results. I guess it's another of those things where some things are better and some things are worse.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Not to beat a dead horse but I'm also considering abandoning Apple as I'm due an upgrade now.

I'm still using a MBP from 2010 that I added an SSD and some extra ram too, it's still going strong although showing it's age it has served me very well over the years.

Gluing parts in that used to be user replaceable, models now are 16gb of ram only (can someone explain this one?), thinness for thinness sake, removing standard ports etc. I can live with non-apple hardware but I would much prefer to use MacOS. Considering dual-booting a hackingtosh/linux.

I get the impression they are trying to transition their laptops to life cycles closer to their phones and I won't be coming along for the ride.

<comment><USER10>
      >models now are 16gb of ram only

Do you have a use for more than 16gb? Serious question.

<comment><USER11> I'm often noticing a ton of swapping going on, causing serious system-wide lag, when I have a few dozen Chrome tabs and two VM's running in addition to a few other standard programs which use a lot of memory (Slack).

It's not hard to rub up against 16GB in a standard developer workflow.

<comment><USER12> > a few dozen Chrome tabs

There's your problem.

<comment><USER13> I agree. Chrome is a big bloat on Windows and OS X/macOS. I find Safari to be quite lean (memory and energy consumption) on OS X/macOS. I miss that Firefox is not keeping up since it's the most flexible browser for my use.

</comment></comment></comment></comment></comment><comment><USER14> Apple built its PC business on the backs of creative professionals because they were among the few groups who thought Macs were worth more than $0.00, thanks to its superior experience with Adobe's creative suite when compared to Windows.

Apple now has a dominant position in the PC market, not because they catered to creative professionals, but because they listened to their initial creative audience and focused on making their computers better.

Apple doesn't focus on the Mac Pro because they want to abandon creatives, it is simply because the Mac Pro doesn't enable any meaningful use-cases not served by the 5k iMac or its notebook line.

Form-factor, screen quality, battery life, weight, speed of I/O, and all the other design goals the author dismisses, are perhaps the most important metrics meaningful for the current generation of laptop buyers, including professionals.

<comment><USER15> A lot of video shops also used Mac extensively for decades. It seems it wasn't only good marketing, they were alright for this profession.

Saying this lightly, I was a kid in the 90s, but I do remember a lot of ads for large Mac stacks (towers, disks, video cards, etc). Tiny SGIs in a way.

<comment><USER16> > video shops

Presumably you mean video editing shops and not blockbusters? Our video shops were green screen terminals on DOS until... well until they ceased existence.

<comment><USER15> I couldn't say which precisely, maybe only part of the market, maybe some part of the post production pipeline. Surely lots were done on Flame like systems, which AFAIK weren't Mac based.

</comment></comment></comment></comment><comment><USER17> Hello All, i am the OP of: [https://petersphilo.org/#post-71](https://petersphilo.org/#post-71)

Just wanted to add a couple of things: Pro hardware can exist and has existed at Apple for most of its existence, please look back at the post and comments for evidence..

My point was not that Apple should choose between 'pro' hardware and consumer/boutique hardware, in fact, Apple has a long tradition of keeping both happy..

Maybe Apple really isn't interested in the Mac any more, or even in developers. But who makes the apps, the games, etc..

Why not keep power users, keep their 'street cred' as the 'creative platform' and make a little (a lot, actually) scratch on the side...

Old geezer cries out: Can't we all just get along?

<comment><USER18> Developers on Mac were always using the same computers as everyone else.

I don't remember having a Mac Classic Pro or a LC Pro and so forth.

<comment><USER19> Very odd your selective memory. You don't remember the Macintosh IIfx?

<comment><USER18> No.

Back in those days the Mac was almost nonexistent in Portugal.

There was just one official importer, Interlog, and buying anything Mac related meant traveling to Lisbon.

So the first time I actually programmed on a Mac was in 1994, on Classic and LC models.

The only ones available on the university campus on a single room! I think there were around 10 there.

The remaining ones were located in the IT department, used by the secretaries and a few teachers.

<comment><USER19> Ah! Boa tarde, então ;)

So you were using education-targeted macs, but there were always pro-level computers from Apple ever since the very early days (Lisa, Apple IIGS, Power Mac G3, G4, G5, etc). It's only once they discontinued the cheese grater Power Mac that things started to get pretty bad for users who need expansion and massive power.

</comment></comment></comment></comment></comment><comment><USER20> I'm looking forward to seeing what John Gruber over at Daring Fireball will have to say about all this, since his perspective tends to lean heavily toward giving Apple the benefit of the doubt and all I've seen so far is relentless negativity about the new MacBook Pro lineup.

Personally, I'm extremely disappointed - I've been desperately holding off buying a new MacBook Pro to replace the aging mid-2012 non-retina model I'm still using, but what would I really be upgrading for now? I already have 16gb of RAM and a big SSD, sure I don't have a Touch Bar but I don't give a shit about it anyway. The only thing I truly need is a retina screen and for that I could just buy a second-hand MBP for substantially less money, and I wouldn't need to buy a thousand dongles.

<comment><USER21> Same here. I only wished for 32 GB RAM (would happily pay for 64 GB even with Apple premium, but hey).

</comment></comment><comment><USER22> I agree with the gist of the letter. Watching "Truth in 24" makes me appreciate Audi so much more.

I thought this snippet from Jason Snell summarizes the new MacBook Pro offering well:

 _" I don't quite get the existence of the low-end, non-Touch-Bar-having 13-inch MacBook Pro. On stage, Phil Schiller argued that it was essentially a Retina replacement for the 13-inch MacBook Air, and I can see that. But it's $500 more and is it really a MacBook Pro? Does the MacBook Pro line need to have this extra product attached at the bottom of it, lacking the most interesting feature of the rest of the line?_

 _" Then again, it's not really a MacBook either, because it's heavier and has two Thunderbolt 3 ports rather than the one USB-C port on the MacBook. It's a tweener product and Apple has apparently decided that it doesn't want to introduce another new name to its laptop line, so MacBook Pro it is. But it's weird. Not necessarily bad—it really does fill a niche that's between the full-on MacBook Pro and the MacBook—but weird nonetheless."_

[https://sixcolors.com/post/2016/10/a-few-quick-thoughts- abou...](https://sixcolors.com/post/2016/10/a-few-quick-thoughts-about- thursdays-mac-event-in-cupertino/#theotherothermacbookpro)

I think this is likely the beginning of a correction in Apple's laptop offerings. MacBook/MacBook Air/MacBook Pro was a departure from the consumer/pro split. Apple was overdue in updating the MacBook Pro and got a bit caught in the power/CPU/memory state of current offerings. For a lot of people the new MacBook Pro will be good. Just not the Pro (some) are looking for. Hopefully we will see a true Pro model next Fall.

<comment><USER23> Agreed on the price. I was holding out for a retina MBP/MBA around the $1,000 mark. As things stand though, I'll probably add another 4 GB ram to my 2011 MBA and use it for a few more years.

</comment></comment><comment><USER24> The 15inch MBP has i7 Quad Core processor, Radeon graphics and double the RAM than the default 13inch models. This is not a minor jump in performance. I agree that they do sometimes prioritize size, thickness and beauty over performance but I don't see what else could go into the 15inch MBP that it currently lacks?

<comment><USER25> The new Macbooks are so close to being great it's annoying. The specs are fine by me and I'm neutral on the Touch Bar, but the price and lack of ports just makes them not worth it. While I'm glad Apple is trying to move the industry to use USB-C for everything, it wouldn't had killed them to include some USB 3.0 ports and an HDMI port.

It's going to be at least 3-5 years until the industry uses USB-C and by that point a new series of Macbook Pro will have been released.

This applies to the non-Touch Bar Macbook as well. Price and specs are fine, but why does it only have two USB-C ports?

<comment><USER26> > _it wouldn 't had killed them to include some USB 3.0 ports and an HDMI > port._

Magsafe, USB Type A, HDMI, and Mini DisplayPort / Thunderbolt 1/2 are all literally too wide to fit within the width of the new laptop's sides. They would have needed to make the whole laptop noticeably thicker or otherwise differently shaped to fit any of those. The headphone jack barely fits.

<comment><USER27> My current laptop is thinner than the new 13" Macbook Pro (bearly, by just 0.5mm). Way thinner than the 15" Macbook Pro.

Yet it has full sized USB 3.0 ports, a USB-C port, SD slot and an HDMI port.

The only reason those ports don't fit on the new MacBooks, is because the bottom curves up near the edges.

<comment><USER22> Oh, don't tease! :) What's your current machine?

<comment><USER27> Nothing special: Acer Aspire S.

And it's far from the only ultrabook around that thickness with those kind of ports. I'm just amused that it has more variety of ports than the Pro machine which costs 3 to 4 times as much. (though, no thunderbolt 3)

But it's not even in the same market as the Macbook Pro, it should be competing with the Macbook. I was kind of hoping to upgrade it to a Macbook Pro when the new model was released.

</comment></comment></comment></comment></comment></comment><comment><USER28> For me it comes down to a simple thing. When you launch 2 of your major products separated by 2 months (iPhone and Macbook Pro) and they can't work together without an adapter because you are using different ports in the iPhone and cannibalising ports in the MacBook Pro, then your company by definition, lacks vision and aim.

We can apologize Apple all we want, we can pretend there is a greater vision going on behind the scenes, but sorry, it just isn't, I can't even use the headphones from my new iPhone to listen music/sound in my new MacBook Pro (not alone connect my iPhone to the MacBook Pro to charge/transfer media with the lightning port) without an adapter.

That's an utter lack of vision, development path, aims of the products. It's literally a mess.

</comment><comment><USER29> The reason motorcycle companies invest in racing is not just to establish cred, but to actually push the boundaries of technology and innovation that they can then incorporate into their "consumer" models.

A "true Pro grade" computer offers no such advantage - in fact most of the innovation comes from making things smaller and thinner - as soon as you take away the weight/size restriction, sure you can make supercomputers in a box, but it's also pretty darn easy to do so.

And the final point - consumer bike customers usually watch bike racing, and probably dream of being a pro bike racer - few Mac customers could care less about "digital creative professionals" and don't really want to emulate being one of them.

<comment><USER10> _few Mac customers could care less about "digital creative professionals" and don't really want to emulate being one of them._

What do you think most Mac users want?

<comment><USER29> A next-gen iPhone.

</comment></comment></comment><comment><USER30> I feel like Tim Cook decided to double down on the "Apple as a luxury brand" business model.

If that's the focus, then it makes sense to emphasize thinness, aesthetics, and raise the price at the same time.

Microsoft on the other hand seem to be working hard on winning developer mindshare again, as they know they can't compete with Apple in the branding space.

I hope the surface book 2 will have a 32gb option.

<comment><USER31> Alas without the 3-finger drag gesture on the Surfacebook, it's a non-starter for me. It's horrifying to think that even though the hardware supports it, that gesture is patented and cannot be used.

</comment></comment><comment><USER32> Given the Mac's history in the last few years, and the fact that it only accounts for 12% of Apple's revenue and 8% of shipped units, I see two scenarios:

1) Apple gets out of the Mac business in a few years - Apple is not the kind of company to wait patiently for its product lines to run into the ground. The only reason they really need the Mac is Xcode for all those iOS apps that need to be developed. I wouldn't be surprised to see an Xcode for iCloud, or maybe even some kind of partnership with Microsoft (Visual Studio already lets you build iOS apps, just not in Swift).

2) Apple is working on the Mac's second act (third?), which could only be a switch to ARM. It makes business sense because a lot of the R&D will be united between iOS and Mac - making those A9s and A10s sure isn't cheap. And it explains the lackluster progress from customers' perspective.

My bet is on #1, so all the criticism about the MacBook's ports or RAM is just barking up the wrong tree.

<comment><USER33> > The only reason they really need the Mac is Xcode for all those iOS apps > that need to be developed.

This is simply not true. MacOS is at the very least a companion OS that gets more and more tightly integrated with the iOS devices. App handover, now also copy/paste, etc etc. An iPhone without a Mac loses many of its advantages over Android. Let alone that there are no signs Apple is going to abandon the Mac business as you say, the recent MBP announcements being the best proof of it.

On (2) switching to ARM: I personally don't believe in this, because this will break a lot of software and will seriously piss off a lot of people. The switch to Intel was relatively easier back in the day because the Mac user base at the time was laughable and there was a big promise that the Macs will become a lot more powerful. I know about the bitcode and stuff, but the more I think about it, the less I believe Apple is prepared to make the switch for its laptops and desktops. Maybe, just maybe one separate product line like MacBook Air switches to ARM, but then what's the point?

<comment><USER34> The switch to x86 from PPC turned out to be such a ridiculous win in terms of overall performance and compatibility that the community's initial reaction (omg! Nooooo!) was defused.

Apple also did a good job with Rosetta, which they kept around for quite some time. You'll note that Intel has folks that have done binary translation of ARM in an attempt to grab some mobile market share. The same could be done on the x86 => ARM side.

But it only works if the result is fast enough. We're probably still not that close today, but what odds would you take on 5 years? If most of the software folks are writing on macs is for other Apple ARM-based products, it doesn't sound so crazy to emulate x86 for people doing "server" work.

</comment></comment></comment><comment><USER35> To be honest that zoolander phone is utterly excellent and if it were a real thing i would buy it in a heartbeat.

If only so i have a phone i can use for phone calls where i don't need to worry about the battery running out, and which i can stuff into any pocket on my body.

<comment><USER36> I'm sorry to burst your bubble, but if that Zoolander phone were real, the battery on it might not even last a day.

<comment><USER35> Depends on whether you stuff an entire android OS into it. With only the minimum in user amenities most of it should still be the battery for a drop of hardware.

</comment></comment></comment><comment><USER37> Car companies don't sell their race cars.

<comment><USER38> But they do sell to the public AMG, Motorsport, and TRD versions of their regular car lines even when they are not 'big sellers'.

[https://en.wikipedia.org/wiki/Mercedes- AMG](https://en.wikipedia.org/wiki/Mercedes-AMG)

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

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

just as Apple used to have

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

<comment><USER39> I don't know how to explain it -- but as an enthusiast, I sorely, sorely miss the S2000 and hope Honda comes out with something similar. It really feels like it lost something without it.

<comment><USER40> the new type R is probably the closest they'll make

</comment></comment></comment></comment><comment><USER13> In the recent keynote about the MBP refresh with the TouchBar and the professional apps (like Adobe Photoshop and Final Cut Pro) being adapted to it, Apple showed an MBP setup with a couple of 5K LG monitors (which Apple mentioned it worked with LG for) for professional work, along with external RAID storage from Pegasus. The message I got was that MBP is the pro line, which can be "expanded" on the display and storage fronts. Unfortunately, it still leaves RAM and internal storage stuck (pun intended) with whatever came in during the purchase!

At the end of the keynote, I was left with the impression that the Mac Pro is going to be canned in a few months, probably along with the Mac mini - <USER2> disappear silently from the store. Even the iMac may get canned in a couple of years, leaving the portable MBP as the sole Mac available. This may be the leading act for introducing an ARM based MBP, thus eliminating the effort to deal with a refresh of other Macs to ARM based chips.

I've expressed my frustration here on this topic before. Apple seems unwilling and incompetent to put in what it takes to show that it still can do and maintain things well.

<comment><USER41> If you're going to be using the machine professionally and hooking up a couple 5k monitors for doing video or high end photo work, why not connect an external RAID or NAS as well? Are there use cases where one needs to carry around many terabytes of video portably but without access to a 5k monitor?

</comment></comment><comment><USER42> What is going to happen imho:

Apple is doing and will do a shitload of money anyway.

People will buy Apple stuff anyway because people already are: unless you are an Apple user, you should know how "religious" (I'm being kind here) Apple users are. They have been consciously been buying outdated and overpriced hardware until now, and they have been super proud about this too.

So this is going to last anything from five to ten years at least, still imho.

I have no true idea whether newer apple stuff is so bad or not (besides the idiotic drop of the audio jack on the iPhone). But Apple users have been subject to this Apple-isy for literally decades.

I have a suspicion that now that Apple Macbook Pros are so widespread, complaining about Apple is the new hipsteria.

This is what I feel, reading the news, on a foggy October, almost-November morning.

</comment><comment><USER43> Meh. With $200B in liquid assets, Apple can do whatever it feels like. If it ever did find itself in the doghouse (unlikely), it could survive there for decades while it figured out how to recapture the mojo.

</comment><comment><USER44> I don't get the racing analogy. It's not like you can buy a Formula One racing car.

If Apple started making super computers to play chess then the analogy would be valid.

<comment><USER45> Author says in the comment that F1 is the only competition where you can't buy what is being raced - every other competition requires vehicles that are actually sold.

Besides, you can't buy an F1, but you _will_ buy fast cars from manufacturers based on their F1 results. Ferrari could ship a Jeep tomorrow and people would still buy it thinking it's the fastest Jeep ever.

<comment><USER46> This is true in name only. NASCAR, despite its name, races cars nobody produces. And you can't buy a MotoGP-spec motorcycle without essentially ordering one custom-built. The same is true for rally car races.

</comment></comment></comment><comment><USER47> Outside HN I really haven't seen posts complaining about the new Apple offerings. So it could be Apple only pissed off a particular type of developers.

<comment><USER45> Reddit is ablaze. The first comments on Ars were very snarky too.

<comment><USER47> What subreddits by the way? (I want to have a look)

<comment><USER45> On /r/apple, keynote megathreads were an angry affair. All subsequent MBP- related threads, even the ones with positive titles, are full of people discussing alternatives. The "preorder" thread has been hastily unpinned.

These are the people who spent a year posting almost-daily "waiting" threads, and who would normally be discussing how to cheat or sell their souls to get the latest gizmo right away. I expect people in /r/pcmasterrace are laughing.

</comment></comment></comment></comment><comment><USER48> I'm sure that besides what appears in the various media outlets, this being one of them, plenty of people are communicating their dissatisfaction directly to Tim and others in Apple management. But I've come to the conclusion that they don't listen to customers, and they don't really care what we think. So rather than write emails to Tim, I'd like to try and start communicating with Apple's board. Any ideas on how to reach them?

<comment><USER49> Even if you could reach them, what arguments will you provide them with to even start to consider pushing for a change of plan? As far as they can predict (and they are probably quite knowledgeable about the market) people will buy their laptops and they will make a neat profit. That is, Apple upper management is doing its job — making a profit; having some long term strategic vision.

They are undoubtedly aware of a certain amount of discontent being vented on the internet, and will most likely consider placating it (not addressing it) a process that needs to be looked into to.

If you want to make a difference, vote with your wallet. System76 makes nice laptops, and Dell's XPS line isn't too bad.

</comment></comment><comment><USER50> Apple inverted the previous Christmas-like feeling of "we have something new for each of you" to a "we've removed something you personally liked" that seems to cover many of us.

I haven't commented yet at all since I think several issues aren't actually as big as people are concerned about them, but overall, I'm frustrated with the situation for computing.

I don't know how Apple works internally, but for me the problem is clearly not Tim Cook, but rather Jony Ive. He seems to be obsessed with some sort of purity that I appreciate in design. However form vs. function is too much of a tension to be bearable within one person. I think Apple lacks folks who weigh in on the functionality side of things. Why? Becasue Ive is magically associated with Jobs, Ive is almost like some medium to get to Jobs, or at least that's how I think some folks perceive him.

In reality Ive seems to be the person who'd rather have a nice TouchBar that spans the whole width of the keyboard instead of keeping just the escape key, which is obviously used much more than the other function keys.

I thought about this a lot and by now I know I'll definitely be okay with it, especially since there's no other non-tactile key near it (meaning my body will know I've hit escape once it touches the flatness that doesn't give in).

Another personal thing for me is the Magsafe. I really liked it not just as a trip-proof charging solution, but also for the way you connect it. It's so effortless, it's fun again and again. It's one of these micro-reinforcements that makes us love products. And again I can see the conflict. The new beauty is that you can dock so many devices and charging with just one single cable. I think that's a pretty great feature.

If there was more functionally thinking folks with power at Apple, they'd probably suggested to keep a Magsafe and allow the MBP to be charged by either that or over the USB-C. But you see how "ugly" even this though is, right?! It's a compromise and so in the end I think the current MacBook Pro is the result of not making any compromise in any of these decisions and that yields the product they showed us.

So part of me hates this chasing of pureness since I see it almost as some neurotic obsession about the visual aesthetics. I guess it would take a lot of self-confidence for a company like Apple to be okay with things that could be easily portrayed as compromises by the press. On the other hand I realize I'm pathetic and I'm not really working on improving any of this, so I thank Apple for pissing us off because it's somehow stimulating as well. (Even if it's just stimulating as in "work harder", so I can buy one of these without thinking too much about it).

<comment><USER51> I think you're right. If they would have kept MagSafe they could have kept the HDMI port on the other side. But then the MBP wouldn't have been symmetrical. That seems to be the current obsession with Ive. The iPhone 7 is symmetrical as well, even if the new speaker is fake.

</comment></comment><comment><USER52> k. - Tim Cook

</comment><comment><USER53> Because remember those popular Mac|Windows commercials from a few years ago? If you want a stodgy get-stuff-done kind of thing then you'll have to talk to some Microsoft nerds sporting antique crap like headphone jacks. Apple only cares about how hip you look, with your brand new airpods and all your disposable income.

</comment><comment><USER54> As a professional developer, I would have loved to stick with Apple laptops but clearly us pro's aren't one of their target demographics, maybe we never were. (And I don't mean that in a snarky way.)

Metaphorically speaking, sometimes when a girl is nice to us, we think she's more interested in us than she really is. I think Apple was just "being nice" to us in the past and we took it the wrong way.</comment>


Show HN: Big list of bad crypto - <AUTHOR> https://github.com/luijoy/big-list-of-bad-crypto <comment><USER2> There are so many bad cryptocoins that trying to build an "exhaustive" list is futile.

Are you distinguishing between plain scams, clueless founders with good intentions, penny stock coins that are easy to manipulate, joke coins, heavy premined coins, centralized coins that pretend to be a cryptocoin, coins with a dead chain, ...?

<comment><AUTHOR> Very true, I think the easiest place to start is with plain scams and dead chains. My idea was to provide a warning to newbies of projects you really should steer clear of.

<comment><USER3> Might be worth adding a small note or identifier beside each submission to explain why that particular coin is considered to be "bad crypto".</comment></comment></comment>


Puppet Labs acquires open source tool from author - <AUTHOR> http://www.puppetlabs.com/mcollective

<comment><USER2> Just wanted to chime in that puppet is an awesome tool if you're trying to manage a few or more servers. (Hell, even if you manage a single one but want re-deployment and roll-out to be consistent)

I also had puppet configs at one point to help get new OS X desktop and laptop settings sane after purchase.

<comment><USER3> Well I just tryed writing a provider for puppet and I found quite a few bad design choices such as :ensure allowed to be a version, 'present' and 'absent' double purpose variables are bad and this shows in a few providers having to implement checks on a few dual purposed variables. Chef from what I've done so far doesn't have these bad design choices.</comment></comment>


What Is Unstructured Data? - <AUTHOR> https://monkeylearn.com/unstructured-data/ <comment><AUTHOR> Until recently unstructured data was much more difficult to evaluate, due to the hundreds of human hours required to wade through it by hand. Fortunately, advancements in machine learning techniques like data mining, text analysis, and image recognition now make it possible to save time and improve unstructured data analysis.</comment>


Tens of thousands of CCTV cameras, yet 80% of crime unsolved - <AUTHOR> http://www.thisislondon.co.uk/news/article-23412867-details/Tens+of+thousands+of+CCTV+cameras%2C+yet+80%25+of+crime+unsolved/article.do <comment><USER2> I've worked in automated surveillance. No one is watching the feeds.

A trained professional watching a single video feed will miss 90% of important activity after 20 minutes. There are 3 million CCTV cameras in the UK.

Like I said, no one is watching.

But automated surveillance is getting very good. A single server can currently run around 5 video streams. At least that was what Intellivid could do last I spoke with them. They do retail loss prevention. They're based in Cambridge and look like a good company for any hackers. www.intellivid.com

Very, very soon, all of these CCTVs are going to be "turned on". Computers will find anomalous behavior, identify people from their gait (how they walk -- surprisingly more reliable than face recognition), track them across multiple cameras even with large gaps in footage, etc.. Gunshot detection and localization is pretty easy, but goes beyond the camera systems.

There is a book everyone interested in the topic needs to read on the subject: The Transparent Society [http://www.amazon.com/Transparent-Society-Technology- Between...](http://www.amazon.com/Transparent-Society-Technology-Between- Privacy/dp/0738201448/)

The solution is not regressing. The systems are here.

The solution is openness. Almost all government CCTV feeds should be open to public view, for example.

<comment><USER3> >The solution is openness. Almost all government CCTV feeds should be open to public view, for example.

Second that. Just put them on the internet, how hard is that?

<comment><USER2> Very, very hard actually.

justin.tv was happy about 14000 simultaneous feeds. How would you make the data transmission backbone to accommodate something 1000 times bigger?

The big push for automated surveillance is in fact a response to network usage. It used to be that you record onto tapes. Everyone thought that stunk, so they started recording to DVRs. But then you need to transmit lots of imagery to central servers. It would make more sense to put some intelligence on the camera end and only transmit when something interesting is going on. For example, reliable motion detection would only send video when there is something new in the scene.

But either way, yes, everything should be online all the time.

</comment></comment></comment><comment><USER4> "In fact, four out of five of the boroughs with the most cameras have a record of solving crime that is below average."

I really hate when they don't tell you the marginal benefit, just the absolute result. I would assume that the places with the most cameras are the ones with the most crime.

(The relevant urban legend is that some time in 1917, Ukrainian communist rebels noticed that the provinces with the most sick people also had the most doctors -- so they rose up and killed the doctors)

</comment><comment><USER5> On the bright side, horseplay is down 40%, youthful exuberance has been cut in half, high spirits are at an all-time low.

<comment><USER6> The beatings will continue until morale improves!</comment></comment>


Free is the Future of Failure - <AUTHOR> http://carsonified.com/blog/business/free-is-the-future-of-failure/ <comment><USER2> Disagree. Bad product is for failure, good product is for success. The business model doesn't count as much as the product.

Consider yourself as a possible startup founder. Your first question is what to build, what the product will be? If you create something _unique_ you'll be the first on the market so you can start charging. And if you'll continuously improve your product and service to prove you are the expert of the domain you'll probably stay on the top of the market. So you can keep charging.

Once these two criteria -- innovation & continuous improvement -- are not met you'll have to deal with business models and other speculations to sell yourself.

Freemium is more a marketing model than a business model. You are giving away for free the demo part of your product instead of spending on _classical_ advertising. If your marketing is successful you'll sell more products.

Those products who are not replaceable will not be free. You'll always pay for what you consider a necessity.

[Update]

As every business IT has it's own built around ecosystem: there are some successful products, the core of the business; there are newsmakers who do the promo, marketing etc. generating revenues by telling success stories; there are the followers who keep trying with similar but less competitive products generating more buzz than revenues. And there are endless discussions, rants by the watchers who are spending their time/money to express themselves and hear their own voices.</comment>


Why is the Python Language preferred over Ruby in academia? - <AUTHOR> I'm wondering why Ruby is not a top language in academia. Why exactly is this the case? <comment><USER2> Scipy, Numpy, and NLTK. It also came out 4 years earlier and even then Ruby took a bit longer than 1995 to make it's way from Japan to the US.

      [1] Relevant conversation on Quora.
          I agree with the main points:
          http://www.quora.com/Why-is-Python-preferred-to-Ruby-in-academia

</comment><comment><USER3> In addition to what Nadya's comment points to (which is all accurate), the similarity of Python code to common pseudocode plays a role.</comment>


A Guide to Undefined Behavior in C and C++ (2010) - <AUTHOR> https://blog.regehr.org/archives/213 <comment><USER2> For those viewing this thread, one year after this article was written, this was standardized:

[https://en.cppreference.com/w/cpp/numeric/fenv](https://en.cppreference.com/w/cpp/numeric/fenv)

</comment><comment><USER3> And therein lies a major problem with c and c++ compilers:

It's effectively impossible to write bug free code. Bugs in c and c++ usually trigger undefined behavior. It is therefore impossible to write a conforming program, which makes any guarantees in the spec meaningless.

I've hit heisenbugs like these that only trigger when optimized, and resist write(), out(), fflush(), etc and it's infuriating.

Or even worse: programs that no longer work when compiled on a newer compiler. With other languages, you are at least spared from this kind of code decay.

But everyone's writing compilers to the spec so tough :/

<comment><USER2> This is a myopic viewpoint. Undefined behavior is critical for code that needs to be fast. The premise of languages like C and C++ is that the airgap between the language's abstract execution and memory model and the hardware's is thin to non-existent.

*(edit accidentally submitted early)

In this case, the UB is due to the compiler's ability to reorder statements. This is such a fundamental optimization that I can't imagine you're really suggesting that a language without this optimization capability is a "problem." Rearranging instructions is critical for pretty much any superscalar processor (which all the major ones are), and I hate to imagine the hell I'd be in if I had to figure out the optimal load/store ordering myself.

<comment><USER3> My point is that it is humanly impossible to write a bug-free program. In C and C++, bugs usually manifest themselves in UB.

To make matters worse, compilers, ever searching for diminishing returns on performance improvements, have been steadily making the CONSEQUENCES of UB worse, to the point that even debugging is getting harder and harder. These languages are unique in their growing user hostility.

<comment><USER2> Well don't use it. You aren't the target customer because for me, fixing the performance bottleneck is a lot harder than finding a divide by zero, and I certainly don't want to pay for the compiler to check things like divide-by- zero without me asking it to. When I don't care about performance, I reach for a scripting language or something. It's a tool, don't get all emotionally worked up about it.

<comment><USER4> We are entitled to be emotional about it, because we all have to use tools which have the misfortune to be written in C derived languages.

Even if I don't touch those languages for production code, my whole stack safety is dependent how well those underlying layers behave, and how responsibile the developers were towards writing secure core.

Which as proven by buffer oveflows in IoT devices not much.

<comment><USER5> So where is _your_ production code written in Ada or Pascal?

<comment><USER4> Ada cannot tell.

Pascal was replaced by Java and C#.

<comment><USER6> Ada absolutely can tell. Divide by zero throws an exception and buffer overflows are caught by essentially every modern compiler.

<comment><USER4> Sure it can, but that wasn't the question. Rather what happened to the code I have written.

NDAs make us not able to tell about stuff.

What magic variant of C or C++ compiler are you using that throws errors on buffer corruption, unless you are speaking about using code with debugging mode enabled in production instead of using a proper release build.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> This is why if you're currently writing C or C++, please, please look into Rust.

Titus Winters just did a great talk at Pacific++ outlining how difficult it is to understand the quirks of C++. Not even Bjarn can keep all of it in his head. The dice are completely loaded against you to fail and introduce bugs, unintended behavior, and vulnerabilities in your code.

Rust isn't a silver bullet that will suddenly fix your life, but it doesn't deal with the crazyness of C undefined behavior and doesn't have to be backwards compatible. It's designed from the ground up to make comprehensive sense, and safety is a feature enforced for you by the compiler in many cases.

<comment><USER2> > This is why if you're currently writing C or C++, please, please look into > Rust.

Ugh if you read the article, you would know that the UB described here is the same in Rust. There is this massive group think about which languages are safe and/or fast, and whenever an article like this comes up, invariably someone says "Rust!" without really looking at the problem itself.

Personally, I am in wait and see mode on Rust. Without better generics support (aka template <size_t> or similar) and a number of other things, it still doesn't meet my bar for writing fast generic code, and who knows how complex it will be at that point? I say the jury is still out.

<comment><USER8> > Ugh if you read the article, you would know that the UB described here is > the same in Rust.

Rust doesn't have a formal memory model yet, but it's already known that UB in Rust is quite restricted:

[https://doc.rust-lang.org/nomicon/what-unsafe-does.html](https://doc.rust- lang.org/nomicon/what-unsafe-does.html)

Most importantly, UB in Rust should only arise if you're writing unsafe code (barring compiler bugs). Typically, most Rust code is safe. This is a huge win.

</comment></comment></comment><comment><USER9> (2010)

<comment><USER10> Yeah, with modern C++, you can largely choose to avoid using elements that are prone to undefined behavior. For example, rather than native integers, you could use a compatible integer class that checks for division by zero [1]. Or one that checks for overflow too [2]. The Core Guidelines lifetime checker aims to (eventually) make native pointers and references memory safe via (severe, but not quite as severe as Rust) usage restrictions. And when you need to circumvent the restrictions, you can use an unrestricted smart pointer with run-time checking [3][4].

[1] shameless plug: [https://github.com/duneroadrunner/SaferCPlusPlus#primitives](https://github.com/duneroadrunner/SaferCPlusPlus#primitives)

[2] [https://github.com/boostorg/safe_numerics](https://github.com/boostorg/safe_numerics)

[3] [https://github.com/duneroadrunner/SaferCPlusPlus#registered-...](https://github.com/duneroadrunner/SaferCPlusPlus#registered- pointers)

[4] [https://github.com/duneroadrunner/SaferCPlusPlus#norad- point...](https://github.com/duneroadrunner/SaferCPlusPlus#norad-pointers)

<comment><USER11> Interesting project; are you aware of any actual users?

Meanwhile, in the real world, C++ programmers typically use operator+(int,int) with UB on overflow because it's conveniently built into the language.

The problem with C++ isn't that doing the right thing is impossible, it's that doing the wrong thing is the default, with no dependencies and no syntactic overhead.

<comment><USER12> > Meanwhile, in the real world, C++ programmers typically use > operator+(int,int) with UB on overflow because it's conveniently built into > the language.

In more than a decade of coding with C++ I have never been bitten by a signed overflow bug which is UB. However I have been hit by unsigned underflow (e.g. if(2u - 3u > whatever)) way too often even though it is perfectly "legal" from the point of view of the language.</comment></comment></comment></comment>


White Collar Crime Risk Zones - <AUTHOR> https://thenewinquiry.com/white-collar-crime-risk-zones/ <comment><USER2> First of all, this map is wrong. Every state except Alaska, Florida, Nevada, South Dakota, Texas, Washington, and Wyoming should be bright red for stealing hard earned cash from people who did nothing wrong.

This map is trying to mock more severe problems that people face. Nobody is going to fraud you to death tonight. Right?

Fraud is just a typical manifestation of the free market. If someone commits fraud against you, you had the free agency to enter a deal with them. You should have been more careful with your money, but at least the market will correct after enough people get burned.

The state, however, will throw your ass in jail if you don't pay.

<comment><USER3> Yeah dude! Right on!

Lying is totally cool, and all the other kids do it. It's perfectly normal for people to get swindled, and like, caveat emptor, a fool and his money are soon parted, no biggie, bro.

Thank god the market just kind of does whatever, any old time it wants, and we don't have to think about how it works. Any time something bad happens, just throw up your hands, and chant MARKET: CORRECT THYSELF, and so it shall be done.

In fact, total deregulation, until we reach the state of nature is the only correct path. A constant war of any against all is really the way things _should_ be.

Like, we should just learn to _admire_ the predators, and maybe prop them up from time to time.

Take this example:

[http://www.theglobeandmail.com/report-on- business/regulator-...](http://www.theglobeandmail.com/report-on- business/regulator-warns-of-increase-in-binary-options-scams/article34179720/)

That guy wasn't "frauded to death." He totally had a choice in front of him, and when he gambled and lost, he chose a permanent solution to a temporary problem. Darwin in action, if you ask me. Survival of the fittest.

Wait, are we pro-evolution or pro-creation? I always forget how I'm supposed to reconcile my economic and fiscal policies with my personal spiritual beliefs and family values...

</comment></comment><comment><USER4> Can we have one for police mis-conduct?

<comment><USER2> Define police mis-conduct. #blueLivesMatter</comment></comment>


How to write unfancy web apps - <AUTHOR> https://thedubiousdisc.wordpress.com/2015/12/19/how-to-write-unfancy-web-apps/ <comment><USER2> I totally agree with the sentiments here. Though I really wish there were better partial rendering support than mustache.

</comment><comment><USER3> I would start with a web design that does not look grey to people who cannot see colours.</comment>


50 Years of Data Science (2015) [pdf] - <AUTHOR> http://courses.csail.mit.edu/18.337/2015/docs/50YearsDataScience.pdf <comment><AUTHOR> In the first lecture of CMU's Practical Data Science course, the lecturer explains very well the differences between data science, machine learning, statistics and big data ("as far as this course is concerned"), between about minutes 2 and 15: [https://youtu.be/IS279gXmfkQ](https://youtu.be/IS279gXmfkQ)

</comment><comment><USER2> There's another problem here:

(A) The worker, statistician or data scientist, sends resumes looking for jobs. Well, that job has to be provided by someone else, likely someone who at least eventually gets some real value from the worker. And the person's training has to be at least close to what the job needs. So, the person is _one step away_ from the actual money making.

(B) The academic teaches those workers to be but is _two steps away_ from the actual money making. So, what the academic teaches has to be quite powerful quite generally.

Should be able to get a better _fit_ if the academic or the worker is the one in the business with the problem that has a very valuable use for statistics, data science, or some such. Then the academic or worker can focus on what is really valuable for the business. Else the worker and academic are a bit far from the money, so far they may have a tough time ever seeing the money.

<comment><USER3> Even if the DS gets close to the money, the massive assumption here is that the underlying money making process is amenable to statistics methodology. The surprise & disappointment is that it mostly isn't. The underlying embedded MC in most of these CTMCs is not ergodic. It doesn't have a stationary distribution. Looking at a time series of historical ad clicks & trying to predict the inventory for the next year etc. is mostly borderline fraud, if you want to get downright scientific. There's no theorem that says this is how a social science metric like ad purchases will behave. People clicked on something yesterday, they'll click on something else tomorrow. Even in the aggregate, if you go off the deep end of asymptotic theory & invoke the gods of CLT, there is nothing to prove one way or other. Fortunately, the problem is bounded, so data scientists throw around a wide enough confidence interval & make glib predictions. But these are not physical processes. As Morgenthau famously observed - illusion of a social science imitating a model of the natural sciences. There is a fundamental difference between the two, namely the technical matter regarding the stability of behavioral relationships between the variables. The speed of light is a constant; social relations are not.

<comment><USER2> > Even if the DS gets close to the money, the massive assumption here is that > the underlying money making process is amenable to statistics methodology

Yup.

A famous recipe for rabbit stew starts off "First catch a rabbit ...."

Well, a first recipe for applied math/stat is "First get an application ..."

Still better, pick in a coordinated way the pair of the problem and the method of solution. For business want lots of people/money to have the problem and like the solution. Also want a Buffett moat: Network effect, natural monopoly, a brand name with a lot of power to get and keep customers, maybe some crucial core technology _secret sauce_ difficult to duplicate or equal. Now try to exploit computing and the Internet. Then want LUCK of timing, etc.

</comment></comment></comment><comment><AUTHOR> There is a companion talk by the paper's author in Youtube: [https://youtu.be/E7w-gfFKPf8](https://youtu.be/E7w-gfFKPf8)

</comment><comment><USER2> Classic statistics with _inference_ is one way.

New data science with _predictions_ is another way.

There's also a third way!

<comment><USER4> causality?</comment></comment>


Ask HN: What should I use for subscriptions if Stripe isn't in my country? - <AUTHOR> <comment><USER2> Paypal could do the trick if it's active and legal in your country. If you need to accept local online payments, you could google for your local payments aggregator, which should work the best with your local online currencies.

</comment><comment><USER3> Get a merchant account then pm me. Lots of gateways support recurring payments. They have been around long before Stripe. Also, what country?

</comment><comment><USER4> Well, what is your country and where are your customers?

<comment><USER5> This is actually the right question. Chances are PayPal is not available in some countries too. So, really depends where the op is and where are her/his customers</comment></comment>


The Killing of Warren Weinstein - <AUTHOR> http://www.nytimes.com/2016/02/14/magazine/the-killing-of-warren-weinstein.html <comment><USER2> Wow. Hell of a story -- and very sad. I hope the Administration comes through with a generous compensation offer soon.</comment>


Earthquake Heatmap - <AUTHOR> http://mateogianolio.com/quakemap/ <comment><AUTHOR> Final result: [http://i.imgur.com/7WiloZM.jpg](http://i.imgur.com/7WiloZM.jpg)

</comment><comment><USER2> Nice graph.

It would be better to repeat the data at both sides of the 180 meridian. I was almost going to ask: What is the big isolated red spot at the east of New Zealand?

(Does Hawaii have it's own real red spot?)

If you forgive my bad Photoshop abilities, I'd like something like: [http://imgur.com/TP5AC5i](http://imgur.com/TP5AC5i)

More feature request:

I'd also like a standard play/pause/first/last buttons. Bonus points if the buttons disappear when the mouse doesn't move.

I'd like another "mode", where the old quakes don't accumulate. The old one just disappear. Or they turn brown, then light brown and then disappear. It will be necessary to tweak the visual representation until it looks nice.

<comment><AUTHOR> Great advice, thanks. I'll see what I can do!</comment></comment>


Pop culture is finally getting hacking right - <AUTHOR> http://www.theatlantic.com/entertainment/archive/2015/12/hollywood-is-finally-starting-to-get-hacking-right/417732/?single_page=true <comment><USER2> War Games with Mathew Brodrick had a fairly accurate portrayal of how hacking is done. [1]

[1] [https://www.youtube.com/watch?v=AByemfK_qD4](https://www.youtube.com/watch?v=AByemfK_qD4)</comment>


What percentage of Java/C# developers can write a generic sort? - <AUTHOR>

<comment><AUTHOR> Has F-bounded polymorphism become common knowledge?</comment>


When an engineer writes a short story - <AUTHOR>

My Short Story "The Donkey Lane" is now published on kindle (free over the holidays, so please do read). http://www.amazon.com/dp/B00RA3UD20
As a software engineer I've authored technical books and written software, so writing fiction should be easy for me, I thought. My plan was to do  a MVP, that is, write a quick story, put it out for the world to see, and if there is a positive response, continue writing. It will be a humorous short story, I told myself. However, most of the humor was outside of the short story: the story took me over six months to write. Why? Scope creep and distractions. First distraction: could not find a mac text editor that I liked, so I started creating my own. This led to the creation of the Mac app: Published! Manuscript Manager (www.published-app.com.)  I put it out in the Mac store and soon started communicating with a number of its users. First it needed a "submissions module" which authors of short stories would use to submit and track their submissions to various publishers. Then it needed an Income and Expense module which writers would use to track the profit/loss from each of their work. Each time I used my own text editor to write my story, I discovered some new enhancements that just had to be done, and finally when I reached the enhancement saturation point, and had about two pages of my story written, distraction #2 hit me: I thought, won't it be nice if I have a platform to display the fecundity of my mind to the world, if and when  such fecundity occurred? Thus started my next journey: creating the web site www.mystacki.com, which writers can use to display "stacks" of their work.
Every good story should have a happy ending and mine does too. My fictional story "The Donkey Lane," is no longer fictional, an abstract Platonic idea up there in the sky: Its been written. Please do read it and provide feedback. "The Donkey Lane" http://www.amazon.com/dp/B00RA3UD20 <comment></comment>


Revival of Universal Basic Income Proposal Ignores Needs of Labor Force - <AUTHOR> http://www.wsj.com/articles/revival-of-universal-basic-income-proposal-ignores-needs-of-labor-force-1468429793 <comment><USER2> A) Paywalled link is paywalled.

B) Yet another "Oh no, what if companies had to deal with the labor market as if it were actually competitive?" article.

Yes, under a Universal Basic Income a lot of jobs suddenly have to compete to make their jobs appealing and/or help retention versus turn-over rates. Companies have a captive "market" right now that clearly works to their advantage. UBI would introduce a lot more liquidity into that market. That _should_ be a good thing for the labor market to make it actually competitive.

There will definitely be a shake up in how companies deal with especially "wage slave" jobs: it might take re-incentivizing them, it might take rethinking those jobs from the ground up, it might require not taking "minimum wage" effort for granted. It's a paradigm shift, but maybe a much needed one.</comment>


Ask HN: How to improve vim productivity and workflow? - <AUTHOR> I only need my .bashrc and .vimrc with me on a UNIX machine to get around. It makes me feel all warm and fuzzy inside because it's so minimal and portable. I love it.
But I have not mastered vim yet. In particular, going back and forth between files and directories is really cumbersome in larger, more complex projects. When time is critical in a project I just install Atom or something with a sidebar (it makes a huge difference to me) and move on with my life.
I want to improve. Specifically, how can I productively edit multiple files simultaneously in a larger codebase? Should I use tmux panes and windows? Or vim split views? Should I use a sidebar plugin for vim? Any other workflow tips?
Should I even use vim at all? Why bother? <comment><USER2> Different strokes for different folks but I really love vim split views. I have Ctrl-h, Ctrl-j, Ctrl-k, and Ctrl-l mapped to navigate between my splits with ease as well as using the vim plugin Golden Ratio[1] to make the current focused split larger than the rest. If you really need the tree view, I've heard great things about NERD Tree[2]. Feel free to check out my .vimrc[3] for other neat tricks and plugins :)

[1] [https://github.com/roman/golden-ratio](https://github.com/roman/golden- ratio)

[2] [https://github.com/scrooloose/nerdtree](https://github.com/scrooloose/nerdtree)

[3] [https://github.com/yefim/dotfiles/blob/master/.vimrc](https://github.com/yefim/dotfiles/blob/master/.vimrc)

</comment><comment><USER3> I really enjoy vim tabs for multiple files. Especially if I don't need to see all of them at once, but just quickly switch between them. `:tabnew foo.txt` to open another file, then `gt` to go to the next tab and `gT` to go back.

If you work interactively with data, you might also enjoy Slimux ([https://github.com/epeli/slimux](https://github.com/epeli/slimux)), a vim plugin that allows you to send lines from vim to an arbitrary tmux pane. I usually have IPython running in such a pane so I never have to copy+paste. I've got an ebook I've been kicking around describing this workflow in more detail here ([http://dvbuntu.github.io/compute/posts/2050/01/01/workflow.h...](http://dvbuntu.github.io/compute/posts/2050/01/01/workflow.html)).

<comment><USER4> What's the difference between buffers and tabs? I am genuinely curious.

<comment><USER5> Here's a nice explanation of how they are different in practice, rather than just in theory:

[https://stackoverflow.com/questions/26708822/why-do-vim- expe...](https://stackoverflow.com/questions/26708822/why-do-vim-experts- prefer-buffers-over-tabs#26710166)

</comment></comment></comment><comment><USER6> Use the editor that works best for you. I have used Vim every day for almost the last two years and I have learned to work very quickly inside of it.

As far as plugins, if one sounds interesting or useful to you, install it. If it doesn't work out, then you can delete it later. Over the years I have tried all of the popular plugins, but I have managed to whittle it down to 4 plus a couple of language specific plugins

Here are a couple of handy youtube videos Vim Navigation Commands [https://www.youtube.com/watch?v=Qem8cpbJeYc](https://www.youtube.com/watch?v=Qem8cpbJeYc) How to Do 90% of What Plugins Do (With Just Vim) [https://www.youtube.com/watch?v=XA2WjJbmmoM&t=3477s](https://www.youtube.com/watch?v=XA2WjJbmmoM&t=3477s)

</comment><comment><USER7> Vrapper ([http://vrapper.sourceforge.net/documentation/](http://vrapper.sourceforge.net/documentation/)) lets you use Vim inside of the Eclipse IDE.</comment>


Smart.js – Embedded JavaScript engine for C/C++ - <AUTHOR> https://github.com/cesanta/smart.js

<comment><USER2> What is the difference with v7 ?

[https://github.com/cesanta/v7](https://github.com/cesanta/v7)

<comment><USER2> Found the answer here: [https://github.com/cesanta/smart.js#extending-smartjs- firmwa...](https://github.com/cesanta/smart.js#extending-smartjs-firmware)</comment></comment>