skysight-inc/HackerNews huggingface dataset:
The most seasoned programmers have been using functional programming since the 60's.
They are one of the richest companies because sealed batteries make for substantially better phones.
I was taught assembly at the job by an old assembly guru. His first statement to me was something along the lines of: "we'll use an assembler to start with, but it doesn't generate very good code; so, once you're comfortable, we'll hand assemble our machine code".
> person or group of people that is willing to bang its head against a brick wall for hours on end, day after day, week after week, until the cracks finally start to show

This is what getting a PhD is like (at least in STEM). I mean, you do have to be smart, but you also have to be willing to work on a specific, technical, narrowly defined problem for years. It's great.
In an engineering context, the question is "does the benefits of ternary exceed its costs?" The benefits of ternary over binary on binary hardware are basically nothing. There is no operation made possible by ternary that isn't possible in binary, especially given that, again, you're on binary hardware, nor is anything made particularly easier. (Except useless things like "modulo 3" that aren't particularly hard in binary anyhow.) The costs are programming complexity and runtime penalties for conversions, which is an ongoing price paid by all users.

So in engineering terms, "zero benefits, non-zero costs", it's no contest; use binary, or, more generally, use the native integer system on the hardware you are running on. That is, the same argument would apply in reverse on an already-existing ternary-native system. There is still a non-zero chance we'll see such a thing in our lifetime, once we run out of other ways of squeezing performance out of things (although if ternary logic is possible, if we can also get to quaternary logic that has a very trivial mapping to the binary world, so that might win instead).
> I don't see why given enough time GAs (or EAs) could not outperform simple backpropagation based on differentiating simple cost functions.

It's already happened. You are it.
I get that part, but for new projects, this perhaps is a hint to do things in Java?
Yes, lets have lower battery capacity, and heavier thicker phones so that 2 years from now a user can save $30 replacing their battery.
> I trust them not to run marketing campaigns inside my browser.

Do you also trust them not to listen to your mic? I think debian had to have a discussion with them about that.
Let's make this thread useful instead: Please enlighten the HN community at large: Tell us how you'd build instagram, what your tech choices would be and why Python is the "worst technology choice".

(If this goes well maybe you'll get an email from Mike Krieger with the subject line "Here, you do this".)
I mostly agree although I don't really know if my iPhone 6 seemingly getting slower is due to power throttling or general software optimized for more performance over time. The geekbench numbers are still fine. I'd hesitate to get a new battery purely on speculation my phone would get faster. So it would be nice if there were some indication of where the battery is in its life. Though like you, I'm upgrading to an X in any case.
Heart health and gum disease have been linked to https://www.colgate.com/en-us/oral-health/conditions/heart-d...
So what the CIA used to do on behalf of "American interests," Facebook now does without even that much of a moral compass.
Already posted at: https://news.ycombinator.com/item?id=15982161
Unfortunately for you, the oligarchy disagrees.
I was surprised how the post yammered on about extracting data from street view .. when a lot of data is added by humans (Local Guides) and by business owners themselves.
There are quite a few good phones with a user replaceable battery, but that is just not what consumers want most of the time. The LG v20 is the most recent one that comes to mind
Disclaimer, I'm a regular horn tooter for F# but imho this is such a perfect case for the language. It has similar line density to python, but with static type inference. Admittedly you will have to be explicit about using mutables, but I'm going to bet that instagram already cares about that.
This is how the system was meant to work. The irresponsibility of the centralized CA infra has been known for a little while now, and it's time to let the users see how shaky this trust model really is. Let them have certs that are actually made by the companies they trust instead of some stupid third party.
This is exactly it.

People are running a business, not writing an a treatise on code maintenance and hygiene.
The user replaceable battery is gone - get over it. We can only deal with what actually exists.

$100 _is_ cheap for the phone as it currently stands.
Going to need some rules and regulations. Last thing we need are big banks overleveraging on crypto currencies for the excess return. When, not if, this bubble bursts hopefully it doesn't take the whole economy down with it. The whole financial market wants exposure to crypto at this point.
> but Apple should probably have something in iOS that tells people their phone is running slow because the battery is 2 years old.

Or a disclaimer telling people the caveats (or cons) of upgrading their OS.

More transparency would be great instead of making people feel like the company is pushing them out of their, otherwise, perfectly functional smartphone which cost them a fortune.
We Sleep
It's not a design defect. It is intentionally designed this way - as thin and light as possible with a battery that's only sufficiently powerful for the first month.

And they get planned obsolescence too!

It's intentional.
The article lede strongly implies that method is a currently operative tax advantage:

> Investors in bitcoin and other virtual currencies would lose a lucrative tax break…"

It also reports, without caveats (or attribution to "some say") that the characterization has been used successfully, so far, in the absence of an explicit prohibition:

> Under current law, such trades have been protected under a provision that allows investors to defer capital gains taxes on so-called “like-kind exchanges”

Several of the tax attorneys quoted advance the interpretation that this treatment will only stop on January 1, 2018 under the new bill.

Of course, there's a risk given the ambiguities also mentioned in the article. But the fact that it required legislation, with a future-effective-date, to clarify may give more cover to those using the treatment before that date – and focus discretionary enforcement on clearer cases in 2018.
If it makes you feel any better there's some of us that left iOS for this exact reason. I don't like Apple telling me what I can and can't do with my computer.
80% of startups are going to die before their codebase reaches this size. They should probably not be making tech stack choices based on "what if we succeed beyond all likelihood".
The practical upshot of what you're saying is that the browser vendor with the biggest market share can do whatever the heck they want, and everybody else can either reverse-engineer it or eat dirt.

I'd tell you why you're so spectacularly wrong, but since we've already lived through the nightmare you're currently endorsing... instead I'll simply refer you to the 1990s and early 2000s.

You don't want that.
There are situations where you might want something lighter than the JVM. If startup time matters or you want a low memory footprint then JVM is not ideal.

The other reason is that there are lots of people who work with JavaScript and are not interested in the JVM ecosystem. I think it's good to have an option that targets this demographic.

One of the goals for Macchiato is to provide a Ring compatible API. This allows you to start projects on Node and move them to the JVM as they grow.
What kind of ridiculous nonsense is this? People say opposing gay marriage causes harm because it does. There have been multiple instances and examples of gay couples not being able to see their loved ones in the hospital because they're not recognized as a 'real' couple. They died alone as their partners were turned away for the sole crime of being gay.

Your attempt to justify your bigotry is disgusting.
Satya Nadella:  the People and Projects That Inspired Me in 2017
Is the word "silently" your only concern here? Not the fact that Blizzard installs a root CA, silently or not?

Or are you trying to derail the conversation on purpose?
Former WOW and D3 player here. Think that majority of players are minors/teenagers with next-to-zero knowledge of what a "root CA" is and what it can do to your encrypted traffic.

I don't understand why Battle.net would do this, but I guess NOW they have to issue a statement about this.

Innocent version: oops we made a mistake.

Actual version: oops we got caught with our hand in the cookie-jar.
Small projects scream dynamic types, but not every baby never grows up. Eventually the cognitive load becomes crippling and you're crying for static types.
Except public domain only happens 70 years after the authors death (or 95 years after publication when talking about corporate authors).

So I could write a good book now, publish it, let it go out of print as of this year, live another 40 years. You wouldn't be able to get a copy of my work from the public domain until the year 2127.
How Snapchat can win back the influencers it has lost to Instagram
The evolution is fairly simple: python is very easy to setup, especially with django for working on the web, and for writing scripts quickly it work really well when everything is just an 'import' away.

Then as the product gets bigger, you'll hire python developers to keep up with the workload - and the best ones will be the ones who have committed their lives to Python. So you'll now end up with more and more python code.

Before you know it, you aren't writing small scripts anymore, but now you are writing quite large features, that take weeks and that require intimate knowledge of the code base so you don't keep backtracking and repeating yourself. But Python doesn't help you at this point, you traded static types for flexibility and now you have to pay the price.

At this point you're screwed, too many man hours spent on the codebase to redo it, so what to do? Well if you have the man power, build your own static type checker of course! I mean after all, if you have 100s of engineers who cares? You just throw more people at the problem until it goes away. Then wrap it up in a nice little package, and slap yourself on the back while you ride the instagram bubble.
They typically do this for a few reasons:

1. High net worth clients demanding such products.
2. Obvious FOMO.
3. In case this crypto thing becomes big they don’t want to be criticized.
4. All companies are seeing a nice bump in their share prices with any association to crypto
I think that in addition to the problem of boosting interest by concealing probabilities, you have the added problem that probabilities are difficult to intuitively grasp, even if they're straight up given to you.

The same way that a person can have a correct (at least within a few orders of magnitude) understanding of their numerical odds of winning the lottery, yet still go on purchasing tickets. Our intuitive grasp of the idea of one in a million, billion, trillion, etc is such that those odds all "feel" the same. But those differences might make all the difference in whether purchasing a lottery ticket is rational.
Thank you for the your very informative message. I think messages like yours are somewhat lacking in this discussion.

I understand your argument. I think I would be somewhat mad, or maybe it's better to say, disappointed. While I most likely would have bought a new phone anyway, I would despise that Apple took away my ability to make this call. It also means that I could not refurbish the phone and pass it on to parents/friends.

In the last years, I am somewhat disillusioned by Apple. Instead of engineering a better overall package, the innovations seem to be based on cheats (I would the /undisclosed/ cpu down-clocking as such), cutting corners in QC and questionable design decisions (touchbar - why not with some touch feedback? No headphone jack for reasons already disproved by android phones.)

I didn't buy in into the ios eco-system, but like the mbp and mac os. But the number of advantages get smaller, and the number of disadvantages grows.
LG announces '5k Ultrawide' monitor with HDR and Thunderbolt 3
After the Fire: HP Archivist Pledges to Rebuild What She Can
Yikes my dude - a trip through your comment history shows me you're not going to be an enjoyable debate partner.

The basis for 'rights' is that anyone should be able to live their life free of fear of harm and oppression. Gay marriage is just the most recent branch of an ongoing attempt to have the majority of Americans just leave gay people alone and let them live their life in peace. You seem to be under the impression that gay people exist in a vacuum where marriage is the only thing they can't do. Restrictions on marriage are just the latest in a long list of barriers that have to fall in order for gay people to have the same rights the rest of us have.

My belief is that opposition to gay marriage is indicative of an objection to the idea of gay people themselves, since nobody who has any issues with gay people being gay has issues with gay marriage. It's just a thin veneer of respectability bigots put on in order to appear more civil.
>Is this done by purpose, or did they end up with a million lines of Python code and are looking for ways to make the maintenance easier?

Definitely the latter. I've seen this discussion a few times before, and it's always the same. Your initial developers are not looking down the road to the million lines of code milestone, they're just trying to make a product that might actually make some money here and now.

I'm sure Instagram was exactly that. They needed to handle images and some guy knew how to do it in Python. They wrote Python code, and then people liked Instagram. They eventually became a billion dollar company with millions of lines of code and no where along the road was there time to say "hey we need to refactor this whole thing". Or if that was said, management laughed and said "we need this feature".

So here is where you end up. The developers need to clean things up but they don't have time to clean it up by using a language, realistically, they probably don't know as well as the Python they wrote the millions of lines of code in.

Re: your last comment, navigating a million lines of any codebase is daunting, and especially more so if you aren't a developer in that language. I'm not sure what exactly "Python" has to do with that, besides that you're not a Python dev.
I can't figure it out, either. I'm only getting the first paragraph of the article.

Okay, I figured out a workaround. Click the print button at the bottom of the page and print to pdf. You'll get the whole article that way.

It was a really good article. Worth the effort.
The same could have been asked about the Tulip and Bulb craze.
"I'd also like to know how much quicker or better it could have been completed if it had been done out in the open. "

I assume they scratched their own itch so it was probably faster to do it on their own addressing their specific needs.
People do forget that IE was legitimately a good browser for quite a while - starting around IE3 it really did quite well. Plus I'll take IE4 + NN4 issues vs IE6/7/8 issues in 20-freaking-14 (or beyond, argh). IE9 at least fixed a lot.

At least the early IE vs NN stuff was fast to change and interesting. IE6 issues were the exact opposite :(
two things come to mind: maybe those startups would die at a slower rate if their code was comprehensible to begin with ? but leaving that aside, for companies where survival is not an issue then, doesn't this indicate that using a dynamically typed language is not great?
Different terms convey different ideas. Writers pick "open source" to signal that they find user freedom unimportant, and "free software" or "libre software" to signal that they find user freedom important. While the author's intentions are probably good, it's interesting that neither user freedom nor licenses are mentioned in this type of article.

In the unlikely case anyone wonders what I mean:
https://www.gnu.org/philosophy/open-source-misses-the-point....
Isn't it faster to write everything in Go, for example, that has a compiler guiding you all the way and you rarely get runtime errors? I feel my developer time very much "optimized" when writing backends in Go than when I wrote then in Python (I also tried Node, which was a disaster).
Not true. I just did so myself a couple weeks ago
The left has not taken over anything. We have lived in a very conservative, anti public services regime since the early 1980s. Rollbacks and defunding public schools, health and infrastructure has been on the basis that media has systematically attacked taxation and public spending as wasteful while military spending never seems to be targeted like other social programmes.

We have stop perpetuating this narrative that the media is in anyway 'left' leaning because it is not. When was the last time you read an opinion piece that called for the nationalisation of some private industry?
Physicists Negate Century-Old Assumption Regarding Neurons and Brain Activity
Agreed, not saying it is smart but it IS possible.
Opposing gay marriage causes harm because it's active oppression, and because it's a argumentative shield for people who have direct opposition to gay people themselves. There are no strong arguments against gay marriage beyond bigotry.

You don't have to pretend that you're not a bigot - opposition to gay marriage is bigotry.
I really don't get people. Instagram and Dropbox, through typing annotations in Python, are gradually improving a language that has codebases running globally, from YouTube to NASA.

Clearly something is right with the situation when the incentives are aligned for a tech company to contribute back to the open source community in such fundamental ways. So why look for the mole and think "They should have done it differently", when doing it differently has a high likelihood to mean not being as successful as they are today, and not having the occasion to contribute back?

It's like telling a successful charity "You should just take everyone's money and spend it on lamborghinis instead of wasting time building wells in africa".
This is going to be an end of the current generation of exchanges, and, most likely, future generation of exchanges:

https://news.ycombinator.com/item?id=15973721
ASHAMPOO BURNING STUDIO 19 DOWNLOAD FREE WITH SERIAL KEY 2018
I’m not 100% on whether it was refurb or brand new. It came in a non branded box without a charger etc. The phone looked brand new.

I’m going to install the app to check what the CPU is running at.

It’s still ridiculous that she was running 10.x fine, she only updated because someone sent her some emojis that her phone didn’t understand and now is it’s running like crap
You are right - harddrives are so cheap today that we can trivially host all the text anybody cares to write.

On the other hand, for any given query there is only 10 spots on the first page of google, and I really rather not have any of them taken over by spammers.
Should Tech Companies End the One-Year Software Update Cycle?
Magic Leap One: the unicorn has finally revealed its first product UK
> half a trillion USD is a tiny market
What?
So much for the promised currency / store-of-value that can't be manipulated by banks / governments.
You appear to be ignoring who this coming from. Instagram is huge, and they built their service with Python. It isn’t coming from someone who is arguing this is how it should be done from the beginning. Hell, given the typical lifecycle of a startup, this situation occurs exactly because a dynamic language is chosen to speed getting a product to market and try to build a business around it.
Good times with those gradient styled widgets, but today they should be retired and developers should start looking at upcoming tech, like Houdini project https://github.com/w3c/css-houdini-drafts/wiki .
Yeah, why did we ever get away from the glory days of bare-metal programming. Computers are only for people who understand them.

Sarcasm aside, I'm a software engineer with a very superficial understanding of the certificate system. I'm not even convinced of my own ability to notice when something's wrong.
Magic Leap CEO interview: Indoor augmented reality is the first step
Already been thinking about moving abroad, this is a great reason to push me further in that direction
Poverty and wealth are both primarily consequences rather than causes. It's very easy to confuse the direction of the arrow of causation though. And of course I say primarily because there are feedback loops that muddy the picture a bit.

Saying wealth is a predictor of success is like saying success is a predictor of success. You're not wrong, but it's not a very interesting statement.

And I don't know about you, but the nerds at my school didn't waste their time on pointless crap like learning to pretend to do physics while not using calculus (preferring to do the bare minimum to get adequate grades) and instead poured their passion into things like sports, playing chess and magic, and teaching themselves how to program.
"Software should really only be measured by the value it provides. If a terribly buggy piece of poorly written code still saves hundreds of man hours a week, it's a win. (Unit tests be damned)"

But those bugs could easily lead to mistakes in the output.
> apt is designed around C

It would be nice to have a list of what each of Apt, Pacman and Portage needed to change to accommodate Rusts needs.

Thanks for your comments!
Ah, sorry, you meant function-scoped vs block-scoped not just in general. Yeah, agreed.
Do you really think Instagram is a great work of art, that the Instagram codebase is exemplary?

I think it could be pure shit -- and indeed a very simple idea. They got big and famous, but it wasn't for dexterity in language choice or coding.
Coming from a Ruby background, keeping your language versions independent from your OS package manager is really useful. There are situations where having different versions running alongside one-another is really handy, or not having to wait for your distro to include support for the version you require.

Agreed that it looks like re-inventing the wheel from the outside; rest assured, it's useful!
After about a week of no carbohydrates your body would enter ketosis, which uses a parallel set of metabolic processes that burn ketones rather than carbs. The onset of ketosis is marked by really clear flu-like symptoms. After ~48 hours those disappear and everything is ok again. Do you think that could have been what you were experiencing? Your body will fall out of ketosis very quickly as soon as you have some carbs.
Anecdotally, I worked in SOMA in SF for 2 years, and now I've been working downtown in Portland for a few months...while it seems there are significant problems here, it's definitely not comparable to the problems in SF in my opinion.

I think the issue here is Portland used to be a small-ish "big city" and now it's a medium-ish city and the growth has happened incredibly fast. For people on the ground, it feels like everything's spiraling out of control. Growing pains and the challenges the come with being a major American city that people want to move to (both middle-class and transient groups) are to some extent inevitable. But I'm optimistic that progress can and will be made.

(But I could easily be wrong. As I said, I've only lived here for a few months.)