Rhapsody passes on Apple's "economically untenable" sub plans - <AUTHOR> http://technologizer.com/2011/02/15/rhapsody-iphone/

<comment><USER6> I've just realized what Apple is up to here - it took me a day, and some of the excellent comments on HN - but I now get it.

My inability to see what was going on, was that I couldn't see how Netflix/Amazon/Rhapsody/etc... could operate, profitably, under this plan. The 30% cut would eat their entire margin (and more).

And the plan is brutally straightforward and honest, if you just mediate on it for a few days.

Apple isn't interested in hosting Amazon Kindle, Netflix, Pandora, Rhapsody, or _any_ of the middlemen that have been selling their content on the iPad. Effective today - those sellers no longer have a business model. They are middlemen, and, in fact, they'll need to seek other pastures to sell their wares. They will all be removed from the ipad with 3-6 months. Gone.

So - what will replace them - well, let's see what's leaving:

      o Music -  Itunes
      o Movies - <USER3>
      o TV Shows - <USER3>
      o Books - <USER4>

This is the master plan, and I'm surprised we didn't realize it immediately. Apple will get their 30%, because _they_ will be the platform providing this content, NOT netflix/rhapsody/Pandora/Amazon.

I suspect all of those vendors realized this in about 5 minutes, much faster than us "Customers."

Apple is going for the whole enchilada, and will henceforth be dealing directly with the publishers, labels, and studios.

What's staying?

      o App Developers
      o Newspapers
      o Magazines

