23 October 2021
Preview of 'John Carmack pushes out unlocked OS for defunct Oculus Go headset'

John Carmack pushes out unlocked OS for defunct Oculus Go headset

"> allowing for a randomly discovered shrink wrapped headset twenty years from now to be able to update to the final software version, long after over-the-air update servers have been shut down.This resonates so much with me. Each time I setup a new device that requires an Internet connection, I think about how we can enjoy booting 30 years old retro computers and how the next generation will not be able to do the same because of locked down hardware."

"Massive props to John Carmack! We also need laws to protect consumers when they don’t have an enlightened champion on their side.Part of the reason I buy Apple devices is because Apple is unlikely to get acquired or go out of business for the foreseeable future. I wish there were viable alternatives. Android devices are not an option for me, as they are more likely to be abandoned and/or contain Google/manufacturer/carrier malware, and I need to use banking and work apps.In that same vein, I have a preorder for a Framework Laptop because, at least for actual computers, I have the option of not splurging on a non-upgradeable, non-customizable Apple device.We really shouldn’t have to wait for Librarian of Congress-granted exemptions, which can be rescinded at any time and are meaningless with locked-down devices anyway."

"This is tangential, but I really wish that their would be legislation, valid retroactively, to enable old unsupported devices to still be utilized. I think this goes somewhat beyond right to repair?Take for example digital backs for medium format cameras - these things are built in low numbers, with high end FPGAs and camera sensors, with JTAG interfaces ready to go and everything - but then forgotten about a few years later. Why not enforce the creation of some document on how one would build their own OS for it? Or how the bus from the sensor ADCs works? This all existed at one point internally, but now is lost, and most of this backs will slowly die and go to waste, even though they could easily be repurposed or repaired."

Preview of 'Magit, the magical Git interface (2017)'

Magit, the magical Git interface (2017)

"Magit is such an unbelievably good piece of software. If you haven't used it, please at least take a look. It seems like "just a GUI for git", but that's missing the point — many operations suddenly become frictionless, so your entire workflow changes.I regularly do things like "stash some of my changes, switch branch, cherry pick a commit, switch branch, do an interactive rebase reordering commits and dropping one, pop one of my stashes", and they become routine, so working with code becomes a fluent experience, rather than fighting with your tools.I would say that Magit and structural editing using Paredit are the two most important technologies that make programming great."

"Magit is an exceptionally well made interface to Git. Yes, it’s built on top of Emacs, and that might stop many from even looking into it. - I am glad I made a deep dive into Emacs last year, and although I stopped using it as an IDE (VS Code is just too good), I still come back to it because of Magit (and macros, general text editing and org-mode). Yes, I have an interface for Git in VS Code as well, but it‘s very rudimentary compared to Magit, and it’s limited to the narrow left bar. And to give an example: Making „micro commits“ by staging various lines of changes is super easy in Magit, but I still haven‘t found out how to select several disconnected lines for staging in VS Code."

"I've never seen the upside. I use Emacs as my primary editor, and I regret it every time I say "today is the day I start using Magit". It is exceedingly invasive, triggering itself even when you don't ask for it (like running "git rebase -i" on the command line). The invasive stuff changes how the text editing itself works, but doesn't add deep features. In the interactive rebase case, I lose the ability to treat the interactive rebase text as text, but I also don't gain anything. I can't just navigate around, kill a line, and put it somewhere else. Well, I can do that, but the usual keybindings don't work, they just made their own for no reason. And, for example, if I do use their UI and pick "reword" as the operation for a certain commit, I should be prompted for the desired rewording then and there, right? But that's not what happens, I press C-c C-c to commit my changes (why isn't it C-x # which is how I'd normally close an emacsclient session?), then Emacs goes away, then it comes back up, then I can type my rewording. If you pick it more than a few times, you just get a seizure from all the flashing lights. This isn't a good user interface. It's a bad user interface.Obviously, my experience must be unique, because everyone loves Magit. It might be the most-loved piece of software ever. Every other week, there is an article on Hacker News about how it's the best piece of software ever to exist, and I've never seen anyone say anything bad about it. So I wonder what marketing techniques they use to make people feel this way; the emotions are strong, and widely shared.Maybe there is some fundamental insecurity about Git, and Magit makes people comfortable? I've never felt that way, but I did start using Git the weekend it came out, and my Github user ID is in the low 2000s, so I might have had time to get Stockholm Syndrome with the Git UI. I suppose it's possible that the people writing these articles may not have even been born when Git came out, which is interesting to think about actually!"

Preview of 'Police can’t demand you reveal your phone passcode then tell a jury you refused'

Police can’t demand you reveal your phone passcode then tell a jury you refused

"This happened to me. The police wanted my password and refused my right to silence, wouldn't let me call a lawyer. I wouldn't talk. Then they threatened my wife and I gave up my password to stop them from hurting her.The password was suppressed by the court, but they let the police use it anyway because one of the officers (with no formal computer qualifications) testified he could have broken 2048-bit AES encryption without the password. And worse case he said he would unsolder the chips off the circuit board and put them onto another board and that would fix it. The judge allowed the testimony and believed it.Make sure you always use a password on your devices though. Biometrics are not protected by the 5th Amendment in the USA as the police can legally force your finger onto a touchpad or hold your face in front of a camera."

"> this case turns on one of the most fundamental protections in our constitutional system: an accused person’s ability to exercise his Fifth Amendment rights without having his silence used against him.A very interesting tidbit I learned here on HN a couple years back — the Supreme Court ruled in 1992 that you have to declare out loud an intent to invoke your Fifth Amendment rights, if you haven’t been formally arrested yet. Literal “silence” may be acceptable after being Mirandized, but not necessarily before.https://harronlaw.com/blog/miranda-rights-texas/https://www.oyez.org/cases/2012/12-246“Question: Does the Fifth Amendment's Self-Incrimination Clause protects a defendant's refusal to answer questions asked by law enforcement before he has been arrested or read his Miranda rights?”No, by 5-4 vote."

"Sortof off topic question. I've never owned a smart phone but might get one soon assuming I can find a decent one that will run grapheneOS.Is there an app that can be given permission to intercept the unlock code and upon receiving the panic/under duress code, discretely put the phone into a "parental controls" configuration that sandboxes all your data and only presents the storage you want the law enforcement children to see? Some cops use a USB device that pulls all the data from the phone. Is there a way to sandbox that data so they only get the data from approved apps and the forensics USB device does not know any better? i.e. not denied data, but rather can only see what you want it to see. Or should this be a feature request to the alternate phone operating systems developers?Maybe this duress code should also activate a timer. If the all-clear code is not entered in a user-defined period of time, the phone wipes all user data in the background resetting it to a brand new phone. Or maybe wipe the data for specified applications to not appear to destroy evidence? Maybe also send network notifications(s) to specific in case of mission compromise destinations?[Edit] Feature request update. This duress system should also log all the data that was added or planted after the duress code was entered, to log people planting evidence. Upload encrypted manifest,timestamps and checksums to remote site in the event law enforcement tamper with evidence."

Preview of 'Ask HN: Best way to host a website for 500 years?'

Ask HN: Best way to host a website for 500 years?

"The world wide web is only 28 years old.We've had computers for 76 years at this point.We're discussing this topic in modern English, but if you look back 500 years William Shakespeare wouldn't be born for another couple of generations: vocabulary and grammar have changed a lot since then, and if you look back a further 500 years (to 1021AD) the "English" spoken in those days was a lot closer to Frisian than anything we'd understand.To get the big picture of what 500 years means ... the oldest surviving writing is roughly 5500 years old. We've had agriculture for roughly 11,000 years. And you're asking for a personal legacy to be legible and usable after surviving a span of time 10% as vast as the existence of writing itself?Think archival grade materials and ink, then add translations into Mandarin, Arabic, and Spanish -- there's a much better chance of it being readable if you have more than one language. Then maybe add a dictionary, just in case words have fallen out of use. Make multiple copies and distribute them around the world, including tectonically stable desiccated regions that are currently lightly- or un-inhabited and likely to remain so: the criteria for deep disposal nuclear waste repositories are applicable (minus the "deep") bit, so Yucca Flats would do, or the Atacama Desert or the McMurdo dry valleys in Antarctica."

"Other comments have given ways to physically archive the webpage. Continually hosting it is a much trickier endeavor. Beyond just keeping the servers up, technologies will shift such that eventually html webpages, servers that talk using tcp/ip, datacenters that connect via fiber cables, etc will all be deprecated.That said, if we have a very liberal definition of the word "website" to include any successor technologies where a device can be used to request a document, given an identifier, that looks recognizably like your webpage, this is doable. What you really need is an institution that you can trust to keep existing and to keep the necessary upkeep of your website as part of its mission.The main institutions I can think of that have lasted for 500 years unbroken are churches and elite universities. If you were able to convince the Pope to decree that the church should keep hosting your webpage in perpetuity, that would likely work, but persuading him of that sounds very challenging. That said, universities are used to accepting gifts with sometimes eccentric strings attached. The gift will probably need to be large; but I imagine a $1B donation to Harvard under a condition that they continue to host and update the page as needed would likely work. Getting that sort of money is quite hard, but tbh probably easier than coming with a way of guaranteeing that your direct descendents keep the webpage up."

" I met a traveller from an antique land, Who said—“Two vast and trunkless legs of stone Stand in the desert. . . . Near them, on the sand, Half sunk a shattered visage lies, whose frown, And wrinkled lip, and sneer of cold command, Tell that its sculptor well those passions read Which yet survive, stamped on these lifeless things, The hand that mocked them, and the heart that fed; And on the pedestal, these words appear: My name is Ozymandias, King of Kings; Look on my Works, ye Mighty, and despair! Nothing beside remains. Round the decay Of that colossal Wreck, boundless and bare The lone and level sands stretch far away.” — Percy Shelley's "Ozymandias""

Preview of 'The 'impossible' crane shot from Soy Cuba (1964) [video]'

The 'impossible' crane shot from Soy Cuba (1964) [video]

""“We used a special cable device which I built in Moscow before going to Cuba. We planned to fly the camera between two big buildings in a major street. Because of security and insurance problems we used it in a little street. We used two cables and a small cart with eight wheels and a fork underneath where the camera was placed at the [end] of a handheld move. The secret of how we attached the camera to the cart was a magnet, part of which was in the cart and part of which was built on the camera. From the window the camera moved out about 100 feet."[1]The camera was an Éclair CM3 Camiflex, which is a beautiful little camera first built in 1945. There are still some for sale.[2][1] https://ascmag.com/articles/flashback-soy-cuba[2] http://www.visualproducts.com/storeProductDetail02.asp?produ..."

"Soy Cuba contains lush and gorgeous B&W cinematography. The film opens up with the camera flying over the waters of Cuba; the reflection of the water is glistening in a way unlike other films. I believe they used an X-ray film strip to achieve this shot.Mikhail Kalatozov has included another impressive shot at the end of his previous work, "The Cranes Are Flying." (Palme d'Or at Cannes 1958) The camera follows the protagonist, then gets seamlessly lifted up by a crane to depict the entire street parading.While Soviet-era films does not have much exposure in the English-speaking world, there are so many gems, critically and technically. The filmmakers were acutely aware of great filming techniques.Also check out:Walking the Streets of Moscow (1964) - B-roll scenery contains another lush reflection of the Moscow watersIvan the Terrible (1944/1958) - Eisenstein is an ardent practitioner of the montage, and prefers to static camera shots. However, his compositions are very imaginative, and there is no shot you want to miss. His film also briefly experiments with color, and he exploits colored lighting to emphasize the characters' psyche.Anything by Andrei Tarkovsky - Tarkovsky is indisputably a master of Russian cinema after Eisenstein. He often shoots in nature, but no director shoots with such rich texture of the mud. His long shots emphasizes the bleakness inherent in the Russian psyche.The Ascent (1977) - Set in WWII, the film shows the resistance escaping the Nazis covered in snow and panting in the cold. Great snow photography.Hard to Be a God (2013) - A sci-fi story on the immigration of humans to a different planet, the colonizers inhabit the inhospitable environment. Like Tarkovsky, the slow dragging in the mud conveys the dreary lives.These are recommendations I came up off the top of my head relating to cinematography, but there are definitely many more to appreciate."

"Personal anecdote: This was the first film I ever projected in 35mm. Our university theater obtained a print from the national film archive of Venezuela; it was a copy of the 1995 restoration. Incredibly striking, lush visuals, and partially responsible for my continued personal and professional interest in screening archival film. Six years later, I still remember the joy of projecting this exact sequence. I'm glad the film survives."

Preview of 'ConcernedApe's Haunted Chocolatier'

ConcernedApe's Haunted Chocolatier

"This has the same kind of relaxing vibe as Stardew Valley. A very rare instant purchase for me once it is released.For me personally these games stand out in a huge way in the sea of generic AAA micro-transaction "games". If anyone wants to drop some more SV-like game recommendations I'd love to hear them.I am in continued awe ConcernedApe was able to accomplish all this largely on his own.And beyond this that he continues that approach with his new game even though he could surely afford to just bring on as many developers/designers as he needed. He could even churn out a new game on a yearly basis and "milk" it all to maximize profit. The fact he is doing none of this speaks volumes (at least to me).Eric if you somehow happen to stumble upon this comment know you've brought one couple many many happy hours together. We wish you all the best, and much love!"

"I learned today that Eric (ConcernedApe) does the music for his games too... Music, art and graphics, storytelling, and game development all in one dude, what a talent."

"I have been amazed of what Eric has created single-handedly already, and am so pleased he's doing something new! Stardew Valley is a prime example of what I want in modern games and so often find lacking. No microtransactions, single-player-friendly, not graphic-intensive. Not every game needs to or should be Stardew Valley, of course, but there's not enough Stardew Valleys out there.Few of us are as talented as Eric is, but I wish more of us tried a little harder to create what we wish existed, and not fall into the trap of what's popular. To bastardize legend, "If I were not [me], I wish I were [ConcernedApe].""

Preview of 'What software engineers should know about search (2017)'

What software engineers should know about search (2017)

"Biggest advice I can give is you probably don't need search if you're indexable by search bots.No really. Look over people's shoulders sometime.They'll just go to Google and type in their search followed by terms such as Wikipedia, imdb, Stackoverflow, YouTube, Bandcamp, Amazon, eBay, Yelp... all sites that spent a lot of time on their search and have done quite a decent job. Oh well.So unless you really need it for some critical reason where you know your users aren't going to do their regular patterns of going through one of the general engines, close the ticket as out of scope and go home early.Don't bother implementing hard to do and expensive to maintain features that nobody will use. It'll become more headache than fun real quick."

"A problem close to my heart. Good search is certainly still too difficult to pull off for small teams, and this was one of my motivations for building and open sourcing Typesense[1].Most people think of search and immediately think of large data sets, but the problems that plague smaller datasets are equally interesting. It's less about performance and more about relevance. For e.g. searching across multiple fields for a compound query like "taylor swift style", requires breaking the query into segments (taylor swift | style) before searching for the appropriate fields. There are also a class of problems that traditional search engines that rely on BM25 or TF-IDF for ranking cannot reliably solve (e.g. searching on small texts like titles) where you have to consider distance between matching words (which TF-IDF and BM25 miss). Lastly, there is also personalization which is almost always left as an exercise to the reader :)[1]: https://github.com/typesense/typesense"

"The simplest advice to engineers would be to not think elastic search as some black box that will solve all of your search problems. In fact, if you've never implemented search before it's the last tool you need. Postgres full text search is all you need. The most important thing in search is to surface relevant results and no one can quantify relevancy. It's as unquantifiable as it gets in technology. You need to understand what results are relevant for your users and find a metric that would work to rank accordingly."

Preview of 'Function pipelines: Building functional programming into PostgreSQL'

Function pipelines: Building functional programming into PostgreSQL

"So does this functional SQL just get "transpiled" into analytical SQL? If so, where does "transpilation" occur, in the client, intercepted before hitting the query engine, etc? Or has the query engine itself been modified to handle functional SQL?If the query engine itself has been modified, are there any performance gains or losses?This is a pretty interesting and compelling idea. I do wonder if the functional SQL approach might entice developers to write very bad/expensive/ineffective queries. Then again, nothing is stopping developers from doing the same with analytical SQL."

"This is immediately useful. The number of awkwardly nested subqueries that I write because I don't have this kind of functionality in BigQuery is a huge bummer.I am curious, how many Haskell programmers do you all have? And more seriously, do you have any plans to help provide this functionality to non-Postgres SQLs, or at least help those trying to take inspiration from it?"

"Database researcher here.This is really cool! I wonder what was the initial drive for this new feature?Is this meant to be a "short-cut" to express complicated SQL queries, or is this meant to adding new semantics beyond SQL? While I like the idea of custom data types with dataflow-like syntax, implementing a whole new query processing engine for the new data type seems like a lot of engineering work. Also you now have to handle many edge cases such as very very large time series -- I wonder if you have efficient lookup mechanisms on timevectors yet, and various timestamp and value types. If all these new syntax can actually be expressed using SQL, however complex, I think a "lazier" approach is to write a "translator" that rewrites the new syntax into good old SQLs or add a translator at planning stage. This way you can take advantage of Postgres' optimizer and let it do the rest of heavy lifting.Kusto has a similar data type "series" that is also created from aggregating over some columns (https://docs.microsoft.com/en-us/azure/data-explorer/kusto/q...)."

Preview of 'Software Freedom Conservancy files GPL lawsuit against Vizio'

Software Freedom Conservancy files GPL lawsuit against Vizio

"An especially novel aspect of this lawsuit, quoting the press release:> This approach makes it the first legal case that focuses on the rights of individual consumers as third-party beneficiaries of the GPL.> “That’s what makes this litigation unique and historic in terms of defending consumer rights,” says Karen M. Sandler, the organization’s executive director.In the past, GPL enforcement has been a cause of action brought by the copyright holder. This suit is on behalf of users, as beneficiaries of the GPL. If this suit is successful, it'll no longer be necessary to prove sufficient standing as a copyright holder of GPLed code in order to enforce the license; it'll suffice to show that you're a user who wishes to make use of the rights provided under the license."

"This looks to be a major change in the legal strategy behind GPL. In the past the focus has been on copyright claims by copyright holders, but as recent cases has shown in Germany and France, those has faced some rather strange setbacks. Germany don't seem to want to recognize copyright holders that only contributed a part of a larger work, which is basically all copyright holders for larger FOSS projects. In France they seems to define GPL as being under contract law and not under copyright law.In this new case, the SFC is arguing a case in the context of third-party beneficiary which is under contract law and not copyright law. It seems like a bit of an long-shot, but if won it could mean a major change in interpreting GPL as a contract rather than a copyright license. I would guess that it also would change their strategy in other countries if won."

"Full legal text of the complaint:https://sfconservancy.org/docs/conservancy-v-vizio-original-...Press kit:https://shoestring.agency/wp-content/uploads/2021/10/SFC_Pre..."

Preview of 'How is bamboo lumber made? (2016)'

How is bamboo lumber made? (2016)

"Long time lurker here, first time poster. I got pulled into the rabbit hole of building guitars at home during the covid lockdowns. My first build used traditional "tonewoods" (mahogany, ebony, rosewood etc.) and while purchasing materials for my second build, I stumbled upon bamboo boards on a German wood retailed shop.Compared the properties to the wood I wanted to use for parts of it (mainly the core/neck and fretboard) and decided to go for it.So the second build [1] is 40ish % bamboo with purpleheart veneers in between layers of bamboo and purpleheart/olive for the body. Next build will be around 80% bamboo. Trying to source some strand woven bamboo boards to try them out as fretboards as well, but for a part time builder like me, getting such small quantities of bamboo boards is rather hard.But yeah, fascinating material even outside of construction use. The boards I used for the guitar builds were nice to work with, easy to sand and finish (using wipe on poly).[1] https://i.imgur.com/fUyxd7n.jpg"

"This was interesting in light of an interview I was just listening to yesterday, a CBC podcast [1] talking about the benefits of mass timber (glued wood) for large highrise building construction.There were two guests on, both sounded like environmentalists, with the first one (Michael Green) saying that mass timber was"currently the best tool we have to address climate impact and in the building materials for a large building"while the second guest (John Talberth) was arguing:"The idea that we can cut down our forests and turn them into two by fours and build our way to a stable climate is absurd, and it's just another one of these false narratives of big timber corporations are using to get us to buy more of their product and continue to subsidise their record profits",and Talberth advocated Bamboo, mentioning it multiple times as an alternative. It kind of went back and forth a bit with Mr Green saying"Bamboo, for instance, is not structurally a material that can actually satisfy the demand of three billion people that need a new home because it doesn't build large buildings"and Mr Talberth saying"Believe it or not, bamboo can actually be put together in the structurally with high structural integrity beams to make taller buildings"It kind of left me wondering who was right... though Mr Green (an architect) sounded like someone with actual experience making buildings, where as the Mr Talberth (an economist) sounded like he might have been doing a bit of ill-informed wishful thinking about Bamboo.Seeing the process here gave me a bit more perspective on the discussion. Given the labour involved and the fact that you are working with 20mm x 5mm cross-sections of bamboo, I can see how it would be extremely expensive to build a large building out of bamboo, and the $300 euro price tag on a sheet of plywood at the bottom of the page added more confirmation that it's not going to be a practical replacement for large-scale building.[1] https://www.cbc.ca/radio/thecurrent/the-current-for-oct-20-2..."

"Really neat article, love things like this on HN. I thought this was really interesting:> A bamboo stem reaches its maximum height in just a few months and shall not grow taller or thicker over time. In the following 4 years the fibers will "lignify" and get their extraordinary mechanical properties in terms of hardness, strength, density.That seems pretty fascinating to me. Are there any other plants/trees that grow like that? I mean, from my naive knowledge, trees go wider with a new ring every year."

Fork me on GitHub