HNHacker News
TopNewBestAskShowJobs

qrobit

106 karma · joined January 11, 2024

submissionscomments
qrobit··on AI will make formal verification go mainstream
I would argue that the barrier to entry is on par with python for a person with no experience, but you need much more time with Haskell to become proficient in it. In python, on the other hand, you can learn the basics and these will get you pretty far
qrobit··on My stages of learning to be a socially normal person
I think smalltalks just didn't bring you to the right topic, if you were to reach topic you both fancy, you would definitely remember each other. If anything, having a smalltalk is nicer than staying in awkward silence.
qrobit··on Linux on the Fujitsu Lifebook U729
Unless there is some vulnerability in the current version that you want to take advantage of. See e.g. mediatek exploit to unlock bootloaders without authorization by OEM or hacking PS4.
qrobit··on You can't cURL a Border
Great post! Reminds me of (UK) Passport Application game: https://jameshaydon.github.io/passport/
qrobit··on Why is your open source project still hosted on GitHub?
While I don't use GitHub for personal projects, I don't see how moving off GitHub solves anything. If you are open source contributor, then repositories you interact with are public, and there is nothing preventing anybody (including GitHub) from using your code for any purpose. If you contribute to a public repository on any public platform, be it Codeberg, sourcehut or GitLab, your activity is public, issue you create are public[1], everybody knows who changed what in the code.

The social media effects are twofold, on one hand I think stars and contributors count, contributor profiles are great to see what is popular, but it went a little too far when they added scrollable home page. Virtually everyone has an account on GitHub, the best way to make your project visible and ease the contribution threshold is to put your project on GitHub.

What I would like to see is federated git, so that some protocol allowed different git servers could communicate with each other, which will make moving off GitHub much easier.

[1]: except for sourcehut I guess, which does not have issues or pull requests?

qrobit··on Slack has raised our charges by $195k per year
As a younger person myself, this talk is incredibly entertaining, kind of eye-opening too; the passion for engineering that speaker radiates is immeasurable.
qrobit··on 30 minutes with a stranger
I suppose because modern websites are actually apps, in an app you click on stuff to see more content

If web page does not look like a blog or a newsletter, it is not wrong to assume the app format

qrobit··on Using traversals to batch database queries
For me lenses are like water. I start each haskell project with `optics` dependency, my favorite trick is deriving Generic and using labels to access the fields[1]. Field accessors never get created in the first place, so you have no namespace pollution and all your data definitions can have fields called `id`, `date`, whatever and never collide with each other or imports from other modules. The only problem is unwieldy error messages in case something goes wrong. Another tool is Magnify and Zoom[2] classes, which are useful for limiting context available to child actions in a monad stack. You can have one "global" state, but give only a slice of that global state to the child action with `magnify #subState1 (myAction1 arg1 arg2)` (or zoom respectively for MonadState actions). This approach is extensively used within Brick[3] TUI library, where you have big "global" app state, and a collection of widgets that have their separate states which you slice from the big state.

[1]: <https://www.youtube.com/live/9hrDm7xDpig?t=2200>

[2]: <https://hackage.haskell.org/package/optics-extra-0.4.2.1/doc...>

[3]: <https://hackage.haskell.org/package/brick>

qrobit··on Sign in with Google in Chrome
FWIW, these uBlock Origin rules solve the ploblem:

    ||accounts.google.com/gsi/iframe
    ##iframe[src^="http://accounts.google.com/gsi/iframe"]
    ##iframe[src^="https://accounts.google.com/gsi/iframe"]
    ##iframe[src^="//accounts.google.com/gsi/iframe"]
    ###credential_picker_container
source: https://stackoverflow.com/a/78429389. Last rule is from me since popup was invisible but still blocked the content underneath.
qrobit··on Spaced repetition systems have gotten better
I had a similar problem where I can't remember the answer to the card, but after revealing it, it seemed too easy to make it due in a few days, so I would lie to the program and press Hard/Good. Later I removed scheduling times on top of buttons and decided to trust the algorithm. I believe it helped me to stop caring about schedule times and loosing progress on a certain card. After all, these algorithms were made for ordinary people with ordinary memory behavior.
qrobit··on Path is a utility for working with paths
As a rule of thumb I always make paths absolute when handling files in scripts. But then sometimes I need to copy a directory tree relative to $CWD somewhere else, so I convert them back to relative

Fish, being a great shell, provides this via `path` command[0]

[0]: https://fishshell.com/docs/current/cmds/path.html

qrobit··on Why Fennel?
Fennel is indeed nice and I rewrote my config in it too, but looked back ~2 years later and rewrote it again in Lua. I think Fennel for configuration is not justified and just adds complexity. Also the tools are not there: two existing language servers[1][2] can't compete with Sumneko's Lua language server[3] and they are fennel-exclusive and clueless about Lua code. I still like Fennel for writing more complicated code (my plugins: [4][5]) because of neat features like pattern matching and structural decomposition, both are surprisingly robust.

[1]: https://git.sr.ht/~xerool/fennel-ls/

[2]: https://github.com/rydesun/fennel-language-server

[3]: https://github.com/LuaLS/lua-language-server

[4]: https://gitlab.com/repetitivesin/16cm.nvim/-/tree/main

[5]: https://gitlab.com/repetitivesin/madol.nvim

qrobit··on Parser Combinators Beat Regexes
I looked at the VerbalExpressionJS[1] example and it looks like combining parsers to me. If you need to make regex more verbose, better use parser combinator library when available. RegEx benefits compared to parser combinators other than compactness aren't obvious to me.

