skysight-inc/HackerNews huggingface dataset:
Absolutely not. The most advanced headsets on the market require a tether. And, to make matters worse, outside-in lighthouse-style tracking. Valve Index, Vive Cosmos Elite, even the Rift S. The Quest is literally the only headset capable of operating fully untethered; its possible to set up wireless tethers on most headsets, its just more expensive, and it still requires a PC.

The Quest does two things that are interesting, and rather unique from a full market perspective; local rendering, and inside-out tracking.

Local rendering is probably the future for VR platforms. Unfortunately, there's really only one company on the planet with a mobile SoC design capable of driving the performance necessary for truly current-generation VR experiences, and that company is not interested in sharing their technology (Apple). The Quest, with its android smartphone-class specs, is not, in my mind, a current-gen VR headset from a performance perspective. It has other (huge!) advantages which make it an awesome purchase (generally, the best purchase for most people), but performance is not one of them.

I think the jury is still out on inside-out tracking. It may approach a level where it is good enough for most use-cases, while still being worse than outside-in tracking is today. Arguably, its there today. Fundamentally, if your environment is dark, or lacks the many visual intelligence landmarks necessary for the AI to operate, its going to struggle, not to even mention the challenges it has in tracking hand positions behind your back (which is very common in FPS-type games, where you often reach into your backpack to grab more ammo).

