A Classic Startup Horror Story - <AUTHOR> http://venturebeat.com/2012/02/27/a-classic-startup-horror-story-the-ma-bait-and-switch/2/ <comment><USER3> This sort of scenario is unfortunately very common. The antidote is never to allow acquisition talks to be the main thing you're focusing on. We advise startups who get approached by acquirers to treat it as a background process, and not to take things seriously until the very last stage. If acquisition discussions are just a side show, you can easily terminate them if anything goes wrong. Which, interestingly, probably decreases the chances of things going wrong. M&A guys can smell it when you really want a deal, and that makes them want it less.

<comment><USER4> > M&A guys can smell it when you really want a deal, and that makes them want > it less.

This seems perverse, but I'm guessing that there's some kind of economic intuition these guys have gained from being around deals all the time? Something like, "Wants a deal == needs it == a bad investment." This just seems to confirm that the best way to get money thrown at you is to not have a need for it.

<comment><USER5> I was out with an investment banker at a social outing, and I asked him "What's the biggest mistake startups make during the acquisition process?" He said, "Buddying up with their potential acquirer. Once you express strong interest in getting bought, you've just lost all negotiating leverage. You've got to play coy with potential acquirers until the deal is signed."

<comment><USER6> "Once you express strong interest in getting bought, you've just lost all negotiating leverage. "

Sure if you maintain that strong stance. But you can always change your level of interest and the opposite party will sense that and run to fix the deal. It's a game of chicken at that point but here's the thing. The acquirer is only looking at you and has decided they want what you have. If they didn't they wouldn't be attempting the acquisition.

So look as eager as you want. And then stop being prompt and act as if something else is going on and watch and see what happens. The investment banker doesn't want to loose a deal.

<comment><USER7> I work in an investment bank and I'm not sure how much power the banker has in the deal process. A lot of it is dependent on the buyer, less on the banker. Bankers get paid based on the size of the deal. We usually take 2-3% of the transaction, but if the deal is huge, you might see that number fall down to 1% or so. Usually, its the buyer that hesitates and decides not to buy it. The banker would usually try to get the firm to purchase it, so they can get paid the commission.

</comment></comment></comment></comment></comment><comment><USER8> All is not lost, and the start-up shouldn't despair, for a couple of reasons:

1\. It's not unknown for acquisition deals to get put on the back burner for a while, even a year or two. That happened to my former company when it was acquired. (This history was publicly disclosed in my company's proxy filing with the SEC [1].)

2\. The Company's lawyers are likely to tell them, forcefully, to be very careful about trying to redevelop the technology, precisely because of the NDA.

Suppose that The Company didn't use completely different people (a "clean room" approach) to redevelop the technology. In that case, a jury might not believe they really did it independently.

In a somewhat-similar situation in the mid-1990s, Rockwell International got tagged by a jury for almost $58 million for breach of an NDA with a small start-up company concerning circuitry for improving data transmission rates over analog cell phones. (Disclosure: I was co-counsel for Rockwell at the trial.) [1]

(To be sure, The Company's engineers and executives might well convince themselves that they really did redevelop the technology independently, without using the start-up's confidential information. That could make it difficult to settle the case: The important decision makers might sincerely believe The Company didn't do anything wrong.)

[1] [http://google.brand.edgar- online.com/displayfilinginfo.aspx?...](http://google.brand.edgar- online.com/displayfilinginfo.aspx?FilingID=4002636-972-537833&type=sect&TabIndex=2&companyid=5687&ppu=%252fdefault.aspx%253fcompanyid%253d5687)

[2] Celeritas v. Rockwell, [http://www.ll.georgetown.edu/federal/judicial/fed/opinions/9...](http://www.ll.georgetown.edu/federal/judicial/fed/opinions/97opinions/97-1512.html)

[edited]

<comment><USER9> Yes. The startup might not have the fund to enforce NDA now but wait until the Company has developed a similar product. There will be lawyers willing to do Pro Bono on collecting the damage.

<comment><USER10> Bingo. A major use of these sorts of agreements is "If you cheat us AND make a bundle 'we'll be back'".

Or at least that threat WRT employees unwise enough to have signed non- competes (Boston and D.C. areas, obviously not California) has killed several situations I've been in where a company failed and dog in the manger types, the very ones responsible for the failure, used such threats that everyone else gave up and the concept and/or technology died a hard death.

</comment></comment></comment><comment><USER11> _We are a company without the cash to try to enforce the NDA_

Then why disclose your trade secrets under such terms in the first place?

On busy streets, I sometimes see an attitude amongst pedestrians, who like to casually jump in front of cars as soon as their light turns green. Their thinking is that _they have the right to cross_. There's a sense that drivers are under pressure _by law_ to keep you safe, otherwise they'll be in trouble and people tend to mistake that as some sort of immunisation against accidents.

But what if you get hit? Is the law going to give you back your legs?

I think the valuable lesson here is that, even if the law protects you and provided you can afford it, there's no substitute for prudence.

<comment><USER12> No corporate development person is going to take a deal to the CEO without having gone through dilligence. So as the selling party, you're forced to subject yourself to this kind of process.

However, you don't have to actually answer everything you're asked in this financial (and technical) cavity search. In one M&A process I participated in, the buyer asked the seller to "tell us your strategic vulnerabilities: if someone wanted to totally shut you down via technical, legal, or data means, how could they do it?" The sellers politely refused to answer this.

Bottom line: there are no rules, and it often seems no one feels any shame doing the most utterly awful, unbelievable things during these M&A processes. NDA's don't mean jack, and if you don't answer enough of the questions, they simply cannot buy you. Choosing which questions to answer, and walking away from all the others, is key.

And, as another commenter said: don't ever _need_ to sell. If you really need to sell, you're probably already doomed.

</comment></comment><comment><USER13> This is also a classic bigger-company horror story -- when the developers who said "this isn't so hard, we can do it ourselves" start working on it and run into all the tiny little gotchas that aren't evident in due diligence.

Maybe I've just been exposed to a weird sample, but I've heard 'we can do it ourselves' at least a half-dozen times over my career and not once has anyone actually done it themselves.

<comment><USER14> That suggests what might be a good rule of thumb for distinguishing a rock star programmer from the other kind. The rock star says they can do it, and mean it. Then they do it. Done.

<comment><USER15> ...or the rockstar says they can't do it, and mean it. Then they don't do it. Not done.

<comment><USER16> Or the rockstar programmer says it can't be done, then he does it. And the big company looks at it and ignores it.

</comment></comment></comment></comment><comment><USER17> > _"If you agree to these terms, we have a gentlemen's agreement that you'll > stop talking to other companies?" ... We agreed._

It turns out that's an intelligence test: Anybody worth having a gentlemen's agreement with would be gentlemenly enough to put it down in writing.

The correct answer is: Put it in writing.

Edit: NDA's are another intelligence test btw. All of the entanglements without any of the enforceability.

<comment><USER18> So you're intelligent if you don't demand an NDA?

<comment><USER17> Not quite. It's more like: You're not intelligent if you think an NDA is worth a damn (as the article shows.)

<comment><USER19> When good people sign a NDA it counts for something.

When you're dealing with lying buggers though, it represents an option to sue. Insurance is similar.

<comment><USER20> Yeah, except when you are not in position to enforce the NDA which was the case of the OP.

<comment><USER21> Many lawyers will take cases on contingency.

ie, they'll work for a percentage of any payout.

<comment><USER22> Yes, but that doesn't always help.

If your opponent is rich, they can hire an army of lawyers, and you'll generally need a correspondingly huge law firm prepared to invest their own time and money in countering that. The kind of law firms we're talking about are both few in number, and generally fully-engaged by well-paying clients -- clients like your rich opponent. The incentive to take on a case like this is pretty limited.

<comment><USER23> Army of lawyers may cost much more than NDA. :-)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> Something doesn't smell right with this story. If a big company clearly breaks a contract, there's money to be had and the lawyers will work on retainer. NDAs are legal agreements. They can include terms that prohibit the creation of a similar product for a length of time.

My favourite snippits are: "We shipped some amazing new products" and "Our systems handle load today that they wouldn't project to have until 5 years from now, all on a minuscule startup budget". Shipping is easy. Selling is hard. And building something that scales to (optimistic) 5-year (!) projects seems like premature optimsation to me.

<comment><USER25> It's possible the CEO didn't mean that his company intended to copy the technology, but rather that it would be easy to copy it, and thus that it wasn't worth anywhere near the figures being tossed around. In that case, this wouldn't have anything to do with enforcing an NDA; it would simply mean the parties disagreed on the value of the technology and couldn't reach a deal for that reason.

The article didn't say whether the other company actually did try to copy it, which is why "It doesn't look so hard, we can build it ourselves" is at least a little ambiguous -- especially because it's unlikely that's a direct quote (might "can" have been "could"?).

</comment></comment><comment><USER26> Worked for a start up that was in an extremely long period of due diligence with a big company you've heard of. The big company was giving our company money to meet payroll, so they knew our piggy bank was empty.

Big company says thanks but no thanks. We all get laid off by the start up at lunch time. That afternoon our company lets it be known that they'll be filing a law suit asking for damages of a billion dollars (a similar company had recently sold for several hundred million and it was the dotcom boom days - <USER2> billion sounded not entirely insane).

Big company has a change of heart late that night and decides to buy us for tens of millions of dollars. People called and told to come in to the office in the morning - the day had been saved!

The next morning everyone was fired by big company and the little startup was shut down. Ooops.

<comment><USER10> Errr, where's the oops?

Sounds like the big company really didn't want to buy and that was the definitive end of the startup, but after the threat of the lawsuit either _someone_ got paid 8 figures presumably to avoid the lawsuit or the big company reneged on the payment, at which point no one is any worse off.

</comment></comment><comment><USER27> The key for a successful negotiation is to have leverage. In this particular case, it looks as if the founder of this startup needed the acquisition to happen. Otherwise, when The Company refused the official term sheet, or when they noticed any other smelly things down the road, they could've halted until that detail was sorted out, or even canceled the negotiations.

The conclusion in the last paragraph of the (highly enjoyable, btw) story goes in this direction, but it's a bit optimistic: _the real lesson learned is this: get your business to a level of success where you don't care if the deal falls through. Get profitable. Get such amazing user growth you have investors begging to put in money_. Well, I wish it was that easy!

</comment><comment><USER28> This happens all the time, even for acquisitions which _eventually succeed_. Eric Sink sold his company to Microsoft and mentioned at the BoS 2010 conference that the deal status was "Totally dead: neither party will take any more action regarding this opportunity" two separate times prior to them finally doing it.

</comment><comment><USER15> You know, I started to get suspicious around the time I read the phrase "gentleman's agreement". I can't think of any _good_ motivation a person could have for wanting such a thing aside from the fact that the lawyers haven't drawn up a contract yet.

</comment><comment><USER29> That's not a classic "Startup" horror story. That's a classic "Built to Flip" horror story. One of many reasons why selling is not an desireable business- model strategy.

<comment><USER15> There are reasons to sell a startup aside from having built it to flip. It can even happen in a startup that the founders had every intention of building into a big sustainable business. Many times, it's because the founders and/or investors have "checked out" of the business and want a quick return on their time.

</comment></comment><comment><USER30> _If you agree to these terms, we have a gentlemen's agreement that you'll stop talking to other companies?_

Hint: This is when you say I can do that for X months in exchange for Y breakup fee if this deal falls though.

PS: You can still increase Breakup fee's later in the process, but this is little reason to stop talking to stop considering other offers without being paid to do so.

</comment><comment><USER31> I don't understand why they didn't try to fight this based on the NDA or no- use. Wouldn't a good lawyer be willing to take this on retainer, if they could prove their tech was being ripped off despite the legal protections they signed going into the deal?

<comment><USER32> I'm having trouble following... how were they ripped off?

There's some confusion about the NDA, but as far as I can see... The Company didn't disclose to anyone.

It broke down in due diligence which could just mean that The Company looked at their financials, and found that they were a lot weaker than first presumed and thus not a good acquisition. I'm not sure they admitted that they weren't profitable (who does really?), so it might have been presumed that if you have X products, and Y infrastructure then you must have Z sales behind it. When they looked at the financials, they didn't see the sales figure they wanted so bailed.

<comment><USER33> NDA's are normally written not only to prevent disclosure, but also to prevent the company receiving the information from using it to copy your product. If you're disclosing to a potential competitor, you don't want them sharing that information with anyone else, but you especially don't want them just stealing your codebase and using it themselves.

<comment><USER34> I went through this very same left-at-the-altar scenario a decade ago with a startup. It can be _very_ difficult to prove that the company used the NDA information they had in their possession. Clearly the tech staff in the big company saw it, since this seems to be how they made the determination that they could do it in-house for less.

</comment></comment></comment></comment><comment><USER35> Dude, seriously, this isn't helping anyone unless you give some clues allowing people to figure out who The Company is.

<comment><USER36> Actually, I think the general lessons can be learned regardless. Naming The Company would turn it into mudslinging which would change the tone of the article, and IMO probably not for the better.

<comment><USER37> Agreed. The general case is much better in this regard. The drama from knowing who the players were would distract from the events and any lessons learned.

</comment></comment></comment><comment><USER38> There's a non-zero possibility that the engineering org did report back to the CEO that they could build it.

I've many a large company M&A scuttled due to NIH syndrome from engineering. And almost always they massively underestimated the effort needed to build something (including whether they had the talent or not).

I know of atleast one case where it has resulted in long term serious strategic harm for BigCo when they refused to do a small acquisition (single digit seven figures) because of exactly this scenario.

<comment><USER39> The whole engineering/NIH/underestimate situation certainly rings true.

OTOH, there also tends to be a vast underestimate on how difficult it will be to integrate an existing product (even if it is already built) into a new company.

It is extremely rare that a product the company is acquiring for is exactly the product they need, it is usually 90% of the product they need, and they're still going to have to get the second 90% done while simultaneously working on all the culture issues that pop up when trying to bring two companies together.

</comment></comment><comment><USER40> OK, I dont know much about start ups (I lurk here because of the quality of stories and comment), but here in the UK what I see often are start-ups who seem to rely on the idea that they will run at a loss, often large loss, in the expectation that they will either float or get bought up, rather than perusing a model where the start-up can be profitable on it's own. I've worked for a couple during ye olde dot com boom!!!

OK, I understand that model and I can see the sense in it, but does it not set up a situation where the start-up is so dependent on some one buying them up that they can get over keen once potential buyers circle, resulting in them becoming vulnerable to the iffy behaviour of bigger businesses.

Seems to be a critical point in the business, where the founders can run in to trouble, for reasonable human reasons. Perhaps some sort of help is required in this area?

</comment><comment><USER41> The submitted link goes to the second page of the article. Here's the first page: [http://venturebeat.com/2012/02/27/a-classic-startup- horror-s...](http://venturebeat.com/2012/02/27/a-classic-startup-horror-story- the-ma-bait-and-switch/)

</comment><comment><USER42> Having seen a startup in Austin, TX go through this same kind of thing, I would guess its more common than the author makes it sound here.

The best defense is to build a technology that isn't cheap to reproduce. There is no better moat than killer IP.

<comment><USER43> This is not practical advice. Not many people here are building the cure to cancer. The best defense is to build a self-sustaining business where you don't need to sell it.

<comment><USER44> This is true. The classic example IMO is Amazon: they didn't have "killer IP." Their "moat" was their mastery of fulfillment and distribution, and owning all the links in that chain.

</comment></comment></comment><comment><USER45> if you want it to not happen again, you have to name names. otherwise, there's no downside to this company.

<comment><USER46> Any downside for the company would be so short-lived it wouldn't be worth it. Like most ragefests, it'd die down at the next controversy and be forgotten.

They're not naming names because they value the lesson more than the temporary shaming.

<comment><USER47> not if you are GoDaddy.. SOPA sticks like a mother f'er

</comment></comment></comment><comment><USER48> All good reasons for NOT sharing your startup's IP with prospective partners, not with their CEO, not with anyone.

This story could have been written about GO's negotiations with Microsoft almost 2 decades ago. When MS shined-on GO their lead in the tablet market, and many, many jobs, were lost.

We must remember that large Corporations are looking out for their own interests in ALL cases, recognize when they would benefit by putting us little guys out of business, and act accordingly. If they won't buy us without a detailed look at our IP so be it.

</comment><comment><USER49> Luckily, the acquiree knows that "It doesn't look so hard, we can build it ourselves" is almost certainly a mistaken belief on the part of the acquirer. I've found that any system, no matter how complicated, when explained by a competent engineer who knows the system well and is a good communicator, sounds "not so hard, I could build it myself". I have to remind myself that it is probably hard, and I could probably not build it myself for less than the cost of the acquisition.

</comment><comment><USER50> This link goes to the second page of a two page story.</comment>


Ask HN: Good software to draw floorplans for a renovation project? - <AUTHOR> Basically we have an apartment with naked rooms and need to decide how to fit in cupboards, whitegoods and furniture. Ideal would be something that lets us draw and move features at scale.
There seems to be a lot of software out there that does this, but most of it looks quite clunky and it is hard to tell whether it is actually any good.
Mac support would be great and I'm happy to pay for it.
Have you built or renovated? Which software did you use to sketch plans and play through ideas? <comment><USER2> I've used SweetHome3D ([http://www.sweethome3d.com/](http://www.sweethome3d.com/)) and was quite happy with it.

<comment><AUTHOR> Thanks for the suggestion! It's Open Source as well, I shall give it a try.

</comment></comment><comment><USER3> 3d home

<comment><AUTHOR> Thanks for the suggestion! I believe they have since shut down [0] and moved to Home Design 3D [1]. I'll give it a try.

[0] [http://www.livecad.net/EN/](http://www.livecad.net/EN/)

[1] [https://en.homedesign3d.net/](https://en.homedesign3d.net/)

<comment><USER3> Not gonna lie- I used them 20 years back. But it was damn simple and great looking with good details. I think their name was "3d home" looks like everybody calls themselves that now

<comment><AUTHOR> Hah, fair enough! And yes, I think 3d home has become a category. The one I linked seems alright though from 5 minutes of playing with it.</comment></comment></comment></comment>


The Best Time to Post on Hacker News - <AUTHOR> https://maurycy.com/posts/the-best-time-to-post-on-hacker-news/ <comment><USER2> That person is sampling the top posts instead of sampling all posts. I don't think that's predictive. Particularly anything where you sample extremes (maximum, or top N) is susceptible to extreme fluctuations.

He wants traffic, metrics such as "# of votes per post submitted", "probability of hitting the top page", etc. To model a successful post you have to also model an unsuccessful post.

My take is that HN always has activity because the sun is shining somewhere and that addicts are using it at every hour (but few from midnight to 5pm)

My favorite time to post for maximum traffic is 7am EST or so because at that point Europe is in full swing and the U.S. east coast is waking up. If you catch a break from the Europeans then you get a swelling audience across the U.S. and can hang near the top for a long time.

The highest karma user on HN is in Brazil, which might be very good to work the Euro-American audience.

</comment><comment><USER3> You forgot the most important thing here ortherwise your graph become useless: Timezone.

<comment><USER4> The timezone (US/Central) is mentioned in the article.

<comment><USER3> Can't believe I missed that one</comment></comment></comment>


Lalal.ai: Free AI-Service Accurately Isolates Vocals and Instruments - <AUTHOR> https://www.lalal.ai <comment><AUTHOR> LALAL.AI introduces a new and improved way to extract vocals and instruments from music tracks. The new online service uses a machine-learning algorithm to precisely identify and carefully separate vocal and instrumental tracks.</comment>


New flu resembles feared 1918 virus - <AUTHOR> http://health.yahoo.com/news/reuters/us_flu_virus.html <comment><USER2> Where can I get infected? I'd rather have it _now_ , while it's still not very virulent, and pick up immunity that'll hopefully protect me when it mutates and starts killing people...

<comment><USER3> People are holding "'flu parties" for this very reason. The medical profession advises most strongly against it.

<http://www.google.co.uk/search?q=flu+party></comment></comment>


Most Canadians Are Now Better Off Than Most Americans - <AUTHOR> https://www.bloomberg.com/opinion/articles/2019-08-29/america-s-middle-class-is-losing-ground-to-canada-s <comment><USER2> Canadians have been gorging themselves on debt for the past decade. Far higher than other OCED countries. That's left them in a very precarious situation.[1]

[1][https://www.cnbc.com/2017/11/24/canadas-household-debt- level...](https://www.cnbc.com/2017/11/24/canadas-household-debt-levels- higher-than-any-other-country-report-says.html)

<comment><USER3> They've been going into debt in order to buy housing, not on other forms of consumer spending or 'living beyond their means'.

Who sells them housing? Other Canadians.

Why do they go into so much debt? Because the nature of housing is that rising prices will squeeze out every last cent of saved money from the pockets of people trying to buy their first house.

It boggles my mind that the average house in Vancouver or Toronto costs ~20 years of average wages (Assuming you don't eat, sleep under a bridge, and don't pay any taxes.)

20 years worth of labour sure as hell did not go into building it. It's all land speculation.

<comment><USER4> At some point, it's a better financial move to rent instead of own. That is true in many American cities (much of NYC, for example). Housing bubbles happen. Try not to buy into one.

<comment><USER3> This advice sounds just as great today as it did in Vancouver, 15 years ago.

In the meantime, inflation-adjusted housing prices more than doubled. Pretty much everyone and everyone would have been better off not following your advice.

And today, in 2019 there is still no clear transition path out of the current horrorshow that is the property market. Prices are not coming down, nobody sees any mechanism by which they might come down, and too many people have too much invested in land for the government to ever encourage prices to come down.

When you rent, you are seriously gambling that property prices will not keep rising. When you own, you are seriously gambling that property prices will not fall.

The thing is, there are enormous political and economic pressures to create policies that prevent property prices from falling. As a renter, you are placing a bet against these incredibly powerful forces. It doesn't even matter if you're right - the markets may remain irrational longer than you can remain solvent.

Edit: Obviously there are complications to this. Buying and selling a house is stressful, time-intensive, and expensive. If you're only going to be in an area for 5 years, it's not as smart an idea as buying one with the intent to stay for 45 years. Obviously, it's possible that a generational shift in demographics will result in a property crash... But it's just as likely that increased immigration will offset that shift. Obviously, your city's financial situation, and likely future changes to property taxes will have an effect... The list goes on.

<comment><USER4> If things get seriously unaffordable as a renter, it's always possible to move somewhere more affordable.

Housing, on average, rises at the rate of inflation (it's closely linked to the cost of new construction), per Robert Shiller's research. Even if the housing market explodes in one area, there's almost certainly another area where it hasn't (normally one without restrictions on new construction-San Fransisco being a prime example of a place where housing prices have skyrocketed due to such restrictions).

<comment><USER3> Affordable places don't have jobs. This is not a trend that's reversing anytime soon.

> Housing, on average, rises at the rate of inflation

I don't care about the price of the average house in the country. I care about the price of a house within a commuting distance of where I can find gainful employment.

Right now, the prices of homes in those areas are skyrocketing, while the prices of homes in areas that don't have gainful employment are nosediving. Take the average, and you'll find that it tracks inflation... And is a worthless metric.

> Even if the housing market explodes in one area, there's almost certainly > another area where it hasn't

Yes, and none of those areas are ones where young people can make a living.

The socially optimal thing would of course be for retirees to consider selling their million-dollar coastal metro homes and move to cheaper areas, like the interior. But as long as they have access to HELOCs, they don't feel any pressure to do them. They can just borrow money against their million-dollar home, instead of downsizing. This is also not going anywhere. It would be political suicide to force grandma and grandpa to move to the boonies, just so that their grandkids, who need to work in the city could afford to live in it.

<comment><USER4> Perhaps grandkids should ask to move in with grandma? She might like the company. :)

In seriousness, not all metro areas have seen the same huge rise in rents and property values. I can personally vouch that the Baltimore-DC region offers relatively high paying jobs and housing that is adorable given those incomes. I've heard San Antonio, TX is also good on the jobs to housing costs front.

<comment><USER3> Neither Baltimore or San Antonio are in Canada.

<comment><USER4> Montreal and Quebec City seem reasonable, but this is based purely on a few web searches.

I hope you end up in a place where you can start building some financial security.

Also, run the numbers on long term renting in areas where housing prices are high. There's sometimes a high opportunity cost to having a ton of your savings stuck in the down payment for a house when you could otherwise have it invested in low cost index funds or something similar.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> I was born and raised in Canada. I, like many of my peers at the "top" Canadian universities, focused solely on recruiting to the "top" American companies that came to campus to recruit[1].

I would describe Canada as generally being tightly range bound. One of the most striking things about coming to the U.S. is the large class of what I would consider to be the working poor. People who are truly just doing enough to get by and are one mishap away from financial ruin. Of course, having lived in SF and NYC this is constantly juxtaposed with extreme, incomprehensible wealth that is equally striking.

In Canada, in my experience, the vast majority are still in the middle with few outliers in either direction. Earning potentials are significantly capped - even in areas like banking and tech - and social programs make it quite difficult for there to be the kind of working poor I observe daily here.

I've often thought to myself that I couldn't imagine what it would be like to make $50k in the United States (even living in a low CoL area). From health insurance, to private school costs (given the quality of many public schools), to college costs. It would seem an intense burden. Certainly if I had offers that paid between $50-100k in both the U.S. and Canada I would move back to Canada. I would feel I have no other choice.

With all that said, I make many multiples - especially after tax - of what I could ever have hoped to make in Canada. I have been inside institutions with the kind of institutional framework with no comparable in Canada (from a human capital and technological perspective). Opportunities have been afforded to me here that either do not exist or are analogous, but significantly inferior in Canada. The United States has given me a wonderful life and I'll always be grateful for the opportunity to be here.

I make no claim as to which economic system is better. I would just observe that Canada is a much easier place to live, but in my experience lacking in the kind of dynamism you see in the United States (that translates into personal opportunities, income, and fulfilment).

[1] Top is obviously somewhat subjective. McGill, U of T, UBC, and U of Waterloo would be the "top" schools. The "top" jobs are FANG or FANG-adjacent, investment banks or hedge funds (GS, JPM, Citadel, etc.), and consulting firms (McKinsey, BCG, Bain).

<comment><USER6> > I've often thought to myself that I couldn't imagine what it would be like > to make $50k in the United States (even living in a low CoL area). From > health insurance, to private school costs (given the quality of many public > schools), to college costs. It would seem an intense burden. Certainly if I > had offers that paid between $50-100k in both the U.S. and Canada I would > move back to Canada. I would feel I have no other choice.

I wonder how much of this perception comes from the fact that people who have lived in both Canada and the U.S. probably lived in places like SF and NYC, and those American cities are particularly dysfunctional. And that dysfunctionality is particularly visible because of differences in housing patterns. (Toronto versus Chicago is a good example. The two cities are the same size, but Toronto's metro area has 6.5 million people, while Chicago's has almost 10 million. If housing patterns were similar, Chicago would have another 1.5-2 million middle class people living in the city, lessening the impression of gaping wealth inequality between the city's various neighborhoods.)

The fact is that Canada spends almost exactly the same percentage of GDP on social welfare as the U.S., and slightly less per student on K-12 education. It's hard to imagine that Canada really manages to get a dramatically different safety net for the same money. More likely to me is that U.S. urbanites have little experience with American families in suburban Georgia or Kansas--places where making $50,000 and getting employer-paid health insurance (like most middle class families get), and sending your kids to the perfectly good neighborhood school makes for a quite comfortable life.

<comment><USER5> I have thought about this quite a bit and tried to word my initial post as a personal statement (not an objective fact of the inferiority of making $50k in Kansas as opposed to Quebec).

I entirely agree with your point that American families in Kansas, et al. seem reasonably content and the kind of fears that would lead me to look to Canada over the U.S. if I made $50-100k are perhaps entirely irrational.

My response though - again personal in nature, not objective in any sense - would be:

Canadians grew up in Canada with an imperfect healthcare system. Nevertheless, it's there and assessable whenever it is needed. There's no fear of random bills or imperfect coverage (there is a fear of waiting weeks or months, however, which is perhaps more important).

Canadian immigrants only understand the U.S. healthcare system in the abstract -- so losing your health insurance or having it and getting dinged with a large bill is a bit of a boogeyman (scary, but perhaps only because we don't fully understand how it all works in practice).

Likewise K-12 and college in Canada is a much simpler affair. I grew up in a city of 100,000. We had no private schools so everyone went to K-12 together. When it came time to go to university, my top-ranked school (in Canada) cost $7,000 a year and was quite easy to get into.

So for a middle-class Canadian family the notion of setting up your child to have the very best Canadian education available isn't an overly stressful affair. K-12 is public and college is reasonably affordable with reasonably high acceptance rates. Importantly: even if private K-12 is available, it's not overly difficult to get into McGill, et al. so why bother?

For a middle-class American family - because private K-12 is available and likely helps with getting into the best colleges - you feel somewhat compelled to send your child there (lest you do them a disservice). Then - again because elite colleges are available and better than privates - you feel compelled to help your child get into and pay for an elite, private education (even the top public options are quite pricey).

In reality what America provides is better alternatives. An issue I see with many colleagues with children is spending $10k a year on private K-12, but feeling like a bad parent because they can't afford the $30k option that has superior outcomes (a classic urban insecurity that is likely not entirely rational). In Canada there are few choices (or in health care only one choice) and while they are inferior to American comparables, they are much more widely assessable. You send your child to the public K-12, because that's just what's available. Your child has just one healthcare option. Your child can only pick from four "elite" universities and if she or he applies to them all, will likely get into one (at a reasonable cost).

It's all the paradox of choice, I suppose.

<comment><USER6> This paradox of choice largely doesn't exist in the US either. The majority of people in both countries didn't graduate college. For almost everyone, the elite universities aren't even on the radar (much less the elite employers like FANG into which those universities feed). This upper middle class striverism is over-reported in the media, but is irrelevant to the vast majority of Americans.

My wife went to high school in rural Iowa. Everyone went to the local high school, and then the smart kids went to U of Iowa, the next tranche went to Iowa State, etc. Her parents were "rich" (her step-dad is a surgeon) but there wasn't much in the way to distinguish them from everyone else. Other "rich" families owned farms, a couple of stores in town, etc. She did FFA (Future Farmers of America) and worked her way through college babysitting. (Tuition at U of I is $8,500 today, about the same as University of Toronto or McGill.)

I should add, in Iowa under 10% of people are below the poverty line, about the same as Canada, infant mortality rate is about the same as Canada, the homelessness rate is 1/10 what it is in Canada, 94% of the population is covered by health insurance, etc. I just got back from Des Moines. Talk about a prosperous, broadly middle class society. The child poverty rate in Des Moines is 14% versus 25% for Toronto. There are no FANG jobs, but millennials with completely normal colleges-graduate jobs own houses. If you want to know why many Americans don't view their country as a loaf-apocalyptic wasteland, it's because they don't live in New York or San Francisco.

<comment><USER7> *if you're straight and white.

For many, living in Iowa isn't really a choice. Same for many places that are not major cities.

<comment><USER6> I won't claim to know what it's like to be gay in Iowa, but as a non-white person myself I'd love to live in Iowa. Des Moines has roughly the same percentage of Hispanics and non-whites as Portland or Seattle. The income gap between Hispanic and non-Hispanic households is also narrower in Iowa than the national average.

<comment><USER8> Iowa City, home of the University of Iowa, has a large, active, prosperous gay population. Activism is outspoken. Churches have gay ministers. The Gay Pride parade every year is boisterous and hugely attended.

Not that there isn't gay-bashing, like so many places. But I'd guess there's 'safety in numbers' going on?

Anyway even back in the day, I had several gay classmates (but back then they weren't outspoken about it). These days, my son's classes had coming-out parties etc for classmates.

My daughter-in-law's parents are gay and outspoken about it. My cousin's daughter is married to a wonderful lady, and they've adopted 4 kids who are amazing additions to the clan. We have lunch once a month and catch up.

So some parts of Iowa, at any rate, are not wastelands of backwardness.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> There's a really significant caveat on page 5, regarding the factors used to adjust for purchasing power:

> Using the PPPs from the OECD instead, between 25 and 32 per cent of Canadian > households would be better off than their American counterparts. The > Appendix provides the full estimates using PPPs from the OECD.

Leaving that aside, Canada is broadly comparable to the US in terms of policy so we would expect it to have similar outcomes. Over the past few decades, Canada has been pushing a massive policy of economic liberalization: [https://www.cato.org/publications/commentary/great-right- nor...](https://www.cato.org/publications/commentary/great-right-north). Their government spending as a percentage of GDP dropped from almost 50% in 1990 to under 40% (comparable to the US) in 2008. They've done a better job controlling the deficit than we have, so they have lower debt as a percentage of GDP. They've cut individual taxes to around U.S. levels, and have cut corporate taxes to below U.S. levels. Canada's social spending as a percentage of GDP is slightly less than the US's as of 2014: [https://ftalphaville.ft.com/2014/11/27/2053392/welfare- spend...](https://ftalphaville.ft.com/2014/11/27/2053392/welfare-spending- across-the-oecd). Canada has also aggressively deregulated: Canada ranks #8 in the Heritage Foundation's economic freedom index, versus #12 for the US.

Canada, Australia, and the United States are more similar than they are different, both culturally and economically. Unsurprisingly, outcomes in those countries are also very similar.

</comment><comment><USER9> Canada is tremendously better than the USA if you're young (18 to 30 years old).

I had the shittiest life in the USA, was born in Canada but parents moved to USA and when I was seven years old; parents were lower-middle class for context.

I've only managed to move back to Canada a few years ago and I wish I never would go to the USA ever again if I could live life over. Canada has free healthcare and I'm a transgender person; so that's awesome that people are taken care of medically. In USA I was denied healthcare by doctors based on their religious beliefs. I even suffered conversion therapy and multiple incidents of discrimination that would have easily ended with legal proceedings in my favour if it had occurred in Canada instead of the USA. The legal help for minorities in USA is a joke and they turn away people unless they feel like media will love the story.

Other benefits would be university cost in Canada is affordable compared to USA. In Canada tuition loans will not start collecting interest until after you have a degree and working (I believe). Also you can declare bankruptcy if you need to unlike in USA. Food here is way healthier than the USA. Social workers here care in helping people find jobs, get the resources they need and there is legal aid if you're jobless.

<comment><USER10> I...I can't believe people are downvoting stuff like this.

We're virtually in the same position - I am also transgender, and would have to pay hundreds of dollars for HRT if I was down there, alone.

There are unfortunately a lot more biased, seemingly pious individuals here, who are just downvoting these kinds of comments without even providing proper criticism.

That's what 'patriotism' gives you. Amurrrica!

I've even had folks directly misquote me and put words in my mouth to argue with me. I've never even seen that on HN.

<comment><USER11> I can only speculate why people are downvoting, but I suspect it's because sysbin's comment seems to suggest a particular state of mind:

\- Ignorance of the First Amendment \- Extreme sense of entitlement and expectation that others should do as he/she expects regardless of how the other person feels about it

Phrasing it as "I was surprised to find that doctors in the US can refuse treatment to transgenders based on their religious beliefs" would probably have led to far fewer downvotes.

<comment><USER9> Hypocrisy is what you're preaching right here. People downvoting me for expressing (what "they" consider a first amendment right) by voicing my opinion that Canada has it better for not restricting healthcare based on religious ideology. That's hypocrisy against my USA and Canadian right.

People are scum when they use religion as an excuse to allow someone's health to be worse than if religion didn't exist to result in the maltreatment compared to a person with an illness they find tolerable by their beliefs for following treatment protocol accepted in the medical community.

I can voice that opinion in Canada or in the USA. Canada has it better for trans people. I'm sure "scum" in USA will not care about that because they're a bunch of narcissists.

</comment></comment></comment></comment><comment><USER12> This one was on Hacker News a few days ago.

"The Poorest 20% of Americans Are Richer on Average Than Most European Nations"

So I guess Canada > US > Europe?

[https://fee.org/articles/the-poorest-20-of-americans-are- ric...](https://fee.org/articles/the-poorest-20-of-americans-are-richer-than- most-nations-of-europe)

</comment><comment><USER13> A Canadian friend of mine lives in B.C. and told me that, "80% of Canadians live within x miles of the U.S. border.... We call it 'huddled up to the stove'".

<comment><USER14> it's within 200 miles. Also a different but fun fact - 80% of the canadian population lives in one straight line between Quebec City and Windsor Ontario (adjacent to Detroit), we call that l'axe Quebec-Windsor: [https://en.wikipedia.org/wiki/Quebec_City–Windsor_Corridor](https://en.wikipedia.org/wiki/Quebec_City–Windsor_Corridor)

<comment><USER15> > 80% of the canadian population

The Wikipedia article you linked to says it's actually closer to 50%.

Quote: _" With more than 18 million people, it contains about half of the country's population"_

</comment></comment></comment><comment><USER16> And then you realize that the population of Canada is 10% of US. Canada should be compared to the Nordic countries vs. US in terms of quality of life etc.

<comment><USER17> I have never understood why people assume that just because the US is bigger than other OECD countries that it can't have the same levels of happiness, or the same quality/cost of healthcare and education etc.

Why do you think the US should aim lower simply because it has more people?

Why don't you think per-capita comparisons are valid?

If anything, the US should be better than smaller OECD countries because it gets a huge benefit from scale.

It feels like you're simply giving up "because we're bigger" on even trying to just equal other OECD countries.

<comment><USER18> Taking it further, does this mean we should break the country into a bunch of small ones so we can all be better off?

<comment><USER6> We wouldn't all be better off. We would just end up comparing Maryland or Massachusetts to Switzerland and Sweden.

</comment></comment></comment></comment><comment><USER19> and yet when clicking the link, the headline says "Canada's household debt levels higher than any other country, report says"

<comment><USER20> I'm seeing a different page from yours.

Headline for me is: "Most Canadians Are Now Better Off Than Most Americans"

With a subheadline: "Middle-class people in the U.S. are losing ground to their peers in other rich countries."

</comment></comment><comment><USER21> I wonder how much this has to do to with immigration and immigration policy. The US and Canada have both been very open to migrants since the at least the 80s (current US administration exempted), but Canada has aggressively pursued attracting high skill foreign born workers while the US has not. I know US foreign born average earnings are substantially below native born earnings, but I couldn't quickly find similar statistics for Canada

</comment><comment><USER22> Archived link: [https://archive.fo/20190829140749/https://www.bloomberg.com/...](https://archive.fo/20190829140749/https://www.bloomberg.com/opinion/articles/2019-08-29/america- s-middle-class-is-losing-ground-to-canada-s)

You can use this chrome extension to easily get the archived page: [https://github.com/ImedAdel/arkiv/releases](https://github.com/ImedAdel/arkiv/releases)

</comment><comment><USER23> The headline is a very ambiguous statement. It seems to be consistent with the proposition that the top 51% of Canadians are better off than the bottom 51% of Americans, which would be an exceedingly small difference.

On the other hand, if the top 80% of Canadians were better off than the bottom 80% of Americans, that's a huge difference, but kind of implausible.

</comment><comment><USER24> Cars in the US are far cheaper than in Canada. One of my coworkers in the Montreal office came to US to get a used car. Even my German friend who is working here on a contract, could not believe how inexpensive a BMW was here.

</comment><comment><USER25> Also every American who dies of cancer or other major medical condition will have his or her lifetime savings wiped out by medical bills. So measure average net income minus expenses at time of death and I'd be surprised if we beat Bangladesh. They probably have a higher gross national happiness in life as well.

</comment><comment><USER25> Eh?

</comment><comment><USER26> Doesn't account for immigration. The US has lots of poor immigrants, which drives the median down.

<comment><USER27> Canada's immigration rate (of legal immigrants) is higher than the US'. We take in nearly twice as many immigrants as the US, relative to our population.

<comment><USER28> Canada is known for being very accepting of middle class and educated or skilled immigrants. Poor immigrants (which is what the original comment was specifying) not so much, and Canada's border enforcement is more effective than that of the US.

<comment><USER27> Sounds like a failure of the US immigration system if new immigrants are unable to get decent jobs, even while the US accepts half as many immigrants per capita. Also interesting is the current political discourse in the US, where prominent voices in the media want to take in more currently rejected and undocumented migrants while the US is losing ground to other developed countries for income deciles 1-6.</comment></comment></comment></comment>


Perl 7 is going to be Perl 5.32, mostly - <AUTHOR> https://www.perl.com/article/announcing-perl-7/ <comment><USER2> I've been a perl zealot since 2005. I didn't even know "python" existed until around 2008 when I found a script file with a ".py" file ending in a fresh ubuntu install. I started going to perl conferences sometime after 2010 when someone on irc informed be about them. I learned so much in those conferences, mainly about the alternatives to cgi and the modern OOP "framework" named "moose". I thought I was in heaven.

I landed my first devops position around the 2010 era as well and being the only one on the team that really knew how to "program", I spammed out tons of perl scripts and web apps. A few years later one of the newer employees on the customer support team started spouting off about "python" and how it was so easy to learn. He was always blabbing about terms I'd never heard of like "generators", "list comprehensions", "decorators", etc. I looked them up and learned they were just abstract constructs with fancy names that are supported in most any language. So I just figured he was some idiot that didn't really know anything. Otherwise, why would you be blabbing about abstract constructs? He quickly landed a job at google and I left and started freelancing only picking up perl jobs. Because perl was "dying" and this being after 2012, there were several companies with large perl bases that couldn't find local employees so were forced to allow remote workers.

This is where stuff started going wrong. I went through many jobs/gigs my first couple of years. I quickly noticed that companies that had large perl code bases were all founded pre-2005. This meant it was crap perl, in most cases not even using CPAN but having home grown ORM's and web frameworks and a scrict hate of javascript. So it mostly sucked and was slow going. In one case I was literally fired after a couple of months from this one company that specialized in phone billing accounting software (all perl powered) because I was "too slow". The owner told me he should have never hired someone with less than fifteen years experience with perl and bid me farewell. I almost busted out laughing as for the entire two months I was only doing javascript front end work since the other perl guys there hate javascript. Even the owner of the company had no clue how his own software worked. This was a theme that repeated it self else where as well.

Fast forward a few more years and I had landed a good remote job, still in perl but offered more freedom in the dev cycle. I got good with react and vue.js as it greatly speed up the dev time for all the heavy interactive apps I was tasked with. But I continued to struggle against others in the perl community. I can understand how a 50 year old perl dev (the typical age) would hate javascript and instead put as much code in the back end using all kinds of horrid html templates and never ending form post/refresh/repopulate cycles... I can see the "why should I learn javascript if i know perl" ideology, but what blew me away is a constant "why should I learn SQL if I know perl" ideology. Yes I'm serious. In so many other cases devs were fine with just doing "select *" on tons of tables and stuffing all that in a hash/dictionary of column name matching keys. Databases were big, scripts and page load times would grow to minutes or even hours. Sometimes exhausting the machine's ram and crashing everything. Everyone was fine with it, management just acted like it's how things work. Meanwhile as a co-worker, I'm left digging through pages of perl code that could have just been a single SQL query trying to figure out why some numbers are wrong in an invoice report. It was a continual issue.

Another issue is just the bit rot of cpan. The ORM and drivers for both postgresql and sqlite don't even support most of the features added in those systems since 2014. So even though postgresql is the most advanced DB out there, you are stuck with no ability to use any of the fancy native array or json types or even the "natural" join syntax (and many other things), neither good support for foreign keys in sqlite either.

I've thrown my hands up and jumped ship. It's sad too. I liked many in the community and like Larry Wall as well and have had dinner with him on several occasions. But I can't keep my sanity and stay with perl. I can read perl fine, it is not the notorious "write only" language that many troll it to be. But the issue is the community and those using perl daily are fine with being stuck in 1995. Larry Wall stopped adding features to perl in 2002 (?) and moved to perl 6 which.... well how do you even describe that? The point is, perl has been the same since 2002, mean while python has had continual development and features added every year since then. I'm just done.

<comment><USER3> I feel you. I'm currently at a startup that, somewhat by accident, ended up writing their backend in PHP.

Modern PHP is actually fine; it's largely avoided the issues perl has; adoption of the latest versions is quite high, and it's...fine. Not the best, not the worst, broadly comparable to other languages, and a far, far, far cry from what most people may think of when they hear "PHP". My last job used Node, the one before that used Python; I have personal preferences, but at the end of the day they're just tools, it's all fine. The "PHP: a fractal of bad design" blog post actually made a big impact on the community, and shocking number of the issues listed there have been solved, with rapid active progress ongoing. (Yes, I know, it still has issues, and people still hate it. No need to comment to let me know.)

And yet...

...there's a big chunk of the PHP community that just really isn't on board with any of this. Every time the core devs release a new language feature, vocal critics complain about how the language is becoming more "enterprisey" or "like Java". Even on the core dev team, when they vote about fixing some crazy broken feature of the language from the bad old days, a vocal minority is always against it. The language (thankfully) has _not_ stayed still since 2002, but people are trying.

And of course, when we advertise to hire devs, if we say we're looking for "PHP devs", we end up flooded with applications from people who basically know how to install and configure plugins for PHP based CMSes, or from "senior devs" who have been hacking together procedural PHP scripts for 20+ years and have zero knowledge of software engineering principles, unit testing, etc. We've ended up hiring python devs to work on a php code base, not because no php devs are out there, but just because the community is so....weird. There are good engineers who happen to sometimes use PHP, but they rarely (if ever) identify as "PHP devs".

I dislike the JS ecosystem and it's constant churn and cult of the new, but sometimes you run across the reverse problem too.

<comment><USER4> I heard the "PHP is becoming like Java" argument in 2005 when PHP 5 came out. I'm surprised to hear it's still a thing.

Funny enough I heard the same thing about JavaScript about 5 years ago when ES6 came out.

<comment><USER3> > I'm surprised to hear it's still a thing.

Ha, if anything I think it's intensified. A current focus is on adding support for annotations (aka attributes from C#), which will be strictly opt-in and replace an ugly pattern currently widely used in PHP land of using docblocks to store them and then parsing them out at run time. "Hey, people keep storing these things in comments, lots of other languages have them as a real feature, let's do the same and make things saner and more efficient."

Simple right? But no, it's actually been quite controversial, and by no means _just_ due to bikeshedding about syntax. Here's a selection of quotes (all highly upvoted) from a recent announcement on the PHP subreddit announcing that the feature has been accepted for PHP 8.0 and linking to a detailed document explaining the use case in painful detail:

"What problem is this trying to solve? I don't think I'm a fan." "Not sure if I'm a fan. [...] IMO it got way out of hand in Java." "How about no? What does it solve that you can not already program with PHP. If other languages are any indication, its one of those changes that WILL get misused from here to high end." "yeah no thx"

</comment></comment></comment></comment><comment><USER5> I was part of a team that wrote significant parts of Amazon's payment processing systems in Perl in the late 90s. I really loved the language. It's object system was so flexible and powerful. Once you understood how write idiomatic perl. It was a joy to use. I'm looking forward to trying out Perl 7.

<comment><USER6> huh. I spent a couple years writing perl professionally, I guess that was around 2006, and I couldn't agree less. Its object system is so bizarre compared to any other language - it's like it doesn't really have an object system, it has parts of a system that you can try to assemble, but no matter what you do you end up with something weird.

And on top of that, the sigils, refs, and `wantarray` systems means that figuring out what syntax you need to invoke something correctly is confusing mental overhead that you have to keep in mind for _every function call_

Basically the things I learned in perl were the _least_ transferrable concepts of any programming language I've ever worked with. You learn Haskell, or Forth, or Lisp and you learn insights and patterns that you can use in any language. You learn perl, and you've learned nothing but Larry Wall.

<comment><USER7> Perl was my first encounter with regular expressions. To this day, no language I've used does it better and cleaner. This includes Python, Boost/C++, Java, JavaScript, LISP, Go and Rust.

<comment><USER8> Favorite syntactic sugar feature: the /x modifier which makes the regex ignore spaces and comments, meaning you can break your regex into multiple lines and comment them.

<comment><USER9> FWIW, this is the default in Raku regular expressions.

<comment><USER8> Oh, thank you, didn't know that!

</comment></comment></comment></comment></comment></comment><comment><USER10> They last line of the article summarizes it well:

> Perl 7 is v5.32 with different settings. Your code should work if it's not a > mess. Expect a user release within a year.

Are there actually people that are still deploying new things in Perl? The only times I see it is for legacy stuff, and then only because the script is too much of a hassle to be rewritten.

<comment><USER11> IIRC Craigslist was written in Perl but that's the only high traffic site that comes to mind.

<comment><USER12> The Amazon retail site is written in perl (at least the presentation layer still is, you can find mason references still in the HTML source if you go looking, don't know how much else behind it is in perl).

[https://metacpan.org/pod/Mason](https://metacpan.org/pod/Mason) (if you're not familiar with Mason)

<comment><USER13> Actually, that's Mason 2. Amazon use(s|d) the OG Mason - [https://metacpan.org/release/HTML-Mason](https://metacpan.org/release/HTML- Mason)

</comment></comment></comment></comment><comment><USER14> I have used Perl since the Perl 4 days.

One can write bad Perl, and I've written a lot.

One can write good Perl, and I've written some. It has saved me and others quite a lot of time on assorted projects.

These days I tend to use Python where once I'd have used Perl. This is mostly because I find that the young are far more likely to know Python than to know Perl. I will be retiring one of these days, after all.

<comment><USER15> I don't think it's necessarily generational. Perl and Python differ in a key regard: Perl went all in on TIMTOWTDI, whereas Python went in the complete opposite direction: enforced whitespace, minimal syntax, strong use of conventions and idioms. (When was the last time you heard somebody inquiring about the Perl-ic way to write something?) As a result, a lot of Perl code is an unreadable mess, and many Python programs are intelligible even to non- programmers. It's hard to overstate what a win this is for Python.

<comment><USER16> TIMTOWTDI="There is more than one way to do it"

</comment></comment></comment><comment><USER17> As a short summary about Perl 7:

If your Perl is old-school, that's OK. Use Perl 5 and we'll keeping supporting you.

If you your Perl isn't old-school, use Perl 7 and get new features.

If you're not sure, ask us and we'll hold your hand to help you understand.

We're here to make sure you're OK.

<comment><USER8> Any chance Cor makes it into Perl 7?

<comment><USER9> I understand that to be the plan.

</comment></comment></comment><comment><USER18> Once this is out, I'll be interested in any well written guides or books, it has always felt like "the one that got away" to me.

Back in 2002 I had to choose between learning between Python and Perl for a project, but "everybody knew" Perl 5 was soon going to be replaced by a new shiny different Perl 6, so I chose Python.

It will be interesting to see where Perl can live and gain new users nowadays. Python has so much become the "default scripting language", and has so many bindings and libraries.

<comment><USER19> I think you can learn most/all of Perl 5.32 with [http://modernperlbooks.com/books/modern_perl_2016/](http://modernperlbooks.com/books/modern_perl_2016/) , and it appears this is, initially, going to be 5.32 with some saner defaults. So you could really start now, given that.

> This beloved guide is now completely updated for Perl 5.22.

I've been working with Perl since about 5.20 and am on 5.31 or 5.32 and haven't noticed many breaking changes FWIW.

<comment><USER20> The 2016 edition covers most of what's in 5.32; if I were to do an update for Perl 5.32, I'd include postfix dereferencing and the built-in function signature mechanisms now that they're very stable and supported.

</comment></comment></comment><comment><USER21> Much as people complain about Perl, it is the language which I use when I want to have something which will run 10-20 years from now.

I recently wrote a consistency checker for file archives (so that I know when bitrot sets in) in Perl, precisely because I want it to be usable for a _long_ time ([https://github.com/jwr/ccheck](https://github.com/jwr/ccheck)).

Very happy to see a path forward for Perl 5.32.

<comment><USER22> Interesting, I've been moving _away_ from Perl and Python and towards Rust precisely because I'm afraid of bitrot. Perl the language is stable as fuck and takes back-compat extremely seriously. The problem for me was the library ecosystem: Cpan makes it tedious to pin/vendor dependencies, and installs dependencies globally by default.

<comment><USER23> You might want to look at Carton and cpanfiles as a way of managing dependencies. You can also get really ancient stuff off BackPAN, should your dependencies disappear from CPAN proper.

[https://metacpan.org/pod/Carton#Tracking-the- dependencies](https://metacpan.org/pod/Carton#Tracking-the-dependencies)

[http://backpan.perl.org/authors/id/](http://backpan.perl.org/authors/id/)

<comment><USER22> Yup, Perl7 + Carton looks like a good combo for stable programs that don't have to be distributed publicly. I just wish cpanm and Carton were Core :D

</comment></comment></comment></comment><comment><USER24> Perl has these tiny neat features that I still miss in other languages. Like unless (opposite of if), and postfix syntax.

        print "It worked!\n" unless $error;
        print "Item: $_\n" foreach @items;

<comment><USER25> I hate unless! It always makes me stop and think a few times, causing double or even triple negatives in my brain. What's wrong with something like "print this if not $error"?

Maybe that's because I'm not a native English speaker?

<comment><USER26> I am not native English speaker but I like it in ruby, helps with double not:

        if not not_implemented
        unless not_implemented

</comment></comment></comment><comment><USER27> My very first program was:

        perl -e 'print int rand(10);'

Good times. Good times. :)

I wrote a lot of Perl. I even wrote a small LISP interpreter entirely in Perl! These days I write more Racket and Elixir, but there's still a soft spot in my heart for Perl. I hope this will breath some fresh life into the language. I think it has a lot of interesting ideas about language design that new languages would do well to copy.

Perl is (in)famous for all the shortcuts possible in the language. While this does steepen the learning curve, I think there are some valuable ideas worth exploring. The implicit topic variable (`$_`) is _super_ nice when throwing together a little script. The semantics are well laid-out in its documentation. I think an improvement would be to somehow make it more clear directly in the language itself where the topic variable is used. Maybe that's what I'll end up looking at in some research. :)

Lots of languages, I feel, optimize for readability for beginners. (I'm thinking about Python and Go here.) Perl is optimized for people familiar with the language. I think that can be a good thing, if done right. What do you guys think?

</comment><comment><USER19> > PHP went directly from 5 to 7, and isn't it time to steal something from > that community?

:D

<comment><USER28> There was a php6... we just do not talk about it. There is a perl 6 also.

<comment><USER29> There was a perl 6, but it is no longer perl, though it's still 6.

</comment></comment></comment><comment><USER30> I love perl, so I'll definitely spend some time tonight trying to find out more about the plans. From just this article, it's hard to see how this is different than just making 'use v5.34;' flip some switches. That's just business as usual in modern perl, even if it changed more things than normal. Still, if bumping the major version gets people to take another look at it, it will be a good thing. And maybe there are bigger plans post-7.0 and this is just to ease the initial move.

<comment><USER31> They are making some space for (controlled) breaking changes. It also sends a message that Perl has a clear path going forward. I'll consider it for my next projects, especially the automation ones.

</comment></comment><comment><USER32> Great. Perl is not my favorite language, but the things its good at and the body of nifty code out there deserve more recognition than they get. Hopefully this will remove some of the discouragements to curiosity that have kept people from looking harder at perl to see if it fits their problems or their mind better than other tools.

</comment><comment><USER33> I write perl professionally as of June 2020 (and I have been writing software in Perl since 1999). Never felt the need to use Python, or any other language for anything I do.

People who use my (mostly) Perl based software on AWS and GCP Marketplaces today are somewhat surprised and/or even taken aback when they find out it is written in Perl. So, I try not to mention that.

</comment><comment><USER34> There used to be a big Python/Perl debate. I'm not sure I could have predicted how well that would turn out for Python, and how poorly for Perl. Readability and ease of use matters?

<comment><USER35> I think it was really Perl 6 that killed it. Perl had a significant lead over Python, and the Perl 6 announcement just sucked the life out of it.

<comment><USER24> It wasn't the language, it was Numpy. Everything that is built on top of Numpy is what made Python so popular.

And I guess Perl also never had its Django (or Rails).

<comment><USER36> > And I guess Perl also never had its Django (or Rails).

It's got two of them - Catalyst (older still works fine) and Mojo - newer and shinier.

I think python is a better fit for mathematical work. I like to say that python helps you think more like the computer does, and that perl helps the computer think more like you.

<comment><USER37> Catalyst was no match for Rails. Mojolicious could have been had Miyagawa's PSGI/Plack appeared on the scene half a decade earlier.

<comment><USER36> rails as far as I understand is opinionated and optimised for CRUD / database type applications. Catalyst is much more agnostic about the model you use. It provides the flexibility and a way of structuring the code and providing debug tooling that makes structuring a decent size app well reasonably easy to do.

<comment><USER37> Catalyst was painful to work with in my experience. Just getting it setup was an achievement. Subroutine signatures as routes is an ugly hack.

<comment><USER36> I like catalyst,s dispatcher. And some of the pain of installing catalyst in the early days resulted in huge improvements to the change toolchain.

<comment><USER37> I honestly think the Perl community's attachment to Catalyst contributed to Perl5's demise. Mojolicious was a much better bet for the future of Perl.

<comment><USER36> I've only done a little bit of mojolicious, but it's quite nice. The Mojo::UserAgent / Mojo::Dom tools are certainly great for writing web scrapers.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER38> I worked on Perl for a while, liked it. Back in 2008/9, the only option for Perl on Windows was Activestate Perl, whose community version was missing lot of features that would have made it much less painful(I am thinking of PPM particularly). That was one of the biggest gripes I had with Perl. We moved everything to Python as soon as we could get comfortable with it and haven't looked back since.

Regarding Perl's one liners, I feel they are what makes Perl very useful, but my preference is AWK over Perl for that.

<comment><USER39> I actually found ActiveState and ppm to be fairly useful when I was doing cross system Perl around the same time. You could get the same ActiveState versions for Linux and Windows and have a more consistent environment. In the few cases ppm didn't have what I needed, I would just use a CPAN client. Pretty sure I even got the CPAN client compiling some libs for windows (which took a bit of work, but wasn't impossible).

I even used that setup to package a couple Perl scripts with all their modules into PAR archive executables, circa 2011 I think.

> Regarding Perl's one liners, I feel they are what makes Perl very useful, > but my preference is AWK over Perl for that.

I love the ability to pull in a CPAN module or two to really kick up a one- liner a notch without making it too long. Also, I like creating an alias to perl that loads up a few useful libs and the main project lib and putting it in the project path so I can use a one liner like a REPL and run small queries, reports, or even do complex DB queries/updates with it using DBIx::Class and all the helper methods I've created for this project's schema.

</comment></comment><comment><USER40> According to the Modern Perl author, Five things Perl (Still) Gets Right:

* Compatibility

* Quality

* Usability

* Scalability

* Availability

[https://pragprog.com/titles/swperl/](https://pragprog.com/titles/swperl/)

<comment><USER41> Mostly the last one. It's included by default with most linuxes and cygwin. So even if your boss hates you and doesn't let you install anything you can still write scripts.

</comment></comment><comment><USER42> Are they still renaming Perl 6? I think it is a tad confusing to have 5 and 7 being so similar, and the 6 in between so radically different. I can't be the only one.

<comment><USER43> Perl 6 was renamed to Raku in October 2019.

<comment><USER42> Ah, I am glad the name change happened. I got side tracked before it came to a conclusion. I'm guessing if it didn't happen then, it surely would have to be changed now because of this new version, which looks like far less of a fork in the road.

I know some people aren't fans of Perl5, but it's what I learned and I wasn't all that excited to have to toss everything I knew (and my reference books) just because of a new version number. If Perl6 turns out to be complementary as people were saying/hoping, maybe Perl7 is where we get to see the interplay.

<comment><USER9> Perl 6 has been renamed to Raku ([https://raku.org](https://raku.org) using the #rakulang tag on social media). You can run Perl inside of it if you want to, with the Inline::Perl5 module. Check out the Rakudo Weekly News [https://rakudoweekly.blog](https://rakudoweekly.blog) if you want to stay up- to-date!

<comment><USER42> I'm surprised to see .pm6 extension still being used, at least on the rakudo documentation page. Do those contain Raku code, or Perl?

<comment><USER9> These would contain Raku code. But as with Perl, the core developers value backward compatibility much. Since many versions of Raku in use do _not_ know of the new .rakumod extension yet, the old extension is used for many modules still.

This is probably going to change in the next language revision of Raku. See [https://github.com/Raku/problem- solving/blob/master/solution...](https://github.com/Raku/problem- solving/blob/master/solutions/language/Path-to-Raku.md#extensions) for the nitty gritty.

</comment></comment></comment></comment></comment></comment><comment><USER17> Just to be clear to everyone: this doesn't break anything. If you continue to use Perl version 5, you're fine. If you want to upgrade your major version of Perl, then of course you need to know what that means.

<comment><USER44> To clarify this: if v5.32 can run your code, you should be safe. There have been various small changes in Perl 5 that might not handle something you wrote in 1995.

</comment></comment><comment><USER45> This is possibly a stupid comment, but I'd love a modern language whose expected lifetime is 100 years. A language whose specification details how it can be run for 100 years on changing hardware + operating systems, and is built with the least amount of, and easiest to perform, maintenance in mind.

Those languages kind of exist, but not expressly written as such. C will outlive us all.

</comment><comment><USER46> You guys are just now getting to Perl 7? I'm already on Perl 11. [http://perl11.org/](http://perl11.org/)

<comment><USER9> The Perl 11 initiative was started by some individuals in the Perl community, but it never gained much traction outside of the group around the ones that started it. It has been dormant for at least 8 years now.

</comment></comment><comment><USER47> Developers in their forties wrote Perl. Developers in their thirties replaced Perl. Developers in their twenties say "What's Perl?"

<comment><USER37> Yes and developers in their 50s retired in their mid-30s after making fortunes writing Perl.

<comment><USER48> I wish :-)

</comment></comment></comment><comment><USER49> I'm trying to work this out but not having much luck - Perl 6 was a "lets make a bunch of breaking changes and modernize Perl a bit", and now that's branched off as a new language called Raku.

Now there's Perl 7, which is sort of the same idea as Perl 6 was, but less radical with the changes? Are the same people working on both? Is Larry involved with both?

<comment><USER50> I believe it's not radical at all compared to the Perl 6 idea. It's basically "strict Perl 5" if I'm reading it right.

If Larry had said from the start "Let's make a new language and call it Raku" we would have had Perl 6 long ago, it would have been called Perl Enterprise Edition in the business world, and you'd never have heard of Python or PHP because everyone would be using Perl. Oh well, better late than never.

</comment></comment><comment><USER51> I still use Perl every now and again for powerful one-liners and I'm really glad it's around. Here is a bash function I use which takes args and merges and deduplicates PATH-like expressions:

      merge-args ()
      {
        perl -e 'print join ":", grep {!$h{$_}++} split ":", join ":", @ARGV' "$@"
      }

And I use as follows:

      export PATH="$(merge-args "${SCRIPT_DIR}"/clang-tidy-ex /usr/local/opt/llvm/bin "${INSTALL_DIR}"/{,samples/}bin "${PATH}")"

      ASAN_OPTIONS="$(merge-args "${ASAN_OPTIONS}" detect_leaks=1 check_initialization_order=1 detect_stack_use_after_return=1 strict_init_order=1 strict_string_checks=1 detect_odr_violation=0)"

I know there are other ways of doing this in other languages and even in bash itself, but to me this is simple and elegant.

<comment><USER52> A pure bash alternative for comparison.

        merge-args() {
            local res
            for i; do
                case ":${res}:" in
                    *:"$i":*)
                        ;;
                    *)
                        res=${res+$res:}$i
                esac
            done
            echo $res
        }

<comment><USER51> That is pretty neat, I did not know that 'for i' on it's own could iterate the args like that.

</comment></comment></comment><comment><USER53> I had hope there would be a merging (with some compatibility layers and wrapper binaries) allowing to use Raku the same way Perl 5 was used (should not have been _that_ hard, just adding familiar options and special variables)... Now I'm seeing this goes in a total different direction.

<comment><USER9> Perhaps. Meanwhile, the most recent release of the Inline::Perl5 module of Raku allows one to have code blocks written in Perl inside Raku code, and vice-versa. And of course be able to use any CPAN module from Raku: [https://modules.raku.org/dist/Inline::Perl5:cpan:NINE](https://modules.raku.org/dist/Inline::Perl5:cpan:NINE)

<comment><USER53> Nice! I didn't know. But it still does not bring back the classic usage in Perl 5 style, that made intensive use of runtime options as shorthands for looping on all lines of a file etc.

</comment></comment></comment><comment><USER54> To be on topic:

Perl7 is basically the idea to modernize saner settings by default. And breaking backcompat where it hurts. But it's far off a modern perl, like cperl is. They failed to fix the worst historical design mistakes. The hashes, the OO, types, @_, attrs before signatures (which was a major breaking change, but they excused themselves by claiming it was experimental), and many more.

[https://github.com/perl11/cperl/issues/414](https://github.com/perl11/cperl/issues/414)

Instead they are breaking indirect method calls. Thanksfully this will be not POSIX, so nobody will use it.

</comment><comment><USER55> This article touches on something that I really enjoyed about (the early days) of Perl 5, and I think it may body well for the future of the language.

You could write Perl 5 like it was just a better Perl 4. All of the craziness with modules and references was hidden to you if you wanted to write a Perl 4-esque script that needed to talk to a database or do something else that you could find a module in for in CPAN.

The people would _wrote_ those modules, God help them, I don't know how they managed to write the executable line noise that was in the source, but I didn't care. I could get my job done with a few simple `use` statements.

</comment><comment><USER56> This is great news! I was really excited about Perl 6, until I realized it was a different language, and it never quite jelled into a usable thing. So I kept using Perl 5. I write mostly modern Perl code, so this is exactly what I wanted.

I learned Perl back in the late 90's when it was the best way to do web programming. As a C programmer, it was a breath of fresh air. It was a higher- level C for me and I used it for prototyping all kinds of things before writing the production level C code. Nowadays, I still use it for system maintenance and prototyping. It's a great language and very powerful tool.

<comment><USER9> No idea when it was the last time you tried jelling. But Raku is very much a usable thing nowadays and is used in production: [https://raku.org](https://raku.org)

<comment><USER56> That's good to know. I will definitely check it out. Thanks!

</comment></comment></comment><comment><USER57> What project, if you were starting now from the scratch, would you use Perl for?

<comment><USER58> Any project that runs on a computer (not a microcontroller) that doesn't need a hardware accelerated multimedia. But even if the later you can always use sdl2.

My last three perl projects (not counting throwaway minor scripts): The control interface of a galvanic vestibular stimulator for VR motion sickness. A GUI for doing the required quirky edits to text files for text to speech smoothness. A comment system for a static website.

</comment></comment><comment><USER59> The proposed defaults are a good idea, and I hope some or most of 5.32 long standing experimental features become core features (or just go away entirely).

But I'm afraid that the badly needed core C code refactoring and restructuring is being left out, and that will make it very hard to introduce new features into the language.

I also had this secret hope that Perl 7 would be a tidier, simplified Perl 5 with little or no relation to Perl 6. Less confusing syntax would go in sync with the refactoring of the core to create a smaller language that could perform better and be easier for beginners to learn.

<comment><USER60> > I also had this secret hope that Perl 7 would be a tidier, simplified Perl 5 > with little or no relation to Perl 6.

That's what the article says.

> could perform better

Perl's performance is not an issue.

</comment></comment><comment><USER61> I've had to write some Perl in my latest project. Coming back to a language 20 years later at 37 years old was very interesting. I'm not a fan of the language but I can see why people like it.

The largest issue I've had is that even though the ecosystem gives you the ability to write code resembling best practices, I don't see a lot of Perl programmers that do it. Coming onto a project it didn't make sense to catch a whole team up on 20 years of best practices. So I went about writing code that would never be accepted on most of my other teams.

</comment><comment><USER62> Perl 6 with parrot VM was expecting release in 2004, we had some portion of our code in perl. other portions were in php4. chose ruby due to rails announcement in 2004.

will wait for actual release will try on some pet project

<comment><USER9> Perl 6 actually got released in December 2015. Meanwhile it got renamed to Raku ([https://raku.org](https://raku.org) using the #rakulang tag on social media). You don't have to wait anymore to be able to use it on a pet, or even a business project. Check out the Rakudo Weekly News if you want to stay up- to-date: [https://rakudoweekly.blog](https://rakudoweekly.blog)

</comment></comment><comment><USER63> Maybe someone here is the right person interested in this: I've been working on making Perl more suitable for functional programming[1]. This project still needs a lot of manpower to become something good. I need people to work with me on this, I won't continue alone. Please give me feedback about where I should be going with it, or tell me if you're interested in joining the effort.

[1] [https://metacpan.org/pod/FunctionalPerl](https://metacpan.org/pod/FunctionalPerl)

</comment><comment><USER64> I'm sorry if this offends. But a complete laypersons* perspective from someone who hasn't been keeping up on the current perl ecosystem is this: perl6 failed to the degree that perl 5 became perl 7, while all the perl programmers switched to ruby or python. Am I wrong?

*ok, not completely layperson, I used perl a lot a decade ago an have spent a week playing with raku at one point, but nothing in my professional life even has a slight smell of perl anymore, which is strange seeing as 90% of our company codebase was perl 15 years ago.

<comment><USER9> Perl 6 / Raku _did_ achieve its goal of a programming language that kept all the good parts of Perl, and remove it warts, making it ready to become the 100 year programming language.

In my opinion, the failure is in the timing of the process, and keeping the Perl community involved in the process.

</comment></comment><comment><USER65> Wow, I haven't written any perl since

 _checks_

5.27 pm today.

</comment><comment><USER66> Thus the embarrassment of Perl 6 is erased from history.

<comment><USER9> Perl 6 may be erased. But the Raku Programming Language ([https://raku.org](https://raku.org), using the #rakulang tag on social media) rose from its ashes.

</comment></comment><comment><USER67> Perl 5 was great. Written so many things in it. Looking forward to 7. Maybe time to start doing new things in perl?

</comment><comment><USER68> Why does this happen so often to certain language version numbers? ECMAScript 4, PHP 6, and now Perl 6.

<comment><USER69> Second system syndrome

</comment></comment><comment><USER70> Perl is the swiss army knife of the shell. Works the same everywhere, it has always been reliable and superuseful for simple to medium scripts. It's the glue that keeps a lot of stuff together, and I'm happy it got back to its tracks after the v6 faux pas.

</comment><comment><USER71> > > use utf8;

> there's still much to be done to make Unicode the default

Why's that? If that's something someone with zero Perl experience can easily understand. Isn't this only about the source code? Or does this mean all strings are unicode?

<comment><USER72> This[1] explains it. Essentially, to support unicode probably, you have to do extra work in your own code. (How do you handle invalid unicode? Should regex character classes match the unicode versions, or just the ascii versions? etc.) Additionally, certain builtin functions don't already support unicode, and modifying them to do that would be a breaking change. For more info, see the py2->py3 unicode change, and how much of a mess that caused.

1\. [https://stackoverflow.com/questions/6162484#6163129](https://stackoverflow.com/questions/6162484#6163129)

</comment></comment><comment><USER73> People just keep wasting their precious lives on archaic stuff that has no future. Perl is dead. If these smart minds want to contribute to humanity, they should abandon this sunken ship and move to something more meaningful.

<comment><USER74> > Perl is dead.

Seems like DuckDuckGo didn't get the memo.

</comment></comment><comment><USER75> Perl5 was the first language in which I actually did some substantial projects. It was also heavily used in scientific computing (esp. genetics) until python came along.

</comment><comment><USER76> Perl readability is rivaled only by c++ template code!

</comment><comment><USER77> What is there to gain in calling it Perl 7? It seems needlessly disruptive, rather than just calling it 5.34 or whatever is next.

<comment><USER78> It's reclaiming the Perl name since Perl 6 has abandoned its connection to Perl and is claiming to be a completely separate unconnected language.

This is the logical conclusion to this divergence and will mean that going forward people wont think Perl 6 is the newest version of Perl. That problem would still exist if you leave Perl at 5.35 since search engines are still happily returning pages for Perl 6 even though it's no longer a thing.

</comment></comment><comment><USER79> Need a comprehensive, up-to-date, yet brief, status of what happened to Perl 6 and where it stands in today's s/w tech.

<comment><USER80> Perl 6 is basically a totally different language than any other Perl, and it took a very long time to go from announcement (2000) to release (2015). It was renamed to Raku last year.

<comment><USER37> String parsing - Perl5's forte - is still dog slow with Perl6/Raku and year after year we hear that will change in the future. Don't hold your breath.

<comment><USER23> Raku's big strengths lie, IMO, in the command line scripting capabilities (the MAIN function), parsing with grammars and powerful new regex syntax, and as a glue language. It's relatively easy to bind to external libraries and work with them.

Look at how easily raku binds to a python charting module in this article: [https://www.perl.com/article/plotting-with- perl-6/](https://www.perl.com/article/plotting-with-perl-6/)

<comment><USER37> But if it's slow at really basic stuff users will ignore it, surely?

<comment><USER9> Slow is in the eye of the beholder. Sure, for some applications, Perl blows Raku out of the water. Add in some Moose, and the situation is not so different. YMMV.

<comment><USER37> On my 4-core i7 Macbook Pro parsing a 20Mb log file with a regex takes 9.4 times longer with Raku than Perl5. That's unacceptable. Adding Moose to Perl5 reduces the differential to 7.1 which is still huge.

<comment><USER9> Do you have a gist of your code and a representative sample of the log file you're parsing?

<comment><USER37> It's a one-liner:

        for 'logs1.txt'.IO.lines -> $_ { .say if $_ ~~ /<<\w ** 15>>/; }

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER81> Glad to hear it. Perl 6 was some kind of twisted complexity pornography.

</comment><comment><USER82> This is fantastic news! I'm glad perl 5 is evolving again.

</comment><comment><USER83> In some companies, they have huge projects written in Perl

</comment><comment><USER84> Reasonable since "perl6" issue is solved. Everyone may move forward.

</comment><comment><USER85> Perl is alive!

</comment><comment><USER86> After a million years, it is finally out!

</comment><comment><USER87> Finally!

</comment><comment><USER88> tl;dr - Perl 7.0 is going to be v5.32 but with different, saner, more modern defaults.

Perl was great 20 years ago for basic scripts. Where is it still used today who hasn't transitioned to Python/etc?

<comment><USER89> Perl continues to be great for basic scripts. Why change and throw away 20 years of experience?

The only thing I've noticed that's lacking is decent protobuf support.

<comment><USER90> Some people would consider that a good thing.

<comment><USER89> I assume you're saying it's a good thing there's no reasonable protobuf support? The problem is I have access to data I'd like to manipulate, but it's in protobuf, so my options are:

a) somehow convince Google to let me access Nest data through a proper API

b) get a different thermostat

c) magically get the perl protobuf libraries to actually work

d) write just enough protobuf parsing (and possibly generating) to read my data, and curse

e) use another language to parse the data (ugh)

(I guess you could like to throw out 20 years of experience)

</comment></comment></comment></comment><comment><USER91> This is just bad maintenance. Just pick all the stuff people are complaining about and fix it!

1\. Improve threads

2\. Improve C API support

3\. Give local::lib, cpanm by default ... multiple perl versions by default

4\. Give direct support for coroutines / async await

5\. Mark experimental features as non-experimental (attributes, signatures)

6\. Pick an OO system, package system

7\. Make switch cool again

8\. Get more core modules or remove some. Give more visibility to cool perl modules. like PDL or something.

9\. Improve GUI toolkit, Web Deployment and Web Assembly support

10\. Improve look and feel of community sites

Heck break some backwards compatibility with Perl4, get rid of format.

<comment><USER92> One more: add a proper exception handling setup.

<comment><USER91> Yeah that too! People keep saying perl is a bad language or something and the other languages can't even get implementing closures right.

I've always liked the references syntax, probably the most complained about feature. Its just pointer thinking. You could probably collapse `$array[$x]->{"foo"}->[0]` to `$array[$x]{"foo"}[0]` and save some keystrokes.

<comment><USER93> > probably collapse $array[$x]->{foo}->[0] to $array[$x]{foo}[0] ...

Yup, one's been able to collapse exactly like that for more than twenty years.

[https://metacpan.org/source/LWALL/perl5.002b3/pod/perlref.po...](https://metacpan.org/source/LWALL/perl5.002b3/pod/perlref.pod#L289)

That's from 5.002, from last century, and it wasn't introduced on 5.002.

Beginning from v5.20, one's also been able to use the postfix dereference syntax, turning:

say join "\t", @{ $foo->{bar}[0]{quux} }

into:

say join "\t", $foo->{bar}[0]{quux}->@*;

Whether that's better or worse, it's debatable.

<comment><USER91> You're right! I always preferred the explicit arrow because it reminded me of C. Dammit now I want to write perl. I miss autovivification so much. Most people hate the pointer syntax and call it unreadable. I think there should be a perl tricks page that lists all these tricks.

</comment></comment></comment></comment></comment><comment><USER94> sub foolOnce() { return raku(); }

sub foolTwice() { return perl5(); }

<comment><USER37> You left-out unrolling @ :).

</comment></comment><comment><USER95> Amazing. I literally first installed this on my laptop over 10 years ago. (Using Parrot)

<comment><USER9> If it was using Parrot, you probably installed Perl 6 (at the time, now known as Raku).

<comment><USER95> Ah you're right, it was 6. Amazing to see Perl still going after all this time!

</comment></comment></comment><comment><USER96> This feels like a last ditch attempt to save a dying language. ([https://i.imgflip.com/4676mf.jpg](https://i.imgflip.com/4676mf.jpg)) I wonder what exactly does Perl bring to the table as a language, why would one consider choosing it over other languages.

<comment><USER97> Regular expressions as a first class language feature.

<comment><USER37> Ruby also has this.

<comment><USER98> Ruby really is Perl done right. I can't really see any argument for Perl over Ruby as a language.

<comment><USER99> use strict. In Perl you can prevent something like the following from compiling. You can't with Ruby (unless they've _finally_ addressed that).

       $foo = 2;
       if (some_test()) {
          $fooo = 3;
       }

<comment><USER37> Shouldn't that be:

        my $foo = 2;

    ?

<comment><USER99> I was leaving the declaration implicit.</comment></comment></comment></comment></comment></comment></comment>