[1]: <https://github.com/VerbalExpressions/JSVerbalExpressions/tre...>

qrobit··on Upcoming Windows 11 builds cannot install without internet and Microsoft Account
Is it? I use Android without Google account (with services though). No app forces account on me, there's always option to sign in through other platform or directly via email.
qrobit··on How do you process the news?
Genuine question: do you consider Hacker News news? Because I believe answer is yes (judging by the name). Maybe it would be good idea to once a week open some site that aggregates top HN posts of the week and treat it like weekly newsletter

I guess every blog infrequently emitting posts can count as weekly news too, you don't even need to aggregate anything. RSS definitely helps to keep everything in one place though

qrobit··on Vtm: Text-Based Desktop Environment
I don't completely understand what is meant by "zooming", but kitty[^1] does that: you open ssh connection with `kitten ssh user@host` and pressing <C-Enter> will open another ssh pane in the same tab, you can than IIRC <C-F> to "zoom" and make tab take full window

[1]: <https://sw.kovidgoyal.net/kitty/>

qrobit··on Ask HN: Best Security Practices for Activists?
I would argue it doesn't matter which map app you use if you have google services installed or if you are iPhone user
qrobit··on FreeBSD for hi-fi audio: real-time processing, equalizer, MPD and FFmpeg
Can confirm for LDAC too
qrobit··on Ask HN: Does anyone still use code snippets?
I use snippets almost exclusively in markdown/latex, where typing math is at least twice as fast with snippets.

When doing some quick experiment in C/C++, scaffolding `int main ...` and classes is nice too.

In nicer languages I use snippets only if I forget syntax, than snippet serve as a quick reminder(e.g. for loop in lua)

qrobit··on Cal Newport: What Happened When an Offline Person Tried TikTok
I feel much more time and effort was put into arranging words(2290 words per `wc -w`) than collecting data or asking actual addicted users

Also I don't agree with people being more tolerant towards individuals who ditched social media. In my social circle, you either can't convince people not to use facebook to send you messages or convincing them will be short-lived. You will look weird and closer people(i.e. friends) will directly ask what's wrong with you

qrobit··on Markov Keyboard: keyboard layout that changes by Markov frequency (2019)
It would be 24 if all digits are distinct

It actually drops from 10^4=10000 to 4^4=256 combinations

qrobit··on The biggest blocker to LibreOffice adoption? LibreOffice (2023)
There's RStudio with its WYSIWYG "visual"[1] editor for markdown(ahem, rMarkdown or quarto, which are pandoc's markdown + extensions). It is quite feature-rich albeit I am unsure whether it supports wrapping images. I bet you can write a little inline CSS in a fenced div[2][3] for it, but it is likely not an option for casual user. What it does support is rendering all the goodies in plethora of output formats[4]: docx pdf, html for plain documents; revealjs(html), pptx, beamer(pdf) for presentations. You can even generate websites with it As for spreadsheets, RStudio supports both R and python which are incredibly powerful for manipulating and visualizing table-like data

I won't argue that those are easy tools to learn, but if you do, you have much more power than with MS/{word,excel,powerpoint}

[1]: https://rstudio.github.io/visual-markdown-editing/

[2]: https://pandoc.org/MANUAL.html#extension-fenced_divs

[3]: https://stackoverflow.com/questions/76421783/text-and-image-...

[4]: https://quarto.org/docs/guide/

qrobit··on Why Not Comments
If there is something really important worth rereading over and over again, put «NOTE: » before it and let your editor highlight it for readers of your code
qrobit··on She Made $10/ Month Defrauding Apps Like Uber
https://web.archive.org/web/20240710111919/https://www.wired...
qrobit··on My Month Without a Smartphone
Well, reading blogs without any incentive to earn money is quite addictive too. Same for HN
qrobit··on A teacher did all he could to keep kids off phones
How does that solve the problem?

Judging by my previous addiction, I would say youtube desktop and youtube mobile experience is on par, also I believe TikTok is more comfortable on mobile(I never used it though). Same applies for the rest of social media. When you are sitting in a class and splitting your attention between what is being taught and your distraction, that distraction is unlikely to be some serious activity, because serious activities demand full attention

So you have a choice:

- make-yourself-a-desktop which is time-consuming, has dubious reward(what linux can do that Windows/MacOS can't?[1]) and is not comfortable to use everywhere

- phone that gives you all the means to distract yourself, is always in your pocket and requires no effort

If you don't explicitly aim to avoid the latter path I don't see any reason to choose your method

[1]: Having said that, I would never put windows on a personal computer. Answering my own question, there are certainly needs where Linux fits better, but for general desktop not so much

qrobit··on Active learning is more effective, but students don't think so (2019)
> I imagine many of the students there don't really care about physics.

It might be, but AFAICS the study was conducted at Harvard and I believe students at prestige universities have much more will to study. If they chose physics, they are likely interested in it

qrobit··on You might not want to use your fingertip to unlock your phone
I saw video "do that if you are forced to enter your card PIN" where they tell you to enter your PIN backwards, which will allegedly be accepted as a usual PIN, but additionally notify authorities.

Unfortunately none of the banks I was client of did that

qrobit··on Yes, social media is a cause of the epidemic of teenage mental illness
Aren't most of the replies critic or posted by people disagreeing with you though? Especially on HN, where most users would promote discussion with a reply rather than «Agreed» or «lmao»
qrobit··on AI is not your friend
While android base is open source(and I appreciate google for that), no major phone vendor uses exclusively open source components. They always adds own proprietary apps and services also most of the time google's. IMO no better than an iphone.
← PreviousPage 2 of 3Next →