HNHacker News
TopNewBestAskShowJobs

funcDropShadow

1,262 karma · joined March 27, 2019

submissionscomments
funcDropShadow··on The Recursive Book of Recursion
Wow, how can you one come up with the impression that induction isn't a problem solving technique and be in a position to decide about math or cs curriculum? Induction is one of the most fundamental proof techniques in mathematics. And every program is isomorphic to a proof in some logic. I'll skip the details, lookup Curry-Howard isomorphism if interested. But that means if you develop a mathematical intuition of induction you also develop an intuition on programs, usually on complicated programs. That is enormously helpful in programming, unless you only want to program CRUD services and spreadsheets.
funcDropShadow··on The Cognitive Style of PowerPoint (2006) [pdf]
> In the age of LLMs there is no point in writing long prose. The more content is generated ...

Wow, do you really equate long prose with "generated content"? Long prose is novels, deep non-fiction books, long letters, and much more. You can like them or not. In comparison "generated content" is sugar-coated garbage, like way too many social media posts. There was never any point in reading such "generated content".

funcDropShadow··on JEP 483: Ahead-of-Time Class Loading and Linking
It should benefit, if namespaces are AOT-compiled by Clojure.
funcDropShadow··on Developing Developers (2015)
> The level playing field is interesting.

I've been an assistant to a professor teaching introductory programming at a university. And we chose ML (later Haskell), as the first programming language, exactly because of this reason. Weaker students with no programming experience can build their knowledge on top of their mathematical knowledge from school. Whereas stronger students, with lots of programming experience, were challenged to reconsider their assumptions. Both groups did learn significantly.

> Your math department doesn't begin with addition

Well, ... actually, ... "Mathematik für Informatiker I" (mathematics for computer scientist I) did start with groups, then abelian groups, i.e. addition.

funcDropShadow··on Developing Developers (2015)
When was the last time anybody cared what HR had to say? I've never encountered an HR department whose primary role wasn't to indoctrinate or to create roadblocks for everybody else.
funcDropShadow··on School smartphone ban results in better sleep and improved mood: study
Because many people will read different content than in physical book form.
funcDropShadow··on Amazon Aurora DSQL
In case it scales to Facebook's scale. Better safe than sorry.
funcDropShadow··on How to Study Mathematics (2017)
> The first thing you have to get used to when moving from school to uni is being utterly lost and defeated.

Very well said, at the university where I studied, there was a pre-semester math repetition course. It was a week long and started with addition of natural numbers. After two days, everything I learned in 13 years of school had been repeated. That was a brutal resetting of expectations. But it made everybody clear, that this is not school anymore. That a different kind of work and focus would be necessary.

funcDropShadow··on How to Study Mathematics (2017)
The point is that you gradually get better at it. And by gradually I mean exponentially. If you start with a problem at then end of the book, it'll be very difficult.
funcDropShadow··on How to Study Mathematics (2017)
> Like how they learn biology.

How do they learn biology?

funcDropShadow··on Lies we tell ourselves to keep using Golang (2022)
As almost always, we programmers / software developers / engineers, forget to state our assumptions.

In closed-world, system-software, or low-level software you want to have your kind of knowledge about everything you call. Even more: can it block?

In open-world, business-software, or high-level software it is often impossible or impractical to know all the ways in which a function or method can fail. What you need then, is a broad classification of errors or exception in the following two dimensions: 1. transient or permanent, 2. domain or technical. Those four categories are most of the time enough to know whether to return a 4xx or 5xx error or to retry in a moment or to write something into a log where a human will find it. Here, unchecked exceptions are hugely beneficial. Coincidentally, that is the domain of most Java software.

Of course, these two groups of software systems are not distinct, there is a grey area in the middle.

funcDropShadow··on Mark–Scavenge: Waiting for Trash to Take Itself Out
> Maybe we could have multiple heaps defined

As far as I understand, Erlang has one heap per actor. The cost is that messages have to be serialized to pass from one actor to another. But it means there are lots of independent, often tiny heaps which don't need very complicated GCs.

funcDropShadow··on My Resignation from Emacs Development
No, Emacs has lots and lots of config variables and functions which depend on the exact mode used. So, if you switch the major mode, you also have to switch to other config variables and functions. And as far as I see it, c-ts-mode is far from being a drop in replacement for everyone that currently uses c-mode.
funcDropShadow··on Is the 80 character line limit still relevant? (2008)
I wouldn't say, I hate tabs. But I strongly prefer not using tabs in source code. Let me explain why. There are some languages and coding styles where it doesn't really matter. E.g. when you are always indenting by multiples of some indentation length. But there also languages and coding styles where you want to align stuff.

