HN user

agbell

1 karma
Posts68
Comments281
View on HN
corecursive.com 4y ago

Full-Time Open Source: How Andrew Kelly Built Zig

agbell
3pts1
message-from-space.readthedocs.io 5y ago

Message from Space

agbell
2pts0
corecursive.com 5y ago

To the Assembly with Matt Godbolt

agbell
5pts0
earthly.dev 5y ago

SQL Errors and Video Cameras

agbell
1pts1
corecursive.com 5y ago

What Is Abstraction?

agbell
2pts0
corecursive.com 5y ago

Smart Contract Rescue

agbell
1pts0
earthly.dev 5y ago

DOS Gaming in Docker

agbell
2pts1
corecursive.com 5y ago

Ethereum Smart Contract Rescue

agbell
1pts0
corecursive.com 5y ago

Ethereum Rescue

agbell
3pts1
corecursive.com 5y ago

Ethereum Rescue

agbell
1pts1
corecursive.com 5y ago

Apple 2001

agbell
3pts3
blog.earthly.dev 5y ago

Compiling Containers – Dockerfiles, LLVM and BuildKit

agbell
1pts0
buttondown.email 5y ago

Vim Is Turing-Complete

agbell
4pts0
dmiller.dev 5y ago

Using Earthly to Build Replay

agbell
3pts0
corecursive.com 5y ago

Video Game Programming from Scratch

agbell
2pts1
blog.earthly.dev 5y ago

Intercal, YAML, and Other Horrible Programming Languages

agbell
19pts5
blog.earthly.dev 5y ago

How to Man in the Middle HTTPS Using Mitmproxy

agbell
2pts5
corecursive.com 5y ago

Reinforcement Learning at Facebook

agbell
103pts28
expeditedsecurity.com 5y ago

AWS in Plain English

agbell
3pts0
startyourownisp.com 5y ago

Start Your Own ISP

agbell
4pts0
medicalxpress.com 5y ago

The brains of jazz and classical pianists work differently

agbell
2pts0
www.phoenixframework.org 5y ago

Improving Testing and Continuous Integration in Phoenix

agbell
2pts0
www.phoenixframework.org 5y ago

Improving Testing and Continuous Integration in Phoenix

agbell
2pts1
blog.earthly.dev 5y ago

Migrating Your Open Source Builds Off of Travis CI

agbell
2pts0
blog.earthly.dev 5y ago

Unit Testing vs. Integration Testing

agbell
2pts0
blog.earthly.dev 5y ago

You’re using Docker-compose wrong

agbell
3pts0
github.com 5y ago

Highlight the Music in Google Docs

agbell
1pts0
www.pathsensitive.com 5y ago

CoRecursive: Advanced Software Design with Jimmy Koppel

agbell
2pts0
blog.earthly.dev 5y ago

The world deserves better builds

agbell
4pts0
corecursive.com 6y ago

Building Subversion and Network Transparent CVS

agbell
1pts0

When the typical economist tells me about his latest research, my standard reaction is 'Eh, maybe.' Then I forget about it. When Robin Hanson tells me about his latest research, my standard reaction is 'No way! Impossible!' Then I think about it for years - Bryan Caplan

Elm at Rakuten 5 years ago

For those want to learn Elm, or to learn strongly typed functional programming in very well thought out order @rtfeldman's book "Elm In Action" is super good.

His experience working at a teaching company made his book very well structured for new comers.

This book was ahead of its time. Millionaires who live like college kids. Overworked and stressed out devs working for a faceless corporation. I read it a long time ago, but I recall it was super good.

Looking into Zig 5 years ago

Yeah, functions returning types based on computations in Zig can look a lot like Idris if you squint

Looking into Zig 5 years ago

I know very little Zig, but I agree with the post, that comptime seems simple, obvious and powerful.

It is interesting that it bears some surface level similarities to type constructors in languages with higher kinded types.

Thanks for reading. Interesting idea! I did have this thought myself at some point and went and checked on some other narrated podcasts and found they kept it all under one label, but I can see how that could be confusing. Maybe I'll try that for the next one.

Thanks for listening and thanks for supporting me!

Yeah, the further you go back into the back catalog the more you are listening to my learning-to-podcast phase. Hopefully they aren't too bad... I am a slow but persistent learner.

Podcast host here. Andrew Kelly, creator of Zig shares the back story behind the creation of Zig: Why he created it, how he created it, leaving his job to work on it full time and why he is confident he can build a language that is better and more popular than C. Let me know what you think of the episode.

Podcast host here. Andrew Kelly, creator of Zig shares the back story behind the creation of Zig: Why he created it, how he created it, leaving his job to work on it full time and why he is confident he can build a language that is better and more popular than C. Let me know what you think of the episode.

Hi, Interviewer here! Thanks for sharing!

Brian is super modest and claims to be a horrible programmer but he is comparing himself to Ken Thompson, who he thinks is just incredible.

One thing that was interesting to me about Unix at Bell Labs was the UNIX room. It was a shared room with the computer in it but also where the coffee machine was and where they would hang out. I'm not sure if we are missing something like this with our increasingly remote culture?

Author here, thanks for reading. I totally agree that non-determinism is tricky. The big thing that got me to try McFly was the suggestions are path specific. I hear fish shell has this feature built in, but I havn't tried it out.

I may be unique in this regard but the types of actions I do in one path are very different from those I do in others: working on my blog is very different from the types of things I do when working on code and it was nice to have history aware of this.

I haven't actually used McFly a lot though, so I haven't quite seen if it going to become a permanent thing for me. The UI of using FZF for history is nicer, I just didn't like the suggested matches.

You are right though, I don't have my arrow keys setup like this. I'll try that out as well. Thanks for the tip!

Author here. Thanks for sharing!

Have you seen gron[1]? It can't do everything that jq can, but it is much more in the unix philosophy than jq. It simply flattens and unflattens json out into lines so you can use standard unix tools on it.

   ▶ gron 
   "https://api.github.com/repos/tomnomnom/gron/commits?per_page=1" | fgrep "commit.author"
   json[0].commit.author = {};
   json[0].commit.author.date = "2016-07-02T10:51:21Z";
   json[0].commit.author.email = "mail@tomnomnom.com";
   json[0].commit.author.name = "Tom Hudson";

    ▶ gron "https://api.github.com/repos/tomnomnom/gron/commits? 
   per_page=1" | fgrep "commit.author" | gron --ungron
    [
      {
        "commit": {
          "author": {
            "date": "2016-07-02T10:51:21Z",
            "email": "mail@tomnomnom.com",
            "name": "Tom Hudson"
          }
        }
      }
    ]
[1] https://github.com/tomnomnom/gron

Thanks for reading the article. broot does more than just piping tree to less, it gives you a TUI version of tree that you can navigate along around it. The fuzzy finder in it works like FZF but it keeps everything in a nice compact tree view. It might be overkill but I like it.

Would this benefit from the galloping optimization Tim Peter's was talking about on Hn recently?

If one side is bigger than the other, try to find how many elements you can add from that side and advance that far.

I love this. One suggestion, instead of dedicated keys for ctrl, option and other modifier keys you can use 'permissive hold' in QMK to put modifier keys in your home row.

Hold down F or J for F Lock, D or K for Ctrl and so on. My fingers adjusted to it really fast. Your keys can act as modifiers when held, and normal keys when pressed and it is works super well.

https://beta.docs.qmk.fm/using-qmk/software-features/tap_hol...

You can check it, but I'm pretty sure the difference is negligible. But yeah, all benchmarks are using the code in perf and the pop code is just to demonstrate. It is not benched.

Edit: dropping the extra list() from the blog code examples.

TimSort is cool. In it's worst case it looks no better than merge sort, but give it some partially order data, or small amounts of data, where it uses insertion sort, and it really shines.

Here is a small monorepo example. We build a DAG of dependencies between parts of the monorepo and only rebuild what is needed.

This is different but similar to what Bazel does.

Cyber noir is subgenre that combines elements of noir and cyberpunk.

Isn't cyber punk supposed to be film noir set in a high tech future? So we just increasing the amount of film noir to get Cyber Noir?

Makes sense. Kafka is Apache, confluent platform is open core. So I agree the post is a bit confused about that. We can update it and link in the PR. No intention to misrepresent the facts on our parts, just a small team trying to build stuff.