HNHacker News
TopNewBestAskShowJobs

AlchemistCamp

5,088 karma · joined November 18, 2018

Alchemist Camp an Elixir and Phoenix tutorial site with many, many project-based screencasts: https://alchemist.camp

https://youtube.com/AlchemistCamp

https://twitter.com/AlchemistCamp

submissionscomments
AlchemistCamp··on Elizabeth Holmes's partner raises millions for blood-testing startup
Partner doesn't mean that at all.

Warren Buffet and Charley Munger were partners. So were Jobs and Woz. Or Buffet and Gates while playing Bridge many times. There's absolutely nothing romantic or sexual about the word "partner" itself, though of course partnerships exist in those realms as well as in business, sports, music, dance and countless other pursuits.

AlchemistCamp··on Elizabeth Holmes's partner raises millions for blood-testing startup
Strange. I don't think "lover" sounds illicit in any way, though maybe it suggests youth and romanticism.
AlchemistCamp··on Elizabeth Holmes's partner raises millions for blood-testing startup
Most times I've read "partner" the meaning has been "business partner", e.g. a cofounder or a partner in a law firm or agency, etc.

I've noticed a trend, especially in Commonwealth or European countries to use "partner" to mean "sexual partner" or "romantic partner". However, it's also used in business, sports and many other contexts. Just saying "partner" on its own is less clear than "lover".

AlchemistCamp··on Ask HN: Hackathons feel fake now
They felt fake 10 years ago. Some good still came from them but except the one I did at Facebook, they all felt dominated by BS. FB at least had a separate room for people actually coding who didn't want a constant stream of interruptions from advertisers, announcers, etc.
AlchemistCamp··on We fell out of love with Next.js and back in love with Ruby on Rails
It reminds me of an older dev I met when I was just beginning who had worked even more years and said Fortran 95 was "fine". And he could use it to build pretty much anything. That doesn't mean that more powerful language features couldn't have increased his productivity (if he learned them).
AlchemistCamp··on We fell out of love with Next.js and back in love with Ruby on Rails
Hours so? I’ve found that Phoenix LiveView has made integrating the server and client code much simpler. It’s dramatically reduced the need to write JavaScript in general, including for things like image uploads. Or are you speaking of one of its many clones?
AlchemistCamp··on Irish privacy watchdog hits TikTok with €530M fine over data transfers to China
I did, in 2023.
AlchemistCamp··on Irish privacy watchdog hits TikTok with €530M fine over data transfers to China
One of TikTok’s largest markets is Japan. Their shop revenues in particular, doubled in Japan last year. Those earnings are taxed locally and have nothing to do with Ireland.
AlchemistCamp··on Irish privacy watchdog hits TikTok with Є530M fine over data transfers to China
Maybe Alibaba is a better example. Why should Alibaba increasing its global revenue through growth in the Chinese market mean that Ireland should fine it more? If it's because earnings in Ireland or even maybe the entire EU went up, then I can see the justification. But if Alibaba's revenue is going up because of Alibaba improving logistics within China, why should Ireland get anything for that?
AlchemistCamp··on Irish privacy watchdog hits TikTok with €530M fine over data transfers to China
Sure. A country can set "whatever level of fines they want within law". For example, Russia assessed a $20,000,000,000,000,000,000,000,000,000,000,000 against Google. https://edition.cnn.com/2024/10/31/tech/google-fines-russia/...

At the base level, I suppose my point was about morality, but my intent was about rationality. A country can write laws that it can take all the money a company earns across the entire globe, but it's not a very reasonable position, IMO.

AlchemistCamp··on Irish privacy watchdog hits TikTok with Є530M fine over data transfers to China
Yeah, relative to EU revenues would be fairly reasonable.
AlchemistCamp··on Irish privacy watchdog hits TikTok with €530M fine over data transfers to China
Sure, it's fine for Ireland to punish someone for a crime committed in Ireland, but my question was about what bearing revenue earned on other continents was any business of Ireland's.

