Ask HN: Is it illegal to use another site mp4 link in my app? - <AUTHOR> Hi,<p>I know that YouTube explicitly forbid the re-use of the video link. However, I am wondering if this is a general rule. For instance, I can get the link of a video on the ABC site (a public video). They offer HTML embed code but I would rather use the MP4 link for my app does not use a webview container. So can they contact Apple and ask my app to be retired from the store? <comment><USER2> You need to make sure you know the licensing of all of the content in an App that you don't produce yourself. Just because something is "a public video" doesn't mean you can use it. Putting it in an App will likely count as copyright infringement, and you are liable for damages. They could ask Apple to remove your App, and the could also ask for $10 for each time someone downloaded the app that included their content.

In the US, the author (or artist) owns the copyright to all content they create unless they specifically state otherwise. Even most "free" content on the web has a clause that you must credit the source, so you can be liable for infringement of creative commons content that would otherwise be ok to use without payment.

An App, even a free one, would probably be considered commercial use, so the content available to you is smaller, and the penalties for use are larger. You should be careful.

I am not a lawyer, and you probably don't need to talk to one every time you need to go looking for content for an App, but you should be sure that all of the resources you use are licensed correctly.

</comment><comment><USER3> This would be a question for a copyright lawyer.

My unenlightened guess would be that you would be breaking the terms of service of the website, and if you argued that you "never agreed" to the terms of service, then you didn't have a license to use the media anyway, so you would be infringing copyright.</comment>


Why public WiFi is dangerous - <AUTHOR> https://medium.com/matter/heres-why-public-wifi-is-a-public-health-hazard-dd5b8dcb55e6 <comment><USER2> "We do the same for Facebook: Slotboom is able to intercept the login name and password I entered with relative ease."

Is Facebook not using encryption for login? That would surprise me. Or is the author either blatantly lying or intentionally being deceptive (ie, he clicked passed an invalid certificate warning or similar).

<comment><USER3> If you type in facebook.com, your browser will use HTTP by default. The login page will redirect you to HTTPS, but it's too late, you're MITM'd. The attacker makes the HTTPS connection instead, and serves the page to you over HTTP. You put your username and password in and send it back to the attacker in plain text. The attacker sends the data to Facebook via HTTPS, decrypts the response, and sends it to you via HTTP. It's called sslstrip. [http://www.idcloak.com/learning-center/faceniff-SSL-Strip- fa...](http://www.idcloak.com/learning-center/faceniff-SSL-Strip-facebook-and- twitter-account-hacked-easily/a560.html)

<comment><USER4> Don't browsers typically verify the identity of a HTTPS page and warn you if something is not right?

<comment><USER3> Right, but in this case your browser never sees the page over HTTPS. The attacker makes the secure connection, and feeds you data over an insecure connection that they can see.

      You <-(HTTP)-> Attacker <-(HTTPS)-> Facbook

</comment></comment></comment></comment><comment><USER5> Is this the device?

[https://wifipineapple.com](https://wifipineapple.com)</comment>


TraffickCam – stop sex trafficking with image recognition - <AUTHOR> https://traffickcam.com <comment><USER2>
        TraffickCam enables you to help combat sex trafficking by uploading photos of the hotel rooms you stay in when you travel.

        Traffickers regularly post photographs of their victims posed in hotel rooms for online advertisements. These photographs are evidence that can be used to find and prosecute the perpetrators of these crimes. In order to use these photos, however, investigators must be able to determine where the photos were taken.

        The purpose of TraffickCam is to create a database of hotel room images that an investigator can efficiently search, in order to find other images that were taken in the same location as an image that is part of an investigation.

        TraffickCam was created in 2015 by the Exchange Initiative. The Exchange Initiative is committed to combating commercial sexual exploitation of children (CSEC). Their mission is to provide resources, information and networking solutions to combat sex trafficking in the United States.

        The Exchange Initiative was created by Nix Conference & Meeting Management to empower individuals and organizations with real resources to help end sex trafficking. Nix Conference & Meeting Management is one of just 13 U.S. companies and 43 worldwide honored as a 2014 Top Member by the internationally recognized Tourism Child-Protection Code of Conduct (TheCode.org) for their exceptional work to integrate child protection practices into their business.

figured it would be good to link exactly how this system works and the purpose since I was a little confused when I got to the home page

</comment><comment><USER3> How in the world could image recognition tell apart the zillion hotel rooms that look identical? And what good does it do to know the room? It's not like the trafficker hangs out in a single hotel room.

<comment><USER4> Small differences such as placement of pictures on walls can be enough to tell rooms apart. As for what good? It can help linking up to other evidence such as hotel security cameras. It's (I assume) not useful to ID the room, but is useful to ID the hotel so that future surveillance can be planned. I am sad to be reminded that I once read a notice in my hotel room in Manila which asked me to verify the age of my guests and note that the age of sexual consent there is 18.

<comment><USER5> If you can get a reasonable timeframe for the photo (even a month or more) and you know specifically which room it should be trivial to get a list of occupants of that room during the time frame. Combing through tens of people should be manageable, and it should be less.

</comment></comment></comment><comment><USER6> Summary: Crowdsourced pictures of interiors of hotel rooms, geolocated. When traffickers post pictures from hotels, similar interiors can be detected and reverse-geolocated to narrow down investigations.</comment>


Crowdsourcing Bruteforcing: Help me win the EngineYard challenge - <AUTHOR> http://rustyengines.silentmac.com/jsengine.php <comment><USER2> Let's keep some perspective here folks. The idea is cool and all, but as discussed in the other thread, SHA-1 throughput on GPUs is between 200 million and 600 million per second, depending on the GPU ([http://forums.nvidia.com/index.php?s=&showtopic=102349&#...). On the other hand, the maximum throughput that people are getting with JS is about 3000/second. Which is a hundred thousand times slower.
I think it is safe to conclude that browser-based crowdsourcing is not a compelling approach to numerical computation.

<comment><USER3> Yeah, AFAICT the leader right now is <http://twitter.com/seibert> with a hamming distance of 31 ([http://forums.nvidia.com/index.php?s=87acc31e73d939b72dffbf7...](http://forums.nvidia.com/index.php?s=87acc31e73d939b72dffbf79f60584d1&showtopic=102349&st=120)), and he says he's pushing 800M/sec across 4 GPUs (<http://twitter.com/seibert/status/2748691432>).

For comparison, this guy's distributed JS implementation just reached 1B a few hours ago: <http://twitter.com/wondersquirrel/status/2750527789>

If Engine Yard was trying to promote their cloud services with this contest it's rather ironic it appears it will probably be won be a few desktop computers with high end GPUs, which cloud hosts usually don't even have.

<comment><USER4> Even on my lowly 8800GT with quad-core I'm hitting 83+ megahashes per second -- my lowest distance is currently 37.

CUDA is pretty neat :)

</comment></comment></comment><comment><USER5> This idea is a really well thought and implemented. This may be a new way of cloud sourcing. Have you considered making a facebook app? It would definitely attract many more people than this. Of course you shou ld offer some carrots for users that do not have any idea what's going on.

<comment><USER6> Agreed. running it on my computer with the slider set to max. Hope you win!

<comment><USER7> Ditto. Got 10 tabs in Chrome and 10 tabs in Safari all running at 1ms. Using ~60% CPU. I'll let it run for the next 4-5hrs until I go to work.

Good luck.

</comment></comment></comment><comment><USER8> I hope you aren't disappointed when you a see a new update on your AJAX postback page that looks like a new winning string, when you see it is simply a note from me. :)

(I also generated a few hundred thousand hashes for you)

<comment><USER8> uhh.. sorry if I broke it. It now says the smallest hamming distance found is zero, so either you had a _major_ breakthrough or something went wrong.

Edit: it's back up to 43, a nice improvement from 48 from a few minutes ago.

</comment></comment><comment><USER9> To get more people excited, might be a good idea to say how many cycles each browser has contributed - make it a fight of Chrome vs Firefox vs Safari ;)

<comment><USER10> He can't.

As far as I can tell, the browsers only contact him if they find a string with a shorter hamming distance, otherwise it's entirely offline, including picking random words.

</comment></comment><comment><USER11> Haha, nice work guys -- great minds. We made: <http://shacontest.doloreslabs.com> \- same approach but server side.

I upvoted you :).

</comment><comment><USER12> Did you just get a hamming distance of 0, or is something broken?

<comment><AUTHOR> Nah, some script kiddie messin with me. Fixed and patching the hole now...

<comment><USER13> Well, 43 isn't that bad :-)

<comment><AUTHOR> Haha, he left a message in my database.

"Oh but for your trouble I generated a few hundred thousand hashes for you. --Phil Freo"

Thanks Phil :-) Your message's hash had a hamming distance of 73

</comment></comment></comment></comment><comment><USER14> Please increase delta range down to 1ms, Chrome barely uses CPU power at 10ms. 6 tabs @10ms uses 25% of Core2Duo.

<comment><USER14> Also decrease rate at which HTML stats are updated - DOM update slows stuff down, it should update stats only once a second or so.

<comment><AUTHOR> Updated to 1ms! I'll work on the HTML stat updates

Edit: fixed and fixed

<comment><USER14> You might also consider removing UTF8Encoding from SHA1 implementation, I might be wrong, but I think contest states no encoding should be used - i.e. ASCII only. If that's a care, that's a useless O(N) operation.

<comment><USER15> UTF8(ASCII) == ASCII

Unless you're using characters > 255, UTF-8 is identical to ASCII.

<comment><USER16> Actually it's UTF8(ASCII) == ASCII iff ASCII < 128, since the MSB signifies a multi-byte character.

<http://en.wikipedia.org/wiki/UTF-8>

Hm, on second thought UTF8(ASCII) is -always- == ASCII, since ASCII is only defined for 0-127, unless you count the extended variants :P

<http://en.wikipedia.org/wiki/ASCII>

</comment></comment></comment></comment></comment></comment><comment><USER17> Have you compared running your code in JS on an ad-hoc cluster like this vs running it in optimized C on a local machine ?

<comment><USER18> It's going to be a lot slower, particularly with the goal of not slowing down a person's browser. By default, at least for me, their page is doing 1 hash per 200ms, or 5/second.

On the other hand, a quick Haskell implementation using Data.Digest.Pure.SHA is doing about 6,000 hashes per second (might have been 8000, I forget now) per core on an Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz

So you're looking at 1000 people to equal one core of a decent desktop. It's certainly an interesting approach, and has a lot of potential. I'm just not sure the marketing is there with the "help us win" motivation.

<comment><USER19> This JavaScript version: <http://news.ycombinator.com/item?id=715014> (which doesn't do any throttling) is doing ~1500 hashes per second in one Chrome tab on my fairly old (2.8 GHz Pentium D) desktop. I'm curious how fast it would be on your Core 2 Duo in two Chrome tabs.

<comment><USER20> Mine peaked at 3,450 or so on a Core2 Quad @ 3.2Ghz

<comment><USER21> I think GPU's are going to win this "Yeah, my 5 GPUs are currently cranking at a total rate of 800 M/sec" they are are already looking at the low 30's.

</comment></comment></comment></comment></comment><comment><AUTHOR> Just want to add that there is trick to make this incredibly easy to run in parallel - just open the page in a new tab!

<comment><USER5> Well on my dual core, opening a new tab could not fire up the other core. Opening opera side by the firefox did the trick.

<comment><USER19> I've got two tabs in Chrome using two CPU cores.

<comment><USER5> Chrome uses different processes per tab. It's their sand boxing tech for security.

</comment></comment></comment></comment><comment><USER22> I would be interested to see if you could get something like this running using the Google NACL project (<http://code.google.com/p/nativeclient/>). Wouldn't that give you then benefit of having native code running on any machine that went to the page and had the plugin installed? You could have the user install a plugin when they went to the page and then reload the page. Just popped into my head, probably too late to implement anything now, but might be fun to give it a go.

</comment><comment><USER23> Would you be willing to write up the stats of your experiment once the challenge is over? I'd be really interested to know how much compute power you were able to harvest and what was the rate of compute acquisition.

Terrific idea and implementation. I have 10 tabs on Chrome. Good luck.

<comment><USER10> He can't.

As far as I can tell, the browsers only contact him if they find a string with a shorter hamming distance, otherwise it's entirely offline, including picking random words.

</comment></comment><comment><USER24> Eh, I'll leave it on my PowerMac overnight. Just fyi, I've donated the following browsers...

OS X: Safari, Firefox 3.5, Webkit Nightly, Chromium Nightly, Opera 10 beta 2, Shiira, Camino 2, Seamonkey, Sunrise, Flock

Then I have 3 virtual machines open...

Windows XP #1: Firefox 3.5, Chrome, Internet Explorer 6 (Dev testing bed, not upgrading, but take it anyway), Opera 9, Maxthon 2 (Surprised I even had it)

Windows XP #2: Firefox 3.5, Chrome, Internet Explorer 7, Opera 9, Maxthon 2

Windows XP #3: Firefox 3.5, Chrome, Internet Explorer 8, Opera 9, Maxthon

I'd donate an Ubuntu VM or two, but... they don't wanna start up at this point. _shrug_

This may not help, I dunno, but I'm certainly not using the computer. Have a blast, and good luck!

</comment><comment><USER25> As a CPU contributor, I demand that you give us stats as to which browsers were the fastest for your computation! This could be an interesting comparison point for the bundled javascript engines. (Maybe :))

<comment><USER9> Heh, I'm not sure if it would be representative of a good benchmark, but it might be exciting to see how many hashes each browser has contributed ;)

</comment></comment><comment><USER26> I wouldn't install an app to help you out.

I wouldn't leave it running if you killed my processor.

But you made it painless, so you get at least a few hours of runtime on me @ 1ms.

</comment><comment><USER27> Fantastic! 10 tabs open in Safari 4 @1ms using < 1core of my 2.66GHz Core2Dueo. Cheers and good luck!

(I second, or third, the browser-war idea.)

</comment><comment><USER22> Also, are you logging IP's for your best results? Would be cool to know if my machine was the one that came up with the shortest hamming distance (obviously IP's aren't a guaranteed way to figure this out, but still...)

</comment><comment><USER28> Someone on Twitter claimed this entry has already got the 0:

<http://twitter.com/rikfaith/statuses/2743945177>

I have no way to check. True or not?

<comment><USER29> Just to be clear, _I_ never claimed it got a 0 :)

<comment><USER28> Oh right, just someone I was following pointed to it and said it was. My bad :) (Well theirs, I guess.. :P)

<comment><USER29> (The tweets I'm sending to contesttracker have the hamming distance at the front.)

</comment></comment></comment></comment><comment><USER13> When I started it said: The smallest Hamming distance we've achieved so far is: 48

Now, I opened it also in Safari and says: The smallest Hamming distance we've achieved so far is: 0

0? Does that mean you got one?

Edit: Ok. Solved.

</comment><comment><AUTHOR> I'm going to set the script up to tweet whenever I find a closer hash, and include the IP... you can follow me @silentmac

</comment><comment><USER30> I'd be curious to hear how many people/cycles you get to help with this.

</comment><comment><USER31> Very cool idea, I wish you good luck!

<comment><USER31> I have just opened another 6 tabs on a different Duo Core machine, all sliders set to max. I will tell some more people ...

</comment></comment><comment><USER32> 17M hashes overnight. :) Good luck.

</comment><comment><USER33> Fantastic concept. Good luck!</comment>


Show HN: ProcessMaker.IO is a workflow engine in the cloud. Need candid feedback - <AUTHOR> Our project is at: https://www.processmaker.io/
We built a high performance workflow engine in the cloud aimed for developers.  It originally was intended as a BPMN focused engine but you can also create complex workflows programatically without any BPMN diagramming tools.  Think of it as a platform that goes well beyond ITTT or Zapier.  This platform means we can do services orchestration and serverless programming (using our script tasks which currently support LUA) as well as human enabled workflows (think of using forms and approvals, etc).  We have SDKs in most major languages and we're aiming specifically at developers as the target audience.  This would be perfect for ISVs looking to embed complex workflows in their product but not have to build the workflow features themselves.
The problem I'm seeing is that understanding workflow from the beginning is a hard concept.  The on-boarding process for a developer to understand the value and to immediately get started is something we're trying to get over.  We have various use case examples and video demos that show how you could use it, but I still don't feel comfortable yet with the 1st time experience.
So I'm sharing in hopes that anyone can provide feedback/thoughts?  Or even if you have questions on how things are done (which would help us with our messaging).  Docs are updated and you can sign up and fire up a workflow engine right away to play with (it's free right now so we can get people playing with it).  It's at www.processmaker.io and any suggestions/advice for improving the messaging on the website is also really appreciated.
The project is in public Alpha right now, so if something isn't working right, please bring it up so I can have the team fix it up!
Thanks all. <comment><USER2> I love the concept but I don't want (and the company I work for seriously doesn't want to) to run our processes in the "the cloud". Seriously.

I'll look at this seriously when there's an onsite version. Open source is better. I'll gladly pay for support.

<comment><USER3> OT: Hi trevvr, I'm curious to know why cloud is out of the question for you. Is it a matter of security or other? I'm a cloud guy (for lack of a better term) and trying to understand use-cases when cloud is not a sensible option. Thanks in advance for any insight.

<comment><AUTHOR> A lot of it may be information leak worry. You want just your data to be stored and some workflow engines require more than what is needed to make a decision.

We actually are releasing a use-case video that shows how to keep your data local and still be able to use a workflow engine in the cloud keeping your data local while making decisions and orchestration external.

</comment></comment></comment><comment><USER4> Have you been working on this for 17 years? Why does the copyright statement in the footer say 2000-2017?

<comment><AUTHOR> Ah no. The company is that old and our main product is at processmaker.com. The copyright that you see is tied to the company name. Probably something we should correct/clarify

This project is brand new and we were working on it now for almost a year just now releasing it into the public.</comment></comment>


A conversation with Google's in-house philosopher - <AUTHOR> http://qz.com/451051/should-search-algorithms-be-moral-a-conversation-with-googles-in-house-philosopher/ <comment><USER2> > _…to consider the knowledge it delivers as a basic, common necessity, and as > such, one that requires a democratically-empowered quality control._

Knowledge determined by popular fiat. Sounds lovely.

I mean, even now, popularity determines what we get, but at least it's implicit—results are based on how people _act_ , not how they _say they should act_.

Unlike the article, I'm not willing to assume that the latter is better than the former, much less that it should be forced on us. Then again, I'm the sort of person who's content eating donuts and would hate being forced onto a kale diet.

More importantly, the former provides a more granular system: different people can get different things based on what they want or how they act. A democratic system, on the other hand, would pretty much force a consensus on everyone. Centralization simply doesn't have the capability to let everyone have their own way.

<comment><USER3> > More importantly, the former provides a more granular system: different > people can get different things based on what they want or how they act.

I disagree. The web is the way it is, flooded with click-bait, ads masquerading as editorial, opinion and political agenda masquerading as journalism, viral power masquerading as truth, because of the "free"[1] junk food consuming habits that most people are prone too most of the time. This utterly and fundamentally transforms the web for _everyone_ , because there is little air left for alternatives to breathe, leaving them stunted if not still-born. The same damage that the article explains as happening to journalism is happening to all other important things on the web.

-

[1] That ads give us the web for free is utter bullshit: [https://news.ycombinator.com/item?id=8585237](https://news.ycombinator.com/item?id=8585237)

</comment></comment><comment><USER4> I don't get it. It sounds as if he worships the Google algorithm as an independant entity, and modifying it would be meddling. In reality Google created that algorithm, so they already determine "truth". If bible stuff really is what most people want to find, I understand the rationale to give it to them. Is the situation in the US really that bad, though? Frankly, that would be scarier than the Utopia of a search engine optimizing for truth...

<comment><AUTHOR> _Google created that algorithm, so they already determine "truth"._

Precisely.

</comment></comment><comment><USER5> > But one of the first search results when you Google "What happened to the > dinosaurs?" is a website called Answers in Genesis. It explains that "the > Bible gives us a framework for explaining dinosaurs [...] Luciano Floridi, > known as "the Google Philosopher," thinks that's fine.

That's not fine, I feel that's just a poor quality result that can be improved. Like maybe understanding why "Answers in Genesis" ranks surprisingly high.

<comment><USER6> Yeah, but where do you draw the line? Efficacy of acupuncture? Causes leading up the US Civil War? Government spending with a fiscal multiplier > 1? 1-based indexing of arrays? Impact of H1-Bs on US salaries and immigrant-welfare?

You may find dinosaurs an unambiguous case, but some people (Creationists, paleontologists) don't. Why should Google decide the truth on dinosaurs but not on <insert sacred cow>?

<comment><AUTHOR> Two approaches on that.

For well-established, well-sourced, and particularly, _scientific_ questions, authorities with a strong record of truthful and accurate accounts should both get priority _and_ help establish truth models. Less-well-known sources which genrally agree with these also score well.

Sites showing systematic bias or poor truth valance would be discounted.

Facts, ultimately, are verified by experiment or experience. In practice, we look at _reported experiential results_ and note which tend to agree and/or show errors which are both _small_ and _unbiased_.

Those are your preferred sources.

An interesting element about lairs is that they _frequently_ (though not always ), tend to exhibit systemic bias _across multiple disciplines. Either they bullshit and make stuff up (high error, unbiased), or they show systemic biases.

Again, not always and uniformly, but frequently.

Truth _and* source reputation combined give you considerable leverage.

The goal isn't perfection, but reducing the problem to _tractable_ areas of truth valance helps greatly.

</comment></comment></comment><comment><USER7> When I search, all but 3 results are now news stories and blog posts about googling "What happened to the dinosaurs." I don't find those results to be particularly useful either.

<comment><USER8> Searching for "What happened to the dinosaurs" returns in the answer box the text "Google is Wrong About What Happened to the Dinosaurs", which is a cute instance of the Liar's Paradox: [http://en.wikipedia.org/wiki/Liar_paradox](http://en.wikipedia.org/wiki/Liar_paradox)

</comment></comment><comment><USER9> So he's like Yahoo's Shiggy?

</comment><comment><USER10> I wonder what their out-house philosopher is like.

<comment><USER11> Aren't we all out-house philosophers?

<comment><USER10> I suppose there is a reason they call it ruminating

</comment></comment></comment><comment><USER12> Don't be _too_ evil

</comment><comment><USER13> Well, if he's "Google's", he's a sell out, by definition.</comment>


Wire messenger backed by Skype co-founder launches video, end-to-end encryption - <AUTHOR> http://wire.com/download <comment><USER2> Without the source being open, this cannot be considered secure, and there is no reason for consideration over skype, or any other messenger.

<comment><USER3> We've got all the crypto-related code available at [https://github.com/wireapp](https://github.com/wireapp).

<comment><USER2> Thanks for sharing the link, I was unable to locate this. I intend to look this over when I get some time.</comment></comment></comment>


Mongo3: Sinatra based admin console for mongoDB - <AUTHOR> http://www.mongo3.com/ <comment><USER2> This looks promising. I myself am still trying to transition to writing an app using Python / Django / MongoDB but haven't got to it yet. Very promising database though, and to see the community come up with tools so quickly is a good sign.

On another note, I love Sinatra for it's minimalism. Barrier to entry was really low with that.

</comment><comment><USER3> Looks like Heroku is having a major outage right now and that site is down.

</comment><comment><USER4> Love the topology graphs. I might have to steal some features :). Hurray open source!</comment>


