A Real-World WebAssembly Benchmark - <AUTHOR> https://pspdfkit.com/blog/2018/a-real-world-webassembly-benchmark/ <comment><USER2> Personal WASM anecdote: I just implemented a WASM based 3d model boolean operation for three.js where I can intersect two models together. The pure js version ran in around 10s on a relatively simple model whereas the WASM version did the same thing in a little under 1s. I've been very impressed by the technology so far! Obviously this kind of CPU intensive work is where it can shine and it's a useful tool to have in your toolkit.

<comment><USER3> and whats the performance using native code(c/c++)? Im guessing ~0.1sec on same models.

<comment><USER4> From benchmarks I've seen elsewhere, native code is generally roughly 2x faster than WASM, so I doubt that's the case. I'm sure it depends on a lot of factors, though.

<comment><USER5> Single-threaded, non-SIMD x86-64 code being 1.2x to 2x faster than WASM is what I'm seeing as well. Interestingly I don't see such big differences between browsers as the PSPDFKit benchmark, my suspicion is that this mainly measures overhead when crossing the WASM-JS border.

</comment></comment></comment></comment><comment><AUTHOR> PSPDFKit CTO here: We've been using WebAssembly since 2017 to render PDF documents directly in the browser and strongly believe in the future of the technology.

We published this benchmark to have a public indicator of the performance gains WebAssembly promises in a real-world product.

<comment><USER6> Hello Martin - slightly off topic. There's no pricing section on your website. Does one _have_ to get in touch with sales for a quote?

<comment><AUTHOR> Yes, please contact our sales team to discuss your use case. We sell to indie developers, early startups up to large Fortune 100 companies with a wide range of use cases so we found custom pricing to be the best way for us to be able to sell our software to everyone and at the same time support our team size.

</comment></comment></comment><comment><USER7> Firefox crushing the competition on this (all on iMac late 2015):

      Firefox Nightly: 2216
      Chrome Canary: 5078
      Safari Tech Preview 60: 7216

Brand new iPad 2018: 16653

Moto G4 phone Chrome: 37735

Windows 10 Laptop:

      Firefox Nightly: 2278
      Chrome Canary: 4907
      Edge: 16332

<comment><USER8> A big part of the score is compilation time, which improves a lot with Liftoff, our baseline compiler for WebAssembly in V8. We've been in contact with the benchmark authors and have identified other bottlenecks in our engine (e.g. instantiation time), which we are now working on optimizing. Look forward to some increasing scores soon :)

<comment><USER9> Liftoff is still substantially slower at initial compilation than Firefox. Are there any plans to close the gap? A Unity exported game takes over 40 seconds for a new model low end Chromebook to compile. The upcoming 3 fold decrease will be nice, but FF could do it in 2 seconds on the same hardware.

[https://lukewagner.github.io/test-tanks-compile- time/](https://lukewagner.github.io/test-tanks-compile-time/)

FF 61: 78.4 MB/s

Chrome Canary: 9.7 MB/s

Chrome 67: 3.3 MB/s

<comment><USER8> We still have a bottleneck at instantation time where we compile many JS<->WASM wrappers. We are working on parallelizing this compilation as well, so we'll get another bump out of that.

</comment></comment></comment></comment><comment><USER10> OR I can just read and edit PDFs in the peak-optimized, ahead-of-time-compiled native PDF reader that comes on my computer.

<comment><USER11> Ha! Not sure if you've seen it, but we offer native SDKs for iOS, Android, Windows, macOS and Linux. Our Web SDK also has a version that uses PSPDFKit Server via a Docker container to get faster performance.

The performance difference to native is smaller than you might think though - see our post from a few months back: [https://pspdfkit.com/blog/2017/webassembly-a-new- hope/](https://pspdfkit.com/blog/2017/webassembly-a-new-hope/)

PSPDFKit for Web Standalone is a great choice for an easy-to-deploy web viewer, annotation editor and form filler, and performance is great. Definitely better than pdf.js - which is typically where people start with, before they upgrade to PSPDFKit for Web.

<comment><USER12> > Our Web SDK also has a version that uses PSPDFKit Server via a Docker > container to get faster performance.

...what. why would I want that over a library that I can do whatever I want with?

</comment></comment></comment><comment><USER13> FYI: WebAssembly is effectively starting to get WebAssembly only APIs. Chrome is shipping the WebGL commit API which is designed to support spin loops in native apps (others are expected to ship it too)

Most native OpenGL apps run in a spin loop as in

        while(true) {
          update();
          render();
          glSwapBuffers();
        }

To support that model TPTB added a worker only `gl.commit` function that does effectively the same thing as `glSwapBuffers` so that native apps can keep their spin loops and don't have to refactor to be event based.

Of course if you decide to use a `gl.commit` spin loop your worker can no longer receive events (no onmesagge, no XHR, no websockets, no fetch) so you're supposed to use SharedArrayBuffers to communicate with a spin loop worker.

SharedArrayBuffers are being re-enabled once they are isolated to same domain only processes.

AFAICT this is the first browser API that is really targeted exclusively at WebAssembly. I'm guessing more will come. Not entirely sure how I feel about that but I guess it's inevitable.

<comment><USER7> Are you sure gl.commit is WebAssembly only? That doesn't seem right to me, but I could be wrong: [https://hacks.mozilla.org/2016/01/webgl-off-the-main- thread/](https://hacks.mozilla.org/2016/01/webgl-off-the-main-thread/)

What is TPTB?

SIMD is another WebAssembly only API, hopefully coming soon.

<comment><USER14> By WebAssembly only I don't mean you can't call it from JS. I mean rather it's designed for Wasm not for JS. JS is generally event oriented. Native C/C++ games are usually spinloop+polling oriented. With the current design of commit is for spinloops but once you do a spinloop you can no longer receive events.

That blog post you linked to is 2 years old and out of date with what browser are actually planning on shipping.

For JS you no longer need commit at all. canvas (both 2d and webgl) work offsrcreen just like they do without offscreen. You render, when your event exits the changes get magically propagated to the corresponding canvas. commit is solely for when your event never exits (you're in a spinloop)

</comment></comment></comment><comment><USER15> > The team was especially helpful in pointing out bottlenecks in our > JavaScript implementation, and we're already incorporating these changes > into our next PSPDFKit for Web release.

Any chance you can talk about those bottlenecks? Might be interesting.

</comment><comment><USER16> We should be at the point where network computers are practical for casual users. A full install of the BeOS operating system is just 45MB. A tricked-out one was barely more than a couple of hundred MB. We should now be able to have operating systems which are mostly cached from online connections, running in clients like Web Browsers, but purpose built for running such an OS.

</comment><comment><USER17> What's the difference to benchmarks like [https://hacks.mozilla.org/2018/01/oxidizing-source-maps- with...](https://hacks.mozilla.org/2018/01/oxidizing-source-maps-with-rust- and-webassembly/)? The results seem vastly different.

<comment><USER18> One is a large c++ compiled ti asm.js and wasm. The other is wasm compiled rust vs javascript. How are they comparable?

<comment><USER19> GP is just wondering why the results are so different.

<comment><USER11> You can't compare small/micro-benchmarks that call into WebAssembly and then get the result with a larger full-stack application where parts are in JS and parts in WASM - both are highly interlinked. This is much more reflective of real products. We couldn't find a benchmark that shows such end-to-end usage, so we built one.

</comment></comment></comment></comment><comment><USER20> the standalone version produces a dom tree?

I expected canvas rendering, which would be MUCH faster. (?)

<input name="Checkboxes 2" value="Checkboxes" type="checkbox">

<comment><USER21> If you render to canvas, you would need to reimplement scrolling and zooming, checkboxes and input elements. Any custom reimplementation of this stuff will end up slower and clunkier than the optimised, native versions already in browsers.

Also (as far as I know) canvas content is inaccessible to screen readers. Accessibility matters.

<comment><USER22> No problem.

[http://example.qt.io/qt- webassembly/quickcontrols2/gallery/g...](http://example.qt.io/qt- webassembly/quickcontrols2/gallery/gallery.html)

</comment></comment></comment><comment><USER23> > Browser vendors can reach out to us and obtain a more permissive license key > so that the benchmark can run on different machines and even on their > continuous integration servers.

Sounds like a great idea for encouraging performance improvements and avoiding regressions!

</comment><comment><USER24> wondering why those benchmarks weren't run on Linux distros like Ubuntu, Debian, etc.

</comment><comment><USER25> Now all we need is to expose a graphics context to wasm. No need for DOM support.

<comment><USER7> You already get 2D, WebGL, WebGL 2 through canvas

</comment></comment><comment><USER26> Great work, looks like a very useful PDF toolkit. I've been working on a side project implementing something similar for some time but has stalled due to life getting in the way. Can you share anything publicly in terms of pricing?

I see everything is through a sales person now and I'd like to get a better high level understanding of high level costs for passion projects (<1000 users), small-medium (<100k), and enterprise (1M+). What metrics are you charging usage on?

<comment><USER11> Metrics are required platforms (iOS, Android, Web, Windows, macOS, Linux), components (see matrix on [https://pspdfkit.com/pdf- sdk/](https://pspdfkit.com/pdf-sdk/)), number of users, number of server nodes (if Docker-based), number of apps/[sub]domains, internal/external access and expected support, to name a few. We're usually quite fast to figure something out that works for both parties, pricing is in the 4 (passion projects) to 6 (enterprise) figure range. Simply drop us a message via [https://pspdfkit.com/sales](https://pspdfkit.com/sales) to get things started. We try to make this process as easy as possible.

<comment><USER27> You should probably consider putting something basically exactly like this paragraph on your site, especially the pricing range.

<comment><USER26> ^ this. Please provide a pricing page with a few options and even a usage calculator. Without it, you'll be hard pressed to find enough folks giving this a real shot and will just assume that it's enterprise-only and out of their range.

</comment></comment></comment></comment><comment><USER28> Safari is so slow

<comment><USER29> Looks like they are working on it, which is good news ->

From [https://twitter.com/steipete/status/1013035117076467713](https://twitter.com/steipete/status/1013035117076467713) :

Shoutout to the Safari team! They were able to track down the slowness in the current WebAssembly implementation and ALREADY FIXED IT. Patch is here: [https://trac.webkit.org/changeset/233378/webkit](https://trac.webkit.org/changeset/233378/webkit)

(trace points caused a significant (4x!) slowdown as our benchmark performs many calls into the VM)

</comment></comment><comment><USER30> One thing that would be super nice, in theory, would be compiling WASM modules on-the-fly from the text format.

In a sense, it would be like a JIT for the Web, and one possibility for bringing existing JIT-based languages to WASM.

<comment><USER30> In case anyone else was wondering, you actually _CAN_ do this and JIT WASM in your browser via Binaryen:

[https://github.com/WebAssembly/binaryen/blob/master/test/bin...](https://github.com/WebAssembly/binaryen/blob/master/test/binaryen.js/hello- world.js)

</comment></comment><comment><USER15> What is the most performant compile to wasm language? Or are they all similar?

<comment><USER31> Since all languages should be able to compile to wasm, that question is pretty close to "Which language is the most performant?", which is a can of worms that I'm not going to open. Maybe something like the Benchmarks Game would be useful here. Or already exists, and someone could point me to it :)

A similar question would be "What languages do you know of that are focused on performance and compiling to wasm?" For that, I'd say C++, Rust, and Go, though I'm sure there are others.

</comment></comment><comment><USER32> > In the future, Microsoft wants to bring more features — which are currently > not possible in asm.js (or JavaScript) — to WebAssembly.

This is very vague, but already disturbing

<comment><USER33> I'm guessing these "features" will be tied to the Microsoft Store, something they're already doing with PWAs.

Many were quick to criticize Valve and Epic about their own criticism of the Microsoft Store, which is why Microsoft is now using a "boiling the frog" strategy to tie everything to the Store over the next decade or so. And this process will likely accelerate once Windows 7 is dead and buried.

<comment><USER22> For those that don't know it, WinRT always supported hosted web apps.

Microsoft has picked up on Google's PWA ideas and is migrating UWP hosted web apps to it.

I expect Google to follow a similar path with Android and ChromeOS.

</comment></comment></comment><comment><USER34> \- Firefox 62b5: 1429

\- Chromium 68: 5722

\- Safari 11.1.1: 6500

On 2017 Macbook pro running macOS 12.13.5 on battery power

</comment><comment><USER35> I tried on Ubuntu 18.04. Firefox around 2k and Chrome around 10k</comment>


Ask HN: Best tools for data reporting? - <AUTHOR>

I've used and built BI and Reporting tools before, but am currently having trouble determining the best tool for the job. I've used things like jasper reports and pentaho in the past but these feel like very raw products and a lot of overhead to simply generate a report. I essentially have a database that has a vast amount of valuable data. We're beginning to really examine the data we have and look at trends and then begin analyzing users.
Currently I've used a mix of raw sql extracts combined with Excel, but this is more steps than desired. Much of the reports that I'm creating thus far are based on raw SQL and I don't really need a builder tool, only the ability to visualize the results.
What tools have you used that let you easily connect to a data source and run reports against it? <comment><USER2> My app might be of use to you - <http://prettygraph.com>. feel free to email (details in profile).

</comment><comment><USER3> Eclipse BIRT, is a reasonably easy one.</comment>


Replacing Skype with SIP using Plivo (YC S12) - <AUTHOR> http://www.maxmasnick.com/2013/05/18/replacing-skype/

<comment><USER2> Great tutorial. I see that you've mentioned "non intuitive". We'd love to hear how that can be remedied.

</comment><comment><USER3> I am thinking of switching to them(personal usage). I've had a Google Voice for a long time but seeing no way to easily use it from my phone or desktop I guess I'll rather dump them, they don't seem to do much good with GV either. Maybe it will go into Google cemetery soon.

I am going to purchase some credit at Plivo. Not sure how much they charge for calls to Indian numbers.

Update: Just checked, they don't offer calls to Indian numbers. At least that is what I understood from <https://manage.plivo.com/pricing/>

<comment><USER2> Hey Fakeer,

We do offer calls to India. The pricing is here <https://manage.plivo.com/pricing/?country=india>

It's 2 cents a minute(which is the current GV rate)</comment></comment>


What Exactly Makes "Bad" Code Bad? - <AUTHOR> https://www.codewithjason.com/exactly-makes-bad-code-bad/ <comment><USER2> \- doesn't solve the problem \- adds unneeded/unwanted complexity (excessive ops for cleverness)

kinda like the DOM structure & bad CSS on the webpage... why is the side nav in the header, yet has a min-height of 1000px? what happens when the screen is taller? :)

</comment><comment><USER3> Violates the do 1 thing and do it well principle (ie broken abstraction)</comment>


Cloudflare booted Switter, a Mastodon instance for sex workers - <AUTHOR> https://www.theverge.com/2018/4/19/17256370/switter-cloudflare-sex-workers-banned <comment><USER2> So here's the issue with companies like Cloudflare - they live under US law. What about parts of the world where sex work is regulated/taxed/legal? (ie Australia?) Does this mean CloudFlare can't be trusted to be an "internet" thing as much as a "US" thing?

<comment><USER3> My first though on that was from shadowrun: That's a bad and current meatspace influence in cyberspace.

There cannot be "internet" companies, because a company has to be registered in an internationally recognized place - especially if that company wants to scale beyond 1 - 10 enthusiasts. And then meatspace law of that specific place applies. And outside of a few specific instances, wrenching in meatspace defeats cyberspace.

<comment><USER4> _There cannot be "internet" companies, because a company has to be registered in an internationally recognized place_

After SpaceX puts up LEO satellite Internet, maybe someone needs to put up an LEO satellite cloud?

<comment><USER5> If someone with authority to use force can get to you with a gun, it doesn't matter where your gear is.

<comment><USER4> What if where your gear is located is someplace where shooting could spoil something very valuable to the authority? Earth orbit might well qualify. Shooting down a 1000 satellite fleet sounds like something that could precipitate a Kessler Syndrome cascade.

<comment><USER5> You misunderstand. I was suggesting you'd be renditioned and beaten with a hose or gun on earth if you own the unauthorized satellite constellation.

Although, you shouldn't put past governments to use high output lasers with adaptive optics to disable undesirable satellites without causing a debris field. China has already done this with low power lasers to blind US spy satellites.

</comment></comment></comment></comment></comment></comment><comment><USER6> Why shouldn't they? It's clear a massive liability given the current US laws.

</comment><comment><USER7> bigger discussion: [https://news.ycombinator.com/item?id=16876040](https://news.ycombinator.com/item?id=16876040)</comment>


Ask HN: Should I quit my current job and join a bootcamp? - <AUTHOR>

My dilemma: I'm 27, making 120k/yr (in the NY Metro area), have great hours and generally no stress.  On the other hand, I feel like I have ceased growing as a developer and am fearful of my future earning potential if I was to lose my current job.
I am a software engineer for a very small company.  I develop Windows desktop software mainly in C++ and .NET.  It was my first job out of college.  Shortly after arriving, my boss transitioned to a management role so I became the de facto lead programmer.  I am able to complete any task asked of me, but I have no one to mentor me.  I'm bored, and worst of all, I'm not learning anymore.
It's become very clear in the last several years that mobile and web development are where the majority of jobs are.
I wish I had the time to dedicate to learning new skills on my own but between my full-time job/gym/girlfriend/life it doesn't seem feasible to become proficient enough in a new field to be hire-able.
Bootcamps seem like an attractive option due to the short time period and high job placement rates.  But, if I was to graduate one of these bootcamps, would I be starting over at an entry level position?  I would be taking a pay cut at the very least.  There's also the high cost to consider.
TL;DR
I'm riding a gravy train and if it crashes I'm screwed. <comment><USER2> Another possibility might be to look for a new job at a larger company where you can be exposed to web development while doing other things. For example, somewhere that has a .NET-based back-end for a web-facing system. At some point, you might pick up enough knowledge about the other parts of the system to be able to move into web development.

And at a larger company, you might also have more possibilities to find a mentor (or to mentor others) and learn new things.

</comment><comment><USER3> I would start banking some of that gravy and stay where you are for now.

Bored?

Nights and Weekends learn something new.

Rails (Ruby) and/or Laravel (PHP)

[http://railscasts.com](http://railscasts.com) [http://laracasts.com](http://laracasts.com)

Are both great places to learn.

These are mainly to create web applications.

SaaS Apps.

Get inspired: [http://www.youtube.com/watch?v=0CDXJ6bMkMY](http://www.youtube.com/watch?v=0CDXJ6bMkMY)

Choose a side project, can be something fun or for profit.

[http://startupsfortherestofus.com](http://startupsfortherestofus.com)

google patio11 and ready everything by him.

You're making really good money, no need to throw that away, you can build your skills in your spare time, and if you're interested start building your own product/SaaS empire along the way. Preparing now for things to go bad in the future.

But I would stay on your gravy train as long as you can building new skills along the way.

Enjoy the ride.

</comment><comment><USER4> Focus. Decide what you want to eventually do and start moving towards it. You'll need to re-prioritize your life. Give up something to gain something. But leaving the job or going to a bootcamp for this, seems risky.

You can learn mobile or web on your own and build up a portfolio. With this portfolio, demonstrating your 'new skills', start interviewing for the job you want. If you can demonstrate these skills at a high level (similar skill set to your current job), you should be able to command similar pay.

But, at your (young) age you should be looking primarily for positions that will challenge and grow your skill sets.

If you have a choice, only work on the hard things.

This is what will keep you employable now and in the future.

</comment><comment><USER5> If its all about the money, then there's no answer but 'keep earning every second'. Not much you do will increase your pay so that it will make up for losing a year's salary or so. Especially if you have to go into debt.

On the other hand... The gravy train will always be there - your skills will remain useful for another decade or so. If you want new skills, by all means learn them now! But don't do it for the money.

</comment><comment><USER6> If it's possible, try working some of those web/mobile projects into your day job. If you're worried about getting fired, and want to learn mobile, adding value to your company via some mobile project sounds like it could neatly resolve the whole thing. It sounds like you have a management/lead role that would allow you to make this call as well.

</comment><comment><USER7> I don't see how web development changes anything - web dev has a peak as well where you'll probably stop growing, and if you lose your job because the VC/web/mobile bubble pops then you're still screwed. At least .Net and C++ are used by lots of blue chip companies that will still be around.

</comment><comment><USER8> Where the jobs have been the last five years is not necessarily where the jobs will be in the next five. I'd focus on what interests you instead of the current hype around web & mobile.

Based on your post, I think going to a bootcamp would be a mistake. I think you're buying into the hype a bit too much. The career changing job comes months after the bootcamp finishes from the people I've talked too. The bootcamper job market is oversaturated and much more competitive for an applicant which results in a long job search.

If your bored at your current job, start looking for a new job where you can learn something that interest you instead of a bootcamp. You'll be earning money instead of giving time and money to learn entry level skills.</comment>


Where Oil Rigs Go to Die (2017) - <AUTHOR> https://www.theguardian.com/business/2017/may/02/where-oil-rigs-go-to-die <comment><USER2> The graveyard shot is incredible.

Surprised there's not more photos of ship-breaking itself, which lends itself to some dramatic shots. Examples: [https://www.theatlantic.com/photo/2014/11/the-ship- breakers/...](https://www.theatlantic.com/photo/2014/11/the-ship- breakers/100859/)

<comment><USER3> It really is. My first engineering job out of school was designing offshore drilling rigs (mostly service systems like ballast) and running shipyard projects. The economics of the industry have really gone through boom and bust cycles as the article says. I lucked out on timing. I got out just as a bust cycle was getting serious to go back to school as I had always planned to anyway.

<comment><USER4> They truly are magnificent structures. The popular image of the oil industry is one of roughnecks around ugly old drilling equipment next to a hole in the ground.

The size and scale of the engineering challenge, especially of deep water drilling, are incredible. I wish more people could be exposed to the marvels of engineering in the O&G industry.

<comment><USER3> I was interested to learn a while back that one of the rigs I worked on the design of, the Ocean Odyssey, was repurposed as an equatorial launch platform after it was damaged in a blowout. It was mothballed after Sea Launch ran into financial difficulties.

[https://en.wikipedia.org/wiki/Odyssey_(launch_platform)](https://en.wikipedia.org/wiki/Odyssey_\(launch_platform\))

I haven't kept up with the industry but, especially in retrospect, it was a great first job.

<comment><USER5> Several satellites, including the first X-ray telescope, Uhuru, was launched from a former oil platform off the coast of Kenya:

[https://en.wikipedia.org/wiki/Broglio_Space_Center](https://en.wikipedia.org/wiki/Broglio_Space_Center)

</comment></comment></comment></comment></comment><comment><USER6> Slightly off topic: Here is an amazing video of the heavy lift ship _Pioneering Spirit_ lifting an off-shore rig off its base.

[https://www.youtube.com/watch?v=6jEXmOQ22fQ](https://www.youtube.com/watch?v=6jEXmOQ22fQ)

The _Pioneering Spirit_ is the largest ship, in terms of gross tonnage, by a wide margin

[https://en.wikipedia.org/wiki/List_of_largest_ships_by_gross...](https://en.wikipedia.org/wiki/List_of_largest_ships_by_gross_tonnage)

edit: forgot video link....

<comment><USER7> Im assuming you are referring to this video?

[https://www.youtube.com/watch?v=6jEXmOQ22fQ](https://www.youtube.com/watch?v=6jEXmOQ22fQ)

<comment><USER6> Yes, thank-you.

</comment></comment></comment><comment><USER8> Great find. On a related note, one of the best pieces of journalism I've found in the past several years is about a similar incident: [https://www.nytimes.com/2015/01/04/magazine/the-wreck-of- the...](https://www.nytimes.com/2015/01/04/magazine/the-wreck-of-the- kulluk.html)

</comment><comment><USER9> What a strangely touching article. I'm not particularly interested in oil rigs, but that was a compelling read.

<comment><USER10> > I'm not particularly interested in oil rigs,

Are many people?

</comment></comment><comment><USER11> For any UK comedy fans, there's an episode of Only Fools and Horses that was made to promote careers in the oil industry. No laughter track and I guess they didn't want to pay for the theme tune but it's still a fun watch

[http://tellyspotting.kera.org/2013/11/08/the-lost-only- fools...](http://tellyspotting.kera.org/2013/11/08/the-lost-only-fools-and- horses-episode-licensed-to-drill/)

</comment><comment><USER12> Is it worth sinking them in areas where they can boost aquatic life ecosystems or attract scuba diving tourism. I have read many times on how old shipwrecks turn into a house where lot of aquatic life flourish.

<comment><USER13> Surely they're absolutely filthy and you don't want all the paints, oils, lubricants going into the water?

<comment><USER14> Some can and are decontaminated and sunk for creating reefs. I dont think old oil tankers are used for obvious reasons.

</comment></comment></comment><comment><USER15> Why not repurpose the rigs for residential use?

<comment><USER3> Huh? A drilling rig has a rather small living space for maybe 50 people or so in mostly bunk housing. Compared to, say, a cruise ship, they're tiny.

<comment><USER16> I wonder if it'd be possible to augment or replace the existing living spaces (and other spaces) on a rig. Maybe turn a rig into a hotel-on-the-water kind of thing.

<comment><USER17> They've tried floating hotels before, generally they aren't successful.

The problem with floating hotels is that they're all the disadvantages of cruise ships, mixed with the disadvantages of a hotel.

Like a cruise ship, you're still on a relatively small floating building, which limits the activities you can do, and you also have to deal with sea sickness and storms. Like a hotel you're stuck in one place, the main drawcard of cruise ships is that you're cruising between locations.

Now instead of a floating hotel, you could turn it into a little sovereign floating town for libertarians. People have proposed this and made efforts to manifest such a libertarian utopia, but have never actually succeeded.

<comment><USER18> aside from the significant engineering required, my guess is that most people who could afford to construct or live on such a structure don't actually find libertarianism that appealing.</comment></comment></comment></comment></comment>


Is This Justice? Charging an Eighth Grader with a Felony for "Hacking" - <AUTHOR> https://www.eff.org/deeplinks/2015/04/justice-charging-eight-grader-felony-hacking <comment><USER3> Lengthy discussion: [https://news.ycombinator.com/item?id=9362307](https://news.ycombinator.com/item?id=9362307)

Other submissions:

[https://news.ycombinator.com/item?id=9356172](https://news.ycombinator.com/item?id=9356172)

[https://news.ycombinator.com/item?id=9362307](https://news.ycombinator.com/item?id=9362307)

[https://news.ycombinator.com/item?id=9368317](https://news.ycombinator.com/item?id=9368317)

[https://news.ycombinator.com/item?id=9376847](https://news.ycombinator.com/item?id=9376847)

[https://news.ycombinator.com/item?id=9393700](https://news.ycombinator.com/item?id=9393700)

[https://news.ycombinator.com/item?id=9395514](https://news.ycombinator.com/item?id=9395514)

</comment><comment><USER4> "Who knows what this teenager might have done"

So you're going to charge teenagers with crimes based on "what they might have done" now? A bit minority report, don't ya think? This statement standing alone is a huge concern for civil liberties. Arresting someone and charging them for one crime based on your opinion of "what they might have done" seems remarkably heavy handed.

But who knows what this kid is like, perhaps he was a little hellion making this teacher's life a nightmare [was the teacher gay? homophobic? I don't know the back story here] and this was just the straw that broke the camels back? Eventually we all snap when pushed and kids know how to push your buttons better than anyone. Perhaps he needed be kept in check and have his boundaries enforced to reset his notion of what is and isn't acceptable conduct. But equally... a felony for a [hopefully harmless] prank that is common practice in I.T. environments around the world, that's a bit weak.

At least he's only a kid and it'll be sealed on his 18th birthday. However, it'll be attached to his school record and follow him around like a bad smell until he leaves academia. So I guess he'll learn his lesson... all be it a bitter consequence to what amounted to something largely harmless.

<comment><USER5> > "Who knows what this teenager might have done"

> So you're going to charge teenagers with crimes based on "what they might > have done" now? A bit minority report, don't ya think?

They are throwing the book at him for a crime that he has admitted to committed (unauthorized access of a computer system). This a crime regardless of "what he may have done." The fact that no one is stopping to say, "Let's rethink this guys," is an indictment the police / prosecutors involved in this case.

This is a bit like charging a child with Breaking & Entering because he snuck into his friend's house through a window to play a prank on him, and the cops "aren't sure what he really did while in the house."

Edit: Fixed formatting

<comment><USER6> Well, not quite; it is like charging a child with breaking & entering because snuck into his _teacher 's_ house through a window to play a prank.

Can you pause to examine why you think it's necessary to substitute "friend" for "teacher" in your analogy to make it work for you?

Presumably, "friend's house" is a place where you've been before (possibly even overnight), where all the household members know where you are and where you are generally welcome.

<comment><USER5> I chose "friend's house" because the analogy doesn't really account for the ease with which it is to "break and enter" into a computer system if you just watched someone type their password. Maybe you could say that he "broke into" a teacher's house through an open window?

I make this distinction because destruction of property could be an issue with a physical break-in (via the _act_ of breaking in).

<comment><USER6> Yes, entering a home through an open window or unlocked door counts as "burglary", a.k.a. "break and enter".

The offense is an abstraction that doesn't require physically damaging any security mechanism.

By your reasoning, picking a lock or guessing a combination couldn't be breaking in because you didn't literally break anything.

<comment><USER7> Actually the definition includes "with criminal intent". Without that, there's no crime.

<comment><USER6> That aspect seems to be state-dependent in the US, according to:

[http://en.wikipedia.org/wiki/Breaking_and_Entering#United_St...](http://en.wikipedia.org/wiki/Breaking_and_Entering#United_States)

In New York, the intent is not required. However, ironically with regard to this case, it is that way in Florida.

<comment><USER7> Hm. I followed that link, and didn't read anything about intent not being required. What did I miss?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> "Even though some might say this is just a teenage prank, who knows what this teenager might have done..."

Who knows what students in cooking class holding butcher knives might do?

Who knows what police might do when entering people's houses. Shoot dogs that bark. Who knows what the dog might do? [https://news.vice.com/article/san- diego-police-shoot-mans-se...](https://news.vice.com/article/san-diego-police- shoot-mans-service-dog-dead-after-responding-to-domestic-violence-call)

Who knows what police might do when chasing down a homeless person. Shoot them forty-six times. Who knows what an homeless might do? [http://www.independent.co.uk/news/world/americas/footage- sho...](http://www.independent.co.uk/news/world/americas/footage-shows- homeless-black-man-milton-hall-being-shot-at-46-times-by-police-in-the- us-9826453.html)

Who knows what police might do when they see your children pranking each other in Walmart with a fake gun? Shoot them. [http://www.msnbc.com/msnbc/cops- shoot-and-kill-man-holding-t...](http://www.msnbc.com/msnbc/cops-shoot-and- kill-man-holding-toy-gun-walmart)

<comment><USER9> I don't like what this Florida Police Officer is doing.

But focusing on a single poorly _spoken sentence_ is absurd. I understand that police sheriffs are politicians, so this is generally considered "fair game" in American Politics. But this is an obviously bad, off-the-cuff remark that Chris Nocco shouldn't have said.

But the amount of focus that has been given to this absurd statement is ridiculous. It is a demonstration of our short-attention span and love of "gotcha" catchphrases that are destroying American Politics.

Lets do this rationally. Lets start by looking for a _written_ official statement from this Officer before making fun of his views.

\</comment></comment><comment></comment><comment></comment><comment></comment><comment>---

Here's a better quote from this officer.

"I think, unfortunately, when the story's being told in other (publications), they're not talking about the fact that he committed this crime previously," Nocco said Monday. "We enforce the law. And if we don't enforce the law, nobody else will."

Knowing that this guy is a repeat offender changes the calculus significantly. I think everyone can get a free pass once. The 2nd pass, maybe the officer is just showing the kid that he really has the power to prosecute him (without necessarily going forward with the intent on actually doing so).

The kid's lawyer likely contacted the eff / press to make the officer back off a bit. In the end, the kid is going to get off with a slap on the wrist and a bit of disdain for the officers of this country.

<comment><USER4> See, that's fair enough. He'd done it before and deserves to receive some penalty for his actions to show him that there are consequences for your actions and you need to consider the consequences before you commit the crime. But there is a generally accepted (and somewhat sane) process in academia.

\- Warning from the teacher & perhaps a letter/call home to the parents

\- Sent to the principal & perhaps another letter/call home to the parents, warning of suspension

\- Suspension

\- Expulsion

\- Police (& perhaps juvenile detention based on the crime)

Kids are kids... Grade 8 is what? 13, 14 years old? I'm not saying that being a kid automatically gives you a walk, but kids make dumb decisions every day. Lord knows plenty of adults do too, but for kids that goes double. They don't have the smarts, foresight or experience to make good decisions yet, so they need to be taught. Hopefully the kid does get a slap on the wrist and hopefully he realizes that he got lucky and breathes a sigh of relief rather than taking the lesson that he can do what he wants and with the right lawyer he can get away with murder. Because who knows what he'll do if he learns a lesson like that... probably become the CEO of a bank or oil conglomerate or something.

<comment><USER9> The kid was _already_ suspended in October.

Which means the order that is going on right now is...

\- Warning from Teacher

\- Sent to the principal

\- 3-day Suspension <\--- Happened in October

\- Police + 10-day Suspension

\- Expulsion

Which frankly, doesn't sound that "unjust" to me at all.

<comment><USER10> Police scaring the kid sounds fine, but a felony? Using a well-known password in a place with terrible security to do a mostly harmless prank results in a felony? That isn't justice.

<comment><USER9> "He'll likely be granted pretrial intervention by a judge, sheriff's detective Anthony Bossone said."

They aren't planning to put the felony on his record. They're gonna drop it pre-trial.

</comment></comment></comment></comment></comment><comment><USER11> No this is not justice, this and every other zero tolerance policy removes discretion and reasonableness from justice. It's a way not to be held accountable for your actions - It's a variation of "just following orders"

<comment><USER12> This isn't following orders, it's much much worse. All the "zero tolerance" nonsense has been instituted because of a widespread perception of corruption - when there was discretion the popular kids used to get let off lightly, and the unpopular ones would have the book thrown at them. That doesn't look anything like justice or equitable, can't have that.

Nowadays, with zero-tolerance, do you really think the book is thrown at everyone? You'd think anything the "good kids" do is completely swept under the rug. The fact that the fellow who put up the dick pics on the teacher's computer was suspended last year for a few days confirms the theory.

</comment></comment><comment><USER13> The basic issue here is that computer crime laws are terminally broken.

What would be the punishment had the teenager placed a magazine on his teacher's desk?

This is an identical scenario, but with computers. The 'access' argument is bunk. He could have opened drawers on the desk, he could have photocopied everything in those drawers. But he did not.

The same problems crop up all over. Copyright infringement carrying harsher punishment than actual theft of a physical object, for example.

</comment><comment><USER14> The most amazing thing is that no one along the chain of escalation this must have passed (e.g. the teacher, the vice principal, the superintendent, the officer that arrived for the call, the sheriff, the prosecutor) - took a minute to stop and think:

 _" wait is this really the right way to go about handling this?"_

<comment><USER3> Rarely is that done - everyone in the chain thinks _" It's probably not serious, but I'd better pass it up to the next level just in case."_ No one is willing to take that responsibility for making the decision, so it gets escalated.

Some thing happened in the UK with the _" Twitter Joke Trial":_

[http://en.wikipedia.org/wiki/Twitter_Joke_Trial](http://en.wikipedia.org/wiki/Twitter_Joke_Trial)

</comment></comment><comment><USER15> "Ribbit."

At the start of my accounting class, we had to pass around a bootable floppy disk that had the software on it. The teacher would talk to us about the day, while we passed the disk, student to student.

"Ribbit."

Then, one day, the computers all started to make frog noises. Turns out, someone put a TSR (Terminate and Stay Resident) program on the disk, and we had all just run it on our computers.

"Ribbit ribbit!"

The frequency of the noises kept increasing, both as more computers came online, and as the program increased the rate.

"Ribbit ribbit ribbit!"

Today, would the kid who did it be thrown in jail?

I think we need a lot more "Kids will be kids" and a lot less "Tough on crime" with this stuff.

"Ribbit ribbit ribbit ribbit!"

</comment><comment><USER16> When I was in the 7th grade, I actually hacked a bunch of websites and never got caught. It's been long enough now for the statute of limitations to shield me from prosecution on this point, but I won't go into specifics.

I would like to caution people from implying that an eight grader is incapable of causing havoc on a computer system. The old WinXP at.exe privilege escalation vulnerability gave me SYSTEM access on every computer I visited at school. One of my friends in high school, I recently learned, hacked the domain controller and read the Principal's emails.

Schools are known for their terrible security. Mildly intelligent kids can and will outsmart the system.

In high school, one of my close friends went to a trade school where everything was locked down with a product called Deep Freeze which reset every computer after hours to a snapshot of the OS. The teacher was kind of laid back and said, "I don't care what you do, just don't break Deep Freeze." My friend broke Deep Freeze so he could change the desktop for one student he disliked to tubgirl every morning. Nothing ever happened to him. He was never even reported for disciplinary action.

Then he put a piece of scotch tape on the bottom of another student's mouse, as a prank, and got expelled for vandalism.

This case with the middle schooler reminds me of what happened to my friend: A wholly inappropriate response to basic juvenile mischief.

It also reminds me of what happened to me: I was forced to pay over $9000 in restitution to a security company that had been neglecting to do its job for years, because I forced them to do their job for once. They called it "damages".

This kid does not need to face a felony. Anyone with an ounce of human compassion can see that.

<comment><USER17> Breaking Deep Freeze was how I spent most of my time in computer classes in high school. I guess I should consider myself lucky that I'm now I'm a productive member of society instead of rotting in a prison.

<comment><USER16> So too is my friend. I think the majority of people who would have hacked the planet in their youth become productive members of society in absence of law enforcement intervention.

At least, based on the people I know. :)

</comment></comment></comment><comment><USER18> I've always thought that the biggest unfairness in US computer law is that you're judged for what you could have done and not what you did. I think it's largely because those who made these laws where told how dangerous computers are and they couldn't imagine, as a factor of their age, why anyone would do something like this out of curiosity. So you ended up with every computer system being protected and a derogation of freedom at a scale unimaginable in the physical world. The double standard of course becomes very apparent when there's no equal punishment for the keeper of the computer system if a third- party has their data compromised as a result of mismanagement.

</comment><comment><USER19> Obviously the prosecution of this kid is ridiculous.

That said, I don't get all the victim-blaming around hacking. One of the basic bits of consensus in our justice system is that victims don't have an obligation to make it difficult for criminals to perpetuate their crimes. Whether the school's security here was weak or strong is irrelevant.

</comment><comment><USER20> 1- accessing someone's computer is like accessing someone's home - checked 2- unauthorized access of a computer system is a crime - checked 3- the kid should be taught a lesson - <USER2>

But... do u have to destroy his future for it? A 14 years old kid should drag a fellony with him till he graduates from university, because he decided to prank his teacher? That if he's allowed access to a university with such a record.

I thought law and punishment's roles are to reform and teach. ( _slapping myself_... wake up!)

<comment><USER21> Until he graduates from university?

Universities often exclude felons (or at least, most felons) from admittance. The negotiating position of the applicant is one of appealing their standard policy of exclusion on special grounds, rather than competing with other entrants.

</comment></comment><comment> k-mcgrady This is absolutely crazy.

A common 'prank' in my high school was going around the computer labs changing all of the desktop background or renaming folders/changing their icons to mess with people. Immature: very. Criminal: obviously not.

I guess it's the password part that constitutes the hacking here but if the password was widely known and therefore he didn't 'brute force' it via guessing (it's unclear from the article) is it still hacking? I guess it depends how he came into 'possession' of the password. If someone gives you a key to their house and you use it I wouldn't classify it as breaking in, but if they key it left outside the door and you use it to enter without permission that would be.

Either way these are just technicalities and the fact that a school even got law enforcement involved in this is utterly ridiculous.

<comment><USER22> >Criminal: obviously not. //

vs.

>but if they [left a key] outside the door and you use it to enter without permission that would be [breaking in]. //

Why is trespass itself not harm in the first case but is harmful in the second? [Incidentally if you use a key you don't 'break in'].

As the law stands in UK I gather the first is a tort (unless you add in damage or intimidation or something else) and the second is a crime (under the Computer Misuse Act 1990).

They are similar. On discovering both there is a real cost involved, change password/lock and in the first case pay for the time needed to sanitise, revert any changes.

</comment></comment><comment><USER23> Most comments focus on whether that should be illegal, what the legal consequences should be, etc.

These deserve a big discussion, all right, but I think it should be a different discussion. Because law should not be a replacement for better/friendlier/flexible channels of conduct, rather than a last resort when we do not think we have an other way to protect ourselves. I don't see how this could have been the case with the teacher.

\- He could discipline the student in many different ways, using his own authority

\- He could have treated the prank indifferently, thus showing that it failed its purpose to impress him and provoke a reaction

\- He could silently take practical measures to protect the privacy of the data on the laptop, which, in the very end, was all that mattered

Getting Justice involved is a real ass move imo.

</comment><comment><USER24> I remember friends and I doing similar pranks while in high school ~15 years ago - it annoyed the computer administrators, but it was generally regarded as benign. We were considered some of the best behaved kids in the school district too (didn't get in trouble, went to class, did our schoolwork, etc.) - charging a kid a felony for this harmless act is ridiculous, there is no reason to punish the kid for something like this period.

</comment><comment><USER25> When I was in school, the network administrator framed me for "slowing down the Mac network" using "AOL punters and Visual Basic proggies", because I had a personal website that linked to said Windows AOL tools. He got me kicked out and had "hacking" put as the reason on my permanent record.

When I went to subsequent schools, they would hold me accountable for any computer problems or suspicious activity as I had been "guilty of hacking" at a prior school. My attempts to clean their systems of 0-day computer viruses and fix broken proxy settings on browsers got me banned from the school's libraries.

Teenagers _are not adults_ , and don't understand the monumentally irrational fears and corrupt politics that drive adults - especially in academia. They also have no way to defend themselves and are often victimized by adults, and often have no idea that adults can literally throw the book at them for no reason whatsoever (I certainly had no idea that kind of thing could/would happen).

Hopefully somebody steps up and forces the government to do the humane thing here and not fuck a poor kid's life over to gain political points and 'send a message'.

</comment><comment><USER26> Had this been the method of dealing with such pranks when I was in school, I would have a very long rap sheet. Generally my teachers were fine with it because they knew I had done it and they knew I could fix it. They often asked me to troubleshoot computer problems for them anyway.

The worst reaction I ever elicited was when walked into my history teacher's unlocked classroom during my study hall period and changed the DOS prompt on her floppy-boot-only PS/2 model 25 to read "Please command me, oh benevolent [teachername]!" rather than "A>".

Generally she was pretty even keeled about what I considered equivalent pranks that didn't involve a computer, such as writing a silly message on the whiteboard behind a drawn-down map or something. So I was very surprised when she totally freaked out and all the teachers stopped letting students screw around on their PCs during slow class periods. Oooops, no more _Scorched Earth_ during Calculus...

</comment><comment><USER27> Forgive my ignorance about American law but what does "charging" mean in the context of "justice" in America? Isn't charging just the act of acknowledging the complaint of one of the parties involved? Is justice even relevant here?

Are the police allowed to act on charges and arrest individuals? Or is this just a complaint?

<comment><USER28> Being charged with a crime is a formal accusation from the government, and you will be arrested. You may then post bail as set by a judge, if they allow it, and remain free for the duration of your trial. If you can't post bail, you stay in jail through the trial. If found guilty, you go to prison.

<comment><USER29> Based on the way you wrote this I get the understanding that the US system differentiates between jail and prison? In that case what's the difference?

<comment><USER21> There are a lot of individual circumstances, but generally:

Prison is where people who are convicted of felonies (crimes worthy of >1 year in custodial sentence) are sent. Jails are where people awaiting trial, or convicted of misdemeanors (crimes worthy of <1 year in custodial sentence) are sent.

</comment></comment></comment></comment><comment><USER30> So, the boy got into the teacher's computer. Hmm .... Time to send the cops after all of the NSA, right? Or, since the NSA has shown all the world that no computers are private, the boy didn't get into anything private and did hundreds of millions of times less than the NSA has been doing for a long time.

</comment><comment><USER31> I was a sophomore in 99. I was suspended for 3 days for "hacking" our keyboarding software. It was an old blue-screen'd DOS application. My friend and I figured out that F10 (or something) created a new folder. I made at least two, named "school grades" and "top porn stars" (Hey, I was a teenager). My friend did the same on his, but I think his was just "school grades" and "porn". They claimed that we were trying to alter our grades with those folders. We were A/B students, so that didn't really pan out.

Getting in trouble for it wasn't really a deterrent, but then again, I wasn't arrested. It probably would have stopped me from ever fiddling with a machine if I had been.

<comment><USER32> I was in high school some time after you. I guess the change had already taken place because when I figured out how to get into the school's internal file structure I decided the risk wasn't worth exploring. I already had to fight the school admin to take an AP class as an underclassman (it is shameful that this was something that had to be fought over).

</comment></comment><comment><USER33> Question - when I was 15, I did an arp poisoning attack on our schools network, redirecting all traffic through mine(borrowed) laptop. I've started my own SSL server and redirected all traffic to and from Ebay through it, decrypting it - I knew my IT teacher was on Ebay 99% of the time, so soon enough I got his password. Then I went to him and explained what I have done - he actually gave me a highest grade for the effort and was seriously impressed(also muttered to himself that he shouldn't have accepted that invalid SSL cert...).

What would have happened to me if I did this in US? Guantanamo?

</comment><comment><USER34> It's sad to see HN, one of the most educated communities online, fall for an obviously link-bait article. If what you read makes you wonder how a multitude of people could possibly behave in a moronic way, instead of grabbing your pitch fork, ask yourself if there could be another side to the story (which there seems to be, if you read a few decent comments in that thread).

As much as I love the EFF, they have changed their communication style a few months ago, to the point where I find them no better than spam. Sad. I hope they stop eventually and revert to being reliable and trustworthy again.

<comment><USER35> Both sides are spinning the story, but it does seem like the EFF is fighting the good fight here:

"The computer in question also had encrypted 2014 FCAT questions stored on it"

Of course, this is not relevant as the files were not tampered with (also mentioned in the article), however it trumps up the perceived seriousness of the so-called "cybercrime". It's link-bait from the Sherrif's department.

"Green had previously received a three-day suspension for accessing the system inappropriately."

More link bait as other students got in trouble as well. The students frequently used the same administrative account to screen-share with their friends. More alarming is that the school didn't do anything about this the first time around. Eg. move the encrypted files to a different account / network, or lock things down. But again, this had nothing to do with encrypted files.

"Green was released on Wednesday from Land O'Lakes Detention Center into the custody of his mother. He'll likely be granted pretrial intervention by a judge, sheriff's detective Anthony Bossone said."

So they don't have a case (changing a desktop background is not gonna fly as a cybercrime with a jury, no matter how many times you do it), or have decided that they've wasted enough taxpayer dollars trying to scare future "hackers" straight. It's ridiculous we're even talking about this - that it got this far.

The teens mother probably offers the most level heaved observation of the situation:

"The teen's mother, Eileen Foster, said she understands her son did something wrong, but doesn't think he needed to be arrested. Also, she said, it shouldn't have been so easy for students to access the system."

<comment><USER34> There is a good fight in that story somewhere, but my point is that you shouldn't rush to judgment when you are hearing one clearly-biased side. There was some great coverage on NPR recently of 'Publicly Shamed', very relevant: [http://www.npr.org/2015/03/31/396413638/publicly-shamed- who-...](http://www.npr.org/2015/03/31/396413638/publicly-shamed-who-needs- the-pillory-when-weve-got-twitter)

Back to the story. What I'd really like to hear from the mother is what she told her kid after he was suspended for 3 days. Anything along the lines of "don't do it again?". This story just sounds like one of those cases where you'd need to know all the players pretty well to understand what really happened. I can't tell the difference between a teenager who just won't listen and a teacher who can't take a joke and overreacts.

<comment><USER36> I really don't think we (the public) need to involve ourselves in her parenting decisions. I just can't understand what argument you're making.

</comment></comment></comment></comment><comment> wes-k Can't this student just text the prosecutors naked pictures of themselves and get them charged as sex offenders?

Honestly I say if you're going to go down for some stupid law, might as well abuse the stupid laws in your favor.

<comment><USER37> > Can't this student just text the prosecutors naked pictures of themselves > and get them charged as sex offenders?

No. Criminal charges aren't things that happen automatically based on external facts (even if the proposed action includes facts which in some cases might be parallel to those that have supported charges against the recipients), they are things that human beings -- specifically, prosecutors -- initiate.

Doing the suggested act might result in criminal charges, but almost certainly those would be additional charges for the student, not charges against the prosecutors.

> Honestly I say if you're going to go down for some stupid law, might as well > abuse the stupid laws in your favor.

The nature of criminal law is that there are a narrow category of people whose active participation is required for any use/abuse of it, stupid or not.

</comment></comment><comment><USER38> This strikes me more as extra judicial punishment. The stupid statements from the Sheriff are because the people involved got caught at it. The charges will undoubtedly be thrown out once the punishment is complete.

</comment><comment><USER39> " _Additionally, it has been reported that the school had terrible operational security where weak passwords, teachers entering passwords in front of students, and students regularly using teacher credentials, was prevalent._ "

Irrelevant. The only important question here is whether the consequences of a felony match the crime committed. On the face of it, they do not, but there is not enough information presented to evaluate that. (Would the EFF's answer change if the student were part of a group committing long-term sexual harassment? (Maybe not. I dunno.))

</comment><comment><USER13> The basic issue here is that computer crime laws are terminally broken.

What would be the punishment had the teenager placed a magazine on his teacher's desk?

This is an identical scenario, but with computers. The 'access' argument is bunk. He could have opened drawers on the desk, he could have photocopied everything in those drawers. But he did not.

The same problems crop up all over. Copyright infringement carrying harsher punishment than actual theft of a physical object, for example.

</comment><comment><USER40> This case reminds me of a similar case that took place two years ago in Florida in the county right next to where this incident took place. We have removed "common sense" from society and replaced it with zero tolerance laws.

[http://www.msnbc.com/all-in/florida-teen-faces-felony- charge...](http://www.msnbc.com/all-in/florida-teen-faces-felony-charges- science)

</comment><comment><USER26> Another way to look at this is as a reveal on just how shoddy IT security is in our schools. I'm guessing that well-known password would have also gotten the kid halfway or more to changing grades in the Student Information System. This is an opportunity to improve policy and procedures to protect actually sensitive data. They ought to be thanking the kid.

</comment><comment><USER41> They need to have a computer forensics investigator check the teacher's computer. If there really is no evidence of tampering beyond prank level then either that's all the student did or they knew how to cover their tracks; in either case, no evidence should translate to leniency in the charge IMHO.

</comment><comment><USER42> We have trespass laws, but somehow when you trespass on someone's computer you can get thrown in prison for decades. This attitude towards computer crime vs any other crime will not change unless we the tech community do something about.

Now back to my upvoting...

<comment><USER22> >unless we the tech community do something about //

Do you think there's anything that can be done? You can petition your representative (I'm in the UK, so that's an MP) but the chance of computer crime ever being an issue that's relevant to them are practically non- existent. It's not an issue that will win/lose votes significantly.

This seems to be a problem with representative democracy that only the major areas of focus can ever really get representation - do you vote for the party that's moving in the right direction on health and gets computer crime wrong?

<comment><USER43> That's a problem caused by voting on people, instead of voting on issues.

<comment><USER22> OK, but that's how representative democracy works isn't it. How do we overhaul that, main parties aren't going to move towards an issue based democratic process because that's ceding power to the _demos_.

<comment><USER37> > OK, but that's how representative democracy works isn't it.

No, representative democracy is largely issue-based and less personality-based in many regimes, particularly parliamentary systems with electoral systems which produce roughly proportional results while supporting multiple ( significantly more than 2) viable parties.

The US combination of a presidential (or, for states, gubernatorial, which amounts to the same thing) rather than parliamentary system and an electoral system which has poor proportionality and strongly favors duopoly (the latter more significantly than the former, though both are factors) creates a weak party system with weak issue focus on elections based on personalities and identity politics more than issues at both state and federal levels.

Because of the federal nature of the US system and the distribution of much power over even federal elections to the individual states, and the fact that many states feature citizen initiative processes, this could be radically changed for state government in many states without direct support from existing elected politicians, and could also be changed to a limited extent for federal elections without elected politician involvement.

<comment><USER22> >representative democracy is largely issue-based and less personality-based in many regimes //

Could you give examples please?

>many states feature citizen initiative processes //

I'm not from the USA, what do you mean by this? There is some system to get laws passed or governmental processes altered that bypasses representatives? If that's the case then doesn't it prove my point, that the part of the system that's a representative democracy doesn't allow the populous to address issues atomically.

For me in the UK I've a choice of maybe 8 parties. But ultimately it comes down to one or two issues - do you cut the NHS [health], do you keep Trident nuclear missiles, do you address income gaps in favour of the poor, ... suppose you say yes/yes/no and only the We-Are-Evil party is doing that then if they get in to power you're largely stuck with their predetermined answers for all other issues until the next general election (5 years). Indeed local elections become proxies in some cases for addressing issues, but the party whose candidate is elected need not vote with that candidate, nor uphold a "promise" they give prior to that election.

As I see it the electorate is left to sit on their hands most of the time. Then at election times we get the hard sell with psychological manipulation, character assassination, personality cult, anything to avoid presenting genuine working solutions to issues the electorate wants to address.

</comment></comment></comment></comment></comment></comment><comment><USER44> Even though the kid probably won't get a felony it is absurd that the government can even use that bargaining chip in this scenario to gain leverage. This is the same kind of garbage they used against Swartz.

</comment><comment><USER45> It sounds more like they're doubling down trying to make this "hacker" seem more malicious than he was to draw attention away from the fact that their security measures are pretty atrocious.

</comment><comment><USER46> This is one of the reasons I'm considering private school for my kid: parents are customers and (hopefully) get treated better than this.

</comment><comment><USER47> A teenager picks up a gun. Could they be arrested for assault because "who knows what this teenager might have done"?

</comment><comment><USER48> This makes me fear that we are going to make a generation of people too afraid to screw around on computers.

</comment><comment><USER30> The school and the cops should just have refused to make what the boy did a police or legal matter.

<comment><USER30> Let's have a US information technology venture partner with their "deep domain knowledge" take up my bet on finding the typo in my paper!

Come on VCs! Good information technology entrepreneurs are eager for VCs who can actually understand the work and play a constructive role in the future of the company!

So, "deep domain knowledge" VCs: Show us what you've got! Let's see your "deep" abilities in information technology!

</comment></comment><comment><USER49> They be like : "Let's get'em young. Don't want no trouble in future".

</comment><comment><USER50> Welcome to the USA.

"The test of the morality of a society is what it does for its children."

~Dietrich Bonhoeffer

</comment><comment><USER51> Lunatics! These people need help.

</comment><comment><USER52> The usa is realizing the sad pov that people are robots.

It is becoming the first, past-human society. There are "entities". Powerful entities. And some other things, we don't care about.

It is the first to realize in a social context, the halting problem. That imperfect rules imposed on an extremely huge social canvas, are not Turing complete. The limits of discreet rules. Which in a social canvas, has also to include in the description, "harsh", "absolute", "cold blooded", etc.

In societies where you still have humans running the show, you don't kill -9 kids.

Yes, "I" (for some values of "I"), am the most important thing in the world ever, "I" am the law, and "I" am a powerful entity, but show some "dignity", "humanity", "judgment", and "honesty" about what we have been in the past ourselves.

</comment><comment><USER53> Leave it to Florida...

<comment><USER54> National organisation/institution?

</comment></comment><comment><USER55> Good to see Florida is determined to remain a national joke.

<comment><USER56> Yes because no other state in the US has ever had police or sheriffs do crazy shit.

It's just Florida..and next time it'll just be Colorado and the time after that just Montana.

</comment></comment><comment><USER57> Isn't this akin to charging a teen with murder that entered a teachers house and swapped out framed family photographs with men kissing using a key known to be hidden under a planter?

It's probably not even that ridiculous since the computer was, I assume, school property and not personal property.</comment>


Startupmatcher: automated co-founder finding - <AUTHOR> http://startupmatcher.com/

<comment><USER2> I like that they separate "recognizing good design" from "creating good design". I'm good at the former but mediocre at the latter -- it's like an NP- complete problem to me.

</comment><comment><USER3> That's pretty sexy. I've been thinking about building something like this for a while now.

Any plans for a Facebook app?

<comment><AUTHOR> I can give you access to hook into startupmatcher for automated profile creation if you want to write the facebook part. :)

</comment></comment><comment><USER4> too many questions to answer with no indications of what is required, especially when all I want to do is see if anyone from Pittsburgh is around.

<comment><AUTHOR> _bzzt_ You fail the reading comprehension portion of the exam. I thought having "all other fields are optional" in bold would get the point across.

Browsing by location should be showing up in a few days.

<comment><USER4> ah, yes, I do it see it there in bold.

perhaps you can make it bolder? :)

</comment></comment></comment><comment><USER5> It needs capabilites to browse startups and persons.</comment>


Theia Cloud and Desktop IDE - <AUTHOR> https://www.theia-ide.org/ <comment><USER2> It would be nice if the demo didn't need me to login first.</comment>


Science reveals the truth about drinking whisky to combat a cold - <AUTHOR> https://mic.com/articles/163680/science-reveals-the-truth-about-drinking-whiskey-to-fight-a-cold <comment><USER2> Wow, this website somehow manages to break my middle button scroll which means I'm stuck on the title and pre-content image.

One of the worst possible UX, this website deserves a good rank on [http://www.webpagesthatsuck.com/](http://www.webpagesthatsuck.com/)</comment>


Applying Netflix DevOps Patterns to Windows - <AUTHOR> https://medium.com/netflix-techblog/applying-netflix-devops-patterns-to-windows-2a57f2dbbf79 <comment><USER2> It's always interesting reading about the DevOps Patterns that the FAANG companies use. Not sure how well they fare at the scale of companies that I am at though.</comment>


It is called Testifying - <AUTHOR> http://micheleincalifornia.blogspot.com/2016/10/it-is-called-testifying.html <comment><USER2> The author's initial experience was on a gifted homeschool board. The later, more problematic experiences were, if I understood correctly, about blog posts on the wider internet.

I wonder if the difference is simply the audience? The gifted homeschool blog was an evidence-driven place. The blog readers on the wider internet? Not so much. When you say something that contradicts their assumptions, to them you're not supplying data, you're in a power struggle with them, and they will fight back. Reasonableness of the response? What's that? We're in a war here (or so they think/feel/act).</comment>


In praise of the extremely ugly and highly functional corporate website - <AUTHOR> http://qz.com/26681/in-praise-of-the-extremely-ugly-and-highly-functional-corporate-website/

<comment><USER2> Please excuse the meta but I see articles from quartz and, while I won't comment on the content, their UX is awful for me. Am I alone here? Articles will often not load properly (this one loaded to an article about the BBC), and stuff moves that shouldn't be moving. I feel like qz is built to piss me off. Running Chrome, if that matters.

<comment><USER3> Ironic considering the content of the article is in praise of simply functional design.</comment></comment>


Android App built with R Shiny - <AUTHOR> https://play.google.com/store/apps/details?id=com.ericrayanderson.housingindexprices&hl=en <comment><AUTHOR> This is an Android app that uses the Webview function to serve an R Shiny app. The shiny app is hosted on shinyapps.io.</comment>


Django SQL Sampler becomes Django Sampler (with Mongo support) - <AUTHOR> http://www.colinhowe.co.uk/2011/sep/21/django-sampler/

<comment><USER2> Sorry for the off-topic question Colin, but was your ICQ nickname back in the 90's "Mort"?

<comment><AUTHOR> It was indeed... and after a short bit of stalking... hello!

<comment><USER2> Awesome to find you through here man! Must be well over a decade ago that we messed around with Quake mods.

Your name rang a bell the second I saw that URL.

</comment></comment></comment><comment><USER3> Kudos. We use this at work now and i was just lamenting that I need something like this for pysolr. (It may already otherwise exist so if someone knows of something, I'm all ears)

Very helpful plugin.

<comment><AUTHOR> pysolr is on the wishlist... we use Solr at work so it shouldn't be too long a wait :)

</comment></comment><comment><USER4> This looks excellent. Thanks for sharing. I'll check it out.</comment>


Show HN: CSSFX – Click-to-copy CSS effects - <AUTHOR> https://cssfx.dev/ <comment><USER2> Took me some time to figure out that I should click slightly outside of the buttons to get the code (highlighting is barely visible on my MBP screen).

<comment><USER3> If you hadn't posted this comment I wouldn't have realized that even existed.

But to OP, thanks for making this. As someone who hates writing complicated CSS but loves good design, this is a great resource. I'm sure there will be haters as with most tools, but this will be useful for me.

<comment><USER4> I accidentally clicked and noticed it. Must agree this is pretty amazing, too.

</comment></comment></comment><comment><USER5> As a UX person, I see good and bad when I see these sorts of websites.

The good I see is that the markup is absolutely minimal, although I'm disappointed that the developer didn't give a unique name to the css in the examples. I see so many developers complain about CSS but time and time again, I see that the problem isn't that CSS is some terrible archaic language, it's that developers create messy markup that forces CSS hacks to correct them. Nevertheless, this website does a great job in not exactly showing the 'What' but the 'How' which leads to my next point.

The bad I see is that unless these effects are edited to match a more complete brand style guide, they just look like gimmicks and will do little to 'delight' any user.

<comment><USER6> I especially dislike most of these because they don't actually feel very responsive. The animations are so slow that quickly hovering something looks jarring and waiting for the animation just feels wrong.

<comment><USER7> I don't mind that. The slower transitions help showcase exactly what the animations are, and anyone should be able to change the css transition from 0.25s to whatever else they'd like it to be.

</comment></comment></comment><comment><USER8> Heads up, a number of these effects don't appear to work correctly in Safari. For instance, the first, second, fourth, and fifth in the top row have a distracting flash in the middle of the animation.

<comment><USER9> I'm starting to get the feeling that Safari is going to be left behind and treated like ie6/8 in the near future.

<comment><USER10> That is already happening.

I know a number of people including myself who pretty much ignore Safari for small projects because they don't have iDevices to test on and Safari doesn't run anywhere else. In that instance you just stick to the standards and either hope Safari will cope or don't care if it doesn't.

Even on larger and/or professional projects I see it given second class support: people make sure their project works on Safari, so no show stopper or nasty UX bugs, but display glitches and non-major performance issues that are Safari specific get very low priority, if they are addressed at all.

Currently the differences seen are far less stark than those seen between IE6/8 and other browsers so this is a relatively minor issue, but it might not remain so.

In projects aimed for a wide audience though and for which mobile is a key platform, Safari support is forced much as old-IE support has been forced upon those of us writing software for large institutions who are slow to update, because nothing else runs on iOS. iDevice users can be pretty vocal and not quick to blame their own devices, and even ignoring the noise they can generate they tend to be people with disposable income so if your project/product is commercial you probably can't go too far down the road of ignoring Safari.

<comment><USER11> That's a terrible excuse since 1) there are plenty of remote/virtualisation tools that let you easily test any browser or platform 2) same logic applies to mobile 3) iPhone has up to 80% share in many locations, Macs up to 25% share in some demographics

<comment><USER12> It may not be fair but it's true. Testing for Safari is such a hassle in my Windows and Android dominated world.

<comment><USER13> That's a good argument for always supporting multiple platforms if you're a browser developer.

In related news, the new Edge will be released for macOS. I think Apple should follow suit with Safari on Windows again (shouldn't be too much work, since they already have the build and toolchain from a while back).

<comment><USER8> IIRC, Safari on Windows is a decade old or more. I'd bet mainline Safari has changed a lot in that time. Would probably be a significant amount of work.

And, uh, Apple's programs for Windows have a history of being _really_ bad. Possibly done intentionally, but even so...

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> Those inputs and loaders are great! Nice nuxt app w/ single file vue components to boot - well organized and clear[0].

The same author made a warm dark VS Code theme[1].

[0] [https://github.com/jolaleye/cssfx](https://github.com/jolaleye/cssfx) [1] [https://horizontheme.com/](https://horizontheme.com/)

</comment><comment><USER15> Something similar that could be useful for you guys: [https://daneden.github.io/animate.css/](https://daneden.github.io/animate.css/)

<comment><USER16> I don't understand why on Earth would someone include 56kb of CSS just for bouncing text and other annoying animations. In which use-case does this bring anything to the user?

<comment><USER15> You don't need to add the whole CSS, but instead just use the specific animations that you need.

A lot of products are succesful because of the way they're presented, rather than what they do, so animations like these could break it or make it for some.

</comment></comment></comment><comment><AUTHOR> Thank you for all the feedback! The biggest issues I've heard so far are in regards to clicking the effects and contrast. First, I've updated the hover, button, and modal colors to help at least a little with the contrast issue. This will still need some continued tuning. Next, I've fixed the clicking issue. Clicking on the effects should now properly open the inspection modal (except for inputs). This was an admittedly lazy design :/ Thanks again for all the feedback!

</comment><comment><USER17> In case it hasn't been said yet - the color scheme for the page needs work. On my MBP it looks/feels like "dark on dark"; that is, the buttons are a dark blue on a darker blue background - at least, that's what I perceive.

So certain effects are very subtle (in my case, I had to look at the "pulse" effect carefully to see it).

Maybe have a "light vs dark" setting? Or multiple color combos to try out?

</comment><comment><USER18> Honest question: do they effects do anything in terms of UI/UX principles and helping users for signaling state, evoking an action, etc?

As a non-designer, I find this to be "Decoration" more so than a utilitarian tool.

<comment><USER19> Sometimes. Mostly they create a feel and are more of an optimization tool.

However, a more complex set of animations do provide quite a lot of improved usability because they can tie things together that would otherwise be separate steps.

<comment><USER18> I can see why the "loader" animations inform the user that "hey, we are working on it please be patient and your browser isn't locked up!"

</comment></comment></comment><comment><USER20> Some of the effects are nice, but I couldn't actually tell where to click both for the reasons other people on here have said, and because I can't tell where the buttons are because they are almost the same color as the background. I don't think my vision is particularly bad, but there's just not enough contrast for me to see the buttons or backgrounds even on a nice monitor that reproduces color well.

Thanks for the nice resource, but please up the contrast.

</comment><comment><USER11> Mobile issues:

\- "shine" has a visible slanted block travelling across

\- impossible to scroll the modal showing the code snippets

\- no idea how I even opened that as there is nothing clickable?

<comment><USER21> I think your "issue" with the Shine animation is just what the Shine animation is supposed to look like.

</comment></comment><comment><USER22> As a UX person I really don't get why people try so hard to ruin a good experience by adding animations. This stuff is great for ego building but terrible in terms of providing any value to a user. Other than a short burst of dopamine you might get from that "oh neat!" feeling, I just don't see the point.

<comment><USER23> I think it's meant to be a subtle addition to overall feel when user lands on the page. I've not seen this happen in SaaS products, however, most product marketing/landing pages have a certain "uniqueness" to create a brand/product perception by employing such effects. One of the examples I can think of is Stripe, all the mix of graphics and animations on their product landing pages adds a bit to the overall feel. One other community platform that stands out from design point of view is IndieHackers. Ofcourse, HN has its own charm.

</comment></comment><comment><USER24> Focus on easy of use, however the author did not implement a :focus or :active state.

Not trying to be rude, but quite literally a default unstyled button has better easy of use than these stylized buttons.

</comment><comment><USER25> Just a UX point - I had to think twice on how to "copy" the CSS. on my screen the background highlighting that exists outside the button is barely noticeable.

Good work otherwise!

</comment><comment><USER26> Loved the effects. As a developer, I'm curious as to hear your motivations behind paying out-of-pocket and maintaining a specific domain for it?

<comment><USER27> Considering the effort involved in building all this, the $12 annual cost for the domain name is probably insignificant. And static hosting is free.

</comment></comment><comment><USER28> Related: [https://ianlunn.github.io/Hover/](https://ianlunn.github.io/Hover/)

<comment><USER29> I think that dev needs to revisit his licensing. He's used an MIT license and then added some exclusions which sound a lot more like GPL.

<comment><USER28> Yes, see [https://github.com/IanLunn/Hover/issues/123](https://github.com/IanLunn/Hover/issues/123).

Last pure MIT version: [https://github.com/IanLunn/Hover/commit/7b2597e011c3495511f9...](https://github.com/IanLunn/Hover/commit/7b2597e011c3495511f93cbca4e148308e0df1c7)

</comment></comment></comment><comment><USER30> When I click on "Bubble" in mobile Safari I don't see anything. Should I be looking somewhere else for the effect?

<comment><USER8> It's a hover animation, so it not really intended for mobile. (Mind, I _do_ see it on my iPhone when I tap the button, so not sure why it doesn't appear for you.)

</comment></comment><comment><USER31> As someone who's rather terrible at CSS I absolutely love this! Please make more :)

</comment><comment><USER15> This is really good, I hope you add more. Will use for use.

<comment><USER18> Please add something useful to your comments. Just saying "This is great" is not adding anything to the discussion and doing a disservice to the whole HN community.

<comment><USER15> I get your point on not adding anything to the discussion, but I disagree on doing a disservice to HN.

Sometimes you like a post/product/comment/:anything and just want to give a pat on the back to the creator in a different way than giving a "like" (an upvote in this case), without going too deep on the why. This can work as an input for the author to keep contributing in the community.

</comment></comment></comment><comment><USER32> What's the color scheme used for displaying the code snippet? Is it borrowed from an official theme (Sublime maybe?) -- would love to know.

<comment><USER33> monokai

</comment></comment><comment><USER34> First "Outline" is just superb. Unique, interesting and _simple_ at the same time.

</comment><comment><USER35> Took me a while to figure out that these CSS effects are not used to copy the content of the buttons.

Shame on me.

<comment><USER36> That was my thought. "Beautifully simple click-to-copy CSS effects " is a terribly misleading title for this. These are hover effects that you can click-to-copy the css-source (if you can find it. Note: click outside of the button in the almost zero contrasted background area).

</comment></comment><comment><USER37> I am on mobile, the effect is behind the code popup I guess so it is not visible

</comment><comment><USER38> Where was this last weekend when I was doing some simple CSS animation for a personal project?

<comment><USER39> here's more, if it helps: [https://github.com/sw-yx/spark- joy/](https://github.com/sw-yx/spark-joy/)

</comment></comment><comment><USER40> Yes very beautiful. Thank you for sharing.

</comment><comment><USER41> This is very cool!</comment>