A more accurate version of your analogy would be Ireland choosing to punish a tourist for littering with a dramatically higher penalty than native Irish would face based on their New York salary.

AlchemistCamp··on Irish privacy watchdog hits TikTok with €530M fine over data transfers to China
What bearing does their global revenue have on what Ireland has any jurisdiction to fine them? I'm not a fan or user of TikTok, but what they earn on other continents is none of Ireland's business.
AlchemistCamp··on Business co-founders in tech startups are less valuable than they think
If your assumptions here are correct, he's just not a good candidate for being a founder. If you see earning 163k/year a hardship and don't value 10% equity in a high margin business doing > 30k MMR, then you should try to become an employee at a big company.
AlchemistCamp··on You wouldn't steal a font
Hermes doesn't forbid you from wearing your watch or charge 10x more for you to wear it while playing a mobile game.

I think a lot of the anger is more about the complexity and price discrimination than the absolute price.

AlchemistCamp··on Show HN: I built an app so I could read the 3 Body-Problem in Chinese
My advice since you’re focused on simplified texts in the PRC is to make sure it doesn’t suck for vertically written traditional characters.

Having watched Chinese-learning apps for a long time, a common failure mode is treating traditional characters as an afterthought, when it’s actually a lot cleaner to use them as a base. simplified variants were made so that readers of traditional characters could easily make the switch, but the reverse is not true. If your db treats “face” and “noodle” or “wind” and “typhoon” as the same character from the beginning, it’s a lot harder to separate later.

AlchemistCamp··on Pipelining might be my favorite programming language feature
It would be silly to use a pipeline for x |> foo(). What's nice is being able to write:

    def main_loop(%Game{} = game) do
      game
      |> get_move()
      |> play_move()
      |> win_check()
      |> end_turn()
    end
instead of the much harder to read:

    def main_loop(%Game{} = game)
        end_turn(win_check(play_move(get_move(game))))
    end

For an example with multiple parameters, this pipeline:

    schema
    |> order_by(^constraint)
    |> Repo.all()
    |> Repo.preload(preload_opts)
would be identical to this:

    Repo.preload(Repo.all(order_by(schema, ^constraint)), preload_opts)
To address your question above,

> if `foo(y)` actually gives you a function to apply to `x` prob you should write `x |> foo(y)()`

If foo(y) returned a function, then to call it with x, you would have to write foo(y).(x) or x |> foo(y).(), so the syntax around calling the anonymous function isn't affected by the pipe. Also, you're not generally going to be using pipelines with functions that return functions so much as with functions that return data which is then consumed as the first argument by the next function in the pipeline. See my previous comment on this thread for more on that point.

There's no inconsistency or ambiguity in the pipeline operator's behavior. It's just syntactic sugar that's handy for making your code easier to read.

AlchemistCamp··on Pipelining might be my favorite programming language feature
I've been using Elxir for a long time and had that same hope after having experienced how clear, concise and maintainable apps can be when the core is all a bunch of pipelines (and the boundary does error handling using cases and withs). But having seen the pipe operator in Ruby, I now think it was a bad idea.

The problem is that method-chaining is common in several OO languages, including Ruby. This means the functions on an object return an object, which can then call other functions on itself. In contrast, the pipe operator calls a function, passing in what's on the left side of it as the first argument. In order to work properly, this means you'll need functions that take the data as the first argument and return the same shape to return, whether that's a list, a map, a string or a struct, etc.

When you add a pipe operator to an OO language where method-chaining is common, you'll start getting two different types of APIs and it ends up messier than if you'd just stuck with chaining method calls. I much prefer passing immutable data into a pipeline of functions as Elixir does it, but I'd pick method chaining over a mix of method chaining and pipelines.

AlchemistCamp··on Four Years of Jai (2024)
Ah, okay. I thought a "memelord" just meant someone who makes and shares lots of memes.
AlchemistCamp··on FTC takes action against Uber for deceptive billing and cancellation practices
Yes. This is why getting an Uber is merely expensive instead of impossible on rainy days or on New Year's Eve.

