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

When text is (clearly) non native English I think most native readers don’t even register grammar errors.

To be honest most native readers wouldn’t register grammar errors full stop.

I guess I have more awe of people who speak a foreign language at all compared to piping it through some agent malarkey.


As the other posters have shown it’s not that hard.

Most graphics specs will explicitly say how tie break rules work.

The key is to work in fixed point (16.8 or even 16.4 if you’re feeling spicy). It’s not “trivial” but in general you write it and it’s done. It’s not something you have to go back to over and over for weird bugs.

Wide lines are a more fun case…


If you’re working in robotics and don’t have fully deterministic event based replay you need to find a new middleware.

Dynamic is still nice when you’re dealing with unknown data imo. More hygienic to read than dictionary access through string keys for example.

I use it when deserializing unknown message types.


You explain well so what I never understood is how the Jacobians aren't the first derivatives themselves?

Also if you have happen to have any suggestions for linear algebra for someone who uses it without really understanding it (I can write a measurement function for an EKF from scratch OK, but I don't really understand why the maths does what it does) I would really appreciate it.


The Jacobian is first derivatives, but for a function mapping N to M dimensions. It's the first derivative of every output wrt every input, so it will be an N x M matrix.

The gradient is a special case of the Jacobian for functions mapping N to 1 dimension, such as loss functions. The gradient is an N x 1 vector.


[EDIT] Updated original comment to include matrix dimensions.

If you want a serious text that goes through the relevant linear algebra and optimization mathematics in depth up front, Neural Network Design, 2nd edition is a good one. [Disclaimer, co-author]. We took great pains to walk through every conceptual and mathematical topic before we apply those concepts to machine learning. We use MATLAB a lot, which may or may not be helpful.

Another potential option is "Linear Algebra and Optimization for Machine Learning", which looks good and also starts out with linear algebra before machine learning. I haven't read it, but the first 2020 edition gets good reviews, and a second 2026 edition just came out, apparently with a fair amount of positive revision. Given the speed of change, that's nice to see.


The download links for binaries 404 for me.


Will fix the links. Meanwhile here is the releases page. I develop on gitlab and mirror to github. Need to make that clear as well.

https://gitlab.com/rhobimd-oss/shebe/-/releases


Ah, I tried the gitlab and the tarballs 404 for me there, sorry I should have been more specific in the original post!

fwiw this does look interesting.


Got around to sorting the 404. Releases now work.

https://gitlab.com/rhobimd-oss/shebe/-/releases/v0.5.6-rc2


I see what's happening. I never validated those build artifacts... Thanks for the catch. Will rebuild notify you here.


Yeah what the heck is happening here? Agents gone wild?


I can promise you there are no agents or bots here—just a solo dev who's been working on a Rust shell for FreeBSD in his spare time.

I think the 'weird' influx of new accounts is likely because this got picked up by some FreeBSD/Rust communities or Telegram/IRC groups where people aren't usually on HN. It’s my first time posting a project here, and I'm honestly just trying to keep up with the technical questions!

If anyone is skeptical, I'd much rather talk about the code, the job control implementation, or the FreeBSD porting process. That’s why I’m here!


You can track debug symbol through c. It’s just one of many layers debug info gets tracked through.


Isn’t this because the wine db has those tweaks pre configured?


Windows used to be half operating system, half preconfigured compatibility tweaks for all kinds of applications. That's how it kept its backwards compatibility.


It's because wine OS selector actually tries to match bug for bug the OS version you set but Window's one gave up after Windows 7.


More a case of DirectX radically changing how it worked [0].

[0] https://learn.microsoft.com/en-us/windows/win32/direct3darti...


Are you?

The majority of production compilers use hand rolled parsers, ostensibly for better error reporting and panic synch.


One anecdote in the same vein, a couple of months ago, I wanted to parse systemd-networkd INI files in Python and the python built-in ConfigParser [0] and pytest's iniconfig parser [1] couldn't handle multiple sections with the same name so I ended up writing 2 parsers, one using a ParserCombinator library and one by hand and ended up using the latter given it was much simpler to understand and I didn't have to introduce an extra dependency.

Admittedly, INI is quite a simple format, hence I mention this as an anecdote.

[0] https://docs.python.org/3/library/configparser.html

[1] https://github.com/pytest-dev/iniconfig


As a project gets larger the cost of owning a dependency directly begins to outweigh the impedance mismatch between 3rd party software & software customized to your project.

I've got 10 full time senior engineers on a project heading in to its 15th year. We rewrite even extremely low level code like std::vector or malloc to make sure it matches our requirements.

UNIX was written by a couple of dudes.


That’s because Python is a bad language for writing parser combinators and parsers based on them. Try Haskell.


I have written parsers using parser combinators in Haskell and Clojure. I find that ML-like (Haskell, OCaml, StandardML) languages generally are great at writing parsers, even hand-written ones in it is a superior experience.

In this case, this was a project at $EMPLOYER in an existing codebase with colleagues who have never seen Haskell code, using Haskell would've been a major error in judgement.


I agree!

Haskell is a great language. It can even be a great language for beginners, especially if there's some senior help on hand.

But it's a terrible language to foist upon an unsuspecting and even unwilling victim.


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

Search: