Drones should be banned from private use, says Google's Eric Schmidt - <AUTHOR> http://www.theguardian.com/technology/2013/apr/21/drones-google-eric-schmidt?CMP=twt_gu <comment><USER2> "How would you feel if your neighbour went over and bought a commercial observation drone that they can launch from their back yard. It just flies over your house all day. How would you feel about it?"

Pretty much the same way I feel about Google Streetview? Or Google Glass?

<comment><USER3> You raise a good point: it is in Google's interest to maintain a monopoly on as much data as they can.

<comment><USER4> and Google self-driving cars would become a niche product - for trucks only - once drones will en masse appear able to carry 200kg, i.e. 2 persons. eVolo is just a humble start. Self-flying versions of it, especially considering their roots in RC drones, is different tech than cars.

Considering that Bezos understands drones and Google is competitor to Amazon and has been missing the quiet revolution coming, this isn't a surpising salvo.

<comment><USER5> Schmidt has been talking about this long before Amazon made their announcement[1]

[1] [http://www.nbcnews.com/technology/private-drones-pose- privac...](http://www.nbcnews.com/technology/private-drones-pose-privacy- threat-says-googles-eric-schmidt-1C9340969)

</comment></comment></comment></comment><comment><USER6> The natural cycle continues. Young disruptors grow older and move for regulation and control.

If drones are outlawed, only outlaws will have drones.

What may be needed isn't laws and regulations, but a common understanding of what is and isn't acceptable for drones. There's not a lot of room on our planet; it's important for us to develop societal norms for where we want and don't want technology.

It's jarring to find popped helium balloons in the wilderness. I'd be sad and unhappy to see and hear drones flitting about our treasured mountains, and even in our city skies. We're tool-builders, but we must be careful with our tools.

<comment><USER7> > What may be needed isn't laws and regulations, but a common understanding of > what is and isn't acceptable for drones.

Sure. People don't even seem to understand the rules of road and keep killing each other and themselves, and you're pushing for "common understanding of what is and isn't acceptable".

Most people who walk this earth are not as clever as you might think. Just because you're intelligent, doesn't mean that everyone else is.

It seems that the human race needs very strict boundaries and limitations. But then again, in the US it's normal to have a gun and look at how "common understanding of what is and isn't acceptable" is working with that.

It's obviously only a matter of time before some dipshit is going to fly a bomb into some embassy. I understand that this will be the "outlaw" doing this but nevertheless, if you're not able to prevent it, by outlawing it you have at least the option to prosecute when abuse takes place.

(shit, reading this back I sound like some right wing fanatic. I can assure you I'm not :).

<comment><USER6> Fortunately, bombing an embassy is already against the law. No shortage of ways to prosecute.

</comment></comment></comment><comment><USER8> > Schmidt set out the trajectory of robotic warfare and considered whether it > would be confined solely to national governments. "It's probable that > robotics becomes a significant component of nation state warfare," he said.

This after Google makes a huge investment in robotics companies. Their future potential competitors in this space are in peoples' garages right now. This is Google pulling the ladder up after them.

</comment><comment><USER9> > "You're having a dispute with your neighbour," he hypothesised. "How would > you feel if your neighbour went over and bought a commercial observation > drone that they can launch from their back yard. It just flies over your > house all day. How would you feel about it?"

Or, your neighbor spies on you with a telescope. Or he just breaks into your house and assaults you. I don't get the point. I fly multirotors responsibly for my own enjoyment, so screw you if you want to stop me.

</comment><comment><USER10> Why does anyone care what Google's Eric Schmidt thinks about drones?

On this subject, he has no particular knowledge or experience that anyone else doesn't have.

On this subject, his opinion is completely unremarkable and worth just about as much the opinion of an artist who draws graphics for a Cheerios box.

When people whine about "powerful white males" having too much say in the media, THIS IS EXACTLY WHAT THEY MEAN. There is NO REASON we should be listening to Eric Schmidt's opinion on something he clearly knows next to nothing about. There is no reason to fill newspapers and web pages with his utterly unremarkable words about drones.

If he were to talk about, say, search engines or advertising, then yes, it's useful. That's what he does for a living. But w/r/t to drones, he's just as dumb and fearful as 50% or more of the world out there.

Moving further into his ideas, they are about as thoughtful and deep as a goldfish bowl. His analogy about an angry neighbor is laugh-out-loudable. An angry neighbor can do all matter of things today with all manner of tools following the dispute he mentions. Should we ban all of them, too?

For example, > "It's got to be regulated. [...] "

Drones ARE regulated.

[http://www.faa.gov/about/initiatives/uas/](http://www.faa.gov/about/initiatives/uas/)

[http://www.faa.gov/about/initiatives/uas/uas_faq/index.cfm?p...](http://www.faa.gov/about/initiatives/uas/uas_faq/index.cfm?print=go)

</comment><comment><USER11> "How would you feel if your neighbour went over and bought a commercial observation drone that they can launch from their back yard. It just flies over your house all day. How would you feel about it?"

Roughly the same as I'd feel about them buying a telescope and pointing it in my bedroom window; really creeped out, film it and call the cops on them.

Really. We're meant to take this seriously now? Almost any technology can be abused. I can think of several ways to kill or seriously harm my neighbour with the contents of my cleaning cupboard if I'd the mind to - far worse than just being a creepy pest to them. Are we supposed to go down the EVERYTHING IS TERRIBLE! BAN EVERYTHING. route? The saving grace of society isn't that these things are difficult, it's that most people don't think as predators very often.

Who knows maybe your neighbour actually has a soul.

</comment><comment><USER12> "How would you feel if your neighbour went over and bought a commercial observation drone that they can launch from their back yard. It just flies over your house all day. How would you feel about it?"

Same arguments can be used against handheld camcorders, smartphones etc.

<comment><USER13> > Same arguments can be used against handheld camcorders, smartphones etc.

You mean if you throw them over your neighbor's house?

<comment><USER9> So then, your point is that multirotors should be banned because your neighbors can now inspect your roof without your permission?

<comment><USER13> No, my point is that "handheld camcorders" are nothing like multirotors.

</comment></comment></comment></comment><comment><USER14> "I'm not going to pass judgment on whether armies should exist, but I would prefer to not spread and democratise the ability to fight war to every single human being."

What an interesting choice of words.

He might want to read the 2nd amendment to the US Constitution (just as a good place to start).

<comment><USER9> I'd like to ask him if he thinks big armies are more likely to exist when governments use taxation, fiscal policy, and conscription to fund and staff armies, or if things are "democratized."

</comment></comment><comment><USER3> There's an infinite amount of devices and technology out there that could be misused already, but there's a legal framework in place to help mitigate that potential.

I don't see drones being fundamentally different in any way that would make them impossible to regulate. The FCC is a great example: it's stupidly simple to interfere with radio signals but it's not a big problem because enforcement is taken seriously.

</comment><comment><USER15> Not all drones are for killing. Currently I'm in a team working on quadcopter drones to help with surf life saving/beach patrol.

Sounds like he's trying to prevent the democratisation of an upcoming technology.

</comment><comment><USER16> A licence similar to a driving license seems like the way to go. It seems perfectly reasonable to require some training before being allowed a drone (for safety reasons). Each drone should have the electronic equivalent of a license plate for identification and if an owner is found to be using their drone in an illegal manner (laws to be determined...) then their license should be revoked.

There are incredible opportunities for doing cool things with drones, but a framework for managing their use seems perfectly reasonable to me.

</comment><comment><USER9> > Eric Schmidt...warned of the potential of new technology to "democratise the > ability to fight war"

Umm, isn't that supposedly a good thing? There's a reason that most modern governments are composed of elected representatives to make military decisions.

<comment><USER5> I think that's in the sense of things like "the web will democratize publishing" by allowing anyone with a blog or twitter or a youtube channel or whatever to be a news source, writer, film publisher, etc.

</comment></comment><comment><USER17> Google has inverted from "don't be evil" to "let's be evil". Why should governments have rights that the people don't?

</comment><comment><USER18> I can only dream that one day neighborhood disputes will be resolved through miniature dogfights over the yard. Stream video from the "cockpit" for friends or coordinated teamwork. Toss in a dead man's switch hooked up to an EMP cannon. Safe? Nope. The epitome of fucking awesome childhood fantasies? Absolutely.

When the tech (and materials, refab costs, etc) get low enough, suburbia is going to get a whole lot more interesting...

</comment><comment><USER19> Wow, Eric Schmidt is blinded by his desire to maintain power. His greatest fear is losing his power... He says private drones should be banned and mentions nothing about the commercial use of drones by companies, especially his own company. And then he uses a small isolated example of drones being used for evil as to why they should be banned...terrorists? come on! Nothing is mentioned about drones being used for search and rescue, global natural resource tracking, travel, or even space exploration! This is clearly an attempt by a frightened individual to maintain control.

What we should start considering and making plans for is pooling our resources together in order to setup a system of public, open-sourced drones whose data is freely available to everyone, with an official, central repository backed up and stored at the NSA (after we open-source that and get a public API working).

Google's street view cars would no longer be needed. We could have a real-time digital duplicate of reality running using the NSA's resources. Anybody can plug in and 'teleport' anywhere in the world. Any crime that would happen would be recorded live, and emergency broadcast systems can be implemented.

Unfortunately, no person or company could profit from this publicly available data. Any monetized analysis tool would be duplicated and hosted publicly for free via the NSA web services. All open source and anyone can view and improve the code and master pulls can be voted on by the community.

This is great for location and mapping data, but what about taking it a step further and maybe we could use these drones as a sort of 'opt-in' activity tracker. We've heard of the military using gait detection from drones to track 'terrorists'. Well, how many people can one drone track at a time? Also, can it measure heart-rate, steps taken, breathes per minute, O2 levels, etc... There goes fitbit and fuelband...

This is just getting started, there's still traveling and shipping that can be freed and open-sourced...

</comment><comment><USER20> Its one thing to make it illegal to use drones to harm other people; and another thing to say that only Google, Amazon, and the U.S. Government can own drones.

<comment><USER9> I'm not a legal expert, but I think it's already illegal to use drones to harm other people (unless you work for the government).

<comment><USER21> How does this amazing "unless you work for the government" clause work? Seriously, what is the legal basis of such exceptions?

EDIT: I'm not criticizing the parent comment. This is a legitimate question! (As usual!)

<comment><USER9> I threw in the exception lest anyone point out that the US military regularly uses drones to harm people.

<comment><USER21> I'm not criticizing you. It is a legitimate question. There have always seemed to be exceptions for the government. Does this stem from "war powers?" What is the basis?

<comment><USER9> I suppose so. Most people agree that it's legal for the government to perform military actions. _Which_ military actions are legal is controversial, of course.

</comment></comment></comment></comment></comment></comment><comment> chestnut-tree _" Schmidt said Google was "super-sensitive" on privacy..."_

This is hard to believe. Let's recall that during the US investigation into the wi-fi data that Google captured, the Federal Communications Commission (FCC) said Google had "deliberately impeded and delayed" the investigation for months. Earlier this year, the UK Information Commissioner's Office ordered Google to delete captured wi-fi data or face criminal proceedings. Google had earier pledged to delete the data but actually failed to do so. Are these the actions of a company that takes privacy seriously?

Then there is Google's online reach which is simply phenomenal. Now they have an entire operating system (ChromeOS) which could potentially track everything you do online. You can't even print to your desktop printer without being signed in to your Google account. We don't really know what Google tracks or captures because their vaguely-worded privacy policies don't tell us.

The most depressing aspect of all this? Most people simply don't care (including many in the tech community).

</comment><comment><USER22> power of language: "commercial observation drone" vs. "remote controlled plane with a go-pro atttached".

</comment><comment><USER23> They should restrict corporate ownership of these things. Give individuals a break for once.

</comment><comment><USER24> somehow I doubt terrorists would give a damn about a law restricting their use or ownership.

</comment><comment><USER25> From reading this article and the comments, I imagine that the future of drones in the US may be much the same as what we're seeing with gun control: many people will see value in private drone ownership and will be okay with regulations around them. Some people will feel that any restrictions are government encroachment and will resist it.

Most likely the vast majority of drones and drone owners will use them responsibly (yes I am being hopelessly optimistic here) and a few will abuse them. Periodically we will see horror stories about misuse of drones (e.g. Newtown) but short of a whole city being wiped out very aggressive restrictions will not exist.

</comment><comment><USER26> Would this include Google's driverless car?

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

</comment><comment><USER27> I have to imagine there is a middle-ground between disallowing private use of drones altogether, and private citizens launching Hellfire missiles at each other's cars.

</comment><comment><USER28> I think drones have to much potential value to just flat out ban them. That said, we do need to think about security, and privacy very soon.

Hobby drones are (relatively cheap), if the software keeps getting better, it might soon be possible for a rich person to virtually own an army. That's a lot of power for a small group or even a single individual to wield.

</comment><comment><USER29> So is it time for private drone owners to form a lobbying interest to protect their rights? Maybe find an aging actor with a booming voice to use as a political spokesperson?

</comment><comment><USER30> So... only approved corporations can operate approved drones? Sounds like a great way to completely monopolize the concept of having flying robots perform useful work.

</comment><comment><USER31> Drones are unmanned planes. They're not time machines or matter annihilators or teleporters. What makes these devices so scary to certain people?

</comment><comment><USER32> Perhaps we should ban webcams and poles because they could be used to spy on neighbors too. This is one of the weakest arguments I've ever read.

</comment><comment><USER33> So, Google is thinking your safety more than you can think for yourself. How is this different than Google taking responsibility of Governments?</comment>


Daala: Modern video compression for the internet - <AUTHOR> https://github.com/xiph/daala <comment><USER2> Daala uses quite a few innovative approaches to video encoding. There's a good set of articles on some of the approaches they've tried at [https://www.xiph.org/~xiphmont/demo/](https://www.xiph.org/~xiphmont/demo/).

Since the formation of the Alliance for Open Media, Mozilla/Xiph's work has mainly shifted towards helping them develop AV1 (for standardization by the IETF hopefully next year) which is mostly based on what would have been Google's VP10. That said, their work on Daala was not wasted as they are working on integrating the most successful parts of Daala into AV1 where it makes sense, such as their entropy coder.

<comment><USER3> They'll also need to make sure they stick to AV1 for a long-ass time. H264 is fully accelerated. VP8 was supposed to become a bigwig thing, some (alpha) hardware supported started to pop up and then Google nixed it and switched to VP9. Only now are VP9 accelerated CPUs popping up and now they're already planning to switch to AV1 soon.. no damn way the smaller CPU builders (everyone not Intel or AMD) will build in decoding support for another standard that'll be nixxed in a few years. That's also why H265 will (sadly) be victorious, even despite heavy licensing. H264 has been in use for so long without big changes that CPU builders felt comfortable dedicating silicon to it. Unless AOmedia (= Google, Cisco etc.) give a guarantee they won't switch up to 'AV2' or whatever in a few years, it won't see large hardware support.

On a sidenote: screw Google for switching YouTube over to VP9 for some bandwidth savings, full well knowing 95%+ of people does not have VP9 acceleration and thus having YouTube absolutely slaughter their laptop battery. H264ify fixes this, but still. ALWAYS put the user first.

Edit: to be clear, I know all the big builders (Intel, Nvidia, AMD etc) are part of AOMedia. However, they also all promised VP8 support which never happened, and VP9 support which is more than a generation late.

<comment> TD-Linux I don't see how VP9 hardware decoders shipping late means that H.265 wins? There's _zero_ H.265 content on the web right now, so if anything H.265 would need to catch up. Also, the ffvp9 software decoder in Firefox is quite efficient. Hopefully Chrome will eventually ship it too.

<comment><USER3> VP9 is already in all Chromium based browsers. And no, its not nearly as efficient, because there's no hardware acceleration/ You can clearly see this in any Chromium browser: Watch a YouTube video without the H264ify extension and Activity Monitor open. Your 'Energy Use' will spike to about 100. With H264ify its only 40. Safari even stays in the upper 20s.

<comment> TD-Linux But it uses the libvpx decoder, not ffvp9. [https://blogs.gnome.org/rbultje/2014/02/22/the-worlds- fastes...](https://blogs.gnome.org/rbultje/2014/02/22/the-worlds-fastest- vp9-decoder-ffvp9/)

Also check that you're getting the same resolution on both. H.264 requires more bits, so you might be getting a lower resolution (which also takes less energy to decode).

<comment><USER3> Both are 1080p60FPS. Also, VP9 will never be more efficient than H264 on my machine since I have a 2015 13" Macbook Pro, and that model only has H264 acceleration in the CPU. And the 2015 Pro is more modern than 90% of the machines out there..

<comment><USER4> But doesn't that have an Intel Iris 6100 in it ([https://www.apple.com/macbook- pro/specs-2015/](https://www.apple.com/macbook-pro/specs-2015/))? If so you should have accelerated VP8 and VP9 decoding. Maybe it's not exposed by the drivers on macOS.

<comment><USER3> Nope, only VP8 (which is dead). I meant fixed hardware acceleration (Intel Quick Sync). Draws a lot less power than the GPU. This is the full Quick Sync acceleration sheet for each generation:

Version 1 (Sandy Bridge) Quick Sync was initially built into some Sandy Bridge CPUs, but not into Sandy Bridge Pentiums or Celerons.

Version 2 (Ivy Bridge) The Ivy Bridge microarchitecture included a "next- generation" implementation of Quick Sync.

Version 3 (Haswell) The Haswell microarchitecture implementation is focused on quality, with speed about the same as before (for any given clip length vs. encoding length).[citation needed] It has seven hard-coded quality/performance levels (called "target usages"), compared to the three in previous generations. The highest-quality TU1 setting is intended to be higher quality than Ivy Bridge's version, and the highest speed TU7 setting should be faster, higher-quality, and more battery-friendly for mobile devices. This generation of Quick Sync supports the H.264/MPEG-4 AVC, VC-1 and H.262/MPEG-2 Part 2 video standards.

Version 4 (Broadwell) The Broadwell microarchitecture adds VP8 hardware decoding and encoding support. Also, it has two independent bit stream decoder (BSD) rings to process video commands on GT3 GPUs; this allows one BSD ring to process decoding and the other BSD ring to process encoding at the same time.

Version 5 (Skylake) The Skylake microarchitecture adds a full fixed-function H.265/HEVC main/8-bit encoding and decoding acceleration, hybrid and partial HEVC main10/10-bit decoding acceleration, JPEG encoding acceleration for resolutions up to 16,000×16,000 pixels, and partial VP9 encoding and decoding acceleration.

Version 6 (Kaby Lake) The Kaby Lake microarchitecture adds full fixed-function H.265/HEVC Main10/10-bit encoding and decoding acceleration & full fixed- function VP9 8-bit & 10-bit decoding acceleration & 8-bit encoding acceleration.[13][14]

<comment><USER4> Broadwell has VP9 acceleration with the right drivers:

[https://communities.intel.com/thread/59216](https://communities.intel.com/thread/59216)

[https://en.wikipedia.org/wiki/Broadwell_(microarchitecture)#...](https://en.wikipedia.org/wiki/Broadwell_\(microarchitecture\)#New_features)

So you just have a driver problem. Apple was playing with adding WebP support in beta versions of iOS a while back. So maybe they'll add WebP and WebM support in the next major version of macOS and iOS.

<comment><USER3> > GPU Accelerated

Not what I'm looking for. The GPU still uses about 2x more energy than the dedicated Quicksync silicon, although its better than only using the CPU.

In case you're wondering, I did read the second link, it actually uses the first link as a source.

I'm not trying to be contrarian btw, for me (and my Macbooks battery) I just feel that the distinction between GPU acceleration and a dedicated decode core is an important one.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> Part of Daala will be reused in AV1 [http://aomedia.org/](http://aomedia.org/)

</comment><comment><USER6> How does this compare to VP9/10 by a "human quality" metric? There's lots of cherry-picking about stats which makes an encoding sound impressive on paper but result in a worse perceptible quality. This is a really good article about testing encoders: [https://blogs.gnome.org/rbultje/2016/05/02/the-worlds- best-v...](https://blogs.gnome.org/rbultje/2016/05/02/the-worlds-best- vp9-encoder-eve-2/)

Additionally, adoption is really slow of VP9 already so I don't see anyone switching to Daala soon.

<comment><USER7> We use a wide variety of metrics to compare codecs, not just the usual PSNR metric:

[https://arewecompressedyet.com/?job=av1_rt_ctrl_new_twitch%4...](https://arewecompressedyet.com/?job=av1_rt_ctrl_new_twitch%402016-12-20T09%3A23%3A43.974Z)

While none of these metrics are as good as the "human quality" metric, some are better than others, in different ways, so we try to optimize across the board.

<comment><USER8> On that note, have you considered adding Netflix's VMAF to AWCY?

</comment></comment></comment><comment><USER9> Last time this was discussed on YC: [1] Except that time it was the "Thor" codec.

MPEG-2 is effectively out of patent now for almost all uses. Here's MPEG-LA's patent list.[2] The one remaining unexpired patent [3] only applies to error correction for pay-per-view satellite broadcasts.

[1] [https://news.ycombinator.com/item?id=10042469](https://news.ycombinator.com/item?id=10042469) [2] [http://www.mpegla.com/main/programs/M2/Documents/m2-att1.pdf](http://www.mpegla.com/main/programs/M2/Documents/m2-att1.pdf) [3] [https://www.google.com/patents/US7334248](https://www.google.com/patents/US7334248)

<comment><USER4> But what's the advantage of MPEG-2 over VP9? VP9 is royalty-free for all use cases and outperforms MPEG-2. Are there particular expired MPEG-2 patents that make sense to include in AV1?

<comment><USER2> The key is that now all royalty-free codecs can use MPEG-2 technologies as their base instead of having to work around the lack of them.

<comment><USER4> Okay, but which technologies in particular? Since they've already been worked around, what's the advantage?

<comment><USER10> Workarounds might have had to sacrifice efficiency or simplicity.

<comment><USER4> Might have, but again what's an example? What's a technique from MPEG-2 now available that could have improved VP9 or can improve AV1?

<comment><USER11> B-frames.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> This all reminds me that modular smartphones would be awesome if the hardware video codec chip could be a module.

</comment><comment><USER13> How far did Daala progress? They planned to start beating H.265 both in quality and in efficient decoding in 2016/2017\. Did that happen?

<comment><USER7> Here is the most recent update on Daala, from IETF 97:

[https://www.ietf.org/proceedings/97/slides/slides-97-netvc-d...](https://www.ietf.org/proceedings/97/slides/slides-97-netvc- daala-update-01.pdf)

<comment><USER14> > _They planned to start beating H.265 both in quality and in efficient > decoding in 2016 /2017\. Did that happen?_

If I'm not missing something, this suggests that Daala's quality will be comparable to H.265. No doubt encoders for both will continue to get better.

<comment><USER13> Not just comparable, the goal was to be ahead.

<comment><USER14> A good goal to be sure, but one that it doesn't look like they'll make.

IMHO, "comparable to H.265" may not be as inspiring but is still very impressive. If they can do this without stepping on existing IP, it'll be an incredible achievement.

</comment></comment></comment></comment></comment><comment><USER15> Does it use a middle-out algorithm?</comment>


Looking back at the 2014 #Oscars on Twitter - <AUTHOR> https://blog.twitter.com/2014/looking-back-at-the-2014-oscars-on-twitter

<comment><USER2> So I guess that settles it. Twitter won the Oscars.</comment>


Using Go Templates - <AUTHOR> https://blog.gopheracademy.com/advent-2017/using-go-templates/ <comment><USER2> An additional tip. Template actions don't necessarily have to be delimited by '{{' and '}}'.

Before parsing, you can call Delims to use custom delimiters.

      func (t *Template) Delims(left, right string) *Template

[https://golang.org/pkg/text/template/#Template.Delims](https://golang.org/pkg/text/template/#Template.Delims)

<comment><USER3> Especially useful if, for example, you'll be doing additional js templating that also use the mustache tag eg with Vuejs (can also be changed)

</comment></comment><comment> abc-xyz I really want to love templates, but I find many aspects to be quite confusing.

(1): I just want to deploy a binary file. This does not seem possible with templates (unless they're defined inside .go files, but never seen anyone do that).. also rather annoying that the tmpl files must be located in a specific directory rather than located among their components.. but I guess it wouldn't make much sense anyway since they won't be a part of the binary file.

(2): it's really difficult to find good and medium-large scale projects that are using templates

(3): I have no idea what's the right way to initialize and execute templates, this includes when the same template will be called in multiple funcs. I know how I can do it, but I don't feel confident that I'm doing it correctly..

(4): it's really exhausting to keep template code clean. With Go (and various JS frameworks) the code is automatically formatted/linted/whatever, but with templates nada.. can't even figure out how to minimize it for production.

(5): no idea what to do with css/js.. sometimes use inline, other times call a static file. Static files obviously benefit from being cached.. not sure how I'm supposed to cache the templates

I can't really tell if there are any speed gains to using templates, so it feels like a lot of sacrifices for no obvious gain. I do think templates would be godlike if they featured vue-like structure with "template/script/style" syntax, and was easily minified and compiled into the binary. But I guess I can keep dreaming about the last part :)

<comment><USER4> (2) [https://github.com/gohugoio/hugo](https://github.com/gohugoio/hugo) ?

<comment> abc-xyz I love Hugo, but I was thinking more in the lines of a "standard" website, like Hacker News, Twitter, the official gohugo.io website (rather than their generator), etc.

</comment></comment></comment><comment> enahs-sf Really glad someone put this together. The official documentation is pretty good but somewhat lacking in terms of practical examples around templates.

</comment><comment><USER5> This Django style template library is also quite slick: [https://github.com/flosch/pongo2](https://github.com/flosch/pongo2)

</comment><comment><USER6> I am also really glad someone has glued toghether major aspects of template/html std library. It is definetely a place where are some 'taboos', tricks or gotchas, i.e. re-usability of tmpl static variable to add multiple named templates and call them by name (re: question on disqus below article) or sharing parent scope to children variable when using range loop (stackoverflow popular question). I am bit sad I haven't found some free time to collect all known 'tricks' to me and try to list them somehow or send CR yet.

<comment><USER7> Totally agree, I'm also glad there is another resource for learning templating! The gotchas are frequent for me when it comes to templating in Go. Recently I found that html/template will strip tags when inserting into an attribute [1]. I did not realize that Go made a special template for attributes (template.HTMLAttr) which is what I needed to make it work. [2]

[1]: [https://play.golang.org/p/nHG_F2a0t-4](https://play.golang.org/p/nHG_F2a0t-4)

[2]: [https://play.golang.org/p/TU5CX9Kstj](https://play.golang.org/p/TU5CX9Kstj)

<comment><USER8> That's not all! Try inserting a Go variable within a script tag, and Go will automatically convert it to JSON. Makes it possible to easily do this:

      let msgs = {{ .Messages }}

Where .Messages is any slice. Same is true for structs -> JS objects.

</comment></comment></comment><comment><USER9> Have you tried to benchmark writing out a page with Go templates, vs GO producing a JSON API that prints out into static HTML pages with JQUERY/Handlebars? How many RPS can you get with either scenario? What is Time to First Paint and when does the page finish printing for the user?

<comment><USER10> Go templates are not particularly fast, but I would be astonished if the client-side way one that battle.

There are faster server-side template engines in go though. One approach I particularly like is [https://github.com/bouk/statictemplate](https://github.com/bouk/statictemplate), which generates code from your standard go templates that makes them quite a bit faster.

</comment></comment><comment><USER11> Seeing this from the front page RSS feed I opened the comments page in shock thinking somehow Golang got templates a la C++...

</comment><comment><USER12> Gopher Academy has been doing great content lately. Good examples for templates past the real docs. Good stuff.</comment>


Simple github search exposes many passwords  - <AUTHOR> https://github.com/search?q=gmail+username+password&type=Code&s=

<comment><AUTHOR> I have no bad attention i just want to show how simple search can be used to attack you.</comment>


Silicon Valley's Politics: Liberal with One Big Exception - <AUTHOR> https://www.nytimes.com/2017/09/06/technology/silicon-valley-politics.html?ref=todayspaper <comment><USER2> So S.V. is more Liberal than Democrat, is this news to anyone who understands the distinction?</comment>


Shorter Detour – redirect distracting websites to your reading list - <AUTHOR> http://shorterdetour.com/ <comment><USER2> Interesting idea and solves a real problem, but, no I'm not going to edit my network config to redirect to your site.</comment>


A thread on on the beauty of procedurally generated maps - <AUTHOR> https://twitter.com/ptychomancer/status/980968298002006016 <comment><USER2> This is amazing, but I _really_ wish people willing to put in this much effort would write a real article on literally any blogging/publishing platform vs. an impossible to read Tweetstorm (or whatever this is called).

<comment><USER3> [https://threadreaderapp.com/thread/980968298002006016.html](https://threadreaderapp.com/thread/980968298002006016.html)

<comment><USER4> Every little while when I scroll and a media element is displayed I experience a large stutter. That's an awful UI.

</comment></comment></comment><comment><USER5> Alternate format: [https://threadreaderapp.com/thread/980968298002006016.html](https://threadreaderapp.com/thread/980968298002006016.html)

<comment><USER6> Why doesn't Twitter look like this?

I may have actually started to use it if it looked like that.

<comment><USER7> I'm constantly amazed at how little effort Twitter put into UX. Many of the features were only adopted after 3rd parties made them popular (RTs, pictures) or because people found ways to circumvent the platform's limitations (People post pictures of text? Longer tweets, URLs no longer increase the character count, etc).

<comment><USER8> Also performance: I'm surprised the Twitter mobile interface is so laggy on an iPad Pro.

</comment></comment></comment></comment><comment><USER9> did not see this mentioned: [https://github.com/mxgmn/WaveFunctionCollapse](https://github.com/mxgmn/WaveFunctionCollapse)

<comment><USER10> What kind of sorcery is this??? Purely black magic computing :-)

</comment></comment><comment><USER11> I remember Strike Commander (1993) was generating its maps at install time, which took forever, but saved a lot of floppy disk space.

[http://fabiensanglard.net/reverse_engineering_strike_command...](http://fabiensanglard.net/reverse_engineering_strike_commander/sc_mapgenerator.png) [http://fabiensanglard.net/reverse_engineering_strike_command...](http://fabiensanglard.net/reverse_engineering_strike_commander/index.php)

<comment><USER12> Elite (1984) generated its maps on demand, in real time:

[http://blog.rabidgremlin.com/2015/01/14/procedural- content-g...](http://blog.rabidgremlin.com/2015/01/14/procedural-content- generation-creating-a-universe/)

Admittedly, a few specks on a black background does not take a lot of generation!

<comment><USER13> That reminded me of this small piece[1] on the arcade version of Berzerk[2] from 1980.

> The maze for each level was established on the fly using a seed number fed > into a rudimentary algorithm.

and, further,

> Each time the code is "cold started" the seed starts out at zero, but from > there the room number is used as the next seed. This is fed through a very > simple algorithm. It generates directions for the walls, which use s few > bit-wise operations to add the pillars inside the rooms.

[1] [https://hackaday.com/2013/07/21/how-the-mazes-were- generated...](https://hackaday.com/2013/07/21/how-the-mazes-were-generated- for-classic-berzerk-game/)

[2] [https://en.wikipedia.org/wiki/Berzerk_(video_game)](https://en.wikipedia.org/wiki/Berzerk_\(video_game\))

</comment></comment></comment><comment><USER14> Another beautiful example of a procedural city generator is that of the Subversion game once in development by Introversion software, makers of Uplink, Defcon and Darwinia: [https://www.youtube.com/watch?v=FR9xI0GgrBY](https://www.youtube.com/watch?v=FR9xI0GgrBY)

It was their intention to generate the entire city including building interiors and game elements. 20-part blog series with broken images can be found here: [http://introversion.co.uk/subversion](http://introversion.co.uk/subversion)

I learned only now that the generator was apparently distributed once with a Humble Bundle.

<comment><USER8> The Internet Archive preserved the blog images: [https://web.archive.org/web/20110210072637/http://introversi...](https://web.archive.org/web/20110210072637/http://introversion.co.uk/subversion/)

</comment></comment><comment><USER15> I recently wrote up an explanation of the way procedural generation works, and compiled a list of interesting live demos! Repo even contains some simple code to experiment with :)

[https://github.com/Computer-Graphics-And-Pretty- Pictures/Pro...](https://github.com/Computer-Graphics-And-Pretty- Pictures/Procedural-Generation)

</comment><comment><USER16> Amit Patel's map generator (one of the examples) is a truly awesome piece of work [http://www-cs-students.stanford.edu/~amitp/game- programming/...](http://www-cs-students.stanford.edu/~amitp/game- programming/polygon-map-generation/)

</comment><comment><USER17> God I hate this post format.

</comment><comment><USER18> There is something beautiful about randomly generated maps, especially in RTS games. 0AD has quite a few that are stunning.

</comment><comment><USER19> I remember reading about the Minecraft generation algorithm years ago but can't find the link now. The worlds of minecraft are certainly beautiful in a similar sense.

</comment><comment><USER20> Twitter seems especially unsuited for long-form "articles" like this. Neat generators and neat maps, but the whole time I was distracted by the breakup of text and flow.

Why not get a free Medium or WordPress account?

<comment><USER21> These sorts of threads are usually created as much to attract more Twitter followers as they are to impart interesting information. They can be easily shared around on Twitter (via retweets) so more people find the creator.

<comment><USER22> It's not that so much. People don't put effort into writing passionate threads like this solely for followers. They write passionate threads like this because they are passionate. Added followers are sometimes a side effect and rarely if ever the actual goal.

<comment><USER21> Well I didn't say anything like "solely for followers". They can be created out of passion and still posted on Twitter instead of somewhere else for a reason.</comment></comment></comment></comment>


Great use of .xxx domain (Safe for work link) - <AUTHOR> http://zomato.xxx

<comment><USER2> Tagline is "food porn", picks up appropriately-tagged pictures from Instagram. Safe for work.

</comment><comment><USER3> Is this link safe for work?

<comment><AUTHOR> Absolutely, it's a marketing stunt from Zomato.com -- contains food pictures</comment></comment>


Virtual therapy 'helps with depression', researchers say - <AUTHOR> http://www.bbc.com/news/uk-35558447 <comment><USER2> It's an interesting experiment. The number of patients (15) is very low though, there is no control.. but it's good that people is working on this.

Virtual therapy may be a very good choice for people with addiction or phobias. A cheap way to diminish the cue reactivity in relation to the object of addiction or offer exposure therapy for phobias/anxiety.

I have been working for some time now on the application of CBT techniques and quantified self (for me, modern applied stoicism) with the objective of improving virtuous behavior. I have not been very successful developing an interface which makes it easy/appealing enough to use it multiple times a day. Maybe they're into something converting those CBT exercises into a virtual "game".

</comment><comment><USER3> > They were told to say compassionate phrases to the child to try and comfort > and console it.

I guess you need to be good with children in order for this to work. (Perhaps that is the reason why 2/3 of the study subjects were women).

But it sounds interesting.

<comment><USER4> > I guess you need to be good with children in order for this to work.

Not quite sure what you mean by this -- I'd think that saying compassionate things is not age-specific? Can you think of compassionate things to say to anyone?</comment></comment>


The Arctic will be ice free by 2026 - <AUTHOR> https://twitter.com/ClimateBen/status/1178326419606327296 <comment><USER2> Our collective conflagration will be a sweet release from the screeching of eco evangelists.</comment>


London estate agent caught on camera dealing with 'corrupt' Russian buyer - <AUTHOR> http://www.theguardian.com/uk-news/2015/jul/07/london-estate-agents-caught-on-camera-russian-buyer?1

<comment><AUTHOR> This great documentary actually names and shames the involved estate agents (and their agencies), who willingly assist the "buyer" keep his identity and source of money hidden (probably not the first time they're facilitating a transaction like this).

The agencies are named in this DailyMail article [1]: Winkworth, Chard, Domus Nova, Marsh & Parsons and Bective Leslie Marsh. Hopefully, this documentary will deal a significant reputation blow to these agencies and will in turn prevent similar money laundering in the future.

[1] [http://www.dailymail.co.uk/news/article-3153060/Estate- agent...](http://www.dailymail.co.uk/news/article-3153060/Estate-agents-help- Russian-criminals-launder-cash-buying-mansions-worth-3million-15million- fuelling-London-s-property-bubble.html)</comment>


Review: Pagani Huayra - <AUTHOR> http://blogs.wsj.com/drivers-seat/2012/08/11/review-pagani-huayra/

<comment><USER4> The article presents a really misleading picture of Pagani. For starters, Horacio Pagani isn't some sort of outsider savant who came from nowhere - <USER2> has a long history in the automotive industry and at one point was head of composites at Lamborghini.

Pagani are a small company, but they're not tiny for their sector of the market and have 55 employees. A niche car company can be that small for two reasons - one is that they buy in most of their mechanicals from a mass- manufacturer, the other is that they make chassis from composites, which can only be manufactured by hand and have no meaningful economies of scale. Aside from the chassis, a car like this is assembled rather than manufactured - <USER3> engine comes in a box from AMG, the exhaust system from MHG, the interior from Dani and most of the metal components from Aspa.

The Zonda and Huayra are phenomenal cars, but they're not the unique creations of one special genius. They're what's possible when a clever designer is given a blank cheque. The moveable aerodynamic elements on the Huayra are sophisticated, but they're not unique and would be commonplace in racing cars if the technology wasn't banned by the FIA. It's infinitely more difficult to design a good car that costs $20,000 than a great car that costs $2,000,000.

I don't mean to take away from the achievements of Pagani, but instead celebrate the work of the network of companies that make their cars possible. A modern supercar is like stone soup - the designer is just a catalyst for the expertise and resources of a whole army of manufacturers.

<comment><AUTHOR> According to the article, "...the shape of the Huayra fell out of Mr. Pagani's head almost fully formed." Given how hard it is to build anything that can zoom at 225mph without losing control or crashing, I find this a rather impressive feat!

Edit: in response to the comments below, yes, I recognize this may be hype, and yes, I recognize designing and building the car must have been an interactive process involving many other people. Still, there's little doubt that Mr. Pagani was the main creative force, and I can't help but be impressed by his accomplishment as a company-founding "car hacker-artist" CEO.

<comment><USER5> You don't think this is a least bit sensationalized?

</comment></comment></comment><comment><USER6> No offense to Horacio here, but the guy was in with the bigwigs at Lamborghini before Pagani was started, so the guy had all the connections he needed. It's not like this gentleman came from nowhere.

Likewise, the Pagani motors are all from AMG, so no manufacturing there, just tuning. If anything, we should be crediting the engineers that actually build the chassis and body.

</comment><comment><USER7> Very cool. Reminds me of John Britten, the Kiwi who almost single handedly created one of the best and most innovative motorcycles of the '90s (including the engine!)

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

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

(I grew up reading about Britten in motorcycle magazines in Israel, and when years later I got to NZ it was cool to see find one of his bikes as a well deserved centerpiece in the national museum :)

</comment><comment><USER8> Pagani has been putting out truly amazing cars. The Zonda F is nothing short of astounding; well designed, insanely well engineered, and it's simply beautiful. I can't wait to see the Huayra; one day I'll actually be able to afford one. Maybe.

</comment><comment><USER9> News Flash

You can learn without an education.

<comment><USER10> A better term is 'formal education'. By learning, you become educated.

</comment></comment><comment><USER11> This is the same guy who designed DHH's Pagani HH a couple of years ago. [http://filer.progstr.com/1/post/2012/05/dhhs-pagani-zonda- hh...](http://filer.progstr.com/1/post/2012/05/dhhs-pagani-zonda-hh- supercar.html)

</comment><comment><USER12> He doesn't have a formal education in aerodynamics. Someone who doesn't have a formal education is someone who didn't go to any kind of school.

</comment><comment><USER13> Horacio Pagani is quite a genius - while the article doesn't go into as much detail about how so much more is involved in the creation of the car, Horacio is most definitely the single most important aspect of the inception, creation and production of his cars.

Without his sheer bloody-mindedness I doubt the entire supercar industry as it stands would exist today.

</comment><comment><USER14> Here's an interview with him: [http://www.casilda.com/htmltonuke.php?file=loscasildenses/en...](http://www.casilda.com/htmltonuke.php?file=loscasildenses/entrevistapaganienglish.htm)

</comment><comment><USER15> LOL, A Man Without Education Builds A Billion-Dollar Corporation!

Just look at that poor bastard, Billy Gates. He dropped out from [s]a community[/s] college! This must be a sensation!

</comment><comment><USER16> See the car in action here - <http://www.youtube.com/watch?v=mRBCbMy_Tw0>

</comment><comment><USER17> probably type-o at the bottom. article lists 0-186 at 18 seconds, and then at the bottom lists 0-124 for 18 seconds.

That is one awesome car.

<comment><USER18> If it can do 0-60 in 3 seconds, I'd bet that it could do 0-124 in much less than 18 seconds. Heck, my 330i can do 0-120 in less than 18 seconds... (or so I've heard ;) ).

</comment></comment><comment><USER19> Did I just read the word "badass" in the Wall Street Journal? That's got to be some kind of watershed.

<comment><USER12> It's on the wsj's blog network, not in the paper itself.

</comment></comment><comment><USER20> Seems like an amazing car, but the interior looks like it was designed by Homer Simpson.

</comment><comment><USER21> Why would someone need a "formal" education to do this?

</comment><comment><USER22> <http://simpsons.wikia.com/wiki/The_Homer></comment>


Google is just offering to hold your shit for you - <AUTHOR> http://gizmodo.com/5800597/google-music-an-island-in-the-cloud <comment><AUTHOR> "You know what would have been a really exciting announcement? If Google announced that it was finally commoditizing music. That—not some online tune ghetto—is the next step for music services. [...]

Consider NavTeq. Garmin, Magellan , Yahoo Maps, Mapquest, Lowrence, and even XM Radio all rely on the same NavTeq data set. Garmin and Magellan can set themselves apart with pricing, features and form factors, even though both use the same basic commodity to deliver what users ultimately want.

At some point in the future music services—like Rdio and Spotify and likely iTunes [...] will likely be completely commoditized. They'll all have the same catalogue, but will differentiate themselves by their discovery, sharing, interface and delivery features.

I don't want another place to simply store songs. [...] I don't want to just move from one island to another. I'm ready to be rescued."</comment>


iNaturalist Competition: Fine-Grained Visual Categorization - <AUTHOR> https://github.com/visipedia/inat_comp <comment><USER2> Pleased to announce a new image classification dataset featuring over 5,000 different challenging natural categories - from Abaeis nicippe to Zosterops lateralis. In total there are 675,000 training and validation images and the test set will be released soon. Results will be presented at the 4th Fine- Grained Visual Categorization held at CVPR this summer. For more details please check out the competition github. Happy to answer any questions here.</comment>


Apathy of the Commons - <AUTHOR> https://stuartsierra.com/2016/07/18/apathy-of-the-commons <comment><USER2> >But sometimes that's the work that needs to be done.

So pay me. Like you said - it's work - I expect to be paid for work and if you need it done or it's in your interest it gets done - pay someone to do it (or do it yourself).

<comment><USER3> Absolutely. Otherwise it has to compete with all the other things I could be doing with my discretionary time (otherwise known as the rest of my life) and I suspect therefore isn't going to come out on top.

</comment></comment><comment><USER4> A bug that looks easy but is in fact hard is the worst case: low reputational payoff, but very high effort.

The first thought is that there ought to be an objective measure of the work done that can incentive contribution by accurately reflecting what someone has added to the community. On the other hand, measure lines of code added might have some unintended consequences...

It seems to me though that OP did appreciate the amount of effort involved, and presumably even more so because it was unglamorous work.

If all the community members understand that, then it seems to me the system is working to some extent. If peers are able to value the most useful contributions - that's what you are looking for, right?

<comment><USER5> How about reputational points gained tied to the number of votes on the bug? This would both encourage coders to fix bugs that impact more people and encourage users to voice their opinion (vote on bugs) more often and more intelligently.

Alternatively, the maintainer assigns a point value to each bug, and whoever fixes it gets those points, which is then used to rank contributors within that project (but not across projects because of bug valuation inconsistencies and differing values of the projects themselves).

</comment></comment><comment><USER6> > Everyone wants to be the master architect of the groundbreaking new > framework in the hip new language.

Especially considering that more and more companies are (trying to) use this as a prerequisite for finding any paid work. I can't find the link, but I remember reading a writeup from a startup whose hiring manager required a couple of pull requests from well-known open source software as part of the interview process. This wasn't Facebook or Google, either, just another no- name startup.

<comment><USER3> I've seen this, and it's a ridiculous pre-requisite. If I'm going to work on side projects they need to be things I find interesting, and that I'm willing (and able) to work on when I'm tired/hungry/cranky/otherwise worn out at the end of a day of paid work... which pretty much means they need to be _my_ side projects, rather than dull PRs on some OSS uber-project where I maybe have to deal with a load of politics, jump through a load of hoops, or perhaps the barrier to entry for useful contribution is too high (e.g., due to project complexity).

</comment></comment><comment><USER7> Drupal has this problem, and has tried to counter this fact with:

\- novice tags for bugs [1] \- mentions on your project bio page detailing how many contributions you have on drupal projects in the past three monts (even if it was only rolling a patch or commenting, if your name is just mentioned in the commit, you don't need to be the author) [2] \- and a lot of documentation on getting started [3]

And Dries (the creator of drupal) touch this same topic (comparing open source with the commons) in a 2014 DrupalCon keynote): [https://youtu.be/4NN5EM4CYVE?t=10m45s](https://youtu.be/4NN5EM4CYVE?t=10m45s)

[1] [https://www.drupal.org/project/issues/search?status[0]=1&sta...](https://www.drupal.org/project/issues/search?status\[0\]=1&status\[1\]=8&status\[2\]=13&issue_tags_op=%3D&issue_tags=Novice) [2] [https://www.drupal.org/u/catch](https://www.drupal.org/u/catch) [3] [https://www.drupal.org/contributor-tasks](https://www.drupal.org/contributor- tasks) [https://www.drupal.org/getting- involved](https://www.drupal.org/getting-involved)

</comment><comment><USER8> I enjoyed this article, because it's just a concise, interesting observation of open-source incentives. There's no grandiose point or sweeping call to action, it just states an interesting observation.

</comment><comment><USER9> An old LKML message that perhaps conveys why / how this is important: [https://lkml.org/lkml/2004/12/20/255](https://lkml.org/lkml/2004/12/20/255)

I think we often forget that sometimes, even just reporting bugs can be incredibly valuable, much less fixing them. Sure a lot of this is thankless work, but many OSS projects don't even get bug reports when they need them most.

</comment><comment><USER10> I liked it very much. Applies not only to open source projects but also to regular software that you get payed for. May be you should not try get satisfaction from recognition, but get it from knowing that you are doing a good job; every day. Let the job be the reward. And yes, programming is a hard job.

</comment><comment><USER11> I'm not sure I'd consider this apathy. My guess is that everyone who considered fixing this over those 8 years instinctively knew it was going to be a leaky fix. And that "fixing" it would likely lead to more bugs.

</comment><comment><USER12> After reading the article, I don't understand why the author didn't fix the bug himself.

<comment><USER13> Are you sure you aren't being passive aggressive? This is a problem with open source software. If you point out a problem one person at least will tell you that you should be the one to fix it.

<comment><USER14> Maybe, but it's hard to be moved and stirred by the author's ethical call to action in the last sentence when he himself clearly can't overcome the behavior he's complaining about.

<comment><USER15> So you are only allowed to point out problems that you yourself don't suffer from?

</comment></comment></comment></comment><comment><USER16> Perhaps we can use deep learning to find bugs in the code?</comment>


Ask HN: What languages and technologies/tools are you using right now? - <AUTHOR>

Hi guys,
I'm writing you because I would really like to know what languages, libraries and technologies/tools are you/we really using.
Why you say? Well you see, I'm curious. I dont really like those "graph" showing which languages are popular, I want it directly from you!
Thanks ;) <comment><USER2> Developing a cooperative game-making platform with C# along with those libraries:

* XNA + MonoGame (multiplatform OSS rewrite of XNA - <https://github.com/mono/monogame>)

* Lidgren.Network (Reliable UDP networking library - <https://code.google.com/p/lidgren-network-gen3/>)

* NuclearWinter (my own UI library - <https://bitbucket.org/sparklinlabs/nuclearwinter>)

* MonoBoxedLua (my own variant of MonoLuaInterface - <https://bitbucket.org/sparklinlabs/monoboxedlua>)

</comment><comment><USER3> Python:

      * Pyramid
      * SQLAlchemy
      * Redis
      * ØMQ
      * eventlet
      * nose
      * Protocol buffers

Coffeescript

require.js

mustache

Bootstrap

Backbone/underscore

moment.js

Websockets

What I really want to use:

Haskell :-)

</comment><comment><USER4> Python, django and bootstrap -- [http://joseph.by/post/22651010430/simple- bootstrap-python-de...](http://joseph.by/post/22651010430/simple-bootstrap- python-dev-environment-for-osx)

</comment><comment><USER5> -Python

      * numpy
      * scipy
      * pandas
      * django

-Hadoop

-javascript

      * jquery
      * angularjs (learning)
      * momentjs

-Posgresql

-twitter bootstrap

<comment><AUTHOR> I would like to find time to learn angularjs too. Seems pretty sleek framework. I've tried meteor stuff and kind of like it, but you still have to write client/server code...

Angularjs seems to being solving this making it much more like building desktop UI right?

<comment><USER5> To my humble understanding of angularjs, the MVC patter is not exactly the one you would understand coming from a JEE background. The fact that angularjs use this pattern means that you should first make your server as a RESTful API, and build everything else on the client side using the framework.

In this way the backend is responsible for deep validations and making the data as json format for later use.

So in the end :

      *Model : data comes from the server json format, becomes jaavscript objects.

      *View: HTML, and directives when you need to manipulate the DOM

      *Controller (also your services):

          ->Queries to the API
          ->Validation (probably duplicate some of your server's side)
          ->Business logic.
          ->Rooting of templates.

You might think that there's a duplication, in terms of controls and validation, but the thing is, you should think of it as two separate level : One for your API (could be used for many purposes), Second a robust, fast client side that deals with data.

</comment></comment></comment><comment><AUTHOR> Ruby

\- RoR

\- RSpec and Capybara feature DSL

\- Sidekiq

\- Rbenv

\- Pry

JRuby (which implies some java stuff ala ruby)

\- Apache Camel

\- Jetty w/websockets

Posgresql

Mongodb

</comment><comment><USER6> In my daily work / projects I actively use every one of the following :

      Servers - Apache, Nginx
      Databases - MySQL, SQlite, Redis
      Languages - Bash, C, PHP, Ruby, JavaScript
      IDE's - Emacs, Vim
      Tools/Frameworks - Git, GCC, GTK, Webkit, Symfony2, jQuery

These are all things I use to build finished software products, I experiment around with Go and Haskell, but haven't used either much for practical purposes (except Go for a few server side things).

</comment><comment><USER7> Right now, at my corporate job in the insurance industry? scala (notably scalaz is banned so I've had to reimplement the bits of it I need) with a little java; spring, hibernate, wicket; oracle, mule, drools. Tool-wise eclipse, subversion (I use git-svn), twist; jenkins, crucible and I'm just in the process of setting up rundeck to replace the collection of bash scripts that currently do deployment. Sonar is running but I don't really look at it.

<comment><AUTHOR> I have a question: I did some experiments with Apache Camel, and you seem much more experienced than me in Java: in your opinion, how does Mule compares with Apache Camel?

<comment><USER7> My opinion is that it's a pointless waste of space that does nothing except slow down development. But I suspect that would also be my opinion of Apache Camel.

<comment><AUTHOR> Is Mule xml based? Sorry, no thanks...

<comment><USER7> There's a pretty good, if underdocumented, interface for configuring it programatically.

</comment></comment></comment></comment></comment><comment><USER8> Javascript: Ember.js / Node.js / Socket.io / jQuery

DB: MongoDB / PostgreSQL

Learning: Java

Novice: Python / RoR

Eventually: Redis

</comment><comment><USER9> My recent projects have been machine learning & data visualization focused:

Python

      * Numpy
      * Scipy
      * Pandas
      * NetworkX
      * Flask

MongoDB

Javascript

      * jQuery
      * D3.js

Twitter Bootstrap

</comment><comment><USER10> I'm using:

Platforms - Android, iOS, web

Languages - Java, PHP, Objective C

IDE's - Eclipse, Xcode

Various technologies in use - jsonengine for GAE, Twitter Bootstrap, Apache server, MySQL

</comment><comment><USER11> Javascript i.e. Ember and jQuery mainly, with some Node.js after work.

A little Obj C in the evenings and weekends.

<comment><AUTHOR> Did you release any iOS or Mac app?

</comment></comment><comment><USER12> Asp.Net MVC 4

C# / VB.Net

Entity Framework with Code-First

SQL Server 2010

IIS 7.5

Twitter Bootstrap

</comment><comment><USER13> At work:

\- Verilog 05

At Home:

\- Java for Android

\- Perl 5.8.8

<comment><AUTHOR> What is Verilog 05 for?

<comment><USER13> <https://en.wikipedia.org/wiki/Verilog#Verilog_2005>

Hardware description language.

</comment></comment></comment><comment><USER14> At work (I'm a physics/mathematics guy developing quantum optical simulations):

Fortran 2003/2008

C++

LaTeX

Sage

Mathematica

Haskell (My initial experiments look promising; ghc+llvm has consistently beaten gcc and gfortran when doing RK4 integration of complicated functions. I'm currently testing array performance with REPA.)

Emacs

Dislin (Looking for a replacement, since it's a real pain to use)

Charm++ (Looks promising, but also seems hard to use.)

MPI

At home: Haskell

<comment><AUTHOR> Wow, nice set of tools! How all that fits together to write a simulator? I mean how (or when) does Haskell interacts with C++ code?</comment></comment>


The Bizarre and Fascinating Nature of Duck Sex - <AUTHOR> http://modernfarmer.com/2014/02/fascinating-nature-duck-sex/ <comment><USER2> zeFrank also covers this in his True Facts: [http://www.youtube.com/watch?v=6k01DIVDJlY](http://www.youtube.com/watch?v=6k01DIVDJlY)

A masterpiece of silliness.

</comment><comment><USER3> That... changed my view of ducks completely.. unfortunately.

</comment><comment><USER4> Amazing!! :)</comment>


Sumstack.com - <AUTHOR> https://sumstack.com <comment><AUTHOR> Completely eliminates all the hastle of surfing the web.</comment>


UW team stores digital images in DNA – and retrieves them perfectly - <AUTHOR> http://www.washington.edu/news/2016/04/07/uw-team-stores-digital-images-in-dna-and-retrieves-them-perfectly/ <comment><USER2> sweet!</comment>


Fighting cancer with the power of immunity - <AUTHOR> http://news.mit.edu/2016/fighting-cancer-power-immunity-1024 <comment><USER2> For those out there who revile the Koch brothers:

      The research was funded by the Koch Institute</comment>


Show HN: Parents, would your kids like these videos and stem activities? - <AUTHOR> https://youtu.be/LJwtZ-40RmA?t=27 <comment><AUTHOR> Hey, I am a scientist mum of twins and a science educator. I created a series of videos with quick STEM educational activities for young kids and parents/educators to watch and play together, in parallel to the video. I only use household items and aim for very very low cost & quick preparation so you can do it together with your little ones avoiding long boring preparations! The videos are playfully designed encouraging kids to feel happy and excited for science activities so they can have fun and learn:)

For example, here is one of my stem activity videos

this is a super fun and easy surprise paper craft for young kids that young kids can easily do with a few household items. It stimulates imagination, creativity, symmetrical and spatial awareness, hand-eye coordination, scissors skills & patience, and perseverance.

Would your little ones like this video and activity? Please give your feedback!

Thank you so so much!

<comment><USER2> Can't believe I get to interact with a creator my daughter absolutely loves and adore. She loves watching all those mini science experiments and often demand that we (parents) recreate those experiments for her to see it live.

Thank you so much for what you do.</comment></comment>


Career on the Move: Geography, Stratification, and Scientific Impact - <AUTHOR> http://www.nature.com/srep/2014/140424/srep04770/full/srep04770.html

<comment><AUTHOR> It's a dense paper, but one of the conclusions is that when a academic moves from a low-rank to a high-rank institution, their papers do not change in 'impact'. I find this encouraging, as it implies that (at least in physics) papers are judged more by their intrinsic qualities than their originating institution.

The Economist offers a gloss entitled "Why climb the greasy pole? Getting a job at a top university will not make you a better researcher": [http://www.economist.com/news/science-and- technology/2160181...](http://www.economist.com/news/science-and- technology/21601811-getting-job-top-university-will-not-make-you-better- researcher-why-climb)</comment>


Secret German Intelligence IP Addresses Leaked - <AUTHOR> http://wikileaks.org/wiki/German_Secret_Intelligence_Service_(BND)_T-Systems_network_assignments,_13_Nov_2008 <comment><AUTHOR> The article notes that German Intelligence actually edited their own Wikipedia article (from the suspect IP) to remove speculation that it belonged to them.

"An examination of Wikipedia edits from the IP ranges reveals that along with a lot of standard edits, the German Wikipedia entry for the BND itself was modified. The claim suggesting that foreign offices of the Goethe Institute serve as unofficial cover for the BND, was redacted by the suspect IP."

Apparently they also corrected misinformation about explosives.

"Other edits include corrections on explosives related content, military aviation — and detail on how to build a more efficient plutonium 'dirty bomb'"</comment>


Wheeler Resolution of 1938 - <AUTHOR> https://en.wikipedia.org/wiki/Wheeler_resolution <comment><AUTHOR> >...it is the sense of the Senate of the United States of America that the operation of radio broadcast stations in the standard broadcast band (550 to 1600 kilocycles) with power in excess of 50 kilowatts is definitely against the public interest, in that such operation would tend to concentrate political, social, and economic power and influence in the hands of a very small group, and is against the public interest for the further reason that the operation of broadcast stations with power in excess of 50 kilowatts...</comment>


Show HN: Change screen layout when connecting/disconnecting monitors - <AUTHOR> https://github.com/jlpc/xoutputd <comment><USER2> For reference, there's also autorandr [1] and x-on-resize [2].

[1] [https://github.com/wertarbyte/autorandr](https://github.com/wertarbyte/autorandr)

[2] [http://keithp.com/blogs/x-on-resize/](http://keithp.com/blogs/x-on- resize/)

<comment><USER3> This is a good documentation for autorandr: [https://help.ubuntu.com/community/DynamicMultiMonitor](https://help.ubuntu.com/community/DynamicMultiMonitor)

</comment></comment><comment><USER4> I have a little python script to do a similar thing:

[https://github.com/larkery/nix- session/blob/master/scripts/d...](https://github.com/larkery/nix- session/blob/master/scripts/displays)

This remembers the randr state that's associated with plugged in displays by their EDID and the ACPI lid switch. When you change the randr state, it remembers it, and when you change what displays are connected or open the laptop lid, it loads a previously remembered state if there is one. The state saving and loading is done by arandr, which handles the resolution, position, and choice of primary output.

<comment><USER5> I used a bash script to do this, until I got a laptop that has only a mini- display port. Now I don't/can't connect to anything :(

<comment><USER6> Why? you would've needed a cable anyway, so not owning the right one is no excuse, (m)DP can connect to pretty much anything using cheap _passive_ adapter cables.

</comment></comment></comment><comment><USER6> This is exactly what I needed, gonna put it in my window manager startup script. I already wrote a dock and undock script for my laptop a while ago, which I still had to run manually, so this is the perfect addition to that script. Though I had some problems compiling it. For others who want to try it: On some systems (gentoo here) flex replaces lex and you need to use -lfl to link it, even though lex seems to be ususally a symlink to flex, there is no symlink for the libraries. Also on some distributions yacc doesn't seem to come with liby anymore, just remove the -ly from cflags.

TL;DR: Replace "LDADD+= -ll -ly -lX11 -lXrandr" with "LDADD+= -lfl -lX11 -lXrandr" to make it compile on Gentoo. Make sure yacc and flex are emerged.

<comment><AUTHOR> Thank you for your comment, I tested on Debian jessie, and OpenBSD only. I will try to make the build more compatible to other distro/OS.

</comment></comment><comment><USER7> May I ask what desktop environment you use, and what you usually use this for?

I ask because a good DE should remember the settings pertaining to each monitor configuration (display positions of course, but also things like panels placed in secondary monitors). I've been using Plasma (KDE) for about a year and it handles this reasonably well.

<comment><USER8> Lots of people don't use any "desktop environment." I just use ratpoison, for example.

<comment><USER7> Well, call it a "window manager" then, it still should handle this. But that's just my opinion of the responsibilities of WMs/DEs/whatever you call them, and I understand that some don't.

<comment><USER9> No, handling screen layout isn't the _window_ manager's responsibility. That's what external tools like xrandr and its various GUIs are for.

</comment></comment></comment></comment><comment><USER10> As an i3wm user I couldn't be happier

<comment><AUTHOR> I'm glad it is useful for someone else.

</comment></comment><comment><USER11> Here is my script that supports scaling up if your main monitor is hidpi while the external one is not:

[https://github.com/rndstr/dotfiles/blob/master/bin/monitor-h...](https://github.com/rndstr/dotfiles/blob/master/bin/monitor- hotplug)

</comment><comment><USER12> For those on Mac, Slate will do the same thing: [https://github.com/jigish/slate](https://github.com/jigish/slate)

<comment><USER13> Actually for those on the Mac, OS X will do the same thing. It tries to at least (not 100% reliable).

<comment><USER12> "xoutputd is a daemon that monitors the connection state of outputs and then executes commands based on defined rules."

I'm not aware of anything built in to OS X that allows you to execute scripts to perform custom actions when displays are connected/disconnected. OS X just tries to replicate the last layout you had.

* Plugged into your desk monitor? You can have Slate hide Steam and put MacVim & iTerm side by side. * Plugged into your TV? You can have Slate run a script to make sure your Plex server is up and then full-screen your browser. * Etc.

</comment></comment></comment><comment><USER14> [https://en.wikipedia.org/wiki/Udev](https://en.wikipedia.org/wiki/Udev)

<comment><AUTHOR> I wonder why I didn't think about it when looking for a solution at my problem.

</comment></comment><comment><USER15> KDE does this automatically. I'd guess there is similar functionality for other DEs too.

<comment><USER16> The MATE DE seems to handle this pretty well too.</comment></comment>