Dynamic pricing makes it possible for both riders and drivers to respond to changes in supply and demand. If prices were static, many drivers would prefer to go to a New Year's Eve celebration themselves than work, but when it becomes their biggest paying shift of the year, they're a lot more willing to do it. Riders have to pay a bigger price if they want a ride at peak times, but it's still possible to get one when they really have a strong preference to.

AlchemistCamp··on Four Years of Jai (2024)
> If one opinion is important, it will like the shared by more than one person.

Sometimes nobody else shares the opinion and the “abrasive person” is both good-hearted and right in their belief: https://en.m.wikipedia.org/wiki/Ignaz_Semmelweis

Personally, I’d rather be the kind of person who could have evaluated Semmelweis’s claims dispassionately rather than one who reflexively wrote him off because he was strident in his opinions. Doctors of the second type tragically shortened the lives of those under their care!

AlchemistCamp··on Decreased CO2 during breathwork: emergence of altered states of consciousness
Buy an air quality monitor. There are tons on Amazon. Here’s an example: https://www.amazon.com/dp/B0DZHJSQ7Z/
AlchemistCamp··on A balanced review of Math Academy
The most significant difference from Duolingo is that people get results with it. I’ve known literally hundreds of people who have put real time into Duolingo, over 10 hours a week for years in a few cases and zero of them have actually learned a language to a B2 level or higher through that massive time commitment. The best case I’ve seen is from people who accumulated a back of memorized word translations and grammar patterns through Duolingo and then spent time reading and listening to content that included them. Even those people learned slower than those who just focused on input from the beginning, though.

In contrast, I don’t know anyone who’s put 10 hours a week into Math Academy for multiple years but those I know who have done it for 6 months have made considerable progress, sometimes the equivalent of years of course work.

Duolingo’s flashy animations and casino-style gamification techniques are actually a negative signal for an educational product.

AlchemistCamp··on A startup doesn't need to be a unicorn
I think Sweden is one of the very most entrepreneur-friendly EU countries. It's got a big safety net, but doesn't impose much bureaucratic or financial burden on new businesses or even solopreneurs just getting started out.
AlchemistCamp··on A startup doesn't need to be a unicorn
It was founded over 50 years ago. It had already been running for decades before Amazon, Google or Facebook were even founded.
AlchemistCamp··on Buffett: America's Growing Trade Deficit Is Selling the Nation Out from Under Us [pdf] (2003)
Another interesting question is, would you rather trust the thinking of a 70 year-old or a 90 year-old Warren Buffet.

For the vast majority of people, I’d pick the 70 year-old version even if they did live to 90. With Buffet, I’m not so sure.

AlchemistCamp··on E.U. Prepares Major Penalties Against X
This was the particularly notable part:

> ” The Digital Services Act allows fines of up to 6 percent of a company's total worldwide annual turnover. EU regulators suggested last year that they could calculate fines by including revenue from Musk's other companies, including SpaceX.”

AlchemistCamp··on Why does JSON have commas?
Not the top one!
AlchemistCamp··on Coordinating the Superbowl's visual fidelity with Elixir
Depending on the language and the static type system, they typically can't prevent errors related to:

- Logic errors

- Null or Undefined values (prevented in many newer languages)

- Out-of-bounds errors

- Concurrency-related issues

- Arithmetic errors (undefined operations, integer overflow, etc)

- Resource management errors

- I/O errors

- External system failures

- Unhandled exceptions (e.g., RuntimeException in Java)

If you use a language like Rust, you can get help from the type system on several of these points, but ultimately there's a limit to what type systems can do before becoming too complex.

AlchemistCamp··on Coordinating the Superbowl's visual fidelity with Elixir
I think most people tend to stick with what they learn first or hop to very similar languages. Schools generally taught Java and then more recently Python and JS, all of which are relatively similar.

Unless someone who knows those three languages is curious or encounters a particular problem that motivates them to explore, they're unlikely to pick up an immutable, functional language.

← PreviousPage 2 of 34Next →