Hacker News new | past | comments | ask | show | jobs | submit | DrDroop's comments login

There was a time that SVG was going to replace flash, or something like that, but these days people just use the "simple" subset. I've seen multiple implementations for the vector graphics based on compute shaders, impressive stuff, can render the tiger svg with no problem. Parsing the bezier curves out of the xml is not that hard compared to all the work needed the have this work on the GPU. Most people also don't understand XML, I'm building a sort of compiler for it with full support for Namespaces, Schema, XLinks and all of that, boring stuff that needs to be done, I don't understand why this needs to be your problem though and even then those standard are not THAT hard. You will only understand XML if you need to use XML. Yes XML is verbose but also your mom is fat and you still love her don't you? Developers look at me weird when I start talking XML, like I am some sort of boomer that want to limit women's right to choice or something like that. Better not to mention it, or I'll have to listen to them explaining why JSON is just better for hours on end without ever considering the strange bizz requirements I labour under.


> I'm building a sort of compiler for it with full support for Namespaces, Schema, XLinks and all of that, boring stuff that needs to be done, I don't understand why this needs to be your problem though

Well if you just do the generic version uncritically, you end up with all sorts of security vulnerabilities. Things like xml external entities, xinclude have causes quite a few security issues over the years when processing svgs.


What are you gonna do if you want to give a user the option to display the same search result in a html table and a map drawn on a canvas element, or maybe some info viz thing like a chart? No htmx fanboy has a nice solution for this. Im fine with making hyper media part of the synthesis but ignoring features that you have for free with modern hybrid ssr spa is not helping.


I'm assuming that you're referring to the fact that if you get the data as JSON from the server side, you can use it to render out your multiple visualisations. If this is not what you're getting at, my apologies.

If you send the HTML table over the wire, you can use it as the datasource for the other visualisations, same as you would with JSON. You can extend it with `data-` attributes if necessary to get some extra machine-readable information in there, but I have not needed to do that yet.

On the application I'm currently working on, we do this and then have a listener on the htmx event to turn the table into a d3.js graph. It works pretty well, and has the advantage that if someone is using our application with JavaScript turned off, they still get the table with all the data.


Nice, what if I have a 3D model and I want to show extra info in a html div about a vertex, edge, face or object that I have selected?


This has nothing to with HTMX/Hypermedia, this is an issue with SSR. No pure SSR frameworks can do this.

You would do this the same way you would in any other website, have the server send the data required (Hypermedia or not) and use client side JavaScript to do the client side reactivity.

This is like asking why doesn't HTMX allow me to change the colour of a button when I hover over it, why should I have to do this on the client?


Then use a different tool which provides the precise capabilities you are needing? I'm confused by your hostility. HTMX doesn't have to solve every problem to be considered viable.


Boy you need to grow up quickly if you find this hostile already


This is doable, but for complex and component heavy UIs with much JS functionality and client-side-state HTMX is probably not the ideal choice. But for many other use-cases it is. It's good for probably 70% of the use-cases, the other 30% are for SPAs.


you would render the result as an HTML table and then as JSON, i would guess

https://htmx.org/essays/splitting-your-apis/

https://htmx.org/essays/mvc/


No one is stopping you from still having a JSON API if your hypothetical use case requires it.

The Accept header is there for a reason


I would use SolidJS with SolidStart because I think technical merit is more important then something with a lot of social proof.


1. Only to the extend that this also benefits the the genes of a coerced female.

2. Maybe it is, but not sure if that needs to be a problem.

3. No, at least admittance rate of blacks vs asians would make one believe the opposite is true

4. Yes for the vast majority.

5. Probably, but most conservative philosophy is boring and backwards anyway.

6. Are we counting a history of oppression as part of racial biases here?

7. Euh yeah, how is this even controversial?

8. I don't/can't know, but it would surprise me if it was higher then 10%.

9. I would not classify epigenetic as a social influence, so no. (maybe use the word environmental here)

10. No, but unit cohesion can help performance a lot.

I hope this helps


This is the opposite of a: scientific b: the point of the study


I know, but that doesn't mean that I am not helping


To be honest, you're not answering a lot of the questions.

That's not a criticism. That was the point of the post. That a lot of people read a question, and allow emotion to get the better of them. (I would argue that nearly all people do this.)

Just as a for instance, you answered "no" to 3. This was based on, again, according to you, "admittance rates of blacks vs asians". But if you read the question, it was about discrimination in "academia". Point being, you had your preconceived narrative, which would be confirmed if you took "academia" to mean undergraduate admissions. And people who answer "yes" have their preconceived narrative, which would be confirmed if you took "academia" to mean, say, hiring into academia from a pool of people who already received a PhD. (Even those receiving a PhD from the same department in the same school.)

The question as posed, is not answerable in an objective manner without qualifications. But you gave an answer, which will be taken as an answer without qualifications. Which evokes claims of bias and on and on and on. For instance, will you sit on a hiring panel for your department after such an answer? And, at root, the trouble is only due to the question being an unfocused question, calibrated to evoke an emotional reaction and an almost instinctual deviation from scientific rigor. Not really due to the biases or baser instincts of people offering an answer of yes or no to said question.

My recommendation:

We should stop with all the sensitivity training, and instead have yearly reinforcement training on the principles of scientific rigor. Training where we work through just these sorts of exercises so that people can see how easily they can be moved away from the scientific method if they're not paying attention.


Thanks for your help, we appreciated it a ton?


the fact it is getting considerable downvotes lends credence to one of the main points of the study. we're seeing that happen in real-time, via downvotes.

the point of the study is that there may be some -- emphasis on some -- evidence in favor of those controversial views, but attempting to air or even attempting a discussion about them leads to immediate backlashes.


The point wasn't the answers themselves. It was whether providing any answer at all would get you cancelled.


>It was whether ~~providing any answer~~ asking the question at all at all would get you cancelled.

FTFY

If someone were so uncouth to ask the question, there is a prescribed "correct" answer for others to immediately repeat, mantra-like, that will avoid social and professional opprobrium.


I used to be more into functional programming but then I found other excuses to learn mathematics. I still think about how my imperative implementation can be turned into a functional one, or the other way around, but honestly the computer graphics programmers and machine learning engineers are doing cooler stuff. Even learning about category theory without needing to have an excuse to implement it makes it a lot more enjoyable.


I never managed to finish my degree mainly due to dyslexia, and started working as a self-taught programmer, but I can only second this opinion. My CV doesn't get past most first screenings and even then people sort of treat you like a second class citizen.

Maybe I should start lying about my lack of a degree like a real con man.


> Maybe I should start lying about my lack of a degree like a real con man.

Nah. The world needs more people with principles and strong moral character.


...to exploit.


Perhaps. But let's assume those of us who've "made it" are generally acting in good faith (because a world-system built on sand will never last) and not simply slaves to their hind brain.


That seems a very bold assumption these days, as indeed does that that this particular world-system is not in fact built on sand.


Experience report: Impossible to write any serious complex application in this. Lacks components for basic things everyone gets for free on other platforms, things like video, maps or rich text components. Nor does if offer any clear easy path to add them yourself. Breaking API changes every few months. No way to theme something. Immediate mode graphics are great until you need to start managing some complex state, then you are forced to implement your own retainer mode graphics. Again it reintroduces problems that have been solved a long time ago. Very fancy renderer based on piet-gpu that only takes control points of a bezier curve as input and tessellates everything from that. Cool concept, but try drawing a real circle with that, and some some approximation with 4 bezier curves. Wasm is not more then a proof of concept that won't be production ready without years of engineering by compile team. Overall nice for Go developers that wanna do some simple UI with lists and input fields.


You can write anything with it.

V0.6 made your issues much less tricky.

Also there is a Material Design theme. And also light and dark.

Here is an excellent example of a gioui app that has light / dark with a custom theme.

https://github.com/chapar-rest/chapar

If you’re on MAC or Windows it’s just “ go run .”.

If you wanted text keening or text sweeping around an arc or RTL / LRT it can do it thanks to github.com/go-text/typesetting

Complex widgets for Calendar spinners or diagrams are out there on GitHub. An effort to bring these together is lacking, and I reckon that if all these things weee brought together it would definitely encourage more developers to dive in.


> Breaking API changes every few months.

I find this to be the case with a depressing amount of Google code. They do not seem to have a culture which values not breaking their users' code.


It's even a core point for Carbon, their hopeful C++ replacement

Under language goals on their readme,

> We also have explicit non-goals for Carbon, notably including:

> * A stable application binary interface (ABI) for the entire language and library

> * Perfect backwards or forwards compatibility

There's also this blurb

> Our goals are focused on migration from one version of Carbon to the next rather than compatibility between them. This is rooted in our experience with evolving software over time more generally and a live-at-head model. Any transition, whether based on backward compatibility or a migration plan, will require some manual intervention despite our best efforts, due to Hyrum's Law, and so we should acknowledge that upgrades require active migrations.

https://github.com/carbon-language/carbon-lang/blob/trunk/do...


Gio isn't made by Google


>Go was invented at Google by Rob Pike, Ken Thomson, and Robert Griesemer.


My bad, you said Gio.


This isn’t true in Flutter. They literally bake into the CLI with each release which will automatically identify and upgrade any parts in your application using old APIs without any intervention required. It’s literally the opposite of what you’re describing here.

https://docs.flutter.dev/tools/flutter-fix


What you described is Google breaking your code constantly but also giving you a tool to automatically fix the code they broke, so it fits well within the general philosophy of not taking breaking changes seriously.

It sounds like the tool might make the specific case of flutter version upgrades easier though, if the tool works well, so that's nice. Most Google software doesn't come with similar tools.


There is nothing about that that allows you to come to a good faith conclusion of “doesn’t take breaking changes seriously” when they literally do all of the work for you.


You're right. I should've said they have no qualms about introducing breaking changes.


If you care about WASM, Uno Platform has decent support for it, there’s also AvaloniaUI and both are stable at this point with relatively rich control collections and libraries.


No, I think there is more to it then people what to admit. For example, there is a lot of comorbidity between ADHD and narcissism. There might be less social stigma about being the quirky inattentive ADHDer rather then the selfish narcissist but they are both attention disorders in some way. MRI scans of people diagnosed with NPD show that there brains prefer their dreams over reality. Meaning, there is a pathway in your brain for sensory information (exteroception) and a pathway for predictions your brain makes (interoception). For people with ADHD and NPD their interoception will often overwrite their exteroception when there is a conflicting signal.


Ooh! This is exactly what I see in my teens' friends - a preference for their fantasy world over reality. Do you have a reference?


Sorry, I can't find it anymore. I got it from the youtube channel by Sam Vaknin. He is a convicted coin man with NPD, so take everything he says with a grain of salt. That having said, his work tend to lack the sort of victim pandering you see in other narcissism "experts".

EDIT: there are a number of other studies on google scholar linking ADHD to psychopathy (in prison populations), just not the one with the fMRI scans.


The IT job market is a two sided lemon market, people may lie on their CV but companies can be very abusive as well. If you don't do what OP suggests, people will not respect you. I've had five developers join my interview call to see if I can implement a palindrome checker. This is proof that non of them bothered to read my CV and check out my github projects. This is not respectful, and you have to stand your ground against such nonsens. Let them now this is not what you expect from people working for you and and that you expect better from them in the future. If they don't like that you won't have lost anything.


Was it the task itself you feel was disrespectful or the way they ran it? Anyone can put up fake/inflated CV so it's not really proof they didn't bother to read it, GitHub can be easier or harder to fake/inflate depending on the projects. Doing something like a quick palindrome checker to show "Hey, yep - I'm real not some random inflated applicant you probably got 10 applications of alongside mine" seems more than reasonable/respectful (by both sides). I can also easily see how 5 people can hop on and completely run that task in the wrong way and come off as being know it all douchebags or the like but that'd be a different independent issue really.


Why even show up with 5 people.


Lets stop a good thing from happening and then congratulate ourselves we have stopped bad thing from happening.


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

Search: