Ask HN: How can an older developer thrive? - <AUTHOR> I'm almost 40 years old. I was a speaker at tech conference in the summer, and I was the oldest speaker there. It feels like younger folks are coming up fast, can work longer hours, and are cheaper.<p>I'm wondering how have you dealt with the challenge of being an older dev? <comment><USER2> Forget about working at web startups, they are soul suckers.

Move to a big established company. (Doesn't matter Google, Oracle or a Bank). Find a place that suits you. You want a good health insurance? You want to NOT work 60 hours a week for free food? There are places like that... just not typically advertised on HN :D

In some locations (London), older people all move to contracting. More money, less demanding and you can handle your life as you wish.

In other locations, they might gravitate to defense and government agencies.

Basically, you "just" need to get in an environment that doesn't favor long hours and cheapness.

<comment><USER3> > _There are places like that... just not typically advertised on HN :D_

Not looking for free information, but where would I go hunting for this sort of thing? Or is it mostly word-of-mouth?

</comment></comment><comment><USER4> Only 36, but -

Working longer hours is counter-productive, it reduces output. And having a lot of experience means being able to come up with a _better_ way to do things, which typically saves time.

So, I work for companies that don't confuse hours worked with output.

<comment><USER5> I have made the same observation. Long hours for too long and people start to make less smart decisions and meeting somehow take longer. I assume it is because all that socialization and chatting people need creeps into meetings. Less smart decisions means more chaos, no prioritisation and more late night bug fixing leading to the cycle.

Work for company that values output more then worked hours. But also, find workplace that needs the experience - e.g. place that needs people working more independently or figure out less known technologies or needs them to communicate with customers or has big more complicated projects or something like that.

</comment></comment><comment><USER6> My strategy is to hit FI before turning 50 (Financial Independence)

Then you can build startups. Raise goats. Whatever!

[http://www.mrmoneymustache.com/2012/01/13/the-shockingly- sim...](http://www.mrmoneymustache.com/2012/01/13/the-shockingly-simple-math- behind-early-retirement/)

</comment><comment><USER7> If you're in the U.S., look into contracting/consulting directly for companies. Companies pay handsomely for a couple of things: (1) risk reduction and (2) pain relief

I don't recommend trying to meet their needs for #1. I just mention it because I think a lot of people give risk reduction away for free i.e. fixed price contracts. If you do decide to offer a fixed price, at least double your rate. You'll still lose money but maybe not as bad. ;-)

Pain relief, on the other hand might be in your wheelhouse.

Let me clarify; sometimes when a manager needs to get certain projects done, throwing 6 junior programmers isn't going to cut it. Sometimes a manager needs someone who has a lot more f __k ups [where do you think experience comes from?] under their belt and now knows what to do. If you can be that guy, you can make his pain go away to the tune of $150-200 /hr.

</comment><comment><USER8> If you are 40 and speaking at a Tech conference how much experience do you have? Maybe start looking at moving away from the "Coal face" of development? I moved to Architect level 7 years ago and am progressively doing less and less coding whilst not feeling like I am losing out (I love to code). You are right in that there are a lot of younger devs coming up, but those younger devs need experience in order to thrive as in my experience a lot of them prefer the fanciest route of newest technologies without the foresight to see where things can go wrong (I am a great believer in "The most boring solution" \- but the best tool for the job). Someone mentioned below about companies that don't confuse hours worked with output, this is key in my opinion, just because someone worked 14 hours doesn't mean they necessarily output more work than someone who worked 6! I would also say look at contracting / consulting if you have the experience, this allows you to work on your own terms, it changes your mindset of providing value to a client, you become much more results focused! Good luck with whatever you do - 40 is by no means a barrier to anything in my opinion!

</comment><comment><USER9> Stop thinking you're old, and that exploiting people (very long hours, low pay) is normal for companies.

Places that exploit employees like that are not healthy places to work for anyone of any age.

</comment><comment><USER10> 40? Ha! I have shoes older than you..

Not really.. but I am a bit older than 40 and if what you are looking for is a steady source of income, I would recommend you to look for places that have large investments on older ( >10 years) technologies that you already understand. Younglings don't care for stuff like Foxpro, Cold Fusion, SQL Stored procedures, etc.

*It kind of sucks, but pays the bills :)

</comment><comment><USER11> If you're 40, you have ( or should have) nearly a couple of decades of hard- won experience in building software, working within organizations to get things done, and subject matter expertise in the types of projects you worked on [0]. That should show up both in your resume / work history and in the more challenging projects you're able to take on.

Don't try to compete with younger people based on number of hours or cost; that is a game you are guaranteed to lose.

[0] Conversely, if you don't have those things, now is the time to start stepping up to the plate and acquiring them. The best of the younger people you are competing with are already working hard at doing so.

<comment><USER12> > _" If you're 40, you have ( or should have) nearly a couple of decades of > hard-won experience in building software"_

