HNHacker News
TopNewBestAskShowJobs

thomasz

2,066 karma · joined February 5, 2010

submissionscomments
thomasz··on Windows 98 icons are great (2015)
That is just nostalgia. There is something to be said about the icon design, but you really wouldn’t want the II of that era back. Nowadays you start an application by clicking a fixed location in the task bar or by pressing the windows key and typing the first two or three letters. Back than, you had to navigate a ridiculous start menu tree. Windows didn’t snap to the borders, task bar entries would move around. There was no search beyond the file system, so you either needed a ton of luck, a ton of time or a superhuman memory to change some obscure settings.
thomasz··on The five-year engineering feat Germany pulled off in months
The foreign conception of Germany as a paragon of effectiveness always did sound weird to me. The whole political system is set up to require broad consensus to move anything forward. That makes it really difficult to get any meaningful change out of that political system, unless there is a real, tangible pain that is felt throughout most of society. On the other hand, it should be noted that this approach has important positive effects.
thomasz··on Is America Stealing TSMC?
Taiwan is the key part of the first island chain[1] that prevents china from projecting hard power beyond their immediate neighborhood. It is way more important for the American hegemony than Ukraine for example. I really do not think that TSMC is the deciding factor here.

[1] https://en.wikipedia.org/wiki/First_island_chain

thomasz··on I liberate the ending to Minecraft from Microsoft and give it to you
He got incredibly lonely, lost all his friend, and got ostracized over posting some alt right and Q shit on twitter.
thomasz··on Diagrams about how to negotiate with people around the world
Absolutely not. To a degree that both parties might walk away feeling a bit disgusted.
thomasz··on Shutdown of the court system as a possible factor in the crime wave
You want to replace qualified with unqualified labor. That's not going to be competitive, or let alone possible due to the code violations that a bunch of untrained guys will inevitably produce.
thomasz··on Bitcoin mining becomes unprofitable as BTC price falls to average cost of mining
Most pyramid schemes do not require massive amounts of energy.
thomasz··on Germany paying $5.5B for Intel fab
It is actually pretty easy to provide a proof of effectiveness for vaccines. The theory of peace through interconnected and colonies is more complicated. All we have are arguments, and these are not even that convincing. Every trade connection requires compromise, and risks one party feeling taken advantage off. Often rightfully so.
thomasz··on How illiterate people use their mobile phones (2012)
Is it online somewhere?
thomasz··on FlyZolo – Youngest Woman Solo
> So what? Yes people are richer, more gifted, more athletic than others. Can't we celebrate an achievement because not everyone can do it?

Because one of these is not like the others. You can play Soccer with four stones and a can. Consequently, legends have arisen from the working class, sometimes from abject poverty. We can say with certainty that there are not thousands upon thousands of people who could run circles around Cristiano Ronaldo. In a sport that excludes 99% of the world's population, we can only guess.