Consider this example:

    def someFunctionName(Int firstParameter, Boolean secondParameter, String thirdParameter)
Let's say, that line is too long. We could format it like this:

    def someFunctionName(Int firstParameter, Boolean secondParameter, 
        String thirdParameter)
    
Or we could format it like this:

    def someFunctionName(Int firstParameter, Boolean secondParameter, 
                         String thirdParameter)
Or event his

    def someFunctionName(Int firstParameter, 
                         Boolean secondParameter, 
                         String thirdParameter)
In the second two variant the indentation depends on the length of someFunctionName, so it is not necessarily a multiple of four or whatever your tab width is.

There are other similar situation when aligning in multiple columns, etc.

funcDropShadow··on Is the 80 character line limit still relevant? (2008)
Is there any editor with an intelligent soft-wrap? I.e. it doesn't just wrap at the end the window. Line breaks should be introduced so that the tree structure of the code (think AST) becomes obvious. That improves readability a lot compared to breaking lines at a fixed column.
funcDropShadow··on My Resignation from Emacs Development
It also messes with config files of lot's of users.
funcDropShadow··on My Resignation from Emacs Development
These names are not internal names, like identifiers in the C source code of vim. The names in question appear in lot's of users Emacs configuration files. And Emacs has been extremely reluctant to change the meaning of those names in the past. Doing it here contradicts an important expectations of long time users. This is not only about "name ownership" of some mode's maintainer.
funcDropShadow··on What's New in POSIX 2024
Of course, there is an xkcd for that: https://xkcd.com/1172/
funcDropShadow··on Improving Xwayland window resizing
The security model is not the only factor, but it is one very important factor. Why do I have to open Moebius sync to keep syncthing synchronization running? Why is the whole landscape build under the assumption that a cloud storage is more trustworthy than local storage?

> But requiring user permissions for apps to do shady shit is a good thing.

funcDropShadow··on Improving Xwayland window resizing
> You would be surprised how many content creator gets by with a single ipad.

Can you name one professional software developer?

Probably, you can. But I don't want to limit myself to that sub standard environment. I love my iPad for some activities, for others iOS is just impractical.

funcDropShadow··on Improving Xwayland window resizing
Why? I want to have some applications that can always see the mouse cursor like, xeyes. Because that allows me to implement a better customized desktop environment.
funcDropShadow··on Improving Xwayland window resizing
You think enforcing the one true rights model to everyone is more empowering? We have obviously different definitions.
funcDropShadow··on Improving Xwayland window resizing
Why is X11 unsandboxable? A similar but reverse approach to Xwayland, something like waylandX could be used to be part of the overall sandbox approach to run untrusted applications. That would have the advantage that the severe restrictions and feature degradations of wayland are only applied to those untrusted sandboxed applications, not everything.
funcDropShadow··on Improving Xwayland window resizing
... while introducing lot's of other jank that was solved before.
funcDropShadow··on Improving Xwayland window resizing
But wayland merges more components into one server than X11 did. Therefore, there is a need for more wayland server then there was a need for X11 servers.
funcDropShadow··on What do you visualize while programming?
I think, I am similar. I've discovered source minimaps when they came out first almost 20 years ago. And I loved the sense of spatialness they added to the code .
funcDropShadow··on Show HN: X11 tool to share a screen area in any video meeting
Whether the CPU is busy because of a loop with a sleep depends on the ration of the sleep time and the time to perform the rest of one loop iteration. Doing stuff in a loop iteration that takes 1min and then adding a ms sleep will not drop CPU usage a measurable amount.
funcDropShadow··on I've tracked every piece of clothing I've worn for three years (2021)
Can you recommend any good resource on how to start seriously with barefoot running or walking?
funcDropShadow··on Why I still blog after 15 years
If maximizing value is not the goal, then why should Marxism redefine value in a counter-intuitive way?

Btw, "Labor" cannot be in charge, outside the UK at least, because Labor is an abstract concept. In Marxist societies people are in charge that pretend to have the laborers best interest in their hearts. But as they "Some are more equal than others."

funcDropShadow··on Attacking UNIX Systems via CUPS
Universities are full of people with Linux desktops with public IPs and that are printing all the time: papers, their own and other's.
← PreviousPage 3 of 29Next →