Hacker Newsnew | past | comments | ask | show | jobs | submit | bobbylarrybobby's favoriteslogin

It is absolutely the greatest golden age in programming ever - all these infinitely wealthy companies spending bajillions competing on who can make the best programming companion.

Apart from the apologising. It's silly when the AI apologises with ever more sincere apologies. There should be no apologies from AIs.


String used to be StrBuf first. The rename to String was intentional because String was the more commonly known name in other languages.

https://rust-lang.github.io/rfcs/0060-rename-strbuf.html


I think a lot of this is just because the USA is big. You just won't believe how vastly, hugely, mind-bogglingly big it is. I mean, you may think it's a long way down the road to the chemist's, but that's just peanuts to the USA:)

Plus, this is a country made up of a little piece of every other country in the world. "American identity" is an ex post facto rationalization. Not to mention that politically we often operate like 50 small-to-medium sized countries. And there's less of a push to homogenize the country since one of our political parties fights against federalization.

All that adds up to a country with a whole lot of variation. Describing what Americans are like is pretty useless. We're like everything.


I don't think anything will save you if you mess up your block structure. You can mess up your block structure with indents, or you can mess it up with braces.

Personally I think it's easier to spot mess-ups with indents. Some people think braces are easier. I won't fight with those people today :-).

But I don't think randomly cut&pasting code anywhere is a good idea. If you do paste code, you really should understand what the code is doing first.


This is absolutely true. If I paste some c++ into my IDE with unbalanced braces, it can throw the whole file off.

The real key is: treat excess indentation and nesting as a code smell. Python should aim for 5 tabs deep max, imho. Anything else should be refactored into functions.


I was interviewed by the Wall Street Journal around 2000±a year or so about Wingdings when there was a moral panic about what happened if you typed NYC in the wingdings font (I was editing a typography magazine at the time which is how the reporter found me). I patiently explained that the arrangement of characters in dingbat fonts is generally arbitrary with patterns generally dictated by character code more than anything else and that as someone who knew Chuck Bigelow and Kris Holmes, I could vouch that they were not, in fact, anti-semites.

> Not that I'm discounting data scientists (or the like) who use it as their primary environment.

Unfortunately it often ends up needing to be executed as a batch job or integrated into a pipeline, which then starts the fun job of extracting the code from the notebook piece by piece.

Jupyter having a plain text file format instead of json would make life so much easier, and vastly improve version control.


I really find it a bit sad the lengths all the Python devs will go to just to compensate for the entrenched core deficiencies in their platform, without actually uprooting said deficiencies once and for all.

What's stopping the wider community to finally adopt any sort of namespacing / switches / gemsets / per-project environments? And I mean automatic; you `cd` into the directory and it's handled for you, similar to the the functionality of the `direnv` and `asdf` generic tools, and Elixir mix's / Rust cargo's / Ruby RVM's ways of isolating apps and their dependencies.

Why is Python lagging behind so many other ecosystems? Why is it so persistent in not fixing this? It's obvious it's not going anywhere and a lot of people are using it. Why not invest in making it as ergonomic as possible?

And don't give me the "backwards compatibility" thing now. Everyone I know that uses Python also uses several such tools on top of the vanilla experience -- so I'd argue the vanilla experience is mostly a theoretical construct for years now and can be almost safely assumed to not exist.

(And I get sadder engaging with HN these days. If you don't think I am right, engage in an argument. This downvote-and-navigate-away practice that's been creeping up from Reddit to HN isn't making this place any favours and it starts to remove the community aspect for me with time.)


Every time I see Adobe logo somewhere I just cringe a little bit. From the time that you had to have Acrobat Reader installed because most of pdfs created with Acrobat (writer) weren't really compatible with other readers, or that time that everything interactive on the web was in Flash (even our governmental websites for example Social Insurance Institution dropped Flash few days ago). My SO recently bought Adobe Lightroom and low and behold - you cannot install it on case sensitive filesystem (in 2020) and help page says: "well just install it on case insensitive filesystem". I'm quite surprised that they allow file names longer than eight characters, dot and three for file type...

Take action: buy a Mac, and return it. If they want to know why, tell them¹.

Repeat for every new model.

¹ They will have to give you a full refund: it's your right as a consumer. Note that this may not work for companies.


> I had even tried emailing the company who provided the software asking how you were supposed to form these API calls, but they wouldn't respond to my email because I didn't have a subscription to the service.

We talk about the ethical responsibility (and common-sense practicality) of companies cooperating with white-hats who have found vulnerabilities in their systems.

But how does HN feel about this policy as it applies to third-party ISVs contacted for knowledge relevant to a vulnerability exploit?

Should there ideally be a framework in place where the company running the Bug Bounty program puts white-hats in contact with its upstream ISVs’ engineers; or perhaps even treats the white-hat as an employee in terms of eligibility to receive support from the ISV on the Bug Bounty hoster’s tab?

Or, to flip that around, maybe the ISVs themselves should be willing to help the white-hat for ethical/practical reasons as well (for the exploit might, in the end, be as much their problem as it is their customer’s.) But in that case, should there be a some sort of best-practice approach to authenticating that J. Random Hacker who emailed a question to you, is actually a white-hat—e.g. by validating that they’re registered with the bug-bounty program of your client? Or does it not even matter, and you should just answer even a black-hat hacker’s questions about your APIs, since “vulnerability research is vulnerability research and has a long-term result of hardening the ecosystem either way”, and then let the cards fall where they may?


If we are taking about Stripe, we should mention the silent competitor barely anyone talks or knows about outside the payments industry: Adyen.

Stripe’s current, (private) valuation is $36B. Developers love them. Adyen’s current, public valuation is $43B (they IPO’d amongst little press coverage). Most developers don’t know about them.

So what is the difference? Market strategy. Adyen only goes after large businesses and has something many others, including Stripe cannot compete with efficiently: (far) lower pricing, higher market coverage.

The developer experience for Adyen is decent - no complaints, perhaps a bit less “magical”. They will definitely have a fraction of the customers, but those customers are huge. They get and seek little to no publicity compared to Stripe, yet have built a similarly sized business from the Amsterdam, the Netherlands, which is remarkable.

It’s a completely different market strategy, and company strategy. Read the Adyen values to see how different the two companies are[1] - Adyen putting “merchants” first, with a mention of support, while Stripe prioritizing developers and small businesses. And company culture could not be more different either - saying this as someone who knows both Adyen and Stripe employees. Both are companies to admire, and show that there is no “one” good way to build immense value.

It will be fascinating to see what happens as these two companies expand to compete with each other (meaning Adyen starting to go after small businesses, and Stripe after the largest merchants, with a differentiated pricing model).

[1] https://www.adyen.com/about


Seems that in fact even though scripts aren't signed, IF YOU DONT have devTooling enabled for a given terminal, scripts are hashed and checked against bad known digests.

not a big deal, assuming no data is kept.

Also I wonder what it looks like if a script is deemed bad...


I think there's no way to understand quantum computing without first understanding some linear algebra, specifically tensor products. How ten 2-dimensional spaces give rise to a 1024-dimensional space, how the Kronecker product of three 2x2 matrices is an 8x8 matrix, and so on. If you're comfortable with that, here's a simple and precise explanation of quantum computing:

1) The state of an n-qubit system is a 2^n dimensional vector of length 1. You can assume that all coordinates are real numbers, because going to complex numbers doesn't give more computational power.

2) You can initialize the vector by taking an n-bit string, interpreting it as a number k, and setting the k'th coordinate of the vector to 1 and the rest to 0.

3) You cannot read from the vector, but exactly once (destroying the vector in the process) you can use it to obtain an n-bit string. For all k, the probability of getting a string that encodes k is the square of the k'th coordinate of the vector. Since the vector has length 1, all probabilities sum to 1.

4) Between the write and the read, you can apply certain orthogonal matrices to the vector. Namely, if we interpret the 2^n dimensional space as a tensor product of n 2-dimensional spaces, then we'll count as an O(1) operation any orthogonal matrix that acts nontrivially on only O(1) of those spaces, and identity on the rest. (This is analogous to classical operations that act nontrivially on only a few bits, and identity on the rest.)

The computational power comes from the huge size of matrices described in (4). For example, if a matrix acts nontrivially on one space in the tensor product and as identity on nine others, then mathematically it's a 1024x1024 matrix consisting of 512 identical 2x2 blocks - but physically it's a simple device acting on one qubit in constant time and not even touching the other nine.


I wrote and use daily http://onemodel.org (AGPL, uses postgres), for many reasons listed there :) . One way to think of its current state is a text-mode, easy-to-learn (i hope) infinite mind map of things, where I store and can query effectively everything: calendar, reminders, quasi-anki-like knowledge review, journal, automatic activity log, notes on subjects, very efficiently for the user. (It also stores documents, but that is not very smooth compared to other document systems, nor is browser integration smooth at all.)

Edit: It also has a very basic security model (private, public, unspecified), and with that in mind, can export trees of notes as html or as outline documents (text), with or w/o indentation & numbering, which I've found very useful. And anything can be in as many places in the tree as is helpful. The export to simple html, I use to generate my 2 web sites.

(I plan to move it to Rust, and maybe sqlite, eventually, as well as add features like anki, internal code attached to entity classes for cheap internal customization/automation, etc, but have been slow lately.)

(Edit: it is currently only self-hosted by each user. Have considered doing hosting for other users, and might some day.)


CollegeHumor did not shut down, from the article itself:

“In words that I’m sure are as surreal to read as they are to type, I will soon become the new majority owner of CH Media,” said Reich, a longtime executive at CollegeHumor. “Of course, I can’t keep it going like you’re used to. While we were on the way to becoming profitable, we were nonetheless losing money — and I myself have no money to be able to lose.”

Dropout, its streaming service, will continue for at least the next six months while it churns out content already slated for release, Reich said. The future of CollegeHumor itself, and other humor sites run by the company, are less certain.

“In these six months, I hope to be able to save Dropout, CollegeHumor, Drawfee, Dorkly, and many of our shows,” Reich said. “Some will need to take on bold new creative directions in order to survive.”

The CH Media staff contracted from more than 100 to between five and 10 employees, according to Bloomberg News.


Specific bug gripes aside: I see this editor as emblematic of Slack's broader shift away from what I think it should be (primarily synchronous chat; irc with a friendlier ui and integrated bouncer features) towards what many people seem to want to use it as (async-heavy pseudo-replacement for email where I get to sit and watch the "...is typing" indicator flicker while somebody writes an essay at me).

My rule of thumb generally is: if I need significant rich text formatting in a message I'm writing, it should probably just be an email.

I feel like this increasing hybridization of sync/async comms is largely counterproductive and especially harmful to work-life balance, so it's unfortunate that companies like Slack are apparently unable to focus on core competencies and instead must shoot for disruptive growth via poorly-executed junk like this editor.


> ...So we don't see those pictures anymore.

I think you’re mistaken.

The people who would take stunning photographs with any equipment available to them, still do so.

It’s just that there are nearly infinitely more photographs floating around because the tools have been democratized, and thus it’s harder to find the spectacular ones.


I'm gonna be publicly ridiculed for this one and I'm good with that.

I've been trying to get the show desktop gesture on my mac right for years. You know, the one that "windows-D" was doing so loyaly for ages.

My habit is to arbitrarily swipe as many fingers as I can find available from center of trackpad outwards. It used to take me ~10 trials to get it right.

And now, enlightened by this random thread, I suddenly figured out I actually need to swipe 3 fingers upwards and one downwards simultaneously. This is the greatest Epiphany HN had given me since https://news.ycombinator.com/item?id=13651148


> 1. Do a three finger unpinch gesture, and it will paste at the cursor.

Crazy! Apparently there's a whole set of commands accessible this way, most notably three finger swipe left = undo!!! This is a significant improvement. They could've told me while I was painstakingly shake - confirm undo - shake - confirm undo - shake - confirm undo ...... ing!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: