Setting Up a Local Development Environment in Chrome OS - <AUTHOR> http://jeremyckahn.github.com/blog/2013/02/09/setting-up-a-local-development-environment-in-chrome-os/

<comment><USER2> This isn't setting up a local dev environment in Chrome OS. This is setting up a local dev environment on a Chromebook. I was hoping this would show some new way to actually develop in Chrome OS itself, just saying "boot into Ubuntu!" is a lazy answer.

</comment><comment><USER3> Having just set this up, I'm really digging it.

If you're unsure whether or not a Chromebook is the right system for you, check out the specs[0]. Note that the Chromebook isn't extremely powerful, but that is not the product's goal.

Back to Ubuntu/Chrome: Rather than install Unity (which I actually don't mind on some systems), I opted for the actual crouton dev team's recommendation of XFCE[1].

XFCE is made for an underwhelming environment, and its performance is better than what Unity would probably offer.

You can in fact switch between Chrome-os/Ubuntu with 3 or 4 key presses, depending on your chromebook model. Your install likely won't come with vim, git, etc. installed as ujeezy noted, but if you're familiar with gnu/linux, you already know you what you want from your environment.

I, like many of you, have a couple of computers to lug around: Work laptop (windows), Macbook (expensive shiny development tool). Being that I really have come to enjoy the macbook's battery life, even when using lots of high- resource tools/windows, I'm not sure where this chromebook will fit in. Breaking my macbook scares me, but so does being without it.

If you have a chromebook, definitely try this out. I was expecting to have to deal with lots of issues, but the install was extremely smooth (other than the downloads coming in at 20-30kb/s).

Things to note:

* Make sure you read Crouton[1]'s readme - there are a few potential 'gotcha's in there.

* Disable XFCE or Unity's screensaver.

* As ujeezy noted, you'll need to install vim/emacs, git, gcc, etc.

* While nice, and amazing for what it is, this will probably not replace your default dev environment, unless you exclusively use programs that aren't resource intensive, and/or only exist in terminal.

[0] [http://www.google.com/intl/en/chrome/devices/samsung- chromeb...](http://www.google.com/intl/en/chrome/devices/samsung- chromebook.html#ss-cb)

[1] <https://github.com/dnschneid/crouton>

</comment><comment><USER4> The real question is why have we devs been forced to bastardize this OS since 2009 in order to actually use the darn thing? Where's the innovation Google? Where's the Chromebook for Devs? Because I bet if we looked at the numbers, we're the only ones buying these things anyways.

<comment><USER5> Ummmm. It _is_ possible to run a full-blown Ubuntu including arbitrary kernels etc. Some are doing it.

This is just an easier method if all you want is access to a powerful Debian userland: it turns out that Debian already solved the problem of creating a self-consistent cross-compiled directory tree ages ago so it makes sense to reuse that solution here.

<comment><USER4> Ubuntu is still not ChromeOS -- my point is simply, why has Google not pursued the "lets build a $250 dev box for startups" avenue... since we've been playing this game going on 4 years now with not much traction beyond the dev community.

<comment><USER6> Do these machines have traction in the dev community? Aside from a couple of blog posts like this, I haven't really seen much.

AFAIK, most sales are still to schools and a few enterprise installations: [http://techcrunch.com/2013/02/03/maybe-those-chromebooks- wer...](http://techcrunch.com/2013/02/03/maybe-those-chromebooks-werent-such- a-crazy-idea-after-all/)

"Still, with over 2,000 schools now using Chromebooks, the real market for these devices sure seems to be in the education space. Over the last year or so, I've heard from a number of educators that they prefer to use Chromebooks with their students than an iPad (their students probably think the exact opposite…). Not only are they obviously cheaper and come with service contracts and management consoles for administrators, but having a full keyboard and larger screen clearly make them attractive devices in the view of many teachers and school administrators. The fact that the devices auto-update regularly and are pretty much safe from viruses also makes for an attractive selling point when compared to traditional laptops. For Google, of course, this also means many of these kids will grow up in the Google ecosystem of Gmail and Google Drive, which surely isn't going to hurt it once these students go on to college or get jobs."

</comment></comment></comment></comment><comment><USER7> I love my chromebook so I'm fairly interested in doing this. I have two questions: 1) How does having a chroot environment affect battery life? Does access to the Ubuntu tools cost a ton of battery? 2) After I go into developer mode can I still get updates to Chrome OS?

<comment><USER8> Article author here. Anecdotally the battery life takes a bit of a hit, but I've been running it pretty hard to get everything installed. I haven't done any tests. I have a suspicion that Chrome limits its CPU usage, and the chroot does not. That said, the battery life isn't completely shot in the chroot.

I got my Chromebook on Monday, so I haven't updated it after initial boot. I'm not sure about the updating issues, but you can always go into non-Developer Mode and update from there. If that causes problems for the chroot, it's really easy to back up the chroot (it's just a directory) and reinstall it with Crouton: [https://github.com/dnschneid/crouton#you-want-to-make-a- boot...](https://github.com/dnschneid/crouton#you-want-to-make-a-bootstrap- tarball-and-create-a-chroot-from-that)

So in other words, I can't answer any of those questions yet, sorry!

<comment><USER7> Thanks for the preliminary response. I am very tempted to do all of this "hacker" stuff to my Chromebook but I'm worried that's a slippery slope. As is I have no local files, no battery worries, so it's essentially a maintenance free machine. Once I start doing local work I'm going to want more and more until it's basically just a netbook. I think it's maybe good for me to have a machine where I can't constantly be tinkering.

<comment><USER9> There's always USB booting [0], you can still tinker but can't muck up CrOS

[0] <http://archlinuxarm.org/platforms/armv7/samsung-chromebook>

<comment><USER10> If you did this, would there be a significant lag from i/o? I assume sticking a Class 10 SD card in it and booting archARM would be pretty quick, but still slower than the SSD that ships with the machine.

<comment><USER9> Haven't tried on this machine specifically, but never noticed much lag as a result of running from USB on others. There is a USB3 port on the back if you're concerned about performance (just remember this is a $250 ARM laptop, not a MacBook Pro).

</comment></comment></comment></comment></comment></comment><comment> kostya-kow Is there a way to run a distro other than Ubuntu (Fedora, Arch)?

I am planning to buy the x86 version, so it seems like it should be possible to install any distro on it. Is Crouton/ Chrubuntu for ARM version?

<comment><USER11> I can't speak for fedora (possibly febootstrap?) but it is already easy to install Arch in a chroot.

<https://wiki.archlinux.org/index.php/Archbootstrap>

If ChromeOS doesn't provide you enough tools to run archbootstrap, you can run archbootstrap on a separate machine with the chrome disk attached and then put the disk in the ChromeOS laptop. A bit of hassle but perfectly doable.

</comment></comment><comment><USER12> Vim version referenced is horrifically out of date.

Their dev trunk is pretty stable, it'd be good if he'd update the post.

<comment><USER8> Article author here. I can try a newer Vim when I have some time and update the post, this was just the first thing I got working. Thanks for the heads up.

</comment></comment><comment><USER13> I know the OP was interested in unix tools, but I've been wondering could you build a lightweight IDE or dev toolset in chrome itself? It looks like action.io and cloud9 have been some nice browser based tools, but what about building something using google native client that runs locally in chrome?

<comment><USER7> This. I have been considering trying but I have no experience with such tools so I think the task would be a little bit beyond me. I can't see a reason why Cloud9 couldn't make an offline version for Chrome, minus a few features.

</comment></comment><comment><USER14> What about something like sublime text 2? You can't really use it via a shell, so would you end up running in a full Ubuntu install anyways?

<comment><USER10> While Sublime Text is nice (and rather attractive), many people still prefer vim and emacs. It's a matter of personal preference, in the end, as both vim and emacs are quite extensible. With the existence of tools such as YouCompleteMe, syntastic, delimitmate, etc., one can outfit vim with the functionality of Sublime Text or even some heavier IDEs in a matter of minutes (using vundle and pathogen to handle the extensions). My largest reason for preferring vim is its presence by default in almost every UNIX system I've touched. I just have to pull my .vimrc over to whatever machine I'm working in, if I'm spending enough time there to warrant it, and I'm almost immediately at home.

I'm a vim guy so I can't really speak on emacs, but I imagine things work in a similar fashion.

</comment></comment><comment><USER15> You should try Action.IO: <https://www.action.io/>

<comment><USER16> He covered web based IDEs and also having a dev machine to ssh into, most people have either no internet or shitty internet outside of their home and work. How does action.io solve that?

<comment><USER17> > most people have either no internet or shitty internet outside of their home > and work

we think this is a situation of "skating to where the puck is going to be, rather than where it is", but we do have plans to build a bridge between an offline/online dev environment. If you'd like an invite, please email me at arun <at> action <dot> io

<comment><USER18> Is there any reason you couldn't keep an offline copy of the environment in the browser by using <http://bellard.org/jslinux/>? It takes a while to boot, but if you saved the RAM to local storage then it should resume instantly.

You'd have to sync the state of the VM when they come online again, but that could be done efficiently from within the VM in a manner similar to dropbox syncing.

</comment></comment></comment></comment><comment><USER19> I dont get it , for the price of a chromebook , one can get a netbook with a full linux plateform to install whatever stack one needs (and ides like netbeans/eclipse/sublimetext2...) , what's the point being a chromebook for development purposes ? ( it is a question not a rant against chromebooks )

<comment><USER9> The ARM Chromebook looks to be a much nicer piece of hardware than anything under $250 on Amazon's top 20 list of netbooks[0]; bigger screen, dead silent (no spinning HDD, no fans), great battery life, and a keyboard/touchpad better than nearly every low/mid-end PC laptop I've used.

And you lose this benefit if you go outside CrOS as described in the article (I'm fine using it as a SSH terminal myself), but they're more or less disposable. I could chuck mine out the window, watch it get trampled in a conveniently timed parade, run out to Best Buy and pick up another one, and I'm right back where I was minus only $250 and an hour (incl. drive time and re-syncing).

[0] [http://www.amazon.com/Best-Sellers-Computer-Accessories- Netb...](http://www.amazon.com/Best-Sellers-Computer-Accessories-Netbook- Computers/zgbs/electronics/1232596011/)

<comment><USER19> ok , so it is for the SSD ?</comment></comment></comment>


Show HN: Locklock.io – Lock-as-a-service, REST API for easy distributed locking - <AUTHOR> https://locklock.io <comment><USER2> Left this comment in your live chat, this doesn't appear to have any provision for supporting fencing. This means it will not work under many common failure scenarios.

[https://martin.kleppmann.com/2016/02/08/how-to-do- distribute...](https://martin.kleppmann.com/2016/02/08/how-to-do-distributed- locking.html)

<comment><AUTHOR> Great point, thanks for your comment!

We stayed away from implementing more advanced locking features in the initial version, but since it came up this early we'll definitely work on it.

</comment></comment><comment><AUTHOR> We built Locklock mainly because simple patterns of distributed locking kept coming up in our system designs.

The common use case is ensuring multiple components of a distributed system take turns accessing a shared resource.

A special case of that is guaranteeing a particular operation takes place at most once. For example, some AWS services guarantee at-least-once delivery, but sometimes consequences of these events need to execute exactly once. To accomplish this, simply acquire a lock for the identifier representing the originating event and don't release it.

Our secondary motivation was to unify locking logic across components of a distributed system, which may be written using different programming languages or deployed accross multiple cloud providers. By using Locklock, they only need to know how to communicate with a simple REST API.

Would really appreciate feedback from the community!</comment>


Ask HN: Kelp Farming? - <AUTHOR> Hacker News is full of communities across a diverse range of industries, but I haven't heard much about kelp farming and the business' in-between on here.<p>So, I'm hoping if you're in this space, reveal yourself and share your story :) <comment><USER2> No story, but I'm intrigued. What got you started on this?</comment>


Hacking Docker Remotely, interesting read - <AUTHOR> https://hackarandas.com/blog/2020/03/17/hacking-docker-remotely/ <comment><USER2> In case this gets lost to the depths of HN New, thank you very much for posting this. Awesome writeup.</comment>


Mobile Web in High Resolution - <AUTHOR> http://bradbirdsall.com/mobile-web-in-high-resolution

<comment><USER2> Pretty interesting, though the examples look better at the original 2x resolution on an iPhone. The resolution is so high that the single pixel borders almost disappear, losing the 3d effect.

CSS should accept decimal values for border width, like it already does for other properties.

</comment><comment><USER3> With due respect to the writer, posts like this only reinforce the notion that if you're using resolution-dependent pixels to specify layout for multi- resolution screens, you are already conceptually broken because you are resorting to unnatural techniques to obtain the desired output. Using real world units like inches or centimeters are the way out here. FWIW, banning pixels is an old topic of discussion with regards to resolution independent displays.

<comment><USER4> Do you know of any good examples of CSS-based layouts using units like inches or centimeters?

When I do mobile web, I use percentages for UI layout elements (like headers, footers, sidebars, etc), and pixels for text, buttons, etc.

This approach definitely results in a slightly different display on different screen resolutions, but the overall effect is that it looks good and is usable no matter where you view it. For me, this is the approach I've found that "just works", so I keep using it.

That said, I don't think I've ever seen centimeters and inches used in any CSS I've come across, but I'd love to see some examples that are well done.

<comment><USER3> Disclaimer: I'm not a CSS guy. That said, I doubt that many CSS practitioners use real world units due to legacy. But the argument still stands that the _only_ sane answer to handling resolution-independent layout is to start using real world units and the sooner web interfaces migrate to it the better. Think of it as a jobs program for web designers. :)

</comment></comment></comment><comment><USER5> Am I the only that feels that while, yes, the original "low-res" examples do look different on a high-DPI display vs traditional resolutions, they don't necessarily look worse?

It's just different. No one says they have to be identical, and IMHO the original does not look _bad_ on an iPhone screen.

</comment><comment><USER6> Alternatively, use a viewport meta tag to set the minimum and maximum zoom to 0.5

</comment><comment><USER7> Seems like this kind of resolves the issue for the border property but is not suitable for others?

</comment><comment><USER8> On the iPhone 1px means 2px? Where was the rage? If Microsoft had done this, everybody would scream about distorted web standards.

<comment><USER9> 1px means 2 pixels on "retina" displays (iPhone 4). On some recent Android phones 1px = 1.5 pixels.

CSS1 says "Pixel units are relative to the resolution of the canvas, i.e. most often a computer display. If the pixel density of the output device is very different from that of a typical computer display, the UA should rescale pixel values." <http://www.w3.org/TR/2008/REC-CSS1-20080411/#length-units>

Apple's explanation of their implementation: <http://www.webkit.org/blog/55/high-dpi-web-sites/>

There was intense discussion at the time, but ultimately this rule exists for a reason and is beneficial in virtually all situations.

</comment></comment><comment><USER10> Great work!</comment>


Ask HN: Outreach for Covid-19 longitudinal study proposal? - william-at-rain I'm failing at finding development help for a COVID-19 study initiative. I could use your ideas and critiques.
https://gist.github.com/williamflynt/a1595665b8bf4e30a2a493f...
BACKGROUND:
A small nonprofit called RAIN in Tacoma just bought and set up blood gathering and testing equipment, and they have an antigen test for SARS-CoV-2 ready to go. Sample collection starts next week, with an eye to scaling to many thousands in the Tacoma area. PhDs in immunology, microbiology, and virology are heading up the effort.
They need some technology beyond what they know on the market, and (since it's a nonprofit) they called up volunteers. I'm a volunteer, and I wrote the markdown doc in the gist.
The idea is to make longitudinal studies possible for persons that are tested for COVID-19.
How can I find help to make this happen for our town? <comment><USER2> Check out the OpenCovid19 Initiative[0]. They have many ongoing sub-projects and a dedicated slack channel for developers. You may find help for your project or that something similar is already in the works.

[0] [https://itsfoss.com/opencovid19/](https://itsfoss.com/opencovid19/)

<comment> william-at-rain Thank you!

</comment></comment><comment><USER3> We've been running a longitudinal self-reported diagnosis, conditions, and risk exposure study. There are many challenges in this [0, 1], but plan to keep collecting into the foreseeable future. Currently operating on a global scale, but could be targeted to a specific geographic region.. - <AUTHOR> (email@example.com)

[0] [https://www.bmj.com/content/351/bmj.h3480.full](https://www.bmj.com/content/351/bmj.h3480.full) [1] [https://bmjopen.bmj.com/content/1/2/e000234](https://bmjopen.bmj.com/content/1/2/e000234)

<comment> william-at-rain Thanks - I'll reach out.

</comment></comment><comment><USER4> Bowhead Health is working on a similar initiative for COVID-19 and we welcome a potential collaboration email@example.com

<comment> william-at-rain Thanks - I'll reach out.

</comment></comment><comment><USER5> I am one of the founders at Luma Health. We may be able to help you out. We could offer app less way of following patients and getting responses from them.

Here is a short video on what is possible: [https://youtu.be/escWi- ZuGRo](https://youtu.be/escWi-ZuGRo)

<comment> william-at-rain It looks like you send an automated text to a questionnaire. That's a much simpler way to start, and a text is a great "push notification"... :-)

</comment></comment><comment><USER6> Email is in my profile. We launched a citizen science app that already handles thousands of participants in our first two studies. Lots of alignment with where you're going, and at the very least we can offer some advice.

<comment> william-at-rain Emailed. Thank you.

</comment></comment><comment><USER7> Nice initiative but you'll struggle to publish the app on the app store and Google play(mildly put) with all their restrictions in relation to COVID19.

<comment> william-at-rain I wonder if there is a way to engineer our past that in the first month.

Maybe a web-based PWA while we wait for approval.

And not specifically calling it a COVID-19 app.

<comment><USER7> I am in fact with Google and Apple on this one - just don't. There's way too much misinformation and speculation already. Not necessarily a result of malintent, just the way sensations work these days as a result of the cattle mentality demonstrated by the masses I'm afraid.

For many years I've been strongly opposing the so-called "wisdom of the masses".</comment></comment></comment>


The Weather Channel has stopped publishing video on Facebook - <AUTHOR> https://digiday.com/media/the-weather-channel-has-walked-away-from-facebook-video/ <comment><USER3> "We went along for the ride every single step of the way [with Facebook]... But we noticed, over the course of two years, that we were being paid in all types of currencies — followers, shares, views — that did not feel like money."

</comment><comment><USER4> _> "It has been good for Facebook, but it hasn't been good for us."_

I hear this more and more from my friends in publishing and broadcasting. Sales likes to brag about "followers" and such, but it never translates into real money.

<comment><USER5> This isn't just a problem with facebook, but with marketing in general. People care about a lot of metrics (e.g., media metrics such as positive/negative buzz) that don't make a jot of difference to the top line of a company, and make a difference to the bottom line only because of the amount of money spent on trying to move them[1].

[1] Of course, there are exceptions: arguably Ratners jewellers in the UK would be an example.

<comment><USER6> I sat in a meeting where the VP of marketing was touting the rate of users who viewed the entire YouTube ad for some new ads we put out, as opposed to users skipping the ads. This was a huge success, VP and CEO repeated this great news for a good year.

Almost every ad was below the threshold where YouTube would put up the "skip" option at that time, so users really had no choice but to watch it all. "Success" was guaranteed purely based on the length of the ads.

No effort was made to actually tie anything to sales, money of any sort, except MOAR marketing staff and budget... hiring freeze for tech support and so on...

<comment><USER7> Sounds like it was a terrific success based on the metric tested. They wanted viewers to see the entire ad, and making a shorter ad guaranteed that...

Video advertising doesn't generally trigger an immediate call to action; it's always been a tool of brand awareness, so why would you want to have a longer ad if most users simply skip over it?

<comment><USER6> It was a success based on the metric. It also could not have had any other result than success based on the % of ads that could not be skipped. There was no other possible outcome.

<comment><USER8> I usually close the tab if a YouTube ad starts. I rarely care about a video enough to sit through an ad for it.

</comment></comment></comment></comment></comment></comment><comment><USER9> Hopefully advertisers are waking up to the fact that Facebook is as much a bait-and-switch for them as they are their users.

<comment><USER10> There's a confusion and conflation of terminology here, even if the original meaning can stand on its own too.

The Weather Channel isn't an advertiser here. They're a user -- a corporate one, but they supply content they want others to view. Facebook has scaled back the organic effectiveness of creator-owned pages in an effort to drive more traffic to paid advertising. The Weather Channel is simply noticing that they're giving away content for free, and whatever benefit they derive from this content on this particular medium doesn't make up for how much it costs to produce.

</comment></comment><comment><USER11> Facebook needs to start treating their video platform more like a YouTube competitor, that pays content-creators real dollars.

If they stay on this path where they try to force all consumers and creators to be on their platform without incentivizing, people will eventually get upset enough to leave.

</comment><comment><USER12> One of the major Danish news papers is e perimenting with not using Facebook. So far their visitor count is diwn, but by less than they expected and the visitors they get spend more time and more money, so it's looking like a win win.

Ironically you can still share their articles on Facebook by clicking the big blue Facebook button at the top of an article, but hey it's a start at least.

<comment><USER13> Do you have the name of the media you are referring to? Thanks!

<comment><USER12> Yes, information.

I've got a link for you as well, but it's in Danish.

[https://www.information.dk/indland/2018/05/tag-dit- newsfeed-...](https://www.information.dk/indland/2018/05/tag-dit-newsfeed- tilbage-information-dropper-facebook)

</comment></comment></comment><comment><USER14> > The Weather Channel found it was only making $28 per minute of video > produced. For comparison, Katz pointed out how the CBS reality show > "Survivor" cost $45,000 per minute to make in 2009.

Can they make up for it by hosting the content themselves, combined with advertising?

<comment><USER15> How are these a comparison? One is revenue, the other is cost. How much revenue resulted from the $45k/min cost?

</comment></comment><comment><USER16> I'm surprised that with 500 millions followers on facebook they were not able to grow some revenue. Plenty facebook broadcasters make 6 figures with way less followers by doing product placement or by sharing other channels contents for a fee. Was the Weather Channel forbidden to do these kinds of partnerships and if not why didn't hey do some?

<comment><USER17> > Was the Weather Channel forbidden to do these kinds of partnerships and if > not why didn't hey do some?

They probably didn't reshare anything because they are already a part of NBC Universal. Thus, they already have other sources of funding that would dwarf anything that product placement or paid placements could achieve.

Keep in mind that video itself is ultimately TWC's main product, not whatever they post on Facebook. As long as they can broadcast their video somewhere, they will be okay.

There's also the clickbait issue. Pages that begin to repost as a revenue generator face a death spiral down to clickbait posts. TWC probably wanted to cut it off before such a thing ruined their brand.

<comment><USER18> >There's also the clickbait issue. Pages that begin to repost as a revenue generator face a death spiral down to clickbait posts. TWC probably wanted to cut it off before such a thing ruined their brand.

There's already a lot of clickbait on weather.com.

>Runaway Boat Sucked Into Dam, But the End is the Best Part

>Is Your Home's Electricity Safe? 5 Things to Check

>6 Tips To Allergy-Proof Your Home For Spring

There's also an article with this[0] image and the title "Odds of Development Increasing - here's what we know".

These all have a CSS class "js-sponsored-title", so there probably is some kind of kickback installed

[0] [https://dsx.weather.com/util/image/map/DCT_SPECIAL9_1280x720...](https://dsx.weather.com/util/image/map/DCT_SPECIAL9_1280x720.jpg)

</comment></comment></comment><comment><USER19> ive never cared much for the weather channel. After the whole snafu about their own pet names for winter storms I think they lost a good deal of credibility as anything more than a paid wrapper for noaa.gov.

wttr.in is a good service you can get on nearly any device.

<comment><USER20> I'm a long distance trucker (my 6th career), and I'd like an app or site that will give me weather over two or three days along a 1000 to 2000 mile path. Anyone?

IIRC, I found something somewhere under weather.gov, but it was difficult/tedious to use on a smallish android phone; the associated API seemed more promising, but for the moment I'm either driving, decompressing or sleeping.

<comment><USER21> [https://www.weatheronwheelshome.com/](https://www.weatheronwheelshome.com/)

<comment><USER20> Thanks. Google play doesn't seem to be able to find it, not by a search, and not by the link from their web page. I tried getting weather from their web page for a trip I'm starting soon, but I just got a "this is embarrassing" response.

But, google play suggested other apps, so I'll try them. I appreciate your pointer.

<comment><USER22> My dad is a farmer, and uses DTN for weather information. It's a paid service, not 100% sure of the price, but it provides excellent weather information. I see they offer a product tailored for transportation: [https://www.dtn.com/industries/weather/transportation/](https://www.dtn.com/industries/weather/transportation/)

Their mobile site isn't the greatest, but it is usable. I've used it for trip forecasts before, it works well. Edit:one great thing is no ads, weather.com is unusable w/o an ad blocker, but this being a monthly payment=no ads to deal with.

</comment></comment></comment></comment></comment><comment><USER23> Sounds very similar to Disney wanting to go alone and pull out of Netflix. Content creation is expensive and digital platforms either need to create their own stuff or pay up.

[https://www.cnbc.com/2017/08/08/disney-will-pull-its- movies-...](https://www.cnbc.com/2017/08/08/disney-will-pull-its-movies-from- netflix-and-start-its-own-streaming-services.html)

<comment><USER24> That doesn't seem comparable. Netflix and YouTube both have specific monetization systems, where a cut of the revenue goes to the content creator.

Facebook doesn't seem to have anything like that. You can pay to appear on there, you cannot _get paid_ to appear on Facebook.

</comment></comment><comment><USER25> Funny story regarding The Weather Channel back in the day when cable television was the new thing in the UK.

Two networks doing just weather launched at approximately the same time - <USER2> Weather Network and The Weather Channel. The Weather Network sold to the many cable operators that existed then (before they merged into what would eventually be rebranded into Virgin Media) and The Weather Channel paid to be on Sky - essentially a satellite operation.

The Weather Network had boxes in the cable head ends that did local weather inserts, all done by computer with some music, glorified 'pages from ceefax' mixed in with presentations from the studio for weather in the UK and internationally. The Weather Channel had no localisation.

The Weather Network offered a legit service, who doesn't want to find out what the weather is from their TV? Particularly if it does have the local details. This could be done on a budget as the partners that setup the company already had the data from forecasting for airports etc. as well as the fairly simple boxes for the cable head ends. The product sold itself and never had ambitions to be competing with the big shows on the BBC for eyeballs. It was a simple service that did what it said on the tin.

Meanwhile, The Weather Channel paid top dollar for presenters, paid to be on Sky and had quite a lot of people marketing the service. So adverts were paid for in newspapers, on the Tube trains and elsewhere. They had left the product behind so they decided to buy The Weather Network and use that tech.

So the companies merged and still the marketing hubris ruled the roost. The people with clipboards and power suits were in control, hiring more minions and interns. At The Weather Network there were none of those people, the forecasters ruled the show and the presenters invariably had a background in meteorology, gained from working in the Royal Navy or with a decent degree from Reading University (the place for meteorology).

Then, one day, boss man from The Weather Channel came over from the USA. Realising that the lunatics had taken over the asylum he decided to close the whole lot down. That was the end of that, plug pulled.

The better presenters actually made good careers for themselves because the BBC had launched News 24 and needed weather presenters. So these guys got lucky and no longer had to work for the marketing people. They could actually do weather (which is more like betting on horses than anything scientific - you read the 'form' and place your bets).

Not sure what happened to the marketing folk but I am sure they have lots to say about themselves on LinkedIn.

What was unfair in the UK market was the government. In the USA if the taxpayer pays for something then it is free for the citizens to use. In the UK with the Conservative government the idea was for the Met Office to compete, giving them a huge advantage over genuine private enterprise.

This also happens more generally with the BBC. How can anyone operate a news website when the BBC do a pretty good one for free, with no adverts? It is not fair.

Anyway, I am pleased to hear that The Weather Channel are again prepared to pull the plug on lousy business propositions after giving a bit of time for things to run their course. It keeps them innovating (even if they are under different ownership now).

</comment><comment><USER26> Fake news? ;-)

</comment><comment><USER27> Can I take this opportunity to complain about how poor the [http://weather.com](http://weather.com) search autocomplete is? "Princeton" doesn't list New Jersey, and "France" has no results in France.</comment>


What a Computer Really Is - <AUTHOR> http://seandenigris.com/blog/?p=1092

<comment><USER2> A computer is a machine which you can use to "simulate" a set of rule. Any other definition is just pure fantasy and hand waving.

<comment><USER3> I like the fact that i's purely syntactic reordering between two encodings.

        2 > __x_
        1 > ___x
             |
            (ADD)
             |
        3 < __xx

</comment></comment><comment><USER4> "Programmers: You Probably Don't Know What a Computer Is" is too baity a title for Hacker News.</comment>


Ask HN: Is Bash for Windows good enough to replace a Linux/Mac terminal? - <AUTHOR> Planning to buy a Surface Pro after using a Macbook Pro for a few years. I did own a SP2. The only reason I shifted was for unix tools in a solid brick.
Is BFW good enough? Or VM/Dual-boot the way to go still? Or should I wait for Surface Book refresh?
What problems have you faced in dual-booting Linux in Surface Pro. <comment><USER2> For what purpose? What do you current do with Linux that you want to use the bash subsystem for?

<comment><AUTHOR> I do work that can be termed as data science. Mostly R/Python etc. I also like tinkering with things like RPi. Also bash scripts to do mundane work.

</comment></comment><comment><USER3> Linux is good enough to replace windows. I think that is what you were attempting to get at.

<comment><AUTHOR> Nope. I am referring to Bash for Windows subsystem, not a full Linux distribution. [[https://msdn.microsoft.com/en- us/commandline/wsl/about](https://msdn.microsoft.com/en- us/commandline/wsl/about)]

<comment><USER3> Yeah but Linux replaces windows ;)

<comment><USER4> Unless you intend to use your machine for gaming.

<comment><AUTHOR> I don't game. So I am looking for answers from a programmer's perspective. :-)

<comment><USER4> If you don't game why would you run Windows?</comment></comment></comment></comment></comment></comment>


Don't React (Presentation - Use arrows to navigate) - <AUTHOR> http://staltz.com/dont-react/#/ <comment><USER2> Presentation author here. I should have taken this down before it popped up on HN or elsewhere. The video of this presentation is worth watching, because it's tongue-in-cheek through-out. But the slides are not worth reading, otherwise people take it seriously like it's happening here now. Cycle isn't the solution to everything, it's just one guy's ongoing experiment.

<comment><USER3> Do you have a link to the video?

<comment><USER2> Conference organizers will put it up and hopefully post it here: [https://twitter.com/trewebdev](https://twitter.com/trewebdev)

</comment></comment></comment><comment><USER4> Okay, so React is not fully reactive. But to say people shouldn't use it because it's not reactive? because it abstracts virtual-dom? because it should be more reactive-friendly?!

Seems like the author was offended they said they are reactive, and made a non-informative presentation, that comes off as a rant because of the rising popularity.

Edit: looking at his Cycle framework's "Why?" on github, besides the part of 'Rendering separated from View' (arguably, you could say that React's render returns React elements which are virtual-DOM elements equiv), you can use the same approach with React.

My current project's component almost never update themselves, except minor UI changes, which is understandable. apart from that, all the data flow comes from above, and my components change according to it. oh and it's immutable (immutable-js another great fb lib).

That's the thing about React, there's quite a diversity in approaches for handling data, events, user actions, etc.

<comment> kuni-toko-tachi Actually you are wrong. Follow him and others on twitter and you will see that they are some of the most forward thinking people on these types of frontend technologies.

om and elm.are the future, which is functional and immutable. React is the gateway to those technologies, which have a long and strong academic foundation.

The days of hacking together things on the frontend are over, more sound approaches are needed, and those developers who embrace them will have their pick of jobs and a fistful of cash.

<comment><USER5> Om is built on top of React. I'm not sure how you reconcile "React sucks" with "Om is the future" given that.

<comment><USER6> > _I 'm not sure how you reconcile "React sucks" with "Om is the future" given > that._

Maybe it fixes all the sucky parts?

<comment><USER7> Not really. It's basically just a means of using ClojureScript with React. That comes with some great stuff (immutability, for one), but AFAIK it doesn't change anything too dramatically.

<comment><USER8> Have you used Om?

It completely changes the way you think about modelling applications and their events. It's closer to Flux on steroids rather than a thin wrapper on top of React.

</comment></comment></comment></comment></comment></comment><comment><USER9> I have been programming for 30 years, 19 on the Web. I tried to learn Angular and Ember and failed, more than once. Earlier this year I had to prototype a fairly complex single page app and was severely time constrained. I tried React and succeeded beyond both my expectations and those of the client. I am in fact itching for a chance to use it again.

<comment><USER10> Yeah, same here, (not the 30 years part, the React FTW part) and for me the virtual DOM is the least cool thing about it. Separation of props and state is what I lust over.

Anyway, where I live React isn't getting noticed; it's Angular that's all the rage, so maybe the author is fighting the wrong enemy.

</comment></comment><comment><USER3> Disclaimer: I wrote Mithril (one of the vdom frameworks mentioned in the presentation)

I like the idea of reactive programming, but it tends to add a lot of indirection. This is theoretically desirable, but not necessarily pragmatic in reality. A lot of frontend code in the wild is of the throw-away-in-a-few- years nature and it's hard to get mindshare among developers if they're required to learn stuff that feels academic when all they really care about is getting stuff shipped the next day. Being able (forced?) to tightly couple a controller and a view in Angular is one reason a lot of people like it.

I was giving a workshop on FP recently, and you'd be surprised at the number of people who still don't grok `filter`. FRP is still way over a lot of people's heads. Hopefully the industry will warm up more to the concept as React, Mithril, Meteor, etc get more popular.

@staltz WRT Cycle.js itself:

I took a look at the TodoMVC example and was surprised to see intents reading data from DOM element data attributes (e.g. [https://github.com/staltz/todomvc- cycle/blob/master/js/inten...](https://github.com/staltz/todomvc- cycle/blob/master/js/intents/todos.js#L7-21) ). How does one go about doing non-string parameterized intents? For example, I often need to reference an entity from an event handler and searching for it in a collection by ID seems wasteful. In Mithril, for example, handlers can receive parameters as inputs either via closures from the view or via partial application (i.e. Function::bind). This is especially useful for event handlers that deal with relationships between two or more different entities. Is there a similar mechanism in Cycle.js?

<comment><USER11> If they don't grok filter then they cannot even interact with a relational database at the simplest level (a select, where). I think there is a certain level below which you are not obliged to dumb it down further.

<comment><USER3> Sure there are those who get by w/ Google/StackOverflow/copy+paste (and hey, everyone has to start somewhere), but also remember that not everyone is a full stack dev. Lots of people make a living programming exclusively on the frontend.

There are also those that understand the concept of filtering at a basic level when reading tutorials about it, but still write for/if loops when it comes to producing actual code and it doesn't occur to them that it's possible to take the anonymous function out of the filter() call and give it a name to start building up a compositional foundation in their codebases.

My point though is that the benefits of FRP are somewhat out of line with the types of problems that people face in the real world.

<comment><USER2> I use a simple example of how Rx (not FRP, that's something completely different) benefits in programming: the traditional use case of analytics events is to spread Analytics.sendEvent() calls in many places of your codebase. Using Rx to solve this problem, things get inverted: you have all analytics events defined in one module, they are listening to events happening throughout the codebase. Sometimes the platform (mobile or whatnot, think beyond JS) provides convenient lifecycle events for this. In conclusion: the only place you see analytics events in your codebase is in the Analytics module.

To me, it's about separation of concerns most of the times, and about handy event operators sometimes (e.g. [https://github.com/Reactive- Extensions/RxJS/blob/master/doc/...](https://github.com/Reactive- Extensions/RxJS/blob/master/doc/api/core/operators/debounce.md)).

</comment></comment></comment></comment><comment><USER12> Wow, what an aggressive way to promote your own little open source app.

I fully agree: of course React gets a lot wrong, being a pioneer and all. The way JS often goes, I bet one of the many alternatives that pop up actually will turn out like something. But attacking it like that isn't going to get you many friends.

<comment><USER13> > Wow, what an aggressive way to promote your own little open source app.

Yeah, makes me not want to try it. This guy should let someone else handle the marketing.

<comment><USER14> Maybe his marketing strategy was to only draw in people who use technology based on the merits of said technology and purposefully alienate the people who need an emotional connection to be convinced?

I can certainly see the merits of trying to gain pragmatic mind share first before the buzzword technology crowd joins in and makes things more complicated.

<comment><USER15> > Reactive Programming is an Enlightened Path to Programming Utopia Yet to be > Grokked By Mere Humans

Is this slide a joke I don't get? The whole presentation seems to focus on terminology and buzzwords more than discussing merits as far as I can tell.

EDIT: The authors commented and I'm going to assume this is an example of missing context.

</comment></comment></comment></comment><comment><USER16> > Testing worse, through DOM

If you're writing proper tests for React, you don't test directly through the DOM. Using Jest you can mock the DOM to test parts of your component. In my view, a component should not contain everything, only the most essential parts to get a working example of how it functions. Reusable/general functionality is pulled in from mixins or other js modules, which should be testable, without the structure of React, on its own.

> Cannot have post processing steps

This is incorrect, you can create a post processing step in React with a parent component. I used this for a pointer events polyfill in React where it replaces `onPointerEvent` with the appropriate mouse or touch event on a child component.

> Cannot delay rendering after state/props change

You can delay a render by returning false from shouldComponentUpdate, and when you get to the point where you want to render you can use this.forceUpdate().

That being said, React is somewhat misleading as far as Reactive programming goes.

</comment><comment><USER17> I see a lot of misappropriation of terminology (in this case, "reactive") in libraries and documentation. But unfortunately this is something that has been going on for a long time and it's an impossible task to stop and, check and verify everything that is released.

However, if this is the case, then the criticism here against React shouldn't be that they're not reactive, but that they've used "reactive" wrong in their documentation.

Like other commentors, I also don't like the message in the slides and do not think that criticizing a competitor is a good form of marketing. But, I do think we should remember that it's hard to get the full context from slides and to not judge too quickly.

</comment><comment><USER18> He implies that Grunt is dead on the first slide. Well don't I feel stupid since I still use it. I guess it's not cool anymore? I missed the memo. Wait, maybe I'm not cool? What do the cool kids use now instead of Grunt?

<comment><USER19> Seriously, is no one using Grunt? I know there was a backlash at all the Grunt like tools that came out at the time, but I assumed it was still useful and regularly in use / updated.

<comment><USER20> We/I still use Grunt every day, works quite nicely to build two separate apps, provides us with a very solid dev environment with livereload.

</comment></comment></comment><comment><USER21> React always feels to me to big a huge compromise between a nice statefree dataflow solution for UIs and "getting Javascripters en masse to actually use the damn thing". The entire existence of the state API is a highly visible example of this.

It reminds me a lot of Gabriel's divide between the New Jersey approach versus the MIT approach---React is far more viral in its current form, but better technology certain lives further down the path.

I went to the Boston React meetup a few nights ago to hear Pete Hunt speak about React. He was a wonderful speaker and described nicely how React learned some of the same lessons that REST did making it superior to basic message passing and bloated/leaky distributed object mechanisms (blech). He also projected a very pragmatic POV from the React dev team---they want things to be right, but they also want things to be functional in the perspective of the way most applications are built today.

I was eager and jumped on some of the problems he suggested the React time was facing trying to integrate something like animation into React. At this point we jump from a sequence of instantaneous updates to a more game-like continuous redraw effort. Pete mentioned that the current effort here was to try to use technology like RxJS observers to get more reactivity and this seems aligned with the OP here.

Personally, I think animation lives most nicely in the domain of continuous time, "true" FRP which is mostly ignored by the current wave of Javascript FRP libraries. Perhaps for good reason since most modern implementations ideas of (again, "true") FRP are challenging to implement efficiently and the semantic model is probably far too large (Zeno processes, difficulty with infinitesimal delay).

But the advantage of FRP is that you can specify things like animation independently of the icky details like event passing and sampling rate and let those be determined at a later time when your FRP eDSL gets compiled into a more refined event-passing network. In other words, FRP languages hide a vast number of irrelevant and muddying details in a way that has a consistent denotation and can (perhaps!) be compiled efficiently into a push/pull message passing network.

<comment><USER22> If you only care about animation, why not just use a constraint solver like a physics engine? Time step is set st run-time, constraints are quite natural (springs to pull something in). Constraint programming provides the declarative data binding feel of FRP behaviors (someone on my committee pointed that out). What you don't get with constraint systems are event streams, but that isn't so useful for UI programming anyways.

We had this discussion a while back:

[http://lambda-the-ultimate.org/node/2913](http://lambda-the- ultimate.org/node/2913)

<comment><USER21> I think that's a really great idea, too. The worrisome bit around constraint solvers is that they're really easy to get into strange "spooky action at a distance" states of constraint interaction which are incredibly tough to escape from. Building good constraints thus feels like something of a black art.

<comment><USER22> Sticking to Newtonian rather than using quantum physics can avoid the spooky action at a distance problem (I know this isn't what you meant, but I couldn't resist).

Actually, constraints are quite explicit compared to imperative assignments.

<comment><USER21> Ha, and I had to speak of it that way for the same reason.

I believe that constraints are explicit, but their cumulative effect is difficult to predict. A constraint which wipes out some part of the feasible space with lots of vertices can have sudden and dramatic (non-local) impact on the solution. If your solver is approximate or your solution non-linear it might be incredibly difficult to figure out where the solver will ultimately land.

<comment><USER22> I have found Verlet integration with an implicit velocity to be really good in this regard. It doesn't conserve energy very well, but it is very easy to work with (predictable) when doing animations since constraints are expressed by updating particle positions directly. I wrote a half baked paper on this once:

[http://research.microsoft.com/pubs/191705/uiphysics09.pdf](http://research.microsoft.com/pubs/191705/uiphysics09.pdf)

<comment><USER21> I'll take a look; thanks!

</comment></comment></comment></comment></comment></comment></comment><comment><USER23> Don't break the web with your presentation framework.

Since you do, I cannot take anything you say about web development seriously.

<comment><USER24> I had to read your comment to understand that there was more content than the title. Indeed I wish people would stop breaking the web is all the myriad ways that they do.

<comment><USER25> The whole web? It's all broken now? Better get a broom...

</comment></comment></comment><comment><AUTHOR> I've had very good experiences with React over the last year but was curious to find out what the community thought of the criticism here and if anyone has experience with the alternative promoted [https://github.com/Matt- Esch/virtual-dom](https://github.com/Matt-Esch/virtual-dom)

</comment><comment><USER26> All this links to is a page that does nothing (tested on FF and Chrome). Is there a point this is trying to make? The link itself is meaningless. If I am missing something, kindly let me know...

<comment><USER27> It's built in some presentation framework that requires you to press spacebar to progress.

Annoying :)

<comment><USER26> Thank you! It would be very useful to have a simple "use arrow keys to navigate" text somewhere on the page. Just noticed that there's a "next" arrow visual indicator at the bottom right (not very visible due to color choices)

</comment></comment></comment><comment><USER28> Meteor should be metioned here. It embraces both virtual dom and reactivity [1]. When FRP, Angular, Ember or React are talked about I always feel Meteor is unfairly treated and underrepresented. Meteor imperative style and the patterns it provides are a joy to work with. If you are interested into FRP from a web development perspective Meteor is a good framework to experiment with.

[1] [http://docs.meteor.com/#/full/reactivity](http://docs.meteor.com/#/full/reactivity)

</comment><comment><USER29> Clearly the author has never heard of ClojureScript's Om.

<comment><USER30> How does Om not suffer from the same problems? It's just an Clojurescript interface to React.

<comment><USER8> Om is not an interface to React but rather React is the backend to Om.

I wouldn't use React out of the box, for pretty much the very same reasons outlined in the slides.

<comment><USER30> Quoting the github README:

 _Om: A ClojureScript interface to Facebook 's React._

</comment></comment></comment></comment><comment><USER31> Interesting, I've been playing with React/Flux a bit lately. I enjoy them more than other JS frameworks, but agree it doesn't feel like it's quite right yet.

This blog post from the same author gives a bit more detail than the presentation slides: [http://futurice.com/blog/reactive-mvc-and-the-virtual- dom](http://futurice.com/blog/reactive-mvc-and-the-virtual-dom)

Looking forward to seeing the presentation video

</comment><comment><USER32> A note in the title would help people know that this is a reveal.js presentation, and you need to hit space/arrow/pagedown to continue.

</comment><comment><USER33> Hey everyone, don't get carried away by the tone of the slides. There is some good stuff in there.

</comment><comment><USER34> > React sucks

If it sucked nobody would be using it.

<comment><USER35> PHP is pretty popular ...

<comment><USER34> PHP isn't a javascript framework.

<comment><USER35> Not sure how that's relevant.

Anyway it's a logical fallacy "appeal to popularity".

</comment></comment></comment></comment><comment><USER36> I was about to start a small hobby project with kefir.js and react. Looks like I need to take a look a this too. Anybody have any experience with FRP libs? How do RxJS, lazy.js, bacon.js, kefir.js and others compare?

</comment><comment><USER13> Don't Cycle.

</comment><comment><USER37> it often depends on the size of your team or projects, if a certain technology makes sense. would be interesting to hear more about projects that "failed" with React. So far, I have not heard many people who failed.

</comment><comment><USER38> So...is he basically saying it should be more like Angular?

</comment><comment> kuni-toko-tachi People are really missing the point here. Follow staltz on twitter, he really knows his stuff. React is very good, however it missing a few key things that would make it awesome and more consistent - namely compositional event processing. Where React falls short from perfect is by using imperative code for its lifecycle functions.

He's not bashing React, he's educating you about an even better way. If you care about frontend development it would be wise to pay attention.

<comment><USER34> > He's not bashing React

I quote him

> React sucks

How do you call it? a constructive criticism ?

<comment> kuni-toko-tachi If you look at the source code of React vs Mercury you might agree with him. Sucks is a strong word, however.

He's passionate about this stuff because there is a very simple mathematics to frontend development (both declarative UI and immutable state as a function of mutational events) that has been hiding in academic papers and haskell minds that is now coming to the forefront.

There is a better way, and it can reasoned about much better than other approaches.

<comment><USER39> You mean jQuery I suppose?

<comment> kuni-toko-tachi Not even the same things. I love React, use it everyday, however from a denotional semantic standpoint it is impure.

view m0 = r0

view (m1 = handler e0 m0) = r1

view (m2 = handler e1 m1) = r2

This is the essence of MVC. Mathematically pure and beautiful.

React and Flux are so close to this conceptually, but fall far short of it in actuality.

View is a function of state. State is an argument to view, and should not be mated to view in any other way except as a function call argument to the view - point free preferably.

If you look at the source code of React, there is an important object called Transaction. Transaction is basically AOP. AOP is not needed in JavaScript! Transaction reinvents functional composition. That is why things like Mercury, Mithrill, and Cycle are better,smaller, easier to read and reason about.

I love React, but it is a gateway to an even brighter future. Rejoice that the days of blind monkeys (myself included) writing UI code is coming to an end.

<comment><USER39> Yes exactly, just keep the state in css classes and html forms and tool yourself for reuse.

</comment></comment></comment></comment></comment></comment><comment> kuni-toko-tachi Instead of the down voting nonsense, read this:

[http://computationallyendowed.com/blog/2014/07/20/reactive-m...](http://computationallyendowed.com/blog/2014/07/20/reactive- mvc.html)

Basically: view m0 = r0 view (m1 = handler e0 m0) = r1 view (m2 = handler e1 m1) = r2

Or just down vote and learn nothing.

<comment><USER40> "Basically"? I'm finding it difficult to answer your post with anything other than incredulity. Either way this post doesn't negate the fact that the attitude presented in the OP pretty much stinks.

<comment> kuni-toko-tachi Christ almighty, this is pathetic. Did you read the link?

<comment><USER40> Yes. Does it negate the bad attitude of the OP's presentation (no)? An attitude that you seem to share?</comment></comment></comment></comment>


Raptor Maps (YC S16) Uses Drones to Help Farmers Get Better Crops - <AUTHOR> http://themacro.com/articles/2016/08/raptor-maps/ <comment><USER2> Hi Hacker News. This is Nikhil Vadhavkar. I'm a cofounder of Raptor Maps with Eddie Obropta. We're super excited to announce we're a YC company today. We'll be answering questions as much as we can. If you've ever wanted to know anything about drones, technology and agriculture we'll do the best we can share.

<comment><USER3> Hey Nikhil, I am interested in what you are using drones for in agriuculture. I was using drones about 2 years ago for farming and helping farmers optimize different things and am curious how far it's come since then.

Back then, we were just beginning to see the possibilities. Of course we'd do drainage mapping, NDVI maps (as a yield-correlate), we found success mapping field trials and monitoring field trials.

There were alot of possiblities we could've gotten into, but we found it hard to totally commercialize. For example, trying to map chlorophyll content, or water content. Water content was an easier sell, but I got the feeling that drone-assisted precision agriculture was very much still in its infancy at that point, more hype than substance. I am wondering what you think now? What are you actually using your drones for, commercially, but with specific regards to the actual agriculture decision-making.

Thanks eh.

<comment><USER2> Hi James, great question. We have used drones of all shapes and sizes, including off-the-shelf (DJI Phantom, S1000) and custom fixed-wing aircraft (modified X8 flying wing, 11-ft wingspan composite plane).

We're using them to take measurements at the beginning of the growing season (e.g., stand percentages), middle of the growing season (e.g., custom-built sensors to hunt for specific diseases), and finally, tying that back to the quality of the crops that are coming out of the ground. With that last component, we can be very confident when we say our data assists with agricultural decision-making.

<comment><USER3> Hey, thanks for responding.

I'm curious what the custom-built sensors for specific diseases are? Are you using hyperspectral cameras? I know there was a lot of research into spectral fingerprints of specific diseases.

Also, in regards to the data from the end of season, where you monitor the quality of the crops coming out of the ground. How do you think that assists agricutlrual decision-making? E.g. are you able to predict the quality of the grain and that, in some way, makes it easier to manage?

Again, thanks for answering my questions

<comment><USER4> Hi James. This is Eddie, the CTO of Raptor Maps. We figured out the combination of wavelength bands we need, and combining that with image recognition we can identify particular diseases. We had to do a lot of iterations and correlations to chemical samples to build up confidence that this can actually work. We can only do a few specific conditions today in potato farming, so I can't say this works for every disease everywhere, but we'll keep getting better over time and are working quick to do so. The sensor package is optics-lab style cameras tuned for wavelengths we know have the best signal to noise ratio.

With regards to harvest monitoring, by knowing the exact yields and locations we can correlate remote sensing data to the yield. This type of information will help with management in the coming seasons. But it can also help today. For example, you want to move your lower-quality inventory more quickly so it doesn't affect the good stuff, so you want to put it by the door of the storage facility.

<comment><USER3> Hey Eddie, thanks for getting back to me.

I was wondering when image recognition was going to play a stronger role in the use of drones for agriculture. When I was doing it, it was simply using combinations of spectral bands and not really delving into pattern recognition. Sounds like that's the right way to be headed. Obviously just at the beginnings of it and I appreciate that you know the current limitations of the technology. But still, that's impressive.

Also curious if you are using satellite imagery in any contextual way or to train your image recognition in any way? Or if you are using the lIDAR already available at all? I imagine you are collecting higher-resolution LIDAR when you fly over?

Anyway, good luck with this, sounds like you guys are doing it right.

</comment></comment></comment></comment></comment></comment><comment><USER5> Awesome stuff! Why are you guys focusing on produce as opposed to say corn, which has so much more acreage in the US?

<comment><USER2> Produce costs farmers much more money to grow on a per-acre basis, since they need so much more TLC. With produce, quality is everything to the farmers, and there are many more opportunities during the growing season to make changes that will improve the end result. We've all put bruised produce back on the shelf at the grocery store, and for every one of those pieces, there are several the didn't make the cut!

</comment></comment><comment><USER6> parrot.com has already thought of this

</comment><comment><USER6> parrot is already doing this but only sell a camera and color sensor. they sell drones too. parrot is the original person to think of this. here's the link to their website ---> parrot.com

<comment><USER4> We actually don't sell drones. We use drones along with custom tractor-mounted sensors and our software. With this combination we directly correlate field performance at specific growth stages to yield. We're allowing produce growers to perform controlled experiments on their fields to know exactly where the good crop comes from and why. Sensors by Parrot are awesome and can be integrated into this work flow.</comment></comment>


Ask HN: What are my options to run Windows programs on Linux? - <AUTHOR> We use Linux desktops at work and all our development/release is on Linux. We are however using Office 365 suite. We are now forced to move to MS Teams as hipchat is going away. MS Teams does not have a native Linux client and MS does not have any future plans to develop one.<p>I am wondering if there are any solutions that I can sell to management besides running entire windows os in VMware? <comment><USER2> I run everything on Linux using virtualbox, I don't recommend Wine though. All you need is a decent PC unless you're at school or something. The only problem you will face is USB support for some cases I don't think an average user can setup everything in a matter of minutes, you may need hours even days on researching but in the end you'll be rewarded.

</comment><comment><USER3> I would consider using MS Teams web client to be a better option rather than running it in a virtual machine.

</comment><comment><USER4> Virtualbox can emulate a windows machine on top of Linux

</comment><comment><USER5> This really doesn't answer all your needs but the Microsoft Office 365 office and productivity apps are available as web apps, and work very well on Linux.

<comment><AUTHOR> Agree. That's how we are using it. However teams webclient can't do some of the things like desktop sharing and conferences like we could do in hipchat.

<comment><USER6> linux has a native desktop sharing, and if you secure things properly SShing to eachothers Boxes over an inhouse VPN.

</comment></comment></comment><comment><USER7> wine

</comment><comment><USER8> How about Docker?

</comment><comment><USER6> Libre Office.

it can work with MSO files, but has caveats regarding the nonstandard file specs. [docx. vs doc.] you can open and work with MSO nonspec files in libre office, but there is usually a note regarding format mangling due to a certain corporation breaking the file spec. Myself i have not had problems switching between the two ecosystems[MSO vs Libre] and the typical MS baggage is not attached to libre.</comment>


Setting up an email server in 2020 with OpenSMTPD and Dovecot - <AUTHOR> https://prefet.ch/blog/2020/email-server/ <comment><USER2> After a number of amateurish attempts at setting up a personal e-mail server over the years, I ended up resorting to running a poste ([https://poste.io](https://poste.io)) docker container, which has worked great so far.

But I found the section about SPF/DKIM/MARC still very useful, and wish there were even more information about this. Testing whether e-mail is sendable or receivable is pretty easy. Understanding these scores is much harder (presumably because, if this were easily testable, it would also be easily gameable).

</comment><comment><USER3> Very nice read. But I'm a bit confused with the following:

> Because these companies probably use AI-powered account-aware filters, you > should not put anything identifiable in the test email. For example, if your > name is "John Smith", do not put "John" nor "Smith" in the message, and do > not send it from an addres like firstname.lastname@example.com.

Why is this so? Is this only for the first email?

<comment><USER2> I found this intriguing as well. Two possible reasons:

* If your name is associated with some preexisting score, this might influence the chances of the mail getting accepted or rejected.

* Conversely the mail gets rejected, this might ding your reputation for other mail you send in the future.</comment></comment>


An algorithmically generated list of crypto's most influential people on Twitter - <AUTHOR> https://cryptoinfluencers.io/ <comment><USER2> This seems to be entirely about cryptocurrency, and not crypto generally.</comment>


Slack Accuses Microsoft of Illegally Crushing Competition - <AUTHOR> https://www.nytimes.com/2020/07/22/technology/slack-microsoft-antitrust.html <comment><USER2> Big deal. So what else is new?

MSFT has been doing that for decades.</comment>


Reconfigurable Data Flow (1998) [pdf] - <AUTHOR> http://www.maxeler.com/files/MencerRDF1998.pdf <comment><AUTHOR> "Submitted, rejected and still posted online by the _Wild-and-Crazy Session at ASPLOS 1998_ ". We are now at the twenty years anniversary and the ideas are still wild and crazy and increasingly relevant. Reconfigurable Data Flow are now the best way to solve problems which challenge the performance and capabilities of more traditional machines.

As Max Plank observed: "A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it." Or because there is a technology shift and the only way to solve the problem is to rethink the architecture of the machine used to solve the problem.</comment>


Morocco poised to become a solar superpower with launch of desert mega-project - <AUTHOR> http://www.theguardian.com/environment/2015/oct/26/morocco-poised-to-become-a-solar-superpower-with-launch-of-desert-mega-project <comment><USER2> One key motivator for Morocco to seek alternatives to Oil, is it's neighbor and arch enemy Algeria. Think of it like USA vs Russia and their race to be the Nr 1. All the advancement in telecommunication, Space, Robotics..etc are partly due to this race. Algeria actively supports separatists in the Sahara (Polisario front) for independence. Algeria was a very rich country until the recent demise of Oil price. Morocco has to compete with a neighbor with a very big budget and a military that is buying more and more sophisticated equipment and arsenal. Alternatives had to be found. So for energy, independence is a must have for Morocco, dictated by a geo-political environment that is not stable and very volatile.

<comment><USER3> Algeria was not a very rich country before the drop in oil prices, even though they had certainly climbed a long ways during the ten year oil boom.

Their GDP per capita is around #100 in the world. It ranks below Jamaica, Serbia, Fiji, Namibia, Angola, Iraq, etc.

Their total GDP, pre oil drop, ranked them around #50 in the world, but they're #34 in population.

Before the oil drop they were a lower middle nation in terms of wealth, nowhere near rich.

<comment><USER2> Sorry, I didn't mean to say they were a rich country, but had the means to advance rapidly compared to other third world countries. Algeria had 186B$ of cash and was debt free. It even lent 5B$ to the IMF[1].

[1] [http://finance.yahoo.com/news/algeria- contribute-5b-imf-1846...](http://finance.yahoo.com/news/algeria- contribute-5b-imf-184610740--finance.html)

</comment></comment></comment><comment><USER4> Links to more information:

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

[2] [http://www.worldbank.org/projects/P131256?lang=en](http://www.worldbank.org/projects/P131256?lang=en)

[3] [http://www.nrel.gov/csp/solarpaces/project_detail.cfm/projec...](http://www.nrel.gov/csp/solarpaces/project_detail.cfm/projectID=270)

[4] [http://gulfbusiness.com/2015/01/saudis-acwa-power- wins-1-7bn...](http://gulfbusiness.com/2015/01/saudis-acwa-power-wins-1-7bn- euro-morocco-solar-power-deal/#.VLJ4byvF_8Z)

[5] [http://www.acwapower.com/project/14/acwa-power- ouarzazate.ht...](http://www.acwapower.com/project/14/acwa-power- ouarzazate.html)

<comment><USER5> Another link that has ended up at the bottom of the thread due to it's parent being downvoted ( [https://news.ycombinator.com/item?id=10450344](https://news.ycombinator.com/item?id=10450344) )

[http://www.cspworld.org/cspworldmap](http://www.cspworld.org/cspworldmap)

</comment></comment><comment><USER6> I wonder if the cooling it surely provides to the ground under the reflectors would make the land retain more water and be hospitable enough for plants to eventually start growing there.

<comment><USER7> It should also provide some protection from wind, so the soil is not blown away.

</comment></comment><comment><USER8> Reminds me of Masdar City in Abu Dhabi.

Deserts kick up so much dust, I wonder how often they have to clean the mirrors.

<comment><USER9> Given that they are trying to stimulate local economies around the plants I would imagine they see this as a feature.

<comment><USER10> Yeah, have some people gently brush them after dust events.

<comment><USER11> [https://www.youtube.com/watch?v=XpZA6TMg04Y](https://www.youtube.com/watch?v=XpZA6TMg04Y)

</comment></comment></comment></comment><comment><USER12> "When they are finished, the four plants at Ouarzazate will occupy a space as big as Morocco's capital city, Rabat, and generate 580MW of electricity, enough to power a million homes"

The other top HN story is about a 1180 megawatt nuclear plant, which outputs about twice the power in a fraction of the space:

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

<comment><USER13> This is in the desert. The nuke is on what was once useful land.

<comment><USER14> True - but if it takes the size of the capital of Morocco to replace half a nuclear power plant, imagine the size of the installations needed to truely power the world with solar energy?

<comment><USER15> As someone who lives in a country (Brazil) which uses lots of hydro, I have a related question...

How much space does it take, compared to a hydro plant of equivalent power? Hydro is also relatively clean, and is also known for taking massive amounts of space.

<comment><USER16> _Hydro is also relatively clean_

Hydro is the most environmentally destructive source of power. It ruins more natural habitat than strip mining coal, clearcutting forests, solar PV in virgin land, or any other kind of generation. And the river bottoms and canyons it destroys are among the most biodiverse habitats in the world before their destruction.

<comment><USER17> It's all relative. From Wikipedia[1]:

       In 2013 the plant generated a record 98.6 TWh,
       supplying approximately 75% of the electricity
       consumed by Paraguay and 17% of that consumed
       by Brazil.

I'm sure that most of the citizens of Paraguay and Brazil will gladly accept this inexpensive hydro power, even at the loss of a few flooded canyons.

It's nice to sit in ivory towers and criticize. In the real world, many many people's lives are made much easier and more productive by harnessing this inexpensive hydro power.

You want to solve some _real_ problems in Brazil, figure out how to stop the destruction of the Amazon rain forest. That, there, is a world scale tragedy. Not so the beautiful Itaipu Dam, which I've toured, and which helps so many Brazilians.

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

</comment></comment></comment></comment></comment></comment><comment><USER18> "Spain has itself prohibited new solar projects because of a lack of interconnectors to transmit the energy to France"

\- I'd like to know more about this.

<comment><USER5> That's a really crazy thing to read.

Also "The EU has set a target of ensuring that 10% of each member country's power can be transported abroad by cable by 2020." Is that all?

The governments of this world all seem to suffer from such blinkered short term visions. They can spend billions on a sporting event but a robust Europe wide electricity grid sourcing power from a sunny south...

<comment><USER19> There is the issue of cascading failures also here : several of my friends working for majors European power grid suppliers still have nightmares from the 2006 power outage.

A vessel ship cut a power line in Germany, which triggered a domino-like power outage throughout all Europe (up to Portugal IIRC) making 15 millions of home go dark for several hours.

Solar (and worse, Wind) power is not constant : it adds a source of unstability in the mix.

<comment><USER20> _it adds a source of unstability in the mix_

Because thermal plants never trip??

<comment><USER21> They'll trip very infrequently, sure, but they're not forcing constant re- balancing minute by minute or hour by hour.

<comment><USER20> Since the risk is there you need backup capacity anyway, and even if thermal production is very stable, usage over the day is not. So you need balancing no matter what. You do need to improve balancing to integrate lots of wind/solar - however with land-wind being so cheap, there is money to spend on balancing.

<comment><USER21> Land is cheap, sure, but the transmission capacity to take it from generation to consumption sure isn't.

Europe had electrical grids that were perfectly capable of distributing the "ancient, horrible" thermal generation quite acceptably. Now there's a lot of renewables installed the grid is starting to look like the bottleneck. Who pays for the grid upgrades so that it's not the bottleneck? The renewable people say the grid people should, and the grid people say that the renewable people should.

If there was so, so much money in the renewables market then why are they balking at paying for installing more long haul transmission lines? Probably because they're very expensive; if they were just 1% of the cost of the renewable facility nobody would really care. But they're probably on par with or perhaps even more expensive than the total plant installation. Which takes these projects from profitable versus thermal to non-profitable versus thermal I'd suspect. Hence the bickering.

So thermal balancing is a well understood art that's going on 100 years old now. Renewable balancing is not as well understood and is perhaps only 5-10 years old at any kind of scale. That's why grid batteries are such a big deal, because balancing is hard and batteries tend to have little/no latency so they can react faster than natural gas peaker plants.

I'm not saying that moving to renewables is a bad idea and that we should just stick with coal or anything; renewables are obviously the future. But there are definite, real problems associated with their roll-out that aren't easily or cheaply solved. I think one thing that will make a huge difference is exposing the time-variable pricing of electricity to everyone. It'll create a huge market for demand smoothing and consumer grade (and scale!) load smoothing devices like inverter A/C units, peak shaving batteries (1kWh battery with a 3kW inverter/charger), people putting 500-1000W of solar on their own roofs, etc.

</comment></comment></comment></comment></comment></comment></comment><comment><USER22> The article talks about total capacity of plants being 580MW. If that would make Morocco a solar superpower, I am sure India and many other countries already have solar capacity more than that.

<comment><USER23> While India has to sacrifice arable land that can be used in a lot of different ways to build a solar plant, Morocco has only gains from such projects.

<comment><USER24> This is factually incorrect.

The reason that solar power projects have been executed without any major controversy (otherwise all so visible in India in relation to any big project) has mainly been possible because India has a huge chunk of arid/non-arable land in the West and center of India. All of the major solar project so far and all of the planned one's have come up in these areas.

<comment><USER4> India has also been experimenting [1] with putting solar panels over the (extensive system of) canals in the state of Gujarat. The panels provide the added benefit of reducing the rate of evaporation from the open canals.

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

</comment></comment></comment></comment><comment><USER25> So.... if solar can power the world, as seems increasingly within the realm of not-being-crazy, does that mean that since we're using energy that is already under the ozone layer, that we'll also solve global warming?

This is just harvesting energy that's already here, in real time, right? It's not releasing energy that was created over millions of years in one concentrated burst as per carbon-based energy?

Or is much of this energy usually bounced back into space, yet with solar we'll be keeping it on terra firms?

<comment><USER26> The energy is converted to electric energy, but when you use it it gets eventually turned back into thermal energy.

In the extreme case you make it worse since the solar radiation that would have been bounced back by the 'white' desert is now absorbed by the 'black' solar panels, which convert some of it to heat and some of it to electricity which in the end also gets turned into heat.

</comment></comment><comment><USER27> Anywhere else but the desert, and the ecological impact would stop such projects. Its ironic, since the desert is a more fragile environment that most others. This project would likely exterminate many species and sterilize all the land under the mirrors. If anything thrived there, it would be completely unlike what is there now, causing an incalculable rippling ecological impact elsewhere.

But desert projects get a pass on all this for some reason. I guess because, people don't like to live there. Same reason fuzzy mammals get protected status, while lizards and worms get nothing - human preference.

<comment><USER28> Not all deserts are equal. The Sahara desert is truly immense -- 99.99% of it is not at risk of construction. And unless you are building on top of something with a natural water source, you're probably not endangering any life; the parts without water sources are essentially lifeless.

Frankly, after the initial setup, the shelter the panels provide will probably support more life than the open sand. Same as why environmentalists are ok sinking ships to provide a foundation for artificial reefs -- nature does not magically optimize for the most life-dense environment; it just is the way it is.

<comment><USER29> Immense and growing despite efforts to stop it.

If there is one environment on the planet not in risk it's the Sahara. A lot of Egypt, Northern Africa, Iraq/Palestine would have looked like the American Midwest back when they were empires.

<comment><USER27> True its a man-made desert (despite some published nonsense about 'shifts in the earth's axis' causing weather changes). So are most of the ecosystems on the planet, by now. The issue is, changing relatively stable ecosystems is done at our peril. I just want to point out how little we really care about this stuff - to the point we enthusiastically endorse mega projects that amount to terraforming, with so little discussion.

</comment></comment></comment></comment><comment><USER30> So is the issue here of delivering a European Supergrid (Ultra High DC) [https://en.wikipedia.org/wiki/European_super_grid](https://en.wikipedia.org/wiki/European_super_grid) ? This would enable the development of a continental "green" energy grid.

</comment><comment><USER31> Sounds like a typical IMF scheme.

<comment><USER32> Why the downvotes? I think it's a very lucid observation! This is just one "loan" out of many that the IMF has granted to third world countries like Morocco. IMF knows it won't get its loan plus interest back for many decades to come. It's the carrot and stick it needs to inject its own political agenda.

<comment><USER33> > Why the downvotes?

Because it's not an IMF loan?

<comment><USER32> The IMF tied Morocco's $6.2bln precautionary loan line (coming directly from the IMF) to its energy dependence. This solar project is being hurried up so the loan can be unlocked. All of this is in a timetable from 2012.

<comment><USER33> Do you have any sources? As far as I know, this project is funded by the Germans, French, African Development Bank, EU and World Bank, without any funding from the IMF necessary, nor is there an IMF loan to be unlocked by this project.

The loan you describe is separate, as you say, a precautionary loan as a safeguard for oil price increases, indeed granted in 2012. Of course the opposite has happened, the price of oil dropped very sharply and so it makes no sense for the IMF loan to have been put into use on these grounds. Which is why it hasn't been, the $6.2b line of credit with the IMF expired in August 2014, without having been used at all. In July of that year, a new similar (this time, $5b) loan was negotiated, again precautionary as an insurance policy, and that, too, hasn't been used yet and that too isn't tied to any solar project. So I still don't see where you get the fact they're either 1) building this project with IMF money or 2) unlocking an IMF loan with this project, the facts suggest the IMF loan is unrelated, precautionary, not-used and the one you refer to specifically even expired already, how it could be unlocked after it expired is beyond me but you seem adamant. There's no IMF scheme here. Does the IMF have a relationship with Morocco? Absolutely, but it's not part of this project as far as I know, not indirectly either.

<comment><USER34> >> "Germans, French, African Development Bank, EU and World Bank, without any funding from the IMF necessary"

a rose by any other name...

</comment></comment></comment></comment></comment></comment><comment><USER35> Is it a concept or is it an actual project(are the still talking or actually building). Because I've heard ideas like this before( [https://en.wikipedia.org/wiki/Desertec](https://en.wikipedia.org/wiki/Desertec) ) which abandoned quickly. IMO Decentralization is the answer not MEGAProjects.

<comment><USER36> From the article: "When the full complex is complete, it will be the largest concentrated solar power (CSP) plant in the world , and the first phase, called Noor 1, will go live next month."

"When they are finished, the four plants at Ouarzazate will occupy a space as big as Morocco's capital city, Rabat, and generate 580MW of electricity, enough to power a million homes. Noor 1 itself has a generating capacity of 160MW."

<comment><USER37> How many homes are there in Morocco's capital city? I'm curious whether (with current technology) we need more or less space than one home in solar panels to power one home.

<comment><USER38> Wikipedia provides the answer: about 150k.

[https://en.wikipedia.org/wiki/Rabat#Subdivisions](https://en.wikipedia.org/wiki/Rabat#Subdivisions)

<comment><USER33> The number is likely much higher than that, Moroccans all know the official demographic numbers (for big cities) are vastly understated because they're not based on a census like in say the US, but rather based on a registry of every single person like in most of Europe, only there are millions of internal migrants who don't register when they move to the city, and there's significant semi-homelessness and shanty towns which aren't reflected in the official numbers. For Casablanca it's usually a really really big difference, with official numbers at 3 million and some, and locals approximating it topping 6 million. The official numbers in Rabat aren't as inaccurate but 150k households at least feels much lower than my personal experiences.

</comment></comment></comment></comment></comment><comment><USER39> Very nice story. Wish it becomes very successful.

</comment><comment><USER40> I wonder at which point solar energy gathering will significantly influence local climate. As I understand right now we are far from that, but what about future trends?

<comment><USER5> You should read about the urban solar effects. Cities are warmer than the surrounding areas. Are you more worried about that than CO2 in the atmosphere?

</comment></comment><comment><USER41> Can we please ban from humanity any journalist that writes "will be able to power X homes" ...

Just give GW, it would be enough If you want to put to scale use something else (will provide the output of 1/2 hoover dams, will be able to supply 0.1% of US electricity or power 5000000 tumble dryers or 3 ATI cards) Homes just don't need electricity to exist ...

<comment><USER42> To those replying that people don't know what GWs are - it's pretty sad, really. One would hope that in the XXI century, especially in a technological civilization of the west, every self-respecting human would know what a watt is. As it is now, even journalists don't expect anything from their audience anymore.

If you look at the economics of journalism, it's understandable why they write this way (the economics view explains most of the ways modern journalism is crap), but it's disheartening that nobody minds writing about "calories" (which should be kcal), or "horsepower", but watts need a "X homes" explanation.

<comment><USER43> I know what a Watt is and I understand the Giga-prefix. I still like an analogy with my GW numbers, because in my daily life I don't encounter these things very often and have a hard time imagining how much that exactly is. I would have to Google some other representative values, like the output of a typical coal plant to get an idea what the number means.

This is not the case with calories (I know that what I eat daily has about 2500 of those) or horsepower (I know that my car used to have 60).

<comment><USER44> Once nuclear core = a bit less than 1GW. France has 58 of them, producing 74% of its electricity.

In total France produces 63GW, with 70Mhab = about 1KW per inhabitant _in average_.</comment></comment></comment></comment>