Plus, the local rendering, the inside-out tracking, and internal battery, all add weight to the headset, which already cheaps out on the circumcranial support straps to properly distribute weight (many people swap their Quest straps with, say, those from a Rift S or even an Index/Vive, because they're so much better). The Quest is both one of the most and least advanced headsets on the market.
Thanks for sharing!

For single-writer multi-reader scenario this requires no atomic fences or operations on TSO: http://concurrencykit.org/presentations/lpc2015.pdf

Works on any open-addressed scheme (there is also a robin hood implementation).
Ask HN: Should I keep building my current business or seek new ideas?
Some background info about me. I'm 22 years old, college dropout, based in Toronto. Over the past 2 years I built a solid Internet business.

I will call my current business "B".

B is currently making $500k / year profit. If I keep building it full time, it will make several millions a year. However, B is not a very impactful business, nor will it ever scale into a billion dollar company. It's a great lifestyle business, not much more.

As I built B, my ambitions broadened. When I think of what I really want to do with my life, I realized my dream is to build the next great company (e.g. Microsoft, Apple, Facebook, Google). I also realized I don't even care if I succeed or not - as long as I am chasing the dream, I believe my life will be fulfilled.

As a result, I stopped working full time on B in April 2019, I explored a bunch of new projects, ranging from other Internet projects, a video game, to a chair (yes, designing a chair).

I got deep into some of these ideas. The video game for example, I spent 4 months full time on it (Nov 2019 - April 2020). For awhile, I thought I was going to fully commit to building video games for many years to come. Then eventually the idea fizzled out after I thought more about it. I realized a video game company wasn't the right path to my ultimate goal, so as of now, it's been a month since I touched the game and pretty much abandoned the project.

I'm currently in "The Search" phase once again. And it feels really bad. Life feels directionless when there is no vision. I wake up each morning feeling lethargic, instead of energetic and excited to work on a project.

I'm scared of getting trapped into a cycle of working on new projects that go nowhere.

My question boils down to this - Should I keep building B full time and hope to indirectly discover a new idea along the way, or should I directly focus on exploring new fields, new opportunities and new ideas?

tl;dr Got a solid business going but I dream of building a much greater business. Not sure if I should spend my time focusing on current business or looking for new ideas.
This is awesome -- I grew up playing Quake 1 and really fell in love with it more as we as a community learned to exploit the movement physics. Still my favourite FPS and still arguably the one with the steepest learning curve.

I didn't have a chance to watch the video yet, but out of curiosity does this actually use QuakeWorld or base Quake 1? As I remember the physics are different between the two, right?
Show HN is not for posts like this. Please see the rules: https://news.ycombinator.com/showhn.html.
Sure, in an absolute sense. But in practical terms they are fantastically helpful here.
I do use braces and semicolons when programming in Haskell, and I have encountered that bug before, and I hope that they will fix it (although it still seems to be unfixed after six years, but a few people clearly do care, even if others don't care).
Location: Yangon, Myanmar
Remote: Yes

Willing to relocate: No

Technologies: Android, Java, Kotlin, Dagger, Koin, MVVM, MVC, firebase, Android Studio, Eclipse IDE, ADB, Java, SQLite, Room, Git, CI/CD

I develop Android apps for phones and tablets. I have published apps in the Google Play store. I have full life cycle software development experience, including: product concept development, product design, project planning, research and development, algorithm development, programming, testing, debugging, publishing apps to the Google Play store and app maintenance.

Email: kyawsanoo.androider@gmail.com

Resume: https://drive.google.com/file/d/1x7Ooc7TEfBf-bkh96XXKhbghwwE...
I used to work at a very small network engineering shop where JED was the primary terminal editor used (mainly because it was the CTO's flavor of choice). It's lightweight and easy to learn with Emacs keybindings, but I'd never use it for doing anything more than quick edits and scripting.

These days, though, an editor not providing Vim emulation pretty much counts it out for me
Google it bro
$250mil/year is 1/100th of what they eventually got acquired for. Linkedin was probably eventually making more than that, too (need to look) but I'd be surprised if revenue was the main reason for LI's success, probably more of a nice to have...
Plenty people pay for software. You should target niche professionals who are underserved, not the plebs.
Anecdotally, I had a $50k HELOC on a property once. I wanted to avoid something happening like the bank being able to freeze withdrawals from the account. So, I withdrew all of the money from the HELOC and put it into a personal account. The interest rate was around 2.75%, so I was only paying around $100-150 per month. It was a huge lifesaver when I was in a tough situation.
>t. Not a Linux user.
uhm.. no... the 2018 went back to expandable RAM https://www.ifixit.com/Teardown/Mac+mini+Late+2018+Teardown/...

It is a bit of a pain and took me about 45 minutes, but I was going slow.
Why should there be a limit on intake from any one country? Let companies hire who can get the job done. Else, they'll set up shop in those countries and just import the work for a cheaper rate.
> Was it easier to explain to a kid "repeat 4 [forward 50 right 50]" or a bunch of memory pokes and all the boilerplate required to get an assembly language program to do anything.

One would think that there's a useful middle ground. My favorite approach would be a FORTHy, postfix-based language where you'd write something like [|50 fd 90 rt] 4 repeat. Something like that would be comparatively easy to implement using a threaded-code approach on a 8-bit machine, which would provide an easy segue into lower-level, assembly programming.
I don't believe for one second that it takes just a couple of weeks to an average SE to be proficient in Rust.
Don’t abandon cash cow. Keep operating if you can. Diversify into other investments that will allow you to continue exploring new ideas. What did Edison say - I dint fail I only discovered 1000 ways that don’t work. Something like that but you get the point
“For comparison, last week we caught a significant race condition in another Kubernetes-related project we maintain called Helm (written in Go) that has been there for a year or more, and which passed the race checker for Go. That error would never have escaped the Rust compiler, preventing the bug from ever existing in the first place.”

I’ve heard people brag that Haskell is a great language because it’s supposedly easier to write correct code.

Rust has this same reputation?
Say.... 50% docs, 25% powerpoints, 10% excels, 5% images, 5% mp4 videos, 5% other (.ai, audios, SWFs, jsons, source code excerpts...).

For complicated stuff I mean yeah, sometimes tables, sometimes multi-columns, sometimes embedded visuals, sometimes even just some unorthdox layout (like, trying to add a paragraph with my comments in the middle of someone else's bulleted list).

Any of them can be argued, but I've found them useful often. Any of them may be solved by a particular wiki like Notion... but never all of them, because writing a fully featured document editor (or, as seen above, several editors) is a HUGE task.
I've worked on the drug side of the business and I agree with your assessment. I've found the FDA to be quite reasonable, and also very science driven. Most of the regulations are there because without them, problems have arisen in the past.

And as a consumer I'm very happy that if I get prescribed a drug it's been thoroughly evaluated for safety and efficacy.
This old saw again?

Shit. Just don't use Ubuntu. The writing is on the wall.
There was some debate at an old job about whether or not to use semicolons in JavaScript. I would just like to remind everyone reading this that if you don't write semicolons in your JavaScript, you are doing it wrong, and we cannot be friends.
Burner phones are not available/legal in all parts of the world. It's not uncommon In Europe for phone numbers to be registered to a person using their national ID number.
For many years I've recommended Repl.it for beginners and used it in a pinch from public computers. It's a great service that makes programming more accessible.

Aside from celebrity tweets, what is your process for adding support for a new language? I've observed, for example, that Repl.it wraps some open-source interpreters like ngn/apl and JS-Forth.
Varies, but generally a product owner is focused on taking the strategy and translating it down into actionable tasks. They work across teams and roles to make sure the team is executing properly. It tends to be more tactical than strategic. They don't have to know how to sell or market products well, or how to get those products into the market successfully. On paper (a narrower scrum view) they are responsible from sprint planning, to daily stand ups, to review, to retrospective. Not the larger backlog prior to sprint planning, and not what happens after some software is accepted as done / to be shipped.

Some links:
https://www.productplan.com/product-manager-vs-product-owner...
https://blog.aha.io/the-product-manager-vs-product-owner/
https://blog.aha.io/product-manager-vs-product-owner-vs-proj...
https://www.productplan.com/glossary/product-owner/
https://blog.aha.io/the-product-vs-project-vs-program-manage...
https://www.mironov.com/?s=product+owner
Sorry I’m not following

Should I compile a list of failure stores for companies that ran Linux because Linux is complicated or has had various bugs?

How about a list of failure stories of how Ruby causes problems?

You can get errors with any system. You would need to prove to me that k8s has say more errors per day than a competitor (lambda? VMs). I just don’t understand...
That sounds like a usability problem.
Did you tick the metered connection box?
SQL Server can index a computed field, which is more-less the same thing.
Is it just me or has there been a recent spike in malloc / free / seg-fault bugs in production code lately? Is it possible some fixes for Meltdown and Spectre have exposed these problems by making access more strict?
I wouldn't really consider "articulate & convince them of your goals" as really gaming. There are areas that are new for everyone, and you are correct, if you don't come up with your approach, the FDA will come up with one for you.

What I've appreciated about the FDA is their scientific focus. The FDA might say "You need to do X", but if you can come back and convince them with a scientific argument that you don't have to, they will listen to you!
Yes. I basically charge the same rate in USD no matter where my client is.
You're just describing the ordinary risk that comes with lending against collateral. Banks evaluate that risk and price it in all the time.

What I think most likely happened is that banks plugged their (new, very high) risk level into their interest rate formulas, got very high rates (imagine 10-20%) and decided it would be worse, for publicity, revenue, or other reasons, to lend at those rates rather than halt HELOC origination entirely.
Based on the discussion linked in the article Ubuntu does as well.
I've swapped that for http://arclanguage.com/item?id=21046 in your GP comment.
Seems like there should be some middle ground. Everyone agrees that people should be entitled to some privacy under certain circumstances. But the camp advocating absolute privacy by-default 24/7/365 is too extreme, imo.

There are many societal illnesses that both emerge and are difficult to solve when everyone is untracably anonymous. Lack of privacy provides a feedback mechanism by which corrective action can be taken.
This sounds somewhat similar to log structured merge trees.
> people don't want to do too much work so they choose the language which allows them to offload erors for later

Replace "people" with business and you are right. I feel many devs would prefer to invest the time once rather than hack it once then go back and add unit tests
Which is really frustrating as a user; I don't want to wait 5 seconds for a calculator to launch; it's a simple app, it should launch instantly, like it does on any other Linux distro.
That is pretty much the thrust of the OP itself, and most of the agreeing comments. So While true, it doesn't seem to be much of an observation.

At the same time, it's also perfectly valid to instead, express what you want and don't want, and generally try to fix something that has broken or correct the aim of something that has veered off course.

Approving of the new change is also valid for that matter.

The only invalid thing is telling whichever camp you're not in that they can leave if they don't like it.

Remember, this is a change, not just the way something has always been.

How about, if you like the idea of everything packaged in the form of snaps, and all those snaps updating themselves outside of your control, you can just go find, or create, some new distro that works that way, instead of changing one that already exists and forcing all it's existing users to either accept the change or move, to accomodate a change you like?

"Take it or leave it" are not the only options, and it says something unflattering about anyone who tries to suggest that they are.
> No, I explained that nurbs require extra/different tools.

I’m sorry if you feel defensive. I was responding to your explicit inclusion of “other curved surface representations” besides NURBS here https://news.ycombinator.com/item?id=23043791 and here https://news.ycombinator.com/item?id=23044537

Really just pointing out that a subdivision surface is literally another curved surface representation, does have some conceptual differences from polygons, and can be ray traced without subdivision. Calling it polygons was confusing to me, but now that I understand what you mean, call it polygons if you want.
You're not wrong that the distinction isn't terribly important for this story, however that term absolutely has meaning in the world of fintech and places reporting on financial news - near/soft real-time are very distinct from real-time.

It's been 5 years since I've worked in that industry, but I still view the use of "real-time" the same way and can understand some people's issue with the term in this case.
Useful redundancy is a continuum. On one side is adding "unnecessary" null checks. On the other side re-implementing complex business logic checks. I like to strike a balance.

"Overspeced" unit tests? They should only be testing the API contracts and all edge cases. And refactoring your code should not result in changes to the unit tests as the purpose of the unit test is to tell you if your refactoring broke something. If you have to change your unit tests when you refactor, you're doing something wrong.

Fighting unit tests is a code smell for testing implementation details or poorly designed API that needs to keep changing.

I've been bitten by "clearly impossible in the context of the whole system" way too many times. That said, I'm not going to do horribly complex implementation detailed validation. But sanity checks are worth their weight in gold.
Thanks for sharing your experience!

I'm working with TF and Pytorch as well, but so far for the later I have found the project to be reasonably reliable (though I did find Chainer considerably more polished). Can you share more about what worries you with Pytorch?
Just the one. https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
I've been working on something like this for Ruby on Rails in case anyone is interested. It has multitenancy, billing separate for each tenant, automatic query filtering for the current tenant, etc. https://jumpstartrails.com
If the US cedes supremacy despite spending 3x what China does, it's because of grift, like R&D for unwanted jets or RFPs written for one contractor. I'm sure Schmidt can introduce them to the free market.
https://www.youtube.com/watch?v=kjyeCdd-dl8

Not entirely sure (and I have no intention of given Bethesda enough money to find out)
I think Logo is a useful middle ground for novice programmers. But by all means, if you want to do Forth, do Forth. Then you can have all the advantages of the Forth peanut gallery telling any kid that doesn't get Forth they're too stupid to understand computers and all the other toxic baggage that comes from that ecosystem.

Or you can teach a language that caters to programming novices and let them decide if they want to go down towards bare metal or up to more abstract languages or stick to apps like Excel because they really aren't cut out to be programmers.

I prefer the non-screw-you approach.
Well, it's good that we've gotten to the point of us both agreeing that what is Nock designed to do is novel and useful. It's certainly up in the air whether Nock will succeed in doing it, but I think it has a better chance of doing it than systems that don't even try.

I want to point out an error in your reasoning here, though, which results in you seriously underestimating the importance of Nock's goal:

> you're writing in some other language which… [i]s either frozen and you accept the potential insecurity, or it's patchable and you accept the potential nonreproducibility

Suppose I gather some data, do some statistical predictions based on it, plot the results, write them up, and publish the whole bundle as a set of programs for some reproducible computing system, including a build script that rebuilds the article from the source text, the observation data, the statistical code, and so on, with a secure hash of the whole thing. I don't even need to include a PNG of the plot in the bundle — anyone in the future, whether in 02021, 02030, 03020, or 12020, can recompute that bitwise-identical plot from the source data. Moreover, if I made an error in my analysis — either due to a software bug or for any other reason — they can reproduce that error.

Suppose the statistical code is compiled from a Julia-like language to bytecode for the reproducible VM. To achieve reproducibility, I could include the compiled bytecode in the bundle, but a better solution is to include the version of the compiler that I was using. That way, someone who wants to criticize my conclusions in the future can recompile my statistical source code with a new version of the compiler to see if my results were due to a compiler bug. Lacking that, they can reproduce my incorrect results, and they can recompile my source with a new compiler and get a different executable that produces different results, but it will be harder to tell why they were different.

In neither case, though, does fixing compiler bugs destroy the reproducibility of the computation, as you say it does. The executable compiled by the buggy compiler will continue to produce unchanged results on future versions of the VM, as long as they are not buggy. Shoving the problem up one level makes it into a completely different kind of problem with completely different implications.

I don't think there's any other system out there that attempts to deliver this level of reproducibility today, although some video game emulators come close. I'm probably going to have to write one myself, because I'm not convinced Nock is going to achieve it. Substantial parts of Dercuano and BubbleOS are steps toward this goal.
Also Henry Ford: "The customer thinks they want some color other than black, but fuck what those idiots want."

I look out my window today and I see many colorful cars. It's better this way. Fuck control freaks.
Can i see the source code?
> Ever heard of blind

No... but just checking it out, and every single post is about FAANG/uber from people who work in silicon valley. You didn't exactly disprove my point.
My inner Canadian asks me to point out that Hank Snow made it popular in the USA.
Good ole double buffering. I've used this pattern for many custom concurrency designs.
What was it that he was shaking his head at?
> Which optimizations are enabled by immutable data?

int test(immutable(int)* p, int* q) {
foo(*p);
*q = 4;
foo(*p); // don't have to reload *p
}
I wouldn't consider a huge overestimate to be a "rule of thumb".
Yeah, I'd be something similar and also wouldn't consider myself a database expert. I think this question list is tilted towards "can you express this complicated abstract transformation in legal SQL" than the practical day to day considerations of building and working with databases.
If your clients are choosing you based on where you are and how your rate compares with other freelancers, I think you have wrong clients.
> A lot of that C is actually test code, so in reality it's about 8000 lines of Coq to prove around 150 lines of C correct.

I wonder how much of that proving burden would be subsumed by rewriting those 150 lines of C into idiomatic Rust.

Though the real problem with Coq/Isabelle/Lean/etc. proofs is not the LOC's but the brittleness of their "proof script"-based approach. Sensible ITP systems are based on a declarative approach where the "strategy" used in any given proof step is secondary, while the semantics of the step itself is stated very clearly and explicitly. This makes the proof script robust to changes in other portion of the code, so that even 8k lines of proof becomes more easily manageable.