Basically, anybody who creates _original_ content, will be okay with the 30% cut (they already pay that much or more through other channels), though they may gripe a little at the lack of customer information (That's the bone that Apple tossed in todays release - the "option" for customers to let the publishers know their user information.)

This is nothing more, or less, than the continuation of the Apple "Walled Garden" philosophy, where Apple is able to control the entire experience. Jeff Bezos realized this when he ensured that Amazon had a platform of their own to deliver content to the customer.

It's customer centric, and, if they pull it off (With a good streaming, book reading, and content delivery platform) - brilliant.

I have a huge investment in the Kindle, and it's books - so I'm still unclear on how I'm going to respond as a customer. I would have _never_ purchased a book through iBooks (I like the ability to read books on my e-ink Kindle, and Apple has no comparable platform, yet). I also have both an extensive list of cultivated Pandora Stations, and, have a Netflix AND Hulu Plus account - <USER5> of which I'm going to lose on the iPad. If Apple doesn't come up with a compelling alternative for me - I'll actually consider an Android Tablet. They'll be able to replace Netflix, and Pandora, I'm certain - but I do love my Kindle(s) - so, I don't know what my next step is going to be.

What I _do_ know is Apple has unambiguously signaled what they will be doing. They don't have a great streaming solution yet, for music, or movies. So they have some gaps in their portfolio of offerings - if I'm correct, we'll see a Netflix and Pandora competitive application being offered fairly quickly - possibly in the next release of IOS.

<comment><USER7> "It's customer centric, and, if they pull it off (With a good streaming, book reading, and content delivery platform) - brilliant."

I don't see how this is customer-centric in the traditional idea of the term at all. Customers want to be able to listen to Pandora and sync with their Kindle. Customers do not want restrictive DRM and policies that lock them into a given company for eternity.

I thought we were headed in a more open direction regarding the ownership of digital property. Thank goodness for Android.

<comment><USER8> _We_ want to be able to listen to Pandora and sync with our Kindle to read e-books. The vast majority of the iOS userbase just want to listen to music and read e-books and do not care as much about what delivery mechanism provides the content. As much as I hate to admit it, they are not really going to miss Pandora or the Kindle app as much as we might like to hope. [For future reference, try not to use the Kindle as a counter-example when talking about restrictive DRM and walled gardens, it may be possible to remove the DRM but pretending it is not there in the first place isn't really honest...]

<comment><USER9> It is important to draw a distinction between "the Kindle" (the hardware device sold by Amazon) and the "Kindle Store" (Amazon's e-book sales platform).

The Kindle Store, yes, is all about the DRM. And it's the "platform" accessed by the Kindle app on assorted devices.

However, if you're talking about the hardware device then it's entirely reasonable to ignore the DRM issue. You plug it into your computer and it mounts as a USB drive, onto which you can drop books in a variety of non-DRM'd formats (annoyingly not ePub). You can purchase said books from a variety of vendors who are happy to sell you non-DRM-encumbered products.

Amazon obviously _really_ wants you to use these two things together, and the Kindle (device) is well set up to work with the Kindle Store. But they're not forcing you to use only their DRM with the hardware you bought.

<comment><USER10> The iPad also displays and sync ePubs with no DRM with iTunes, same as the kindle.

<comment><USER9> Yeah, I didn't want to imply that iOS was forcing DRM on people. I just see the argument that the Kindle == DRM far too much, and wanted to correct it. :)

</comment></comment></comment></comment></comment></comment><comment><USER11> _In the meantime, we will be collaborating with our market peers in determining an appropriate legal and business response to this latest development._

Eurozone based content rights holders such as Spotify, Vivendi and Amazon should take this to the Directorate General for Competition. iTunes music enjoys a dominant position in online music sales. ITMS operates on only ~15% net margins [1] the other ~15% attributed to marketing, R&D, bandwidth, support etc. App store or video margins should be even lower due to increased bandwidth, hosting costs, editorial review, etc. Clearly Apple's own content businesses would be unsustainable or would constitute dumping if forced to pay their public rate card for the payment platform.

Traditional remedies like content divestiture or substantial regulatory oversight could stifle innovation and raise consumer costs.

Instead:

      - Allow end-users to specify an alternative root trust authority.
      - Unbundle application signing from packaging, allowing N signers per binary
      - Allow application side loading.

Effectively this would allow a competitor like Amazon to sidestep Apple requirements but only if they were willing to provide the entire infrastructure - payments, app store, bandwidth, support etc. Other root authorities could potentially be an open industry alliance, a privacy organizations like EFF, FOSS signers like FSF, code auditors like OBSD, security firms like Kaspersky or Secunia etc.

Apple as an apple signer would be able to continue to select and sign applications arbitrarily to maintain a high user experience, mandate platform changes, provide preferential payment terms to in house content businesses and avoid breaking out detailed incomes and revenues in public.

Competitors would gain a plan of last resort to split from the ecosystem if the only alternative is exiting the platform entirely.

Consumers would gain from competition driving down margins and overhead, alternative signing would discourage consumer unfriendly behavior by trust authorities.

Simple to enforce, easy to implement, solves competition concerns even in markets that haven't developed yet.

[1] [http://seekingalpha.com/article/90735-how-much-will-the- app-...](http://seekingalpha.com/article/90735-how-much-will-the-app-store- contribute-to-apple-8217-s-bottom-line)

</comment><comment><USER12> Of course Rhapsody can't sell their stuff for a 30% margin. It's not their own stuff!

They're trying to be the last link in a chain of 90/10 (or more) splits. They repackage record labels' repackaging of artists' content. Do you think the artists would find 30% economically untenable?

The App Store is 70/30 because Apple can take things straight from content producer to customer. When the Apple takes the place of publishing, distribution, inventory, sales, payments and shipping, there's real value for that 30%.

When all someone wants out of Apple is merely to process the payment and send things down the pipe, gee, who do they think they are? But that's not what Apple is actually holding themselves out as. Apple doesn't want to be in that kind of commodity market anyway. Seems reasonable to me.

<comment><USER13> Apple's argument is that they deserve 30% of all revenue streams for getting a customer on board. For 30% of revenues, you could hire a true sales force that goes out and actively sells stuff, rather than just sitting back and hoping someone signs up. In the App store model, you still need to sell on your own, Apple just centralizes payment and distribution. Thus, I'm not sure I follow your logic.

Payments: Visa, Paypal, Amex, MasterCard, and many others would gladly handle the payments for ~2%. Not sure where you're getting anything about inventory and shipping given it's digital content. Sales: when did actually do any selling for anyone's product other than when it was mutually beneficial? You still need to sell it to people to actually use your product. Publishing: again, what is apple doing here? Distribution and a little bit of marketing, sure - but that's certainly not worth the other 28% of revenues.

Also don't see why Rhapsody repackaging stuff makes it any different. Shouldn't a true app store model work for any type of business?

<comment><USER14> I think you overstate the willingness of existing payment processors to deal with, say, .99$ purchases (they likely won't bother). I'm not arguing that Apple's providing a service that's worth 30% to everybody, but building a payment processing system to handle sub-$1 charges cost-effictively isn't trivial -- and if you're not in the business of building payment processing systems, you might just pay the rent. Amazon could handle rolling their own; Packt probably can't.

<comment><USER15> They would bother if they could get 30 cents on the dollar instead of their measly 2

</comment></comment></comment></comment><comment><USER16> It's deeply disturbing that the people at Apple feel entitled to radically change the rules of the game whenever it suits them. This is like an extortion racket. Submit to their demands today only to find out what new whim strikes them tomorrow. How can iOS legitimately be called a "platform" when Apple pulls a leg out from under it every six months?

Thank god Android scares them. I can only imagine what they'd dare without any competition.

<comment><USER17> See Tim Bray's essay, which _should_ be titled "Are You a Sharecropper?" [http://www.tbray.org/ongoing/When/200x/2003/07/12/WebsThePla...](http://www.tbray.org/ongoing/When/200x/2003/07/12/WebsThePlace)

tl;dr: "[Apple] owns the ground you're building on, and if they decide they don't like you, or they can do something better with the ground, you're toast." In this case, if they decide the rent covers your garden plot as well as the fields, you ante up or die.

<comment><USER18> Apple owns a very fertile piece of soil. You can grow 10x the crop there that you can grown any where else. Where do you want to farm your crop ?

<comment><USER19> Ah yes...

 _"Apple owns a very fertile piece of soil. You can grow 10x the crop there that you can grown any where else."_

And they can change your rent to 11x normal - just before you sell your crops...

 _"Where do you want to farm your crop ?"_

Go question but it is actually a real question, not a rhetorical question... Do you want to a _golden share cropper_ or do you want to be independent. There may be no easy answer...

<comment><USER20> Simple solution: sell your crops where it is most profitable. Maybe with 11x normal it's still worth it. As soon as it's not, you switch.

</comment></comment></comment></comment></comment><comment><USER21> What's going to get really interesting is seeing where Apple draw the line with "subscription apps".

The Rhapsody and Magazine apps of this world seem fairly clear cut. Kindle is somewhat less so (since books aren't a subscription service - something most blogs seem to miss). But what about these "Go to my PC", Salesforce.com, or other SaaS sites that basically provide free iOS apps for expensive subscription plans? Are these companies now all going to start adding in-app sign-up options and paying Apple a cut?

<comment><USER22> amazon offers magazine subscription for kindle. Besides, I think Apple has been known to ignore or allow exceptions. For these SAAS companies, I imagine Apple will allow them to slide, but by their own terms.. it sounds like they shouldn't. I think their only main concerns are profiting from companies that compete directly with Apple revenue streams, music, movies, and books.

<comment><USER23> Kindle magazine subscriptions are only available for the Kindle hardware itself, IIRC.

<comment><USER24> They are now offered in the Android Kindle application as well.

</comment></comment></comment></comment><comment><USER25> I'm not happy to have predicted this in comments early today: (some slight paraphrasing)

The current state of affairs - where Apple provides a nice sales channel (marketing in a sense) on their already highly profitable devices and where service providers bring attractive service to the platform - is a fairly even trade. Apple is asking for such a drastic renegotiation of this "trade balance" that I predict services will need to reprice for iOS or abandon the platform. Content services are already struggling enough - and Apple has too many viable competitors! - for me to imagine them simply submitting. Sony's withdrawal of their app was the writing on the wall, I'm afraid.

<comment><USER26> They're not allowed to reprice for iOS, unless they also reprice for all their other platforms. Quoting the Apple announcement[1], "we require ... that, if a publisher is making a subscription offer outside of the app, the same (or better) offer be made inside the app."

[1] <http://www.apple.com/pr/library/2011/02/15appstore.html>

<comment><USER25> I think it would follow the letter of these rules if service-providers made "with iOS" versions of their services available - both on their website and in-app. So Rhapsody could say their service is $10/mo for everybody... except if you want iOS access, in which case you pay $13/mo.

</comment></comment></comment><comment><USER27> Just curious: shouldn't Netflix be worried? This entitles Apple, Inc. to not only Rhapsody's income, but also to 30% of the income from Netflix's streaming only plan. Presumably, this policy would also affect Netflix's hybrid distribution model.

I think Rhapsody's got a friend in Netflix.

This will be interesting, given how much Apple has promoted Netflix in recent store advertisements, and integrated Netflix with Apple TV. Does this mean that Netflix will be required to have subscriptions entered through the App Store? What about the restrictive privacy policy; will that hinder physical distribution?

<comment><USER12> I would be surprised if the thought of using in-app purchasing for subscriptions even moved their needle of interest at Netflix.

Again, if you're just providing a conduit for your subscription service, all this means is that you can't provide a direct call to action in your app.

They seem like the prototypical example of an company that couldn't care less about using the App Store as an app-based advertisement or purchasing platform.

<comment><USER28> My understanding of the new rule is if your app is used to consume content bought outside of the app, then your app must offer a way to purchase content/subscription through the app for the same price, with apple getting 30%.

<comment><USER29> Precisely. Netflix doesn't get a free pass.

</comment></comment></comment></comment><comment><USER10> If the iPhone doesn't have things like Pandora, Evernote and many other cloud services available because of this change, it makes one of the most useful parts of the iPhone disappear.

</comment><comment><USER30> Time to pull the iOS app, build a mobile web app, and have your customers send e-mails to firstname.lastname@example.com expressing their displeasure.

<comment><USER31> I'll do one better than email Steve. This will be my last iPhone.

<comment><USER32> The iPhone 3G was my (first and) last iPhone because of other issues (the language lockdown). Actually not just my last iPhone but my last Apple Thing, period.

Voting with your wallet is the ONLY thing one can do to really get their attention (governments could step in on anti-competitive grounds, but that's not really something we can help with short of contacting our representatives).

If the user base just whines and moans while continuing to line up for the next shiny phone a week in advance of release to help Apple deliver record quarter after record quarter, Apple isn't going to change anything, they are just going to keep pushing and pushing. They've already shown that clearly in the past.. this is hardly the first questionable decision they've made in terms of controlling the iOS platform.

</comment></comment></comment><comment><USER33> Pretty soon..I'm sure it will be 30% of your advertising revenue. Rent? This is more like taking a chunk out of your paycheck. For all the employees out there I'm sure your company would love to take part of your check for the opportunity to work.

30%? do you get any other benefits from Apple? or is it "you take it and you like it."

Apple just has to do is sit there and let the small developers take all the risk. Are they loosing money on each phone sold? I can see charging a payment processing fee like PayPal. 30%? I just hope this doesn't set any precedent.

</comment><comment><USER34> Given the challenges subscription services already face re:margins, giving away another 30% is game over.

If this stands, the labels are probably going to have to give up on subscription services as a category, or lower their wholesale prices dramatically.

<comment><USER35> Rhapsody doesn't have "another" 30% to give. Their margins are probably something like 5%. Crapple is demanding 30% of the sale price, which leaves Rhapsody with a 25% loss.

Since that is economically infeasible, Apple is effectively mandating that they are the only ones who can sell content on their platform.

</comment></comment><comment><USER36> Once again, Apple is underestimating the average consumer's willingness to take the path of least resistance. Apple became very niche for graphics & layout artists back in the day and lost a market they could have owned. By trying to hold its customers hostage, they enabled IBM & Microsoft to become household names and the Apple name was "that other kind." They came back because they innovate, but innovation only stays innovative for so long.

They need to distinguish better between their "average Joe" and their "power user" products & strategies because "power user" products will sooner or later become "average Joe" products.

If they wish to limit themselves to a niche market then this move makes perfect sense. If they want volume and to continue market domination, they're repeating history and, regardless of how smart their executives are, I don't think they can pull if off because we don't live in that kind of a world.

I've been wanting an iPad and iPhone like you couldn't believe. But I'm patient and they made me nervous with their exclusive AT&T arrangement so I wanted to see what their next move was. I've been enjoying my Android phone very much. Looks like I'll be doing the same with whichever non-Apple tablet I choose. Too bad.

</comment><comment><USER37> Might work out well for Apple as do most things they do - Amazon pulls out, garden-dwellers dwell on whatever iBooks offers, Rhapsody and Pandora pull out - there is only iTunes!

Apple is in a position where they can get very crafty and evil - just enough to get away with it all without being a monopoly - there is Google to help them there! Envious position for a company indeed!

</comment><comment><USER38> Why hasn't a massive antitrust case against Apple been launched? Their behavior strikes me as far more anticompetitive than that of Microsoft during the "Browser Wars".

Apologists: I don't care that Apple created something this profitable--that is not the issue. Desiring complete control over the _mere act of_ computing on your own machine* is the problem. Apple is doing a wonderful job of absorbing a large swath of the marketshare and turning it into a closed ecosystem for developers, content providers, service providers, and owners. Apple should not have the authority to control _everything_ one does with their devices. Why is this happening?

Maybe I worry too much, but I don't want to see our electronic freedoms erode.

<comment><USER39> Apple doesn't even come close to having a monopoly.

Microsoft most certainly did have one during the browser wars, and were leveraging it to get people to increase IE marketshare.

With Windows on the desktop, you didn't really have much of a choice but Windows if you were going to use pre-package software, play games, or do business. With the iPhone, you've got tons of competition - Android, RIM, and WP7. If you don't want to work in that model, nothing forces you to, either as end user or VAR.

<comment><USER40> They're pretty close to having a monopoly on paid digital music downloads, and perhaps portable music devices, and they're shutting out competitor streaming music services with this move.

</comment></comment></comment><comment><USER20> I can understand Apple wanting to cut out middle men. I've never been a big fan of middle men myself, for the most part. But the biggest thing that bugs me about this is: iBooks doesn't have any books where I am! I buy all my stuff on Kindle because it's the only place I can legally buy a book at all. They can't try to shove everyone off the platform when they don't have any viable alternative themselves.

</comment><comment><USER41> What if Rhapsody offered a 23% discount for customers that subscribed via their website rather than through the In-App method? They could call Apple's 30% cut a "convenience fee" like online ticket sales.

<comment><USER42> Their app would be pulled from the store. You do business in the App Store at Apple's pleasure. Attempting to flout the spirit of their asinine rules is unlikely to be successful.

</comment></comment><comment><USER43> How's Rhapsody affected, if they don't offer in-app purchases?? quote: "Today, Rhapsody subscriptions are available for purchase exclusively via Rhapsody.com"

<comment><USER44> If you'd follow the press releases or read the updated app store guidelines, you'd learn that Apple has changed the rules and is enforcing old ones in new ways that will affect Rhapsody, Amazon Kindle, Rdio, Netflix, and so on. The new rules would require Rhapsody to allow new cusomters to optionally sign up via in-app purchase with an ongoing 30% fee to Apple. The rules stipulate rhapsody _must_ make this offer if they offer an app, despite the fact that such an offer is unprofitable to Rhapsody.

<comment><USER45> I'm sure it wouldn't get past the Apple Censor Board, but that's about the point that I would put in the in-app purchase button (for the item at 130% of my base price) right next to a "Click here for 30% off!" link. All of a sudden, your full retail price is heavily discounted and a lot more attractive!

<comment><USER46> The guidelines stipulate that the in-app price must be the same or less than your regular offer.

(You could possibly have a separate offer with iOS availability at a price that compensates for Apple's cut, which means you would get Apple's cut from everyone buying iOS availability outside the app.)

<comment><USER47> Technically, they state you must have the same _or better_ offer. Better isn't the same as cheaper, it can mean more expensive with more features, so an "premium iOS offer with added features" for 30% more could be justified :P

<comment><USER46> They actually state both "same (or better) offer" and "same price or less" (just not what I wrote :P).

But I still think the idea is to avoid what would be perceived as an Apple tax when buying subscriptions in-app.

<comment><USER47> I stand corrected, it's more yucky than I imagined. I can imagine what's going through their minds doing this, but this is just plain stealing.. they want to drive off any one that sells products that can potentially compete with them (kindle vs ibooks?), but damn, again they're killing off everyone with a bazooka, again. It's like the dev license change to kill off flash apps that ended up hitting almost every top app vendor out there.

They might back down from this like they did for the dev license changes, but this habit of always changing the rules in the middle of the game regardless of who gets hit is really getting old.

</comment></comment></comment></comment></comment></comment></comment><comment><USER48> I shouldn't wonder if then conveniently enough Apple follows on with a subscription service of their own...

<comment><USER49> The record labels won't let them do it. That is pretty much the only reason the streaming companies exist.

</comment></comment><comment><USER50> Good. Rhapsody suuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuux.

</comment><comment><USER51> lol

</comment><comment><USER52> AWESOME!</comment>


Bitcoin Trading Agents [pdf] - <AUTHOR> http://tombell93.co.uk/wp-content/uploads/2015/05/BitcoinTradingAgents.pdf <comment><USER2> > Ciaian's study develops an empirically estimable model of Bitcoin price, > which accounts for supply and demand fundamentals, investors' interest and > macroeconomic development (1). p B t = β0 +β1pt +β2yt +β3vt +β4bt +β5at > +β6mt +t (1) In this model at time t, p B t is the price of Bitcoin, pt is > the general price of goods and services, yt is the size of the Bitcoin > economy, vt is the velocity of the bitcoins in circulation, bt is the total > stock of bitcoin in circulation, at captures Bitcoins attractiveness to > investors, mt captures the global macroeconomic indicators, t is an error > term and βi , i = 0, 1, ..., 6 are coefficients which weight each term.

Go ahead and trade bitcoin based on that formula, I dare you:)

It reminds me a bit too much of the drake equation [https://en.wikipedia.org/wiki/Drake_equation](https://en.wikipedia.org/wiki/Drake_equation)

or maybe more appropriately this form of the drake equation:

[https://xkcd.com/384/](https://xkcd.com/384/)

I haven't gone through the referenced paper's but the below also seems a bit dubious..

> Ciaian et al. found a high correlation (corr > 0.8) between the DJIA (Dow > Jones Industrial Average) and the total stock of bitcoins and the size of > the Bitcoin economy.

How these are so closely correlated eludes me but maybe the reference papers will expand on this.

Having said all of that, the section 5 Factors unique to bitcoin is pretty good. And considering the lack of literature on how to trade bitcoin it's nice to see someone take the time to try and apply some rigor to the subject.

Hat's off to the author.

I haven't spend much time looking at it but the time I have spent show that it does trade differently from a typical currency.

Sadly the Trading Bitcoin section doesn't contain alot of actionable code or information but that hardly makes it unique in the world of trading.

<comment><USER3> Just looking at that multiple regression equation has alarm bells going off in my head: "OVERFIT! OVERFIT! OVERFIT!"

</comment></comment><comment><USER4> This paper isn't really about trading agents. There's no primary research or analysis. All of the equations, models and graphs are from other papers. In fact, most of this paper consist of summaries of findings from other papers, some of which are somewhat dubious. For example, the paper by Yelowitz and Wilson found positive correlation in Google Trends data for searches for "Bitcoin", "computer science" and "Silk Road" and concluded that "that programmers and criminals are the primary drivers of interest in Bitcoin".

One error jumped out at me. In the conclusion, the author asserts that "the volatility of Bitcoin is correlated with the CBOE VIX" but no evidence is presented to support that assertion. He seems to have misinterpreted one of the findings in the paper by MacDonell that found an inverse correlation between the _price_ of Bitcoin and the VIX.

I'm not impressed.

Edit: Out of curiousity, I checked to see if there is any correlation between Bitcoin price volatility and the VIX from August 2010 to today. There isn't. [https://twitter.com/JackGavigan/status/623836628960808960](https://twitter.com/JackGavigan/status/623836628960808960)</comment>


Why productivity fades with age: The crime–genius connection - <AUTHOR> http://personal.lse.ac.uk/Kanazawa/pdfs/JRP2003.pdf

<comment><USER2> Or it could be more complex than that, like for example people getting stuck in the area where they found their initial success.

<http://www.cs.virginia.edu/~robins/YouAndYourResearch.html>

</comment><comment><USER3> So where does politics fit into this?</comment>


Is the open source culture hurting new developers? - <AUTHOR> http://swanros.com/is-the-open-source-culture-hurting-new-developers/ <comment><USER2> How is "here, install this module" different from "here, copy and paste this code"? (And where exactly does licensing come into that?)

<comment><AUTHOR> That's the point. With "here, copy and paste this code" at least you (can) read what you're pasting into your project.

Most of people learning just "install this module" without actually caring about what's inside or any implementation details.

Licencing is a whole other beast worth of another post.

<comment><USER2> Oh, I can. So can you. But I assure you, the people you are referring to, those would come right back, requesting letter-by-letter guidance of integrating the code/package into "their" product. Been on SO, seen that, got the t-shirt.

</comment></comment></comment><comment><USER3> open source isn't about using third party code. It's about the ability to read and learn from third party code.

So, no. :-)

<comment><AUTHOR> Tell that to them. That's my point!

Why I didn't mention StackOverflow, for instance?

<comment><USER2> Well, why? It's been overrun by the very same help vampires.</comment></comment></comment>


Visualizations of the oDesk "oConomy": Exploring Our World of Work - <AUTHOR> https://www.odesk.com/blog/2012/07/visualizationsoftheoconomy/

<comment><USER2> If anyone has any questions about the _data_ itself, I'm happy to answer/elaborate.

<comment><USER3> Really slick. Congrats, John!

</comment></comment><comment><AUTHOR> Here's a breakdown of how the graphics work: [https://groups.google.com/forum/?fromgroups#!topic/d3-js/I2a...](https://groups.google.com/forum/?fromgroups#!topic/d3-js/I2a7AxbVOQs)

<comment><USER4> The geographic distortion is neat.

I don't like the bubble charts though -- when loading a new set of data the bubbles are completely rearranged making a quick glance comparison between two countries difficult.

<comment><AUTHOR> That is one of the main problems with bubble charts. Unless you have a sophisticated packing algorithm, the layout of the chart won't have much meaning. For comparing the projects between countries, another method of display will have to be used.

<comment><USER5> Perhaps a treemap?

<comment><AUTHOR> <http://mbostock.github.com/d3/ex/treemap.html>

This would have been a better choice. It displays the same sizing information but keeps positioning the same.</comment></comment></comment></comment></comment>


How an Ivy got less preppy: Princeton draws surge of students from modest means - <AUTHOR> https://www.washingtonpost.com/local/education/how-an-ivy-got-less-preppy-princeton-draws-surge-of-students-from-modest-means/2017/10/23/b66955b6-a770-11e7-850e-2bdd1236be5d_story.html <comment><AUTHOR> The story is split among three articles; I posted the primary one but here are the others:

Pell Grant shares at top-ranked colleges: A sortable chart:

[https://www.washingtonpost.com/news/grade- point/wp/2017/10/2...](https://www.washingtonpost.com/news/grade- point/wp/2017/10/23/pell-grant-shares-at-top-ranked-colleges-a-sortable- chart/?tid=pm_local_pop_b)

How a 'hidden minority' of the disadvantaged gained strength at Princeton:

[https://www.washingtonpost.com/news/grade- point/wp/2017/10/2...](https://www.washingtonpost.com/news/grade- point/wp/2017/10/23/how-a-hidden-minority-of-the-disadvantaged-gained- strength-at-princeton/)</comment>


Ask HN: Helping a dev who drinks? - <AUTHOR> I work with a senior system developer who drinks.
Basically, he's an alcoholic. He's in his mid 50s. He wasn't always like this. He started drinking a lot when some of his family members died unexpectedly in an accident.
The thing is, when he is drinking, he can code things that no one else on staff can do quickly. For example, he once implemented a hash table in about an hour because we had a platform that did not have a C++11 compiler (no unordered set) and needed that data structure.
It's kind of frightening to stand behind him, watch him run vi and start editing code. Inside, I'm terrified that he's going to make a mistake. I'm thinking that he should not be touching code when he's like this. But as he starts to edit the files, it's somewhat amazing. I and the others stand and watch in awe as he types so fast we can barely follow. It's not that we don't understand what he's doing, it's that he's typing so fast. Then, he compiles it and it works as expected and he tells us about a few possible issues, etc. and leaves.
We have to get him a ride home, help him walk to the door and have an intern walk him to his apartment so that he doesn't go in the wrong place. Then, a few days later, he comes back to the office like nothing has happened.
He's a really nice person. Very polite and self deprecating always giving credit to others on the team and mentoring the young guys (he's not an ass). We want to keep him on staff and we need his knowledge and all the guys love him. Just not sure how to approach him about this issue.
Has anyone else dealt with a similar situation? <comment><USER3> Basically, I'm an alcoholic. I'm in my mid 30s. I started drinking when I was told I couldn't smoke pot anymore, and kept at it after a number of friends committed suicide and a few others died of cancer.

The thing is, when I am drinking, I can manage the pain of things that will never be okay, even though I must endure them. I don't advocate alcohol, but waking up screaming every morning isn't always an option. And I get to say "basically an alcoholic" because that's a euphemism for "functional alcoholic" which is a euphemism for "alcoholic," but because I can still do my job around people in their 20s, nobody complains, so I don't have to begin the regime of psychoactive drugs that don't guarantee any less liver damage than the alcohol. I can only hope I make it to my 50s, and in my 50s, I will not give one thought to what anyone thinks, because making it to 50 means I survived remembering my dead loved ones for 30 years, and that's good enough.

It sounds like it's not an issue for your business if he's killing code three sheets to Moby Dick and you can't spare a salaried employee to walk him home. If you care for him, as my family cares for me, you will do what they do, and say, "Are you okay? I wondered because you're drinking a lot," and he might say, "No, I'll never be okay, but if it's a problem I can work on it." Or he might say, "Yeah, I'm fine," even though he's not. Point is it doesn't sound like it's a professional issue, since you haven't fired him for drinking on the job, so his ability to code is a moot point. The question is not "How do I approach a talented employee who seems superhumanly talented when he's drunk but then we have to use unpaid company resources to manage him after hours?" The question is "How do I approach someone managing pain in a potentially long-term and self-destructive way?"

And that's not an HN question.

<comment><USER4> I'm over 50 now.

I can assure you that when/if you reach it, you won't at all feel that you "survived remembering my dead loved ones for 30 years, and that's good enough". You'll want to keep on living.

You may have kids, young or older - your own, your grandkids, whatever - <USER2> other family who do not want to see you gone.

I spent a night in a cardiac ward a few years ago. The other s in there were all 80+. They had great stories - one of them had a heart attack in his boat while reeling in a big fish. I got out the next day but the one thing that stayed with me was that even at 80, every one of those guys still desperately want to stay alive.

<comment><USER3> Oh, don't get me wrong, I want to live to 4398 at the very least. But us 30-somethings mark the age our parents were when we moved out as the point when we would stop having to explain ourselves to anyone because we had ostensibly done our job.

</comment></comment></comment><comment><USER5> I think that the details of him brilliantly coding while at the Ballmer peak is kind of irrelevant. It can be a huge liability to have people intoxicated in the work place, and I think it's important for your manager to have an initially undocumented, private chat with him about it.

In alcoholism, an important concept is 'enabling', where you are making it easier for the person with alcoholism to continue with their habit. You are enabling your co-worker to continue drinking by giving him rides home, having interns walk him to the correct apartment, and allowing him to commit code while he is clearly under the influence.

Your manager should be setting the boundaries in the workplace regarding alcohol, but the best thing you can do as a co-worker is to be there as a friend and to listen. Take a break from the screen and step outdoors and have a conversation, because it sounds like this person is really struggling with a difficult chapter in his life right now.

<comment><USER6> ^^^^

This is what managers and HR is for. If you're uncomfortable bringing up the issue, explain to HR and have them present it as "we want to help you" and not that "you're in trouble". Depends how good your managers and HR are. It's probably best for everyone that he can move forward with his alcoholism, even for himself.

<comment><USER7> While this is probably the "right course of action" (whatever that means), I'd imagine this will surely, eventually lead to him leaving the company one way or another and you can say goodbye to the miraculous hash table implementations.

I'm not throwing my hat on either option, but I am highlighting that _this_ option has consequences you need to be prepared for. (Ok, they both have consequences)

<comment><USER8> I've never met a programmer that isn't replaceable.

What I have found, are lots of organizations that suffer because they allow a tyrant to exploit the imposter syndrome of those around them.

What you have here is a shitty manager who is holding his company back and putting it at serious risk by not remedying a serious problem. It's exploitative, demoralizing, and entirely unnecessary.

Get this guy some help before he dies. And fire your miscreant of a manager.

</comment></comment></comment></comment><comment><USER9> I can't really comment much since I've never had to deal with an issue anywhere close to this, but as a random thought, isn't this something his family would ideally action on?

To me it seems great that you are helping him by not allowing him to drive, etc. especially if he is a nice person, but I would think that this might be a a little off your reach.

I'm definitely not trying to discourage you but at least where I live, people take it very personal when you try to talk with them about issues/addictions they might have, so I might be biased, but as harsh as this sounds I don't think you can push him too much on this. His grief is probably (and understandably so) too much to bear.

The only thing that comes to mind is going to a psychologist/psychiatrist specialized in addictions and ask him for some advice on how to approach him.

In any case, good luck. It seems terrible to me that he has to suffer through this and it's really nice that you want to help him. Just be careful on not stepping into something you might not be prepared nor trained to deal with.

<comment><USER10> As someone who once had an experience with a coworker who was suffering with addiction / mental health issues, I agree with this comment entirely. While it's admirable to want to help as much as you can, I learned the hard way that it would have been better to simply alert family to my concerns and then step away.

<comment><USER11> If he has a family, then they'd know. He has to want to get help - this is the hard bit.

I think it's crazy that you'd facilitate his drinking by driving him home, walking him around with an intern... If I were a manager id have a chat with him

<comment><USER9> >I think it's crazy that you'd facilitate his drinking by driving him home, walking him around with an intern

As opposed to what? letting him endanger his life and potentially those of others?

I don't think that at this point that's facilitating his drinking. The guy will clearly keep drinking regardless of his coworkers. Facilitating him would be letting him get drunk just so he can code faster and meet the deadlines or something like that.

>If I were a manager id have a chat with him

And have a chat about what? I don't think that someone with that level of addiction will just hear you out and say "oh yeah, he's right, I'll change my ways". And if you fire him you will probably just make things worse, thus the OP's question on how to handle this without just throwing him off at the curb.

<comment><USER11> I'm not saying you should let him drive home drunk. I'm saying that he shouldn't be allowed to come to work drunk!

By having an intern help him around, by driving him home, then you are facilitating his drinking. You're basically saying "It's ok to come to work drunk, we'll support you if you do".

What I'm saying is that if this is a regular occurrence, you should put your foot down and say "No, don't come to work drunk, it's not OK". If he ends up in the curb because he favours his drinking over his work / life then that's his choice.

I'm not saying fire his ass, I'm saying have a chat to him. A good manager will know how to do this. It's not a "You need help" talk, but it's a "We've noticed this behaviour, what's going on?" talk.

If you don't have this talk, and continue to drive him home then you are facilitating his drinking, you're basically saying it's OK.

<comment><USER9> I guess you are right.

That's part of the reason this is such a tricky issue I think. But phrased like that, I do agree with you that there should be a limit at some point.

However being the one to enforce that... well, that just sucks.

</comment></comment></comment></comment></comment></comment><comment><USER12> You should stfu about him and his life. Especially if it's not a problem that is hurting someone else.

Anything you do is going to fuck him over. Don't believe someone at work (boss, HR) is going to turn his life into a disney movie of helping love and happy endings.

There are going to be mistakes that will let you know it's time to act. The first time you catch him doing a blunder that affects other people, take him aside and talk to him about it directly. Tell him you want him to enroll in some sort of treatment program.

After that, if he keeps causing negative outcomes for people, then you tell HR or the boss- which will get him fired, end of story. Don't let yourself believe some insane narrative like people are writing on here where the boss or HR will "help" him. He's just going to get fired. So, understand that before you make any moves in 'official' directions.

</comment><comment><USER13> Trying to think how I'd want this handled if you and this fellow were one of my employees...

First, I'd want you to tell me about the issue (if I wasn't aware of it already). Have you told your boss? What was his reaction?

Second, after I was told, to be quite candid, I'd be put in a tough position. If this guy is getting loaded at work, people know about it to the point where they're giving him rides, IANAL but that's a huge liability. He does something while drunk and that's coming back on the company. And the problem isn't that I'm a greedy asshole who doesn't want to get sued, it's that if I get sued then you and probably a few other people are going to lose their jobs. Depending on the size of the company a suit could destroy it.

Third, all those things considered, I have to intervene to protect this fellow, you and your colleagues and the company. That doesn't mean fire someone, that means a serious come to Jesus with this guy with the goal being to find a way to get him through this. Underwrite counseling/rehab/whatever is needed.

So...lots of words to get to this: you gotta go up the chain. This isn't your responsibility, unless you are the boss.

</comment><comment><USER14> The bottom line is you can't help anyone who doesn't want help. I think as coworkers, you're already going above and beyond having an intern escort him home, and it's great that you're not allowing him to drive drunk, but anything you do won't do any good until he decides he has a problem and wants help from you.

</comment><comment><USER15> Find a sober alcoholic. Find a man if you can, but don't be picky about it. It works better - men work with men, women work with women. Ask the sober alcoholic what to do; he will know.

[http://www.aa.org/assets/en_US/en_bigbook_chapt7.pdf](http://www.aa.org/assets/en_US/en_bigbook_chapt7.pdf)

<comment><USER16> Person might not be religious.

<comment><USER17> Religion is not a requirement for benefiting from AA. Participants must acknowledge a higher power, which can mean whatever a person wants that to mean.

<comment><USER18> I have observed no higher power than man. Where does that leave me?

<comment><USER19> Perhaps the inverse of acknowledging that, ultimately, man is entirely powerless would work just as well.

<comment><USER18> I look at the large hadron collider, the apollo program, the curiosity rover, the pyramids of giza, the hoover dam, and the international space station and scoff at the idea that we are powerless. Yes there are problems that we can't solve currently, but humanity is a young race. We'll get there.

</comment></comment></comment></comment></comment></comment><comment><USER20> I'm very confused by this story.

> …when he is drinking, he can code things that no one else on staff can do > quickly.

> I and the others stand and watch in awe as he types so fast we can barely > follow.

Impressive, but why are you all watching this guy? Don't you have work to do as well?

> We have to get him a ride home, help him walk to the door and have an intern > walk him to his apartment so that he doesn't go in the wrong place.

Wow, that's _crazy_ drunk. How does he get so drunk at work? Does he drink on the job? If so, how is he hiding it?

And after reading your description of how good he is at coding, I think you're exaggerating how drunk he gets. I find it unlikely that someone can write C++ with such proficiency, especially when they're _too drunk to find their apartment_.

Also, how do you know he won't be able to find his apartment? Was there an incident after the first time you dropped him off? If so, how'd you find out? Most people would be too embarrassed to tell that story to their coworkers.

> Then, a few days later, he comes back to the office like nothing has > happened.

Wait, he writes crucial code and disappears for days afterwards?! What happens if you have any questions or issues with the code? Clearly you can't deploy any of it until he returns, otherwise you risk breaking production systems and having nobody around who's able to fix it. And is he paid during this time? Does he call in sick or something? This whole bit seems crazy to me. Why not have other people on the team spend a few days writing the code instead? As long as they can implement a hash table in under three days, you'll have better overall productivity.

Many of the details of your story raise more questions than they answer. If it was just a couple of discrepancies, I'd ignore them. But your story is permeated with them. I hate to be the one who says this, but my fabrication sense is tingling.

I have no doubt that there are alcoholic employees who need help. It's just that this story feels like it was written to maximize the degree of the dilemma (fire vs. help), not to accurately relate a story about an alcoholic coworker.

<comment><USER21> maybe the OP is asking "for a friend". Either way, it's a good subject for a real conversation.

I had to stop drinking recently, probably for good. A friend pointed out my behaviour when drunk and suggested that alcohol was not doing me any good.

I've found new clarity and sense of purpose since I quit. It may not be the solution for everyone, but it's worked for me.

I'm also in counselling to try and solve some of the issues that caused me to get in that state. Also helping.

A good employer doesn't let their economic need for awesome code get in the way of doing the right thing for their employees. Apart from the potential legal consequences, letting employee destroy themselves is not Good For The Company.

Have the hard conversation. Suggest assistance that may help. You won't be able to stop them from drinking, only they can do that, but you can stop enabling them.

Good luck.

<comment><USER20> > maybe the OP is asking "for a friend"

That's what I initially thought, but it's a throwaway account. There's no risk that the post will be traced back to a real-world person. And a first-person accounting would invite commenters to help directly. I've seen Ask HN threads where the poster had a substance abuse problem. The community is very accepting when it comes to these things.

<comment><USER21> yeah it is. I'm always surprised by that for some reason

</comment></comment></comment></comment><comment><USER22> FWIW, alcoholism may be considered a disability in your region (it is in Canada and protected under Charter of Rights and Freedoms), and that will make things a bit tricky HR-wise. If you're going to take any actions, keep that in mind.

</comment><comment><USER23> My little pinkie tells me you are a fellow more junior coder and that you are trying to deal with a situation that is not in your full authority (management or HR). I guess you have been talking of it as a team and are trying to bypass the hierarchy because you expect them to potentially fire him. You may be alone thinking of actually doing more than talking about it between yourselves.

This is nice. You seem to care. That is a good point.

Talk to him and listen to him. Nicely, as a friend and ask him how he feels about it. The alcohol is there to alleviate a big pain. The pain will be worse if he tries to stop violently. Violent withdrawal put your body in bad state anyway. He may have tried and experienced it first hand and may be scared to try again. If he does share his experience, it means he has made a lot of work on himself already.

You can propose him attending one AA meeting (together or not). It is a nice beginning because they don't guilt people and they actually know what they talk about.

They will probably confirm HN is not the right place to ask for help, and that my advice were a tad wrong.

AA seems to work for some people. It does not fit others.

If it fails, well, maybe it will still help him begin to do the second step. There are other solutions.

I don't know your proximity. Just don't over-invest yourself and accept you might fail.

Helping him for the first step and talking to him is way more than most people do. So if you fail, don't guilt yourself.

</comment><comment><USER24> Alcoholism is only a symptom of the problem. He clearly has lots of pain that needs to be addressed. You need to get his family or maybe a close friend informed. If nothing else, take it to HR. It's not an ordinary coworkers job to offer counseling on such a troubling matter. Also, his competency as a functioning alcoholic shouldn't have any influence in how to deal with this situation.

</comment><comment><USER25> If your company has a comprehensive medical plan, such as Kaiser, you can get help from them. If you have a real HR department, they can handle it. Pros are required. Dealing with alcoholism is very tough, and it get worse with time. Consider putting him on unpaid leave and sending him to some rehab center.

<comment><USER26> > Consider putting him on unpaid leave and sending him to some rehab center.

This is the most reasonable response I've seen so far.

And if the person in question happens to read this, or someone is in a similar situation regarding drinking, please know that there are other ways to quit other than AA. AA seems to work great for some people, but not for others, no matter how hard they try. By all means try AA, but if it doesn't work for you, know that there are alternatives.

By way of alternatives, there is Rational Recovery, SMART Recovery, the former of which I've had success with. For spiritual/religious people, there is church. I even know a former extremely hardcore alcoholic (used to drink with her) with a secondary opiate addiction who enrolled in a methadone maintenance program and hasn't had a drink since she started the program some 10 years ago.

(I would advise anyone who has decided they have a drinking problem to avoid any type of "moderation management" program. Just my personal opinion, but the only way I've seen people I would consider to be actual alcoholics succeed is through complete abstinence.)

It's hard, but it can be done. Just keep trying different options.

</comment></comment><comment><USER27> You should approach a mental health professional and ask for guidance. A social worker might be able to help you help him in some way. Death is hard. More so when it is as reagic as you stated. It changes us and sometimes not for the better. Grieving is complex and affects everyone differently. The only option is to get informed and approach him while respecting his dignity. You may not be the right person to talk to him, but you might be able to find the person who would be. Above all, be kind. Not for his skills as a programmer. Be kind because everyone might just write him off as a loser who drinks away his problems. Best of luck.

</comment><comment><USER28> Your co-worker's coding ability while in this state is completely irrelevant. What he's doing is clearly unhealthy, and he needs help. As others have pointed out, it may be more appropriate to alert family and ask them to help deal with it, but in the absence of family, it's probably best to find a way to bring it up and suggest he seeks some sort of outside help.

</comment><comment><USER29> I listened to this podcast today, might be good to find a doctor or a treatment clinic that will prescribe one of these drugs: [http://www.radiolab.org/story/addiction/](http://www.radiolab.org/story/addiction/)

</comment><comment><USER30> Sounds like a tricky situation. I don't have any special insight into this, but if I was the person drinking heavily I'd probably find it easier to talk about it outside the work environment, and I probably wouldn't want to talk about it if I didn't know the other person that well.

I guess what I'm saying is that it'll take a friend to help him get through it. If one of your colleagues spends time with him outside work, perhaps they can help you understand what the senior developer is going through.

The other option is to cut down on alcohol in the office, but whilst that's the simplest solution it might cause other issues.

</comment><comment><USER31> > He started drinking a lot when some of his family members died unexpectedly > in an accident.

I worked with a dev like this. (It was his parents who died.) But he didn't make it to his mid 50s. He was out drinking, and someone else drove home - someone more sober than my co-worker, but not actually sober. There was a car wreck, and my co-worker died from complications from the injuries.

I get that there's an immense amount of pain. But sedating the pain with alcohol isn't the answer. You need to find a way to deal with it, just avoid it.

</comment><comment><USER32> He is a liability. Drunk on the job is a big problem, and acknowledging it makes it worse. The fact that he needs to be escorted/guided home brigns it to a whole other level. It probably voids whatever e&o insirance you have in the event of a problem. And when the intern dumps him on his couch and he ends up drowning in vomit, the family will sue everyone.

The guy will implode. The smart move is to figure out how to get rid of him.

</comment><comment><USER33> Has anyone sat down with him and discussed his issues with him and what professional help he needs?

Has anyone even mentioned to him that it's not ok to come to work like that. You are right that he shouldn't be coding in that state but you are letting him come in, sit at his desk and carry on.

Have those conversations before he hurts himself, those around him and the business.

</comment><comment><USER34> How do you help him? You either stage an intervention, or do nothing. In reality, the decision to quit is really something people need to come to on their own, usually after hitting whatever their own form of "bottom" is.

Some people get there and begin recovery, some don't. You can't force someone to do it.

</comment><comment><USER35> Is he causing a problem? You haven't described a problem, only someone effective at what they are doing.

<comment><USER36> endangering his health probably

</comment></comment><comment><USER37> Lots of good advice on this thread; one thing I'll add: stay well, well away from any 12-step based programme. I'd suggest something like Rational Recovery ([http://rational.org/](http://rational.org/)) instead.

</comment><comment><USER38> Personally, I'd say he's a huge liability waiting to happen. What if he gets drunk at work, leaves, and hops in a car and ends up killing someone? What if he accidently mucks something up (deleting code, pushing something into prod that shouldn't, etc).

Perhaps his manager needs to sit him down and say that while they appreciate that he could be more productive while drunk, they can't have him drinking at work nor working while drunk, and the company is fully in support of him seeking treatment and therapy to help him.

Your company is enabling him and indirectly taking advantage of his problem because it's temporarily increasing productivity. In all likelihood he will get fired over this. If he has a sympathetic manager and team that can intervene and he's willing to get help, it could eventually work out.

That's my $0.02.

</comment><comment><USER39> My family, and quite a few friends, have a serious history with alcoholism so this scenario is very familiar. I think it's worth thinking about this in two ways simultaneously: As a humanitarian and as a business decision.

From the first angle, I believe (and others might disagree) that you have an obligation to offer as much support to this person within your capabilities. Understand however that there is nothing you can do to change them - they have to determine that it is a problem that they need to fix. This person KNOWS that they have a problem. Hallmark of an alcoholic is denial - but rest assured they know that it's a problem.

So then how do you help? Well it all depends on the situation. Your team hovering over in amazement while they code certainly doesn't help as it just feeds the idea that "I'm at my best when I'm drunk." Which is clearly temporally bounded.

Unfortunately there is no single solution, and simply pointing you toward AL- ANON or AA is kind of the nuclear option in most cases. Also don't assume that this person cares about self preservation as much as you do. If they just lost all of their important connections, they are likely severely depressed, but my guess is that they are mostly LONELY.

You aren't going to solve that overnight, but it might be possible to find ways to reduce their loneliness. Ask them to dinner, go bowling, whatever it is that would be good. Depending on their personality this might work better as a group or as individuals YMMV.

Alternatively you could force the issue hard by letting them know that this is unacceptable behavior. This one is risky though because this usually further isolates the person and the outcome sometimes is very bad. In some cases it works, but you really have to know the person well.

On to the business side...

Your business partners need to determine what kind of liability this person is to accomplishment of the job broadly. Despite your Rainman like description, the fact that company resources (Even if voluntarily) are being placed on ferrying this person home for risk of life, is a major issue.

This can and will likely lead to resentment towards that person, which usually starts as a joke ("Who's taking barney home tonight" guffaw..) but in my experience turns into vitriol quickly ("I can't believe I have to help this asshole again"). In turn that will lead to trouble with team-dynamics and you can take it from there. No amount of rainman like coding can overcome everyone hating to work with you or the unpredictability of it.

If you or your partners need to issue an ultimatum to this person, that might help, but without other social support could also be isolating. This one has more eggshells on it because it's higher stakes.

If it were me I would offer this person a paid leave of absence, so they could go and be with other friends or family - or in lieu of that, find someone to augment their work and reduce their workload until they can get back on their feet, while keeping them in the office and socializing. Can your team afford that? No idea what your situation is, but if you value this person, then you'll figure out a way to do it.

Bottom line: Support, don't carry. Nudge, don't drag.

</comment><comment><USER40> Guys, this is self pity. and deep down he knows that you're using him despite his pain. it adds to his self pity. how do you feel about that?

</comment><comment><USER41> This is sad and serious. However, there _is_ a point to the "Ballmer Peak" XKCD comic: [https://xkcd.com/323/](https://xkcd.com/323/)

</comment><comment><USER42> To me that sounds like a cry for help...

</comment><comment><USER43> I mean it's his life. Until he realizes he has a problem, nothing you do or say will reach him. He has to experience that rock bottom event which will trigger a change in his behavior. Unless he's being super disruptive (and it sort of seems like he's burdening the rest of the team), then it's an HR thing IMO.

FWIW, someone I know has written the best code I've ever seen while wasted and high on an edible.

</comment><comment><USER44> Maybe he can switch to weed? I helped a family member give up dangerous levels of drinking by helping him get a prescription. Then he gave up smoking weed entirely and now only drinks rarely. One successful example...

<comment><USER11> Ever tried coding on weed? #doesnotwork

<comment><USER45> I've never tried, but I've always read the opposite. I've seen many claims of coding better when high.

Then again, I've seen many claims of playing pool better when drunk, and that's definitely not true.

<comment><USER46> No, it really doesn't work.

</comment></comment></comment></comment><comment><USER47> Why is this an issue? Sounds awesome. Judge him by his output, not by other factors, as per the hacker manifesto. One idea is try drinking with him to give some camaraderie, then tapering down the volume. Also, obligatory XKCD @ [https://www.xkcd.com/323/](https://www.xkcd.com/323/)

<comment><USER48> That is the wrong attitude

<comment><USER47> Err, many of us might argue that feeling the world is full of right and wrong divides is the wrong attitude. Hell, look at Uber and the law for an example. Systems are systems.</comment></comment></comment>


Open Source -- Can It Innovate? - <AUTHOR> http://www.opensource.org/node/375

<comment><USER2> Innovation has less to do with open or closed source and more to do with organizational structure and chain of command.

Innovation comes from individuals - not from groups. If one person is in charge and has the power to drive his ideas through an organisation, whether that is an open source project or a company, he will be able to realise his innovative ideas. If consensus in an organisation is that decisions are made by committee innovation is less likely to happen. Committees have a tendency to boil away anything that is radical, new, or not proven.

Apple is innovative because Steve Jobs is the supreme leader.

Python is innovative because Guido van Rossum is benevolent dictator for life.

Bittorrent is innovative because Bram Cohen had an idea, programmed it himself, and had no organisation to answer to.

Linux is innovative because Linus Thorvalds is even better at divide and conquer strategies than he is at coding.

</comment><comment><USER3> It seems that to some extent this article is a response to obvious trolls: anyone who seriously makes the generalized claim that open source _cannot innovate_ is either a fool or a troll. Its quite easy to come up with cases where open source has innovated, and just as easy to come up with those where it hasn't. Of course, in our anecdote-happy blogosphere, people are often willing to use examples of the latter as proof of a ridiculously over- expansive generality.

The real answer isn't that "open source innovates" or "closed source innovates": rather, _people innovate_.

</comment><comment><USER4> Yes. Next question?</comment>


PayPal reversing India payments; here's why... - <AUTHOR> http://blogs.computerworld.com/15549/paypal_reverses_india_payments_heres_why

<comment><USER2> I wonder how many person-to-person transactions occur on Paypal. I suspect it's mostly business-to-business transactions at this point. Maybe this is Paypal's excuse to force users to upgrade to a business account.

I closed my PayPal account right after discovering the first horror story. Amazingly, this is one boycott which I've been able to sustain without any regret or inconvenience.

Most merchants are desperate enough for customers' money that they'll set up a merchant account to accept credit cards. If someone isn't and accepts only PayPal, well, that's another red flag for me.

I recently relaxed my rules a little; I am now prepared to pay via Google Checkout, but I generate a virtual credit card number with one month validity for Checkout.</comment>


Clang-11.0.0 Miscompiled SQLite - <AUTHOR> https://sqlite.org/forum/forumpost/e7e828bb6f <comment><USER2> If I understand correctly, everything is working as intended: a fuzzer caught a bug in an unreleased version of clang. The title makes it sound like somebody fucked up pretty badly.

<comment><USER3> What strikes me as odd is why SQLite is committing changes just to make an unreleased compiler happy...

<comment><USER4> I think it's a code improvement, too. It now computes the new flags in one place.

Just looking at these lines, I don't understand the code, though. Apparently, _sqlite3VdbeMemRelease_ can change _pMem- >flags_, but that change can be ignored. I can't think of a simple explanation for that.

Also, the function name _sqlite3VdbeMemRelease_ seems to indicate memory gets released, but _pMem- >flags = MEM_Str|MEM_Term…_, to me, indicates it contains a string.

<comment><USER5> > but that change can be ignore

No the changes _must_ be ignored. This is where the bug came from.

The code does store the flags, does an operation and then restores some flags while setting some new ones.

But after clang reorders the operations it will not restore the flags from _before_ the function calls but instead takes them from _after_ the function call.

I.e. any change `sqlite3VdbeMemRelease` does to `pMem` mutst be ignored but after reordering changes to `MEM_AffMask` `MEM_Subtype` are no longer ignored.

<comment><USER6> I think what they are saying is, why does sqlite3VdbeMemRelease change the flags in the first place if the change must be ignored?

<comment><USER7> Because these changes may not be ignored in some other place?

<comment><USER4> Probably, but it doesn't look like good API design to provide a function whose actions you sometimes have to partially undo.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Question for any low-level optimizing compiler engineers here: I obviously realize these are all important, but in your judgment, how much of making an error-free compiler would you say is about having a comprehensive test suite, vs. having _very_ careful software engineers, vs. having extremely thorough code reviews, vs. something else? Put another way, if you were to lose one of these, which ones do you think would have the most/least negative impact (or be the easiest/hardest to make up for with other things) in terms of the correctness of the final product?

<comment><USER9> Somewhat unrelated but I read somewhere that the Rust team test their releases by compiling the entirety of crates.io and all Rust GitHub repositories to find regressions. The tool is called Crater. Source: [https://www.pietroalbini.org/blog/shipping-a-compiler- every-...](https://www.pietroalbini.org/blog/shipping-a-compiler-every-six- weeks/)

<comment><USER10> No longer the entirety but still a sizeable chunk of it; it helps with regression detection for them. World's biggest test suite?

<comment><USER3> It is very common for compilers to be tested using client code. It is a practice that goes back decades.

Nowadays with so many open source projects and so much distributed computer power, it is even easier.

<comment><USER11> What makes it easy and powerful for Rust is that ~all Rust projects use Cargo as the build system and test runner, so Crater can really test every Rust project in existence, not just code samples hand-picked into compiler's test suite.

<comment><USER3> Only open source projects, which will not be the majority if Rust ends up taking up speed.

</comment></comment></comment></comment></comment></comment><comment><USER12> These sorts of bugs are more common than you may think! Here's gcc miscompiling fish shell: [https://github.com/fish-shell/fish- shell/issues/6962](https://github.com/fish-shell/fish-shell/issues/6962)

<comment><USER13> These sort of things get very tricky. Years ago in college me and my team was building an operating system and we were 100% sure we found a GCC bug. It turned out to be a gdb bug (we were disassembling with gdb) instead that made us _think_ it was a GCC bug, but it was actually a bug in our code. Very subtle.

</comment></comment><comment><USER14> I don't understand trying to use the trunk version of a under-development compiler. Would you use the binaries built from an unstable compiler in production?

Given that here we talk about SQLite, what's the advantage to use clang 11 instead of a previous version?

<comment><USER15> You're looking at the wrong side of sqlite usage. If you develop sqlite, why wouldn't you test it on every compiler/version combination you can get your hands on? Whether someone uses it in production is irrelevant.

<comment><USER16> Because you'll spend a lot of time chasing down bugs that are actually issues in the compiler. Unless you're trying to vet the compiler itself, this won't improve your software but cost you a lot of effort.

<comment><USER17> If you're SQLite, you generally do care about popular compilers converting your code into something wrong because you care about your code doing something wrong in general. If there was a bug in Intel processors that made SQLite fault randomly during tests, I'm sure they'd be interested in that too.

<comment><USER16> Yes.

Two things though:

1\. Hopefully none of your users run an unreleased clang from head, so you're not using anything a user will run into.

2\. Consider if it is it worth the effort to validate every commit pushed to head, or whether you'd get more out of your investment if you only tested releases that received some more vetting (e.g. nightlies).

<comment><USER18> > 1\. Hopefully none of your users run an unreleased clang from head, so > you're not using anything a user will run into.

Yes, but clang eventually gets released. You want to catch bugs in clang and get them fixed before that release happens.

<comment><USER3> Yes, but Clang is many months away from a release.

It is not the same as playing with a release candidate.

<comment><USER19> It's an automated fuzzer, it caught a bug very early, but the report got sent to SQLite instead of Clang. Probably because OSFuzz doesn't handle this distinction. (Though it might should. Or maybe usually new compiler versions catch problems in old code a lot more frequently than it catches compiler bugs. Dunno.)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> Clang 11 hasn't been released yet, right?

<comment><USER21> Why is OSSFuzz using such a bleeding edge compiler? That seems a little nuts.

<comment><USER22> Wouldn't you rather catch bugs before they're released in a stable version?

<comment><USER23> Exactly. This is precisely the point of nightly builds, is it not?

<comment><USER21> Clang 11 is still in early development stages. Release date is several months away. Clang 10 was released just a couple of months ago. 11 is expected to be buggy and not fit for use yet.

The SQLite devs now have to deal with "is it or isn't it a compiler bug" nonsense, taking their time away from fixing actual problems, working on features etc, from OSSFuzz deciding to use a compiler that the compiler devs themselves don't think is fit for use.

How much trust can you have that even fuzz results exposed are actually legitimate either? False positives, or worse still false negatives?

</comment></comment></comment></comment></comment><comment><USER24> Given that it's SQLite, this is likely a compiler bug. However, the code given is insufficient to demonstrate a compiler bug. Given:

          c = pMem->flags;
          sqlite3VdbeMemRelease(pMem);
          pMem->flags = MEM_Str|MEM_Term|(c&(MEM_AffMask|MEM_Subtype));

You could have say:

        sqlite3VdbeMemRelease(struct foo pMem) {
            *(some_other_type *)&pMem->flags = bar;
        }

In which case the C aliasing rules would allow the compiler to assume that the assignment through "some_other_type" does not affect the assignment through whatever type pMem->flags is.

I have seen this bug happen before, when compilers got better at inlining, where it was something like

       void getAddressOfSomething(intptr_t *address);
       ...
       char *p;
       getAddressOfSomething((intptr_t *)&p)
       *p=foo

The compiler could reorder the \\*p=foo line to be before the getAddressOfSomething call for the same reason.

TL;DR: Turn of strict aliasing via compiler flags (-fno-strict-aliasing on gcc) if you ever type-pun anywhere without using a union.

<comment><USER25> > Turn of strict aliasing via compiler flags (-fno-strict-aliasing on gcc) if > you ever type-pun anywhere without using a union.

That's the topic of Gary Bernhardt's (of JS WAT and Execute Program fame) very important "A Case Study in Not Being A Jerk in Open Source". [https://www.destroyallsoftware.com/blog/2018/a-case-study- in...](https://www.destroyallsoftware.com/blog/2018/a-case-study-in-not-being- a-jerk-in-open-source)

<comment><USER26> What an utter bullshit article. If people can't see the technical merit of an article past the swear words, they should stop working and join their convent of choice. Weaklings.

<comment><USER17> I think that is the entire point of the article.

</comment></comment></comment></comment><comment><USER27>
          c = pMem->flags;
          sqlite3VdbeMemRelease(pMem);
          pMem->flags = MEM_Str|MEM_Term|(c&(MEM_AffMask|MEM_Subtype));

'pMem->flags' is a u16[1]. Shouldn't it be copied to 'c'. How can 'sqlite3VdbeMemRelease' alter the value of 'c'.

[1][https://github.com/smparkes/sqlite/blob/8caf9219240123fbe6cf...](https://github.com/smparkes/sqlite/blob/8caf9219240123fbe6cff67b1e0da778c62d7621/src/vdbeInt.h#L148)

<comment><USER28> You're right.

But for some reason, it's thinking it can just reread the flags from the structure after that function, which has a non-const pointer

void sqlite3VdbeMemRelease(Mem *p);

I'll be waiting for the excuses of the "C standard evangelists" and the extreme optimization people on how the SQLite developers are wrong on this case and how it's funny to pull the rug under them.

<comment><USER29> > But for some reason, it's thinking it can just reread the flags from the > structure after that function, which has a non-const pointer

The pointer being const would not give the compiler any more guarantees that would allow it to reorder the read.

</comment></comment></comment><comment><USER30> Holy cow, this happened at -O1. This doesn't seem like the sort of optimization that should be possible at such a low level. I've run into plenty of trouble with higher level optimization flags in compilers before, but this is wild.

</comment><comment><USER31> I see several references in this thread to "a bug in Clang that is already fixed", but I can't see anywhere where anyone references this bug.

Can anyone point to the bug report (and/or fix) in Clang?

<comment><USER32> [https://bugs.llvm.org/show_bug.cgi?id=46195](https://bugs.llvm.org/show_bug.cgi?id=46195), it's now linked in the sqlite bug

</comment></comment><comment><USER33> Why would OSFuzz send the bug report to SQLite instead of Clang?

<comment><USER34> OSSFuzz is an automated system.

<comment><USER2> More generally, bug reports frequently get filed to a project that uses the system that actually has the bug as dependency - even with non-automated systems.

</comment></comment></comment><comment><USER35> So... if I'm understanding correctly, you're accessing released memory? How is this anything but undefined behaviour?

<comment><USER36> If I understand correctly, sqlite3VdbeMemRelease doesn't free pMem nor pMem->flags, just some other fields in the pMem struct.

<comment><USER37> You're almost certainly reading that correctly, that pMem is a pointer to a pointer to a block of memory, plus some metadata for that block of memory, and sqlite3VdbeMemRelease either releases the memory back to the application-level pool, frees it back to the memory allocator (glibc malloc/jremalloc/tcmalloc/dmaloc/etc.), or directly brk()/mummap()s it directly back to the OS.

I have no experience with sqlite internals, but it's pretty clearly doing some application-level accounting on top of the normal memory management.</comment></comment></comment>


15-year old girl designs an awesome iPhone game - <AUTHOR> http://blog.vasinov.com/post/7812212356

<comment><USER2> Impressive.. Just proves that age does not matter and you can achieve anything if you have the will..</comment>


Ask HN: Swithing from tech position to business one - <AUTHOR> Hey there,
I am wondering what are your experiences with switching your career from "doing" position like engineer, developer,designer,whatever where you doing the job... to the upper position where you are managing, leading directing like manager,C*O position,business developer etc where its more about softskills,presentation and you are representative of business.
I would like to know where are you more satisfied with job as itself,workload,isues your are solving,sallary etc.
My humble experience is...i have tried to change position to PM (project mannagemet) in IT area, but PM positions in corporates in my country are about resending email and chasing people. In SME is more interesting but financial evaluation is very bad. Poor base salary with better (not awsome) yearly bonus which vary on company results lied on your shoulders. Other story are your possible coworkers. As nontechnical man you aren't forced to be up-to-date with last technological updates at so deep level.
I am also trying to do my own business but its quiet hard find similar people with same attitude to build thing together,another point is doing technical and business staff in one person is difficult at least from beggining.
I don't wanna move to different area since i moved 6 times during 9 years,mainly due to job. <comment><USER2> For me something similar occurred. I have worked in a managerial position for 3 years and I really enjoyed but after sometime, if you passion is really to build things, you tend to be a little bit bored and stressed in dealing with people that sometimes don't want to be helped. Is kind of a case where beyond being a manager, you need to be a psychologist. This sometimes sucks, and in this moments you miss the days where you are a developer or engineer and only need to do your best to be updated with technology and create the best code that you can.

So, I think that this is very personal and don't have i recipe to be followed. Each one could discover your way and passion even you don't reach some cool title like C*something. The important is to be good with yourself to not get frustrated in the future.

<comment><USER3> > Is kind of a case where beyond being a manager, you need to be a > psychologist.

Not beyond - good understanding of psychology is a core competency for any manager.

<comment><USER4> Let me just disagree here: a manager is NOT a psychologist, and shouldn't try to be one. Good understanding of psychology has NOTHING to do with managing people. People skills yes, but that is something entirely different from psychology.

A great psychologist can suck at managing people.

They are entirely different skills, with very little overlap.

<comment><USER5> I'm going to respectfully disagree with you here and argue that understanding some facets of psychology (perhaps wrapped in a broader definition of people skills) are essential to long term success managing teams and projects.

Specifically, understanding Goal-Setting Theory, Motivation Theory, and Self- Regulation Theory can provide substantial insights into why people think the way they do and give managers a framework to understand their employees and how their actions will impact their motivation and goals. The book PeopleWare touches on this a little bit when they discuss the role of autonomy in improving worker performance. Knowing that people like to feel ownership of their work and projects helps me, as a manager, guide the team and work on framing things in terms of my direct reports exercising autonomy rather than me dictating. They'll be happier and feel more involved in the work and as a result, the quality of work will be higher.

This isn't to say you need to be a life coach, therapist, and parental figure wrapped up in one. That's not your job -- though team member's lives will impact their work at some point and you'll need to empathetic. Your job to is to guide your team to meeting their objectives and understanding part of the human psyche and what motivates people will make you better at this job. Hands down.

<comment><USER3> I'd add to that some understanding about major personality types/dimensions. Being able to recognize them helps you in negotiations, assigning people to roles etc.

</comment></comment></comment></comment></comment><comment><USER6> I'm currently in transition from developer to PM. As a developer you always have the ability to bang something out and do something. As a PM, there are more frustrating days. I spend my day answering emails, tracking down stakeholders so I can figure out what the requirements are, getting the status of work, and reporting on the work. The bad days are when you get emergency requests or requests that don't make sense. You need to be able to work with everyone and see their point of view, even if you think they are incompetent

</comment><comment><USER7> I cant provide an answer to your specific question, however you should note when moving from any non-management position into a management position many people lack the skills needed to adequately perform their job. Not everyone is naturally talented at managing others, progressing through the workload, keeping up morale, motivating subordinates etc. I think this is a big failure point for people transitioning into these types of careers. Your stance on what project managers do stood out to me. At the end of the day many management positions require exactly that from you.

<comment><USER4> "Not everyone is naturally talented at managing others" -> moreso: nobody is naturally talented at managing others. Some people have the required talents (empathy, people skills, listening talents, caring talents), but in the end managing people is an entirely unnatural skillset that needs to be learned.

Which is why there is so much bad management.</comment></comment>