Hacker Newsnew | past | comments | ask | show | jobs | submit | roessland's commentslogin

I wish I could, but they banned me and won't disclose why.

That being said, Claude Code produces the best code I've seen from an AI coding agent, and the subscriptions are a steal.


Same with my account. My only conclusion is because I use a VPN. Gave them my real phone number so they already know my actual country, but still banned after a few months of on/off usage. I might consider setting up another PC for it someday, but they clearly don't want anyone to use them via VPN. Another option I considered is OpenRouter.


I heard Codex CLI is doing good things now, might give that a go (I have not yet).


Try Crush


My company used Yup initially but we moved to Zod to be able to infer types from schemas. For example, API response payloads are Zod schemas. OpenAPI components are also generated from Zod schemas.

There are some performance issues, and WebStorm is struggling, which forced me over to VS Code.

But overall pretty happy.


But Yup also allows to infer types from schemas...


Sorry, might have mixed up Yup and Joi. Anyways, I prefer Zod to both of them.


Awesome, I'll definitely try it.

I've been paying for Piano Marvel for a few years, and there is tons of room for improvement in this space:

- Native, non-janky app. Ideally cross-platform.

- More inspiring music in lessons.

- Recommendation algorithm for what piece/lesson to practice next.

- More methods of measuring progress over time.

- Spaced repetition for sight reading, technique, scales, ear training, sections of known pieces.

- Splitting pieces automatically into overlapping sections to practice, RH, LH and hands together (whatever makes sense).

- Simple streaming/recording features for use with piano lessons over video chat (screen/video/audio mixed together to a single stream?).

- Show music theory concepts based on what you are playing, in the context of the current piece. E.g. what chord is being played, and its function. Possible continuations.

My setup is a Macbook + FP-30 + USB midi cable. Having the laptop standing on top of the piano makes keyboard and touch pad usage clunky, so navigation must be simple. Also uploading custom scores is a must for me.


It doesn't have most of what you say, but it does let you practice on custom scores (midi files), so maybe it can be part of the solution:

https://www.pianojacq.com/

(open source, from jacquesm here)


The default PG type, `numeric`, has almost arbitary precision.

    select pg_typeof(9999999999999999.0); 
    -- numeric

    select 9999999999999999.0::double precision 
           - 9999999999999998.0::double precision; 
    -- 2
More interesting perhaps, is mixing up `real` (aka float32) with `numeric`:

    select 9999999999999999.0::real - 9999999999999998.0;
    -- 272564226 (?! can anyone explain?)

    select 9999999999999999.0::real;
    -- 10000000300000000
Wat


The `real` type (float32) only has 24 bits of precision. So converting `9999999999999999.0` or `10000000000000000` or even `10000000300000000` yields the 32-bit float `10000000272564224`.

For some reason Postgres prints it as `10000000300000000`. It uses a heuristic to print a "pretty" number that converts to the actual stored value, and it's not smart enough to give `10000000000000000`. Some heuristic like this is needed so something like `0.3` doesn't print the actual stored value of `0.300000011920928955078125`, which would be confusing.

You can check all this here: https://www.h-schmidt.net/FloatConverter/IEEE754.html


    #include<stdio.h>

    int main(void) {
      long a = (float)9999999999999999;
      long b = 9999999999999998;
      printf("%ld - %ld = %ld\n", a, b, a-b);
    }

produces

    10000000272564224 - 9999999999999998 = 272564226


Here's a great introduction to floating-point numbers: https://tobydriscoll.net/fnc-julia/intro/floating-point.html

The next representable number after 9999999999999998.0 is 1.0e16. 9999999999999999.0 is not exactly representable in IEEE 754 floats, and will be rounded up or down.

The difference between 0.0 and 2.0 in the table is likely due to different rounding modes. I'm curious how different languages end up with different rounding modes. Is that possible to configure?

    julia> 9999999999999999.0 - 9999999999999998.0
    2.0

    julia> -9.999999999999999 + 9.999999999999998
    0.0


It's not different rounding modes, but different floating point formats. Google is doing something very weird that is also base 10 related. Not sure about TCL.


TCL does for quite some years now use real integers (unbounded size) and floats (float8) whenever possible. By the way, the article does not specify versions of languages, so:

    $ tclsh
    % puts $tcl_version
    8.6
    % expr "9999999999999999.0-9999999999999998.0"
    2.0


Cool! I have the same issue with unused coax cables between every room, and was planning on replacing them with ethernet cables. In my case it's feasible without breaking down any walls. Does this work even with splitters?


Yes, it works with splitters. Just be careful because you'll lose signal strength on each split, your splitter should have a number on it for how much is lost.


Make sure your splitter is rated for like 1.8ghz so you don’t dramatically attenuate your signal. Cheap splitters will probably cause trouble.


tmux + ttyd (or gotty) could be used in a similar way. But it's not like an extra screen, it's more like mirroring a terminal to another device.


Someone asks for a webpage and not only do you propose tmux, you also acknowledge it doesn't even do anything like what's asked.

Typical Linux user.


Gotty serves a terminal window as a website. Tmux can be used to force the terminal size, so that you can a small window for typing, like OP does.

The person on the other end does not have to learn either of them.


Some telecom providers actually provide a public IP address that maps directly to your phone. You might have to change your APN settings to get one, and it might be dynamic.

It's a spectacularly bad idea that lets you serve HTTP (and any other port) directly from your phone without a SSH tunnel. You can also debug your Android with ADB... over the internet.


That last part scared me! I tend to have ADB debug over USB always enabled on my phone but I'm not in any way enabling debug over wifi now I know this.


Whilst publicly exposing ports from a phone is still certainly scary, for ADB specifically it's actually not as bad as it sounds - wifi debugging requires an explicit & bi-directionally initiated pairing process beforehand (sharing a 6 digit code or scanning a QR code to do so) and then also separately trusting the public key of the connecting computer at the moment when it connects.

To allow untrusted access, you'd have to have the ADB port accessible to the attacker, and then intentionally open developer options and tap "pair for wifi debugging", and then enter/scan a malicious pairing code, and then accept the unrecognized public key when the device connected. And if that does happen, there's a persistent notification that a debugger is connected.


I wish my provider gave me that, would be so cool


Go's fmt enforces some parts of formatting, like indentation, spaces vs. tabs and spacing around brackets and parentheses. But it is by no means a complete style guide. Fmt doesn't give your packages, structs or methods reasonable names automatically. Fmt doesn't tell you where to use values and where to use structs, what your interfaces should be, and how large your functions should be.

There is still room for a style guide.


Regarding seats: In Norway (and a few more countries) it is forbidden to ride with a passenger on a moped.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: