HNHacker News
TopNewBestAskShowJobs

tmcb

379 karma · joined August 4, 2011

submissionscomments
tmcb··on Do no harm petition: Don't give big tech access to our medical records
Yes. It was poor wording on my part trying to encompass all these situations under a generic description. But these are excellent examples of what I was trying to convey. Thanks.
tmcb··on Do no harm petition: Don't give big tech access to our medical records
The worst outcome is that individuals may have sensitive information in their medical history that could be poorly received by their social circles if it becomes public. In extreme cases, this could even lead to threats on their life.

Consider this: the same argument could be applied to our endeavor to safeguard the secrecy of voting. What is the worst outcome if everyone discovers who you voted for?

Such conclusions are inherently biased because we are unable to accurately evaluate the importance of these very existing protective measures in a civilized society.

tmcb··on Analog computers were the most powerful computers for thousands of years [video]
> Doesn't the inclusion of the digital accuracy checkers then decrease the efficiency, and mean you might as well use a completely digital computer?

Not really. Whatever output the analog computer returns can be digitized with no detriment to its performance, pretty much in the same way a sensor which measures a physical property can have its output fed into a digital system with negligible interference over the original measurement.

Also, the same rationale can be used to probe intermediate steps and automatically check for their accuracy, even if only during validation phase. This is a possibility that was definitely not available, say, 60-odd years ago.

tmcb··on Analog computers were the most powerful computers for thousands of years [video]
I have no experience with analog computers at all, but I think those could be less of a problem as of today. You could plug a bunch of digital sensors/controllers/actuators to the analog computing unit to monitor for those, which was simply not possible in the 60s. Also, you can check their accuracy against their digital equivalents or simulations, which are less efficient but yield better results.
tmcb··on Facebook reportedly researching ways to use encrypted WhatsApp messages for ads
Oh, thank you, I should have paid more attention to the original article as well.

As a complete layman on the topic, I am kind of wary of (fully) homomorphic encryption. Not sure if I understand it right, but it seems to me that anybody in possession of the ciphertext would be able to run it through an arbitrary circuit, even if the result is encrypted and they cannot read it; in theory it would be vulnerable to MITM attacks.

For instance, say Facebook servers are compromised (yes, I know…) and an attacker then runs their own version of the recommendation algorithm instead, presenting fake ads to people that mention specific terms.

I am certainly several steps behind any academic discussions on the subject, so if that is not a problem I am curious to know why.

tmcb··on Facebook reportedly researching ways to use encrypted WhatsApp messages for ads
Not only that, but if they can generate meaningful targeted advertising from encrypted data, that would be pretty a strong indicator that the encryption method is not strong enough. Ideally, encrypted data must be indistinguishable from random noise.
tmcb··on Ada for the C++ and Java Developer [pdf]
That seems to do the trick for an individual predefined operator specification. Thanks!
tmcb··on Ada for the C++ and Java Developer [pdf]
Oh, thanks for pointing it out. Honestly, I was more interested in leveraging the type system than on proper dimensional analysis. I could find no mechanism by which Ada allows the programmer to disable the default operation overloads, so I decided to try that out.
tmcb··on Ada for the C++ and Java Developer [pdf]
I am not an Ada expert, but I came up with this. Please notice that the idea here is not to have the compiler do proper dimensional analysis but simply to avoid the default operator overloading of "*" for the Distance type that also returns a Distance value.

Nothing very high-level, as we need to explicitly manipulate the single-component records, but it does the job.

    with Ada.Text_IO; use Ada.Text_IO;
    
    procedure Main is
       type Distance is record
          Value : Float;
       end record;
    
       type Area is record
          Value : Float;
       end record;
    
       function "*" (Left, Right : Distance) return Area is
       begin
          return (Value => Left.Value * Right.Value);
       end "*";
    
       D1 : constant Distance := (Value => 10.0);
    
       D2 : constant Distance := (Value => 20.0);
    
       -- D3 : constant Distance := D1 * D2;
       -- Does not compile. GNAT returns the following error:
       --   main.adb:21:33: expected type "Distance" defined at line 4
       --   main.adb:21:33: found type "Area" defined at line 8
    
       A : constant Area := D1 * D2;
    begin
       Put_Line ("Area A is " & Float'Image(A.Value));
    end Main;*
tmcb··on MacOS-like Fonts on Manjaro/Arch Linux
Back when I was a Linux user, I used to do almost the same thing. With regards to the fonts, though, I preferred the URW Nimbus familiy[1], which I found by accident on a pre-installed Debian package. I have also experimented with the GNU FreeFont family[2], although I recommend the former.

[1] https://www.urwtype.com/en/shop/?fontshop=datei%3Asearch_db%... --- Sorry I couldn't find a better link.

[2] https://www.gnu.org/software/freefont/

tmcb··on Life Is Made of Unfair Coin Flips
It is really hard for me to reply to that comment.

I would say, first, that I need a definition for absolute information, as I have been insisting that information is defined on mutual terms. If we move past that, though, information about the spin state is unclear before measurement.

tmcb··on Life Is Made of Unfair Coin Flips
> You seem fundamentally confused about the objects of study of information theory.

It is hard to argue against your slightly condescending remark if my comment is not accurate, which is still up to debate. I am sure I could not observe all due formalities even if I tried. But please understand that my comment was written taking into consideration your previous comment, by which I mean:

- You mentioned that the overall approach in Algorithmic Information Theory is to assume Church-Turing thesis as valid. My understanding is that having a standard representation of data is one among the various accidental benefits of that---raw data could pretty well be represented by a Turing machine itself, as well as any other program representation that could generate it as long as it is a computable function. Notice that, in this scenario, talking about the Kolmogorov complexity of a program is valid, as strings of raw data are also represented as programs.

- The "is it an optimal program?" question was a rhetorical device which apparently did not work well, even due to the fact that I did not define what "optimal" meant in this context---I thought it was given. But I can't understand how you came to the conclusion that I was defining the subject of study of Algorithmic Information Theory there.

tmcb··on Life Is Made of Unfair Coin Flips
I am delving into speculation here, since I am not familiar with AIT and I don’t know any other definition of algorithmic information besides mutual information as defined by Kolmogorov which, remember, relies on Kolmogorov complexity but is a separate concept.

My point is that if I ask you, “given a bit sequence A, is it an optimal program?”, your answer would probably be: “I cannot even say if this represents a computable function and, also, is it an optimal program compared to what?”. You must establish a frame of reference such as the Kolmogorov complexity of a given program.

tmcb··on Life Is Made of Unfair Coin Flips
If I could edit the parent comment, I would replace “our brains” by “an observer”, which is common physics parlance.

As far as I know, all uses of information-theorical approaches outside of its original scope also involve a scenario where an observer is originally unable to formulate a model that allow them to draw conclusions from alleged discrepancies. This paper is just one more example of that.

This somehow reminded me of the following quote by Bertrand Russell. “Physics is mathematical not because we know so much about the physical world, but because we know so little; it is only its mathematical properties that we can discover.”

tmcb··on Life Is Made of Unfair Coin Flips
My understanding is that, in order to recognize information, you should at least compare it to the outputs of a source of entropy.

It is a common mistake to conflate information and entropy. A bad analogy to mechanics is that the outputs of an entropy source are the frame of reference, the signal is a body and information might be whatever property you wish to analyze, such as velocity or acceleration.

tmcb··on Life Is Made of Unfair Coin Flips
Indeed, he was not the first at all. The concept of thermodynamic entropy predates, with a huge margin, its information theoretical counterpart.

You make it look like I am saying there is a mystical property of the human brain that backs the validity of information theory, an assertion that has no resemblance at all which what I am attempting to express, and sits in the same category the ones I am trying to debate against do.

What I am trying to say is that there is no meaning in a teleological interpretation of information theory. Things like “the purpose of living organisms is to propagate information” contradict information theory because there is no such a concept as absolute information, you always define it on mutual terms.

tmcb··on Life Is Made of Unfair Coin Flips
I know this is a pretty bold claim, but it is hard to overlook the idea that information theory as proposed by Claude Shannon works as a model of information as related to human cognition, and that it does not imply that information is a fundamental property of the physical universe.

There are several interviews in which he mentioned that the understanding of how the human brain works was one of his main inquiries. His work on AI and the Theseus. And the seminal paper on information theory contains a section in which a fidelity evaluation function is defined with relation to the human ear and brain.

tmcb··on Life Is Made of Unfair Coin Flips
The blog entry is quite good, but it seems to suggest that the breakthrough consists in analyzing living organisms through the lenses of information theory. This is not a mistake in itself, but a shallow perspective nonetheless: information theory is, supposedly, a mathematical representation of the ways our brains make sense of the world around. The blog entry accidentally gives leeway to readers think that there is some intrinsic quality to living beings that transforms dull matter into information propagation channels.

As expected, the article does a better job in setting aside this line of reasoning[1]. What you are really measuring is how information is persisted over time, and over the "background noise" of environment. They specifically talk about viruses at a point, and the usual odd distinction of them being not quite living creatures. When they are found sitting outside their hosts, it is very hard to point out if they actually carry information over time.

[1] Disclaimer: I have just skim-read it.

tmcb··on The Fallacy of Move Fast and Break Things
It is an analogy. I will move on to another one.

Competent developers, on the other hand, have extreme trust on the judgment of their peers. They know they won't break the production build at will; if they ever do, they will use all information gathered to improve the team's infrastructure and their own development process. They are not afraid of using the term, because breaking things is the most valuable thing that you can do for your learning, but, most importantly, they realize that other people's lives and goods are potentially at stake, and act with due diligence.

So, "break things" is not an excuse to break the production build at will and move on to the next task. If competent developers ever find themselves in a team that does so, they try to educate the team and, if that does not work, GTFO.

tmcb··on The Fallacy of Move Fast and Break Things
I usually don’t draw diagrams, but my mind works better with what I usually call “tiny examples”: working code unrelated to the main codebase. Most of the time I have pen and paper with me, but I never do anything fancy with it. The advantage of that is most of the times, when I’m done, I need only to copy the example to the actual codebase with small changes.

This process helps me in so many different ways, and seems so productive, but I’ve never found anybody that uses such an approach. I would love to discuss it further with other people so that I can improve it.

tmcb··on The Fallacy of Move Fast and Break Things
There is also a big difference between a profession that respects the intelligence of their peers and one where people assume that their peers are ignorant and lack common sense.

Surgeons must act fast and be good at multitasking. I bet they are not in a forum discussing if those traits make them vulnerable to hasty decisions and to loss of concentration on the task at hand.

tmcb··on The Fallacy of Move Fast and Break Things
This sarcastic remark is entirely misguided. Broken crap does not generate revenue; working code does. But, oftentimes, no code is as effective as broken code, and takes longer to fix. This is when you should use your judgment. “Break things” is not the same as committing faulty code, it just means that validating some of your hypotheses in a controlled environment may have a higher cost.

Just to make things clearer, I am a programmer myself, and have never been in a management position before. My overall impression is that I learn faster when I make mistakes and need to fix them. Expecting otherwise would contradict most of the experts on human learning.

tmcb··on The Fallacy of Move Fast and Break Things
Thing is, they do, but not in the ways you would expect. Cadavers on medical schools. Wind tunnel modeling. Computer-aided designs. The main difference to those is that the software industry can indulge on testing its own assets with little to no cost, and especially if that does not impact your ability to generate revenue.
tmcb··on The Fallacy of Move Fast and Break Things

  What are the consequences when you try to move fast and not just break things, but fail?
  - It takes longer to resolve incidents.
  - You lose customer confidence and sales.
  - Employees burn out, and you have a high turnover rate.
The main idea behind the approach is making sure that you can move fast and break things whilst minimizing those consequences. It means absolutely nothing if you just let things break; that would be even unethical.

- Taking longer to resolve incidents will allow you to anticipate minor issues that could add up during a worst-case scenario, which is a valuable thing.

- Impact on customer confidence is less critical in earlier stages, when you are not expected to make a profit. Once again, these minor impacts on it will, ideally, bring attention to things that matter.

- Employee burn out is uncorrelated to this approach. It is all about having the right policies in place, replacing blaming by accountability and treating other people with due respect.

tmcb··on Big Ball of Mud (1999)
> All too many of our software systems are, architecturally, little more than shantytowns. Investment in tools and infrastructure is too often inadequate. Tools are usually primitive, and infrastructure such as libraries and frameworks, is undercapitalized. Individual portions of the system grow unchecked, and the lack of infrastructure and architecture allows problems in one part of the system to erode and pollute adjacent portions. Deadlines loom like monsoons, and architectural elegance seems unattainable.

I would argue they are more akin to failed housing projects: competent architects went to great lengths to justify their existence as a cost-effective solution to an existing problem, but this approach didn't work and they offer no better conditions to their residents than shantytowns.

tmcb··on Ask HN: Are We Seriously Done?
My impression is that he meant Gen Z did not have the chance to witness the alleged deterioration of the software industry, hence, can't tell how bad is it.
tmcb··on Ask HN: Are We Seriously Done?
I was thinking about that over the weekend and it crossed my mind that the software industry doesn't the "blue-collar buffers" that other industries have.

This may sound elitist, but it is just the contrary. We are systematically raising the bar to those who wish to join our industry. As a result, a mass of (apparently) highly skilled workers, some of those eager to explore the frontiers of human knowledge, is now responsible for the conduction of less exciting chores.

__Provided we make sure that those with no academic degrees can be offered dignified work conditions__, that must go.

You don't have an Electrical Engineer do you home's wiring.

You don't have a Mechanical Engineer fix your car's fuel injection system.

You don't have a Civil Engineer lay bricks on a construction site.

Is that the sole reason those industries seem extremely mature in comparison to the software industry? Honestly, I don't know, but it is certainly an indicator. The artifacts they produce, and their body of knowledge, is so reliable and powerful that everyone could attend a six-month course on it and make a decent living afterwards.

tmcb··on Children of immigrants have higher rates of upward mobility than US-born
That specific case may seem too radical, but there is some logic in moving to a different country with less promising job prospects if, say, your home country is ravaged by war or by systemic violence.

Also, citizens of countries with fickle economies and high inflation could benefit from having an income in a more stable currency, especially if they are breadwinners for their extended family, in which case they send back money they earn abroad.

tmcb··on Bocker – Docker implemented in around 100 lines of Bash (2015)
Let me know if that is what you are looking for: https://web.hypothes.is/

As an example, WikiWikiWeb (http://wiki.c2.com/) has integration with it. I've never used it, but it seems quite powerful.

tmcb··on An alternative argument for why women leave STEM
I don’t have any compelling evidence at hand, but professionals on STEM fields usually seem compelled to engage on career-related activities off their work hours, which is pretty much impossible during childbearing years.
← PreviousPage 3 of 5Next →