Why should every 40 year-old have 20 years of experience building software? Most 20-somethings weren't building software 20 years ago. Do you feel that people in their 30s can't (or shouldn't) learn to code?

</comment></comment><comment><AUTHOR> BTW - here's some resources I've already read, which were helpful:

[http://www.selfstarter.ca/1916-2/](http://www.selfstarter.ca/1916-2/)

[https://improvingsoftware.com/2009/05/19/programmers- before-...](https://improvingsoftware.com/2009/05/19/programmers-before-you- turn-40-get-a-plan-b/)

</comment><comment><USER13> Take leadership roles at early stage startups. Find non technical founders that are looking for a CTO or VP engineering. Sell your skills, experience, wisdom, and yes age. You'll have to balance architecture, coding, and managing. At your age this is probably the best bet - to continue coding but also stay relevant and not compete with young coders. In short, leadership roles are your best option.

</comment><comment><USER14> As I've gotten older, I've definitely noticed it's become harder and harder to find jobs. Even contracts have been harder to pick up, the market is really flooded and I've got a in demand skill-set.

My solution and best advice is to try and move into a management position. If you're speaking, you're good with presentations and people. You can mentor, and speak to experience without having to keep up with the younger, cheaper generation.

</comment><comment><USER15> I think the key here is to keep up-to-date and constantly learn new stuff. You need to keep your skills sharp and keep learning new tech. Simply put, you have to learn something new all the time to keep current. If you stagnate, you will run out of options. See my post here [http://www.selfstarter.ca/](http://www.selfstarter.ca/)

</comment><comment><USER16> why does this matter, I plan to keep coding into my 70s, no joke.

just keep learning and designing and coding the rest will follow, age is secondary I believe.

<comment><USER17> Unfortunately, things don't always go as planned. I'd love to be doing this when I'm 70, but I'm not sure my mind and body (eyes, hands) will be able to do it.

</comment></comment><comment><USER18> Sincerely having perspective in technology pays off. I feel the tech market is like a rollercoaster. You start your career going up with one technology, then leave when it is going down, switch to other stuff...

... and suddenly you witness the same pattern you saw 15-20 years ago. And you know how the market will respond.

Use that experience wisely.

And enjoy the ride ;-)

</comment><comment><USER19> You can finish the same work in a short time because of your experiences, you don't need to work longer hours, 40 is not old, it's the beginning of getting old, just keep moving.</comment>


Apple is a traditional business - <AUTHOR> https://www.bloomberg.com/view/articles/2018-05-02/i-m-sorry-i-criticized-you-apple-you-win?cmpId=flipboard <comment><USER3> > ...this is a time when Amazon is pushing innovations that don't solve any > real-world problems but may create some: like smart speakers, with their > threat of big brother-style surveillance in exchange for a minimal increase > in convenience, or complex and expensive cashierless stores that won't > deliver much of an improvement to our shopping experience but may cost > underprivileged people their jobs. This is a time when an entire driverless > car industry is trying to convince the world that its products are safe > before it can even come up with convincing stats – or prevent deadly > accidents like the one in Tempe, Arizona earlier this year. This is a time > when Google is trying to subvert new privacy regulations to turn them > against content producers. A time when Facebook, blasted by media and > regulators for ignoring people's privacy concerns, starts a dating service > which will collect people's most intimate data.

That is a really pointed indictment of our current industry. Wow.

I don't agree with some of the assumptions, but it really points to how rarely an innovation like the iPhone really occurs.

<comment><USER4> I occasionally loose sleep, wondering what products were lost due to Jobs' early death.

Edit: Ok, fine. I loose sleep wondering what ideas were out there that languished because Jobs wasn't around to see their potential and capitalize on them. The argument "he wasn't that important because he didn't actually invent X" is played out, and it fundamentally misses the point.

<comment><USER5> Not worth it.

Jobs was, for all intents and purposes a phenomenal business person in spite of the fact that many people early in his career didn't see it.

Name a product apple invented that was HUGE? Go ahead and think about that. GUI & Mac was Xerox, the iPhone was Xerox and palm and...

Simply put he was a master at finding good things and refining them into great things.

Lets look at the design side. MacBooks for all their glory are just advanced machining (cnc + automation) put to work at scale (and thats "new" but not groundbreaking). OSX is just *nix with a nice GUI (something open source could learn from).

Jony Ive leaves apple, then I might start to worry.

<comment><USER6> > iPhone was Xerox

LoL what?

Everything that's built with computers can be traced back to the guy who invented the transistor, but that does not mean innovation stopped then.

<comment><USER7> The first implementation of a smart phone was likely the LG Prada not the iPhone.

<comment><USER8> I mean... if you're playing that kind of naive equivalency then the first "smartphones" were the early PDA/Phone hybrids like the HP OmniGo 700LX, the pdQ, or the Nokia 9000 Communicator.

But that would be silly, because the modern "smartphone" era was _absolutely_ started with the iPhone.

<comment><USER7> You misunderstand. My answer was to refute that the innovation in smartphones came about with the iPhone and not the LG Prada which was released the year prior, market penetration notwithstanding. I was talking about smartphones in the vein of the iPhone not of the technology that could be assembled to make a phone.

HP OmniGo 700LX, pdQ, and Nokia 9000 Communicator didn't have touchscreens and were like night and day compared to either the Prada or iPhone. You are comparing apples to oranges.

<comment><USER8> Nothing in the LG Prada was innovative - it's design was that of PDAs from a _decade_ before. It's touchscreen did nothing that previous models hadn't.

Was it a nice industrial design? Yes. Wasn't very original though (and neither was the iPhone's).

You're also shifting the goalposts - you said smartphone, not "had a touchscreen". It was the first _capacitive_ touchscreen but not even close to the first _touchscreen_ btw. The IBM Simon in _1992_ likely takes that win.

What the iPhone did that was innovative was in how it _improved upon and combined the technology_. It also pushed forward a lot of things in those technologies by several large leaps.

Long story short - the LG Prada is superficially visually similar to an iPhone and, likewise, bringing it up shows a very superficial understanding of the history of the mobile phone space.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I probably now fall into this camp as well. I made fun of Apple for years, but while I still hold an emotional and likely completely irrational dislike for their products, if someone were to ask me for a recommendation on a phone today, the only phone I could recommend in good conscience is an iPhone, because it's the only option that takes privacy and security seriously right now.

<comment><USER10> > because it's the only option that takes privacy and security seriously right > now.

iPhones are a luxury. If you can recommend them it means you already belong to the richest part of the planet. For the rest, they jut can't afford it, and Apple was never interested in making anything cheap.

<comment><USER11> 21% of Apple's quarterly revenue was from China. China is not well-known as one of the richest parts of the planet.

<comment><USER12> Apple is luxury in China too. Do you really think it's the average Chinese that are buying iPhones?

<comment><USER13> A worker at Foxconn has about the same discretionary income as blue collar workers in the states; their food and housing is covered by Foxconn, but isn't normally listed as part of their salary.

Now, albeit, they're slightly on the higher end of Chinese workers, but it's not just the shitty aristocrat's kids spending money on iPhones. The people making the things make enough money to buy one, just the same as my hairdresser does.

<comment><USER12> In that case Foxconn isn't an example of an average company paying average wage. The disposable income per capita in China was 36396 chinese yuan in 2017, which makes a little over 400 USD per month. Median disposable income is even lower. You're not even close to buying iPhones with that kind of wages.

<comment><USER13> At $400USD/month after food, housing, transportation, and healthcare are taken care of absolutely puts you into iPhone purchasing range.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> Having been a fan of Apple for over a decade now, over the last year I've come to the opposite point of view. Their iPhone and airpods are great products and of course they can ride a long time on those, but in every other area from Macs and accessories I feel they are falling flat on delivering great user experiences. From FaceTime to Siri, to crappy Apple TV remotes, Home Kit... there are just a LOT of mediocre products that sit idle for years. Of all times, the company is at the point most worth criticizing. I do blame Tim Cook for this stagnation in product development. And indeed their lack of ideas means they have nothing better to do with their cash, that they are buying back shares. Ehh, I'm so jaded these days on Apple.

<comment><USER15> Interesting you say that about the Apple TV remotes. I thought they were all horrible but I really like the new one. The speed at which I can move around and the precision of selecting things is really great.

<comment><USER16> Why can't I tell which side is up without looking at it or accidentally changing something? Why is the black IR sensor the same size, shape, and location as the charging port, but on the wrong side? Why can't it decide that a log press when it's upside down is probably someone sitting on it? Why is it too small to comfortably hold?

Maybe this thing works for people without kids, but I'll take a boring remote any day.

</comment></comment></comment><comment><USER17> (Disclosure: I hold AAPL)

Great article but a couple of points:

 _On Tuesday's call, there was just one question about innovative offerings, and it concerned health applications, an important driver of Apple Watch sales but not a potential world-beating sensation. Apple appears to be happy to think small and focus on its shareholders, not on pie-in-the-sky ideas, like other tech companies, including industry leaders._

There's a key point I think the author is missing here. If Apple could spend $50 billion on R&D and get a worthwhile return, I think they absolutely would. Their below-par R&D is not from a lack of wanting. It's because they are much more focused. They don't burn cash on new ideas just because they can.

And if I thought Apple's health aspirations were limited to Apple Watch, well, I wouldn't be in the stock.

<comment><USER18> Most of Apple's R&D spending is not categorized as R&D. R&D spending is for basic tech research not product development.

<comment><USER19> And my understanding is that companies have considerable latitude in designating whether a particular activity is "R&D" or not.

R&D expenditures don't seem like a metric that can be precisely compared across companies, or even reliably connected to future business success. It's not like companies that report the highest R&D spending are always the ones winning.

<comment><USER20> I agree with your second paragraph, but quibble with the first.

I don't think there's that much latitude. The IRS routinely questions companies large and small, in detail, about whether they were really developing new products, or just polishing/improving existing products. The former counts as R&D (and gets favorable tax treatment), the latter is not.

The test is more complicated than this, but latitude is not a word I would associate with this term of art.

<comment><USER19> I get why the IRS would be interested in companies trying to hide operations inside the favorable tax treatment of R&D, but do you think the opposite is also true? Would the IRS (or SEC) care if a company _underreported_ its R&D spending by choosing to classify new product development as a typical expense?

<comment><USER20> Point taken. I don't know if the SEC would care, seems possible, but you're right, it hadn't occurred to me anyone would deliberately under report R&D, there probably is latitude in that direction.

</comment></comment></comment></comment></comment></comment><comment><USER21> The author of this opinion piece is praising Apple for its willingness to NOT innovate.

I strongly disagree.

The best solution to privacy concerns is not to stop innovating. Surely there are better solutions.

Apple is leading the way on some consumer privacy issues and I applaud them for that. But surely if Apple halts innovation, it will die as all companies do. Let us hope they are smarter than that.

<comment><USER22> I think the point here is that Apple is not innovating in "stupid" areas(for the author) - like cashierless stores, automated cars, surveillance speakers etc.

In a way, yes, that is admirable - I think all other tech giants are going in the "wrong" and harmful direction, while Apple still concentrates on making good hardware with matching software(their abysmal attempts at MacOs fixes notwithstanding).

<comment><USER23> Isn't it naive to criticize cashierless stores and automated cars as "stupid areas"? Arguing that those will cost jobs is akin to saying a 100 years back that the "iron horse" will cost jobs. Mankind has to continue to innovate and it is disingenuous to argue that a cashierless store is a "minor convenience".

<comment><USER24> My current experience with just about any cashierless option at a grocery or department store is far from a minor convenience, it's almost entirely an inconvenience. I now get to do what I did over 20 years ago and bag groceries, except then I was paid for it.

However, it allows the store to place one minimum wage employee over multiple lanes versus having to have one per lane (or even two if it was like the grocery store when I grew up that actually had backers AND checkers).

So, like many innovations, it adds little to no convenience but is a very effective way of cutting labor costs. By Grabthar's Hammer... what a savings.

<comment><USER23> To each his own, I exclusively use the self checkout line whenever I can (especially at costco) and it saves me a ton of time. Besides the point here was about innovation and working towards a better future, which the amazon cashierless stores might be. Just because the current solution for self- checkouts is bad doesn't mean we should stop innovating.

<comment><USER24> Working towards a better future sounds like an admirable goal, but that's ad- speak on top of actual goals of the innovation, which is more profitable retail.

I don't personally think a robot grocery store is something I'm interested in, but that's entirely subjective.

</comment></comment></comment></comment></comment></comment><comment><USER25> I read the whole article and I'm not impressed. The crux of the article seems to be that he now admires Tim Cook and Apple because they don't spend money on progressive technologies that have a potential for harm. His examples include smart speakers, driverless cars, and cashierless stores that presumably shouldn't be pursued because of their potential for societal harm. Look, things like privacy, safety, and job opportunities for the underprivileged are immensely important, but his arguments are flawed. By the same standards, the iphone and a myriad of other important technologies should never have been pursued.

</comment><comment><USER26> I've been an Android user for years; I recently decided to change to iPhone, and this article really captures the reason why: Apple seems to be the only company for whom a cloud backup of my phone book is a liability, not an asset to be monetised.

<comment><USER27> Shouldn't that be inverted? Your iCloud Addressbook backup isn't a liability.

<comment><USER28> From the perspective of the vendor, it would be a cost center rather than a revenue generator (thus a liability). From the perspective of the customer, it's an asset because he isn't selling personal info for backups (which would be a liability).

</comment></comment></comment><comment><USER29> Apple's main endeavor is to develop an actual product. They design and engineer something in the hopes that people buy it.

The honesty - and arguably, quaintness - of that consumer relationship separates Apple from the rest of the valley.

<comment><USER30> Eh, I think this argument is a bit glib.

 _Google 's_ main endeavor is to develop an actual product. They design and engineer something in the hopes that people _use_ it. (Then they sell ads, like the publishing industry has done for 200 years.)

<comment><USER29> The difference is where the exchange of money happens. Because Google's, and Facebook's, Amazon's, and most SV startups' services are free, you get the privacy problems and the ulterior motives and the trust issues. With Apple, you paid for the product up-front. The transaction is done and in the open. They don't have to do anything skeevy to make money off their product.

<comment><USER31> Apple has plenty of non-aligned incentives, they control the store (+30% subscription tax on Spotify, taking down apps that compete with "core functionality"), they don't want you to repair your phone (and planned obsolescence) where ewaste and their profit is connected.

<comment><USER32> Apple does not seem to want you to open the phone, but they are easily the most repairable phones available. Most repair shops will repair any iPhone, and you can stumble through it yourself using YouTube or iFixit.

According to this 2/3 Apple devices sold are still active today: [http://www.asymco.com/2018/02/27/the- number/](http://www.asymco.com/2018/02/27/the-number/)

I believe Apple gains directly from the longevity. People know that Apple products last long and hold resale value; where I am the iPhone 5s from Sept 2013 is sold second-hand for ~$150CAD

Devices with high resale value mean customers can upgrade frequently.

</comment></comment></comment></comment></comment><comment><USER4> It is kind of amazing how much the landscape has changed. I have always used Apple computers and phones, and I used to view Apple as a vaguely sinister company, but one that produced the best products. It is very weird to me that they are now a model for non-evil practices among large tech companies.

<comment><USER33> > I used to view Apple as a vaguely sinister company

What about Apple gave you the impression they were sinister and what has changed?

I've actually been going the opposite direction with my opinion of them. All of their talk of "you are not the product" and "we respect your privacy" is great but feels opportunistic given the current climate. The foundation of Apple's products that they are touting as privacy focused were actually about controlling the experience. They've cleverly spun happenstance into a platform to promote their products.

None of that really strikes me as sinister though, when I say that they've been going in the opposite direction I'm referring more to the way they support their hardware and their shady tactics when it comes to device repair. For Apple the profit is in selling you a new device, they make no money if you don't upgrade. A repaired device isn't a profit, it's the burden of continued support. So what we're seeing is products that look great but aren't designed with longevity in mind and replacement focused support.

Apple shipped the iPhone 6 with a battery that degraded quickly and by most would be considered faulty. Rather than issue a recall or some other pro- consumer solution, they hid the fact that batteries weren't functioning to specification by throttling the CPU/GPU and degrading performance. This also had the nice benefit of coaxing users to upgrade because their device was slow.

When Apple got called on this, their response was to claim it was a benefit to the user rather than admit the batteries were faulty. They then graciously offered to lower the price on a battery replacement. So instead of a costly recall, they're profiting or breaking even on you having to pay for a replacement. If that wasn't enough, many people are reporting that Apple is refusing to replace batteries on devices without first fixing other faults like cracked screens or "broken" microphones [0].

Apple is also using it's new found position as bastion of your privacy to justify other shady practices like disabling components or bricking hardware entirely if it isn't "genuine" and then claiming it's to protect the consumer's privacy.

Their growth as plateaued and I feel like this is only the beginning of the Comcastic abuses of the customer we typically see from the market leader trying to find new ways to grow. That's why I think they've been becoming more sinister anyways.

[0] [https://www.theinquirer.net/inquirer/news/3031484/apple- dema...](https://www.theinquirer.net/inquirer/news/3031484/apple-demanding- unnecessary-repairs-before-replacing-iphone-batteries)

<comment><USER34> I'm not the OP but since the early 1990s I've had an uneasy feeling about Apple, primarily due to their ability to sustain a cultish following.

It went beyond encouraging loyalty bymaking good products ( though that was the era of the dire Performa ) and into mocking and belittling non-believers, and rewriting history in a sort of Soviet-airbrushing style.

I don't know whether the company itself nutured that but it was unsettling. Microsoft was explicitly dominating like a tyrant, but Apple was a cult leader with a thin smile and an army of vehement adherents.

<comment><USER33> The cult like follow Apple has enjoyed has never really bothered me. From a business sense it makes sense that they would cultivate it if the culture was beneficial to them. You see the same sort of fanaticism with cars, guns, televisions, cameras, watches, sunglasses, and a myriad of other products.

I think that understanding of marketing and brand, in addition to the value of engineering, is what made Jobs such a great leader. He understood enough of both sides of the business to make them work together cohesively where other companies tend to favor one or the other.

</comment></comment></comment></comment><comment><USER35> I wonder if the author likes Apple because Apple has, as he states himself, stopped innovating. This means that Apple's offerings offer stability, which means comfort.

That being said, I agree with the authors sentiment.

</comment><comment><USER36> I'm very fond of Apple's business stance; my concern is not with it, but with their _technological_ stance. Apple products are built on lock-in; they are proprietary and closed, not open. Frankly, at this point they're not even really all that good (in fact, sometimes embarrassingly bad — something not limited to Apple!).

I want the freedom to tinker, the freedom to review, the freedom to extend. That's why I use Linux.

<comment><USER37> I'd settle for iMessage and FaceTime being open...

<comment><USER38> In the case of FaceTime, it's VirnetX that's to blame. Apple's pledge to open- source it ran hard into a lawsuit from VirnetX that required Apple to redesign and still currently has them paying $439M to VirnetX for patent infringement.

</comment></comment></comment><comment><USER39> Here's a naive question.

This all sounds noble and all , but doesn't Apple know just as much or more about you via phone / watch / iCloud / iTunes / Apple Pay / Apple TV?

Are we celebrating here that they're not openly selling this information or using as primary business model ? Or that it's only used for internal business?

<comment><USER40> Apple has been criticized in the past for having an internal culture/dictates to avoid "synergizing" this kind of info between their products/services - criticized because it affects the quality of features like Siri.

Contrast to companies like Google (who don't directly sell your info but still profit from it) or Facebook (who have had numerous exfiltration incidents over the years and who sell very targetable info that could be used to isolate a single person).

Meanwhile Equifax has horrible security and you aren't even remotely their customer - they just collect your data and get passive income from that.

</comment></comment><comment><USER37> I only wish the author hadn't forgotten to mention the quintessential non- Apple company: SNAP[0]

Many say the current game of musical chairs is overdue for a pause. My money (not literally) is on Tech stocks taking the biggest hit. But as the article put it, Apple isn't a Tech company -- it's a manufacturer (and superb retailer!) of products that are observably differentiated, as they clearly command higher prices for virtually the same functionality as their competitors.

[0] [https://www.bloomberg.com/news/articles/2018-05-02/snap-s- sl...](https://www.bloomberg.com/news/articles/2018-05-02/snap-s-slowdown- stirs-doubt-on-redesign-triggering-share-plunge)

<comment><USER41> > But as the article put it, Apple isn't a Tech company

That's not what the article says. In fact, it says "Apple is the perfect tech company..."

I'd like to hear a definition of "tech company" and doesn't include Apple.

<comment><USER42> I think Apple is a true tech company. How can you define a tech company? it has got holds on both hardware and software for its ecosystem. Doesn't that make it a tech company?

At this stage, if any company which can create an OS like iOS would be considered tech company leaving aside the hardware part.

</comment></comment></comment><comment><USER43> Apple's market cap will keep rising for the next few years without any innovation through buybacks and service revenue from existing devices. But the fact that they're not talking about new products or hinting at anything down the line concerns me...

<comment><USER44> > But the fact that they're not talking about new products or hinting at > anything down the line concerns me...

Why would they show their hand? There's little to be gained from it and it would harm their brand when these technologies don't pan out how they would want. See Google Glass - huge fanfare but no real substance.

Besides, we hear of technology that is supposedly being worked on inside Apple. Project Titan, the AR headset that is looking at a 2020 release date.

</comment></comment><comment><USER45> > After Apple's latest results announcement, one could knock it yet again for > its stable dependence on a single mature product — the iPhone...It shows > that a stage of useful progress is over and doesn't tip over into overhyped > uselessness

Stagnanation isn't acceptable for any company. Apple has always been about "overhyped uselessness"(eg. Touch Bar, animoji). The article makes claims that Apple "offers a fix" referring to the battery throttling, but any company of that scale is obligated to. They were shamed publicly. I agree with privacy commitment, but that alone, isn't enough.

</comment><comment><USER46> His argument that Amazon is not innovating to solve real-world problems seems grossly uninformed. AWS is putting out new features almost weekly that solve lots of real-world problems across all industries.

</comment><comment><USER47> Why not go the whole hog and just reword the headline "a story about Apple"

</comment><comment><USER48> Bloomberg should be doing a retraction of their previous stories that were factually wrong about "struggling iPhone sales".....

</comment><comment><USER49> This article is _almost_ in a satirical voice.

</comment><comment><USER50> Feed the masses and dine with the classes.

Apple is focusing on the 80%, and have developed a strategic advantage based on privacy. This is not a new lesson.

Commercially this is smart and profitable, but it was at the expense of the 20%. The fact is that their products stopped meeting my needs. So instead of a apology, I would like to thank Apple for the lock in that took over a year to unwind before I could leave the Apple ecosystem. It was a harsh lesson that I will never forget.

</comment><comment><USER28> What a strange article. He spent most of the time saying, "I could criticize Apple for .." which seems like a criticism shrouded in something else or backhanded compliment (if that). Also, what's this infatuation between good and evil? Why does that even belong in a tech conversation?

<comment><USER51> Because technological advancements are almost by definition poorly understood and people tend to be scared or at least skeptical of what they don't understand.

</comment></comment><comment><USER52> Original title: "I'm sorry I criticized you Apple. You win"

<comment><USER53> One of these days I'm going to write a bot to keep track of title changes. "Apple is a traditional business" is the current title, for the record. I expect (I hope!) it will be changed again soon, because it doesn't make much sense.

<comment><USER54> We changed the title because the original one was arguably linkbait, and the site guidelines call for changing those (see [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)).

When we do that, we try to find a phrase in the article itself that represents what the author is saying. That's what we did here. If there's a better, more representative phrase, we can change it again.

<comment><USER53> "Apple is a rock of common sense in an industry that's gone rogue" (the subtitle) would be better.

"Apple is the perfect tech company for this day and age, an example to the rest of Silicon Valley" (the take-home message in the first line) would be better.

The Apple "is a traditional business" remark refers to the main point of this opinion piece, which appears right before that statement:

"This is a time when companies whose innovations are more intrusive than useful, more gimmicky than problem-solving, operate with business models that either burn investors' cash or turn the users into products.

"At a time like this, Apple is a rock of common sense, sobriety, dignified engineering supremacy, prudent financial and supply chain management, effective marketing, and customer-oriented retailing."

Without the proper context, "Apple is a traditional business" could mean anything and doesn't mean anything at all.

<comment><USER54> "Apple is a rock of common sense in an industry that's gone rogue" is too baity, even more than the original title we changed. It's guaranteed to provoke objections if we put it in there. Ditto with "perfect tech company"—can you imagine the arguments that would lead to?

You're welcome to make a bot to track title changes. People have done this kind of thing from time to time, e.g. [https://news.ycombinator.com/item?id=16018430](https://news.ycombinator.com/item?id=16018430). IMO the main thing it would show is how much work goes into getting this right, and how hard it is.

Edit: Btw I agree with you that the title we changed it to isn't great; I just haven't thought of a better one or seen a better suggestion. If someone has an accurate, neutral title that preferably uses representative language from the article, we'll happily change it again.

<comment><USER53> The problem with opinion articles is that they are not "objective" by definition. A representative title cannot be objective. It's unfortunate that interesting articles (they may be somewhat interesting, if they get to the front page) are devalued by listing them under aseptic, uninteresting, click- repellent titles.

</comment></comment></comment></comment></comment></comment><comment><USER55> Can the title be fixed to include the comma that was inexplicably dropped from the original title?

</comment><comment><USER56> Tim Cook made it clear be thinks that no industry should have any regulation, especially his (technology, privacy, consumer hardware, should all have no regulation, he thinks!). He thinks Facebook should have done what it did - <USER2> regulation is best regulation he says.

No, Tim Cook is exactly as insane and rogue as the rest of them. He is just doing what he can do make Apple the most money. He is not full of common sense. On the contrary, he's basically insane.

Apple should be regulated. So should every industry. If you're a CEO and you think you shouldn't be regulated, it's clear you're out for #1 and #1 alone.

Apple is not some saviour of the universe. They're just making money, and _should_ be critized, not apologized to!

</comment><comment><USER57> Would anyone else like to say sorry?

</comment><comment><USER58> Would be nice if iOS 11.4 did multi-room output via Airplay 2.

[https://forums.macrumors.com/threads/apple-seeds-third- beta-...](https://forums.macrumors.com/threads/apple-seeds-third-beta-of- ios-11-4-to-developers-public-beta-available.2117196/page-3#post-26026929)

The latest beta of iOS 11.4 / Airplay 2 does not work with multi-room output at the moment.</comment>


AskNews: Seeking comments on an app to bring the "knob-style" feedback to the web - <AUTHOR>

I just wrote a prototype for a "knob-style" immediate feedback system similar to what Nielson uses with small focus groups during major political speeches.
My goal is to try and get a small critical mass of users by tonight to use it during the VP presidential debate, polish it off and offer it to a larger audience for the last two presidential debates.
http://opinionslide.appspot.com/ <comment><USER2> Cool. Off the top of my head:

Can you make it move faster in response to holding down the arrow keys?

Maybe do a gradient instead of just a plain bar? Like, red on the left and green on the right?

I think vertical might work better than horizontal.

Maybe it should slowly return to the "resting" position. Otherwise

Ustream.tv has a feature you might want to look at called "Shout"....

<comment><USER2> actually, ustream may have removed the shout feature, i don't see it anymore.

</comment></comment><comment><USER3> Yeah, I think it's important to have a gradient and maybe a big color block showing the color of the current "feeling".

What I'd love to see is not just an up and down. I'd like to see a "meaningless spin/rhetoric" side of the scale. Maybe it's just an extra button you hold down when you think something is meaningless banter.

I mainly want this so politicians will see that spin measured and after a few sessions of "99% spin" they'll work on getting their spin meters down into reasonable levels.

Another thought is to have half of the audience do "agree/disagree" sliders and the other half do "specific-answer/meaningless-spin". We need to call just as much attention to the latter as we do the former.

</comment><comment><USER4> I like your enthusiasm about what is nothing more than a slider UI widget in jQuery.

Keyboard support, so users can tab to it quickly and position the indicator with the arrow keys (think about the HOME and END keys as well, for fast end- to-end motion), is a must.

Good proof of concept of what could replace the standard row of 3-5 radio buttons to capture how a user a feels.

<comment><AUTHOR> I agree... the individual's contribution is nothing more than a jQuery slider, but the data collected from multiple people could potentially be useful.

I thought about using 3-5 radio buttons, but it's a lot harder to click on the little tiny radio buttons than it is to slide a slider.

</comment></comment><comment><USER5> I see a slide, and a scale from 0 to 100, but what do the different values mean?

<comment><AUTHOR> I'm in the process of adding "WTF?" text right now, but the basic process is that the user sets the dial to their overall sentiment about the subject at any given moment. In the VP debate case: Do you like what the person on the screen is saying? How they are acting? Their response to the question?</comment></comment>


Parkinson's Law - <AUTHOR> http://www.economist.com/businessfinance/management/displayStory.cfm?story_id=14116121&source=hptextfeature

<comment><USER2> Thanks for that read. I just upvoted you multiple times across multiple submissions for this one article.

      The Law of Multiplication of Subordinates

      The Law of Multiplication of Work

True classics.</comment>


Wikipedia's climate doctor - <AUTHOR> http://network.nationalpost.com/np/blogs/fpcomment/archive/2009/12/19/lawrence-solomon-wikipedia-s-climate-doctor.aspx

<comment><USER2> Is there any anti-global warming material that doesn't sound like paranoid ravings?

It's a genuine question as I'm finding it hard to separate the argument from the people making it, which obviously isn't the best way to get the truth. (I mean there's plenty of stuff written by people I fundamentally agree with on subjects like Free Software that comes across as a bit woolly and sensationalist.)

Is there some beginners guide for those that are interested and intelligent, but not already invested in one "side", that just lays out the basic issues and links to relevant sources?

<comment><USER3> Well, the debate is very shrill, so it's probably hard to find someone who's not invested in some sort in one side.

But "The Skeptics Handbook" is very sober and seems separated from the author: <http://joannenova.com.au/global-warming/>

<comment><USER2> I don't know about sober (there's quite a lot of emphasis used, underlines and italics that makes it seem a bit shouty), but it certainly lays out some kind of coherent argument.

On first reading though I'm struck by an extreme level of nit-picking that almost strikes me as anti-science, but accompanied by cheerful acceptance of any scientific theory that supports her position.

For example the self-limiting effects of CO2. Seems plausible enough to someone reading about it for the first time, but I'm guessing this is a theory produced by climate researchers. Why does this get a free pass when other theories get demolished for using computers, creating models, assumptions and other basic tools of science?

If you need that kind of certainty to believe anything then I'm guessing your looking for _truthiness_ rather than the truth.

Also, out of the 4 basic points, point 3 (the earth hasn't warmed since 2001) seems incredibly weak even at first glance.

<comment><USER3> Well, sober or not, I felt it pretty thoroughly laid out the argument for the sceptic position.

> For example the self-limiting effects of CO2. Seems plausible enough to > someone reading about it for the first time, but I'm guessing this is a > theory produced by climate researchers. Why does this get a free pass when > other theories get demolished for using computers, creating models, > assumptions and other basic tools of science?

I didn't understand that? I don't recall theories being demolished for doing those thing?

> Also, out of the 4 basic points, point 3 (the earth hasn't warmed since > 2001) seems incredibly weak even at first glance.

There is some satellite data going back around 30 years that doesn't register any statistically significant warming. Obviously, there are some other that does, and "Climategate" and "hide the decline" seems to be about this. I'm not qualified to evaluate the arguments about which datasets can be processed how or left out or given different weights, but there's a lot of language in those e-mail that you wouldn't expect to hear from someone confident in the completeness and soundness of their own argument.

Actually, I'm mostly interested in the politics, more than the science. IPCC is a political body disguised as objective science, and quite frankly, that should piss of all scientists, whether or not they agree with the conclusion. The politics-disguised-as-science is then being used to push a very expensive and very ineffective agenda, and that should piss off the rest of us.

</comment></comment></comment></comment><comment><USER4> I see two possible interpretations of this article:

1\. It's 100% accurate, balanced and fair portrait of what happened. In which case the scientists have pretty much failed. I mean, I knew about the medieval warm period already and if you didn't, you do now.

2\. It's in some way exaggerated or alarmist and is an example of traditional media running a "the dangers of Wikipedia's model" story that they seem to enjoy doing whenever they can.

Either way, I'm not worried.

</comment><comment><USER5> I still fail to see how any political victory for or against climate change research is going to change actual reality. Should climate change naysayers win their political fight even as the Earth continues to warm, the victory seems hollow at best.

<comment><USER6> I think your missing the big picture.

1\. No one denies that the climate changes.

2\. Most people don't deny that the earth seems to be warming.

The argument is over what should be done.

1\. Most people agree that if the earth is warming on it's own, not as a result of human activity, then we should let it warm until we actually understand what's going on. Geo-engineering should not be attempted.

2\. If the warming is due to man then should we embark on geo-engineering? Is the warming so catastrophic that something will need to be done, before we truly understand what is going on.

All of the current AGW proponents are arguing for taking extreme action now. To convince people that this is necessary it appears that they are overstating their case and actively trying to silence those who disagree.

The extreme actions that they want people to take will have significant negative effects, as limited resources will be put to their actions instead of other uses (for instance treating malaria, studying new diseases, etc). So the political fight will result in lives saved/lost -- which means we need to be able to make the correct choices.

<comment><USER7> What are these extreme actions though? Are you saying that it's a _bad_ idea to do things like focus our attentions on more renewable forms of energy? Even _if_ there is no Global Warming whatsoever the idea that 'Texas Tea' will gush forth from the Earth until the Sun engulfs the Earth is a bit 'out there' to say the least. I don't even care if you believe that 'peak oil' is still 200 years off. The idea that we should greedily waste as much oil as we can, procrastinating on looking for alternative energy sources is juvenile at best.

<comment><AUTHOR> If you think this debate is about oil you are very wrong.

Oil is a transportation fuel, we can find away around that, maybe expensive, but its solvable.

This is about coal and natural gas. Much of the industrialized world runs on those. Start to strangle those off and you raise the cost of absolutely everything.

Raising the cost of everything == making everybody poorer. Millions of people live on the edge now and would start to drop off.

<comment><USER7> > _Oil is a transportation fuel, we can find away around that, maybe > expensive, but its solvable._

Wouldn't raising transportation costs "raise the cost of everything" too?</comment></comment></comment></comment></comment>


Ask HN: Offering dev. assistance on your projects - <AUTHOR> Hi All,
I feel my skills are stagnating so looking to work on some projects + I've been working solo for too long and it would be nice to work with someone with a different perspective and experience.
Looking to work on any stack, as long as the project is non-commercial. I could contribute to a OSS project but I'm looking for a more 1-on-1 type project experience.
Happy New Year !
tldr; Looking to assist on your personal non-commercial projects, web stacks prefered. email is on profile page. <comment><USER2> I'm almost done with a tutorial I've been writing and will be looking for folks to work through it and give me feedback.</comment>


How we built Uber Engineering's highest query-per-second service using Go (2016) - <AUTHOR> https://eng.uber.com/go-geofence/ <comment><USER3> This is a very inefficient implementation. Really, just poor quality work overall, as anyone with even a basic understanding of spatial indexing would know that an R-tree would be many times faster, as illustrated here: [https://medium.com/@buckhx/unwinding-uber-s-most- efficient-s...](https://medium.com/@buckhx/unwinding-uber-s-most-efficient- service-406413c5871d)

<comment><USER4> This comment is unacceptable on Hacker News, and I'd like to explain in detail why. Please don't think I'm picking on you personally; we all react like this sometimes. Rather, I want to drive this point home to the community. It's important for discussion quality here!

\-----

Please omit swipes like "Really, just poor quality work" and "anyone with even a basic understanding" from your posts to HN. It's great to add relevant information, such as an applicable data structure and a link to a good article on the same topic. But it's not great to put others and their work down, and HN has at least two guidelines that ask you not to:

 _When disagreeing, please reply to the argument instead of calling names. "That is idiotic; 1 + 1 is 2, not 3" can be shortened to "1 + 1 is 2, not 3."_

 _Please don 't post shallow dismissals, especially of other people's work. A good critical comment teaches us something._

Actually, a third guideline is relevant too:

 _Please respond to the strongest plausible interpretation of what someone says, not a weaker one that 's easier to criticize._

The strongest plausible interpretation is not that the engineers lacked a basic understanding of relevant CS—or, for that matter, how to use a search engine, since R-trees would pop up nearly any place you searched about this stuff. The strongest plausible interpretation is that they had some other reason for choosing the implementation they did. For example, perhaps it was efficient enough and they were smartly choosing not to build something more complicated than needed.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

Edit: and it turns out that the article explains why they didn't use R-trees.

<comment><USER5> It's disappointing to see a highly-upvoted comment from someone that didn't read the article. The article discusses explicitly why R-trees were not used:

>Instead of indexing the geofences using R-tree or the complicated S2, we chose a simpler route based on the observation that Uber's business model is city-centric; the business rules and the geofences used to define them are typically associated with a city. This allows us to organize the geofences into a two-level hierarchy where the first level is the city geofences (geofences defining city boundaries), and the second level is the geofences within each city.

<comment><USER6> R-tree will easily outperform that approach.

<comment><USER7> You can either ship a 2 dimensional linear search approach today or ship an R tree based approach in 2 weeks time. I know which one in choosing if they both meet all of the requirements

<comment><USER3> Just about every modern language has a well established R-tree library...

</comment></comment></comment></comment></comment></comment><comment><USER8> > High performance in throughput and latency. In our main data center serving > non-China traffic alone, this service handled a peak load of 170k QPS with > 40 machines running at 35% CPU usage on NYE 2015. The response time was < 5 > ms at 95th percentile, and < 50 ms at the 99th percentile.

> Geofence lookups are required on every request from Uber's mobile apps and > must quickly (99th percentile < 100 milliseconds) answer

For a 100ms total budget, a ~50ms 99th percentile for a single microservice doesn't sound like something to boast about.

<comment><USER9> If that's 40 bare metal machines... assuming 60ish HT cores, and 35% CPU... that's not that earth shattering. We do that in Java :)

<comment><USER10> Yeah, boring programming languages are criminally underrated. Fro instance:

> High developer productivity. Go typically takes just a few days for a C++, > Java or Node.js developer to learn, and the code is easy to maintain. > (Thanks to static typing, no more guessing and unpleasant surprises).

This is why the rest of the world doesn't use JS for everything.

> There is a lot of momentum behind Go at Uber, so if you're passionate about > Go as an expert or a beginner, we are hiring Go developers. Oh, the places > you'll Go!

If they did it in Java, they wouldn't have to recruit for programmers quite so hard -- they could pull them out of a hat, and fairly easily get a few wizards with two decades' worth of experience in it.

<comment><USER11> They also would have to sift through some really terrible programmers who have fully bought into the worst practices of enterprise-y OO development.

<comment><USER10> Is that really true? Honest question. Or is that just bias against things that are not new and fancy?

<comment><USER11> It's really true, in my experience. I managed a team in a company that used Spring Boot for services and batch jobs and Python for data and analytics (including ML). My team had its feet in both worlds so I had to hire for that. My experience trying to find programmers who could code and engineer first and not be slaves to the Spring framework was quite terrible in this context.

Another thing of note: the python side of the team could regularly move across and help with bugs or issues in our services and jobs, but the reverse was rarely true. In the 2+ years I had that team there was one person hired for the services side who could do it, and he preferred Go to either Java or Python.

<comment><USER12> I'm not sure what causes it—and I'm not even sure it's a bad thing, certainly it must not be hurting these folks careers too much, and maybe it's even helping them—but there's a certain path for developers that ends up leaving them helpless outside whatever narrow ecosystem they've grabbed onto. Usually it's Java or some Microsoft thing.

As someone who very much did not develop (as a person/programmer) that way, it seems baffling from the outside, but there's this whole world of programmers who work like that until they retire or are promoted into management. It seems bizarre to me but it must be working for them. Hell, they might even be the _majority_ of all programmers. Bigcos, particularly the non-tech ones that nonetheless employ lots of developers, are full of such people.

<comment><USER10> Well, I think the difference between them and Silicon Valley programmers is that they don't constantly learn new technologies outside of work. It's just a 40-hour-a-week job.

I try to learn new things, but I don't do much programming outside of work. I could learn Node.js, for instance... but I've got other things I want to do.

Is that kind of what you mean?

<comment><USER12> Nah, I'm a 40-hour-a-weeker myself, I'm not sure it's strongly correlated with that.

Some folks, you say "do you think you can do [thing you're basically familiar with] in [language and platform you're not]?" and get a "yeah, probably lemme check it out... cool, compiler and language support's installed, see a couple tutorials here, I'll poke around and get something doing [subset of thing you need] then get back to you on timeline" and very likely it works out fine.

Others, you get "uh, I do (Java, .net), I don't... I don't understand what this is, is it a JVM language? Is there a jar for it?" and it's not really worth pushing any harder. And maybe some of them are deflecting because they just can't be bothered (mad respect), but most seem genuinely nervous and out- of-their-element at the mere suggestion of doing anything but their Java or .net thing (usually it's one of those) they're used to.

Though, again, the latter seem to get along just fine, career-wise. It's just a different sort of path, I guess. Seems really weird to me, but there it is.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> There's a famous 'rebuttal' post to this here [https://medium.com/@buckhx/unwinding-uber-s-most- efficient-s...](https://medium.com/@buckhx/unwinding-uber-s-most-efficient- service-406413c5871d)

<comment><USER14> well basically ubers blog posts are really low quality and from the outside their engineering descisions are kinda vague.

like the switch from postgres to mysql.

I'm still clueless how you can have so much money and one of the biggest engineering team, but still can't correctly engineer your stuff. I mean, everybody makes wrong decisions or errors in production code.

<comment><USER15> From what I gathered off of several HN comments of Uber insiders, the size of their engineering team is actually more likely to be one of the causes for bad engineering decisions. They seem to have too many engineers running around for too little actual work to be done, which results in those engineers coming up with stuff to do to keep them busy (and of course to ensure they appear to be busy and worth their money to their superiors).

One of the best ways to create yourself some work is to not choose an already- proven path to a solution, but invent a new one just for the sake of inventing a new one. Of course that's not how this kind of doing is justified - <USER2> justification is usually "the proven path does not scale to our needs" or "by using a special approach adapted to our needs we can be more efficient" or "the proven path is too complex, we can get by with something simpler and easier to maintain". Which might actually all be proper justifications, it's just that you should have some hard proof for these statements, like benchmark results of a comparison of different approaches. That part often gets skipped, which is actually ironic, because doing extensive evaluation and benchmarking and implementing different approaches first before choosing one for production actually serves quite well to create even more work to do.

<comment><USER10> Also, it's resume-driven development. Five years later they want to be able to be the guy who can say, "Yeah, I was the original designer behind Kafka," but substituting in a brand-new Uber technology.

</comment></comment></comment></comment><comment><USER4> Related from 2018: [https://news.ycombinator.com/item?id=16093192](https://news.ycombinator.com/item?id=16093192) and [https://news.ycombinator.com/item?id=16084090](https://news.ycombinator.com/item?id=16084090).

Discussed at the time: [https://news.ycombinator.com/item?id=11205776](https://news.ycombinator.com/item?id=11205776).

</comment><comment><USER16> I get all the criticism in comments but imo kudos to the team for going after the problem with new set of eyes and approaching in new language. At the end of the day you are under budget and have scalable fast microservice.

</comment><comment><USER17> "For each lookup, we first find the desired city with a linear scan of all the city geofences, and then find the containing geofences within that city with another linear scan."

Why wouldn't this be dogshit slow if they used all of the city geofences at once? I would think that first they would scan the country geofences, then the province geofences, then the city geofences, etc...

<comment><USER18> It's almost like they could have used some sort of specialised tree data structure where each tree node was assigned to some spatial region on the map, where successive levels were assigned to increasingly smaller regions.

</comment></comment><comment><USER19> I think this write up is very fair for a solid engineering team. Is it groundbreaking and eye opening? Absolutely not, I'd say the most "hmm I didn't know that" part of the entire thing was the part about R-Trees and S2. Is that bad? Absolutely not. These guys did the work, logged their performance and are sharing their story.

However, and I believe this is where the animosity in the comments is coming from - given the elitist (for lack of a better term) attitude of these engineering types at these orgs (think of the poster children of the Valley), this is pretty...lacking. I mean, the part about using the Read/Write lock on the second attempt and instead trying to go with an installed package just screams Node.js, and honestly made me chuckle. I guess Leetcoding and Production Engineering really are different things. I genuinely expected more.

<comment><USER20> > I guess Leetcoding and Production Engineering really are different things.

This is key point.

They delivered value to the business. That's the only thing that matters.

<comment><USER21> > They delivered value to the business. That's the only thing that matters.

Except this is an engineering blog post, so the engineering part actually matters.

And, as demonstrated in the article [1] linked around this discussion, there were better engineering approaches that would have been even "better for business", as being more efficient means lower costs per transaction and/or higher throughput.

[1] [https://medium.com/@buckhx/unwinding-uber-s-most- efficient-s...](https://medium.com/@buckhx/unwinding-uber-s-most-efficient- service-406413c5871d)

<comment><USER22> It matters for engineers reading the article. It doesn't matter for the business. What they delivered was good enough. Could they have delivered a better solutions? Yes.

Should they have searched for a better solution instead of implementing the one they found? They could have spent some time researching, but you can always miss something. It's better to err on the side of delivering something now with a not-so-good solution than constantly searching for a better one.

I say this as software developer who is obsessed with efficiency. I'm starting to turn around and focus more on just delivering.

<comment><USER23> >It matters for engineers reading the article. It doesn't matter for the business. What they delivered was good enough. Could they have delivered a better solutions? Yes.

The entire reason they posted the article is to brag about having accomplished intelligently. It's relevant if their approach was actually not so intelligent.

"We encountered a standard problem and applied standard solutions" is like "dog bites man". It's not what they were trying to say with the blog post.

>Should they have searched for a better solution instead of implementing the one they found? They could have spent some time researching, but you can always miss something. [...] I'm starting to turn around and focus more on just delivering.

I think the critics point is that the efficient way was probably also cheaper than what they did, and would take the same time to implement, and have lower recurring costs. It would have just been a matter of using off-the-shelf tools and not reinventing the wheel because that wheel is "complicated" and "obviously our case is special". (Someone did benchmarks, and their case is not special.)

You're right, there is a danger to what-if-ing everything and being stuck in decision paralysis. But the clear subtext is that they merit some kind of admiration for how well they did. If that subtext is wrong, it is worth pointing out.

</comment></comment></comment></comment></comment><comment><USER24> Prior discussion: [https://news.ycombinator.com/item?id=11205776](https://news.ycombinator.com/item?id=11205776)

</comment><comment><USER25> it's sad to see these "moved from X language to Y language and it became faster!" every-time.

If the CPU is the hugest bottleneck, the best answer is not to optimize the algorithm by going to a lower level language, but rather to invest in a different architecture like GPGPU or FPGA.

For example, this paper shows a significant speed-up for PIP( Polygon in Point) algorithm, going from 15hs (CPU) to a mere 11sec (GPU) in task load- time. [https://pdfs.semanticscholar.org/1e51/e3c681e1afc908a41ac253...](https://pdfs.semanticscholar.org/1e51/e3c681e1afc908a41ac253b7ef72f3285d1f.pdf)

<comment><USER26> That is high throughput design, not a low latency design, which is what they are optimising for here. It is a very different design space.

</comment></comment><comment><USER27> To all the people "why not do it in Java / Java could have done it".

Why not do it in a different language? Having Go and Node around is awesome because we can change the language. Don't you get bored to use just a single language? I'd get so so so bored if I didn't change languages every year. Glad that uber offers Go jobs.

<comment><USER28> Usually when you're trying to ship something, the more boring (predictable) parts the better.

<comment><USER27> but is that the only goal? or you shouldn't enjoy the life? I find that I enjoy my life more as a programmer when I change things.</comment></comment></comment>


Ok Go on Why Labels Won't Let You Embed YouTube Videos - <AUTHOR> http://okgo.forumsunlimited.com/index.php?showtopic=4169 <comment><USER2> Summary: because YouTube pays the labels part of the ad revenue for videos played on youtube.com, but not for embedded videos.

<comment><USER3> That is a summary of why you can't embed the video but I'd still encourage people to read the full post if they want a more thorough analysis of the state of the music industry today.

<comment><USER2> Absolutely - it's a great post overall.

</comment></comment></comment><comment><USER4> I've always been deeply interested in the inner workings of record labels.

As I understand it, it seems that a label is somewhat like a VC for artists. But no VC takes 80-90% of the company they invested in. Why do they need to take such a big part? Is pressing CDs such a huge risk and expense? If such; why continue doing it? Barely anyone buys CDs for obvious reasons, shouldn't there at least be an option for artists that don't want to press CDs? Maybe there is but artists just want CDs for some reason?

Why can't artists get regular bank-loans to fund their business? Is it just too high risk? It seems that someone as famous as Ok Go should be able to take a bank-loan to fund some studio time, but I suppose they're already under contract.

Anyway, if anyone has answers to these questions or links to where I can read more about stuff like this, please do share.

<comment><USER5> "Why can't artists get regular bank-loans to fund their business?"

This is one of the fundamental questions that is most often overlooked!

Ok, so three long haired dudes working part-time jobs at coffee shops wander in to a bank and strike up a conversation with a loan manager...

...I think we can all fill in the blanks here. :)

The indicators that banks look to for giving out loans are quite different than the indicators an A&R man is looking at.

Would a bank care about how many people you typically draw to a concert? Would they care about a good review on Brooklyn Vegan? Or how many shows you've played outside of your home town?

Music is a specialized industry requiring specialized methods of investment, much like Internet or biotechnology companies.

<comment><USER6> Agreed, but shouldn't three long haired stoners with a couple of successful albums already under their belt be able to demand better terms? If labels aren't willing to do it because they've "always done it this way", maybe there's room for some new investors to offer less onerous terms to proven musicians?

This happens in industries as they undergo commidification, and it's pretty clear that the barrier to entry to making music has dropped a ton and the music industry is undergoing the same thing... so why aren't the funding institutions keeping up?

<comment><USER5> Well, people ARE trying. :)

Here's an article from Billboard: <http://bit.ly/7qevgk>

The concept was very interesting but unfortunately it had a lot going against it, which is why Jake got out of the music industry.

Jake didn't really know all that much about the music industry... he didn't know promoters, or booking agencies... having these connections are still very important, just like in any industry.

Also, Francis and the Lights are incredibly idiosyncratic and would rather not deal with the industry on any terms other than their own... which doesn't make for the best business partnership.

Independent labels still fulfill this role.. to an extent. What they are mainly lacking in is capital and a way to recoup, as bands do not sign contract for anything other recording.

It would seem that a company with the right contacts in the music industry, a good amount of capital to invest, and an all encompassing approach to the artists income would have a shot at becoming profitable.

There is most definitely money to be made from music, but understanding the intricacies of the this new marketplace are more complicated than most people are willing to admit to themselves.

Disclaimer: Jake and I have been good friends since college.

</comment></comment></comment></comment><comment><USER5> Here's the very best point that is brought up: "And musicians need them to survive so we can use them as banks. Even bands like us who do most of our own promotion still need them to write checks every once in a while."

While the major labels had their faults, the DID act as investors for musicians.

This was probably their most important function, and it seems as if though the majority of Music 2.0 proponents do not know this.

This isn't the only thing they don't know about a functioning music industry.

The next time you're listening to a Music 2.0 presentation, stand up and ask the dude if he knows where the closest band rehearsal spaces are, where the closest guitar repair services are, who manages local acts, who does booking, who is currently promoting what genres and at what venues... really, I could go on and on about a lot of details that some messiah of the digital arts is most definitely unaware of.

<comment><USER7> I'm not exactly sure what you are referring to as "Music 2.0" (possibly the likes of pandora and last.fm?) but I do agree that the investment function of record labels is often over looked. As someone heavily involved with researching the industry, as well as helping local bands, I am constantly amazed with the parallels between entrepreneurism and being a musician.

There needs to be the musical equivalent of the lean startup theory. Just as swarms of young entrepreneurs are embracing the bootstrap, so should bands. Yes the labels could probably tell you where to get your Fender repaired, but so can Google. All functions of the traditional record company are becoming obsolete in comparison to digital methods. I envision an industry where musicians retain artistic freedom and everyone actually gets paid (check out Steve Albini's classic rant on how most artists don't make much of anything www.negativland.com/albini.html)

<comment><USER5> Yet another parallel between programming and musicianship... :)

I think any musician knows where to go to get their guitar fixed or where to find a rehearsal space. Those sorts of things are pre-requisites to having any sort of future in the industry.

By "Music 2.0" I'm referring to any number of articles related to music having to be free, being a loss-leader for t-shirt sales, etc... in these people's minds, bands form out of the ether and well-recorded albums rain from the heavens above!

Businesses involved in the digital commodification of music need to have a firm understanding of how music is made and performed in order to have any measure of success.

</comment></comment></comment><comment><USER8> Yeah, the music industry is experiencing some brain trauma right now. It'll happen to the film and TV industries too in a few more years once bandwidth and memory prices decrease.

Because music is so readily available, almost no one expects to pay for it. Itunes is cleaning house right now, but that's because people still want ultimate control over their libraries. I'll bet once people can be guaranteed the same level of access that they enjoy on their Ipods as they do on their phones, then Itunes will meet the same fate. Apple probably knows this which is why they are making plays in the streaming business.

What the content providers need to do is accept this fate and start building a new model around distribution and the incredible amount of information (data!) they have available to them. Package the product up in something consumers will always pay for--new devices or other peoples products (advertising).

The beauty about this business is that it hits a chord in consumer's lives. They will always want it because this content defines them in some abstract way. If content companies can learn more about their consumer's identities, they can sell that information to product makers. If you doubt all you have to do is look at the new artist product lines-- Sean Jean and Dr. Dre Beats to name two.

</comment><comment><USER9> Question: Does MTV pay the record labels for showing their videos? I'm not being a smart-ass, I'm really asking and didn't want to rip into this without having some background.\

The article says that they _used_ to consider MTV a promotional partner, do they still?

<comment><USER10> MTV has changed dramatically from 10-20 years ago. They have moved away from playing music videos around the clock. Now the majority of their content is teen reality shows and the like. Televised music videos is limited to very few, already very popular artists.

<comment><USER11> This doesn't really answer the original question, in which I am also interested. What about MTV2, Fuse, BET, VH1, etc? Do TV networks have to pay royalties on music videos?

<comment><USER12> MTV2 doesn't play much music videos either- for that matter, neither does BET or VH1.

<comment><USER13> Still, I also would like to know the answer to the original question. Surely videos are still played somewhere. Do labels get paid when that happens?

</comment></comment></comment></comment></comment><comment><USER14> This is also extremely interesting because OK Go was one of the bands that was able to tap into viral video as a way of getting the word out there. Remember the video for Here It Goes Again? 50 million views.

<http://www.youtube.com/watch?v=pv5zWaTEVkI>

</comment><comment><USER15> Hang on, why does the label allow them to upload videos to Vimeo?

<comment><USER8> While I can't find a link, my guess is that Vimeo has exclusive distribution rights with the labels.

</comment></comment><comment><USER16> It's extremely difficult to feel sorry for the record labels. They all deserve their fate. They saw everything coming as far back as the mid 90s, but decided they were more powerful than the market. With all their CD boom money, they could have bought Napster and Big Champagne, which tracks P2P file sharing. They could have bought MySpace and Pandora and just about any major music portal that any person of average intelligence would have thought was a good idea.

<comment><USER17> I agree with you. I don't feel sorry for the record labels. I do however feel sorry for the artists. They're the ones getting screwed while the labels hold on to their dying industry for dear life.

<comment><USER16> The artists are actually doing just fine. They've always wanted to free themselves from the labels. If you're an artist and you can figure out distribution and marketing on your own, all you need is about 1000 loyal fans to make a decent living because you keep most of your profits. It's not as easy as it sounds, but at least it's freedom and what's more important than that?

</comment></comment></comment><comment><USER18> I just want to see what happens when the music hydra hits a million users.

</comment><comment><USER19> is it possible to do some kind of javascript/iframe hackery to make embedding work?

<comment><USER20> You maybe can come up with a _technical_ solution, but the point is that it's not permitted. The article itself offers a solution to the problem of embedding (offering the video through a different website).

The article raises more interesting issues than this, however, such as why it's not allowed in the first place, and what needs to change to make it allowed.

</comment></comment><comment><USER21> FTFA "So the money that used to flow through the music business has slowed to a trickle"

I'd like to call that a "mis-speak"

"The digital music business internationally saw a sixth year of expansion in 2008, growing by an estimated 25 per cent to US$3.7 billion in trade value. Digital platforms now account for around 20 per cent of recorded music sales." [1]

Which makes music sales of US$18 billion for 2008 by contrast the revenue for the top 20 countries in 2005 was $12b [2]

"PRS for Music, the organisation representing songwriters, composers and music publishers, today published new research showing that UK music industry revenues totalled £3.63bn in 2008, up 4.7% from 2007's £3.46bn." [3]

Some fucking trickle

[1] <http://www.ifpi.org/content/section_resources/dmr2009.html>

[2] <http://en.wikipedia.org/wiki/Music_industry#Statistics>

[3] [http://www.prsformusic.com/aboutus/press/latestpressreleases...](http://www.prsformusic.com/aboutus/press/latestpressreleases/Pages/UKMusicIndustryrevenues.aspx)

<comment><USER9> Not saying this is authoritative but your numbers don't jive too well with this Wikipedia quote:

"In the 21st century, consumers spent far less money on recorded music than they had in 1990s, in all formats. Total revenues for CDs, vinyl, cassettes and digital downloads in the U.S. dropped from a high of $14.6 billion in 1999 to $10.4 billion in 2008. The downward trend is expected to continue for the foreseeable future—Forrester Research predicts that by 2013, revenues will reach as low as $9.2 billion.[5] This dramatic decline in revenue has caused large scale layoffs inside the industry, driven music retailers out of business (such as Tower Records) and forced record companies, record producers, studios, recording engineers and musicians to seek new business models.[6]"

<http://en.wikipedia.org/wiki/Music_industry#2000s>

<comment><USER22> Both posts can be true. "music business" is not only about record sales. It's also about ads, gigs, licensing, etc. Even if direct sales are lower, the business itself can be alive and well. It's only the amount of money spent by customers that went down.</comment></comment></comment>


The "Hello World" of genetic algorithms - <AUTHOR> http://www.generation5.org/content/2003/gahelloworld.asp <comment><USER2> Genetic algorithms, heuristic hill-climbing, simulated annealing, etc, etc, etc. These are all basically equivalent ways of tackling an optimization function that can only be point-wise queried efficiently, and they are all subject to same problems (most notably local optima, curse of dimensionality, etc.).

I've seen these used rather sporadically in academia, where people generally prefer to reformulate a difficult optimization problem as a convex (or similar) relaxation that is provably solvable, and then throwing solvers at it.

However, I get the impression that when you just need to get some reasonable solution quick and dirty in practice (especially with discrete domains), one of these is the method of choice. I'm not aware of some particularly good arguments for GA's specifically though.

<comment><USER3> The power of EAs (Evolutionary Algorithms) is that they are able to escape local optima through random mutation and recombination.

EAs are suitable for finding solutions to complex problems, as long as you state the problem correctly and have a decent fitness function. Besides this, parameter tuning is vital for creating a decent EA. This goes so far that there has been research in tuning parameters for an EA using an EA (creating an EA Inception ;)).

</comment></comment><comment><USER4> I really love the elegance of algorithms like these, a bunch of similar algorithms are discussed in Clever Algorithms[1].

It also discusses genetic algorithms[2], providing a really simple implementation that suffers from the same problem as the article in question; the outcome you're looking for is already known so the fitness function is rather trivial, but nonetheless its a good place to get started.

[1] <http://www.cleveralgorithms.com/>

[2] [http://www.cleveralgorithms.com/nature- inspired/evolution/ge...](http://www.cleveralgorithms.com/nature- inspired/evolution/genetic_algorithm.html)

</comment><comment><USER5> Maybe I'm way off the mark here, but calling a function that's iterating towards a target string doesn't really feel like a genetic algorithm. If you know the exact output already, you aren't really testing 'fitness' in any meaningful sense - you're testing closeness. Why not just use A* to path-find your way to it?

Genetic algorithms are surely meant for iterating towards a goal you can't define, other than fitness towards a certain set of criteria - if you know what the target looks like, what's the point in iterating towards it, rather than just going at it?

<comment><USER5> I think what I'm trying to say is: if your fitness function contains the solution, then your problem is entirely contrived, and not a good illustration of genetic algorithms - you're just using a very round-about way of calculating something you already knew, inefficiently.

</comment></comment><comment><USER6> I love these. I think the original concept is based on the Weasel Program[1] formulated by Richard Dawkins to demonstrate evolutionary change and natural selection. Here's my attempt[2] in Clojure from a few weeks ago.

[1] <http://en.wikipedia.org/wiki/Weasel_program>

[2] <https://gist.github.com/2072019>

</comment><comment><USER7> Very basic but also very instructional. The key to these sort of algorithms is to write a very efficient fitness function. The best GAs use GA to fetch the best fitness function (sort of like meta programming or "meta-reflection").

This PPT has a great intro on GAs: <http://cs.uga.edu/~khaled/ECcourse/chapter03.ppt>

<comment><USER8> It's so much more complex and amazing than that, especially in problem spaces that have numerous local optima. My personal favorite weird genetic algorithm exploration paradigms are where you start looking at the behavior of the genome; and, instead of searching out best behavior, you search out ~different~ behavior. It's called Novelty Search, and it's awesome!

<comment><USER9> i'm glad you think novelty search is awesome, i'm doing my dissertation on it! out of curiosity, how did you hear about it?

<comment><USER8> I know Kenneth Stanley and loooove NEAT :)

</comment></comment></comment></comment><comment><USER10> I apologize for the cheese factor of the "goal" beforehand, but here's a Python program I wrote recently that does the same thing:

<https://gist.github.com/1649116>

I sat down with my fiance on Valentines Day and asked her if she could figure out what the letters on the screen were trying to spell. I think she really loved it!

</comment><comment><USER11> I did a zombie port of this to JavaScript so I could take a peek at what's going on without having to remember my C++. Take a look:

<http://jsfiddle.net/zENKM/>

</comment><comment><USER12> Quite a good read and a good introduction to the topic. I somehow ended up writing a Python version. Here it is: [https://github.com/rheide/Hello- genetic-algorithm/blob/maste...](https://github.com/rheide/Hello-genetic- algorithm/blob/master/hellogen.py)

</comment><comment><USER13> Link is dead, google cache to the rescue:

[http://webcache.googleusercontent.com/search?q=cache:JBfk95W...](http://webcache.googleusercontent.com/search?q=cache:JBfk95WBF2kJ:www.generation5.org/content/2003/gahelloworld.asp+&cd=1&hl=en&ct=clnk&gl=us)

</comment><comment><USER14> Wow it has been years since I saw generation5. It used to have the best ai learning materials and a good forum about eight years ago. The site seems to be down for me however.

</comment><comment><USER15> I did the same thing in JavaScript a while ago with a more detailed writeup: [http://www.puremango.co.uk/2010/12/genetic-algorithm-for- hel...](http://www.puremango.co.uk/2010/12/genetic-algorithm-for-hello-world/)

Here's the HN discussion at the time: <http://news.ycombinator.com/item?id=2002673>

</comment><comment><USER16> I wrote something similar over Christmas in both C and D:

<http://jacobconradmartin.com/experiments/evolution/>

The graph of mutation rate versus convergence time might be of interest.

</comment><comment><USER3> A nice TEDx talk from Guszti Eiben about the possible applications of Evolutionary Algorithms. <http://www.youtube.com/watch?v=WJX_wAKhg8A>

</comment><comment><USER17> There's a more elaborate version on GitHub for multiple languages: <http://github.com/jsvazic/GAHelloWorld>

</comment><comment><USER18> An excellent, simple extension to this is to throw simple arithmetic operators into the mix (digits 0-9, +, -, / and * perhaps) and to try and breed an algorithm which when evaluated yields a number, like the number 500. You can get startlingly close answers and interesting equations this way.

</comment><comment><USER19> My impression of genetic algorithms are that they work in the context of biology (you can actually see it happen in real time with viruses & bacteria), not computer science. I have yet to see an instance where a real problem in computer science was best solved using genetic algorithms.

<comment><USER20> The Genetic Algorithm ("genetic algorithms" is actually a misnomer) actually has little to do with biology except for original inspiration. It is simply one of a number of sample-based methods for doing global stochastic optimization.

There's an old saying about the Genetic Algorithm: that it's the "third best way to do anything". Stochastic optimization methods (or "metaheuristics") in general are knowledge-poor methods, essentially last-ditch techniques where you don't have any other known way to solve your problem and you don't want to jump off the cliff into random or brute-force search. They rely on a central heuristic: that similar candidate solutions will likely have similar performance (the "smoothness" criterion).

Here's the thing. There are a _huge and growing number of crunchy problems in this category_. If you're trying to find a good tic-tac-toe solution, you can almost certainly do better than a stochastic optimization method (just use state-space search, say). But if what if you're trying to find the set of behaviors for a two-thousand-agent multiagent simulation model which produces statistics most closely resembling known historical data? Or what if you're trying to find the best parameters for optimizing an aircraft engine whose space is filled with local optima? It's ugly problems like these, for which there is _no principled solution method_ , where the Genetic Algorithm and its ilk reign supreme. You might say that you never see problems in computer science which are "best solved using genetic algorithms". My answer is: your daily problems are too simple to need them.

Book plug: you might enjoy my free online text on the subject, called Essentials of Metaheuristics. You can also get it in paperback. <http://cs.gmu.edu/~sean/book/metaheuristics/>

<comment><USER21> I've read through a large portion of the PDF version of your book quite a few times. It is very well written and helped me understand a number of different techniques very well.

I definitely recommend Sean's book as a starting point if you are interested in this field.

(I don't know Sean, and don't get anything for this recommendation other than the happy glow of helping a well deserved author get more recognition)

<comment><USER20> Thank you very much.

</comment></comment></comment></comment><comment><USER22> A good write-up. I played around with Pyevolve[1], which is also written in Python. GAs are non-optimal for most problems, but it's a fun starting point.

[1]: <http://pyevolve.sourceforge.net/>

</comment><comment><USER23> Here's a fairly direct translation of the original program into Go: <http://play.golang.org/p/Xg9f0lM40n>

</comment><comment><USER23> There's a bug in the program. In the mate() function, when it recalculates the string, it uses `esize-spos` when it meant to use `tsize-spos`.</comment>