OS X Server - <AUTHOR> http://www.apple.com/osx/server/

<comment><USER2> It's an interesting approach to make the server utilities an add-on to the base OS X platform rather than a separate operating system as with Windows.

Interesting features are "profile manager", which sounds like an LDAP server and the Mail/Calendar server to replicate Exchange functionality.

<comment><USER3> Yet it's very much what SuSE has been doing with YaST modules for years. Need an NTP server? click. Want to play around with NIS? click. Kerberos? Click.

<comment><USER4> Indeed, and Red Hat may have taken it a step farther (I'm not familiar enough with SuSe to know whether it's actually different) by providing different _entitlements_ , which are really just repo subscriptions. Want access to the advanced server stuff, not the standard workstation utils, purchase that entitlement and you'll have new packages available to you. Install, use their configuration utilities, etc.

</comment></comment></comment><comment><USER5> I imagine you already know about this if you qualify, but Mac and iOS developers just got a free redemption code to get OS X server.

</comment><comment><USER3> Woah. This seems highly relevant to me. I might actually be able to manage all the macs, ipads, and iphones running around my house in a more centralized way? It seems worth 20 bucks just to find out.

Can it help manage my current home media server, a headless 2003 Dell running SuSE?

</comment><comment><USER6> I just wish I had a way to run my XCode builds in a VM locally (i.e. not paying a remote entity for the privilege) .. does anyone know if OS X Server can be run in Parallels or VMWare or some such thing?

<comment><USER7> OS X (since Lion) includes a license to run a virtual copy (well, 2 I think). I can't say that I've run the Server app component in a VM but I don't know of any reason why it wouldn't work, it's essentially just an app that runs under OS X in the first place.

</comment></comment><comment><USER8> The most interesting feature for me is the XCode Server + Bots.

I'm still trying to figure out how to use it. I've installed it, added a git- repo, created a Bot, but it does nothing. Also, I don't know how to tell it to do "pod install"[1] before attempting to build the app.

1\. [http://docs.cocoapods.org/guides/installing_cocoapods.html](http://docs.cocoapods.org/guides/installing_cocoapods.html)

I just want to see Bots work and what is has to offer that my already existing Jenkins CI environment doesn't.

<comment><USER9> If you haven't seen it already, you might find the WWDC 13 session video 'Continuous Integration with Xcode' useful, it covers bots.

[https://developer.apple.com/wwdc/videos/](https://developer.apple.com/wwdc/videos/)</comment></comment>


How to optimize an economy with linear programming - <AUTHOR> https://email@example.com/communism-2-0-94904d934df9#.3ocvl3qcc <comment><USER2> Perhaps is just me, but I don't think the points in the list of "unsolved capitalism problems" are that hard to solve. Going quickly over them one by one:

Those unable to work are destitute -> People help each other naturally, if a family or a friend has problems you help him/her. There's always something useful anybody can do, it needs not to be a physical task nor require top-tier cognitive skills.

No public goods. No legal system, police, defence, education, or roads. -> "Public" property is just collective private property, we can still have those by associating with peers we choose, also known as voluntarism.

Over-exploitation of shared resources. -> If there are no public goods then there are no shared resources but ignoring that line of reasoning, everything should have a human owner, just to protect it from other humans. Autonomous machines also may own and protect places that are uninteresting for humans.

Cartels and monopolies lead to inefficient resource allocation. -> Cartels and monopolies can't survive consumer association and boycott, if they do, then prices must be fair again.

Information asymmetry leads to inefficient resource allocation, e.g. over- priced goods sold to unsophisticated buyers. -> Can be solved with better, freer education and software (electronic personal assistants).

Significant resources allocated to sales and advertising. -> Augmented reality ad-blockers could probably solve this once and for all.

Ownership of intellectual property restricts use of best-practice processes. -> If there's no global enforcement, then virtually there's no such thing as intellectual property.</comment>


Why Is Trump Causing Chaos in Washington but Not in the Stock Market? - <AUTHOR> https://fivethirtyeight.com/features/why-is-trump-causing-chaos-in-washington-but-not-in-the-stock-market/?ex_cid=538twitter <comment><USER2> Theory 4: Musical chairs. Keep playing the game that there is another sucker. NASDAQ 2000-2002 (-78%) comes to mind. But maybe we get get the DOW to 45,000 first. A 78% drop wouldn't be too horrible then (except for those buying at the end).</comment>


Listening to users is bad. - <AUTHOR> http://plentyoffish.wordpress.com/2008/11/19/listening-to-users-is-bad/

<comment><USER2> Well, he does run a dating site with millions of users and a staff of 1.5. He couldn't listen to users even if he wanted to. Additionally, the majority of his users are transients (online dating = if you are successful using the product you should never be back) and any long-term user community he builds up is almost pathological by definition (see earlier point).

Contrast this with your typical business: your best customers are the ones who join early and stay _forever_. Customers have an interest in the site/software continuing to evolve because they anticipate they will continue using it. Long-term customers are excellent sources of feedback because expertise with your problem domain is something to be sought after and carefully cultivated, rather than a black mark.

<comment><AUTHOR> _(online dating = if you are successful using the product you should never be back) and any long-term user community he builds up is almost pathological by definition_

Or so goes the conventional "Your success is your own un-doing." online dating industry mantra. Most sites today are so terrible that a user is forced to run a near endless gauntlet of trials and tribulations before they meet anyone remotely suitable. This leads to a scarcity mentality which many people react to by 'latching on' to the first acceptable person. As a corollary, many people think that online daters are only in it to search for 'the right one.'

But in reality, most online daters would in fact like to meet "the reasonable 10" and have some options to choose from. That was our thinking behind <http://flowmingle.com> . We wanted to lower the cost of finding a reasonable person and setting up a date, and make going on a date a likely and regular event.

In this way, yes, your customers eventually leave, but in the meantime they have had a good experience and will come back if they need to. The supply of single people is endless and lucrative for an effective site that treats their customers well.

</comment></comment><comment><USER3> _Name me a single hugely successful internet company that is driven and built by user suggestions._

Flickr? Craigslist?

 _To create something game changing you have to be like apple, you just build interesting stuff and test it on users until you find something that works and then you release it to everyone._

How will we know if it works if you don't listen to the users? Quantitative information always benefits from qualitative feedback. It's really not enough to know _what's_ successful if we can't tell how or why it's successful.

Also, the advice from almost anybody creating new and interesting products is to place yourself in the shoes of the user and build things that you yourself would find useful. Who should we be listening to then?

<comment><USER4> I think he's saying "ignore what your users say, pay attention to what they do." User testing is seeing what they do, listening to suggestions on a forum is listening to what they say.

<comment><USER5> It's a mix. You can try out what they say if it seems like a good idea to you. But the only test is whether it changes user behavior or drives signups or whatever.

</comment></comment></comment><comment><USER6> anecdote! w00t! _victory_ _lap_

<comment><USER7> Agreed. I have another bone to pick with this article as well.

"X is bad. You must do Y to succeed."

Absolute statements like this are almost always dangerous to make, and I don't trust the articles that make them. Success or failure at anything is all about making the right tradeoffs. Advice should focus on helping you weigh those tradeoffs intelligently rather than dictating absolutes.

But dictating absolutes is so much easier, and I guess that's why everyone does it.

<comment><USER8> >>Success or failure at anything is all about making the right tradeoffs. Advice should focus on helping you weigh those tradeoffs intelligently rather than dictating absolutes.

Very well said indeed!

</comment></comment></comment><comment><USER9> He's right. Software design is art, software development is a craft. You can't create art by consensus. You need creative people, and the creative people need to be in-sync with each other.

Movies don't have 10 directors.

</comment><comment><USER10> Oh, and Google listen VERY closely to what their users say. I've been involved in several user studies there, and qualitative feedback is huge to them.

</comment><comment><USER11> Why do people listen to this guy? He's got the English skills of a third- grader (though he does seem to be improving). He built a really bad site (even by online dating standards I'm told) and spammed it until the network effect took over. Yet a lot of people take his words as the gospel just because he gets a big AdSense check.

<comment><USER12> I personally don't take his words as the gospel, but I have no problem to admit, that I will listen to him "just because he gets a big AdSense check". Because "just getting big Adsense check" isn't that easy to do, especially with a "bad site". ;-)

</comment></comment><comment><USER13> we'll he's onto something, but that doesn't mean you don't have to listen. The most active users are often several hundred percent more active than the average joe. In fact, there's no relevance of the "average" user because the the user pattern doesn't follow a bell curve, it's a power law. Check out [http://www.extremedemocracy.com/chapters/Chapter%20Three- Shi...](http://www.extremedemocracy.com/chapters/Chapter%20Three-Shirky.pdf) for some interesting math on many-to-many people networks.

</comment><comment><USER14> There are no absolutes in this. Listening to users blindly while ignoring your quantitative metrics is bad. Ignoring user sentiment and relying solely on quantitative metrics is also bad. The art is in how you use the two types of data to inform your product decisions.

</comment><comment><USER15> Mistitled.

Probably should have been, "To create something game changing, listening to users is bad."

For the other 99%, ignore your users at your own peril.

</comment><comment><USER16> We user uservoice feedback tab and react to the top two to three suggestions that get up voted.

Like 500 people suggested and agreed about X. Definitely want to listen to that!

</comment><comment><USER10> An important skill as a designer is to learn how to filter user feedback. This cannot be underestimated.

 _Then_ pay attention to how they react to it.</comment>


The Potion Language - <AUTHOR> https://github.com/perl11/potion <comment><AUTHOR> yes, this does join today's festival of obscure languages. But why is this one note worthy you might ask yourself?

1\. it appeared almost out of nowhere with no warning from its mysterious author _why the lucky stiff who then later disappeared off the face of the internet.

2\. despite its sophistication (JIT, custom vm, full mixing based language) the source is very readable and accessible to anyone interested in non-trivial compiler construction.

3\. it has a certain idealism not sullied by being a large project trying to become famous.</comment>


What happened to Altavista? - <AUTHOR> http://www.searchjournal.com/content/what_happened_to_altavista.html <comment><USER2> I don't know how this article made it up so high, but Google didn't beat AltaVista, it was gone long before that. Inktomi, which powered Yahoo! and HotBot's search for quite some time, displaced AltaVista primarily because it distributed searches across a network for faster results. Google, of course, displaced Inktomi with an entirely different algorithm.

<comment><USER3> Another example is www.alltheweb.com. They were very good, but I switched to Google because it was easier to type :-) If they had a more catchy name and better PR they could have been in the position that Google is now.

</comment></comment><comment><AUTHOR> here's another link: <http://www.tedtalks.com/2006/02/webwhat_happene.html></comment>


The Essential Guide to Mobile AR Gestures - <AUTHOR> https://medium.com/inborn-experience/the-essential-guide-to-mobile-ar-gestures-51906df56d3d <comment><AUTHOR> For the past six months, I've been building an AR Prototyping tool called wiARframe (think InVision for AR).

I just finished implementing some gesture options in it, that users can perform to trigger interactions. This article is my tidied up design notes. Hopefully, it's useful to anyone designing mobile AR Apps (probably relevant to VR or any 3D Apps too).

Suggestions, feedback and encouragement appreciated. Thanks!</comment>


Boston Cab Dispatch queues up to sue Uber - <AUTHOR> http://www.bizjournals.com/boston/news/2013/03/11/boston-cab-uber-lawsuit-coming-today.html

<comment><USER2> Ever tried to order a cab in Boston/Cambridge? I've missed two early-morning (i.e. before the subway starts running) flights because the cab I arranged 48 hours ahead of time never showed up, apparently because they didn't feel like it. Uber isn't "unfairly" replacing a functioning taxi service in Boston. They're simply the only game in town if you actually need to get somewhere.

<comment><USER3> I am often at MIT and after being burned a few times I completely switched to Uber for all my travel there and it has been nothing short of awesome.

<comment><USER4> How does Uber compare, price-wise, with taxis?

<comment><USER3> I've personally used the black car option more than the taxi option so as you would expect, always more. Most rides I took were ~$15-20 Cambridge-Back Bay. For business travel there I'm considering reliability and consistency as worth the extra $.

<comment><USER5> Why are "black cars" more? What is the difference?

I just assumed a black car was just a taxi that was unlicensed with the city (so couldn't legally call its self a taxi).

Also $15-20 is insanely cheap. I took a black taxi in London, less than 30 minutes (20 of which was traffic), $55.

<comment><USER6> A black car in US usage usually means a Lincoln Town car or similar, basically a non-stretch limo. Uber has several classes, including Hybrid (cheaper) and SUV (more expensive).

</comment></comment></comment></comment></comment></comment><comment><USER5> I love how the US claims to be the home of capitalism but yet to the casual observer lack of government intervention seems to result in a /less/ competitive capitalist market.

For example, two or three broadband providers, two or three cable providers, one or two taxi companies, three large cellular operators, just a small handful of insurers, one children's toys company, etc.

Seems like the US's capitalist model is great for big corporations or whoever the incumbent is but terrible for real grass roots competition. You want to go out and start a new business today there are simply tons of sectors you cannot compete in at all.

Technology has been largely immune to this but patents have crashed that party and with trolls everywhere a lot of smaller businesses are shutting their doors when threatened.

The US seriously needs to up its game. They need to say "no" to corporate money and actually encourage/force competition. This is why the US is losing its competitive edge to China.

<comment><USER7> I think you're getting the wrong idea about this. These Taxi companies (of which there are many in Boston, not one or two) want to sue precisely because they have something like a government-granted monopoly. The problem here _is_ government intervention, not lack of it. Taxi medallions are worth about $500k in Boston because the city limits the number of taxis and has outlawed Taxi companies from other cities picking up passengers.

How's that for lack of government intervention? If there was no government intervention here Uber would be free to do its thing. But thanks to the Boston government the taxi rates are high and there are never enough taxis to serve everyone.

<comment><USER5> Is it though? I mean Boston city aren't the one doing the suing here. It is the large private companies who are being beaten at their own game.

Plus as other posters said elsewhere, a lot of private taxi companies actually intentionally push for rules which protect their market. So they're essentially buying off local politicians who then pass rules so smaller business cannot join in for "public safety" or similar.

<comment><USER8> Lobbying to pass off regulation is the ultimate form of capitalism.

<comment><USER9> That is crony-capitalism. Capitalism without government intervention/regulation = free market. Of course I will always advocate for private property protections etc. base protections.

</comment></comment></comment></comment></comment><comment><USER10> It's fucking unbelievable to me in 2013 that there are still so many businesses who just don't get it. Y'know your profitable 20th century business model? The internet is coming for it, and you can either get on board or you can get crushed out of existence.

I just can't fathom why these idiot cab companies wouldn't just copy the service that Uber provides, which is a really basic idea nowadays.

Build an app that summons _your_ cab. Problem solved. Competitor thwarted. Stop trying to hide behind lawsuits or you'll end up just like these sad sacks in the music business.

<comment><USER4> From what I've read, the taxi companies are mad that Uber's cars are acting as taxi's, but aren't paying the upfront cost to get a medallion, use a meter, that sort of thing. It's not the app that is causing problem, it's the unfair playing field.

<comment><USER11> That information is in TFA, but you have to click over to the second page of it to read it. That pisses me off just as much as the taxi companies using protectionist tactics to protect their outdated business model.

Decisions to bury important information like the legal reasons of why the taxi companies are suing is why I think that most media companies are fundamentally broken.

I'm no student of journalism, but shouldn't best practice include guidelines like: "Make the best case for every side of an argument as soon as possible in an article. Do not bury important points that could be made early on in order to force the reader to turn the page or give the impression that one side is being favored."

<comment><USER12> Paragraph 4 on the first page:

"The taxi company argues Uber operates a taxi service without bothering with any of the rules and regulations that govern the industry."

I too hate the page breaks in order to get more eyes on more adds - but this article seems fairly balanced to me.

<comment><USER11> Granted, they put that vague line in there on the first page, but really all of the meat that made the taxi companies look like greedy corporatists protecting their turf was on the first page.

I still think that slanting articles - whether it's to get ad views or whether it's to express the bias of the reporter/publication is highly unethical and should be called out wherever possible.

</comment></comment></comment></comment></comment><comment><USER13> While I am all for internet enabled disruption, what about the local laws that Uber and other IP/Mobile-web services do not follow?

Private sedan services are still limited by the local cities regulations, and this is not a bad thing. Localities deserve the rights to regulate themselves.

Where we obviously get into mud, is where the local commercial establishment thinks it's income is a prerogative of participating.

Local regulations worth adhering to, that do not break contract law: What about maximum fares? What about legislated accuracy of meter/GPS for billing? What about posted signs for reasonable health precautions, like smoking? like the local licensing board for complaints (oh wait you don't have licenses....)

Not that I am establishmentarian, but it is completely unreasonable for a market disrupting services to NOT follow local regulations for said given commercial activity.

That being said, one does not have to be a big business to be able to give a random a ride. However, cabs of today are shaped and outfitted with specific hardware for obvious reasons.

<comment><USER14> The purpose of government is to preserve liberty. For example, government should protect citizens from mafia-style extortion where people are forced to pay protection money in order to practice a certain occupation. But when government becomes the mafia, when it extorts money from people in who want to practice an occupation, as it does with taxi services in boston, then government is acting illegitimately.

<comment><USER15> This isn't an answer to the question though, if anything its a gross over simplification of the role of government.

Incidentally, iirc the mafia used to be interested in cab companies, since it gave them access to controlling unions and a lucrative cash based economic niche.

</comment></comment></comment><comment><USER16> When the established industry starts suing you, you know that they're starting to become scared of your disruption.

<comment><USER4> Or they're pissed that they're playing by the rules and you are not.

<comment><USER17> Well, they spent a lot of money buying the rules.

<comment><USER13> My brother was driving his beater as an unlicenced hack in Baltimore for a year. I observed a number of issues.

I think a barrier between the passenger and the cabbie is generally good.

I think a meter system or a zone system that is externally verifiable is better than some dude's cell phone.

After you spend 40-60 hours in one week schlepping people in your un-designed hack, an understanding will form of why modern cabs have fairly universal accoutrements.

<comment><USER17> Greater Boston is mostly non-barrier cabs, but I don't recall the specifics for Boston proper vs Cambridge, etc.

I was referring to the idea that the medallion in Boston is a safety feature rather than a monopoly piece.

</comment></comment></comment></comment></comment><comment><USER18> I guess the US (or at least Boston) has nothing like "Mietwagen mit Fahrer" [1] (German for "rental car with driver", usually called "Funkmietwagen", something like "radio called rental car") as that seems pretty much what Uber is doing here?

We have Taxis that are official and thus are allowed to drive on special roads, can wait for customers in public places and have a big Taxi sign. They are usually more expensive.

The "Funkmietwagen" are only allowed to drive where everyone else is allowed to drive, they can't wait for customers and can only be called by calling their central number and they don't have the sign. As they are less regulated and don't have to pay for being a taxi, they are usually cheaper.

The only major requirement for Funkmietwagen is the "Führerschein zur Fahrgastbeförderung" [2] (license for transporting passengers).

(both links in German)

[1] [http://de.wikipedia.org/wiki/Mietwagen_mit_Fahrer_%28Deutsch...](http://de.wikipedia.org/wiki/Mietwagen_mit_Fahrer_%28Deutschland%29)

[2] [http://de.wikipedia.org/wiki/F%C3%BChrerschein_zur_Fahrgastb...](http://de.wikipedia.org/wiki/F%C3%BChrerschein_zur_Fahrgastbef%C3%B6rderung)</comment>


Google Reader API replacement, powered by Riak - <AUTHOR> http://blog.superfeedr.com/google-reader-api-riak/

<comment><USER2> There is another ongoing backup of Google Reader's feed cache: <http://www.archiveteam.org/index.php?title=Google_Reader> and the data is landing at Internet Archive.

(If anyone has a dedicated server with a high transfer cap, we could _really_ use for temporary storage and uploading to IA. Email in profile.)

For anyone else doing an independent backup, you can get more than 1000 items by using ?r=n&n=1000 and following the continuation in the JSON response with a ?c= URL parameter. And keep in mind that Google doesn't canonicalize feed URLs for the same content, so you have to grab all of them.

<comment><USER3> Is the list of feed URLs you have collected thus far (without the cached feed content) publicly accessible?

<comment><USER2> Not yet, I don't have a good way to provide query ability on my postgres db. I also haven't yet imported a lot of files I have lying around.

You can email me for an rsync source that contains the work items we've generated. Right now this is about ~68.2M URLs, mostly on the big blog platforms. This list should grow considerably.

</comment></comment></comment><comment><USER4> For the listing/deleting problems, have you looked at using LevelDB and secondary indexes (2i) to make range queries cheaper?

Disclosure: I work at Basho, makers of the Riak database.

<comment><USER5> I have been using Riak's secondary indexes for my latest project and have generally found them a joy to use. However, I do have to have to question a bit the way they are architected.

Assuming you are using Riak's default configuration each range query hits 1/3 of the cluster, which could get pretty hairy on large clusters that have lots of requests. Also, there is no pagination, so if an index has a million objects you'll have to be prepared to wait even if you only want the first part of the query.

You could solve this by putting a sort value in the key and using a range query, but this wouldn't work if you want the most recent items keyed with time, because the items could be unevenly spaced back in time. Also, Riak, like many databases based on Dynamo, thrives on fat data which one would think would favor lists. LevelDB is also supposedly slower than Bitcask, the default backend, but I'm not sure if this is still true.

I've been trying to think of ways around these problems. A simple thought I had was to simply cache the response as pages in Riak. Although this introduces new problems like how to know how often to reset the cache, too often and I may as well not have this cache, too infrequently and users get stale data. I would also have to handle this using worker threads because I wouldn't want the odd 100th user to get a big latency hit. The database would also either have to be continually polled, wasting CPU, or potentially not have the data cached when needed.

Another solution I've been considering is to write a secondary index layer on top of Riak using a skiplist or btree to know where to add and remove data when it gets to be very large. This seems like a cool idea, but might be tricky to implement and do conflict resolutions on.

My last idea was the most ambitious, which was to implement a separate distributed database specifically for secondary indexes and range queries which would not be bound by Dynamo. The idea here is to have each node in charge of a segment of the key space (like Big Table) and then have it split and coalesce not only based on size, but also on frequency of reads and writes to handle the bottleneck problem.

I initially was going to have this paired with the Dynamo database (<https://github.com/dbunker/Dynago>) I was experimenting with using Go and LevelDB, but there is no reason it couldn't work with any Key-Value eventually-consistent hyper-reliable database to provide light-weight secondary indexes. Having it constantly check the core key-value database would mean it wouldn't have to be super reliable in its own right and so could be kept relatively simple.

But again the simplest solution may ultimately be the way to go, I'm not sure, all these seem to have pretty big trade offs.

<comment><USER4> _Assuming you are using Riak's default configuration each range query hits 1/3 of the cluster, which could get pretty hairy on large clusters that have lots of requests. Also, there is no pagination, so if an index has a million objects you'll have to be prepared to wait even if you only want the first part of the query.

You could solve this by putting a sort value in the key and using a range query, but this wouldn't work if you want the most recent items keyed with time, because the items could be unevenly spaced back in time._

Pagination is coming soon; it's in riak_kv master already, but in buyer-beware #yolo territory.

 _LevelDB is also supposedly slower than Bitcask, the default backend, but I'm not sure if this is still true._

Bitcask is faster when all the keys fit in memory: it's designed to load any value with a single disk seek. LevelDB can't make that guarantee, but neither can Bitcask with too many keys for available memory.

 _I've been trying to think of ways around these problems. A simple thought I had was to simply cache the response as pages in Riak. Although this introduces new problems like how to know how often to reset the cache, too often and I may as well not have this cache, too infrequently and users get stale data._

Caching is one of the two hard problems in software engineering (along with "naming things" and "off-by-one errors"), so good luck :) If you're not opposed to running a separate service, Memcache is what I'd use.

<comment><USER5> Any thoughts on when the pagination goes live? I can't find any information on it online. Memcache would be a good choice, but I am wondering, if I have a few secondary indexes with over a million indexes each, wouldn't continually recreating this cache irreparably bog down the cluster?

<comment><USER4> I believe it's part of Riak 1.4, which is our next release; no date yet.

The number of entries in a 2i isn't going to bog down querying it any more than lots of objects bog down LevelDB. Make sure your indexes have the right content with the right cardinalities and it shouldn't be a problem.

If you want to drop in to #riak on freenode tomorrow (I'm in the America/New_York time zone) I'm brycek in there.

</comment></comment></comment></comment></comment><comment><USER6> SuperFeedr is awesome and Julien is great to work with as a user of the service. I wish they had this feature when I was working on my multi-medium client (now defunct) a year and a half ago.

The only downside—and why I stopped using it—is that the pricing model is per- item, so if you have frequently updating feeds it can get very expensive. Although I never tried to use it, the pricing page does say they they'll meet whatever it costs you to run your own feed system since their cost should be lower than yours.

<comment><USER7> The second part will stay, while we hope to change the 1st part (pricing per item) really soon into another scheme!

<comment><USER6> Awesome. If I needed access to feeds again I'd definitely use superfeedr.

</comment></comment></comment><comment><USER8> Interesting, I would have thought that the unidirectional, read-only nature of the publisher-subscriber relationship would have made this simple for a traditional SQL database with read replicas and a very basic partitioning scheme. You assign workers to monitor feeds for updates, they update the DB, and.. done.

Looks like they may have _added_ some complexity with their feed parser implementation, what they refer to as "supernoders". Looks like they don't lock ownership of feeds during parsing, thus allowing concurrent supernoders to get into race conditions while parsing the same feed.

And so it turns into another NoSQL example of employing conflict resolution to fix things.

I wonder if they could just use a simple locking scheme to prevent more than 1 parser from parsing the same feed at the same time. This sounds simpler than conflict resolution, to me.

<comment><USER4> _I wonder if they could just use a simple locking scheme to prevent more than 1 parser from parsing the same feed at the same time. This sounds simpler than conflict resolution, to me._

You may want to check out Aphyr's "Call Me Maybe" series of posts about distributed databases: <http://aphyr.com/tags/jepsen>

The short version is that convergent conflict resolution seems intimidating but works better than locking and synchronization.

<comment><USER8> Ok, I did. I actually read the whole series, including the postgres 2-phase commit I/O error case.

I don't see where it draws that conclusion at all.

The postgres post shows that even ACID databases have network error cases which can leave your client in an indeterminate state. Fair enough. However the solution for this is... to restart your client once the network's back up. All it needs to do is requery the DB to determine the truth.

Compare that to writing conflict resolution logic for all your data because there is no single source of truth. This is considerably more complicated.

The series actually ends up recommending "the right design for the right problem space." I am not making a general SQL vs. NoSQL argument here, but I think in this case they may have taken a more complicated approach than necessary.</comment></comment></comment>


Zika Infection May Affect Adult Brain Cells - <AUTHOR> http://newswire.rockefeller.edu/2016/08/18/zika-infection-may-affect-adult-brain-cells-suggesting-risk-may-not-be-limited-to-pregnant-women/ <comment><USER2> This is of course a mouse study, on mice bred to have an immune deficiency to Zika. Immediate extrapolation to humans is a little premature.

I've taken to scanning the NHS's page analyzing health news stories. It's a very useful antidote to potential sensationalism: they go to the original source and summarize it fairly clearly.

[http://www.nhs.uk/news/2016/08August/Pages/Animal- research-s...](http://www.nhs.uk/news/2016/08August/Pages/Animal-research- suggests-Zika-could-affect-the-adult-brain.aspx)

</comment><comment><USER3> Even without seeing headlines like this, I have felt for a while that Zika is being downplayed in the media. I remember mass hysteria over mad cow disease, bird flu, and ebola. Zika seems at least on par with these to me. This disease is so new that we really don't know how long women have to wait before they can get pregnant safely-- if ever. We know that it stays latent in semen for a long time after being infected. Certainly it _sounds_ very scary.

But for the most part it's being reported by the media in a very calm manner and I see relatively no panic. And that's not to say that mass panic is the right response to Zika, but just that our global reaction to Zika seems wildly inconsistent with our super-diseases of yesteryears. When the ebola crisis was going on across the Atlantic ocean, I saw many normal (albeit misguided) people in my Midwestern supermarket stockpiling bottled water and dry goods.

Meanwhile with Zika, they're estimating that 25% of Puerto Rico will have the disease before 2017. And yet I don't feel any real sense of panic in this country.

What gives? Is society just collectively becoming more reasonable? I find that hard to believe.

<comment><USER4> It's not exactly new ( first studied in 1947 [https://www.rockefellerfoundation.org/zika- statement/](https://www.rockefellerfoundation.org/zika-statement/) ), and basically spreads as quickly as any other STD ( the mosquitos that carry it typically travel no more than 400 meters [http://www.who.int/denguecontrol/mosquito/en/](http://www.who.int/denguecontrol/mosquito/en/) ).

<comment><USER3> Be that as it may, global panic relating to HIV/AIDS, Ebola, Mad Cow Disease, Bird Flu, etc. was not primarily based in scientific reason.

Consider Princess Diana shaking hands with an AIDS patient in _1991_ and how big of a deal that was.

I'll admit that I don't know much about Zika outside of the few articles I've read. And I'll also admit that I'm pretty afraid from what I've read. But what I find most interesting about Zika is this sociological aspect where the soccer fans in Brazil are chanting "Ziiikaaaa" on goal kicks and it seems like we've kind of just accepted that this is going to happen. Thousands of babies have been born with abnormalities already. I'd expect more panic.

</comment></comment></comment><comment><USER5> Guillain-Barré (normally 1 in 100,000, it's 1 out of 5k-10k with Zika ) is quite scary as well, basically you get locked inside your own body and either die or have a multi-year recovery if they identify it within the first day or two. I know two people who have gotten it in the last year: [http://www.timesfreepress.com/news/local/story/2016/apr/04/n...](http://www.timesfreepress.com/news/local/story/2016/apr/04/normal- nightmare/358562/)

<comment><USER6> A coworker got this a couple months ago. He was out for a month, very scary

<comment><USER7> My dad got it back in 2000, when we knew very little about it - not that we know much more today, honestly. It killed him, eventually. Blood clots from being paralyzed for a few months. Hospital didn't put him on blood thinners.

</comment></comment></comment><comment><USER8> So, I know disrupting ecologies can have profound consequences that aren't obvious ahead of time, but let's do a thought experiment. Let's assume we have a 100% effective way to kill all mosquitoes within 18-24 months.

What are the known disruptions and consequences of this? Do we have ways to combat problems due to that?

What are the probable/theoretical distuptions and consequences? Do we have have to combat these?

Not that I'm suggesting we do this, but with our current understanding, how much trouble do we think it would cause in the case of mosquitoes?

<comment><USER9> Beyond your question of ecological impact of killing all mosquitoes, as others mentioned they don't all need to be killed.

Historically, South Florida engaged in annual mosquitoe controlling campaigns. Essentially aerial spraying during the Summer. These were stopped because of the budget cuts related to the collapse of the Florida housing market.

Not only did the mosquitoes become intolerable, but before Zika we had a breakout of mosquitoe transmitted Dengue fever. Moreover, the historical mosquitoe controlling never killed all mosquitoes but the were effective in preventing breakouts like Dengue Fever and Zika.

<comment><USER10> When I was growing up along the Indian River in Florida, they used to send trucks through the neighborhood on summer nights that sent out huge clouds of mosquito killing fog. <s>I'm sure that was perfectly safe.</s>

<comment><USER9> I go up there to Hutchinson Island every Summer, at night on the Beach the sand flys (no-see-umps) are absolutely brutal.

</comment></comment></comment></comment><comment><USER11> Basically the reality version of children of men..

</comment><comment><USER12> Original story comes from [http://www.cell.com/cell-stem- cell/fulltext/S1934-5909%2816%...](http://www.cell.com/cell-stem- cell/fulltext/S1934-5909%2816%2930252-1)

</comment><comment><USER13> still less than smoking</comment>


Tips and Tricks for Asp.net Core Applications - <AUTHOR> https://dusted.codes/advanced-tips-and-tricks-for-aspnet-core-applications <comment><USER2> Some good tips there. The `When` extension method is really nice:

`app.When(env.IsDevelopment(), app.UseDeveloperExceptionPage)`.

</comment><comment><USER3> That 'finally' clause might not run to flush Serilog at the end. The webhost will listen to several exit events but some like window close, cancel key, some exceptions, and others will close the program at soon as the event handler returns. This is why the webhost registers a ManualResetEvent to block the event handler until the Program.Main() is finished running.

Also if you're using EF migrations, then stick with the normal CreateWebHostBuilder() method in Program.cs because it's used to bootstrap the program to run migrations at the command line.

</comment><comment><USER4> Tip 12: "Working with Null Collections" has it slightly wrong: always return empty colletions, not null ones. There are already helpers for that: [https://docs.microsoft.com/en- us/dotnet/api/system.linq.enum...](https://docs.microsoft.com/en- us/dotnet/api/system.linq.enumerable.empty)

In this example, of "GetSomeCollectionFromSomewhere" returns null rather than an empty collection, it is in error and the situation should be corrected inside that method, not at all of the callers.

Also, why would you do "if (someCollection.Count > 0) foreach(var item in someCollection) { ... }" ?

This is exactly equivalent to "foreach(var item in someCollection) { ... }"

<comment><USER3> Agreed that upstream methods should always return a collection and not null.

There is some value in skipping the foreach since that calls GetEnumerator() and may allocate, but that's very high-performance scenarios. Using LINQ to convert everything to a list and then using IList<T>.ForEach is definitely not recommended though. MS themselves have said that method was a mistake and that the foreach construct should always be used for iteration.

</comment></comment><comment><USER5> This is brilliant, really well written as well.

</comment><comment><USER6> Is tip #12 actually an improvement? I think I would prefer to read the original code than that so specific construct.</comment>


Ask HN: Need help to choose the front end technology for my startup - <AUTHOR> Need help to make an informed decision to choose the frontend technology for my startup. It is a recruitment application powered by machine learning. Currently, I am focusing on the development of the prototypes. It will help me to validate the product in coming weeks. After that, I will focus on delivering the MVP in the next 3-6 months. Little bit about my background, I have been a java engineer all my life and the sole founder of this company. For I have decided to build a Java based REST services and Postgres as the database. For the frontend platform, I am evaluating between Angular 2 and ReactJS. But still, have many unanswered questions around both the framework.
Angular 2:
Pros:
- Easy to pick up because of my java background,
- I know Angular 1.5 little bit. Learned it by debugging issues in the previous projects.
- TypeScript's syntax looks very familiar.
Cons:
- Unstable (beta).
- Material Design 2 is also in beta.
- It does not fully support many components.
- Not many developers have adopted it.
ReactJS:
Pros:
- Stable.
- Large and very active community.
Cons:
- Pure Javascript, which will be a big shift for me.
- Not sure if all the great features of React are applicable for my app.
One of the biggest factor to consider that I will be hiring freelancers to do the frontend work. It is very important for me to choose a framework so that I can find good freelancers without spending a fortune.
I am also open to any other technology which fulfills these requirements. <comment><USER2> Seems like we have a lot in common, I'm also a Java guy (run largest JUG in SoCal) and am recently in staffing. Maybe there's room for collaboration? Contact info in profile.

Either way, I'm also in the planning phases and for sure I'm going with Typescript. It's getting a lot of praise from both Java and JS developers and works with both Angular and React (although that does seem to favor ES6). In fact I just spoke with a startup that moved from Coffeescript to Typescript and React.

I am leaning toward Angular 2, but mostly because Angular is about twice as large as React in the overall job market. The HN job market is tiny subset of that, so take that into consideration. It may change, but it's a huge lead. It's also written in Typescript, so it's Google + MS, and Google is using it for their big, external facing projects. My guess is that it will retain it's lead for at least a year, but both will be popular for a long time.

</comment><comment><USER3> Honestly...choose 1 and move on. I have yet to see a good argument where a startup failed because they chose angular or react. If you want truly stable, go with PHP. Either way, choose 1 and move on. You could spend a month deciding this. If you don't want to spend a "fortune" as you put it then build it in a language you are familiar with. If you aren't a programmer you will end up spending some money just because you don't have the knowledge of anything you stated above. There are a million languages you could program in. Your site won't succeed or fail simply because you chose a language that is winning a popularity contest today.</comment>


Let's build an MP3-decoder (2008) - <AUTHOR> http://blog.bjrn.se/2008/10/lets-build-mp3-decoder.html <comment><USER2> Ever since reading "How music got free" by Stephen Witt I get a bit annoyed with the MPEG team getting credit for "creating" the mp3. They did more to kill it than to support it.

<comment><USER3> Link?

EDIT:

[https://www.amazon.com/How-Music-Got-Free- Obsession/dp/01431...](https://www.amazon.com/How-Music-Got-Free- Obsession/dp/0143109340)

[https://www.nytimes.com/2015/07/26/books/review/how-music- go...](https://www.nytimes.com/2015/07/26/books/review/how-music-got-free-by- stephen-witt.html)

</comment></comment><comment><USER4> Now that the patents have expired, let's make an MP3 _encoder_!

... I have no idea how to do that. Even a toy one.

<comment><USER5> [http://mp3-tech.org/programmer/encoding.html](http://mp3-tech.org/programmer/encoding.html)

Source code for a lot of early encoders is available to study. Probably easier to understand than the modern implementations. LAME started out as a set of performance patches against the ISO sources until eventually being rewritten from scratch.

Toy MP3 encoders are not horrifically complicated, though ones that sound decent are. It's astonishing how much improvement there's been over the past few decades even with the same underlying format, modern 128kbps MP3s don't even make your ears bleed.

<comment><USER4> Thanks for the link. I think there's a lot of room for experimental, artistic, or even scientific specialty encoders. There's so much flexibility in picking out what's "important" in a signal.

<comment><USER6> The way you worded that immediately made me think of glitch art, particularly GIFs, and particularly situations where the glitch aligns perfectly with the content.

<comment><USER4> This is the post that got me thinking about it recently [https://news.ycombinator.com/item?id=16034547](https://news.ycombinator.com/item?id=16034547)

</comment></comment></comment></comment></comment><comment><USER7> Here's an old list of Mp3 decoders:

[http://mp3decoders.mp3-tech.org/decoders.html](http://mp3decoders.mp3-tech.org/decoders.html)

It's amazing how terrible some of them were back then. I had probably 5 different players on my system because certain files would only play with certain players, encoding and decoding was such a mess back then.

</comment><comment><USER8> This is really cool! I've never seen an article that uses Haskell for a real- world task like this, are there any others?

<comment><USER9> Pandoc ([http://pandoc.org/](http://pandoc.org/)) is written in Haskell and converts documents across formats.

<comment><USER10> Pandoc is great!

...except if you want to batch convert real-world markdown.

Though admittedly, that's mostly because markdown designers thought allowing embedding of arbitrary HTML was a good idea.

(The best you can get is by going: markdown -> HTML -> $target_markup.)

<comment><USER11> The ability to embed arbitrary HTML is an intentional feature of Markdown.

<comment><USER12> aepiepaey agrees with you that it's an intentional design decision ("thought ... was a good idea"), and his/her use of past tense also implies that s/he disagrees with the decision.

</comment></comment></comment></comment></comment><comment><USER13> Never ceases to amaze me how complicated digital audio processing seems compared to analogic. A very nice article —and blog —.

<comment><USER14> Got any resources for analog signal processing?</comment></comment>


Show HN: The $30 Startup Test - <AUTHOR> http://www.ghacklabs.com/#!The-30-startup-test/mhqg1/573bec0c0cf233ef7137f8e3 <comment><USER2> This appears to be a blog post. It does not really reflect the spirit of Show HN because there is nothing to play with or try out.</comment>


Working from Home and Phatic Communication - <AUTHOR> http://s12k.com/2016/03/07/working-from-home-and-phatic-communication/ <comment><USER2> As someone who works remotely, I experience this too.

> Remote workers have to get our phatic conversations on purpose – we have to > reach out to one another, to grab a virtual coffee or a video-conferenced > lunch.

Honestly I substitute commenting on sites like Hacker News in place of some phatic communication. It feels more stimulating, and gives the "same tribe" feeling, but it's also more resource intensive: I have to read an article or comments and think of an interesting response. It's not as carefree.

I'm also reminded of two essays Jason Fried wrote in REMOTE:

"The virtual water cooler" \- we need mindless breaks; try talking off topic in a non-work room in Campfire/Slack/etc.

"Cabin fever" \- spend time with the people that are close to you geographically; try a coworking space; do more local activities

</comment><comment><USER3> I believe this is the most difficult aspect of working remotely. I've been a remote developer for four years and I absolutely miss and crave phatic communication.

I spend a good portion of my time in coffee shops, but interestingly enough, coffee shops are mostly comprised of people focused on their work or studies or books or friends, and not conducive to friendly conversation. I find the same to be true in shared work spaces.

The tradeoff is that I spend a lot less time commuting and in meetings, and I feel far more relaxed in the mornings. My breaks during the day are real breaks, not just a few minutes away from my cubicle. I can easily read, clean the house, or watch something without worrying about how my break is being perceived.

I believe remote working has allowed me to be a better me and focus more on myself at the cost of feeling a lot more isolated and alone. I eat better, workout more consistently, and have more flexibility to support my wife and her career. But I rarely engage in random conversation -- I can go for hours, sometimes a whole day without talking to anyone -- and it's really easy to get stuck in my routine. Being in an office forces you into situations you wouldn't choose to be in, and I believe there can be value in that.

All that said, I'm not sure I'd go back to an office. I had some bad experiences with folks I really didn't want to be around, and being pulled into daily meetings that had no value, and it really feels great to have more control over my day. There's probably a healthy balance somewhere and I'd certainly consider a change if I found it.

<comment><USER4>
       coffee shops are mostly [...]
       not conducive to friendly conversation.

I think the opposite is the case.

The only reason we coffee-workers tend to be anti-social "monads" are social mores: we don't want to disturb others and we take other's lack of social activity as an indication that they don't want to be disturbed. That's why we don't make the first move and start a friendly conversation.

This assumption is wrong.

I conducted an extensive social experiment. After working in cafes, libraries and shared workspaces for years, and not talking to anyone, I decided to overcome my social shyness and violate the unspoken rule not to initiate conversations. I went extreme and set myself a target to initiate at least 5 conversations with strangers per day. I did this successfully over years. I pretty much _never_ got a negative response. The worst thing that happened was that the conversation fizzled out after a the initial exchange of mandatory pleasantries. Clearly most other coffee-shop workers are in the same situation and are quite happy to have somebody to chat to. Communicating successfully with strangers requires a bit of social savvy and the ability to read body language, so you can avoid boring or bothering them, and ensure to make a conversation of interest to them.

Once you get into this habit you can reflect on things like: what features of a location are furthering communication between strangers, and what don't.

I recommend to give it a try.

<comment><USER2> My experiences have been consistent with yours. Though if I really have hard work to do in a coffee shop, I'll put in headphones. In the office we have a "don't interrupt someone wearing headphones" rule (it still happens once or twice a day), but that seems to be a good signal to people in a coffee shop as well.

<comment><USER4> Good point.

It requires a bit of social acuity to understand who's really focussed and doesn't want to be disturbed, and who'd be quite happy for a pleasant chat.

An easy trick to gather intelligence on what they are doing before initiating a conversation, is to walk past them, maybe to get a drink or on the way to the bathroom, and glance at their screen. If you see the familiar colours of Facebook, Twitter, Reddit, YouTube or other time-sinks -- and they are on display surprisingly often -- you can be reasonably sure that your approach will be well received.

Body language gives clues too ... bobbing along to a rhythm? ... no, they are not working on P vs NP or the latestst deep neural net convolutional reinforcement learning ... And if you can hear the music emanating from their headphones they aren't highly alert to a job requiring deep thinking either.

<comment><USER2> That's also a good point.

The other day I went to my neighborhood coffee shop an hour before work to just have a coffee, sit, and reflect. No computer, just me and a pour over.

I jumped into conversation with a few others at the bar. Sometimes I forget one can be in a coffee shop without a screen. It was much easier to focus on conversation and sensual things like the tasting notes of my coffee, instead of the nagging fomo of email and social notifications.

</comment></comment></comment></comment></comment><comment><USER5> Nice write up. As someone who doesn't work remotely this provides some neat insight.

<comment><AUTHOR> Thanks :)</comment></comment>


Ask HN: Launching a startup from within a "parent" company? - <AUTHOR>

I'm currently gainfully employed at a smallish consulting company. I like the company and the owners a great deal, but I've got the startup itch. However, I know my company would be very sorry to loose me.
Rather than branching out on my own, with all the risks associated with that, it strikes me that it might be possible to reach a mutually beneficial compromise: I stay with my company, keep my salary (possibly with a pay cut), spend ~70% of my time on my own project, and we split the profits. It seems good for both parties, provided they believe in me enough to offset the short-term loss of my salary.
Does anyone have experience with this? What would you assume a reasonable ownership/profit distribution ratio would be for this kind of arrangement?
(using a throwaway account in case my boss reads this prematurely). <comment><USER2> Two disadvantages I've seen to this while working for this sort of beast (in my case 3 friends bought out the last founder of a fairly old engineering services company and as part of the plan one of them ran a subsidiary that was essentially a startup):

As others have mentioned in other topics, you lose a filtering function. When the company evaluates your idea(s), their opinion will be contaminated with their presumed desire to keep you. They will also evaluate you as a potential startup founder but from what you say there's no reason to believe they're any good at that (and the skills required are different and quite a bit beyond consulting).

You'll have a safety net. Sounds nice, but it can become a dangerous crutch.

</comment><comment><USER3> 'Fraid not, presently I'm just working on my startup on my own time while working full-time.

I'll be the first to admit that I have no life and don't get a lot of sleep.

I think it really depends on what kind of trade offs you're willing to make and risks you're willing to take.

I don't know if a compromise like this would be all that attractive to outside investors either, although my own startup is somewhat independent of all that.</comment>


Cloudflare architecture and how BPF eats the world - <AUTHOR> https://blog.cloudflare.com/cloudflare-architecture-and-how-bpf-eats-the-world/ <comment><USER2> I probably missed something very obvious as it's not defined in the article but what is BPF?

<comment><USER3> [https://en.wikipedia.org/wiki/Berkeley_Packet_Filter](https://en.wikipedia.org/wiki/Berkeley_Packet_Filter)

A small bytecode VM for filtering data.

<comment><USER4> Could anyone elaborate why it seems that the BPF VM is talked about so much nowadays? To me as an outsider it almost appears as if the VM is treated as a stand-alone thing, rather than just a component of a firewall.

<comment><USER5> Author here.

For one - read the article! BPF was originally used purely for tcpdump, but has been re-used since then. Nowadays it's used in surprising number of Linux subsystems.

eBPF allows us to do things previously impossible - you can execute untrusted code in the context of ring 0 kernel. This allows for:

\- exposing details of high-bandwidth stuff, like packets

\- advanced actions - XDP allows for packet forwarding or dropping, not only filtering and sending to userspace; TCP-BPF enables tuning finely-grained tcp performance details.

These things fundamentally can't be exposed to userspace in easy way (or would be very hard to implement right). Userspace program can always not-respond,be de-scheduled, while eBPF program will have a response ready very quick.

eBPF can be run in critical places of the kernel. This allows for very powerful use cases.

</comment></comment></comment></comment><comment><USER6> Unrelated but I'm interested to see what stack all of the things mentioned in the article are on. Handling (I'm guessing billions) of requests while getting sub-ms (maybe even microseconds) latencies. Is it all written in Go? If so that is quite impressive.

<comment><USER7> This discusses their stack: [https://blog.cloudflare.com/end-of-the-road-for- cloudflare-n...](https://blog.cloudflare.com/end-of-the-road-for-cloudflare- nginx/)

C, Go, Rust Lua and other tech.

<comment><USER6> It would be interesting to see what kinds of optimizations they have done in terms of programming languages. For example, Discord releases blog posts now and then on how they squeeze performance out of Elixir</comment></comment></comment>


Relativty  – An open-source VR headset - <AUTHOR> https://www.relativty.com/ <comment><USER2> > We started Relativty because after watching Sword Art Online

This little fact alone makes the background story way funnier than most tech origin stories I've heard. And being able to do PCB layout and system design at 15-16? Kudos to Maxand Gabriel.

<comment><USER3> Hopefully the design won't kill users on launch day.

<comment><USER4> It's fine - people will be still perfectly willing to continue using it after it does that. ;-)

(Plot of later part of Sword Art Online - really.)

<comment><USER3> The second generation of gear claims to have limiters to prevent nerve damage. Kinda like cars installing seat belts and air-bags.

</comment></comment></comment></comment><comment><USER5> These guys were 15 years old when they started, and are now 20. That's amazing, great work!

</comment><comment><USER6> It's interesting how a lot of commenters are writing "Relativity" instead of "Relativty". I also fell for this at first.

Makes it easy to mistype the url, if you were to visit it later on.

<comment> martin-adams Google will probably auto correct any searches for it as well

</comment></comment><comment><USER7> Great brand name. Awesome write up.

"We made Relativty in my bedroom with a soldering iron and a 3D printer and we expect you to do the same: build it yourself." Soldering SMD components sounds daunting, so kudos to you for this.

Not sure why the pedantics about 2K and the price in these comments...

<comment><USER8> > Soldering SMD components sounds daunting,

It really isn't, watching some videos learning some techniques. Practice. The same statement could be made about most things that people aren't familiar with or haven't spent any time working to learn.

<comment><USER7> Just because you can get good at something, doesn't mean it's not hard :)

<comment><USER9> I know what you're getting at, but anything you're passionate about doesn't feel as hard as it does to people who are not.

There are so many things in life that I think are nonsensically complicated and I have a hard time grasping why anyone would ever want to waste time on them, while I know how to do a lot of things that "normal people" consider outlandish - just because I spent _tons_ of time researching and learning about a topic because I was interested in it.

So yeah, if you're meh about VR headsets and "it would be kind of cool to have", just buy a Daydream - don't try to learn how to solder SMD's. :)

If you want it enough you'll figure it out.

</comment></comment></comment></comment><comment><USER10> Considering how Palmer Luckey was just tinkering when he made the Oculus Rift, this can produce some useful innovation outside of the corporate environment.

</comment><comment><USER11> To the creators: this is a really incredible achievement, especially to have done at age 15, and really well communicated.

Please don't get disheartened by the mass of comments around this not actually being a $200 headset[1] or your unusual[2] spelling.

This is freaking awesome, please keep it up!

[1] It definitely would be cool to see some sort of parts list, but that's not really the point here.

[2] Clever domain hack, IMO

<comment><USER12> I think a lot of people are missing what I think are 3 main points before moaning about everything else: 1\. It's freaking open source 2\. It's DIY fun 3\. It's the bare VR without being an over-engineered device that reports your farts to the manufacturer.

I can only respect and envy the guys for pulling this off.

<comment><USER13> Doesn't the Steam dependency mean the reports are going to Valve?

<comment><USER14> Why would this be steam (or anything) dependent -- am I missing something?

<comment><USER15> It looked to me like it was Steam compatible, not steam dependent.

However, I can see where the idea would come from, because they do talk a lot about Steam on the site.

<comment><USER13> What would you be able to do with the headset aside from connect it to Steam? They could add support for OpenXR but OpenXR is just starting to get traction and that's on the application developer side. I don't know how widespread the adoption of the HMD agnostic bits of OpenXR are.

<comment><USER15> On the developer side, both Godot and Unity have some support for VR.

On the game side, there's also Windows MR, which supports some games. I don't know if this headset supports it now, but it could presumably be made to.

<comment><USER16> Godot and Unity have support for specific VR API's.

This headset is designed for SteamVR.

You can build for this headset by targeting SteamVR in Godot and Unity, but you'd have to do a TON of work yourself if you wanted to build your own VR runtime to bypass SteamVR for use on this headset.

<comment><USER15> Thanks for the additional info, I'll definitely have to do some more research in this area.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> One interesting thing I noticed is that this project ALSO doesn't seem to have a controller. You can't really play SteamVR games without at least one! (Issue #50)

You can grab a Samsung VR for very cheap, put a phone on it and do VirtualDesktop magic, but you are still gonna struggle without controllers. Same for Google Cardboard and other similar projects.

There's some very cheap controllers you can get, with base stations for tracking like the Nolo-Home, but they are still quite behind the tracking precision and latency of some "top-of-the-shelf" headsets.

It's an interesting idea and I hope the developments on it go forward, specially since the recent Facebook/Oculus announcement.

<comment><USER18> This has gotten me wondering whether there are any DIY projects for Lighthouse-compatible controllers?

<comment><USER19> I seem to remember that someone had made a Lighthouse receiver for drones.

</comment></comment></comment><comment><USER20> I never knew they made these boards that take two LCDs and have an adapter board with a DisplayPort (port) [https://www.aliexpress.com/item/32975198897.html](https://www.aliexpress.com/item/32975198897.html)

</comment><comment><USER21> This is really great. I wish people would stop comparing this effort to commercial products, though. Like most open-source hardware, the proprietary competitor will always be the better value proposition, if that's all you care about.

</comment><comment><USER22> If it supports 5GHz Wifi, something like this could eventually work well with VirtualDesktop (An incredibly useful app which makes the Oculus Quest _truly_ wireless and capable of playing all SteamVR games from your PC).

Keeping all the GPU overheads off the headset is the way to go. (And will also be seen eventually with future '5G' wireless systems (not to be confused with '5GHz' Wifi) which will put that 'grunt' in the cloud.)

<comment><USER23> OT but how is the lag with Oculus Quest + VirtualDesktop? Let's say I wanted to play Half-Life: Alyx.

<comment><USER24> On my Oculus Quest I have completed a playthrough of Alyx and a few other games of different genres, no issues and no delay whatsoever.

It feels magical, in a way that feels like it must be cheating and the spell is going to break anytime... yet it doesn't.

To pre-empt a few of the obvious asterisks:

\- "No latency" is physically impossible. If you play twitchy music rythm games you will indeed manage to notice.

\- You must have a good wifi ac router.

\- Your gaming host must be wired to that router.

\- To minimize network hoops, all of this should happen in the same room. Every milisecond counts.

<comment><USER18> > Every millisecond counts.

Not really sure that follows. For a 20ft room, it only takes a wifi signal 20 nanoseconds to cross it, and an ethernet signal around 30 nanoseconds. Your room would need to be over a hundred miles wide to add a millisecond of delay, disregarding stuff like repeaters.

<comment><USER25> I think the same room is to have good signal strength to minimize dropped/repeated packets. The transmission time won't be noticeable but the signal to noise ratio may decrease fairly quickly with distance and obstacles.

</comment></comment></comment></comment></comment><comment><USER26> It's a great start at a young age, congratulations and all the best!

I'm not into VR, but can this setup be used to create a 'Wearable low latency display for computers'[1] i.e a wired video headset? None of the current video headsets seem to work well according to the reviews be it $800 Ziess Cinemizer or $200 Avegant Glyph.

[1][https://needgap.com/problems/16-wearable-low-latency- display...](https://needgap.com/problems/16-wearable-low-latency-display-for- computers-display-wearables)

<comment><USER16> There's a good one coming out soon, the Cinera Edge Elite.

<comment><USER27> [https://www.cinera.net](https://www.cinera.net)

It's a KickStarter, so I guess "coming out soon" is pretty speculative, but that's the link for it.

Interestingly, I googled this and the permalink to this comment was actually the top result, 1 hour after the comment was made.

</comment></comment></comment><comment><USER28> This is awesome. I'm glad we have have insurance in case no one fills the void of HTC leaving. You can argue that Valve is, but given the massive back orders of the Index and their discontinuing of their controller and streaming box; I'm not totally confident.

Now we just need controllers and maybe even base stations.

<comment><USER29> Valve discontinued their controller and streaming box because they did not sell - to get rid of their stock, they had to put them on fire sale. They're still supporting the controller and afaik the streaming box as well. The controller was innovative but often regarded as awkward, and the streaming box wasn't particularly special.

The Valve Index on the other hand has redefined the high-end VR market and is selling out accordingly. I've tried most of the consumer VR solutions on the market and the Index "knuckles" controllers blow everything else out of the water, it's not even close. Oculus has dropped out of that market, opting to produce more affordable but _somewhat_ less capable headsets and controllers. I don't see HTC turning it around as they don't have the name recognition or the capital and their tech is already weaker.

Point being is that Valve owns the top-end of the VR market already and this project, while impressive and definitely promising, is not competing with Valve. It might in the future, with a lot of work, but it's not insurance against a Valve dominion. There might not even be room in this niche market for more than one competitor, which is awful but that's what we're looking at.

<comment><USER28> One reason the Steam controller didn't sell is that users had to figure out configuration schemes on their own instead of Valve being proactive with developers and publishing houses.

I agree that the Index, especially the knuckles blows everything away, but I'm already seeing the same issue that the Steam controller suffered from pop up with the knuckles.

You're right about Oculus too, and I hope that you'll be right about Valve staying in the game. I definitely want to keep using base stations instead of unreliable and heavy headset cameras. I want full body tracking to gain traction and that won't happen if external base stations die off.

</comment></comment></comment><comment><USER30> Bravo les gars :)

Sincerly nice project, I would do one myself if I had the time or knowledge. What could be really nice is that make a DIY video to demonstrate it's easy and link to where we can buy different stuff (and put a affiliate link, please). Also suggest controllers that are compatible with steam if that exists.

</comment><comment><USER31> Ever since Facebook bought Oculus I've really hoped something like this would spring up.

I really really want it to succeed and would be happy to back it on Kickstarter or similar.

How do we ensure that these projects don't end up being bought out by Facebook or Google?

<comment><USER32> I have mixed feelings about the Oculus and FB's ownership. I would like an open platform but I appreciate both the more than adequate Oculus hardware and some excellent VR experiences created by both Oculus and many 3rd parties.

I might still buy a manufactured open platform system, depending on available experiences. I would also definitely buy an "Oculus 2" that had a higher resolution screen and slightly lighter weight.

I really like the recent Oculus software update that allows some games and VR experiences to be used without controllers by recognizing hand gestures. I hope there is a lot of exploration of new ideas based around no controller use.

Hopefully open platform VR headsets will be adopted by university research teams as well as commercial content creators. Hobbyists creators are to be encouraged but they are not enough to get widespread adoption.

<comment><USER33> You mean 3? We're already on Oculus' second generation.

<comment><USER32> Thanks, I meant "Quest 2" \- I only kept my Oculus Go for 1 week, then gave it to my grandson. I get a lot of value from my Oculus Quest which I bought last year.

<comment><USER34> The Quest 2 is rumored to be releasing this month, but you'll be forced to log in with Facebook to use it.

<comment><USER32> I will probably get it. I just spent 20 minutes playing the Quest ping pong game - amazing game physics and general gameplay.

</comment></comment></comment></comment></comment></comment><comment><USER35> Can anyone recommend an elegant method to 3d map a face? If I were to print one of these housings, I would at a minimum adjust it to my PD, but it would be great to also contour the fit to my face.

<comment><USER22> I did a similar thing to design a 3d printed mask.

I used an iOS app called ScandyPro which gave me a mesh which I then imported into Fusion360 and modelled some lines/layers of the curves around my face. Then I performed a 'loft' between them.

The result was a perfect fit.

</comment></comment><comment><USER36> I've been hoping someone would create an open source version of the lighthouse technology. I think that technology could be huge outside of VR.

Inside VR, I just want more custom hardware... I want VR feet.

<comment><USER37> Isn't the lighthouse system relatively open? I recall the analog receiver circuitry is relatively simple, and Valve cooperated with an IC manufacturer to get rid of the analog stuff (or, more precisely: move it into an IC). The IC was intended to be not be exclusively for Valve alone.

Of course that doesn't help with the base stations, and might still violate [Valves' or other's] patents if used in an actual product.

<comment><USER38> > Valve is now making SteamVR Tracking fully available to other companies, > without licensing fees.

> There is no certification from Valve necessary. Ship the product you want to > build, whenever you think it's ready.

I don't believe it's strictly open source, but it's certainly far more open than Facebook's ecosystem.

Source: [https://partner.steamgames.com/vrlicensing](https://partner.steamgames.com/vrlicensing)

</comment></comment></comment><comment><USER39> on a side note, I wish if there was a company like LEGO but for providing components for building DIY electronic gadgets especially small size home robots which gets some particular work done. for instance DIY wifi locks for doors, automated food dispenser for pets etc.

<comment><USER33> Isn't that AdaFruit and Sparkfun?

</comment></comment><comment><USER40> Amazing work, congrats!

I think it is smart to build on top of SteamVR and PCVR, but...

I would love to drop my Oculus Quest for a DIY open-source headset. My #1 requirement is stand-alone. No cable, no wires. I don't own a gaming PC, so the Quest has been a great way for me to experience 6DOF VR.

</comment><comment><USER41> I'll repeat a comment I made on Reddit:

I was scanning the page trying to understand how you were doing positional tracking. Took me a while to realise that's what you mean by "Experimental room-scaling"

I'd suggest that this isn't the best wording. Call it "positional tracking" or "6DOF" or something.

The whole "room scale" thing was confusing at the start and isn't used much nowadays (Is seated 6DOF VR "room scale"? It's ambiguous and irrelevent for most purposes)

I'd also say that I think most people assume that being SteamVR compatibile implies having 6DOF tracking of head and hands. Most software simply won't work unless you have this. How experimental is experimental?

<comment><USER42> I understood what they meant by "room-scaling" immediately and I've only ever used a VR headset one time about 4 years ago.

On the other hand, I can surmise from my experience with robot arms that "DOF" likely stands for _degrees of freedom_ , but I would have had no clue what "6DOF" meant in terms of VR.

<comment><USER41> OK. Fair point about "DOF".

But what do you understand "room scale" to mean"? Genuine question.

<comment><USER42> I imagined it to mean I could move around a constrained physical space while seeming to explore a larger virtual environment (thus "scaling" the dimensions of the room I was in). Admittedly the reference to a webcam that tracks your movements was an additional helpful context.

<comment><USER41> That is also roughly my interpretation. But that is different to the meaning used in the post itself. See my other comment below.

</comment></comment></comment></comment></comment><comment><USER43> This might be a fun weekend project to work on, but cannot be built for $200. The displays alone (and their driver PCB that accepts DisplayPort) cost $195. They are also not 2K but rather 1440x1440 (or 2.0736M pixels). Maybe the displays were cheaper when they built this. They also hookup a 6-axis tracking chip (MPU-6050) to an Arduino board and feed it to a PC via usb. Even if tracking was working perfectly, this would be a cut down version of an Oculus Go, which additionally has smartphone electronics integrated, can run VirtualDesktop, and can be had for $150 as of this moment.

<comment><USER44> I think the (repeated) note that you can downscale to 1080p displays is how you are supposed to do it under $200. They note themselves these displays are $150-$190 so it's not like they are hiding something.

<comment><USER45> Just buy a used vive for that.

<comment><USER44> No one is claiming that you can't get something cheaper, either.

</comment></comment></comment></comment><comment><USER46> Sounds like you could sell this pre-assembled for $300 and it'd still blow all the other headsets out of the water. Taken at face value this sounds pretty great.

<comment><USER47> We know nothing of how performant it is. The reason ALL VR isn't at 2K 120fps isn't because other companies don't know how to do that -- most of the technological hurdle comes from the PC producing those outputs -- it's just that there are clearly performance standards companies hold themselves to in order to consider the product fit for a general audience.

In regards to the room scale tracking alone:

> Precision and freedom of movement are still very far from dedicated sensors, > however, we believe that the model can be trained and improved by orders of > magnitude.

Whereas, say, Oculus, already has room scale tracking down-pat.

The only way I see this as "blowing all other headsets out of the water" is if the way they're able to achieve 2k 120fps where others could not is Relativty simply being willing to cater to a much smaller audience of high-end PC owners that a mass-reaching product like Oculus wouldn't limit themselves to.

Anyway, this whole thing is really cool, and I want to see more of it, I just doubt that the correct way to think of it is as something already capable of blowing competition out of the water.

</comment></comment><comment><USER48> The developers could add 6dof roomscale tracking relatively easily by adding an intel 265 ([https://www.intelrealsense.com/tracking- camera-t265/](https://www.intelrealsense.com/tracking-camera-t265/)). The unity integration is very plug and play. The 261 can also be used but must be bought in trays of 8.

</comment><comment><USER49> Just their suggested displays cost $195 (2 displays with driver pcb). Otherwise, very nice.

</comment><comment><USER50> This is really awesome. People doing things like this just makes me happy.

</comment><comment><USER51> From a financial aspect, I think the soldering ion and a 3d printer would cost more than $200, plus $200 on parts. So with $400+, i would consider buying an Oculus?

From bottom of my heart, hats off to those kids.

<comment><USER52> > the soldering ion and a 3d printer would cost more than $200

That sounds odd, a bit like saying a car and a smartphone holder together would cost more than X. A soldering iron is, what, 15 euros? And a cheap 3d printer like twenty times that?

</comment></comment><comment><USER53> This looks great. Is there anything on the horizon filling in the more inexpensive market that Windows Mixed Reality headsets were occupying?

</comment><comment><USER54> I actually love this but I wonder if inside-out tracking using webcams might be better (although you may need more oomph on the processing side).

</comment><comment><USER55> Daily reminder: 2K doesn't really exist. Yes by definition anything with around 2000 pixels vertical would be 2K but that would mean FHD is 2K because it almost 2000 pixels wide. The display in question here is 1440x1440 That is not 2K. Sure there are two next to each other that would mean 2880 pixels horizontal but the image you see cant have this resolution. Also that would be 3K not 2K. So pls everyone stop the nonsense with the Ks unless used properly like if you actually mean DCI 4K then its appropriate to say so. Everything else is marketing nonsense. /endrant

<comment><USER56> Can we just go back to calling resolutions by their height?

<comment> GuB-42 There was a brief period of sanity in the late 90s early 2000s where resolution used actual numbers (ex: 1024x768)

Otherwise it is a mess. There is the letter soup (WSXGA+, WQUXGA,... ), the lines (1080p, 720i,... a throwback to analog CRTs), the HD (Full HD, HD ready, ultra HD,...), the K (4K, 8K,...)...

Is it that hard to use 2 numbers?

<comment><USER57> Both existed at the same time.

You had VGA (640x480) for example.

But I do agree we should have called it 2160p not 4k, but marketing guys are like that.

<comment><USER58> [https://upload.wikimedia.org/wikipedia/commons/e/e5/Vector_V...](https://upload.wikimedia.org/wikipedia/commons/e/e5/Vector_Video_Standards2.svg) What a mess.

</comment></comment></comment></comment></comment><comment><USER59> It's like Oculus redux.

Give it a few months and Google/Microsoft/Amazon will probably buy it up.

<comment><USER60> If the product turns out great they might buy it as an aqui-hire.

What has Facebook gained from their purchase of Oculus? At the time I thought it was a pretty shrewd move by Facebook but six years later I'm not sure they got much for the $2 billion they spent.

<comment><USER61> Judging by the demos[1] they've shown and changes they've made to the Oculus software like homes, it seems like their long term goal is for it to be the basis of a google glass like system that's more environmentally aware and collecting lots of environmental mapping data for FB, and a VR facetime/The matrix but with Xbox Live avatars-ey thing. I think adoption is probably a ways out, but if people wind up wanting more than Teams/Zoom/Discord/Facetime and so on it sets them up.

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

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

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

<comment><USER60> By the time any of that is ready, their purchase of Oculus will be more than a decade in the past. I think the acquisition was probably a mistake, but for Facebook blowing $2 billion isn't a very big mistake.

From my perspective as a consumer and somebody who was very interested in VR 6 years ago, I wish Oculus had either remained independent or had been purchased by somebody that was actually going to do something with the technology before a decade passes. I think Facebook's purchase of Oculus is one reason VR has lost so much energy and interest (Magic Leap's hilariously bad execution in AR hurts VR too).

</comment></comment></comment></comment><comment><USER62> Where do you source the lenses?

<comment><USER22> There's an AliExpress link in the README of the Github repo.

Though, I'd imagine you could use ones from cheaper 'phone-to-face' Google Cardboard-style ones.

<comment><USER37> Lenses are actually not that irrelevant for this application. There is a huge difference between some cheap plastic and camera-grade glass. You don't want [excessive] chromatic aberrations, or [excessive] "God rays" (the Vive has that effect), or other optical artifacts.

Optics is similar to electronics: With high school physics it's all quite simple, but with high school physics a transistor can switch nearly infinitely fast ;-)

<comment><USER22> That's true. I actually have a few cheap card-like gadgets. And they're certainly not fresnel lenses. ;)

</comment></comment></comment></comment><comment><USER63> On a slightly related topic: are the open-source VR controllers?

</comment><comment><USER64> This is extremely impressive and well-communicated!

</comment><comment><USER65> Can I point out, that's a nice domain name.

<comment><USER66> Did you notice it's missing the final 'i'?

<comment><USER65> Ha, I did not.

</comment></comment></comment><comment><USER67> The screens are 1440x1440 and square format makes a lot of sense for this application. They're best described as 2MP instead of 2K.

<comment><USER55> Jees, pls dont. MP should not be used for display resolutions. It's 1440x1440 or 1440p 1:1 But yes definitely not 2K.

<comment><USER67> For a screen that you're placing in front of each eye, giving the total resolution actually sounds pretty appropriate. Particularly since although this is technically 1440 lines it only has as many pixels as 1080p resolution, which won't be obvious to most. Given all the different aspect ratios if screens started being quoted as megapixels and a format ratio we'd actually be much better off than with the current mess.

<comment><USER68> Since head-mounted displays put the screen a mostly fixed distance from the eye, I wonder if resolution is best described in terms of solid angles[0].

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

<comment><USER69> No, not at all. Solid angles could describe how big the display looks, but absolutely nothing about its resolution.

<comment><USER68> What I meant was to provide both of the following measurements:

(1) Solid angle of each individual pixel. (Assuming that typical screens and optics are used, I'd expect this value to vary depending on the location of a given pixel. So something like (average(solid angle of each individual pixel in the display)) could be advertised.

(2) Solid angle of the overall virtual image.

<comment><USER70> In the enthusiast community, I've seen reference to 'pixels per degree' to define fidelity.

This changes a bit based on how close the eye is to the lens/screen, but is a useful general measurement that also takes into account lens effects.

</comment></comment></comment></comment></comment></comment></comment><comment><USER71> Why isn't it RelaiVRty?

</comment><comment><USER72> why not just called it OpenVR? Shorter and more to the point IMO.

<comment><USER73> Well OpenVR already is a thing. It's an API by Valve for interfacing with generic VR hardware.

</comment></comment><comment><USER74> test thread (please ignore, will delete after)

<comment><USER74> test thread (please ignore, will delete after)

<comment><USER74> test thread (please ignore, will delete after)

<comment><USER74> test thread (please ignore, will delete after)

</comment></comment></comment></comment><comment><USER75> Looks very cool, but you are going to run into problems with the name because people are going to confuse it with [https://www.relativity.com/](https://www.relativity.com/)

That company sells a major legal document management platform, and has the standing, incentive, and capacity to drag Relativty into court for trademark infringement and easily win. The sheer number of people getting the word wrong on this HN thread is itself evidence of potential consumer confusion. Trademark infringement doesn't have to be wilful or malicious, and trademark holders are _required_ to defend their marks or risk losing them through a legal doctrine called 'constructive abandonment' so it's probably only a matter of time before Relativity-the-legal-software-company sends a finger- wagging C&D letter to Relativty-the-bedroom-hackers.

tl;dr find a new name or get sued.

</comment><comment><USER76> nothing brings out the haters like a job well done. great project. people will benefit from it.

</comment><comment><USER77> Good luck to them, and I've bookmarked it to keep tabs on it in future, but that is an infuriating and in my opinion - very poor - choice of brand name.

<comment><USER68> I agree that "relativity" isn't a great name: it's a mouthful at 5 syllables, and I don't see a logical connection between the name and the product.

But I don't understand why the name would be infuriating. Can you explain?

<comment><USER78> The name is "Relativty" without the last 'i'

That's the issue. It's an awkward 4 syllables.

<comment><USER79> "Relative-T"?</comment></comment></comment></comment>


An Open-Source Cellphone (Tinkerers, Have a Ball) - <AUTHOR> http://www.nytimes.com/2008/07/10/technology/personaltech/10phone.html

<comment><USER2> OpenMoko's been making phones for over a year, while Android hasn't even been vaporware for that long.

Although, the fact that the OM phones can barely just make reliable calls after all this development says something about the state of the open source mobile effort...

</comment><comment><USER3> Trying to beat Android to the punch, eh? I wonder how long T-Mobile will keep this on the shelf after this big push:

[http://www.moconews.net/entry/419-t-mobile-betting-on- androi...](http://www.moconews.net/entry/419-t-mobile-betting-on-android-to- stand-out-and-compete)

Haven't seen any API yet, but add it to the list of mobile items to hack.

<comment><USER4> It's a shame OpenMoko didn't pick a slightly more recent ARM chip, or it would already be running Android:

<http://benno.id.au/blog/2007/11/21/android-neo1973></comment></comment>


New in Node.js v0.12: Running Multiple Instances in a Single Process - <AUTHOR> http://strongloop.com/strongblog/whats-new-node-js-v0-12-multiple-context-execution/

<comment><USER2> Now you have my attention - "Or Node embedded in a phone or network switch where it is performing routing logic for multiple connections, but in a single process and you're not far off". I would be interested in seeing what the performance impact is on ARM architectures since the above are strong use cases.

</comment><comment><USER3> Does an uncaught exception still kill the process? Because I'm really growing to like node, but this is a very strange design decision. Yes, you can mitigate it with forever or pm2, but you really shouldn't have to.

</comment><comment><USER4> Is this the C++ accessible side of vm.createContext() and vm.runInContext()? Seems like it would help with sandboxing.

</comment><comment><USER5> Is the long-term goal thread safety? Having a native threading mechanism in Node would definitely be helpful.

<comment><USER4> Thread safety in this case I think would mean running multiple instances of node embedded in your app, each in their own thread and with their own event loops.</comment></comment>


Wild IIlusions: 5 startups experiments I like to try - <AUTHOR> http://ac-idealog.blogspot.com/2009/04/5-startups-experiments-i-like-to-try.html <comment><USER2> Startups or applications?

Scanning the list I see twitter, bit.ly tags, and firefox plugin.

These might be experiments in creating products but I don't see any concrete businesses.

</comment><comment><USER3> #2 and #5 sound like they might actually have some revenue potential, but a startup based on a "Firefox plug-in to provide real time analytics for your links"? That sounds like a neat side-project, but I can't imagine how to found a company around that.

</comment><comment><USER4> Real time link analytics seems like a great idea. It would be neat to open a chat box on the corner of the page with someone who was using the site in a weird way, and start talking to them about what they were hoping for.</comment>


Italy opens antitrust probe into Google because of a rejected Android Auto app - <AUTHOR> https://www.theverge.com/2019/5/17/18629912/google-android-auto-italy-antitrust-probe-enel-group <comment><USER2> >> "Android Auto is designed with safety in mind, to minimize distractions and to ensure apps can be used safely when driving"

> "Google allows third-party developers to develop Android Auto-compatible > versions of their apps, but only if they offer media or messaging services."

Messaging while driving is distracting...

<comment><USER3> I assumed "minimize distractions" = "meets regulatory compliance in areas it's going to be published to".

Doing anything but driving will driving is distracting but some things are illegal to do certain ways. E.g. in many places you can dictate a text but not operate a handheld phone.

</comment></comment><comment><USER4> Does anyone have a screenshot of the rejected Android Auto app? Because my experience with apps from privatised government bodies isn't great and I can easily see how such an organisation can indeed create a buggy or unsafe app and cry wolf when they get caught out doing so.

<comment><USER5> It's usually hit or miss. The Italian post service for example provides 2FA for government services and it's pretty nice and easy to use (the website shows a QR code that you scan with the app).

</comment></comment><comment><USER6> _Google allows third-party developers to develop Android Auto-compatible versions of their apps, but only if they offer media or messaging services. Enel X Recharge is mostly dedicated to helping drivers find charging stations for electric cars._

Why would you block apps that are direction services?

<comment><USER7> Media and Message apps fit in a framework that google has provided this allows them to update the android auto UI with no changes for any of these apps.

they haven't done this for map apps yet but Waze is now supported. but this took a long time.

it could be possible there building the framework for maps just there not ready for 3rd party's to access it

the internet is quick to judge but you have to walk before you run. this is a system that will run on millions of cars and in the future possibly billions.

with Android Automotive OS its going to be part of the car so getting this correct is a big deal you want it supportable well into the future.

<comment><USER8> This is unlikely to be the reason since the 3rd party app was already developed for Android Auto and Google rejected it thereafter.

<comment><USER9> I work in the auto industry in HMDs, and I think the last comment was somewhat on the right track, but perhaps missing bits of a larger issue at hand.

We can get the impression that Waze was built on a lot of technical debt by the amount of corners Google had to cut to even get it on screen -- how much it doesn't fit in their UI framework, and how poorly it runs when streamed to the HMD. Even Google Maps in satellite view runs terribly on the 90% of vehicles on the road that implement Android Auto. The underlying protocol used to convey that amount of data to the HMD runs like crap on most vehicles, and for better or worse the current protocol is pretty much frozen in time because most vehicles don't apply OTA updates yet. (Some manufacturers even charge labor for applying updates!)

The reason I'm picking on Waze specifically though is because HMD's have much stranger User <-> Interface considerations for what is safe, legal, and not crappy UI design. Add fire to fury, the performance is barely passable today.

Apps must have this, and so will Google if they are to be successful here. Whether Google even knows where they're going with a reliable HMD framework for using cookie-cutter UI components is largely unknown, but I don't think they're satisfied with the current API.

<comment><USER10> That's exactly the sort of comment I come here for.

We retrofitted (i.e. hacked) AA onto my wifes 124 Spider. I've noticed it judders a lot when in satellite mode, but not in normal. Assumed this wouldn't be the case as it's essentially a video stream being played with touch events sent back and USB audio. Maybe some headunits are a bit underpowered for this?

That said on my Kia Cee'd it runs like a dream regardless, there is never a glitch.

Any more insight on the way AA and Carplay work from a manufacturers PoV?

<comment><USER11> Did you install the AA hardware from Mazda, or are you using the software tweak, which is not known for performance

<comment><USER10> Can I put the Mazda hardware in the spider?

<comment><USER11> Yes, the infortainment (and almost all of the interior) is Mazda parts.

[https://21stcenturyfiat124spider.wordpress.com/2019/02/18/un...](https://21stcenturyfiat124spider.wordpress.com/2019/02/18/universal- version-70-fiat-tweak/)

If you go through with it, pay attention to the version numbers.

I personally didn't install it yet because previously you'd lose some functionality like navigation for the next owner. With the new tweaks that's not an isssue.

-

The software AA is laggy because it's essentially simulating proper AA.

There's a note saying it's not recommended anymore for being out of date and buggy

<comment><USER10> Awesome, thank you!

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> Somehow Apple seems to get away with blocking whatever app they so choose, government or not, and not face antitrust charges. Most developers would agree that Apple's approval process is a lot less transparent, cutthroat and arbitrary, and yet nothing on them.

I bet a similar app wouldn't pass CarPlay standards, and Italy hasn't done anything on the issue

<comment><USER13> The argument seems to be that Google is rejecting this app to force users to search for it in Google Maps. This is significant because that's a different line of business for Google.

Apple is more restricted, but they do it for control of the user experience, which, as a developer, I'm not a fan of. Apple is in less businesses and don't as frequently use their restrictions to direct/force users into another one. The one case I can think of is restrictions allowing only Apple Music. Though other music apps are supported in Car Play, Siri will only use Apple Music.

All that said... this case seems like a stretch. I'm not familiar with Italian law though, but is Android Auto so pervasive that this would have merit? The other antitrust suits are regarding search or Android, where Google has a much larger grip on their market.

</comment></comment><comment><USER14> I guess if you have a large enough hammer (antitrust probes/fines) then everything does become a nail, including application stores' guidelines.</comment>