Remix.run Logo
burnt-resistor 3 days ago

<old-guy-high-school-glory-days-and-nobody-today>

Reminds me of the pain of intentionally building a compiler for Java 2 (subset) to MIPS compiler by writing out each AST node class by hand. And, I did it twice, once in C++03 with bison and flex and again in Java 2 with CUP and JFlex... each was developed to build and run as a host portably across Solaris (sparc), Linux (x86), HP-UX (68k), SGI (MIPS), and Windows (x86) with compiled with targets run on the SPIM emulator. It did have dead code, dead string, and dead variable elimination, but that was as far my optimization passes went. I recall the only build tool I used for each was the portable subset of make without GNU extensions.

Speaking of reinventing the wheel, in 1998, I built a flexible almost framework for a "portable" generic installer using Java 2, JWT (native GUI controls), and JNI on Windows to create a program group and desktop shortcut icon. The hilarious part was shipping a full JRE on a CD. It took forever to load but the additional time seemed impressive for expensive, niche software in a way similar to the now fake "loading..." delayed progress bar.

</old-guy-high-school-glory-days-and-nobody-today>

jesse__ 3 days ago | parent [-]

Are there actually fake loading bars these days? I thought software was mostly just slow and shitty ..

allthetime 7 hours ago | parent | next [-]

If you have a user flow that requires interaction, hits an API that returns instantly, and then changes something fundamentally, it is better UX to make the user wait for a couple seconds with an animation and then some success state indication. If it all happens at once it can be a bit jarring or confusing.

burnt-resistor 3 days ago | parent | prev | next [-]

https://news.ycombinator.com/item?id=16289380

ronsor 2 days ago | parent | prev [-]

Users like to build up anticipation.