HNHacker News
TopNewBestAskShowJobs

edejong

3,467 karma · joined August 16, 2013

[ my public key: https://keybase.io/edejong; my proof: https://keybase.io/edejong/sigs/dbfU-EzZZVtdlJm9N_urPCOxlJ3jNcPU-08trjAA5F8 ]

hnchat.com:QC6b1eMuHsLMnBE6wPaw

submissionscomments
edejong··on The Netherlands has universal health insurance – and it’s all private
Oh yes, it is going great! Since 2000, per capita expenditure has nearly doubled [1].

[1] https://www.statista.com/statistics/575988/total-health-expe...

edejong··on Using mixed integer programming to assign air cargo to flights
In addition to this remarks of the sibling comment, we don't always have a well-understood objective function. For example, how much is lunchtime worth compared with time outside normal hours? What we can say is that there is a certain 'badness' to it, which should increase exponentially or polynomially as we thread further outside of our preferred domain. These are known as soft constraints.

A fundamental problem with soft constraints in MIP is that we cannot create cuts in the conflict graph. Technically, everything conflicts with everything else, but at very high badness. So, we then have to decompose the problem in a preconceived way, such as on geographical boundaries, time boundaries or using heuristics. This engineering can be challenging, especially given that MIP is often hard to debug.

So, like the sibling comment: I prefer meta-heuristics over constraint logic programming in many cases, but I do not deny that CLP/MIP can be very useful as well.

edejong··on Using mixed integer programming to assign air cargo to flights
In my experience, each sufficiently complicated model becomes non-linear in some respect. For example, you might want to work with margins for time-slots that are non-linear but smooth.

So, even though I've worked with constrained linear programming in the past, I tend to prefer algorithms with meta-heuristics, such as simulated annealing or Tabu search. Although this might not provide the 'best' solution, it provides a wider range of modelling tools.

To elaborate a bit on a use-case. Lets say we want to plan a high-school roster. Teachers might have a maximum of 8 hours per day of work, but if we make a hard cut-off at that time, we might miss an interesting 8:15 schedule that gives a teacher more time to have proper lunch. If, furthermore, we do not break the 40 hr./week rule, it might be a workable schedule. Also, it provides the search algorithm a usable gradient, so the search space becomes smooth and easier to navigate. Finally, if we provide several top solutions, we give a human planner information on how the problem is (over-)constrained.

edejong··on Students defeat new 'Barnacle' parking clamp, skip fines and get free internet
Solutions:

1. Place dorm rooms nearby

2. Subsidize local public transport companies

3. Build more parking spots

4. Offer more content for students to watch at home

5. Take in less students if you don’t have the capacity

6. Organized ride sharing programs.

7. Off-campus parking with bus services

edejong··on A Graduate Course in Applied Cryptography
I always wondered if there was a hidden way to get access to Cryptography II, using knowledge from the first course. Never could find any hint for that or anything.
edejong··on CalVer: Calendar Versioning
It helps to have the versioning ordered correctly, so I'd zero-pad the ${count} variable, like so:

    printf "%s.%03d_%s\n" $date $count $commit
edejong··on How I automate my home
Philips Hue reverts to being a switch when controlled with the ‘normal’ switch instead of the controls that we mount right above the old switch. Works like a charm!
edejong··on Focus has become more valuable than intelligence (2018)
He was a great inventor, yes. But the results of all his efforts, in mathematics and engineering were fruitless for him. He died in debt, a disillusioned man. And why? Perhaps a good biography of the man will enlighten you.
edejong··on Focus has become more valuable than intelligence (2018)
I've noticed the same things! The same happens when I improvise piano. In addition, I cannot attach emotionally (empathy) to others for close to an hour.
edejong··on Focus has become more valuable than intelligence (2018)
Funny thing is that Tesla made a lot of interesting inventions and discoveries, but was barely able to keep the focus to bring them to fruition. He had his lab busy with widely different experiments, oftentimes conflicting, leading to huge setbacks. Tesla is the prime example of a great mind with bad social skills and too many things juggling at the same time.
edejong··on Focus has become more valuable than intelligence (2018)
Thanks, your answer resonates with me. To add to it, a life goal doesn't need to be exorbital (pun intended). Just know what you are working towards, and take pride in the steps towards your end goal.
edejong··on 1950s Smart Homes and the Longevity of Design
There have been many projects in the eighties that reserved areas of neighborhoods which dropped most building regulations as you describe them here, including one in Emmen, where I was born. The results are not pretty: garish, impractical, unconnected with the surroundings. Although, perhaps amenable to the first owner, once the buildings are listed for sale, few seem to appreciate the builders unique taste. Furthermore, even though some of the houses are nicely built, many of them are just out of place: a Mediterranean house next to a Scandinavian, followed by a ‘large wooden shed’.

Newer projects have more appeal, where a larger group of families work together to form a connected architectural plan, often themed with energy neutral constraints. Perhaps that could be an option for you as well?

Finally, if you buy a large plot of land (villa style) you can do almost anything you like, especially because you are probably influential and able to convince the local government of your plans.

edejong··on Ask HN: My company wants my side project. What can I do?
And both of you will be better off if that thing you work out is sound and in both your interest. Perhaps you’re both happy now, but what about next year? What about when you move to another company? Take the advice: consult with a lawyer.
edejong··on Strongly Typed Events
s/json/XML/ s/json schema/XSD/

And we’re full circle.

I was hoping for some theoretical event-based systems approach, using Pi-calculus to prove correct systems composition.

edejong··on Amazon Ring went from a smart doorbell company to a surveillance network
I have a private ZigBee network, a Z-wave net, another home brew 868 MHZ net and Philips Hue (also ZigBee). All connected to OpenHAB. Which of these IoT networks is a botnet?
edejong··on How can you know what news is real?
No, I am not in agreement. We should always be careful with the information we gather and keep a focus. That’s different from: more information is always better.

I am not a native speaker. Where did you thought I was abrasive?

edejong··on How can you know what news is real?
Personally I am of the opinion that one should always consider the knowledge one gathers similarly to the food one eats and the friends one keeps. One burger doesn’t make you fat, nor does one bad friend make you criminal. But we’d better make conscious decisions lest we’ll be a 200kg drug dealing gang member who believes the earth is flat.
edejong··on How can you know what news is real?
No, the statement 'knowing a thing is almost always better than not knowing it', is balderdash.

An individuals knowledge is like a garden. It needs to be kept in order and it takes time to maintain. There is simply too much information being produced and a limited bandwidth to ingest this information. To select the right information is of the essence. Form a strategy of knowledge gathering. For example, one can decide to pick a topic that is not well known, in order to be a valuable amateur expert on that topic. But, just ingesting information without any rhyme or reason is a recipe for disaster.

edejong··on Gitlab was down
But git is not truly distributed. Each 'node' in the network does not automatically gets access to new trusted nodes (remotes). Management of the distributed nature is still manual, meaning that your CI/CD system cannot suddenly pull changes from your local developer machine, instead of GitHub/GitLab/Gerrit/...

In an ideal world, each commit is cryptographically signed and automatically distributed to a large number of nodes. Only correctly signed commits would be picked up by CI/CD and the build artifacts would use the digital signature of the code to further deploy the resources in a trustworthy manner.

edejong··on The 40% Keyboard
Heck, Dvorak is used way too much. Coleman it is.

(disclaimer: typing this on a Dvorak layout)

edejong··on “What Alan Kay Got Wrong About Objects”
- distribute resources at multiple locations

- reverse index to resources

- Easier to move resources

- Cryptographic signatures on id’s

edejong··on “What Alan Kay Got Wrong About Objects”
Yes, it was rather late yesterday. It is actually the dichotomy that a URL should be a unique resource identifier for a specific resource, but unfortunately it isn't. When we place a link, we want to be able to query on that specific URL (or URN, as it has become). We want to do late binding, since it is cheaper and more powerful.
edejong··on “What Alan Kay Got Wrong About Objects”
Yes, but it still presupposed on a specific location. Alan Kay (together with many other experts on system design) is a proponent of late binding. To do effective late binding, we should be able to route requests to the correct location in a distributed fashion. With a (regular) URL we make a weird amalgam of DNS (with IP) and path of the object. As we've learned from the transition from XML-RPC/SOAP, unnecessary complexity removes value of the system. I believe Alan argues that URLs introduce unnecessary complexity which can be tackled by lower OSI layers. However, to make that work, we need globally unique identifiers and routing, using IPv6. We want names (and/or identifiers) to be the fundamental element of our systems, instead of resource locators.

In other words, you want to be able to walk into any library and use ISBN as the underlying identifiers, instead of the Dewey system, which is not broadly applicable. You might get the Dewey number from the ISBN and vice versa, but the ISBN resource assigned to a book resource is the fundamental linking pin.

So, when we link from an article, we want to be able to say: "it is this specific article I am linking to, you figure out how to get access to it." This will be much more durable than an ephemeral URL.

edejong··on Can We Just Cut to Infrastructure-as-Declarative-Code?
Well, I'd be pleasantly surprised to know it is Turing complete. For example, TeX is (IMHO) very unpleasant to use, but due to it being Turing complete, its abstraction LaTeX is much easier.
edejong··on “What Alan Kay Got Wrong About Objects”
I guess he meant: browsers shouldn’t need features. It should be a network effect. It’s good to make a distinction between design principles and their resulting effects. Most of what I described before were effects of bad design.
edejong··on “What Alan Kay Got Wrong About Objects”
> The reason Google and Facebook dominate the internet has little to do with technology and much to do with economics, namely scale economies and network effects.

And the network effects can only happen because there is a tight coupling between the data (contained and scrambled within the HTML page) and the presentation. Had data and presentation be decoupled, I could have combined network information from various providers and present it to me in one overview.

> I'll grant that CSS is a mess. What else?

Everything. The security model, the fact that the user has limited control over their identity (and it is not build into the protocols), the multi-threaded nightmare, no component standardization, very limited integration with low-level OS systems, the 'one-tab is one context' metaphor, the box-model, the misfit of page-to-interaction (and the history API), the non-existent voice interaction, the color-model, the DPI/pixels/ems transformations, the invisible local storage we barely manage, the resource utilisation, the lack of uniformity in the programming model, the peer-to-peer communication (WebRTC does not count, since it is not standardized and has quite some flaws), the lack of (easy) customization abilities (high-contrast websites), the limited math-rendering, the enourmous complexity... I could go on.

> You can create multiple URLs that point to the same object.

Yes, but they would not denote equivalence. I could use a redirect, but then one system needs to know the representation of the other. It would be fundamentally asymmetric.

Also, it would contradict the term Unique Resource Locator.

edejong··on Can We Just Cut to Infrastructure-as-Declarative-Code?
Are you sure Terraform is Turing complete?

(edit: typo)

edejong··on “What Alan Kay Got Wrong About Objects”
"HTML on the internet has gone back to the dark ages because it presupposes there should be a browser that understands its format."

This is the fundamental reason the modern internet is centralizing to a couple of entities.

"This has to be one of the worst ideas since MS-DOS."

Yes, the modern browsers have taken us back at least 20 years when it comes to UI design, component based programming and distributed systems. The web is an endless stack of kludges, held together by duck-tape. I can back this up, in case you don't believe me.

But, we should ask ourselves how it became such a stack of kludges. And I think Alan hits the nail on the head.

"At the very least, every object should have a URL. I believe every object on the internet should have an IP. It represent much better what the actual abstracts are of the physical hardware to the bits. "

Beautiful insight. The URL does not scale from a systems perspective. In my designs, I see myself often using UUIDs and negotiation to transfer knowledge about entities. The URL (and RESTful communication) is an annoyance. It fixates the location to something arbitrary. I can only use one hierarchy to denote the same object. I cannot easily renegotiate how the same things are named in my systems. And, the worst: the type of the object is often included in the url. `https://foo.bar/person/123` fixes the type 'person' to the object 123.

URLs nowadays are an abomination. Most are not durable, contain excess information and suffer from projecting the information against an arbitrary axis.

Finally, all developers should at least once have implemented their own compiler. It is not a hard experience at all and can be done in around 100 hours by someone with a medium skill in programming using a good text-book. It gives a truly fundamental insight into systems design and should simply not be skipped.

W.r.t. tools: I assume any programmer worth his salt has build at least some of their tools! Perhaps I should start asking this at interviews. If you don't understand how your tools are built, how can you even begin thinking about building tools for others? And how can you understand, without attempting a crude build yourself? All the hard things are already done, the literature is there, the books are written.

So, anyways, you make a bold claim: "most of what he said was wrong." This is awfully vague, I am afraid. Lets make it a challenge. Except for him making predictions, I challenge you to come up with a couple of statements from Alan Kay, and we'll discuss it.

edejong··on “What Alan Kay Got Wrong About Objects”
The original ideas behind Smalltalk did allow a void, as in modern day Kafka would be a void or a multi-cast IP address would be a void. There is no clear receiver, there can be multiple receivers or there can be none. Communication is ephemeral. Also, even with the single dispatch system of Smalltalk, we can easily model something similar to the Blackboard system.
edejong··on “What Alan Kay Got Wrong About Objects”
Seduced sounds like it had a viable alternative. At the time, machines were mostly single-threaded, especially in the learning environment he was trying to conceive. In that case, there is no need for actor-like communication, except for mindset of it.
← PreviousPage 8 of 29Next →