skysight-inc/HackerNews huggingface dataset:
I learnt and used TLA+ while working at msft, and I'm still using it today:

- anytime I have some protocol or state machine whose behaviour isn't obvious, I write a TLA+ spec.
- the process of writing it clarifies my understanding and leads to new insights. These insights directly inform the code and the tests.
- the model checker makes it very easy to check sophisticated properties of the algorithm.

I don't use it all the time, but it's a tool I'm very happy I invested in.
Gotcha, that makes sense. (I'm less familiar with dimension ordering in PyTorch)
As listed in the article under 'Overcoming challenges' we do replace code in Go and Vue where needed. I do believe Rails is still the most productive framework out there.

See https://docs.gitlab.com/ee/development/architecture.html#com... for more information on what parts are Go.
AWS, Python and Angular. Nothing else is needed. Go make your millions.
You can use the old JavaScript if you want to. All those fancy tools just compile down to the same old es5 you can write by hand if you're so inclined.
Simply untrue. Solar panels are cheap. We do some unsustainable things, for sure, but the idea that everyone has a choice between killing the Earth or living in medieval times and hoeing the mud like some Monty Python peasant is just the rankest sort of bullshit.

We do unsustainable things largely because the monetary incentives are to do so. We could easily have advanced, sustainable lifestyles.
I need to caution against using a Smalltalk dialect like Pharo to teach OOP.

The essential problem is that Smalltalk does OOP "right" and what one sees called OOP in the broader community generally does not have that same ideological purity. In addition Smalltalks are a deeply different vision of programming. I don't think I've ever shown a programmer a Smalltalk and had them go "Oh yeah this all makes sense." I have to preface it...

"This is a different vision of programming than you are used to, go ahead and run the executable."

"Um, it opened a desktop?"

"Yeah. So this is the program you are writing."

"What is?"

"This blank canvas."

"Oh, this is a text editor?"

"No, like, the program is running live right now."

"Well can I shut it down and edit it?"

"You edit it while it's still running. Here, go ahead and right click something..."

There's invariably some form of disbelief: surely we wouldn't have made this whole programming thing hard for no reason, so surely this approach to "everything is alive and you are mutating the ecosystem" is impossible for the simple reason that it is not ubiquitous.
That is a legitimate concern. Even if the person isn't new to programming and is coming from other C-like languages such as Java or C#, there's a good deal of precedence. Just like the "Don't Make Me Think" usability argument, we ought to stick with the conventions that people already know and are familiar with.
Questions from a startup to a market leader [Expedia]
Mr. Chew, told me that I would outgrow my juvenile sense of humor.

Aliens. You have interesting features on the other planets. Saturn has a humongous freaking hexagon on it, for crying out loud! https://en.wikipedia.org/wiki/Saturn%27s_hexagon They know we're inching our way towards spaceflight, so they've acted to delay our arrival by making Uranus as bland as possible.

(But seriously, it's never aliens. https://www.pbs.org/video/oumuamua-is-not-aliens-zjpppc/ )
The problem here you can only rely on stdlib when most of your users have runtimes with it. For the browser features, you may never live up to this.

Its worse to forever live with two implementations(native and polyfill) and as large bundles, double the troubleshooting effort and extra support.
Columbia SC has some nice walks. It does depend on the neighborhood and you have to contend with the car traffic but I would say I walk a lot. It is not like Montreal or Bergen for sure but im not so unhappy
If you’re in the business of developing enterprise apps (and that’s where the money for dev tools resides) then moving quickly without breaking things is critical in your formative years. Static typing goes a long way to facilitate that.

It’s by no means a panacea but it does eliminate an entire class of error and obviate a related class of unit testing.
You just quote "total break down in trust" caused by manager in the very polite letter you send.
Build better forms by not taking away affordances
This still doesn't work. Monetary savings aren't real goods. Retirement is funded from current production. If the labour force participation rate drops, then a greater percentage of current production is needed for retirement.

And corporate taxes are just taxes on people, in the end (the owners of the shares). If there are fewer people working and more people to support, things just get harder, absent large productivity increases or immigration of young workers.
Sure, here's a few, personal opinions:

- Some programmers don't like functional programming (I'm not one of them)

- Go has static typing and I find it really cuts away bugs

- Go is backed by giants and has the horse power to push forward regardless of "Github stars"

- Go is easy to compile and run on most/many platforms

- I find myself more able to understand third party code

As a web developer, would I use Go as opposed to Phoenix/Elixir? Yes, I am actually using it in production on a fairly big project [1]. I tried Phoenix and I found it "weird" for my liking. The authentication part of a web app was a real deal-braker for me = too complicated to implement (not bad, just too complicated).

I'm the type of guy that brainstorms (90% of my projects are always "close to completion" though) a lot of ideas and wants to go up and running really fast. I can't do that with Python/Elixir/Ruby without many tests written because I don't trust the code/myself all that much.

Where would I use Elixir/Phoenix:

- a chat/support app or anything that relies heavily on websockets

- real-time apps (related to first point)

- apps that rely heavily on distributed tasks

[1] https://typely.com
You should be able to run Linux on this laptop, once Apple drops support for the Mac OS version you're running. It's only with very recent Apple hardware that you encounter real problems with Linux. (Recent Linux distributions support touchpad gestures as well.)
Python SQLAlchemy/Alembic and Django has db/schema migrations.

.NET has db/schema migrations in Entity Framework.

Node/javascript has sequelize/umzug, node-db-migrate and others for db/schema migrations.

Migrations are pretty common now for ORMs, or any code first schemas, but are definitely a killer feature and needed with ORMs to see what is being changed/iterated on.
Fun fact: the Kronos group added an optional Vulkan extension to simplify the implementation DX11 transform feedback.

This was requested by the DXVK developers specifically because it's was the last piece required to completely support Witcher 3.

Mesa and Nvidia had drivers support on the day (or shortly after) the extension was published.
> The one revolutionary feature in those laptops which I don't see anywhere.

Apple patented it and refused to license the technology. Hopefully when the patent expires (2025?), we'll see more applications of it.

https://en.wikipedia.org/wiki/MagSafe#Third-party_products

https://patents.google.com/patent/US7311526B2/en
I can't find the quoted part in the article. Anyway, we met online a year after GitLab started, so by the time we met it was already decided to many it in Ruby.
Show HN: Finish – A Go lib for graceful server shutdown
I agree. It's ugly. I understand it's named globalThis to avoid collision with other libraries and breaking things, but my goodness.
I am going to generalize your statement: driving in Chicago is awful.

Ive consistently had it take an hour to move ten miles regardless of the day of week to visit family in Milwaukee. At least a third of the drive I could see the Sears tower in the rear view mirror. Amtrak/metra is far superior to car ownership. Uber for local travel and is quite frankly cheaper with less aggravation because I don't have to deal with it. apparently honking your horn and not using a blinker is standard. Also just generally driving like a complete asshole. And don't get me started on the taxis. That entire industry in Chicago should go out of business. And cyclists seem to vary. Some are very respectful and will quickly stop for a j walker and politely say they shouldn't do that. Others run red lights and get pissed when you call them out for riding on the sidewalk.

Some startup should come with a device that is required for Chicago drivers... every time you honk your horn it costs 5-50 dollars. What are you fucking honking for there is 25-100 cars ahead of you not moving.
Neat. Now I am impressed.
I suspect Apple's iPhone thinness requirements include "device is comfortable to hold and use in a thick case". The camera bump has gotten gradually larger partially because they can be a cut out section of such a case, without taking up additional thickness and making the cased device less comfortable to hold and use for long periods.

The most obvious subtraction to preserve device size and simplify internals to allow for other features was the headphone jack. Thus the "courage" remark - the teams (all the way up to the executives) were willing to have a device change that may people would be upset about because they felt it was the right tradeoff to make long-term.
> Ultimately, we think Pagedraw is the wrong product. We think you can get 90% of the benefits of Pagedraw by just using JSX better. Our findings on this will be controversial, as they go entirely against the current “best practices,” so we’ll save them for a later blog post.

There is certainly a grey area for tools that are too limiting for developers and require too much setup for designers to use out of the box.
Asking Google questions without context is confusing.

> Who invented Rust language

> Who invented Rust game

Would give better results.
Minimum wage here is $15/hour. If you make that you are below the poverty line. The poverty line here is $41,866/year. I work 6 days a week most weeks and make a bit above that and it's still a struggle sometimes affording bills and other expenses and I really don't live very extravagantly.

So unless you're giving that out...you will be living in abject poverty with a ubi.

I really think people who advocate for this have never been poor in their lives or spent time around poor people and have no concept of what it's really like to live with very little money.

Especially on hacker news. Though i'm guessing it's hard to see from the ivory out in silicon valley.

Then there's the fact that the way our economic system works, the value of currency and inflation is based on the amount of money in circulation. A ubi just makes all the money worth less.
Where are the NTFS EA used, if that's what you're writing about? I can't find anything except:

https://flatcap.org/linux-ntfs/ntfs/attributes/ea.html

"Used to implement the HPFS extended attribute under NTFS."

Is your complaint is that the tools that are used to make the image of the installation files of the Windows don't include that? I assume that $EA entries don't exist in the installation files of Windows, for which the DSIM tool is used (and it's surely not an universal backup tool).

And how do you read or write these? And what do you use them for? I was able to find only ZwSetEaFile and ZwQueryEaFile which are documented for kernel-mode drivers? Are there any plain user-level API's? https://attack.mitre.org/techniques/T1096/ I also find: "it may (be) worth noting that Windows does not contain any api that can be used to remove extended attributes."
For accountants, this describes their life during the tax busy season (Feb-Apr, and/or July-Sep, depending on their firm's client base).

12 hour days are expected at most firms. New hires can look forward to 14 hour days. Compliance sweatshops will expect 16 hour days, though are usually very generous with salary to compensate.
It's not exactly encouraging that the first author consults for Peak. The conflict of interest statement in the paper offers this deeply unpleasant comment:

"BS consults for Cambridge Cognition and Peak. We have technology-transferred the App to Cambridge Enterprise who intends to technology-transfer the App to the games company Peak so that it can become widely available for use on mobile devices. This has not occurred yet."

In short: we put up a free demo, but now we're giving all our code to the for-profit company our lead author happens to consult for. Also, they haven't bothered to actually release it outside their branded iOs-only app.
Node.js Error Handling Best Practices
Ontology Is Overrated: Categories, Links, and Tags (2005)
Who is paying 200,000 for college? That's crazy. I have 2 kids attending a private college and each one pays $2000 a semester. They both have academic scholarships - so their tuition is covered - but even if it wasn't, that is less than $20,000 over 4 years. You can get a good education without attending an ivy league university.
I really enjoy Gitlab's UI/UX, but I wish it were easy to manage a self-hosted Gitlab presence. The architecture diagrams[1] frankly read as supporting justification to go with the hosted solution.

[1] https://docs.gitlab.com/ee/development/architecture.html#com...
Migrations are rad! Django (the Python equivalent of Rails) has had built-in migrations for several years now: https://docs.djangoproject.com/en/2.1/topics/migrations/
Because it's better to not rely on anybody else, mostly.
Ask HN: I need to read/write data to a wiki from a JavaScript app
I need a cheap wiki hosted in could that anyone can edit, and I need to read/write data from it with a JS app.

What are my options?

I want to make this visualization dynamic with people curating actual metadata: https://uk.wikibudgets.org/w/united-kingdom-budget-2015
This really strangely sounds like an advertisement for Ruby on Rails. It doesn't even give any specific advantages of RoR.

> If you look at GitLab, it has an enormous amount of functionality. Software development is very complex and to help with that, we need a lot of functionality and Ruby on Rails is a way to do it.

You could say this about almost any framework.
> ... to help pay for some the policies

Not quite.
https://twitter.com/anatolium/status/1077225708659847168
But then I wouldn't know to set a reminder to see this live.
What of the puerile pedantry and the pedantic puerility?
I had no idea google allows arbitrary redirects through its own https://google.com domain. Why?
Hey mods, can we change this title to something clearer like "MongoDB Atlas vs AWS DocumentDB"?
I’ve utilized inline C quite a few times to replace sections of code. Specifically to do some of the server side computations for my applications:

e.g. https://hnprofile.com

The full system is built in rails and I query and generate information on a million or so accounts and tens of millions of comments. Haven’t really hit a bottleneck yet.
The reward mechanism in games is very different from real life. It is very immediate and accurate and that's why so many , especially men, enjoy doing it. It doesn't really help with anything else.
I wrote a small supervisord ripoff in go just after its launch, it was at the same time frustrating and enjoyable. I will have a week off in less than a month, do you think i should build a similar elixir app just to learn the language? Or do you have any idea of a better well known programm to build to "learn" the language in a week?
There is a simple solution to this problem: redistribute part or all of the carbon tax money. While it will likely not be possible to ensure that there is no loser among the poor (ie. the ones that buy the most carbon-intensive goods), it could make this number as low as possible.
Technically for a salaried "professional" job your not normally on hourly pay.
I used to hate Java, but years of experience later, I would gladly inherit a well maintained/architected and modern Java codebase over anything written in Python or Ruby (even a well maintained one)
> language patterns of Ruby but want better performance for concurrent processes

But then take on the disadvantages of acquiring talent and less adopted programming paradigms (e.g. functional programming)? Elixir/Phoenix is awesome, but it's not a panacea for everything.

Language/framework choices aren't done in a vacuum.
Looks interesting. Getting a weird error when installing it via Homebrew, though: "“Pharo6.1-64” is damaged and can’t be opened. You should move it to the Trash."

Anyone experience anything similar?
> the lack of generics

Earnest question: isn't Elixir dynamically typed? If so, how is Go's type system worse? You can always drop down to `interface{}` (the dynamic type) if you like, after all.

> And, while go’s channels are cool, they don’t seem nearly as powerful as elixirs actor model/OTP — at least for this example.

I haven't used Elixir, but I suspect this is true. Elixir/Erlang are probably the only two languages that probably have a better concurrency story than Go; however, there are other facets (tooling, deployment story, learning curve, etc) to consider in choosing a programming language, and I think Go is a really strong language on balance.
https://github.com/diesel-rs/diesel

This type checks all ORM operations, and type checks against the actual schema at compile time. It's pretty cool and made by one of the long-time developers of ActiveRecord.
Perhaps someone could just reverse engineer what the Windows driver does to get the values.

It could be a nice way to learn a tool like Binary Ninja or IDA (pro).

It's probably some DeviceIoControl call. Once you know the call 12-bit (I think?) ID from userland code, it should be relatively straightforward to follow the driver code to see where it ends up and what hardware registers it uses.

Or maybe it's just something through ACPI?
I do not like that last question at all. Only mail clients should have access to your messages. Yes this is the actual app asking for permission and not a phishing attack per se, but the app can suck it.
Seems odd to me that they would encourage allowing 3rd party sites to read all your email, but I guess this is where we're at right now
https://cdn.arstechnica.net/wp-content/uploads/2019/01/Scree...

The guy just used archive.org and posted a version with broken css as if it was a regular past screenshot of the site.
Three of the four problems in your list of cash-handling downsides are solved in some places through self-service checkouts where the machine automatically counts the cash and dispenses change, so a human doesn’t have to. Sometimes there is an actual human at the checkout, but when you wish to pay with cash, you are directed to put the money into a machine placed there, so that the cashier does not have to actually handle cash.

In recent months I have seen the latter system (human cashier + cash-handling machine) in a Madrid airport restaurant and a Romanian hypermarket.
Thanks for your answers!

From the second blog post I actually found https://github.com/tokio-rs/tokio/pull/660 which switched tokio from 1 reactor+worker threads to n reactors with work stealing.
Analog in python: https://docs.djangoproject.com/en/2.2/topics/migrations/
> moreover, you can bump into unsafe places!

Can you elaborate on this? Are there places that are unsafe because they're full of knife-wielding maniacs? Or unsafe because they're full of un-signposted holes in the ground? Or some other kind of unsafe?
The Privilege of Earning to Give (2015)
Threads Basics (2009)
Ask HN: Whom do you follow on Twitter to keep up with HPC topics?
Or reviews are written mostly by people who had a bad experience yelp or glassdoor - same thing. Look at a few profiles. They have nothing but negative reviews.
Having TypeScript support in the browser doesn't make sense as the idea behind TypeScript is to add a compilation step so that type errors can be caught at compilation time. eg. before the code runs.
I would have thought interesting weather depends on Coriolis which a sideways planet can't have.
Why must reviews be free?

Tech magazines used to do reviews (of gadgets), and they ain't free to read? at least, not the trustworthy ones.
> Nobody with options would take that deal.

There are more than enough researchers and research which have no options, but are still valuable for society. Let the others be done commercially, more public money for those that really need it.
This made me think of this documentary

https://www.rottentomatoes.com/m/the_world_before_your_feet
I just saw it in another thread today and am seeing it again here. It's pretty apropos for what I'm dealing with at the company I'm at right now too.
Hmm. this didn't render the newlines in my code, and markdown doesn't seem to be supported. bummer.

Really cool! It seems to be comparable and perhaps even faster than cython!

I happened to be in an Ipython shell and didn't see anyway to do this with nim, but you can probably get a good approximate of the speedup with nim in Ipython/Jupyter by doing a quick:

[1] %load_ext Cython

[2] %%cython
```
cpdef long cyfib(int n):
if n <= 2:
return 1
else:
return cyfib(n - 1) + cyfib(n - 2)
```

[3] start=time.time(); x = cyfib(47); end=time.time(); print(x); print(end-start)

2971215073
5.558561325073242

Nice choice of 47! I had to change the cython function's return time to long to prevent overflow. Something you don't need to do in nim
Honestly hadn't considered that they might be doing that as well.

Just the same, if the company is trying to bomb average salaries, then they're posting that they don't pay what I want and I'm avoiding them anyway. (and it sounds like a good thing if that's how they operate)

But good points. It's certainly something to be skeptical about, even if one doesn't want to go full tin-foil about it. ;)
Missile interception caught on snowboarder's camera in Golan Heights
If TS becomes the majority, it seems to me like the browser debuggers could start using types at run time to catch some interesting things that aren't so obvious when compiling the pieces. I.e. help the people who add the final touches to a site check that they have not messed it all up without the project writer needing to decide how many guards to compile in to the project interfaces.

Probably the largest problem I have with modern projects is how unfriendly they are to experiment with on the page, even if there's no intention to prevent it.
open redirects have always been a thing.
No, but it might be a pain not to:

wget https://cdn-aws.deb.debian.org/debian-security/pool/updates/...

dpkg -i apt-transport-https_1.4.9_amd64.deb

apt-transport-https is going away in apt 1.5 anyway
what an incredibly stupid comment. How many boots are you licking on a daily basis?
Glassdoor is designed to be manipulated. Employers encourage positive reviews and censor negative ones. Employees with an axe to grind leave exaggerated negative reviews. Executives leave astroturfed positive reviews. Everything about Glassdoor is designed to encourage extremes, because that’s how they get “engagement” and, of course, upsell opportunities.

If you interpret Glassdoor reviews as anything more than a battleground of vocal minorities, you’re making a mistake. The sample is so biased that you’ll never know how representative they are.