thomasz··on The Windows 11 taskbar is an annoying step backward
Windows 7 with the dock, searchable launcher and hotkeys for placing windows was when Windows became quite usable. I’ve never heard people complaining that it was ruined, just moaning about having to relearn stuff. But that is inevitable. We would still be using stone tools, if we had listened to these people in the Neolithic.
thomasz··on Harvard won’t require SAT or ACT through 2026 as test-optional push grows
Discrimination happens when you treat equals as unequal, or unequals as equal. There is a world of difference between "we already have enough asian compsci majors", and "we already have enough compsci majors, but there is room for a sociologist".
thomasz··on Italy fines Amazon record $1.3B for abuse of market dominance
Exactly. For a counterpoint, compare what VW had to pay in the US to what they had to pay in Germany.
thomasz··on I resigned from Twitter
Seriously. If GM goes belly up next week, who’s going to be without health insurance for the foreseeable future?
thomasz··on New in C# 10: Easier Lambda Expressions
Local inference is a gift sent from heaven, global inference not so much. Reading OCAML (and F#) is exhausting because you have to look into the implementation of each function (or into a separate interface file) to figure out how it's supposed to be called and what it is going to return.
thomasz··on Making life easier for newcomers to the .NET ecosystem
PHP is way more complicated because you have to deal with apache, php.ini and what not.
thomasz··on Classes often aren't the simplest tool for the job
In practice, the difference is pretty small in C#. For almost all purposes classes act like a namespace (System.Math), and can be imported like one. Former 6 will add even more syntactic sugar, so that methods can be defined outside classes.
thomasz··on Job vacancies surge past one million in new record
It's not like the working class doesn't have to eat. In fact, they will be hit hardest by increasing food prices.

> Indication of some degree of food insecurity was reported by 14.2% of the sample and tended to be higher amongst younger age groups, those on lower incomes, and home renters (as opposed to owners).

https://academic.oup.com/jpubhealth/advance-article/doi/10.1...

I somewhat doubt that we're talking about upper/middle classes here.

thomasz··on Scientists find an effective solution for the three-body problem
https://en.wikipedia.org/wiki/The_Three-Body_Problem_(novel)
thomasz··on Demand for air conditioning is set to surge by 2050
Melt the poor!
thomasz··on What if JavaScript had a synchronous async flavor?
There is no inbuild async nature. It just did not have a stdlib whatsoever, so node could come along and offer a completely async one. There were async server frameworks in python before, like twisted and tornado.

For a long, long time, the language itself lacked almost all of the niceties that make async programming bearable. Node code quickly devolved into a giant mess of callbacks nested twenty levels deep.

thomasz··on Windows 96
Pretty sure it stopped being helpful with Windows 2000.
thomasz··on Windows 96
Thanks, that would have been really helpful advice a quarter of a century ago :)
thomasz··on An update on the recent issues surrounding a Reddit employee
There is a galaxy of difference between offensive speech and child rape.
thomasz··on Was German unification inevitable?
> My sources are mostly the 4-part netflix drama[...]

Seriously!?

thomasz··on Dr. Seuss books deemed offensive will be delisted from eBay
In these situations, malicious and over the top affirmation is the safest and most effective form of critique. See Laibach and NSK on how it’s done. Woke hyperliberalism With all it’s terrible contradiction should be an easier target than The authoritarian Socialism of the 80s.
thomasz··on NYTimes Peru N-Word: My side of the story, in four parts
A lot of these people, including McNeil, have written submissive apologies.

https://twitter.com/marcatracy/status/1357806202277797889/ph...

thomasz··on Ultima VIII – How to destroy a gaming franchise in one easy step
https://en.wikipedia.org/wiki/Decimal_separator
thomasz··on Why SELECT * is bad for SQL performance (2020)
It's a tradeoff. You might want to encapsulate database access and deal with objects instead of relations in most of your stack, which leads to these inefficient access patterns. Usually it doesn't matter. And if it does matter, you are probably doing something harmful like querying in a loop, n+1 etc.
thomasz··on F# is gaining independence from .NET
No, not necessarily. Curried functions have their own problems because they are missing the vital parameter names. But that's not what I meant. Think of the classic memoization example (written without a compiler at hand...)

    let createMemoizer f =
        let cache = Dictionary<_,_>()
        let f' = fun x ->
            match cache.TryGetValue(x) with
            | (true,value) -> value
            | (false, _) ->
                let result = f x
                do cache.[x] <- result
                result
        f'
    
The signature is ```createMemoizer (f:'a->'b) -> 'a->'b```, which is not very telling, especially if it is returned by yet another function, so that even the createMemoizer name is lost. In classic OO, I'd just get a Memoizer object that carries vital documenation and what not with itself, as it is passed around. It's no even that much longer, it's just not as elegant to use.

    class Memoizer<TINPUT,TOUTPUT> {
        Dictionary<T,TOUTPUT> cache = new Dictionary<T,TOUTPUT>();
        Func<TINPUT,TOUTPUT> f; 

        /* ... */

        public TOUTPUT Invoke(TINPUT parameter) {
            if (!cache.TryGetValue(parameter, out var result)) {
                result = f(parameter);
                cache[parameter] = result;
            }
            return result;
        }
    }
← PreviousPage 2 of 19Next →