Twitch.tv Breached (email from Twitch) - <AUTHOR> http://pastebin.com/LJbe5tr1

<comment><USER2> A more specific email appears to have been sent to affected users. It seems to imply that malicious code was inserted into the login page, but doesn't provide any further details to the extent of the compromise.

[http://i.gyazo.com/b31792d4fc4460c006c49d858cc113e3.png](http://i.gyazo.com/b31792d4fc4460c006c49d858cc113e3.png)

</comment><comment><USER3> From my email:

We are writing to let you know that there may have been unauthorized access to some of your Twitch user account information, including possibly your Twitch username and associated email address, your password (which was cryptographically protected), the last IP address you logged in from, and any of the following if you provided it to us: first and last name, phone number, address, and date of birth.

For your protection, we have expired your password and stream keys. In addition, if you had connected your account to Twitter or YouTube, we have terminated this connection.

You will be prompted to create a new password the next time you attempt to log into your Twitch account. If applicable, you will also need to re-connect your account to Twitter and YouTube, and re-authenticate through Facebook, once you change your password. We also recommend that you change your password at any other website where you use the same or a similar password.

We apologize for this inconvenience.

The Twitch Team</comment>


You Tell Me If This Word Processing App Is Worth 15 million - <AUTHOR> http://www.fastcodesign.com/1673153/you-tell-me-if-this-word-processing-app-is-worth-15-million#1

<comment><USER2> If the 100M valuation for Snapchat wasn't the tipoff to the bubble, where you can delete a picture... or not if your friend takes a screenshot! Brilliant!

*edit, these days you get 5M just for saying its beautiful so maybe the valuation is not THAT far off.</comment>


Show HN: RC-455 – A WebAudio Synthesizer - <AUTHOR> http://barakchamo.github.io/rc455 <comment><USER3> Nice idea, but .. Just thought I'd better report: Doesn't work for me at all on OSX, Safari 9.0.1 .. on Firefox 42.0, it works, but the GUI renders improperly and the controls don't respond to mouse events, but it plays sound when I hit the QWERTY keyboard .. Chrome 46.0.2490.86, it renders the GUI properly, plays sound, but doesn't really react to mouse events on the knobs as smoothly as I would expect of a synthesizer - very jerky. Also, presets don't seem to work.

<comment><AUTHOR> Thanks for reporting fit2rule!

It's weird, I'm running it well on Firefox and Chrome on OSX but I'll test on other setups. The presets should be empty to begin with and only save ones you want locally.

<comment><USER4> Linux FF 42.0 here. Playing notes works but nothing else like the knobs respond to mouse inputs.

</comment></comment></comment><comment><USER5> Wow, very cool implementation, fun to play around with.

The "knobs" are a UX nightmare with a touchpad on my laptop though, nearly impossible to use.

Sometimes replicating a physical object doesn't translate well to the web - <USER2> simple slider (input type=range) would be much more effective here.

<comment><AUTHOR> Thanks mfkp!

Yeah I know what you mean, I have an open issue to fix touch screen handling. I didn't have a touch screen handy but I'm hoping to fix it soon.

I wanted to play around with realistic UIs but I agree that sometimes digital interfaces like a slider are much more intuitive.

<comment><USER6> Nothing digital about a slider. The Juno, the SH-101, loads of classic synths had sliders.

<comment><AUTHOR> Yeah you're right JonnieCache, I meant a more physical-like interaction but sliders are as well.

</comment></comment></comment></comment><comment><USER7> It looks awesome, but it's unusable under my chrome + ubuntu. Any parameter tweak i tested results in a huge lag, sometimes making the tab stop responding.

<comment><AUTHOR> This is so weird, it's running well for me but obviously buggy for many.

Do you mind telling me which parameters caused issues? and what machine are you running on?

<comment><USER8> fwiw I got reports of inconsistent/unreproducible performance issues when I was working on a webaudio synth project last year. Never figured if it was down to audio hardware or what but I have seen a couple upgrades of Chrome that performed weird, tho webMIDI API was still shifting a bit

<comment><USER7> I confirm this. My webaudio project was halted because I couldn't figure out why the cpu usage kept going up. After some chromium lists reading I decided to give them some time to polish the api. Some months later the same project was working as expected.

</comment></comment></comment></comment><comment><USER9> This is great fun to play around with - if I'm not careful I'm gonna get completely distracted from doing any work today...

Just to chime in on others' comments, the knobs are pretty unpleasant to use, even with a mouse. I think though, Ableton has spoiled me with regards to knob/slider UX.

Awesome work!

<comment><AUTHOR> Cheers Jimmed!

I know exactly what you mean with Live, it's so smooth!

I'm working on a web-based VJ project right now and it's a lot more like Ableton, slick and minimalistic.

</comment></comment><comment><USER10> This wins the cup in the Most Nonfunctional Website category.</comment>


Achtung Baby by Sara Zaske, Reviewed - <AUTHOR> https://slate.com/human-interest/2018/02/achtung-baby-by-sara-zaske-reviewed.html <comment><USER3> I can testify to this. My poor kid was shocked at how rigid the US high school was (after being in a German system), how he could get in trouble for having hints like matches, and how unhappy and stressed his classmates were (and how little they had — he didn't yet know that "freedom"is a reflexive talisman of American identity). In Germany, as the book review says, even Nursery school kids have access to knives, hot glue guns, splinters, etc. 8 year olds who can weld aren't uncommon.

But those are symptoms of a philosophical difference. Kids learn _very_ strict rules about behavior (stand behind that yellow line next to the U-bahn! Only cross the street with the light!) and are trained (it's the only word for it) on how to ride a bike safely and follow the traffic laws. _Then_ , given a framework, they have a lot more freedom than in the us...but the framework is quite rigid. In the US kids don't even learn how to use cutlery, much less how to weld, somtheir world is, ironically, more circumscribed.

<comment><USER4> I was in Germany this summer. My friend and I went to visit her parents. Her parents wanted me to see a historic town nearbye. We got in the car. The father drove down the road at 190 kilometers per hour. The other cars were also going fast. I saw cars at an intersection make turns, in front of other cars, that I would never do in the USA, because I would never trust the other drivers to behave correctly. But in Germany the drivers are very well trained.

My friend got her driver's license in Germany when she was an adult. It was very expensive and she had to go through several courses. She had to prove that she could drive at night and during the day, and in a dense urban center, and also out on the highways, away from any cities. She was given multiple tests. It was a serious training effort.

This is the paradox of the American emphasis on freedom. The attitude tends to be juvenile. The American mindset, at its crudest, is something like, "You got to give me a car, man, because I'm free, man, I've got freedom, so give me a the right to drive man, authority sucks, man, the government sucks, I'm free so I can drive, you can't stop me, man." So the drivers are untrained, so the government responds by treating all drivers as if they are badly behaving children.

In Germany the attitude is "We (the government) will train you very well, and then we will trust you to be adults who can make wise choices."

One thing I never saw in Germany: cops hiding behind trees, hoping to catch people who were speeding. Traffic cops are very common in the USA, but basically unknown in Germany, since the major highways don't have speed limits.

Another thing I noticed in Germany, where there is a speed limit, people drive that limit, and not 5 kilometers above the speed limit. The drivers make the assumption that the government must have had some good reason for imposing a speed limit.

<comment><USER5> > One thing I never saw in Germany: cops hiding behind trees, hoping to catch > people who were speeding. Traffic cops are very common in the USA, but > basically unknown in Germany, since the major highways don't have speed > limits.

You won't see them much on the motorway, since for most of it there isn't a speed limit, but radar controls in towns and rural areas are somewhat common.

> Another thing I noticed in Germany, where there is a speed limit, people > drive that limit, and not 5 kilometers above the speed limit. The drivers > make the assumption that the government must have had some good reason for > imposing a speed limit.

You'll literally only ever see that when A) the driver is some old person driving carefully, or B) the area is common for radar controls, or has radar traps installed. The unwritten rule is to drive 10km/hour faster, according to the speedometer, than the speed limit allows, which works out to ~5km/hour over the limit, due to the way speedometers are calibrated.

<comment><USER6> The autobahns _do_ have limits that change dynamically from "infinite" to "some value less than infinite" due to weather, construction, congestion, accidents, etc.

And there _are_ speed cameras in some of these stretches. I have nasty collection letters from Hertz and Avis to confirm it.

</comment></comment></comment></comment><comment><USER7> Much the same could be said about native Norway in comparison to the US or UK. There is a documentary about identical twins from China. One ends up in Norway the other in the US. They meet many years later. You see quite radically different child raising. Norwegians focus on independence and freedom for the child. The Americans focus on lots of grownup controlled activities.

My feeling is Norwegians focus on independence while Americans focus on ambition. Americans are more focused on their childrens enrichment and making them perform.

I notice e.g. from American relatives how much earlier they get school work, tests and academic work. Norwegian childhood is more play and social interaction oriented. We focus inteaching children self control.

When I came to the US I was surprised how out of controll American teenagers are. They don't seem to function without lots of rules and regulations. They don't seem used to regulating and controlling themselves.

I think this creates a society were nobody fully trust each other and compensate with lots of strict rules.

E.g. American police seem a lot more authoritarian than police in nordic countries.

<comment><USER8> Your sociological explanations may be accurate, but it's probably worth noting that very low police:population ratios in the US combined with a gargantuan supply of unrestricted handgun possession in the hands of the populous is also a strong contributor to bunker mentality from the police.

 _[Edit: I see that Norway has a similarly low police:population ratio, so that observation isn't really relevant for comparisons with Norway or the rest of Scandinavia. My error!]_

Also, Norwegian border patrol agents seemed pretty damned authoritarian in my experience, so my personal contact with law enforcement doesn't match yours for the respective countries. /end anecdote

<comment><USER9> Why do you consider the police:population ratio in the US "very low"? It seems it's pretty much middle of the pack, and arguably on the high side for Western Democracies: [https://en.wikipedia.org/wiki/List_of_countries_and_dependen...](https://en.wikipedia.org/wiki/List_of_countries_and_dependencies_by_number_of_police_officers)

<comment><USER8> Those numbers are state level police numbers.

Aggregate numbers for actual officers on a beat are quite different for large countries.

Most of Western Europe (according to the studies I've read) have significantly higher numbers of police in the community.

To answer your larger question: Humans don't respond well to small probability high negative outcomes. One common theory in criminality is that we want to optimize people's sense that they'll be caught, and then give smaller, more certain punishments. Basically, ideally we'd have many more police, many fewer prisons.

</comment></comment></comment></comment><comment><USER10> >Later that year, Sophia and the rest of her Kita class take part in a gleefully parent-free sleepover. A sleepover! At school! For a 4-year-old!

German here, can someone explain to me what's weird/bad/uncommon about this?

It's still supervised.

<comment><USER11> In North America any adult that is not the parent is a potential kidnapping rapist, doubly so if they're male.

In Canada, child services were called on a mother of three for letting her children play outside in their fenced backyard while watching from the window.[1]

Humans aren't equipped to really comprehend a 24-hour global news cycle. Things that are common and deadly are deemphasized and things that are rare are raised to panic inducing levels of fear. Dangers to children get extra attention.

[1]: [https://www.ctvnews.ca/mobile/canada/manitoba-cfs-will- not-e...](https://www.ctvnews.ca/mobile/canada/manitoba-cfs-will-not-erase- file-of-mother-who-lets-kids-play-in-backyard-1.2871900)

<comment><USER10> >In North America any adult that is not the parent is a potential kidnapping rapist

But the adults at the sleepover are the same as the adults that watch the kids during daytime :/

>In Canada, child services were called on a mother of three for letting her children play outside in their fenced backyard while watching from the window.

When I played in the sandbox my father could not see me from the house. Just our dog, and the dog would watch me :) So if he saw the dog he know I was ok.

<comment><USER12> We don't deserve dogs.

</comment></comment></comment></comment><comment><USER13> Every few weeks there's an article that suggests we either need to copy the European school system or the Korean/Chinese one.

This particular author seems to be projecting her own Tiger Mom ideas into most of the country, but I think helicopter parenting is highly regional, and has been different at different times. In more rural areas, among working class or lower class kids, parents were generally less intensively involved and kids have more freedom relative to suburbia IMHO. I was born in 71, and pretty much from age 7 I can remember saying bye to my mom after getting home from school and going out to play all day by myself with no oversight.

It is tru these days America d are more paranoid of sex predators, because our news media has hyped up crime over the last two decades and made everyone scared, of course there is some truth to it because crime statistics are generally higher here than in Europe, but again, it's very regional with rates fluctuating between the safest European levels and looking like Honduras in some spots.

Americans do send kids for overnight stays, typically during summer in camps. I sent my kids away for two weeks to sleep outdoors under the stars, with no tech allowed for example. But it usually isn't run by schools, our schools are too afraid of being sued or protested by parents these days to do anything.

</comment><comment><USER12> Here's a revolution that actually starts at home. Government policy aside, Americans are free to follow much of the German advice if they choose. Treat your kids as if their lives are primarily theirs, not yours. Let them take risks (for themselves, not others) and bear consequences. Exult with them when those risks are successful. Above all be a role model. This is all really easy to contemplate, but very hard to do because it is isolating. In my suburban parenting experience, we are a competitively paranoid nation. So many people raise their kids as if they're in the twin towers and they are totally going to know when to press that elevator button to get out safely. We do not have to be that way.

</comment><comment><USER14> You _can_ find people pushing back against this in America. My daughter, for instance, attends a Sudbury School, where the kids make the rules and decide how to spend their own time:

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

She loves the school, and in my opinion it's been great for her. But almost everyone I describe the school to finds it terrifically weird and frightening.

<comment><USER15> The biggest reason people think this kind of thing is scary? They're remembering back to highschool when they had to march through math while being taught by people who barely understood it. They know they _never_ would have done it without having been forced, and that idea kind of leaks backwards to early education.

There's a mythical "self-driven and exploratory" math education out there, but the cold reality is while essentially anyone would be able to supervise a journey through colors and counting only very few have even _seen_ what's good about math. (Moreover, what small fraction of them would be willing to teach teenagers?)

</comment></comment><comment><USER16> This, to a lesser degree, can be found in the United States, if you can find the right place. I know because I speak from experience. I raised two sons in a community that allowed them exercise personal freedom and benefit from a scholastic experience similar to what is discussed in the article (I have not read the book). Ours is not the only such place, as I have friends who have found them as well.

Kids get to school on their own from all over town, by bike, bus, or walk, even in the early grades. Summers are pretty much a cacophony of kid activity until 10PM (or later). No one thinks twice about kids being out on their own.

My sons regaled me of stories of setting things on fire in chemistry class, field trips where kids fell in the creek (termed Lessons in Hypothermia), and the cool tools available in jewelry class, of all things.

It would seem to me these communities are smaller (10-20K) and politically progressive. Ours has a tax just to fund schools. You have to have a town that is willing to invest in the children and can attract good teachers. Even the non-secular people are fairly progressive as well.

I couldn't really have asked for much better living in the United States. Both sons are off to college and happy as can be, so I am grateful they got the community upbringing that they did.

One of the things that might be considered a drawback is preparation for the "real-world." When my oldest went off to college he had a difficult time adjusting to people. The lack of self control, respect for the law, willful ignorance, and just plain meanness, was surprising to him. It makes it difficult to try and nudge him to experience the greater world at large.

Another drawback is expense. The cost of living is high. A house here is fully $100,000-$150,000 more than a similar house in a town 15 miles away. This creates a dichotomy where families want to live here, but often can't afford it. Low to mid income housing is a politically hot topic.

<comment><USER17> i don't think "politically progressive" is a determinative. The DC suburbs skew extremely left, by are oppressive as hell for children. Some parents recently got CPS sicced on them for letting their 8 year old walk less than a mile to school.

<comment><USER16> While I'm sure there are lots of politically progressive places that are problems, I can't imagine having a community similar to ours without it. We're an island of progressive surrounded by numerous similar sized towns that are decidedly conservative and have more community problems and are less attractive academically. But they're less expensive to live in, too.

<comment><USER18> > While I'm sure there are lots of politically progressive places that are > problems, I can't imagine having a community similar to ours without it.

There are a number of traditionalist conservative intentional communities doing much the same things. It's kinda like with homeschoolers: the left-wing & right-wing homeschoolers end up doing many similar things, and are different from the mainstream public-schoolers in similar ways.

<comment><USER19> Homeschooling is pretty bifurcated too.

I was homeschooled and my parents gave me a lot of freedom in learning and play. They definitely weren't helicopter parents. We had the cops called on us many times by people who wondered why we were roaming the streets during school hours. (We had already completed our work for the day. That was the deal.)

I spent hours playing in creeks or racing bikes in neighborhood woods.

But there were other homeschooling families we knew who kept their children cloistered and firmly under parental supervision. Those kids grew up with a very different experience.

</comment></comment></comment></comment></comment><comment><AUTHOR> May also be of interest: A short (12 mins) documentary about a school in New Zealand where are no rules during recess.

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

<comment><USER20> The last 15 seconds is brilliant.

[https://www.youtube.com/watch?v=r1Y0cuufVGI&t=11m40s](https://www.youtube.com/watch?v=r1Y0cuufVGI&t=11m40s)

A young girl gets stuck up a tree, and asks for help which is (kindly) denied, the caretaker watching from a distance. She gets herself down, and promptly climbs up the tree again. The childhood we should all have!

</comment></comment><comment><USER21> On the other hand, in my experience(and I welcome German people to chime in and dispel this notion), German child raising is very hands-off and devoid of any warmth. Yes, kids are given a lot of freedom, but are also expected to keep to their own devices vast majority of the time. When the parent comes back home, they don't think about doing activities _with_ the child - <USER2> chat about how is school, and then don't bother me for the rest of the evening. And it's not bad parenting or parents not caring - the people I met genuienly expect kids to be able to occupy their own time and the notion that they need family support apart from the material one is almost slightly weird to them. From my observations, it results in people who are fantastically independent and confident, but who can also be emotionally distant to everything.

Again, this is just an anecdote of my own experience.

<comment><USER22> Yes, as a rule of thumb, we live through emotionally starved childhoods which causes us to become emotionally detached automatons whose only joy in live is producing cars and occasionally waging war against France, which is always good clean fun until you guys decide to show up.

Kidding aside, I think there are two problems with your interpretation: For once, if you rank acceptance of emotional display on a scale going from Russia to America, you will find us somewhere close to Russia. Here, typical American displays of friendliness ("I'm so happy to see you!", "you guys should totally come over to our place sometimes") are grossly inappropriate, and in some areas (customer servic[1]) they border on being sociopathic, as long as isn't meant literally. But this is just a cultural difference, not something that hints at emotional damage. Russians can laugh, Germans can be friendly and Americans can be reserved or grumpy. It's just that there are huge differences in terms of the social setting in which those things are deemed acceptable.

As a second note, there are obviously very diverse approaches to parenting in Germany as well as very differently skilled parents. There are caring and loving parents as well as emotionally distant narcissists. I'm very uncomfortable with you attributing such things to a culturally determined approach to parenting instead of looking at individual factors. What you _can_ actually do is looking at how things like independence, discipline, athleticism and so forth as well as individual practices like spanking are valued. Some of the results might be very surprising.

[1] The story about German customers calling the police because they were feeling stalked by wal-mart employees trying to help them with bringing their groceries to their cars is legendary.

<comment><USER23> >I'm very uncomfortable with you attributing such things to a culturally determined approach to parenting instead of looking at individual factors.

You should thank God you aren't American...it seems everyone else thinks they know exactly what makes us tick, and (as in this thread?) aren't shy at all about making sweeping generalizations about us.

<comment><USER24> Germany doesn't export it's culture, it exports mostly its products. Contrary to the USA that exports its culture wherever it can. So it should not be a surprise that 'everyone else' thinks that they know what makes Americans tick, it's just that their picture is going to be centered on whatever Hollywood wants to radiate rather than actual reality.

That said - and having spent a good bit of time in the US - there are quite a few things that Hollywood unfortunately portrays quite accurately.

</comment></comment></comment></comment><comment><USER25> Although written from a us mother's experience I suspect there are echoes for many cultures. "My year of living Danishly" by Helen Russell (sans Child) covers much the same experiential situation for a British couple in Denmark for instance.

</comment><comment><USER26> One thing I would like to point out is that this is rather an European thing than specifically German.

Aside from playing with fire in school many of these experiences were my own and were the norm.

</comment><comment><USER27> Another article comparing a geographically huge country of 323 million people consisting of varied ethnic backgrounds, to a country a fraction of the size, population and diversity. Compound this with the fact that at least 62,985,134 Americans are clueless, vapid morons. Comparing how those idiots raise their children to anyone else on earth isn't going to reflect well on the U.S. as a whole, regardless.</comment>


Samsung Executives Waited Four Days to Tell Chairman - <AUTHOR> http://elasticrat.com/2012/09/samsung-executives-waited-four-days-to-tell-chairman/

<comment><USER2> Would rather post this on the blog, but since I can't I'll put it here...

Given that the "chairman" refers to the chairman (Lee Kun-hee) of Samsung Electronics, consider these numbers:

Samsung Electronics revenue in 2011: $149 billion USD

Samsung Telecommunications revenue in 2011: $21 billion USD

Even in a North American style business he would probably have more pressing concerns than a ruling that affects only a very small part of the business he is overseeing. Given that Samsung is a Korean multinational, we're talking about a completely different culture and business style, where the top few layers of people probably don't need to know about this sort of thing right away.

<comment><USER3> A case that accounts for 1% of annual revenue would seem significant enough to merit a moment of attention.

</comment></comment><comment><USER4> I'm thinking it's probably a myth - just like the "announcement" that Samsung paid Apple in trucks of small change.

</comment><comment><USER5> I am pretty sure this is a myth for the simple reason that the chairman would have heard it in the news within those four days and would have summon the execs

</comment><comment><USER6> Why do people try to run their own blog hosting? Why not use a service like blogger? I ask because the blog is down.

<comment><USER7> Control, safety and building a brand.</comment></comment>


Alphabet wants to deliver Internet access via laser beams - <AUTHOR> https://arstechnica.com/gadgets/2017/12/alphabet-wants-to-deliver-internet-access-via-laser-beams/ <comment><USER2> I was hoping the article would provide more detail for why this is better or different from existing microwave radio methods. Higher bandwidth appears to the answer. It appears that some laser systems feature a hybrid system with laser and rf technologies, and will automatically downgrade to RF when weather, pollution, or other obstructions come up.

[http://www.lightpointe.com/airebridge- lx-1.html](http://www.lightpointe.com/airebridge-lx-1.html)

<comment><USER3> Be more pragmatic. It's about licensing. The microwave frequencies are licensed. Laser frequencies are not. Want to setup a network without first securing government permission, the obvious choice is laser. This is also a primary reason COPs switch to lasers for speed enforcement.

The bandwidth of individual connections is only half the equation, and largely irrelevant imho. What matters for the network is the lack of interference. Laser connections can spider across a city without real risk of contaminating one signal with another. So even if the point-to-point bandwidth is the same, the total potential bandwidth of the installed network will be much higher.

<comment><USER4> There are a lot of microwave connections (E.G. 24Ghz, 5.7Ghz) that are in the unlicensed spectrum. We are using these extensively in our network. See [https://en.wikipedia.org/wiki/ISM_band](https://en.wikipedia.org/wiki/ISM_band)

<comment><USER3> Unlicensed, but not unregulated. There are very detailed limitations on transmitter/antenna powers in those areas, limitations that are very country- specific. The rules for laser, where they exist, are more akin to "don't burn our people's eyes".

</comment></comment></comment></comment><comment><USER5> This technique works and is in fact quite simple. I suspect it's simply a matter of competing business interests that it hasn't been tried before.

Even near visible laser communication systems can operate at harmless power levels for miles, can be aligned by hand in many cases (you provide a "collection" dish to reflect the light in) and they're dirt cheap.

I actually built one as a project in my required EE classes for my CS degree back in 2002 using a pair of (rather expensive and overpowered) helium neon lasers. In 2002 and with these lasers the speed we had build was quite slow because of the switching time for the lasers, but the point was to build the hardware so we were good.

Given the absurdly low cost of these systems w/ modern components and their phenomenally low power budget, I'm not surprised.

</comment><comment><USER6> Relevant quote:

> If you're like me and immediately asked "how can a line-of-sight laser > system work when it rains?" The answer is "it doesn't." Atmospheric > disturbances like rain, snow, fog, dust, and heat can all interfere with the > light beam, and they have been the major limiting factor in this > communication method.

<comment><USER7> In the past it has been proposed that a dense mesh network of FSO links could deal with interfering weather by dynamically routing around it. But that's a lot of lasers on a lot of moutain tops.

<comment><USER8> I just had this vision of aliens finding us and thinking in their own way "they have some sort of laser mesh defense system..."

<comment><USER9> "Lasers can't even penetrate our navigation shields. Don't they know that?"

<comment><USER10> Errr... I guess go to yellow alert?

</comment></comment></comment></comment></comment><comment><USER11> I used to have a Motorola Canopy dish at home. It was much more reliable than cable or dsl. The idea is to have one omnidirectional tower, and directional dishes at each house. This scales beautifully, because you can simply add more and more towers to increase density (having directional dishes on one side fixes the crosstalk in both directions, up to a point).

It was doing 6mbit with better latencies than cable, back when cable was < 6mbit in my area. I have no idea what similar bandwidth microwave systems can push these days, but it worked fine in rain and fog.

</comment><comment><USER12> If anyone wants to play around with a system like this, that is basically "open source" \- and to see firsthand the difficulties of implementing such a system on a DIY budget, check the following project out:

[http://ronja.twibright.com/](http://ronja.twibright.com/)

</comment><comment><USER13> >Existing systems have stuck to using eye-safe laser power densities and can achieve around 10Gbit/s.

Implying that google's 20Gbit system isn't eye-safe?

<comment><USER14> Implying that googles system didn't exist before.

</comment></comment><comment><USER15> Military has been using this kind of network on ships at sea for decades.

<comment><USER16> That's interesting...aligning a laser spot beam between two ships moving, pitching, and rolling seems non trivial.

<comment><USER17> Actually, considering the distances I would assume that high-entropy high- frequency noise near the laser such as people walking nearby, engines roaring, air currents, etc are much harder to deal with than the low-frequency predictable movement of the ship caused by large waves.

<comment><USER16> >low-frequency predictable movement of the ship caused by large waves.

Well, I was thinking that combined with whatever navigation is going on as well. As a layperson, waves don't seem predictable to me.

<comment><USER15> On micro- to millisecond intervals, plus the dampening effect of a 10K to 100K ton ship, waves are pretty managable.

</comment></comment></comment></comment></comment><comment><USER18> I'm (naively) surprised this works in practice. It seems like the sending laser and receiver would have to be very immovable such that big wind gusts, or a large truck driving by, or large temperature changes in the structure holding the laser, etc, didn't cause enough vibration/movement to cause the laser to miss its target when several miles away. Is this a non-issue? Or maybe the laser spreads out enough at several miles it compensates for the movement?

</comment><comment><USER19> Why is this better than using a fiber optic cable? I guess light travels slightly faster through the air compared to either glass or plastic (the two typical optical media used for cables) which would reduce the transmission time, but I can't imagine that the slight decrease in latency is worth the massive increase in downtime due to atmospheric interference.

<comment><USER20> Less cable installation. Put it on a pole pointed toward the tower and you're done. It'd be nice in the US where the corporate cartels like Comcast/Charter/Verizon can't as easily blockade access to internet by manipulating control over utility poles through bribery of local and state officials.

<comment><USER21> nice laser link, would be a real shame if we built a tower in between...

<comment><USER22> I'm thinking that it'd be cheap enough to route the beam around a tower that this would be cost prohibitive, but it made me laugh.

</comment></comment></comment></comment><comment><USER23> The main issue I see with this system is that there are so many factors that will disrupt the signal. assuming India, How will they handle rain and heavy pollution degrading the quality of the signal? or will it just be a? "Oh, it's monsoon season so no internet?"

<comment><USER24> I've seen some systems like this that will fall back to 5ghz or 2.4ghz RF connections when the lasers are blocked, so the throughput goes way down but at least the service isn't out completely. Maybe they'll do something like that.

<comment><USER25> Fallback to other unlicensed bands like 24GHz or 60GHz would probably work better. The higher frequencies at least retain a compact dish size, smaller fresnel zone, and sharper directionality. That is, imagine hanging several of these optical devices + 5GHz fallback at ~1 meter vertical spacing on a pole. A weather event triggering failover on all optical links could lead to enough 5.8GHz self-interference to kill the fallback links as well. 5.8GHz devices that aren't synchronized in phase with each other often call for 3meter+ separation, eating up tower real estate.

<comment><USER26> Weather will also degrade 24GHz and 60GHz links. A friend of mine used to work at an ISP that relied on wireless links, and he said that even at 2.4GHz moisture was a significant problem (especially concentrated moisture in living things like trees). In general as the frequency increases attenuation due to water increases; at 60GHz particulates will also become a problem (consider that a selling point of 60GHz is that it does not penetrate walls, so you will have less interference in apartments or large office buildings).

(Edit: Looked it up; 2.4GHz is more readily absorbed by plants than 5.8GHz. Still, attenuation due to moisture seems to be a problem for microwave frequencies generally.)

<comment><USER25> Indeed the 24GHz and 60GHz gear has its unique rain fade issues not shared by 5.8GHz. Increased atmospheric attenuation of higher bands is the general trade-off for higher throughput and more compact physical isolation requirements. UBNT 24GHz gear is being using for ~10km links, but looks like the ~5km is the preferred limit. My original comment would have been better written to stress need to prove out the signal path over all intended bands, e.g. primary link over (near) optical and fallback over whatever RF band proves viable.</comment></comment></comment></comment></comment>


Clang-format configurator - <AUTHOR> http://zed0.co.uk/clang-format-configurator/ <comment><USER2> Switching to clang-format reminded me (to a lesser degree though) of the moment when vim finally clicked for me.

Code formatting is just something I don't do anymore. It's taken care of. I don't waste my time and thoughts trying to make the code look nice and readable. I hit a button and it becomes nice and readable; often nicer than I would have done it by hand. Like vim, when I don't have clang-format available my editing feels very hobbled like I'm typing with my knuckles.

There are probably other great formatters out there but clang-format was the first one that just blew me away with how good it was.

<comment><USER3> May I ask which button that is?

<comment><USER2> I mapped it to Alt-Space (so I guess it'd be buttons plural) for no other reason than it seemed like a convenient combination for something I'm going to be constantly running.

</comment></comment></comment><comment><USER4> Incredible coincidence, I used clang-format today for the first time and was looking for such a tool. The one I found had no preview so I just tried a few built-in styles and picked one that was close to my style.

I'm writing a lot of code recently and gently trying to get my colleagues (and myself) to do "best practices" like consistent code formatting, not too long lines, thinking about readability, but also using modern C++11/14 features for cleaner code. We're physicists and mostly not professional programmers so we're a bit behind in some things.

I recently installed YouCompleteMe with vim which really is a game changer - the code completion makes it more pleasant to write in C++(11) than in python (which are the two languages our framework supports), and the error/warning highlighting catches most bugs before compiling. Long story short, for YCM I installed clang, and it comes with a bunch of tools like clang-format. There seems to be a static analyzer which I want to check out, and a tool that finds opportunities to use clearer modern C++11 constructs, pretty nice.

</comment><comment><USER5> My team recently switched from Uncrustify to Clang-format for our iOS development and this replaces a gap that I had: UncrustifyX.

We had a lot of issues with Uncrustify and I burned a lot of time trying to deal with its bugs. Clang-format can't do everything that Uncrustify can do, but I've had a lot less problems with it. The only thing I really miss is Uncrustify would do more than format white-space. It would make code alterations such as inserting missing block braces, etc.

My .clang-format config[0] is also much smaller and understandable as well.

[0] [https://gist.github.com/mmcdole/e174ba6bede7760cee11](https://gist.github.com/mmcdole/e174ba6bede7760cee11)

<comment><USER6> Sigh, if only there was a formatter for Swift but the language keeps changing and no one at Apple finds time to work on this.

</comment></comment><comment><USER7> I've had good success using clang-format for Objective-C projects. Someone put together a config file that's pretty close to Apple's style:

[https://github.com/haaakon/Apple-clang- format](https://github.com/haaakon/Apple-clang-format)

Particularly when using features like blocks clang-format does a better job than the other tools we tried.

</comment><comment><USER8> Can anyone recommend a code formatter for perl? ('rm' does not count!)

<comment><USER9> Best option is perltidy [https://metacpan.org/pod/distribution/Perl- Tidy/bin/perltidy](https://metacpan.org/pod/distribution/Perl- Tidy/bin/perltidy)

<comment><USER8> Thanks!

</comment></comment></comment><comment><USER10> Even though we've had a clang format file for a while this is still nice to have, and pretty well done as well. Now I'd just wish clang-format would allow formatting C++ constructor initializer lists like

      Foo() :
        a( 0 ),
        b( 0 )
      {
      }

which we happen to find the most readable and which afaik is not that uncommon. Just a couple of weeks ago I even looked into submitting a patch but, shame on me, gave up after going throigh the source for an hour or so. It's extremely well written but it was just too much for a quick fix.

<comment><USER11> Thanks for the feedback. This is one of my (and my work mate's) most wanted features of clang-format. I'd like the ConstructorInitializerAllOnOneLineOrOnePerLine option to break before the first argument too, similarly for arguments etc.

</comment></comment><comment><USER12> How does clang-format compare to astyle?

<comment><USER13> clang-format uses clang's C++ parser to get a real understanding of the code, even in syntactical edge cases. Because of this, clang-format can provide more specific and contextual style rules that go beyond what astyle can do.

<comment><USER14> clang-format actually only uses clang's lexer, it does its own parsing. It does this so that it can be applied to code snipits and so that you don't have to provide the full include paths and command line options required to correctly parse the file.

</comment></comment></comment><comment><USER15> Would if nice if it said what the defaults are.

<comment><USER11> This is on my todo list: [https://github.com/zed0/clang-format- configurator/issues/1](https://github.com/zed0/clang-format- configurator/issues/1) If you have any more issues or suggestions please add them.

</comment></comment><comment><USER16> Looks great. Thank you. I've been using astyle for quite some time. I suppose they are very similar.

</comment><comment><USER17> Also hooked on clang-format as of a few weeks ago. It does bizarre stuff sometimes, but I have decided to stop caring. IMHO C++ syntax is so byzantine, if you're capable of groking it at all, you're capable of seeing past white space differences. High time it went viral!</comment>