HNHacker News
TopNewBestAskShowJobs

CodeMage

6,770 karma · joined February 26, 2009

submissionscomments
CodeMage··on Some scientists are taking a DIY coronavirus vaccine
Thank you.
CodeMage··on Some scientists are taking a DIY coronavirus vaccine
From your other comment, I see you're in the US. Do you mind if I ask which state?
CodeMage··on Some scientists are taking a DIY coronavirus vaccine
I don't get it. Isn't "every MLB player who agreed to play" too small a sample size to be useful?
CodeMage··on An overview of V8
Okay, that matches my experience with V8. Thanks.
CodeMage··on An overview of V8
> However, V8 creates an environment of a single thread for each of JavaScript’s execution context. The rest is kept under its control.

Maybe it's because I'm not a native speaker, but to me this sounds like they're saying the V8 creates one thread per execution context. I've been working with V8 for months now and this doesn't make any sense to me.

Can someone clarify whether I simply misunderstood the phrasing?

CodeMage··on New Facebook tool allows employers to suppress “unionize” in workplace chat
The tech industry in general might not need unions yet, but game dev industry is a clear example of where they're sorely needed.
CodeMage··on New Facebook tool allows employers to suppress “unionize” in workplace chat
I not sure I understand the point of your comment. The parent comment literally said that there are many unions like that, but that this is not what a union has to be and that there are several unions that are a net positive.

The whole point is that the fight for protection of workers' rights needs some sort of organization. Traditionally, that has been called a "union", but if the problem you're pointing out is that the name has too many bad connotations, feel free to propose another one.

FWIW, it looks like most of the "good unions" are careful to call themselves "guilds".

CodeMage··on U.S. Economy Shrinks at 4.8% Pace, Signaling Start of Recession
>I am not advocating lowering any bars.

Sorry, I misinterpreted your reply. My comment was a reply to a comment about lowering the bar and I thought you were arguing that same point.

>I'm just saying that those kids are as screwed now as they have ever been, and that this particular misfortune will not play in their favor in the future, as employers, government, and nongovernment institutions will be just as unsympathetic then as they are now.

I completely agree with that assessment.

CodeMage··on U.S. Economy Shrinks at 4.8% Pace, Signaling Start of Recession
Please, let's not assume things we don't know about each other. Whether I've known kids like that is something you have no idea about, along with where I've lived, who I've gone to school with, etc.
CodeMage··on U.S. Economy Shrinks at 4.8% Pace, Signaling Start of Recession
> It's not a law of physics, but there are a lot of pitiable kids out there who have never even caught a whiff of good fortune in their lives, and the US lacks the social sensitivity to make them feel secure enough to add another year of high school to their pile of problems.

Yes, that's why there are "poor kids roaming the street like packs of feral dogs" in the first place, in one of the wealthiest countries in the world. That's the big problem.

So let's not pretend that lowering the bar is what's going to make those kids catch a whiff of good fortune. The US system grinds people like that into dirt and that won't change with a single decision, be that decision to add a school year or to lower the bar.

CodeMage··on U.S. Economy Shrinks at 4.8% Pace, Signaling Start of Recession
>The bar (which is already dismally low) will have to be lowered further for them to graduate, and how/when will it ever be raised back again?

You don't have to lower the bar. There are other options. There is no fundamental law of physics that says a generation has to graduate at age X, so we -- the society -- should be perfectly able to delay that process for a year, instead of lowering the bar.

That said, there's something deeply wrong either with the society as a whole or with the HN audience if you read "poor kids roam the street like packs of feral dogs asking for money for food" and you say that the biggest long term problem is the lowering of the bar because kids skipped school.

CodeMage··on It’s Time to Build
> I find this essay to be extremely frustrating

Thanks, I was worried I would find HN readers to be largely in agreement with it and I'm glad I was wrong about that.

I also find that "we need to want these things" is the key problem with the article. I agree with your conclusions, but I think you've understated the case a bit.

I believe that all of this has happened the way it happened because we live in a society -- and a system -- that has been steadily lowering the value we place on human life.

When I moved to United States in 2013, what shocked me the most was the incredible number of homeless people in Seattle. This is an immensely wealthy, developed country, arguably the most powerful in "the first world". And yet, two of the "five most homeless cities in the world"[1] are in this country.

One of the big problems with the lockdown measures in several parts of the US was "what about homeless kids who depend on their schools". Do you people understand what that sounds like?

So yes, the problem is capitalism. No, not "crony capitalism" or any other variation of No True Scotsman defense of capitalism[2]. This is what you get when you build your whole system around the optimization of one variable -- profit -- and put essentially religious faith into the unproven idea that the Invisible Hand of the Market will make everything work.

Marc ends his essay by saying "instead of attacking my ideas, conceive your own". He's essentially asking people to express their disagreement in a way that validates his ideology. Sadly, the answer to his question about what we should build isn't anything he or the rest of the elites would like to hear.

What we need to build is awareness. What we need to build are societal "firewalls" against the ubiquitous propaganda[3] that inundates our society. What we need to build is a movement.

EDIT: Fixed some formatting problems that I didn't notice initially.

---

[1]: https://www.arcgis.com/apps/MapJournal/index.html?appid=e56c...

[2]: It's usually the same people who won't accept that "real socialism hasn't been implemented yet" as an answer that deflect critique of capitalism by saying "Oh, that is not capitalism, that's crony capitalism."

[3]: The US doesn't have state propaganda like North Korea or China, and that leads people to believe it's free of propaganda. It's not.

CodeMage··on What Are Spomeniks?
"Spomenik" definitely means "monument" or "memorial". In a specific context, it also means "tombstone".

"Spomenica" is much less used. I'm a native speaker -- born and raised in Belgrade -- and I've only heard it in very specialized and rare occasions, so I'm having a hard time translating it correctly. In the context I've heard it used, it's an award or recognition, usually in the form of a scroll or a medal.

I like the authors use of the native word "spomenik" to talk about this specific style, but it's definitely just the author's artistic choice.

CodeMage··on What Are Spomeniks?
Although it's a very unpopular sentiment these days, I also want to go back in time to Old Yugoslavia. I still remember reading "Moj Mikro" and "Svet Kompjutera", attending JUDEF in Šibenik and making friends with kids from all over Yugoslavia. My generation, at least, believed in brotherhood and unity.
CodeMage··on Mycroft – An open-source voice assistant
I found about Mycroft through their Kickstarter project, Mycroft Mark II. What convinced me to back them was that they said that, theoretically, I should be able to self-host their server on my own hardware at home.

Unfortunately, they mismanaged Mark II so badly that I lost all faith in Mycroft in general.

CodeMage··on CDC says U.S. gatherings of over 50 people should be put off
Yeah, sure, we would all have preferred to have responsible politicians who handled this correctly. Guess what? That ship has sailed. Most countries have "leadership" that handled this abysmally and now we have to deal with all this crap in order to flatten the curve until there are treatments and vaccines available.

My mom and dad are 73 years old and I don't give a damn about someone's tin-foil-hattery about "fighting the war on viruses 20 years from now", if I can keep them from dying. Go read some first-person accounts from people living in Italy, not just the ones about the roadblocks and forms you have to fill out, but also the ones from people who couldn't even say goodbye to their loved ones who died or the ones from HCWs about the collapse of their hospitals.

All of us who are pissed off about the lockdowns should hold on to that anger and express it fully after we have to stop worrying about our parents and grandparents being left for dead.

CodeMage··on $5000 per violation of price-gouging in CA
It's not about moving goal posts, it's about interpretation. Allow me to repeat the same quote, with my own emphasis:

> It's not right to vilify these people while we give a free pass to everyone else doing equally unethical things.

If "A and not B" is not right, you can conclude that we should stop A, or that we should start B. You interpreted it as the former, I interpreted it as the latter. I guess we have different biases.

Regardless of whether the goal posts have moved or have always been in the same place, I'm not sure which of your questions remains unanswered. If it's "who is this 'we' you speak of", the answer is "look around you". If the majority were truly intolerant of the behavior OP describes, then we would have a lot more social unrest than we do.

CodeMage··on $5000 per violation of price-gouging in CA
> One could say “we don’t want more price discrimination.” But that is a choice to prefer shortages over price increases.

Except we're not really limited to only two options. Rationing might be an unpopular option, but it works just fine.

CodeMage··on $5000 per violation of price-gouging in CA
No, the argument was pretty clear: we're at this point because the majority has been tolerating -- and even defending -- similar behavior for a long time; therefore, we should stop tolerating this kind of behavior in general, not just for this special case under these special circumstances.

And the argument is correct. You cannot keep teaching people unlimited greed and profiteering is okay because "it's free market" and then expect them to behave ethically. You have to change what is acceptable and tolerated. The current situation is an excellent starting point, but we shouldn't stop here.

CodeMage··on Pair Programming Economics
If you look at @programminggeek's point without passive-aggressive exaggeration and then at the wiki, you'll see that it's specifically called out as a potential problem.

Sadly, it's dismissed out of hand as a "people problem" and "irrelevant". It really deserves more attention.

First of all, if you're looking for programmers to maintain a VB6 app, you really should factor into the economics of that endeavor the fact that most people don't want to code in VB6.

Second, no matter how potentially beneficial the pair programming approach is, there is a question of psychology in play. There are people who are introverted enough that the constant company required for pair programming will wear them down and cause them to quit or change teams. Dismissing it as a "people issue" and misrepresenting it as being unable or unwilling to be a team player is an oversimplification.

CodeMage··on Sherbet: An Ergonomic Gaming Keypad
It would be really nice if the author could add a few images or a video of how it's used. I'm really, really bad at visualization.
CodeMage··on New COVID-19 cases reported across Japan
Replace "wealthy" with "not poor" and the grandparent's point stands.
CodeMage··on Team Structure for Software Reliability Within Organizations
I'm curious: how many people did you lose because of the shift?
CodeMage··on Investigating the Performance Overhead of C++ Exceptions
I was disappointed they didn't do a test case with std::error_code.

EDIT: Is there something wrong with std::error_code? I don't care about my points, but I'm worried I might have missed something I should know.

CodeMage··on Engineer says Google fired her for notifying co-workers of right to organize
> Prefixing this by saying I am not siding with Google (since people make assumptions).

Prefixing this by saying I'm not making an assumption about who you're siding with, but offering my opinion on the argument you're using.

> The standard approval process sounds like most merge review processes on any engineering team. There's a sort of assumed good-faith for this process. The fact that 2 coworkers were fine with your change doesn't mean it was made in good-faith and was within the bounds of normal types of changes.

Other people have already argued about whether what she added to the extension is in line with the purpose of the extension and whether it was within her purview.

Regardless of that, I would like to point out that we're not hearing that these two coworkers -- or anyone else involved in the process -- have been fired. Only Spiers. If the concern is really about the security and the trust, why is one person singled out?

CodeMage··on Engineer says Google fired her for notifying co-workers of right to organize
Did you read what the extension is for?
CodeMage··on Indiana manipulated report on Amazon worker’s death, investigation says
> Why would Amazon behave less profitably? Simply because we perceive it to be more moral?

Yes. Why is this so controversial? Why are we okay with profits being more important than ethics?

CodeMage··on Amazon is sending me packages I didn't buy
> Chase explained to me that the charges can follow the person, not the specific card number.

Can anyone explain this? It goes against all I thought I knew about online payments and credit cards.

CodeMage··on C++ 20: The Core Language
I can't edit my original comment anymore, so I'll just write a clarification in the reply.

Many people have pointed out that C++17 has std::optional. While that's true, I don't think it'll deprecate raw pointers. I'll try to explain why.

Here's an example you can paste, compile and run:

  #include <iostream>
  #include <memory>

  struct foo
  {
    int thingamajig;
  };
  
  void borrow_optional_foo(foo * borrowed)
  {
    if (borrowed != nullptr)
    {
      borrowed->thingamajig = 42;
    }
  }

  int main()
  {
    std::unique_ptr<foo> owned = std::make_unique<foo>();
    owned->thingamajig = 17;
    std::cout << owned->thingamajig << std::endl;
    borrow_optional_foo(owned.get());
    std::cout << owned->thingamajig << std::endl;
    return 0;
  }
If you run it, it should print:

  17
  42
What would it look like if we wanted to use std::optional and get the same behavior?

  #include <iostream>
  #include <functional>
  #include <memory>
  #include <optional>

  struct foo
  {
    int thingamajig;
  };
  
  void borrow_optional_foo(std::optional<std::reference_wrapper<foo>> borrowed)
  {
    if (borrowed)
    {
      borrowed->get().thingamajig = 42;
    }
  }

  int main()
  {
    std::unique_ptr<foo> owned = std::make_unique<foo>();
    owned->thingamajig = 17;
    std::cout << owned->thingamajig << std::endl;
    borrow_optional_foo(std::make_optional(std::ref(*(owned.get()))));
    std::cout << owned->thingamajig << std::endl;
    return 0;
  }
As you can see, there's a tradeoff involved. On the one hand, you get crystal clear, descriptive type: std::optional<std::reference_wrapper<foo>> is clearly an optional reference to foo.

On the other hand, using it is absolutely atrocious: you have to write borrowed->get().thingamajig as opposed to borrowed->thingamajig, and std::make_optional(std::ref(*(owned.get()))) as opposed to owned.get()

Does it work? Absolutely. Is it crystal clear? Indisputably so. Will it deprecate raw pointers? I really, really doubt it, but that's just my opinion.

CodeMage··on C++ 20: The Core Language
This is not even remotely true. Let's say you have:

  std::unique_ptr<foo> m_foo;
How do you pass that into a function that can receive a pointer to foo, but does not require it? The only way to do so is to declare the function to take a foo* and pass it m_foo.get()

In summary, * will never be deprecated until C++ has support for something along the lines of Rust's borrowing and lifetimes.

← PreviousPage 10 of 34Next →