HN user

netmare

205 karma

Just a guy born in the late 70s.

My woefully neglected site: https://efotinis.neocities.org

Some scripts I've written: https://github.com/efotinis/scripts

My HN CSS: https://userstyles.org/styles/117336/hacker-news-slick

"The only way for ${anything} to survive is for the good people to stay" -- Sam Carter

Posts0
Comments92
View on HN
No posts found.

I had the same problem initially. It's sometimes easier on the command line, since piping file and directory objects to commands generally binds their PSPath to LiteralPath using a parameter alias.

IANAL, but they either have to honor the verbal contract (pour an additional cup AND pay $20) OR the contract is void and therefore they can be sued for assault. Of course, the "can" in "if I can" may be construed as "being able to", but that's up to the jury I guess.

That's a great point about stripping authorship. It would be nice if there was some sort of blockchain linking every bit of knowledge to its source. Some people at least would like getting attribution--I know I would. Instead we get a planet-sized meat grinder producing the perfect burger material. Just make sure to add enough spices to make it edible, i.e. not to offend anyone.

The Wikipedia entry on text-based user interfaces uses IT as an example of a text-mode program featuring a pixel-accurate mouse pointer. The "citation-needed" had always been annoying me, since I knew it was true, but I couldn't prove it. Now, we can finally link to IT_MOUSE.ASM and be done with it.

You could then fix the inverted x axis by using the mouse on the underside of the table. Works fine with optical mice, but a ball mouse might require fiddling with gravity (or magnets, but that's no fun).

I still prefer it the way it was when I started using computers with DOS 6.x and Windows 3.1: underline in console, bar in GUIs, block in both with overwrite mode. Always blinking of course. My problems with modern programs are 1) overwrite mode is usually not implemented and 2) moving the cursor does not reset the blink timer. The first I can understand (although it's trivial to do), but the second results in the cursor getting invisible when moving while pressing the arrow keys. It's the little things...

David Crane, the creator of Pitfall, explains it all very nicely in a GDC Classic Game Postmortem [1]. I'm linking at the relevant timestamp, but the whole video is pure Atari 2600 goodness. The full Postmortems playlist is quite enjoyable too. I particularly liked the talks about the original Deus Ex, Myst, Loom, Adventure, Marble Madness, Ms. Pac-Man, Paperboy, Lemmings, and more. I find these videos very soothing and nostalgic. Got to rewatch them now...

[1] https://youtu.be/tfAnxaWiSeE?list=PL2e4mYbwSTbbiX2uwspn0xiYb...

I "solved" that by using two assembling passes. The first had dummy jump/call addresses in order to determine the code offsets of labels. Then I would resolve the relative offsets, replace the target labels with offset deltas and reassemble.

I used that trick to speed up my QBasic programs with graphics, string and list handling, etc. It was one of the first rewarding times in my programming "career" and it actually made me feel proud of myself.

An X-Mouse mode was available since at least Win98SE [1]. It was hidden and you had to enable it in the Registry [2], typically via Tweak UI.

That mode would move the input focus without actually clicking on another window. You could see the caption bars change color accordingly, but the "temporarily" focused window could be set to either stay in it's original z-order or moved to the top.

Windows 10 uses a different method: it doesn't change the focus and only sends mouse scrolling events to the target window. That's less powerful, but probably more intuitive for us non-*nix users.

[1] https://stackoverflow.com/questions/70599589/how-do-i-turn-o...

[2] https://superuser.com/a/19643

There's MMCE†, the spiritual successor of Marble Marcher. I've only played the original some years ago and it was pretty awesome. You simply have to move a ball across a 3D fractal surface that's constantly evolving in real-time!

Sadly, I can't run MMCE to test, since I'm using a PC and gfx card from 2009.

†: https://michaelmoroz.itch.io/mmce

They were probably referring to the random delays, form field wiping, focus-jumping and silly back-end errors which are prevalent in "healthcare UI/UX".

These are all my scripts. They're object-oriented, self-documented, tab-completable and a `hg clone` away. They're simply more polished versions of what I could do on Windows with built-in PowerShell (and FFPROBE of course):

    F:films> filter probe_format {
        ffprobe $_.fullname -v error -show_entries format=duration -of json |
            convertfrom-json | % format
    }
    F:films> ls -file -rec | ? extension -in .mp4,.avi,.mkv | probe_format |
        measure -sum duration | % { New-TimeSpan -Seconds $_.sum } | % tostring
    15.12:18:09  # same result as before (15days+12hours, etc.)
Even this makes much more sense to me than the Unix equivalent. I realize that Bash/AWK was better than CMD.EXE batch files, but, come on...

As long as we're golfing: In PowerShell, using my personal script library:

    F:films> ls -rec -file | gec video | gvi | ndur
    372:18:09
where:

- `ls -rec -file` gets all files recursively under CWD (F:films)

- `gec video` selects video files via extension (gec -> Get-ExtensionCategory)

- `gvi` uses FFPROBE to get video info in custom object (gvi -> Get-VideoInfo)

- `ndur` sums Duration property of objects and converts seconds to 'hhh:mm:ss'

Most people I've shown this have found the syntax and aliases confusing and non-intuitive. They prefer the find/xargs/awk incantations, which, I'm told, are more elegant, correct and precise. After that, I'm usually speechless.