Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Show HN: Solve Geometric Programs in the Browser (prandtl.design)
49 points by lochieferrier on March 6, 2017 | hide | past | favorite | 22 comments



Similar Android game I've been bashing my head against for a while: https://play.google.com/store/apps/details?id=com.hil_hk.euc...


Seconded. On the iPad it's one of the few games that are decidedly better to play with the Apple Pencil or another stylus if you have it.


The problem of solving angular constraints has interested me for a while. I want to be able to programmatically lay out an optical setup with SVG. Here is my work so far, but I've run up against the problem of dealing with cyclic graphs. The "rewrite" branch uses a different approach based on an academic paper.

https://github.com/SeanDS/optivis/tree/rewrite


Wouldn't this be much more convenient in the form of, say, a Python library that the user can run on their local machine?


You can already do this exact thing with a Python library on the user machine, see here for install instructions: https://gpkit.readthedocs.io/en/latest/installation.html

The intent here is to make it easy for people to get started and quickly write models, without needing to go through installing a set of packages.


There are also services that let you run arbitrary Python code in the browser, e.g. [1].

[1] https://trinket.io/


For sure, but they have a limited range of packages installed, and can be tricky to tune towards a specific need.


I'm not quite able to run the code (too much load on the server probably). But is this something that can solve LPs in the browser (possibly more than just LPs, I think)? This would be incredibly helpful for many people I'm sure--all the existing online ones have arcane input reqs (and unhelpful errors) and standalone applications either cost money (Gurobi, cplex) or are not easy to use at all (gnu glpk).


Yes, there was an issue with someone nuking the compiler box, and we're working on fixing the demo up.

This does more than LPs, it lets you formulate GPs, which are a way of doing non-linear analytical optimization. See here for more: https://gpkit.readthedocs.io/en/latest/gp101.html#what-is-a-...


HN community should add an internet rule:

xx) If it's online, it will get nuked.


Doesn't scale


I dont think that's fair to them. Having a GP solver in the bg is very hard and very computationally expensive -- their costs are way more than similar Show HN and saying "Doesn't scale" I don't believe acknowledges this well


No, it is not unfair. It is valid, concise, actionable feedback, without personal attacks based on empirical evidence.

If you are not comfortable with constructive feedback then don't post an open invitation for feedback.

Then, it can be implemented in a way that scales. Since this is python + gpkit, maybe it could be executed on the client-side using emscripten. Then if the traffic is too high you can serve it from a CDN.


No, that was valid, concise, actionable feedback. Your original post was flippant and was not actionable. Although since gpkit almost assuredly uses the cPython c abi, and there is no emscripten backend for cPython, even this (much less flippant and much more actionable and valid) feedback isn't actually actionable because you cannot execute python+some c module using emscripten.


I took the time to try the thing, and it did not work for me due to timeouts. Others reported the same. Therefore it was showing signs of not scaling. And I pointed it out through a concise comment in a post which was about requesting for feedback (the objective of the Ask HN section). Could not provide more feedback since I could not use it.

"flippant" means "not showing a serious or respectful attitude". I do not know at which point noting that a system is not scaling as feedback in a request for feedback post suddenly is disrespectful.

But now read at your own post, with the ad hominem. Seems disrespectful, maybe even "flippant". What is the point of acting in the exact same way you so fiercely criticize?

Then, how sure are you about that exactly? you can run a functional Linux kernel through emscripten, there must be a way to get a Python extension to work.


>>Therefore it was showing signs of not scaling.

Perhaps, although it seems as though it was less "not scaling" and more "someone exploited our system to spin the CPU" from my reading of the thread.

>"flippant" means "not showing a serious or respectful attitude"

And I hold to the claim that a 2 word response to an ask HN is absolutely flippant. Please explain to me what is actionable about "Doesn't scale"? That is a problem. Or, well, it could be a problem, it might not be a worry for them, but lets assume it is. "Doesn't scale" isn't actionable. Had your second post been the only post you made here, I don't think we'd be having this discussion, because while in this case it turns out to be not very helpful, it is at least actionable. They can look into emscripten and python, see that it probably won't work in this case, and move on. "Doesn't scale" doesn't do that.

Its the difference between feedback that is "you have a lisp" and "you have a lisp, try practicing speaking lyrically or rhythmically and it might disappear." It might help, it might not, but its actionable. "you have a lisp" isn't actionable.

I'll quote the Show HN Guidelines:

>Instead of "you're doing it wrong", suggest alternatives. When someone is learning, help them learn more.

As for what you think of my comment, I have a few objections to your statement:

1. I don't actually see an 'ad hominem' anywhere, I only commented on your original comment and how your feedback was unhelpful. No commentary on the user, only the content. Please specify where I did, because I would prefer to not go around attacking people on HN, even unintentionally. 2. I went so far as to complement your second post and say that it was an example of good feedback. 3. You didn't post a Show HN, there are no guidelines on my feedback to you ;)

That said, if your emscripten suggestion was made in good faith and not just a CYA "suggestion", I apologize, I misread your tone.


When a system is not scaling you can increase capacity to mitigate the problem, to buy time while trying to root cause and fix the problem.

You can also take the site down and display an error page.

At no moment I said "you are doing it wrong". I pointed out "it doesn't scale". A factual statement similar to "it's 11:13 am" or "it's raining".


And like I said "you have a lisp" isn't actionable feedback. It is a factual statement, but it suggests no action, and in fact, the person with the lisp likely already knows.

Because "it doesn't scale" doesn't imply that you need to increase capacity right now. "It doesn't scale" could mean that "this will be problematic when you have 2,000,000 users", or as you used it, it could mean "I can't get to your site right now". Personally I don't consider "it doesn't scale" to mean "I can't use your app right now".

Which comes back to my core point, once again, that your original post, "Doesn't scale", isn't actionable feedback, it didn't clearly convey any immediate problem nor did it provide a clear action to follow. The fact that you've had to clarify your post to multiple other users should be evidence of that.


OK dude, I will concede you the 1st place in Monty Python Argument Clinic 2017. Because at this point I simply don't care. Have an excellent day.


  -- Result received at 14:30:3, response time of 24.714s --
  
  Execution Timed Out  
Seems very interesting, will check it out and hopefully provide some feedback when it's back online


It's online now! Sorry it had the usual HN flop.




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

Search: