Ask HN: Would You Use a Business Card Printing API? - <AUTHOR> Would You Use a Business Card Printing API? <comment><USER2> No. I don't use business cards. If I did, the answer would still be no.

What use cases or pain points do you imagine this would solve?

<comment><AUTHOR> I guess the use would be to simply have that ability programmatically.

<comment><USER2> That's what it is, yes. But why would someone want that programmatic ability? What is the advantage over current methods?

<comment><AUTHOR> It may be a functionality you can integrate in your applications such as Corporate collateral.</comment></comment></comment></comment>


Chinese scientists demonstrate 2Mbps Internet connection over LED - <AUTHOR> http://www.engadget.com/2010/05/17/chinese-scientists-demonstrate-2mbps-internet-connection-over-le/

<comment><USER2> Line of sight networking was obsoleted by WiFi and Bluetooth. What problem does this solve?

The plant using to light to communicate "water me" is cute though, hehe.

<comment><USER3> If you mean this specific solution, then yes - Bluetooth is probably more advanced. If you mean general "line of sight" networking, then no. Laser connections between buildings are doing just fine and provide communication on bigger ranges than customer-grade wireless. There's also no interference between many lasers in the same area. Once calibrated, laser links provide stable (or at least more stable than wifi) quality.

</comment></comment><comment><USER4> these folks managed faster point to point free space optical links years ago: <http://ronja.twibright.com/>

</comment><comment><USER5> Soon, Christmas lights will be considered a hacking tool.</comment>


A day after claiming total power, Trump caves in - <AUTHOR> https://www.cnn.com/2020/04/14/opinions/trump-claims-total-power-and-then-caves-in-filipovic/index.html <comment><USER2> Ahab's been pacing the decks again.</comment>


Hamming, the Art of Doing Science and Engineering: Learning to Learn - <AUTHOR> https://www.youtube.com/watch?v=AD4b-52jtos&list=PL2FF649D0C4407B30 <comment><AUTHOR> [http://worrydream.com/refs/Hamming- TheArtOfDoingScienceAndEn...](http://worrydream.com/refs/Hamming- TheArtOfDoingScienceAndEngineering.pdf)</comment>


Jaeger – A Distributed Tracing System - <AUTHOR> https://github.com/jaegertracing/jaeger <comment><USER3> Neat! I was looking into tracing solutions for our k8s cluster the other day and was going to look into setting up Zipkin. Now I'll this to my list of tools to evaluate. I found this blog post by uber informative [https://eng.uber.com/distributed-tracing/](https://eng.uber.com/distributed- tracing/) so maybe there is no need to even setting up Zipkin and just start with Jaegar?

<comment><USER4> Most folks will choose either Zipkin or Jaeger, but both are OpenTracing- compatible distributed tracing systems. You might find the Cloud Native Landscape useful for thinking about the options: [https://github.com/cncf/landscape/blob/master/README.md](https://github.com/cncf/landscape/blob/master/README.md)

Disclosure: I'm the executive director of CNCF, which just adopted Jaeger 2 weeks ago, and I'm an author of the landscape.

<comment><USER5> Last I checked "OpenTracing-compatible" only went as far as using common terminology. Tbh I was a bit disappointed by this; has more been defined since? E.g. are there now shared schemas, APIs of sorts?

<comment><USER4> Yes, OpenTracing is an API, with bindings currently available in 9 languages. Please take a look.

[http://opentracing.io/](http://opentracing.io/)

<comment><USER6> Only the semantics and libraries implementing them are there. The wire format is not specified, which is a pretty annoying problem to deal with.

<comment><USER7> It's weird for most people. We're used to cross-language wire protocols. OpenTracing is different.

An analogy is SLF4J for Java logging. All libraries, etc use the same interface and the final user determines the backend: java.util, Logback. This makes sense if you have many authors of libraries with a cross-cutting concern.

This really makes OpenTracing half a dozen different standards, one per language, with common semantics.

Should it be about a wire protocol instead? Discussion at [https://github.com/opentracing/specification/issues/34](https://github.com/opentracing/specification/issues/34)

</comment></comment></comment></comment></comment></comment><comment><USER8> I recently used Jaeger to visualize what my distributed system is doing. Got it done in about 2 hours; pretty pleased with that. Jaeger is visually pleasing, available via docker and just worked for me.

<comment><USER9> Would you be interested in writing a guest blog post about it?

</comment></comment><comment><USER10> I've been using Jaeger for a few months now and it performs really well. I even wrote a custom tracer for an unsupported language and it was relatively straight forward.

There are a few things I wish it did, but they are all on the roadmap: [http://jaeger.readthedocs.io/en/latest/roadmap/](http://jaeger.readthedocs.io/en/latest/roadmap/)

<comment><USER9> If you are interested in contributing it to the jaegertracing GitHub repository, I'm sure the Jaeger community would welcome it :)

</comment></comment><comment><USER11> Shameless plug:

A friend of mine, Felix Barnsteiner, wrote a profiler for Java based applications, called stagemonitor [1]. He started working on it in 2013 for his masters thesis. Since then, he steadily worked on it in the company as well as in his spare time. Some months ago, he implemented support for distributed tracing. Stagemonitor implements Open Tracing. It also collects frontend performance data, called end user monitoring. They get correlated automatically. And the best thing about it: stagemonitor is free and open source (APL). Get in touch if you have any questions.

[1]: [http://www.stagemonitor.org/](http://www.stagemonitor.org/)

</comment><comment><USER12> This seems like a horror story about a large company that decided to depart from monolithic architectures to one of microservices and found that one set of problems was exchanged for another. Was there a net gain?

</comment><comment><USER13> I'm disappointed that all of the open-source tracing systems have adopted the Dapper [0] model. It's understandable why: it's extremely simple to implement, as it handles scaling challenges by doing client-side sampling.

A bit of background about how Dapper-style distributed tracing works. Things typically start with an RPC call of some kind (typically from an external source like a public load balancer). At that point, you must decide whether to trace this request or not, which is typically done as a random sample (say, 1% of requests). At that point, the request gets assigned a _trace id_, a random identifier for that request.

The trace id is stored in some request context and propagated to each subsequent service. Each service, meanwhile, divides up its request processing flow into a series of "spans" which represent some piece of computation. For example, a span cover an RPC call or a DB query. Spans are identified by a random _span id_. Once a request has been sampled, all spans for that request are sent to a central span collector where they're stored for later querying.

This model is simple but very limited. It's often hard to know whether a trace is interesting at the outset, hence the reliance on random sampling. For example, you might want to understand why your 99p latency is high, but if you're just sampling 1% the 99p requests will only be 0.01% of your sample.

More generally, interesting events (like errors or slow requests) tend to be rare, and sampling a random, small percent of requests is unlikely to turn up the interesting cases.

A better model, as implemented by lightstep [1] (and an in-progress distributed tracer I've been working on) is to collect all spans. Even with very high request volume it's reasonable to store all spans for at least a few minutes. Doing so opens up all sorts of interesting possibilities, because you can start tracing a request at any point during that window. For example, you might want to trace all requests that have errors in them. Or all requests that take longer than a certain time. Or get a google sample of requests across different latency buckets. Or requests that violate some application invariants you've defined.

Ultimately, though, distributed tracing is so helpful for understanding complex distributed systems and webs of microservices, and it's exciting to see more open-source competition for zipkin.

[0] Dapper is Google's distributed tracing system. The paper ([https://research.google.com/pubs/pub36356.html](https://research.google.com/pubs/pub36356.html)) kicked off a lot of interest in distributed tracing in the broader community. [1] [http://lightstep.com/](http://lightstep.com/)

<comment><USER14> That sounds pretty expensive. With dapper the trace span annotations do nothing if the request isn't being traced. If it is being traced you might have significant costs, along the lines of sprintf("%.03f", ...) or other very cpu-intensive activity. This is OK when you trace one per million but when you trace everything you have to think about the cost. This could lead to either just using more CPU than you really wanted, or to discourage trace annotations. Either would be bad.

<comment><USER13> Yeah, that's definitely an upside of the dapper approach--very, very minimal overhead for non-traced requests. However for the vast majority of use cases a bit of overhead (microseconds per span) tends to be unnoticeable, and the benefits in terms of introspectability are huge. In general, the overhead is mitigated by the fact that spans tend to be pretty large (on the ms-scale).

<comment><USER15> I guess it depends on your use case. If you are indeed interested in the 99p latency, then yes, the only way would be to trace everything. But in that case, couldn't you temporarily set the Dapper probability to 100%, record the data you need, and then turn it back down. It seems like a lot more malleable for different use cases.

</comment></comment></comment></comment><comment><USER16> How is this different from e.g. AppDynamics or Dynatrace for example? Technically speaking, not free/commercial.

From the documentation it doesn't look like much, except probably the biggest downside is that you have to add your instrumentation points manually? i.e. there is code change required.

<comment><USER9> Jaeger is just the concrete implementation. OpenTracing is what you should think about using when writing your application. That said, you could benefit from automatic instrumentation via OpenTracing framework integration libraries (JAX-RS, Servlets, ...). Or use the Java Agent. But in the end, I think there _is_ value in manually instrumenting your code, specially around your business transactions. This way, you can monitor your business metrics, instead of "http requests" or "cpu load".

</comment></comment><comment><USER17> Is there a pros/cons comparison to Zipkin? Browsed the docs and couldn't find anything.

<comment><USER18> 100x better UI among other things. Jaeger has a dedicated team and resources and that shows. They are taking the time to write good docs, build demos, create a thoughtful UI, etc. I definitely recommend it. Being OpenTracing native also helps. Full disclosure, I work on the OpenTracing project.

</comment></comment><comment><USER19> Does this run in production or is it used for testing? We wrote a distributed testing system ( [https://github.com/gundb/panic- server](https://github.com/gundb/panic-server) ), so I'm trying to understand if integrating Jaeger would be helpful. If Jaeger is run on a production stack, I'd be curious to understand how that works (are there any tech talks on it yet?). If it is designed to run for tests, that makes sense, but then does it depend upon another distributed testing tool? If so, I'd love to see that tool. Glad to see it be Open Sourced!!!

<comment><USER20> Yes, Jaeger is used in production at Uber and many other companies. Our original blog post on the history of Jaeger: [https://eng.uber.com/distributed-tracing/](https://eng.uber.com/distributed- tracing/)

</comment></comment><comment><USER21> What's the performance hit for using Jaeger in production? Are there benchmarks?

</comment><comment><USER22> what is tracing?

<comment><USER23> In this context, it's the network-wide version of a stack trace.

Instead of just method calls in a process, you take a top-level (HTTP) request and see all the various upstream service calls and their internal logic involved in completing that request. Useful for micro/multi-service based architectures but you can trace anything because it's a standard output format.

<comment><USER18> I have to say, you described tracing really well! I work on the OpenTracing project [1] (and at LightStep) and have been describing tracing to people for a while and your explanation is way better haha :-) [1] opentracing.io

</comment></comment></comment><comment><USER24> Why would you use this over a logging framework?

</comment><comment><USER25> Is it something similar to sysdig?

<comment><USER18> Sysdig is focused on the networking layer. This is for the application layer (L7).

<comment><USER26> Actually sysdig can do application, container, host, network. Most of sysdig use cases tend to be more focused on the software running on a node vs the network itself.

</comment></comment></comment><comment><USER27> Slightly off topic: It is really interesting how German names have become en vogue in recent years.

</comment><comment><USER28> I don't like the name.

For those who don't know german, Jaeger is "Jäger" is hunter/ranger. A somewhat neutral term in itself but there is also a slight, somewhat remote connection towards some part of the history ("Jagdstaffel" and what not). I have absolutely no idea if this has anything to do with it, mind you - <USER2> since the main authors appear to be in the USA, I find that very awkward. Why not just stick to some english name? That would seem a much better it. Or perhaps they think german names are awesome ... it's also weird when you see all the people write Jaeger rather Jäger...

<comment><USER29> This is a pretty silly objection.

There are plenty of software projects named from a variety of languages not native to the creator of the package. And Jäger has so many neutral meanings and even for a German wouldn't first bring thoughts of the Jagdstaffel I don't think...

Also writing the ä as ae is very common for those who have keyboards without umlaut characters... I've seen it lots of times and doesn't look too weird.

<comment><USER30> Absolutely. "Hunter" seems like a perfectly acceptable name for something that collects data, and I can almost guarantee that the vast majority of Americans have never even heard of the term. Most Americans in my experience have have little to no knowledge of WWI, let alone the Jadgstaffl. To object to the name on such grounds seems pedantic in the extreme to me.

Edit: typo

<comment><USER31> They may know it from Jagermeister and jäger bombs.

We may not know our history, but we do like drinking.</comment></comment></comment></comment>


Slack is down. Status page is broken - <AUTHOR> https://twitter.com/SlackHQ/status/950812653496053760 <comment><USER2> This is hilarious: [https://twitter.com/carmenrjavier/status/950815039065276417](https://twitter.com/carmenrjavier/status/950815039065276417)

<comment><USER3> [https://twitter.com/elliottkember/status/950814013599858688](https://twitter.com/elliottkember/status/950814013599858688)

</comment></comment><comment><AUTHOR> [https://status.slack.com/](https://status.slack.com/) loads (slowly) and reports no issues.</comment>


Dune 2 in JavaScript (2012) - <AUTHOR> http://creativejs.com/2012/11/dune-2-online/index.html <comment><AUTHOR> Link to what seems to be a version that is still available: [https://epicport.com/en/dune2](https://epicport.com/en/dune2) (the linked play-dune.com is down)</comment>


Next-generation Web apps with full stack JavaScript - <AUTHOR> http://radar.oreilly.com/2014/07/next-generation-web-apps-with-full-stack-javascript.html <comment><USER2> The JavaScript syntax is easy to get started, and provides many ideas that are not or poorly available in other programming languages. I think, it is not a coincidence that we see this language in a number of different realms today. This is also an interesting read: [http://www.2ality.com/2014/07/stages-of- js.html](http://www.2ality.com/2014/07/stages-of-js.html)</comment>


Create Previously Impossible Games - <AUTHOR> https://improbable.io/ <comment><USER2> Um, I was a developer on PlanetSide 2, and we had zones that supported over a thousand concurrent players. It remains a problem only of having experienced developers analyzing the problem and iterating on solutions until you've reached your target. Not only is there no magic bullet, there's no secret sauce, either. Proximity systems are key to scaling. If you have two player characters who are within a given range of each other, they will be grouped together into a batch of clients that share updates with each other. Clients on a conventional arena shooter all share updates with each other each network timeslice. But for MMOs, these update groups are dynamic.

<comment><USER3> What do you mean by "zones"? 1000 players sending to all other 1000 players?

Where these group batches P2P or client/server?

My solution to scaling is to only send packets when an action is taken, I will cut up the rotation in pie angles so analogue movement does not spam the server.

Only allows for one-shooters though, no spraying.

<comment><USER4> Planetside 2 has (it's still active?!) a borderless map of continent with players' actions sended by server to clients based on range AFAIK.

Disclosure: not even close to development, just played a couple of hours.

<comment><USER2> Yes, that is accurate.

<comment><USER3> Ok, but how, with square grid neighbors?

<comment><USER5> If there's a square grid in that process for Planetside 2, it'd have to be for coarse culling, not anything final. The game is pretty precise about ranging this stuff, if not always responsive (pop-in can be pretty bad in dense fights).

The US East server had ~900 people on it an hour ago, and this isn't a peak time. With that many people, there are two continents open, but usually most of the players are on one continent or the other. Continents are big, and support many separate battles at once (spatially separated, no hard lines). A very big battle may have 200+ players, and with certain exceptions players in it won't need to know anything about players outside that particular battle.

If there are actually 200+ other players near you (within the nominal 300 meter range where updates should be sent), the server won't be sending you data on all at once, just whatever it thinks is the most relevant subset (hence the pop-in). It also breaks the 300-meter default to send data on and for snipers (and probably some other stuff) a bit further out.

</comment></comment></comment></comment></comment></comment><comment><USER6> I can't describe how little I trust this company's software for an actual production system. There is so much nonsense in the marketing of this product with very little in the way of a technical whitepaper explaining how things work. Backends for MMO type software typically are highly specialized depending on the game itself and it would not surprise me in the slightest if this was all overfunded vaporware

<comment><USER7> Remember the Unlimited Detail tech demo? While that looked cool I still don't see those techniques in use in any way a decade later.

Your criticism is well made.

<comment><USER8> Well, point cloud renderers are a real thing. There are open source libraries that let you explore millions of points in your browser: [http://potree.org/](http://potree.org/). I even saw a demo ([http://nurulize.com/](http://nurulize.com/)) showcasing animations but I think the main problem with point clouds is that there is no good solution for physics/lighting yet.

</comment></comment></comment><comment><USER9> I was recently contacted by someone looking to hire me to Improbable. They linked this puff piece which made its way into Wired, and I had a chuckle: [http://www.wired.co.uk/article/improbable-quest-to-build- the...](http://www.wired.co.uk/article/improbable-quest-to-build-the-matrix)

> MetaWorld, a SpatialOS app being developed by San Francisco-based HelloVR, > lets two people play chess in virtual reality together. MetaWorld is also > persistent – which seemed like a great idea, until players started throwing > virtual chess pieces into the grass, and the Improbable team had to crawl > around on their virtual hands and knees to find them.

Either Improbable made it impossible to add a reset button to object positions in their SpatialOS product... or they're hyping their product by showing how much busywork their employees are doing.

Technology isn't the reason that nobody's making hyper-realistic video games, _game design_ is. A lot of new game developers starts out with the idea of "the game where you can do anything", and then slowly learns why other games don't attempt to do that: real life is honestly quite boring and tedious.

<comment><USER10> The only time I've seen "the game where you can do anything" work out is VR Chat. But that's only because "anything" here means "anything you can make in Unity and publish to the servers", so it's less a game and more a multiplayer creative experience.

</comment></comment><comment><USER11> It is very nice video.

I am still not too sure why Improbable just don't make their own games.

That's how Epic basically marketed their engine.

This type of games require massive investment of time and resources.

I feel it will be much easier developing your own game vs trying to pursuade studios spend millions of dollars on development, which is inherently risky.

<comment><USER12> > I feel it will be much easier developing your own game vs trying to pursuade > studios spend millions of dollars on development, which is inherently risky.

In general it's easier and much less risky to persuade someone else to spend millions of dollars on something than it is to spend millions of dollars on the thing yourself. That's basically what venture capital is, right?

<comment><USER11> Well you need to have huge marketing and support for B2B. And then B has to actually make money for you to get anything.

It is really hard sell in gaming world to get paid for engine licence upfront, because developer is only going to make money on launch. So even if you sign somebody you are only going to see this revenue when they launch 2-5 years from signing date.

On top of that gaming ecosystem is very much platform and IP driven. So if I want to distribute MMO on Steam using existent IP, about 50-40% of revenue is gone. If I use Unreal it is another 5%. Then there is marketing, live support. It is super hard to take more from this cake.

It is not the same as selling enterprise software where enterprise already has core business and revenue.

So in Improbable case with 0.5 B raised spending 20m on game should be no brainer. It might be complete waste, but they are going to learn so much more what industry needs and develop much bigger set of tools for this kind of games.

I really like idea of the company, just implementation very much VC driven and they are clearly not experts in the field.

</comment></comment></comment><comment><USER13> The title feels a bit clickbait, perhaps "Create multiplayer games with unprecedented scale" might be an improvement.

</comment><comment><USER14> Doesn't seem like it would be a _great_ business decision to bind the core of your game to a proprietary cloud service.

<comment><USER15> There are often agreements put in place for situations like this, where the source code and instructions for running it would be put in escrow so that should the company go under or disappear in some way, their client would be able to carry on running the service in some form.

I believe this happened with FoundationDB when it got bought by Apple. The bigger companies who were paying for it didn't lose out too badly, although it's obviously an inconvenience.

</comment></comment><comment><USER16> If you want to sell a game engine, sell a game first.

</comment><comment><USER17> Are previously impossible games necessarily better games?

<comment><USER3> I'm biased by sunk cost ([http://fuse.rupy.se/about.html](http://fuse.rupy.se/about.html)) and skeptic of SpatialOS (which looks like a pile of garbage on top of netty/akka).

But I would have to say a resounding _yes_.

Action MMOs are the final medium, one day we will all be either living in Mad Max or we will be plugged into one, or both!

Imagine WoW, then PUBG; and extrapolate.

<comment><USER17> The problem with MMOs is that there's so many people though.

<comment><USER3> People are fun, specially if you remove their ability to be mean: [https://store.steampowered.com/app/486310/Meadow/](https://store.steampowered.com/app/486310/Meadow/)

<comment><USER18> If you think that's "removed their ability to be mean" you're not thinking hard enough.

Ferinstance, Chinese players could make a grass mud horse...</comment></comment></comment></comment></comment>


Highest paid technology interns - <AUTHOR> http://www.sfgate.com/jobs/slideshow/Highest-paid-technology-interns-56290.php <comment><USER2> I'm not sure if I'm just experiencing the higher side of things, but these numbers seem low, or outdated. Friends at several of these companies have been paid on average, about $1,000 or so more than reported here for internships, excluding stipends for travel/living.

Other industries are catching up too. Several of the US investment banks have been paying their interns around the same range, with some going much higher. Lenard Green & Co (leonardgreen.com) is apparently paying at least one intern 140 pro-rated for the summer.

Disclaimer: this may be hearsay and completely false, but these sources have little reason to lie.

<comment><USER3> Maybe this is for all interns at the firm, so companies that hire more interns for lower-paid positions end up with an average below what an engineering intern sees.

<comment><USER4> Yes, could be accounting interns.

</comment></comment></comment><comment><USER5> That makes me sad. VMWare pays its interns a higher "salary" than what I currently make. (But that's apples to oranges. I'm currently a UX designer that just graduated last year.)

<comment><USER6> You shouldn't feed sad -- I don't think it's useful to compare these internships to long-term jobs.

Do we even know if these interns should expect those rates when they apply for an actual job?

<comment><USER7> I've never heard of a company hiring an intern and paying them less than they made while they were interning. At the very least they'd make the same amount and gain benefits.

I'm not saying it's impossible, but I would be completely shocked if any of the companies on the list paid their employees less than interns.

<comment><USER8> They make way more.

</comment></comment></comment></comment><comment><USER9> I would say this is not all that accurate of a list - it seems more a list of what some of the biggest tech companies pay their interns.

<comment><USER10> Speaking as an alum of a technology company that does not appear on this list, that is correct.

</comment></comment><comment><USER11> This is not even remotely surprising.

</comment><comment><USER8> These are all bay area jobs. Factor in the cost of living and it's less than impressive.

<comment><USER12> MS for one is not

<comment><USER8> They have a MTV office if we want to get technical. But I guess I should say west coast.

<comment><USER12> Well true, but still, 72k in sfba and seattle is really different</comment></comment></comment></comment>


Fifty Shades of Grey Would Be Banned in UK? - <AUTHOR> http://coderinaworldofcode.blogspot.com/2013/07/50-shades-of-grey-made-illegal-in-uk.html <comment><USER4> As I understand it, it's either now illegal or will be illegal (in the UK) to sell/possess/something footage of two consenting adults who are not engaged in rape, but are simulating rape. They simulate this through force, words, threats, all that sort of thing. So if that's illegal, even though it's provably not an actual rape (depending on who made it, obviously, but in theory we could call up the participants to check, or if they let the cameras keep running someone will shout "Cut" and they stop and go for a coffee), what protects similar scenes of simulated rape in books (if indeed they should be protected)?

I must say the idea of FSoG being banned does make me think there's an upside to this :p

<comment><USER5> > As I understand it, it's either now illegal or will be illegal (in the UK) > to sell/possess/something footage of two consenting adults who are not > engaged in rape, but are simulating rape. They simulate this through force, > words, threats, all that sort of thing.

This is already a really dangerous thing. Rape is sex without consent and rape doesn't always look like a struggle with violent resistance. If enforcement looks only to a violent struggle as a requirement for labeling porn as rape porn, that gov't is reenforcing existing stereotypes about rape and sexual assault.

<comment><USER6> How someone depicts rape or how stereotypical it is is irrelevant. The dangerous component here is the limitation on freedom of expression. This horse has been beaten to death 10 million times, but here's a distillation of the argument:

If you ban, for example, all simulation of racist themes, you eliminate a certain kind of harmful imagery, which is a good thing. But this also prevents one from educating people as to why racism is wrong, by showing a depiction and how harmful it can be. It would ban things like movies about the life of Malcolm X or Martin Luther King Jr or Emmett Till.

As relates to rape, this would ban Lifetime movies which show the gritty horrible reality of rape and the subsequent damage it does to people's lives. That violent struggle is a stereotype of rape that hides non-consensual sex as a form of rape is irrelevant to the main point: _this law destroys our ability to educate and our freedom of expression_.

<comment><USER5> > That violent struggle is a stereotype of rape that hides non-consensual sex > as a form of rape is irrelevant to the main point: this law destroys our > ability to educate and our freedom of expression.

I totally agree with your point. However, promoting stereotypes about rape does diminish our ability to educate about the facts and experiences of survivors and makes it so that causes of and solutions to rape as a form of institutional violence become obscured.

</comment></comment></comment></comment><comment><USER7> I think a more notable example included in that is A Clockwork Orange, which clearly depicts (simulated) rape. Is this classic now going to be illegal to distribute online in the UK?

<comment><USER8> Others, off the top of my head:

      - Girl with the Dragon Tattoo
      - <USER2>
      - <USER3>
      - Kill Bill
      - Pulp Fiction (or does it not count when men are raped?)

<comment><USER9> Who was raped in the movie Secretary? They got happily married.

In the original short story, it is, well, quite another story.

<comment><USER8> Not rape, but sexual assault. It becomes consensual, but it doesn't really start that way.

<comment><USER9> This will surely be unpopular here but...

So enthusiastic consent doesn't work for you?

I'd agree the initial contact could be considered sexual assault, if it resulted in her feeling that way. Instead she enjoyed it and wanted it to continue, and continue they did. He wanted to stop because he felt like he was crossing a line and she wanted to keep going. That's about as enthusiastic as it can get without being explicit.

<comment><USER8> I'm talking about those who want this law, and ultimately would see the film in the wrong light. I have no problem with it at all.

<comment><USER9> Fair enough!

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> How much of this is the old political trick of creating a law that is overly broad and nuanced only to come back and refine it to something slightly more specific later? Perhaps the plan all along has been to create something that will cause outrage so that people don't complain when the next version comes around that's only slightly better, but still worse off than before.

<comment><USER11> That was broadly true of British obscenity laws for decades (centuries?). You couldn't publish anything that was obscene or that could disturb people but just _what_ that meant was poorly defined and pretty much up to judges and juries.

I actually kinda like that typically British approach though since it allows tastes to move with the times without actually rewriting any laws. What's "obscene" in 2013 is not the same as in 1940, for example, but it does take court cases to set precedents.

</comment></comment><comment><USER12> It is not banned in the UK.

The proposed laws are stupid, but making shit up is not useful for discussion.

We went through the same nonsense when the Sexual Offences Act 2003 was introduced, and yet we can still walk into shops and buy American Beauty and other films.

</comment><comment><USER13> Phase 1. Set up a surveillance state & keep a record of everything that your victims/subjects do.

Phase 2. Pass legislation that people cannot meaningfully object to, yet is worded so vaguely and in such woolly terms that it tars a significant section of the population with the same brush.

Phase 3. Profit!

.... Finally, a 3-step plan to profit that does not involve underpants!

</comment><comment><USER14> So now the UK is turning into saudi arabia ? or is it iran ?

Anyone who is choked when they hear about alcohol or porn banned in these countries and is not choked by this move from the UK government has a serious mental problem.

<comment><USER15> I'm guessing that the being choked will also be illegal...

<comment><USER16> Only if it turns you on.

</comment></comment></comment><comment><USER6> Food for thought: The Bible contains depictions of rape. Maybe this law isn't so bad after all...

<comment><USER17> That will be interesting.

</comment></comment><comment><USER18> Been a while since I read it and, honestly, I wasn't really taking that much notice but I don't remember any forcible or coercive rape in FSOG.

<comment><AUTHOR> Rape is sex without consent. Force and coercion are related, but not actually required for rape.

<comment><USER18> I don't remember any non-consensual sex either but like I said, it's been a while.

<comment><USER19> Maybe you were so harmed by the content of the book, that you got amnesia. Luckily Cameron will save others from that same sorry fate.

</comment></comment></comment></comment><comment><USER20> My kindle contains The Pillars of the Earth (Ken Follett), so now I can't travel to uk without violating the law?

Quoting from wikipedia: "The book was listed at no. 33 on the BBC's Big Read" (2003)

Everybody is a suspect, when will we start to learn from history?

</comment><comment><USER21> wouldn't that logic mean that both the koran and the bible are banned too?

<comment><USER22> Perhaps we could close all the churches, synagogues, mosques and temples to... protect the children.

</comment></comment><comment><USER23> Plus they're big on removing child pornography so we can also say good bye to Lolita as well.

<comment><USER24> As I recall it Lolita is discreet with the intercourse depictions; it's never "graphic" as I gather is 50 Shades.

<comment><USER23> Good point, but we don't know how much is too much yet.

</comment></comment></comment><comment><USER25> This is the first I've heard about books being banned. I'm extremely skeptical of this claim.

<comment><USER9> I think they [the author] are intentionally exploring it. In fact, a good portion of the article is on the definition of "depict"[1], which would probably include books by most people's understanding. The other point is being available online - which books are via kindle and other services.

> Also falling into firmly into this category is Burgess' "A Clockwork > Orange". Once again, it's available for Kindle, it definitely depicts rape, > and it's read world-wide by millions.

This is both a book and a film - extremely famous, and has a rape scene. Is it going to be illegal (once again)?

Earlier, in the same section he says:

> Given that many contemporary novels (and less-contemporary) novels do deal > with sexual abuse and rape, some of which explore the idea of "rape fantasy" > (Herein referred to by the more accepted name, "ravishment") between > consenting partners means that a large portion of those with an interest in > BDSM and kink will fall into this category.

So, whether novels will be included or not, there is definitely already media which is currently legal and consumed by law abiding citizens who have no predilections or desires to rape anyone that may suddenly become illegal. This is a problem, in my opinion.

I'm glad I have the first and second amendments... for now.

[1] [http://oxforddictionaries.com/definition/english/depict](http://oxforddictionaries.com/definition/english/depict)

<comment><USER26> Who is intentionally exploring it? What makes you think this? Can you provide credible news sources to back up this claim that Cameron's intended anti porn measures (which have already seen conflicting pieces on opt-out vs opt-in) will be applied to books?

Other than a sensationalist blog post by someone whose passion for free speech led them to wildly jump to unfounded conclusions, which doesn't help the legitimate discussion around this topic at all?

<comment><USER9> > Who is intentionally exploring it?

The person you assigned the identifier "someone whose passion for free speech led them to wildly jump to unfounded conclusions" which is far too long of an identifier, if you ask me, but that's not really the point either.

> What makes you think this?

The fact that I read the article makes me think that the person who wrote the article is exploring said concept.

> Can you provide credible news sources to back up this claim that Cameron's > intended anti porn measures (which have already seen conflicting pieces on > opt-out vs opt-in) will be applied to books?

Can you provide the quoted text from the article we are discussing which makes this exact claim? I never said it did, I said it was exploring the possibility, and to back that up I included relevant passages and information.

Furthermore, I made the point, which you ignored, that whether or not books are included, there is currently media that is being consumed and possessed by people in the UK which will certainly be considered illegal very soon. Can you tell me your stance on how good or bad that is?

</comment></comment></comment></comment><comment><USER27> and goodbye, Irréversible, Stockholm International Film Festival's winner for best film.

</comment><comment><USER28> Cameron was looking good until recently with his crackdown (however slight) on our disgraceful benefit system. And now he looks to censor the population under the guise of protecting children (teaching them how to protect themselves is probably a better option). This country is rapidly going downhill as our freedoms are slowly reduced.

\--

That said, an opt-in porn filter for parents is always going to be a good/useful thing. But we all know any determined individual (and I'd suspect many young-ish people) will bypass these blockades in no time at all, just as we have with Kickass/TPB.

</comment><comment><USER29> It's likely that this will be an extension of s63 of existing 'extreme pornography' ban in s63 etc. of the Criminal Justice and Immigration Act 2008. [http://www.legislation.gov.uk/ukpga/2008/4/part/5/crossheadi...](http://www.legislation.gov.uk/ukpga/2008/4/part/5/crossheading/pornography- etc)

That only covers images (including video) and does not cover films that have been classified as a 15, 18 etc., i.e. most commercial/cinema films.

</comment><comment><USER30> What about all the prison rape scenes in movies?? Will this make them illegal? Or as they are same sex, they don't count? Would be interesting to see if they classify them as perversion or something similar instead of rape. With this current government, it would not surprise me if they say that a same sex rape victim is asking for it or something...

<comment><USER31> Unlikely. Anti-pornography laws generally only apply to imagery whose purpose is to be titillating [1]. There's just too much content of a sexual nature that is perfectly legitimate (arts, sciences, and journalism in particular).

[1] See, e.g., the Scottish law after which the legislation is supposed to be modeled: [http://www.scotland.gov.uk/Publications/2011/03/extremeporno...](http://www.scotland.gov.uk/Publications/2011/03/extremepornographyguidanc/Q/pno/2)

<comment><USER32> > purpose is to be titillating

Who decides where the line is drawn?

<comment><USER31> The courts. See the link.

In practice, this definition has rarely [1] been a problem. There are more serious concerns.

For example, a real problem with possession-based laws (as opposed to distribution-based laws) is how comparatively easy it is to frame innocent people [2]. Law enforcement likes possession-based laws, because they are an order of magnitude easier to prove and prosecute.

[1] Which is not to say "never".

[2] [http://www.bbc.co.uk/news/uk-england- london-11397515](http://www.bbc.co.uk/news/uk-england-london-11397515)

</comment></comment></comment></comment><comment><USER33> "Possess" should also be in quotes, as this law applies to online pr0n.

</comment><comment><USER34> Wow, what a nanny state.

<comment><USER35> ... compared to?

<comment><USER36> Somalia.

</comment></comment></comment><comment><USER37> Oh no, this new wave of UK anti-porn zealotry will ban even legitimate literature like 50 Shades of Grey... Give me a break. 50 Shades of Grey is a porn novel. It's a porn novel that made the best seller list, much to the first world's embarrassment and I'll bet you anything that it's what prompted this law in the first place. There are a lot of legitimate reasons to be concerned about this new proposed law, but I won't shed a tear for 50 Shades.

<comment><USER38> I think you are missing the point. It seems that the author used 50 Shades of Grey to illustrate his "If everyone is a criminal, no one is" point. Literary merit aside, 50 Shades of Grey was a massive hit, and also pornographic, meaning that lots and lots of people read it, and lots and lots of people are now "criminals".

Also, in terms of freedom of expression how is 50 shades of grey any less significant than any of the other books he listed?

<comment><USER37> "Literary merit aside, 50 Shades of Grey was a massive hit, and also pornographic, meaning that lots and lots of people read it,"

Which is probably something that the UK government does not want happening again.

"and lots and lots of people are now "criminals"."

No they're not, unless they decide to share copies of the novel online. I must have really missed it if there was something about retroactively enforcing laws.

There are legit concerns here, but fsog isn't one.

<comment><USER38> FSOG (nice acronym, it's a pain in the ass to type out) demonstrates that there a wide segment of the population that is willing and interested in reading material which the government is attempting to criminalize. I misspoke when I said they "are now" criminals, I should have said they will be criminals.

>Which is probably something that the UK government does not want happening again.

Also, this gets my hackles up. Why should they not want it to happen again, besides pointless and absurd moralizing? People have been writing smut for thousands of years. The first books printed with Gutenberg's printing press? Porn. What's different now?</comment></comment></comment></comment>


Ask HN: Why Haven't GUI Front End Editors Caught On? - <AUTHOR> WYSIWYG/GUI frontend editors have been around for years now, but the standard development process for frontend developers is still to crack out an IDE or text editor and write HTML/CSS by hand. For such a technical industry this seems like a strange trend - why wouldn't we leverage tools and technology to make building HTML/CSS less of a boilerplate activity?
It makes sense that it could be related to the widgetisation of frontends, with chunks of HTML appearing in different locations or as embedded JSX, but I see no reason why editors couldn't provide integration by allowing single documents to be sliced up into smaller components and kept in sync.
So, HN, what's your take on the lack of adoption of GUIs for building frontends? <comment><USER5> There's a huge separation between who designs the frontend and who implements the frontend. To date, none of the frontend editors are good enough to completely replace the need for a programmer to wire up actions. Even back in the Flash days, you needed an ActionScript programmer to make your webapp do anything meaningful.

Since you need a programmer anyway, you might as well use a freeform design tool (Photoshop) to let the designer design whatever the hell he wants without the constraints that a more specialized app might impose. Then, let the programmer take that design and create whatever infrastructure he thinks is necessary without also constraining him to whatever a specialized app might impose.

I've been doing both design and programming a bit lately and I absolutely love apps like Subform, Webflow and Apple's interface builder. But, once I get past the fast iteration mockup phase, the structure of the app or webapp I'm making changes enough that the tools become unwieldy.

What I would really like are more robust layout APIs for both the browser and native apps. In Subform, you can define relative widths and positions both to other components and to the window itself. It's great for taking some of the tediousness out of design, but from a programming perspective, centering an object horizontally and vertically consistently is still a surprisingly difficult endeavor.

<comment><USER6> "...centering an object horizontally and vertically consistently is still a surprisingly difficult endeavor..." This is so true - even today. Oh wait, someone might state, "but there are frameworks you can simply integrate and they handle that kind of stuff for you, or at least make it easier"...To which I reply, do i really have to include ~500K - 1MB of some framework for this!?! Just silly that centering is an annoying task nowadays.

<comment><USER7> If you can afford not to support IE9 [1], you don't need a 500K - <USER2> framework to center vertically and horizontally by using flexbox (align-items: center; justify-content: center) on the parent container.

[1] [http://caniuse.com/#feat=flexbox](http://caniuse.com/#feat=flexbox)

<comment><USER8> Or you can support it but not give them vertically centered content. Screw em. If they want it to be 5 years ago, let them be 5 years ago. FIVE!

<comment><USER9> I like to call this degrading gracefully :)

</comment></comment></comment></comment></comment><comment><USER10> Basically, it's because we expect markup to have meaning. The situation is pretty different from what it was with a traditional GUI builders because of the markup hiding back there.

In the bad old days, Dreamweaver had visual tools for this stuff, and it generated a horrifying mess of nested tables. This was rightly criticized because it made for a huge amount of markup, the markup was difficult to embed in a generator, there were lots of ways to destroy the layout if the content you inserted into it was the wrong size or had the wrong stuff inside it, and it was hell for web scrapers and screen readers. The generated page had no semantics and tripped up all these secondary uses. It also tended to be huge, slow to load, and hard to edit later.

Once CSS grew more powerful, a big fight ensued for semantic markup: keeping the template semantically meaningful (no tables of images and lack of table content), easy to generate and fill and easy for scrapers and screen readers, and doing all the layout in CSS. The mantra became something about hand-coded HTML always being better than machine-generated.

It probably could be done better today (and with the prevalence of JSON APIs semantic markup may not matter as much as it used to), but once the philosophy becomes widespread it becomes difficult to unseat. When you have developers who are competent at CSS and semantic markup, the sales pitch of moving back to a visual editor becomes harder.

<comment><USER11> No, we don't "expect (HTML) markup to have meaning". Browsers don't do anything with that semantic information. What we have are generators which use HTML/CSS as an output medium, like Postscript or PDF.

Sites with HTML tables were faster to load, smaller, resized automatically, and never had overlapping text. Most of the claimed benefits of CSS were false. CSS pages tend to pull in, or include, large libraries of styles, Javascript, and other junk. That's where page bloat comes from. See yesterday's article on why the web is so slow despite more bandwidth. Do "view source" on the pages of some major sites. It's disgusting.

There seems to be a programmer mindset that users must write source code which is then compiled to something else. Nroff/Troff, then TeX, then DocBook, for example. (Is DocBook dead? The last update on the DocBook site was three years ago.)[1] This is a terrible thing to impose on users.

[1] [http://docbook.org/](http://docbook.org/)

<comment><USER12> > Is DocBook dead?

I was involved with a technical documentation project around 6 years ago, and the trend was moving to DITA.

[http://dita.xml.org/](http://dita.xml.org/)

[http://www.xmlmind.com/xmleditor/](http://www.xmlmind.com/xmleditor/)

[https://www.oxygenxml.com/xml_editor/dita_editor_structured_...](https://www.oxygenxml.com/xml_editor/dita_editor_structured_editing.html)

<comment><USER11> A useful metric for document format is "Does GitHub have an HTML viewer for it"? Currently, they display PDF, HTML, and Markdown.

<comment><USER12> The reality is that Github is irrelevant for the majority of enterprise customers.

Companies that see software development as a cost center, and rely on consulting companies to provide value to their actual business processes.

At most, their IT departments or vendor management departments, might know that Github is where some open source packages they leech are stored.

</comment></comment></comment></comment></comment><comment><USER13> The best current real-world example to look at would be Apple's Interface Builder for iOS. Why doesn't everyone use IB?

The biggest reasons in my experience are:

* Limited logic. A builder is fine for a simple static layout. How should that layout change depending on the data to be displayed? How should it adapt to different screen dimensions and orientations? Pretty soon you want to write code to control the view.

* Doesn't play well with source control. Even if the GUI builder spits out a text-based format like XML, it's hard to read and understand diffs, and it can be difficult to impossible to merge.

Why don't use tools to make writing HTML/CSS less boilerplate? To some extent we do. We have CSS preprocessors and HTML templating.

In the end, the front end is just code, and no one has yet come up with a graphical form of coding that is superior to text.

<comment><USER14> Back when I did Mac OS 9 development, we used Metrowerks' PowerPlant framework. Constructor, their GUI editor, made laying out user interfaces a joy. It just worked.

When I came back to try iOS development, and saw the sad state of IB, I wondered how things had fallen so far.

Then I tried Android development. Hand rolled XML layout of UI? NOPE.

I too am surprised that no one has developed tools to just do this.

<comment><AUTHOR> I'm working on a tool to do just this - makes frontend development straight- forward and visual. If you'd like, I can ping you an email when I have something to show - my email address is in my profile if you're interested :)

</comment></comment></comment><comment><USER15> My take, as someone who sells a visual web-app creator (see my profile):

If you want it to work well, the UI model of a visual editor has to match up with the data model of the application behind it. Visual Basic worked so well because the objects you manipulated in code were the same components you dragged and dropped onto your window.

We already have way too many (and too complex) representations of application state in a typical web app. I count six:

          Tables in a database
       -> data model in server code
       -> JSON over HTTP
       -> data model in client code
       -> HTML/DOM
       -> visual layout

It's hard enough to make a WYSIWYG editor for the final transformation (HTML -> visual layout). But trying to WYSIWYG the whole "code -> HTML -> layout" flow is basically impossible. This is why I think you won't see a workable GUI editor as long as we stay chained to today's overcomplicated HTML/JS web stack.

What we did with Anvil ([https://anvil.works](https://anvil.works)) was to build a simple UI model from the ground up. We avoid HTML and JS, and provide discrete components that can sensibly be dragged and dropped in a GUI editor, _and_ sensibly addressed from code. This means we can bring back 1990s innovations like autocompleting UI code.

But right now it's like having your hand in a cookie jar. As long as you hold onto the full complexity of HTML, JS, Angular/React/etc, you're never going to get that simplicity you want.

<comment><USER16> How can u skip HTML/JS stack for websites? Is your editor only for apps?

<comment><USER15> We compile the client-side Python code to Javascript using Skulpt ([http://skulpt.org](http://skulpt.org)), and we render the visual components in HTML, but you interact with them entirely in Python.

This creates a much less "leaky" abstraction than building a new framework directly on top of HTML/JS. It also lets us offer things like blocking I/O operations (no more callback hell!).

</comment></comment></comment><comment><USER17> Visual editors work great when the thing will always look the way you've designed it. But that's not how the web works. Especially now that mobile web browsing is a common thing, your site will be viewed on all sorts of devices with different resolutions / aspect ratios / etc.

When you add that factor in it shouldn't be hard to see why a visual editor is not sufficient. Visual editors are just not a great way to specify the type of logic that decides how your interface will look and behave at radically different sizes and shapes.

<comment><USER18> interface builder ( xcode ), does it well for iOS. You can preview you UI instantly for ipad / iphone in both portait and landscape.

i think the reason the equivalent doesn't exists for web is maybe due to the complexity of css / html, and the various level of browser support, which makes all of it a dark art as soon as you aim for wide device support. Whereas Apple controls everything.

<comment><USER19> The equivalent does sortof exist. You can of course preview your layout in the browser, and chrome (and possibly others) allows you to change the dimensions to reflect mobile devices. You can also link the source code in dev tools to a file, and edit the page live.

</comment></comment></comment><comment><USER20> In my experience frontend editors that designers use generate horrible code. Just as it is turtles all the way down. For frontend editors it is tables all the way down. My first web job was modifying CMS. Someone would tell me put a green box here with inputs for this and that. Then it would go to a designer to change the fonts, and get rid of the square corners. Then the guy would want it moved 5px to the left so it would come back to me. The gut wrenching horrors that would follow still give me nightmares till this day. Everything the designer touch would be placed in a table inside another table inside another table all surrounded by a table. This wasn't just the case with "designers" tools either. I believe windows web forms did a similar thing. It is difficult to generate human readable code that stays up to date with the latest trends. That is reliable enough to work across the spectrum that is the web covering everything from multiple os, web browsers, screen sizes, pixels, and etc. The few that have try were either brave or foolish to believe that they could take on a beast such as frontend, and still be around to tell tales of taming the beast.

<comment><USER21> Yes those were the bad old days when we used nested tables for layout with rows and columns. We are much more sophisticated now. We use nested divs with classes like "row" and "col-md-6".....

</comment></comment><comment><USER22> In terms of easily cranking out a CRUD app, the current state of the art in web front-end development is a long ways behind Visual Basic 4 which was released in 1995.

<comment><USER23> Completely agree. I wrote code in Delphi 20 years ago, and I was far more productive than I am today.

The secret was to have self-contained components that fit within a rigid layout system. It wasn't easy to make things pretty, but it worked. To write code, you clicked on the component, clicked on an event, and wrote your logic in a little snippet editor. It was all event-driven.

Would love to have something like that for web design today. An opinionated system that forced you to use a limited subset of html and css might be able to pull it off.

(Delphi was a VB-like environment for Borland Pascal. It's still around: [https://www.embarcadero.com/products/delphi](https://www.embarcadero.com/products/delphi))

<comment><USER24> Delphi is also the first thing which comes into my mind when I think of that. I was also much more productive in that old days with GUI stuff. I also don't understand why there is no good RAD existing nowadays... I think the biggest reason is because there are no real solid non changing standards (like the Windows API and VCL in Delphi) and all this stuff HTML5+CSS3+ES6 have much more possibilities how stuff is created and interlinked to eachother in comparison to a Windows window system.

</comment></comment></comment><comment><USER25> I'm a designer, and consider HTML/CSS/JS to be as good a design tool as any, perhaps even better than any CAD app. I use Sketch, Illustrator and Photoshop as needed for icons, illustrations and photos.

Also, code is a really handy tool for design (generation/automation).

I believe in using the right tool for whatever "material" I'm working with. For (responsive) web apps, that tool is HTML/CSS/JS.

Most designer's have their own preferences. I don't believe any current or future wysiwyg app can meet all needs.

<comment><USER26> I'm a designer too and I've gone from using Illustrator and Photoshop to doing mockups straight in code. It sometimes feels a bit silly to first create a design mockup and then recreate the exact same thing in css. I would much rather create simple unstyled wireframes outlining the basic UX, maybe create a style guide, and do the mockups using HTML and CSS. I also feel that I'm making a lot of similar components such as heros, buttons, carousels, cards with small variations for different projects. I have started to create a repository of often used components that can be easily customized to suit the style of new projects without having to rewrite the entire thing, and it's called [http://kitr.io/](http://kitr.io/). The plan now is to add every new component I design and develop to KITR. It would be cool to be able to export to React components and not just plain HTML and CSS, but at least it's possible to copy into any project with some modifications as of now. Do you have any UI components that you feel like you are recreating often?

</comment></comment><comment><USER27> There was a time when they were popular. Then, such tools were declared "uncool" (not without good reasons - the markup wasn't particularly good) by semantic markup movement, around the time of tables-vs-divs wars.

Semantics had withered away since then. No one cared, and it eventually got replaced with a bunch of
s on the DOM side and JS-virtual-DOM-all-the-way on how it's generated and managed. Editors haven't caught up, but I'm sure they will.

<comment><USER28> The 'withering' of semantic markup is one of the greatest tragedies of the modern web.

</comment></comment><comment><USER29> I've found I really enjoy using webflow (a YC alumnus I believe) for responsive front end design. I literally design all my templates and components in their app now, export the raw HTML/CSS, and add any templating or client logic if needed. It's fun as hell. I also find looking at the generated CSS files helps me internalize CSS stuff I wouldn't otherwise have time to dig into. I know some folks look at me aghast for not hand coding my front end and I couldn't honestly care less.

I don't think it would work for everyone or every app, but for me it's been a dream come true.

<comment><AUTHOR> intriguing - and how are you finding webflow? Is it just HTML+CSS rearranged in GUI form, or does it take away some of the more boilerplate-y aspects (clearfixes, polyfills, grid layouts etc)?

</comment></comment><comment><USER30> In addition to all the good points made here (designs are static, different devices, etc) it's also because WYSIWYG editors just are plain inefficient. It's faster and easier to work with text. The best tools and technology work on text (copy/paste, git, sass, etc). Most people use HTML/CSS IDEs the provide the same level of power as programming language IDEs.

<comment><USER31> If there was a text-based UI for Photoshop, I doubt it would be better at most things than how Photoshop works now, which involves direct manipulation of an image with essentially real time feedback of each action as you do it.

The OP is also talking about editing the visual side of things, and I think if a well-done editor that also output good CSS and HTML existed, it would be embraced by many.

Of course, I'm someone who enjoys using Xcode's interface builder tools to edit GUIs, rather than laying out controls in code, because I get instant feedback with Xcode's interface builder. As others have mentioned, something similar for Web work seems like it could be very powerful.

<comment><USER30> There is no exclusively visual side of things for web design. Sure you do the initial design in Photoshop but once you need to add interactivity it's no longer purely visual. You've sliced it up and you can't put it back together.

Xcode works because even on mobile/desktop there is more separation between design and functionality than the web. The web is both more primitive and more flexible.

</comment></comment></comment><comment><USER32> GUI front editors are always catching on with new users and pragmatists...I mean for many people WordPress is a GUI editor for making web sties and blogs at a high level of abstraction of widgets and themes.

Wordpress also highlights the tradeoffs anything that abstracts over the underlying code...doing something specific means both knowing significant technical details of WordPress and some non-trivial amount of CSS, HTML, Javascript, and PhP _and_ the specific implementation details of the site in question. If the site is leveraging a significant portion of WordPress's capability then the overhead that comes with using WordPress may be a valuable tradeoff. Likewise if the person maintaining the site has a business doing WordPress sites then they can bring WordPress expertise to bear.

But for a general professional programming practitioner, the more universal tools of programming languages are applicable in more situations...knowing HTML and CSS is useful when working with WordPress and the more expertise a person has with the general tools, the less advantage there is to using WordPress.

Going down the stack from WordPress is possible. But it's still pretty much the case that if I'm using a GUI editor on the happy path, I don't care that it's using React. Using or not using React only matters when I'm off the happy path and have to figure out what the GUI did.

The last problem with front-end development in particular is that committing to a tool is risky, in two years there's a reasonable chance that the underlying technology of the tool will be out of the mainstream: e.g. Angular (one) today.

Good luck.

</comment><comment><USER33> Well, they sort of have in the form of Wix and Squarespace.

<comment><USER34> Right, and some open source CMS systems try to provide similar capabilities-- widgetized themes in WordPress or Panelizer in Drupal, for example.

But the UIs are complex, and getting good performance is a challenge because of all the layout info stored in the database. They are not something a capable dev team would want to build a product on top of. Fine for empowering content authors though.

</comment></comment><comment><USER35> GUI editors worked because website content was 100% static back then. In 2017, dynamic templating/MVC paradigms, along with CSS3 shenanigans, make GUIs difficult and certainly not accessible for non-technical users which would be the primary market.

That said, I've seen React GUI editors pop up occasionally.

<comment><AUTHOR> the "pop up occasionally" part is what has me stumped - if these tools are any good, they must surely be more efficient than hammering out CSS and HTML (or pre-processor languages) by hand. If they aren't, then why, and if they are, what's holding back adoption? I'm a frontend developer myself and the reason I posted the question is because I couldn't give myself a good answer as to why I wasn't using one myself.

<comment><USER36> Because front-end development isn't visual development, it's interface development.

What you're building can be accessed visually on a variety of screen sizes, through a screen reader, a screen magnifier, a braille display, through print outs and a multitude of other different ways.

Conversely in the other direction, you're also building application interfaces that let back-end systems feed data into the interface, and that's not something you'd want to use a visual editor for either.

<comment><AUTHOR> of course, but with a UI you could actually benefit in those areas - <USER3> example, integrating something like tota11y or ally.js, and other viewing modes for different screen sizes.

on the backend interfacing side, I suppose that depends on if the UI allowed you to set up fixture data that then flowed into your template tree. I could see that being quite a nice way to visually experiment with structuring your data.

</comment></comment></comment></comment><comment><USER37> I've seen a few bootstrap-based ones and I have tried a few, like PineGrow and Bootply, and I think they help. I'm hoping for a React-friendly one.

[https://pinegrow.com/](https://pinegrow.com/)

[http://www.bootply.com/](http://www.bootply.com/)

A list of some options:

[http://www.cssauthor.com/bootstrap- editors/](http://www.cssauthor.com/bootstrap-editors/)

<comment><USER38> > React-friendly one...

How about Structor: [https://helmetrex.com](https://helmetrex.com)

</comment></comment><comment><USER39> I used to really love the idea of GUI front end editors. I tried to use a few different ones for building different apps. They worked great for static UIs. What I learned is that I never actually build static UIs, and I was spending tons of time on the GUI. I dumped each when I realized that building from code was far more productive.

</comment><comment><USER40> The software industry largely decided to use HTML for the front end, it also largely gave up the 20 years of R&D on GUI design tools for existing semantically rich front-end frameworks. If Motif were FOSS or if CMU hadn't handed license rights to Andrew WM to IBM, we'd have probably avoided this whole mess that is HTML.

<comment><USER41> Haha. Do a google image search for "motif gui" and you'll see the most horrible interfaces made by men.

<comment><USER40> That like looking at Windows 3.1 screenshots and saying Windows 10 is horrible. Obviously thing would have evolved and improved. My point is that it was encumbered by licensing issues and therefore wasn't adopted.

</comment></comment></comment><comment><USER42> My point of view as a WPF developer is that I permanently switched the xaml files to be opened with the plain xml editor rather than with the normal design view. If I need to design something really specific, in the very unlikely case that I don't do it with Inkscape, I use expression blend just to iterate quickly over that very specific graphical element. For all the rest I just write xaml. There is auto-completion, most of the time I don't even need it, and if I had to use the designer view to compose my guis I would spend much more time for nothing. And after that I had to manually edit the awful design that is spit out by The wysiwyg editor. So I really can't imagine myself now using one gui editor as I have done multiple times in the past.

</comment><comment><USER43> I have been thinking the same thing for a while now. I know exactly what vision youre getting at. I think most people, especially programmers, don't see it.

The closest thing right now I've seen is Webflow and its CMS. You could create a lot of basic web apps with it.

</comment><comment><USER44> I've tried to use some of these mentioned GUIs. For me, the learning curve is fairly steep. Beyond creating something very simple I always find myself spinning my wheels very soon. I know what I need, so it's much easier to jump into the IDE and just do it. Also. At some point even your HTML is going to be made live. Either through turning it into the template or inline code or etc. it just doesn't really blend with my workflow. I prefer to sketch out things on paper then just go straight to IDE seems to be quickest way to keep the iterations going and then push to prod with least amount of friction.

I see using these tools like using photoshop to create a sculpture.

<comment><USER45> I completely agree with the learning curve. I often think it's just as hard, if not harder, to learn a new tool than it is to learn a new programming concept. You have to re-train your brain to think the way the creators of the tool approach problem solving (assuming their approach is actually good). If you're not already like-minded, then this is incredibly counterproductive.

There's so much flexibility that allows for creativity when you just understand the code. In fact, I've been doing what I consider to be "designing in the browser" for years. Which is using Photoshop to get started, pick colors, etc, then utilizing developer tools for much of the refinement during the implementation phase. This is the closest thing I've ever found to a good "GUI editor".

</comment></comment><comment><USER16> Here are some GUI Tools which are showing promise. (not affiliated with any of them)

Here were my basic needs:

* Ability to be understood by a non coder (not necessarily web novice).

* Simple Reusable Components - Drag & Drop tools to create simple CRUD apps

* Code Generation - Have enough scaffolded code generated to hand off to a coder to wire it up. (from Elance etc)

* Work on at least 2 of 3 platforms - WebApp (JS, React or Vue), iOS & Android

* Have ability to create simple logics - If/Then or Show/Hide or even JSON digestion

Here are the tools:

[https://neonto.com/reactstudio](https://neonto.com/reactstudio) \- A drag n drop Mac tool for developing React apps. All three platforms.

[http://creolabs.com](http://creolabs.com) \- Design tool for Mac (this guy rewrote UIKit). Only Native ios/android. No Webapp.

[https://www.protopie.io](https://www.protopie.io) \- Prototypes for now, simple code export on the way.

[http://www.appgyver.io](http://www.appgyver.io) \- Data Driven drag/drop webapp. All 3 platforms.

[https://creator.ionic.io](https://creator.ionic.io) \- GUI tool for Ionic (Angular).All 3 platforms.

[https://material.io/stage/](https://material.io/stage/) \- Google's upcoming tool (From Pixate & Form team). Unknown.

[https://polymer-designer.appspot.com/](https://polymer-designer.appspot.com/) \- A Crude Polymer layout tool, looks like Google abandoned it.

[http://www.getnoodl.com/](http://www.getnoodl.com/)

Prototyping tools like Facebook Origami ([http://origami.design/](http://origami.design/)) have refused to spit out code. So I didn't even bother learning it.

</comment><comment><USER46> Hm, it might have to do with the way CSS works.. When I'm developing gtk+ Applications, I always do the UI in glade. It works wonderfully, even if I still have to do some stuff in code (UI elements that are added in response to the user doing something). And even for that there seems to be an alternative, namely GtkBuilder templates – haven't tried that yet and Glade doesn't seem to be able to create them, but might be able to edit them once you have manually written the first few lines of XML.

<comment><USER45> Good point. I've never actually worked with gtk+, but I have worked with windows forms development for desktop apps. I thought it was a really good approach for building a windows desktop applications, but I create all web- based UIs in a code editor.

I suppose if there was only one browser to target, then we might actually see more use of a GUI editor. Kind of how FrontPage was for IE a long time ago.

</comment></comment><comment><USER16> Simple, job security. It would put lot of FrontEnd Coders out of work - <USER4> all, but many of them. So it is in everyone's best interest to keep coders coding, designers designing and have as little overlap as possible. Silos keeps the wheels turning.

So there has been a collective badmouthing about how WYSIWYG tools create a codular mess, and then they proceed to create similar codular mess by hand (pull this library, glue, pull that library, glue..etc). After Bootstrap, webdesign is dead. Every single website look the same. If not literally, then same blocks re-arranged (Hero Image, Sticky Nav, Round Profile Pictures, Contact Map, Footer).

I remember Dreamweaver in late 90s, it democratized webdesign, as a design student, I was able to pretty much draw and create as simple or complex I want. In 1998 Dreamweaver promoted "Roundtrip HTML" to quell the backlash - but dev sentiment killed a lot of momentum it had (They still badmouth it). Semantic Markup, Tables... unmaintainable, and then proceed to have the same convoluted polluted code. Was it perfect? NO... but it was not FrontPage or Word>HTML. It is 2017, and with the technologies available today, there should be multiple tools to cater to UX tooling.

For most designers, learning to code kills the spark of creativity, and puts you in a templatized mindset (Hero Image, Logo on top left etc).

<comment><USER47> I'm not sure if this is a troll post. The "un"adoption of GUI frontend tools has nothing to do with job security. At best, it is a poor conspiracy theory.

There are great answers in these comments that provide good insight. This comment is not one of them.

</comment></comment><comment><USER48> Frontend development involves I/O (server data fetching), which has implications

\- it is async \- it can fail \- it is slow

TLDR you need a programmer to hand-orchestrate the I/O.

REST (HATEOAS) link abstraction permits a general solution to data-driven user interfaces (this is why web browsers are a generic user interface for simple html-only applications), but they are slow due to the way the data fetching is handled - see former facebook manager Pete Hunt's quote here (2014) which predates GraphQL [https://news.ycombinator.com/item?id=7601774](https://news.ycombinator.com/item?id=7601774). Essentially we are talking about the object/relational impedance mismatch, which has performance implications and generally requires hand optimizing by a programmer (tweak the backend queries to batch a lot of stuff and minimize database round trips; tweak the frontend to do as few network requests as possible..this causes the backend-for-frontend pattern (anti-pattern) where you get N backends each hand coded... you can't abstract over this and also have good performance. [http://samnewman.io/patterns/architectural/bff/](http://samnewman.io/patterns/architectural/bff/)) So you need programmers to figure out the right perf compromises and write the same shitty glue code over and over.

BUT if you have a graph oriented database with something like GraphQL to query it from the frontend, it's pretty easy to imagine abstracting over this stuff in a way that doesn't require hand-tuned performance e.g. Relay and Netflix Falcor, just needs one generic backend, and this paves the way for generic CRUD app word processor that outputs performant apps. If you abstract over I/O, the actual user logic code isn't async, there's exactly one place doing I/O (the generic runtime) so user code can't fail, data fetching is automatically batched properly so user code isn't slow. Don't need a programmer anymore, what you need is more like a business analyst who can write excel formulas.

My startup is building exactly this, it's called Hyperfiddle, email me directly if you'd like to talk about this or be on our mailing list when we launch this year. You can read a little more about it in this transcript of my LambdaConf talk last summer: [https://docs.google.com/document/d/1hb9qB_d9jlDUpgTSBcFELGhK...](https://docs.google.com/document/d/1hb9qB_d9jlDUpgTSBcFELGhKuWVecVzgGCcOeR9UueE/edit#heading=h.up2n5n7x3shf)

</comment><comment><USER49> WYSIWYG seems to work well for HTML/CSS if you're working in a specific, fixed domain.

Wix.com, for example, does a nice job with this. If you play around with it, though, you can see why it would be difficult to extend it for general purpose use on any type of website. See [https://www.youtube.com/watch?v=UgkkiKdPibg](https://www.youtube.com/watch?v=UgkkiKdPibg) for an idea of how it works.

</comment><comment><USER50> WYSIWYG editors have a hard enough time generating valid, sensible markup and styles for consumption by typical end users. But many end users are not typical - some have visual and/or auditory impairments. In many jurisdictions, website creators are legally required to comply with accessibility (a11y) principles. This adds another layer of abstraction on top of the already complex task of building a valid and functional UI.

</comment><comment><USER51> I agree with the other's regarding the dynamic nature of the content. In addition, the widgets themselves haven't changed all that much for desktop GUI's. WxWidgets, Win32, Gtk, and Qt have mostly the same basic set of controls today that they had 15 years ago. Just imagine the extra R&D churn it would consume if you also had to update your GUI editor every time you changed a web UI control!

<comment><USER52> But you can create a custom control (not as nicely as Delphi has that covered) which can be packaged and documented and then reused. With web, because of CSS this is a problem; shove your custom html control in another page and it suddenly looks bad, not because of a few colors and a bit of alignment (like it would be on the desktop), but because of different framework use, different layouts, clashing css etc. It is a pain compared but he, it is what it is for now.

</comment></comment><comment><USER53> Good question.

One way to think about this is: why don't you or I use a GUI to build a front end.

I tried to use one for Bootstrap, and it was hard to get the everything to line up right. I wasn't sure how things would act when the screen changed, or how to change that.

Then when I went into the CSS it was laid out in an unfamiliar fashion.

These problems seem very solvable, but I don't know why they persist.

<comment><AUTHOR> I'm actively looking into this idea at the moment, and would love to get some feedback from you along the way - I don't have much built right now but I'm happy to give you a discounted account and influence over the product direction if you'd be willing to give me feedback while I iterate? My email address is in my profile if you're interested :)

(this also applies to anyone else who thinks that GUI frontend editing is the way forward - send me an email and I'll let you know when I have something to show you! I won't send you anything else, scout's honour).

</comment></comment><comment><USER54> Most programmers are not very good at visual thinking IME. I have a bet with myself that by 2025 natural language processing will be good enough (combined with other UI tools) for designers to explain what they want directly to the computer and a great many programmers are going to be sitting around wondering what the hell happened.

<comment><USER16> > Most programmers are not very good at visual thinking IME.

As a visual thinker, I cannot wrap my head around even simple programming concepts - they seem SO alien to me :)

</comment></comment><comment><USER55> Having used many great visual dev tools over the years but also generally mainly focusing on code, especially in the HTML world, and having had many discussions on this topic over the years, I can promise you that it is a cultural/social failure rather than a technical issue.

It comes down to this: programmers write code. If you build your UI or whatever graphically without writing code, then you are not a programmer -- you are a user. The last thing any programmer wants to be is a lowly user. So programmers have a natural motivation to not make these tools better or try to use them. And it becomes part of the culture to not use visual tools, and naturally having rarely used them and never trying to improve them and the fact that they diminish their job towards more user-like behaviors, programmers often do not find them useful.

</comment><comment><USER56> HTML isn't WYSIWYG. Every 'front end html GUI editor' I've seen has tried its best to sweep that fact under the carpet rather than embrace it.

HTML is very easy to edit, in fact, if you need precise results, it's easier to edit html by hand than it is to wrestle with a WYSIWYG editor, trying to get it to do what you want.

CSS really doesn't suit itself to our current understanding of GUI editors. It's not even clear how editing specificity of a selector, to take just one example, should work in a WYSIWYG environment.

We haven't got good visual editors for html/CSS for many of the same reasons that we don't have good visual editors for C.

</comment><comment><USER57> I do both design and development and in my experience it comes to abstraction level, control and code quality.

Any GUI editor I've tried sooner or later comes down to editing CSS/ HTML via dialogs which is less efficient than editing text files and requires similar expertise. I'd rather know CSS / HTML than be an expert in my way around a certain GUI.

Front-end code structure matters a lot for maintainability and there is no standardization to account for that.

Autogenerated code is not great.

So, once I am done with basic UX prototyping on paper, I usually move to handcrafted code and fill in detail as I know/discover more, testing along the way.

</comment><comment><USER12> On the projects where I am tasked with fronted development, the WYSIWYG editors have surely caught on.

Then again, for me frontend means native applications, using Android UI Builder, WPF Blend, Qt Creator, iOS UI Builder, Netbeans Matisse.

</comment><comment><USER58> The most popular CMS, WordPress, is experimenting with this now:

\- [https://make.wordpress.org/design/2017/02/09/initial- gutenbe...](https://make.wordpress.org/design/2017/02/09/initial-gutenberg- prototype-editor-testing/)

\- [https://github.com/WordPress/gutenberg](https://github.com/WordPress/gutenberg)

\- Demo: [https://wordpress.github.io/gutenberg/](https://wordpress.github.io/gutenberg/)

</comment><comment><USER59> Creating UI by hand is ridiculous. It doesn't scale.

\- All companies think they solve a unique problem, and believe that justifies creating a custom UI.

\- All brands want as much exposure to users, which demands custom UI themes and styles.

\- All devices have access to different I/O components, which implies completely different user interfaces.

\- All users have different preferences and needs.

You can't design a one-size-fits-all UI taking all of the above considerations into account. You need to operate at a higher level of abstraction than "pixels on a screen".

The solution has been in front of us for decades. It's semantics.

</comment><comment><USER60> I think they're there, you just need to find them. For example, here's a pretty good one: [http://h5mag.com/](http://h5mag.com/)

<comment><USER52> For niches there are many and many are making big money inside that niche. As generic tool it is much harder. You can turn things around, if possible, but letting your designer use such a tool. Then she is locked inside this constraint to make it look nice. Ours, rightfully, as head design, does not want to do that and I believe many won't though.

</comment></comment><comment><USER61> I still miss Sun's DevGuide. It's hard to find anything on it these days. It was so easy to create a GUI and I haven't found anything similar.

</comment><comment><USER62> Like [http://maqetta.org](http://maqetta.org) and [https://www.sencha.com/products/architect/](https://www.sencha.com/products/architect/)

It seems like once a GUI library gets mature enough to get a graphical editor, some new library comes along that the herd moves to and the old one dies a slow death

</comment><comment><USER63> If Webflow could bump up its CMS abilities just a notch or two, and include a better template/design component it would be a knockout imho...

On this same note I would kill for someone to add this type of interface to Airtable.... An untapped market with most current solutions (knack, caspio, etc) not even close on graphic and layout possibilities.

</comment><comment><USER64> The real issue is a huge WYSIWYG : HTML mismatch. You want HTML that looks different on different screens, handles blind users, and gracefully degrades to still work on IE 6, early iOS, etc.

Meanwhile designers using WYSIWYG tend to build applications that work just fine in their environment and nowhere else.

<comment><USER52> You want that but in reality, how often does it happen for popular sites? The small startup sites no one will ever visit are ready for the handicapped, slow connections, work on every browser and mobile while my banks, airlines and others I need and/or visit daily barely work for normal users on high powered desktops. And the bad apps they have. Oh boy. They would benefit from a more generic bootstrap/react based wysiwyg component approach.

</comment></comment><comment><USER65> Same reason markup/markdown is better for docs than Microsoft Word.

WYSIWYG development just sucks. It's not diffable nor mergeable. Quick setup is simple, but complex refactorings are plain impossible. Also there's always at least this one thing the editor fights you on.

</comment><comment><USER66> Yo man, everyone's got their brew. It's just how much of it you can remember and copy into the next batch each time.

</comment><comment><USER67> Check out bubble.is. It does a fantastic job at both, though it is an integrated solution.

</comment><comment><USER68> Because then you'd have two problems instead of one.

</comment><comment><USER69> What about UX? How you drag and drop that?

<comment><USER70> Same way you don't drag and drop conversations. UX isn't a product; it's a byproduct of UI. Good UI necessarily produces good UX, not the other way around, no matter what professional "UX engineers" post to Medium.

</comment></comment><comment><USER71> The correct answer to this is that the structure of the interface changes over time, and is influenced by the code. If you were to try to implement, say, the interface to HN, then you would create a top bar with some links, a body section, and then a bottom bar with some links. But the interesting part, all the posts, couldn't be drawn in the gui editor, because, well, they are programically generated. You could create some sort of post template, that would then be able to be injected into the "body section" but really, all the interesting parts of the interface end up being dynamic, and the static parts are trivial to design in code too.

<comment><USER71> Just to be clear, I say that this is the "correct" answer in order to differentiate my answer from the ones that I think are not actually correct.

I often think, and many agree, that the problem is with reactive interfaces supporting both mobile and desktop. Or that the problem is with GUI editors producing disgusting HTML. And indeed these are both problems. But QTDesigner, and friends don't face these problems. Your GTK app isn't going to be a reactive interface, and QT, not using html, isn't at risk of the "disgusting html" problem. And yet these designers aren't terribly popular either.

</comment></comment><comment><USER72> If these things produced good backend code, were faster to work with than text, produced code compatible on all browsers, and could do what I want them to do I'm sure I'd continue to use them rather than quickly find them unsuitable for my particular purposes.

In chip design there's graphical editors available, but most design work is done by writing text in languages such as Verilog and VHDL.</comment>


Feedback on our location based social app 'GeoHives' - <AUTHOR>

We have been working on the location based social app 'GeoHives', now available for iPhone and Android, since last 1 year. There are still lots of work to be done, but we think it is now ready for general use. Also, it is no secret, we are looking for investors to help us grow to next level. Any feedback/suggestion is extremely useful to us.
Thank you!
www.geohives.com/store <comment><USER2> This looks great but given Facebook has entered geo social space with today's announcement, it may be difficult to get people to install this. It may help to think about what use case can this serve that Facebooks functionality can not.</comment>


How Secure Are the US H-Bombs in Turkey? - <AUTHOR> http://www.newyorker.com/news/news-desk/the-h-bombs-in-turkey <comment><USER2> Not very, apparently. The US had power cut to the base and a no-fly zone including the base was called.

I don't think that would deter them from taking off if they really wanted to but that would strain US/Turkish relations even further than they are already strained at the moment, which is just before the breaking point.

There have been quite a few calls in the last couple of months to remove the weapons from Turkish soil due to perceived (and apparently correctly perceived) instability and an accelerating slide into a dictatorship.</comment>


Show HN: Sagify - Train and deploy ML/DL models on AWS SageMaker made simple - <AUTHOR> https://github.com/Kenza-AI/sagify <comment><AUTHOR> Hi HN! I' m Pavlos, an ML engineer at HomeAway, building things on the side and just launched a new open source project. Sagify is a command-line utility to train and deploy Machine Learning and Deep Learning models on AWS SageMaker in a few simple steps. Why you should give it a try?

\- Minimise the time and effort to train and deploy models on AWS SageMaker \- Automate training and deployment of Machine Learning and Deep Learning projects \- It's open source!

Questions/feedback? I'd love to hear it.

</comment><comment><USER2> Great job! A well documented CLI that will save me a lot of time training my ML models on AWS</comment>


A Tesla YouTuber Wants a Gas Car and Now YouTube Keeps Taking Down His Video - <AUTHOR> https://www.vice.com/en_us/article/7kp4ma/a-tesla-youtuber-wants-a-gas-car-and-now-youtube-keeps-taking-down-his-video <comment><USER2> That YouTube doesn't have even the most basic protections against this type of abuse is amazing. I guess there's no profit in protecting again falsely flagging videos.

After the appeal, review and reinstatement it should be trivial for YouTube to track that the appeal was successful, no guidelines violated and that they video is has not been altered. Anyone who continues to flag the video should then have their ability to flag removed or at minimum have their flagging not treated as legitimate.

At least impose the same 3 strikes rule for people who flag or falsely claim copyright. Trivial things to implement technically but then YouTube would lose control of the conversation.</comment>