News for hackers. Stuff that matters.

narski

Re:I Was Wrong about the Ethics Crisis (Moshe Vardi, CACM) on Sunday December 29, 2024 @03:30PM (#42542793)
>Google should be broken up into Search, Browsers, Mobile Devices, Ads, and Services, and the units prohibited from contracting with each other.

I admire the general spirit of your comment, but this specific example seems off to me. Search and browsers, for example, don't make sense as independent businesses. Rather, they are products based off of Ads.

Maybe the idea would be for Ads to pay Search to include their ads, and for Search to pay Browsers to be the default search engine?

Re:Ask HN: Predictions for 2025 on Monday December 23, 2024 @01:42AM (#42492330)
* Guatemala starts a major war over Mexican espionage in Petén

* Donald Trump is revealed to be the true identity of Satoshi Nakamoto

* President Nelson (prophet of the LDS church) dies and is replaced by Dallin Oaks

* Dugin writes a sequel to The Fourth Political Theory, titled The n+1'th Political Theory

* New microscope finds the words "God was here" etched into every molecule in the universe

* People become at least 5% cuter as estrogen/testosterone ratio continues to tip in that direction

Re:In Defense of Y'All on Thursday December 19, 2024 @10:07AM (#42462077)
I like seeing how far I can stack contractions, a purpose for which y'all is well suited. Eg "You all would not have" becomes y'all'dn't've.
It's similar to war heroes. Yes, Abraham Lincoln killed people. Yes, we could avoid glamorizing him and empathize with the poor southerners. But generally, war heroes are idolized. This guy is like a war hero who killed someone on the other side.
Re:Why America's economy is soaring ahead of its rivals on Wednesday December 04, 2024 @05:39PM (#42322847)
>Looking at the numbers

I'm reminded of this excerpt from 1984:

But actually, he thought as he re-adjusted the Ministry of Plenty's figures, it was not even forgery. It was merely the substitution of one piece of nonsense for another. Most of the material that you were dealing with had no connexion with anything in the real world, not even the kind of connexion that is contained in a direct lie. Statistics were just as much a fantasy in their original version as in their rectified version. A great deal of the time you were expected to make them up out of your head. For example, the Ministry of Plenty's forecast had estimated the output of boots for the quarter at 145 million pairs. The actual output was given as sixty-two millions. Winston, however, in rewriting the forecast, marked the figure down to fifty-seven millions, so as to allow for the usual claim that the quota had been overfulfilled. In any case, sixty-two millions was no nearer the truth than fifty-seven millions, or than 145 millions. Very likely no boots had been produced at all. Likelier still, nobody knew how many had been produced, much less cared. All one knew was that every quarter astronomical numbers of boots were produced on paper, while perhaps half the population of Oceania went barefoot. And so it was with every class of recorded fact, great or small. Everything faded away into a shadow-world in which, finally, even the date of the year had become uncertain.

---

Of course, I'm sure none of that would ever apply to our numbers, only to those of our opponents.

Re:What Will Enter the Public Domain in 2025? on Monday December 02, 2024 @11:25AM (#42297701)
At least in the case of the Maya, literacy was carefully guarded so that a small class of priests could exercise precisely this kind of control. In fact, this is believed to be one of the reasons why modern Mayan languages are written in the Latin alphabet, even though there's a complete Mayan script that was the most developed writing system in the Americas until the conquest.
Re:Ask HN: Who wants to be hired? (December 2024) on Monday December 02, 2024 @11:01AM (#42297440)

  Location: Austin, TX
  Remote: Yes
  Willing to relocate: No
  Technologies: Kubernetes, Terraform, Docker, Github Actions, AWS, Azure, Typescript, Python, Golang, PostgreSQL
  Résumé/CV: https://0x0.st/X7sh.pdf
  Email: [email protected]
Hi, I’m Dan, a pretty seasoned DevOps engineer. I immensely enjoy unraveling complex systems and figuring out how things work, then putting it all back together in a more streamlined way.

I’m looking for technically challenging remote DevOps work, especially in a fast paced environment where I can quickly start working on messy problems.

Hope to hear from you soon!

Re:Virality in cartography: What makes a map go viral? on Friday November 15, 2024 @02:46PM (#42150195)
I read this as virility and expected something very different. So I'm going to comment as though it said "Virility in cartography".

A virile map has monsters, and beckons a boy to grab his stick (gleaming steel) and hop aboard the patio (great ship with full sails) and set the neighborhood alight in delight fighting pirates.

He devises elaborate dilemmas and improvises wilely against his barbarous captors, even as the governors of his native country conspire against him, or wonders what strange countries lie just beyond the edge of the words "the known world".

Or maybe the sea is made of stars, and he envisions gayly springtime planets, or dark winter stars that become dragons across the nebulae.

Idk, even then, maybe there's a frontier beyond the final one - where consciousness melts between the fabrics of little realities, each with their own cutely crafted logic, and he drifts to a new dream where 1 + 1 is 3 and it only makes sense that way.

Idk. ChatGPT raised me and I'm afraid I'm becoming my father, who then will I raise to look like me? If only I had a map of the ages to not fear myself.

Re:Alternative notation for exponents, logs and roots? on Friday November 15, 2024 @02:38PM (#42150138)
Ooh I really like the triangle one. It's the top voted answer, so I guess I'm not alone.

In fact, I think I really enjoy specialized notations. I care about how ideas are expressed, sometimes even more than the ideas themselves. Sheet music, SQL, creating DSLs in Lisp, Hoon code (controversial here).

There are counter examples. For example, I adore coding in SQL, but ORMs always feel super gross. And isn't Paul Graham's adoration of Lisp kind of a programming version of the Sapir–Whorf hypothesis?

Whatever, and in Sapir (and Whorf)'s defense, how "debunked" is linguistic relativity anyway?

Whatever, I'll keep accruing beautiful new symbols and vocabularies and aesthetics for saying things that were previously unsayable and discovering new ideas to put together elegantly.

Re:Internet Archive currently down from DDoS attack on Thursday October 10, 2024 @10:04PM (#41805395)
The attackers claim the motive is political:

>They are under attack because the archive belongs to the USA, and as we all know, this horrendous and hypocritical government supports the genocide that is being carried out by the terrorist state of “Israel”.

source is in the thread I linked to

Re:Ask HN: Who wants to be hired? (October 2024) on Tuesday October 01, 2024 @12:48PM (#41710921)

  Location: Austin, TX
  Remote: Yes (exclusively)
  Willing to relocate: No
  Technologies: Docker, Kubernetes, AWS, React, Node.js, Python, PostgreSQL
  Résumé/CV: https://0x0.st/Xgxl.pdf
  Email: [email protected]
I'm really, really into application security and have strong DevOps skills. If you need a security-conscious DevOps engineer, or a Security Engineer with a hefty coding and infrastructure background, I'm your guy.

My name's Dan btw, look forward to hearing from you! Happy to show you what open source stuff I've been up to.

Re:Big Tech Sees Like a State (2020) on Monday September 02, 2024 @05:01PM (#41428785)
>shoplifting is currently rife and, when the value is low, not addressed, but this is a temporary state of affairs.

Remember though, how often in the history of states, the temporary cannily usurps permanence. It's hard to tell what's a brief deviation from the mean, rather than an early glimpse into the new normal.

I have no idea what I'm talking about, either in terms of understanding society nor the UK specifically, but your phrasing tickled my paranoia about that phrase a sort of famous last words for civilizations, lol.

Re:Ask HN: Who wants to be hired? (September 2024) on Monday September 02, 2024 @11:29AM (#41426271)

  Location: Austin, Texas, USA
  Remote: Exclusively
  Willing to relocate: No
  Technologies: React, Node, Next.js, AWS, Kubernetes, Postgres, Github Actions 
  Résumé/CV: [upon request]
  Email: dan.j.bednarski [at] gmail.com
Hey, I'm Dan, a DevSecOps engineer specialized in SOC2 compliance. Lots of experience in various security engineering roles - especially SOC2 stuff - so don't hesitate to reach out if that's something you need. I'm available full-time or contract :)
Re:US judge throws out FTC's ban on non-compete agreements on Tuesday August 20, 2024 @10:00PM (#41306075)
Wickard v. Filburn basically destroyed the commerce clause. Growing wheat on your own farm is "interstate commerce" because it impacts national wheat prices (since you would have bought that wheat otherwise!). In the second half of the 20th century, this ruling was used to great effect to limit the power of in-state businesses in the South to discriminate.

On the other hand, it was also used to justify why the federal government can prevent states from legalizing marijuana, even if it won't leave the state. It's certainly a ruling with a complicated moral legacy, in that it has some clearly good use cases, a few bad ones, while also brazenly defying the clear meaning of the constitution because doing so was convenient to the state.

Not sure how I feel about it, but I guess it was inevitable anyway.

Re:How the OCaml type checker works (2022) on Monday August 19, 2024 @12:00PM (#41292158)
Advocando pro diabolō, I disagree. Since the width just expands to the size of my screen, and I have a rather wide screen, I found this design (or lack thereof) sufficiently obnoxious that I added a touch of custom CSS.

Setting a static max-width, increasing margins, and playing with the font made the page much more readable for me.

Yeah, the death of comments sections really signified the end of Web 2.0 as something people eagerly believed in, rather than just a stagnant reality we're all trapped in. And they didn't die quietly - the real "Aslan slays the White Witch moment" happened when both major browsers removed the Dissenter extension, which allowed users to read and write comments on websites. These comments were shared among all users, and of course, sites couldn't censor them. Oh no! Luckily, now we're all safe from having the option to read uncensored comments, phew.

I don't endorse Dissenter, however, I do think it's death coincided with a vibe shift. Before that, there was kind of a left-libertarian vibe on the internet. Even banning obviously horrendous content would be met with hordes of "muh freeze peach" outrage from greasy web bois. It feels like the state and media managed to collaborate against big tech to reign them in as a competing power.

I say "feels like" because I have no idea what I'm talking about. Take everything I've said as seriously as you'd take "What if we are just really advanced NPCs and the whole universe is a video game for aliens" lol.

My point is, I miss comments sections (and I guess, that I project my nostalgia onto weakly evidenced conspiracy theories about the machinations of the state)

Re:Ask HN: Who wants to be hired? (August 2024) on Thursday August 01, 2024 @11:00AM (#41129820)

  Location: Austin, TX
  Remote: Yes
  Willing to relocate: No
  Technologies: Ansible, Docker, Kubernetes, Terraform, Jenkins, AWS (EC2, S3, EKS, Lambda, etc) React, Node.js, Typescript, Python, Golang
  Résumé/CV: https://0x0.st/XOBy.pdf
  Email: [email protected]
Hi, I'm Dan, a DevOps engineer with 10+ years of experience in automating systems to make life easy for other engineers. Whether you need a managed Kubernetes cluster from scratch to replace on-prem hardware, or help administering and improve your existing infra, I'm comfortable at every level of the stack. SOC2 compliance, DevSecOps, legacy systems - there are few DevOps challenges I haven't had the pleasure of experiencing in my career.

Currently, I'm seeking remote opportunities where I can use my extensive knowledge of cloud platforms and systems administration to improve security and developer experience, reduce cloud expenses, and keep systems online and running smoothly. If that's what you're looking for, don't hesitate to reach out :)

Ha! I read the docs for ~+ (https://docs.urbit.org/language/hoon/reference/rune/sig#-sig...) and fibonacci sequence is actually the example they use!

Thanks so much for this enlightening comment :3

Although I'm curious why Hoon doesn't just detect and cache identical computations by default. I guess it's a tradeoff, since using ~+ is more memory intensive, and you don't always want that either. Especially is Urbit itself is already fairly memory intensive.

>The standard way to expel stated mutable state us to push it into function parameters and returned values.

This is precisely what I did in my Hoon solution :) However, I wasn't aware that this approach is the standard way, and I'm glad to have learned that! Thanks

I recently ran into this issue when trying to memoize a simple numerical sequence in Hoon (yes, that Hoon. I know, I know...).

Let's use the fibonacci sequence as an example. Let's write it the classic, elegant way: f(n) = f(n-1) + f(n-2). Gorgeous. It's the sum of the two previous. With the caveat that f(n=0|1) = n. In Python:

  # fib for basic b's
  def fib(n):
    ## Base case
    if n == 0 or n == 1:
      return n
    
    return fib(n-1) + fib(n-2)
Right off the bat, performance is O(n)=n*2. Every call to f(n-1) will also need to compute f(n-2) anyways! It's a mess. But since Python passes arrays and dictionaries as pointers (cough, sorry! I meant to say references) it's super easy to memoize:

  # optimize-pilled memoize-chad version
  def fib(n, saved={}):
    if n in saved:
      return saved[n]
    
    if n == 0 or n == 1:
      saved[n] = n
    else:
      saved[n] = fib(n-1) + fib(n-2)
    
    return saved[n]
Okay, now our version is nearly as fast as the iterative approach.

This is the normal pattern in most languages, memoizing otherwise "pure" functions is easy because you can reference a shared object using references, right? Even with multithreading, we're fine, since we have shared memory.

Okay, but in Hoon, there are no pointers! Well, there kinda are. The operating system lets you update the "subject" of your Urbit (the context in which your programs run), and you can do this via the filesystem (Clay) or daemons (Gall agents, which have their own state kind of).

But to do this within a simple function, not relying on fancy OS features? It's totally possible, but a huge pain the Aslan.

First, here's our bog-standard fib in Hoon:

  |=  n=@ud
  ?:  (lte n 1)
    n
  %+  add
    $(n (dec n))
  $(n (sub n 2))
Now, I memoize on the way down, by calculating just f(n-1) and memoizing those values, to acquire f(n-2):

  :-  %say
  |=  [* [n=@ud ~] [cache=(map @ud @ud) ~]]
  :-  %noun
  ^-  [sum=@ud cache=(map @ud @ud)]
  =/  has-n  (~(get by cache) n)
  ?~  has-n
    ?:  (lte n 1)
      [n (~(put by cache) n n)]
    =/  minus-1  $(n (dec n))
    =/  minus-2 
      =/  search  (~(get by cache.minus-1) (sub n 2))
      ?~  search  0
      (need search)
    :-  (add sum.minus-1 minus-2)
    (~(put by cache.minus-1) n (add sum.minus-1 minus-2))
  [(need has-n) cache]
and that works in the Dojo:

  > =fib-8 +fib 8
  > sum.fib-8
  21
but it sure is easier in Python! And I'm not picking on Hoon here, it's just pure functional programming that makes you think this way - which as a hacker is fun, but in practice is kinda inconvenient.

I even wonder how much faster I actually made things. Let's see:

  > =old now
  > =res +fib 18
  > sum.res
  2.584
  > (sub now old)
  1.688.849.860.263.936
  :: now with the non-memoized code...
  > =before now
  > +fib 18
  2.584
  > (sub now before)
  1.125.899.906.842.624
Ha! My super improved memoized code is actually slower! That's because computing the copies of the map costs more than just recurring a bunch. This math should change if I try to compute a bigger fib number...

Wait. Nevermind. My memoized version is faster. I tested it with the Unix time command. It's just that Urbit Dojo has a wierd way of handling time that doesn't match my intuition. Oh well, I guess I can learn how that works. But my point is, thinking is hard, and in Python or JS or C I only have to think in terms of values and pointers. And yes, that comes with subtle bugs where you think you have a value but you really have a pointer! But most of the time it's pretty easy.

Btw sorry for rambling on with this trivial nonsense - I'm a devops guy so this is probably super boring and basic for all you master hn swe's. But it's just a tiny example of the constant frustrations I've had trying to do things that would be super simple if I could just grab a reference and modify something in memory, which for better or worse, is how every imperative language implicitly does things.

Re:Homebrew Security Audit on Tuesday July 30, 2024 @09:45AM (#41109142)
I use `brew install` as liberally as a junior Javascript dev using NPM, so I'm grateful to all the engineers doing this work to keep me safe. Apparently, this was funded by something called the Open Technology Fund. From the OTF website:

>We support technology projects that counter online censorship and combat repressive surveillance to enable all citizens to exercise their fundamental human rights online.

Huh! Based on my experience as an open source contributor, I've developed certain intuitions, and this language just screams "state-sponsored ngo". Nothing wrong with that - but it made me curious. Thankfully, OTF is super open about their funding: https://www.opentech.fund/about/about-our-funding/

>OTF receives the majority of its funding from the U.S. government via the U.S. Agency for Global Media (USAGM). Funding is appropriated for OTF through the annual Department of State, Foreign Operations, and Related Programs appropriations and provided to OTF via a grant agreement from USAGM.

Ha! I knew it. It's wierd how you can just tell, with these things. I didn't even know USAGM existed. Over the last decade, people have become so politicized, yet I feel like understanding of the Actually Existing State is pretty limited. Or maybe I should just speak for myself. When I study the state, I tend to do so in terms of political values and traditions that maybe don't make that much sense. Ie, in terms of democracy, freedom, liberal values, or whatever, when I don't know if these terms really mean anything at all in the context of modern polities, you know?

But if nothing else, it's cool to see my tax dollars going towards something that makes the world pretty much safer :)

Re:The lie of music discovery algorithms on Tuesday July 30, 2024 @08:51AM (#41108617)
You might like folk punk - check out Pat the Bunny.

I feel like there are two kinds of singers - people who are good at singing, and people who have something to sing about. You and I, I think, prefer the latter.