HNHacker News
TopNewBestAskShowJobs

imadr

715 karma · joined May 21, 2020

Software developer, I love graphics programming, procedural generation, game dev, making interactive tutorials Checkout my website https://imadrahmoune.com
submissionscomments
imadr··on The Exponential Time Hypothesis Is False [pdf]
Misunderstood your question sorry, I have no idea!
imadr··on The Exponential Time Hypothesis Is False [pdf]
P=NP -> 3SAT has a polynomial time algorithm

P=/=NP -> 3SAT has no polynomial-time algorithm

ETH is true -> 3SAT has no subexponential time algorithm

ETH is false -> 3SAT has a subexponential time algorithm

------

ETH true -> P=/=NP

ETH false (!!!) -> P ?= NP remain unsolved

imadr··on The recently proposed o(n log n) integer multiplication algorithm [pdf]
What part of "math is the process of humans understanding math" did you not understand or agree with?
imadr··on Reviving Papers with Code
Is no one tired else of these repetitive, obviously Claude-made webdesigns?
imadr··on Building a Procedural Hex Map with Wave Function Collapse
Is it the em dashes? I didn't get the feeling it was AI generated at all
imadr··on PostmarketOS in 2026-02: generic kernels, bans use of generative AI
Yes and? Let's suppose your statement is 100% true, I genuinely don't see the point of these kinds of comments.

Why every time some person/group of people enact an anti-LLM policy in their project, other people feel the personal need to stress how useful LLMs are and how that project is bound to fail if they don't use it?

Postmarketos clearly exists and works, EVEN if LLMs were absolutely perfect for speeding up development ten folds, is there any absolute moral necessity to use them?

Also isn't this just moving the goalpost that LLM fanatics love to point out?

imadr··on Ask HN: Share your personal website
I like your style! Reminds me of https://usgraphics.com/
imadr··on Impeccable Style
What does this even do? Read most of the page but still didn't understand the project actually is
imadr··on Physically based rendering from first principles
I definitely agree with you that the article lacks mathematical rigor, it's something I'll try to improve in the future. Thanks for the feedback!
imadr··on Physically based rendering from first principles
The roughness reflection slider thingy is trivial to generate with any LLM, however you should try generating the BRDF illustration with:

- 3d primitives (arrows, hemisphere)

- billboarded text rendering

- mouse interaction/canvas rendering that works for multiple scenes

It might be possible to vibe code but you’ll hit a wall of complexity really quick

imadr··on Physically based rendering from first principles
I took me about 3 months working on it on and off, it amounts to about 3 weeks of full time work. For my other projects I'm just writing everything to a single typescript file and compiling it with tsc, works like a charm and zero dependencies!
imadr··on Physically based rendering from first principles
Yes, in rendering when we talk about “diffuse” reflection we implicitly mean fuzzy reflections due to light penetrating the material and exiting a small distance away from the entry point (less than a pixel far)

The term subsurface scattering is used for light that exits further away (more than a pixel) like in simulations of human skin

However that part of the article isn’t clear enough and warrants a rewrite

imadr··on Physically based rendering from first principles
If i’m not mistaken that’s in part how they came up with micro facet models, or at least to verify their accuracy. Take this paper for example https://www.cs.cornell.edu/~srm/publications/EGSR07-btdf.pdf

Real life measures are also useful for inverse rendering.

imadr··on Physically based rendering from first principles
Yes I didn't have time to write a chapter about camera sensors, the human retina, and the whole image formation process. I'll definitely expand on this later on.
imadr··on Physically based rendering from first principles
Again, thanks for the thorough and constructive answer, it doesn't come off as mean, on the contrary I appreciate it :)

I strongly agree that teaching is absolutely the best tool for learning. I wrote this article in part because I got inspired by the "What I cannot create, I do not understand" quote by Feynman.

I agree that the article is disorganized, and it's not only a feeling: it literally is! I had to shuffle around parts of the chapter about radiometry because I couldn't find the right place for it. I was kind of in a rush because I submitted this article as part of 3blue1brown's summer of math exposition.

I find it interesting that between the 3rd and 4th edition of pbr book, chapters have been reorganized too. Monte Carlo Integration has been moved to an earlier chapter before radiometry, reflection models..etc which I found confusing, but I suppose the authors had a good reason to do that. So I have a lot to learn on how to improve my writing and how to organize ideas into something coherent.

[0] https://some.3b1b.co/

imadr··on Physically based rendering from first principles
I wrote everything from scratch in javascript and webgl. You can check the entire source code of the article here: https://imadr.me/pbr/main.js

Beaware though, it's a 8000+ lines of code js file that is very badly organized, it's by no mean a reference for good quality code. However I find writing everything by hand easier in the long term than using already existing libraries for example.

The code includes all the math functions, mesh primitive generation, shaders and even a sketchy text renderer using sdf fonts.

If I had to make it again I would use typescript, type errors were the biggest source of bugs.

imadr··on Physically based rendering from first principles
I might be a stupid question but how hard would that be to explain, and to understand?

If you had to teach an alien from another universe physically based rendering:

- In an exhaustive manner and,

- You're only allowed to explain something if it derives from something more "fundamental" until we reach the most comprehensive physical models we have

How hard would be the math behind it for example? Because realistically in my article the hardest piece of math is a very basic integral

Could I for example start reading these Feynman lectures[0] and get up to speed on everything there is to know about photon-surface interaction?

[0] https://www.feynmanlectures.caltech.edu/

imadr··on Physically based rendering from first principles
Thanks for the constructive criticism! A few points I'd like to discuss:

Let's suppose the aim of the article was indeed to learn PBR from first principles, what would it look like? Quantum electrodynamics?

I think there is merit in exploring different physical models for fun and scientific curiosity (like I mentioned in the first chapter). I (personally) feel that it's boring to just dump equations like Snell's law without exploring the deeper meaning behind it. I also feel that it's easier to grasp if you have some surface knowledge about more complex physical models.

I agree however that I probably made many mistakes since I didn't study physics, I'd appreciate any feedback to improve that.

I dislike "Physically Based Rendering: From Theory To Implementation", I personally think that the literate programming approach of the book is way too confusing and disorganized. I prefer the SIGGRAPH talk by Naty Hoffman[0]

[0] https://www.youtube.com/watch?v=j-A0mwsJRmk

imadr··on Physically based rendering from first principles
I developed this article on firefox desktop and tested it on safari ios, and here I was thinking my testing was exhaustive! I just hope it’s not some obscure webgl bug on android

Anyways thanks for the feedback I’ll look into it

imadr··on Manim: Animation engine for explanatory math videos
And it shouldn't need to. Making (relatively) simple changes like checking-in fixed versions of dependencies in the code base and abstracting away core logic from the platform layer goes a long way. This works well for video games
imadr··on Undefined Behavior in C and C++ (2024)
I haven't used Rust extensively so I can't make any criticism besides that I find compilation times to be slower than C
imadr··on Genie 3: A new frontier for world models
The model has multiple layers which are basically a giant non-linear equation to predict the final shaded pixel, I don't see how it's inherently difference from a shader outputing a pixel "at once".

Correct me if I'm wrong, but I don't see how you can simulate a PBR pixel without doing ANY pbr computation whatsoever.

For example one could imagine a very simple program computing sin(x), or a giant multi-layered model that does the same, wouldn't it just be a latent, more-or-less compressed version of sin(x)?

imadr··on Genie 3: A new frontier for world models
Don't you think a sufficiently advanced model will end up emulating what normal 3D engines already do mathematically? At least for the rendering part, I don't see you can "compress" the meaning behind light interaction without ending up with a somewhat latent representation of the rendering equation
imadr··on It's still worth blogging in the age of AI
> So, I don't think you can make a name for yourself by blogging alone

Or maybe you could if you post bangers like https://ciechanow.ski/

Nice blog either way!

imadr··on Hacking millions of modems and investigating who hacked my modem
>Why?

So this security researcher can keep doing his research without worrying about paying bills. The company gets cheap security audit, the researcher gets money, everybody wins

imadr··on Hacking millions of modems and investigating who hacked my modem
I would agree with everything you said, If we ignore the fact that the company has billions of dollars in revenue and paying a bug bounty is a drop in the ocean for them.

Do you think it's reasonable to say the the ethics of what you call "extortion" should depend with how big the company is? I'm obviously not advocating for making a small company pay more than they can manage

imadr··on Hacking millions of modems and investigating who hacked my modem
I assumed they offered a bounty for bug disclosure? You mean to tell me that an internet provider with 11 billion in revenue can't pay someone that found a bug impacting all their clients?

Frankly he could have just sold the vulnerability to the highest bidder

imadr··on Marimo: Interactive Fluffy Ball
I spent 10 minutes playing around with this https://oimo.io/works/water3d/
imadr··on Desulfovibrio bacteria are probable causes of Parkinson's disease: study
Wow this sounds incredible. How do people get exposed to this bacteria? Is it common enough to be a concern and how simple is the treatment?
imadr··on Ask HN: Who is hiring? (February 2023)
I had to take some weird psychometric assessment (GIA/PPA) for a software engineer position
Page 1 of 2Next →