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

Could you talk about the arithmetic you are using to make mixing colors work?


The resulting color of a paint mix is a weighted geometric mean of the paints' reflectance curves. The code is available on GitHub: <https://github.com/eugene-khyst/artistassistapp/blob/main/sr...>.


Awesome! Great work on this project. Congratulations!


BTW it's possible to see the "Reflectance chart". It shows reflectance curves of the paints and the mix. Here is a demo video on YouTube: <https://youtu.be/jC1HAeegm2I?feature=shared&t=157>.


Is it just me who finds the old website design much better than the redesign? The new redesigned website seems to lack character that the old website had.


Can you (or anyone who has run Lisp software in production) share how the experience has been? Do the management and other colleagues like it? Do they express any concerns? Want to understand the social aspect of running Lisp in production.


I’ve run lisp in production (SBCL). Fast to develop and run, and solid. Unfortunately the engineering team tasked with taking the product forward decided to rewrite it entirely in some version of react on (the quite unfortunately named, from my point of view) AWS lambdas because the frameworks these days are so choc full of stuff, most importantly security stuff!, that nothing can really compete with them anymore, even though the engineering overhead to use them is massive. (Edit: To be fair, the engineering overhead for me to write all that crap into Lisp would have been way more massive.) As a non-user-facing back-end, however, lisp is fantastic.


We're using CL in prod for an embedded system (https://evacsound.com/) for some years now, fairly smooth sailing. It started out as an MVP/prototype so implementation was of no concern, then gained enough velocity and market interest that a rewrite was infeasible. We re-train talent on the job instead.

Incidentally I also did an algo trading system in CL at some point (who didn't?). The sibling comment is spot on that outside of deep backend it's a self-reinforcing ecosystem with too much focus on auxiliary stuff if you have to re-implement it.


> As soon as something enters the standard library its API is basically set in stone

Is that really all that different from Python?


No, that’s the point: if you put this stuff in the standard library, it gets frozen forever, and that’s why Rust doesn’t.


To quote the python developers guide:

> Because of Python’s conservative nature when it comes to backwards-compatibility, when a module is added to the stdlib its API becomes frozen.

So it sounds like they do do something fairly similar, but just a different mindset on adding libraries


> do not criticise

Nobody said that. Of course you can criticize. But be aware that your criticism itself could be subject to criticism.


That's not really what's going on here though, because it isn't counter criticism, or a response to the criticism, but is instead simply "you shouldn't get to criticise"


I can appreciate the points about not knowing enough to engage an expert early or using a good wrapper library, etc. But this point blows my mind:

> There’s this Network Partition thing, it’s kind of a big deal

How could someone using RabbitMQ cluster not consider how the cluster would behave during a partition? This is exactly the kind of thing that should be tested in a safe environment before running the cluster in production.

Testing for network partitions is not something one wishes someone else would have told. It is an essential responsibility for anyone in a software engineering role. Not doing some basic testing to understand partition scenarios before running a cluster (any type of cluster) in production is a disaster just waiting to happen.


Interesting! Any examples of such languages?


Java is one popular example. You get "error: not a statement".


`alert("hello")` is an expression and also a statement.

  a = alert("hello"); // Assigns a to undefined
What isn't an expression? An `if` statement is not an expression.

  a = if (true) alert("hello"); // Uncaught SyntaxError: Unexpected token 'if'


My point was that GP's rule of thumb (if it has a keyword, it's a statement, otherwise is an expression) is wrong on both ends.

A JS program is composed out of statements, which may contain expressions. In particular, in JS, any expression is also valid as a statement. This is not true in all languages (for example, `2` is not a valid statement in Go).


> My point was that GP's rule of thumb (if it has a keyword, it's a statement, otherwise is an expression) is wrong on both ends.

I do agree!

Sorry to bother you but I am a bit confused about this part of your comment:

> `alert("Hello, World!")` or `doSomething()` are usually statements, not expressions;

Can you please clarify what you mean here? Do you mean `alert("Hello, World!")` is an expression? Or do you mean it is not an expression? Or did you mistype?

Your `console.log( /* put thing here */ )` test is a pretty good one and indeed `console.log(alert("Hello, World!"))` passes this test.


I meant that you would usually encounter those as statements, as in the following example:

  function foo() {
    alert("Hello, World!");
    doSomething();
  }
And not as expressions (as in your example of `console.log(alert("Hello, World"))`.

Btw, a better rule of thumb for JS is "if you can add `;` after it and not alter the meaning of the program, it's a statement; otherwise it's an expression".


Really needs Mathjax/Katex support otherwise the math formulas become very hard to read. Adds mental load just to parse the math text and make sense of it. Take a look at any of the questions and answers at https://math.stackexchange.com/ to see how it should really be done.


That's a good point. We've been working on the integration of KaTeX to our software.

I'm also a StackExchange user like you and love their mission. However, our main mission in the Study Hab project is answering homework questions mostly like Chegg, but for free.


> I'm surprised there aren't more comments on this on Hacker News considering it's the Fields Medal.

Many would argue that looking for engineering applications in mathematics is not why mathematicians do mathematics. That mathematics does sometimes have engineering applications is a mysterious and beautiful side effect. It isn't the motivation behind doing mathematics.


Indeed, a possibly apocryphal tale holds that matrix algebra, while a beautiful mathematical construct, was considered by its inventor to be utterly useless. We know better today.


Oh I know. I just thought that more people would be excited about this and maybe point out where engineering applications might be possible if at all.


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

Search: